- 博客(34)
- 资源 (1)
- 收藏
- 关注
原创 C#实战-在非派生自 System.Windows.Forms.Control 的类中线程安全地更新用户界面控件
在非派生自 System.Windows.Forms.Control 的类中,可以使用 SynchronizationContext 来确保线程安全地更新用户界面控件。以下是一个示例
2024-06-21 08:52:53 413
原创 C#实战- MVC模式,确保Controller中的定时器事件在View中的所有控件初始化完成后再调用
在C#窗体应用中使用MVC时,要确保Controller中的定时器事件在View中的所有控件初始化完成后再调用,可以通过以下方法实现
2024-06-21 08:46:07 257
原创 C# 实战-Controls属性
在C#窗体应用中,Controls是Control类或其派生类(如Form、Panel、GroupBox等)的一个属性。它表示控件集合,这个集合包含了控件的所有子控件。通过Controls属性可以访问、添加或删除控件。以下是几个详细的例子来说明如何理解和使用Controls属性:## 例子1: 动态添加控件
2024-06-21 08:34:23 854
原创 C# 实战-三种类型的Timer
在C#中,主要有三种类型的Timer:System.Windows.Forms.TimerSystem.Timers.TimerSystem.Threading.Timer
2024-06-21 08:27:18 410
原创 C# 控件-ComboBox
ComboBox 是一个下拉列表控件,它允许用户从预定义的选项中进行选择,或者输入自定义的文本。以下是如何理解和快速掌握 ComboBox 控件的几个关键点。
2024-06-20 10:16:56 714
原创 C# OpenCvSharp 图像处理函数-图像平滑滤波-bilateralFilter、filter2D、sepFilter2D、edgePreservingFilter、fastNlMeansDe
1.bilateralFilter-双边滤波可以在平滑图像的同时保持边缘清晰。它通过考虑像素颜色和空间距离来决定如何平滑图像。2.filter2D-卷积滤波可以实现各种图像处理效果,如模糊、锐化等,具体效果取决于卷积核的定义。3.sepFilter2D-可分离线性滤波先对图像的每一行进行X方向的滤波,再对每一列进行Y方向的滤波。4.edgePreservingFilter-边界保护滤波可以平滑图像,同时保持边缘不被模糊。5.fastNlMeansDenoising-非局部均值去噪可以有效去除图像中的
2024-06-18 14:01:07 1133
原创 C# OpenCvSharp 图像处理函数-图像平滑滤波-blur、boxFilter、sqrBoxFilter、medianBlur、GaussianBlur
在这篇文章中,我们将详细介绍几个常用的图像处理函数,通过具体的示例来说明每个函数的作用和使用方法。这些函数包括 blur、boxFilter、sqrBoxFilter、medianBlur 和 GaussianBlur。每个示例都将展示函数的运算过程和结果,并与实际应用项目相关联。
2024-06-18 11:54:49 676
原创 C# OpenCvSharp 图像变换与增强-convertScaleAbs、log、exp、pow、sqrt、equalizeHist、CLAHE、detailEnhance、illuminatio
1.convertScaleAbs0-将图像转为8位无符号图像,并进行线性变换(y = ax + b)。2.log-对图像进行对数变换,通常用于增强图像的细节。3.exp-对图像进行指数变换,通常用于图像增强。4.pow-对图像进行幂变换,通常用于图像增强。5.sqrt-对图像进行开方变换,通常用于图像增强。6.equalizeHist-直方图均衡化,用于增强图像对比度。7.CLAHE-限制对比度自适应直方图均衡化,用于增强图像。8.detailEnhance-增强图像细节。
2024-06-18 10:12:10 1425
原创 C# OpenCvSharp 图像复制-clone、copyTo
在C#中使用OpenCvSharp库处理图像时,clone和copyTo是两个非常常用的函数。理解和合理使用这些函数可以帮助你在图像处理项目中更高效地操作图像数据。本文将详细介绍这两个函数的使用方法,并通过具体的示例来说明它们的实际应用。
2024-06-16 22:05:07 1626 5
原创 C# OpenCvSharp 颜色通道及数据转换-convertTo、split、merge、extractChannel、insertChannel、applyColorMap
1. convertTo-将图像从一种数据类型转换为另一种数据类型。2.split-将多通道图像分离为每个通道。比如,通过该函数将三通道彩色图像分离分三个单通道图像。3.merge-将多个单通道图像合并为一个多通道图像。4.extractChannel-指定抽取多通道图像的某个通道。5.insertChannel-将某个通道图像插入另一个通道图像中,有合并通道的效果。6.applyColorMap-将灰度图像转为伪彩色图像。只是转换为看起来像彩色图像的样式。
2024-06-16 17:42:37 1471
原创 C# OpenCvSharp 图像处理函数-颜色通道-cvtColor
在图像处理领域,颜色空间转换是一个非常常见的操作。OpenCvSharp 提供了一个强大的函数 cvtColor 来处理这类转换。本文将详细介绍 cvtColor 函数的使用方法,并通过具体的示例演示如何在实际项目中应用这些知识。
2024-06-16 17:17:26 1087
原创 C# OpenCvSharp 图像处理函数-图像拼接-hconcat、vconcat、Stitcher
1.hconcat-将多幅图像或矩阵按照水平方向连接成一幅图像。输出结果与原图有相同的行数和数据类型。2.vconcat-将多幅图像或矩阵按照垂直方向连接成一幅图像。输出结果与原图有相同的列数和数据类型。3.Stitcher-用于图像拼接,该类可以通过设置不同的参数来实现图像的拼接。常用的参数包括置信度阈值、特征点选择算法等。该类可以自动调整曝光度,恢复相机参数等。
2024-06-16 11:22:01 1288
原创 C# OpenCvSharp 逻辑运算-bitwise_and、bitwise_or、bitwise_not、bitwise_xor
1.bitwise_and 来提取图像中的某些部分。2.bitwise_or 来合并两个图像的感兴趣区域。3.bitwise_not 来生成图像的反相图像。4.bitwise_xor 来比较两张图像的不同部分。
2024-06-15 22:10:51 943
原创 C# OpenCvSharp 代数运算-add、scaleAdd、addWeighted、subtract、absdiff、multiply、divide
1.add-将两幅图像进行相加,可以达到图像融合的目的。2.scaleAdd-将两幅图像进行相加,第一幅图像乘上比例因子加上第二幅图像。3.addWeighted-将两幅图像进行相加,每幅图像可以设置自己的权重。4.subtract-将两幅图像进行相减,可以得到图像差分结果,凸显某些细节特征。5.absdiff-将两幅图像进行相减并取绝对值,可以得到图像差分结果,凸显某些细节特征。6.multiply-将两幅图像进行相乘运算。7.divide-将两幅图像进行相除运算。
2024-06-15 17:37:41 2353
原创 C# OpenCvSharp 矩阵计算-compare、repeat、PSNR、cross、dot
void compare(InputArray src1, InputArray src2, OutputArray dst, int cmpop);Mat repeat(const Mat& src, int ny, int nx);double PSNR(InputArray src1, InputArray src2, double R=255.);Mat cross(InputArray m) const;double dot(InputArray m) const;
2024-06-15 11:40:09 913
原创 C# OpenCvSharp 矩阵计算-solveCubic、solvePoly、SVDecomp、max、min
solveCubic 用于计算三次方程的解。solvePoly 用于计算多项式方程的解。SVDecomp 用于进行奇异值分解(SVD),将矩阵分解为三个矩阵的乘积。max 用于比较两个图像或矩阵中对应位置的最大值,或者图像矩阵与某个具体的数字进行比较的最大值结果。min 用于比较两个图像或矩阵中对应位置的最小值,或者图像矩阵与某个具体的数字进行比较的最小值结果。
2024-06-15 01:22:01 1872
原创 C# OpenCvSharp 矩阵计算-determinant、trace、eigen、calcCovarMatrix、solve
determinant - 计算行列式trace - 计算矩阵的迹eigen - 计算特征值和特征向量calcCovarMatrix - 计算协方差矩阵solve - 计算线性方程的解
2024-06-14 00:05:22 1003
原创 C# OpenCvSharp 函数详解-normalize、transpose、 invert、flip、 rotate
normalize函数用于将图像的像素值归一化到指定范围。它可以根据不同的归一化类型进行归一化处理,如L1、L2范数等。transpose函数用于矩阵转置操作,即将矩阵的行和列互换。invert函数用于求解矩阵的逆矩阵。常用的分解方法包括LU分解、SVD分解等。flip函数用于矩阵翻转,可以进行水平翻转、垂直翻转或同时翻转。rotate函数用于矩阵旋转,可以进行90度、180度或270度(逆时针90度)的旋转。
2024-06-13 23:42:33 621
原创 C# OpenCvSharp Mat操作-常用Mat数学运算
在使用OpenCvSharp进行图像处理时,理解并合理使用Mat数学运算函数可以帮助我们从图像中提取各种统计特征。这些特征可以用于图像分类、匹配等任务。下面我们逐一详细介绍这些函数,并通过C#代码示例说明它们的使用。📷
2024-06-12 10:33:58 817
原创 C# OpenCvSharp Mat操作-创建Mat-Range
在C#中使用OpenCvSharp库时,Range类是一个用于定义范围的工具,通常用于选择图像的感兴趣区域(ROI, Region of Interest)。
2024-06-11 21:46:04 302
原创 C# OpenCvSharp Mat操作-创建Mat-rowRange
rowRange 是 OpenCvSharp 库中的一个函数,用于从一个矩阵(图像)中提取特定的行范围。这对于图像处理任务中选择感兴趣区域(ROI, Region of Interest)非常有用。以下是对 rowRange 函数的详细解释和使用示例:📸
2024-06-11 21:17:04 713
原创 C# OpenCvSharp Mat操作-创建Mat-colRange
在OpenCvSharp中,colRange函数用于从一个Mat对象中选择一个指定的列范围,并返回一个新的Mat对象,该对象包含原始Mat中的列范围数据。这个函数非常有用,当你只需要处理图像的一部分时,可以显著提高处理效率。
2024-06-11 21:03:16 552
原创 C# OpenCvSharp Mat操作-创建Mat-eye
在OpenCvSharp中,eye函数用于创建一个单位矩阵(identity matrix),即对角线为1,其他元素为0的矩阵。
2024-06-11 20:52:55 580
原创 C# OpenCvSharp Mat操作-创建Mat-ones
ones 函数用于创建一个全为“1”的矩阵(Mat),可以用于各种图像处理和计算机视觉任务。下面我将详细解释每个重载版本的 ones 函数,并提供相应的示例代码。📸
2024-06-11 18:31:32 787
原创 C# OpenCvSharp Mat操作-创建Mat-zeros
在OpenCvSharp中,zeros函数用于创建一个全零的矩阵(Mat对象)。这个函数有多个重载版本,可以根据不同的需求来创建不同形状和类型的全零矩阵。下面我将详细解释每个重载版本,并通过具体的代码示例来说明如何使用它们。
2024-06-10 22:20:26 904
原创 C# OpenCvSharp Mat操作-创建Mat-构造函数
Mat类是OpenCvSharp中用于表示图像和多维矩阵的核心类。它提供了多种构造函数来创建和初始化矩阵对象。下面我们逐一解释这些构造函数,并通过示例来说明它们的用法。📸
2024-06-10 21:42:16 2345
原创 C# OpenCvSharp函数形参-Size
在C#中使用OpenCvSharp库时,Mat类是用于表示图像的主要数据结构之一。Mat类的构造函数之一是Mat(Size size, int type),其中size和type是两个重要的参数。下面是对这两个参数的详细解释和使用方法。📸
2024-06-09 23:04:45 422
原创 C# OpenCvSharp 概念理解-Mat
在OpenCvSharp中,Mat就像一个特殊的盒子,可以用来存储图片或数据。这个盒子可以有很多层,每层可以有很多行和列。
2024-06-04 22:12:01 241 1
原创 C# OpenCvSharp 函数形参-Scalar
在 OpenCvSharp 中,Scalar 是一个包含四个值的结构体,通常用于表示颜色或其他多通道的初始值。合理、简单地使用 Scalar 可以帮助我们快速初始化矩阵的像素值,尤其是在处理图像时。
2024-06-01 16:19:46 646
原创 C# OpenCvSharp 函数形参-type
type参数决定了每个像素的数据类型(比如整数或小数)和每个像素包含的通道数(比如颜色的红色、绿色和蓝色)。
2024-06-01 15:58:58 468
原创 C# OpenCvSharp 图像文件-imshow
imshow是一个用来显示图像的函数。就像你在电脑上打开一张图片一样,imshow可以在程序里显示一张图片。
2024-06-01 14:34:52 356
原创 C# OpenCvSharp 图像文件-imwrite
函数名:imwrite这个函数的名字叫做 imwrite,它的作用是把你在电脑里看到的图片保存到你的电脑上,就像你在画画本上画了一幅画,然后把它放到你的书包里保存起来一样。
2024-06-01 13:33:59 288
原创 C# OpenCvSharp 图像文件-imread
在C# OpenCvSharp中,有一个叫 imread 的函数,它能帮我们从电脑上读取图片。你可以用它加载图片,然后对图片进行各种有趣的操作,比如改变颜色、调整大小等等。
2024-06-01 13:17:15 488
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人