自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 收藏
  • 关注

原创 OpenCVSharp学习(二三):霍夫变换----圆检测

霍夫圆检测函数原型public static CircleSegment[] HoughCircles(InputArray image, HoughMethods method, double dp, double minDist, double param1 = 100, double param2 = 100, int minRadius = 0, int maxRadius = 0);返回值:CircleSegment[],包含圆心,半径image:输入图像,单通道,灰度图像method

2021-01-23 13:54:44 2427 5

原创 Opencvsharp学习(二二):霍夫变换----直线检测

霍夫变换:霍夫变换是图像处理中的一种特征提取技术有两种,霍夫直线检测,霍夫圆检测霍夫直线检测HoughLines:标准霍夫变换HoughLinesP:累计概率霍夫变换函数原型HoughLines:标准霍夫直线检测public static LineSegmentPolar[] HoughLines(InputArray image, double rho, double theta, int threshold, double srn = 0, double stn = 0);返回值:Li

2021-01-23 11:05:44 1609

原创 OpenCvSharp学习(二一):边缘检测

边缘检测可以提取图像的重要的轮廓信息,减少图像的内容,可以用于分个图像,做特征提取等等边缘检测的一般步骤1)滤波(过滤噪声对图像边缘的影响)2)增强(利用形态学梯度,将图像的边缘凸显出来)3)检测(阈值方法确定边缘)常用的边缘检测算子CannySobelScharrLaplacianRobtrtsPrewittCanny算子:函数原型public static void Canny(InputArray src, OutputArray edges, double thresho

2021-01-06 15:21:42 2595 1

原创 OpenCvSharp学习(二十):形态学其他操作

形态学其他操作开运算,闭运算,顶帽,黑帽,形态学梯度函数原型:public static void MorphologyEx(InputArray src, OutputArray dst, MorphTypes op, InputArray? element, Point? anchor = null, int iterations = 1, BorderTypes borderType = BorderTypes.Constant, Scalar? borderValue = null);op

2021-01-06 11:26:13 1269

原创 OpenCVsharp学习(十九):形态学,膨胀腐蚀

膨胀腐蚀是对图片的高亮度部分(白色)进行操作,膨胀是对高亮度部分进行"领域扩张",腐蚀是对高亮度部分进行"领域蚕食""膨胀dilate()函数原型:public static void Dilate(InputArray src, OutputArray dst, InputArray? element, Point? anchor = null, int iterations = 1, BorderTypes borderType = BorderTypes.Constant, Scalar? bo

2021-01-06 09:41:19 1082 1

原创 OpenCVSharp学习(十八):阈值操作

可根据灰度的差异来分割图像固定阀值Threshold函数原型: public static double Threshold(InputArray src, OutputArray dst, double thresh, double maxval, ThresholdTypes type);src:输入图像dst:输出图像thresh:阀值maxval:阀值最大type:阀值类型,详解见下Binary:阀值二值化(大于阈值的让它等于最大值,小于的等于最小值)BinaryInv:阀值反

2021-01-04 16:27:01 2987

原创 OpenCvSharp学习(十七):滤波,中值滤波,双边滤波

中值滤波中值滤波是一种非线性滤波,使用像素点领近点的的灰度值的中值代替改点的灰度值,可以去除脉冲噪声跟椒盐噪声函数原型:public static void MedianBlur(InputArray src, OutputArray dst, int ksize);ksize:改参数必须大于1,且为奇数 Mat src = new Mat(@"I:\OpenCvSharp学习\3副本.jpg", ImreadModes.AnyColor); Mat dst1 = new

2021-01-04 11:52:56 1815 1

原创 OpenCvsharp学习(十六):滤波2:高斯滤波

高斯滤波每个像素点的值都由本身与和邻近区域的其他像素值经过加权平均后得到,加权系数越靠近中心越大,越远离中心越小函数原型:public static void GaussianBlur(InputArray src, OutputArray dst, Size ksize, double sigmaX, double sigmaY = 0, BorderTypes borderType = BorderTypes.Reflect101);src:输入图像dst:输出图像ksize:高斯核的大小

2021-01-04 11:33:27 1289 1

原创 OpenCvsharp学习(十五):滤波1:方框滤波与均值滤波

*滤波简介:1)滤波实际上*是信号处理的一个概念,图像可以看成一个二维信号,其中像素点的灰度值的高低代表信号的强弱2)高频:图像中剧烈变化的部分3)低频:图像中变化缓慢,平坦的部分4)根据图像的高低频特性,设置高通和低通滤波器,高通滤波器可以检测图像中尖锐,变化明显的地方,低通滤波器可以让图像变得平滑,消除噪声干扰5)图像滤波是OpenCv图像处理的重要部分,在图像预处理方面应用广泛,图像滤波的好坏决定后续处理结果的好坏线型滤波:方框滤波,均值滤波,高斯滤波非线性滤波:中值滤波,双边滤波方框

