多彩编程 多彩编程MZPH · CODE BLOG
ARTICLE DETAIL

文章详情

深耕前端与后端开发技术的一线实战笔记与踩坑复盘。

计算机视觉OpenCV中的图像处理

计算机视觉OpenCV中的图像处理 一、 形态学操作形态学操作通常用于处理二值图像黑白图但也可以用于灰度图。其核心是卷积核它像一个“探针”在图像上滑动根据局部像素的分布改变中心像素的值。其中的操作有1、腐蚀 (Erosion)在OpenCV函数中为cv2.erode()取核区域内最小值。作用消除细小的噪点分离粘连的物体使线条变细。2、膨胀 (Dilation)在OpenCV函数中为cv2.dilate()取核区域内最大值。作用填补孔洞连接断裂的线条使线条变粗。3、开运算 (Opening)在OpenCV函数中为cv2.MORPH_OPEN先腐蚀后膨胀。作用去除背景中的小噪点如指纹中的杂色同时保持物体原有大小。4、闭运算 (Closing)在OpenCV函数中为cv2.MORPH_CLOSE先膨胀后腐蚀。作用填补物体内部的小孔洞如指纹断点连接相邻物体。5、梯度运算在OpenCV函数中为cv2.MORPH_GRADIENT膨胀图 - 腐蚀图。作用提取物体的边缘轮廓类似于边缘检测。6、顶帽 (Top-hat)在OpenCV函数中为cv2.MORPH_TOPHAT原图 - 开运算图。作用提取比背景亮的小细节如光照不均下的亮斑。7、黑帽 (Black-hat)在OpenCV函数中为cv2.MORPH_BLACKHAT闭运算图 - 原图。作用提取比背景暗的小细节。二、 边缘检测边缘检测是计算机视觉中最基础的特征提取方法。今日学习了四种经典算子1. Sobel 算子一阶微分原理计算图像在 X 和 Y 方向的梯度。2.Scharr 算子特点Sobel 的升级版。当核大小为 3 时Scharr 的权重系数更大对梯度变化更敏感能检测到更细的边缘但噪声也会增加。3. Laplacian 算子二阶微分特点对图像求二阶导数对噪声极度敏感。它不区分方向各向同性常用于寻找图像中的“零交叉点”作为边缘4. Canny 边缘检测流程高斯滤波降噪 - 计算梯度 - 非极大值抑制细化边缘 -双阈值滞后处理。双阈值关键low_threshold和high_threshold。例如下面代码截图所示low_threshold100high_threshold150。
返回列表