随笔分类 - C#+机器视觉OpenCV
摘要:/// <summary> /// 板材瑕疵检测(凹凸坑、划痕、颜料瑕疵) /// </summary> /// <param name="mat">图片</param> /// <param name="resultMat">结果图片</param> /// <param name="minArc
阅读全文
摘要:/// <summary> /// 标注物体 -物体计数标注 /// 比如玉米粒计数并标注每个玉米 /// </summary> /// <param name="imgFile1"></param> /// <returns>物体位置;数量=contours.Length</returns> pu
阅读全文
摘要:/// <summary> /// 春天转化为秋天 /// </summary> /// <param name="mat">图片</param> /// <returns>结果图片</returns> public static Mat Cvt_Spring2Autumn(Mat mat) { M
阅读全文
摘要:/// <summary> /// 图像角度矫正-纸张 /// </summary> /// <param name="src">图片</param> /// <returns>结果图片</returns> /// <exception cref="Exception"></exception> p
阅读全文
摘要:/// <summary> /// 录屏线程 /// </summary> private static CancellationTokenSource cts; /// <summary> /// 录屏保存er /// </summary> private static VideoWriter _
阅读全文
摘要:1、VideoCapture的常用属性 #region 常用属性 //_ = videoCapture.CaptureType; // 获取视频的捕获类型(文件或摄像头) //_ = videoCapture.PosAviRatio; // 获取或设置视频的相对位置(0开头1结尾) //_ = vi
阅读全文
摘要:效果排名:Lbp < Haar < CNN 1、Lbp /// <summary> /// Lbp人脸识别 /// </summary> public static Mat FaceDetection_Lbp(Mat mat) { var lbpCascade = new CascadeClassi
阅读全文
摘要:MatchTemplate匹配图片:用于匹配光照角度未变化的图片。 SIFT特征点匹配图片:尺度不变特征变换(Scale-invariant feature transform,SIFT)。用于匹配光照角度未变化的图片,可在图像中检测出关键点,是一种局部特征描述子。 SURF特征点匹配图片:SURF
阅读全文
摘要:1、SSIM算法计算相似度 /// <summary> /// 两张图片的相似度(SSIM算法) /// </summary> /// <param name="mat1">图片1</param> /// <param name="mat2">图片2</param> /// <returns></r
阅读全文
摘要:一、简易图像 1、识别直线(霍夫直线变换) /// <summary> /// 检测直线并标注(霍夫直线变换) /// 需要优化 /// </summary> /// <param name="mat">图片</param> /// <param name="resultMat">结果图片</par
阅读全文
摘要:1、GrabCut人为干预分割前景 /// <summary> /// 检测边缘并标注(GrabCut人为干预分割前景;速度比分水岭算法慢,结果准确性高) /// </summary> /// <param name="img">图片</param> /// <param name="rect">前
阅读全文
摘要:1、绘制直线 /// <summary> /// 绘制直线 /// </summary> /// <param name="mat">图片</param> /// <param name="startPoint">线段的第一个点</param> /// <param name="endPoint">
阅读全文
摘要:1、白平衡矫正 -灰度幂律变换(伽马变换) /// <summary> /// 白平衡矫正 -灰度幂律变换(伽马变换) /// 对过曝和过暗的图片进行矫正 /// </summary> /// <param name="srcMat">图片</param> /// <returns>返回黑白图片</
阅读全文
摘要:1、膨胀 /// <summary> /// 膨胀 /// </summary> /// <param name="mat">图片</param> /// <param name="element">用于膨胀的结构内核;如果element=new Mat(),则使用3x3矩形结构化元素</param
阅读全文
摘要:1、位运算 Cv2.BitwiseAnd; // 与运算 Cv2.BitwiseOr; // 或运算 Cv2.BitwiseXor; // 异或运算 Cv2.BitwiseNot; // 取反运算 2、加减乘除 Cv2.Add; // 加运算 Cv2.Subtract; // 减运算 Cv2.Mul
阅读全文
摘要:1、灰度图的线性变换 /// <summary> /// 灰度图的线性变换 /// OpenCVHelper.GRAY_LinearTransform(srcMat, 1.2, 40) /// </summary> /// <param name="grayMat">灰度图片</param> ///
阅读全文
摘要:1、图片拆分通道图层 /// <summary> /// 图片拆分通道图层 /// </summary> /// <param name="mat">图片</param> /// <returns></returns> public static Mat[] SplitChannel(Mat mat
阅读全文
摘要:1、获取图片亮度 /// <summary> /// 获取图片的亮度(取HSV中V通道的均值) /// </summary> /// <param name="mat">图片</param> /// <returns></returns> public static Scalar GetVChann
阅读全文
摘要:1、高斯金字塔(向下取样;大->小) /// <summary> /// 高斯金字塔(向下取样;大->小) /// 分辨率变小而模糊 /// </summary> /// <param name="mat">图片</param> /// <param name="dstSize">输出图像的大小</
阅读全文