2021-01-04 10:58:11 1205

原创 OpenCvSharp学习(十四):重映射

重映射 Remap重映射是指把一个图像指定位置的像素通过映射关系转到另一个图像的指定位置函数原型public static void Remap(InputArray src, OutputArray dst, InputArray map1, InputArray map2, InterpolationFlags interpolation = InterpolationFlags.Linear, BorderTypes borderMode = BorderTypes.Constant, Scal

2021-01-04 09:21:01 778

原创 OpenCvSharp学习(十三):图片的几何变换

图片的缩放Cv2.Resize函数原型:public static void Resize(InputArray src, OutputArray dst, Size dsize, double fx = 0, double fy = 0, InterpolationFlags interpolation = InterpolationFlags.Linear);src:输入源图dst:输出图dsize:输出图像大小,当dsize为0时,计算公式为dsize = Size(round(fxsrc.c

2021-01-02 17:06:39 1441

原创 OpenCVSharp学习(十二):图片的逻辑运算

图片相与(求交集)Cv2.BitwiseAndMat mat = new Mat(@"I:\OpenCvSharp学习\黑底白框矩形.png", ImreadModes.AnyColor); Mat mat1 = new Mat(@"I:\OpenCvSharp学习\黑底白框椭圆形.png", ImreadModes.AnyColor); Mat Outmat1 = new Mat(); Cv2.Bitwis

2021-01-02 11:28:36 1223

原创 OpenCVSharp学习(十一):图像的数学运算,加减乘除

1:加法运算加法运算要求:图片有相同的大小以及位深度加法运算分为直接相加和权重相加代码如下:Mat mat = new Mat(@"I:\OpenCvSharp学习\Temp\Test\67.bmp", ImreadModes.AnyColor); Mat mat1 = new Mat(@"I:\OpenCvSharp学习\Temp\Test\12.bmp", ImreadModes.AnyColor); Mat Outmat1 = new Mat()

2021-01-02 11:00:05 2172

原创 OpenCVSharp学习(十):绘制文字

Mat mat = new Mat(@"I:\OpenCvSharp学习\Temp\Test\1.bmp", ImreadModes.AnyColor); Window window1 = new Window("源图像", WindowMode.Normal, mat); int width = mat.Width; int heigth = mat.Height; Cv2.PutText(mat,"Open.

2021-01-02 10:26:39 2457

原创 OpenCVSharp学习(九):绘制矩形

Mat mat = new Mat(@"I:\OpenCvSharp学习\Temp\Test\1.bmp", ImreadModes.AnyColor); int width = mat.Width; int heigth = mat.Height; Point point1 = new Point(width / 2, heigth / 2); Window window1 = new Window("源图像"

2021-01-02 10:12:02 4087

原创 OpenCvSharp学习(九):绘制一个圆

Mat mat = new Mat(@"I:\OpenCvSharp学习\Temp\Test\1.bmp", ImreadModes.AnyColor); int width = mat.Width; int heigth = mat.Height; Point point1 = new Point(width / 2, heigth / 2); Window window1 = new Window("源图像"

2021-01-02 10:02:45 1384 1

原创 OpenCvSharp学习(八):绘制一条直线

Cv2.Line//绘制直线 Mat mat = new Mat(@"I:\OpenCvSharp学习\Temp\Test\1.bmp",ImreadModes.AnyColor); Window window1 = new Window("源图像",WindowMode.Normal,mat); Point point1 = new Point(0, 0); int width = mat.Width;

2020-12-31 17:31:52 1637

原创 OpenCVSharp学习(七):将图片转换为视频文件

//将图片文件转换为视频文件 VideoWriter videoWriter = new VideoWriter(@"I:\OpenCvSharp学习\Temp\Test\out.avi", VideoWriter.FourCC(@"XVID"), 20, new Size(120, 110), true);//保存视频定义 for (int i = 1; i <= 67; i++) {

2020-12-31 16:45:45 2081 1

原创 OpenCvSharp学习(六):将视频文件保存为图片

static void Main(string[] args) { VideoCapture ReadVideo = new VideoCapture(@"I:\OpenCvSharp学习\cylindrical.avi"); int i = 0; while (ReadVideo.IsOpened()) { Mat SaveImage .

2020-12-31 16:20:46 1485

原创 OpenCVSharp学习(五):关于摄像头的操作,打开,拍照,录视频

接下来要准备开始玩摄像头了直接上代码:static void Main(string[] args){VideoCapture video = new VideoCapture(0);if (!video.IsOpened()){Console.WriteLine(“摄像头打开失败”);return;}Mat photo = new Mat();while (true){Mat Camera = new Mat();Mat GaryMart = new Mat();video.

2020-12-26 21:29:54 9747 4

原创 OpenCVSharp学习(四):掩膜操作,以及像素反转

根据百度以及实际操作,发现掩膜操作是增加图片的对比度方法 Cv2.Filter2D()有7个参数,如下static void Main(string[] args){string imangPath = @“I:\OpenCvSharp学习\4.jpg”;Mat redMat = new Mat(imangPath, ImreadModes.AnyColor);//读取图像if (redMat.Data==null){Console.WriteLine(“读取错误”);return;}

2020-12-26 16:12:23 3173 1

原创 OpenCVSharp学习笔记(三)关于像素的操作

加载图片 string imangPath = @"I:\OpenCvSharp学习\4.jpg";//原图加载路径 Mat LoadMat = new Mat(imangPath, ImreadModes.AnyColor); if (LoadMat.Empty()) { Console.WriteLine("加载错误"); return; } Mat ModifyMat

2020-12-26 15:59:56 1861 1

原创 OpenCVSharp学习笔记(二),Mat自定义一张图片

为了以后的像素操作打一下一个小小的基础,先自定义一张图片玩玩///一下例子为自定义生成一张100*100的红色图片,并且保存,代码如下****static void Main(string[] args){string savePath = @“I:\OpenCvSharp学习\MyMat.jpg”;Scalar s = new Scalar(0, 0, 255);//创建一个颜色对象 /* * 参数: * 1: 行 --指定图像的像素

2020-12-25 17:36:12 2283 1

原创 OpencvSharp学习笔记(一):图片的打开,保存灰度化,保存

近来萌生了学习OpenCv的想法,经过度娘得知老夫会的C#不能直接用OpenCv,只能用他的儿子OpenCvSharp与EmguCV,奈何奈何,这两玩意的资料少的出奇,只能慢慢的摸索了,EmguCV先不说,老夫找到了牛批的资料,先摸索OpencvSharp吧首先打开VS通过Nuget安装选择版本后点击安装就OK了.安装完成后,引用里面就有以下的玩意儿了…废话不多说了,在写程序前先 using OpenCvSharp图片打开,灰度化,保存代码如下:static void Main(strin

2020-12-25 16:59:06 7002 5

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除