三天学会opencv(十一)——形态学操作应用-提取水平与垂直线

简介: 三天学会opencv(十一)——形态学操作应用-提取水平与垂直线

形态学操作应用-提取水平与垂直线


主要内容


  • 原理方法
  • 实现步骤

原理方法


图像形态学操作时候,可以通过自定义的结构元素实现结构元素

对输入图像一些对象敏感、另外一些对象不敏感,这样就会让敏

感的对象改变而不敏感的对象保留输出。通过使用两个最基本的

形态学操作 – 膨胀与腐蚀,使用不同的结构元素实现对输入图像

的操作、得到想要的结果。

  • 膨胀,输出的像素值是结构元素覆盖下输入图像的最大像素值
  • 腐蚀,输出的像素值是结构元素覆盖下输入图像的最小像素值

提取步骤


输入图像彩色图像 imread

转换为灰度图像 – cvtColor

转换为二值图像 – adaptiveThreshold

定义结构元素

开操作 (腐蚀+膨胀)提取 水平与垂直线

adaptiveThreshold()函数


adaptiveThreshold(
Mat src, // 输入的灰度图像
Mat dest, // 二值图像
double maxValue, // 二值图像最大值
int adaptiveMethod // 自适应方法,只能其中之一 – 
             // ADAPTIVE_THRESH_MEAN_C , ADAPTIVE_THRESH_GAUSSIAN_C 
int thresholdType,// 阈值类型
int blockSize, // 块大小
double C // 常量C 可以是正数,0,负数
)

定义结构元素


一个像素宽的水平线 - 水平长度 width/30

一个像素宽的垂直线 – 垂直长度 height/30

开操作(腐蚀+膨胀)-检测


image.png


相关文章
|
3月前
|
机器学习/深度学习 算法 Java
OpenCV的理解及其应用
以上只是OpenCV的冰山一角,它的功能远不止这些。如果你对计算机视觉有兴趣,我强烈推荐你去尝试使用OpenCV,相信你会在使用过程中发现更多的有趣和实用的功能。
109 8
|
9月前
|
机器学习/深度学习 API 计算机视觉
基于Python_opencv人脸录入、识别系统(应用dlib机器学习库)(下)
基于Python_opencv人脸录入、识别系统(应用dlib机器学习库)(下)
127 2
|
9月前
|
机器学习/深度学习 存储 算法
基于Python_opencv人脸录入、识别系统(应用dlib机器学习库)(上)
基于Python_opencv人脸录入、识别系统(应用dlib机器学习库)(上)
186 1
|
Ubuntu Linux C语言
【opencv】opencv在windows和linux的应用
【opencv】opencv在windows和linux的应用
|
计算机视觉
OpenCV中图像算术操作与逻辑操作
OpenCV中图像算术操作与逻辑操作
137 1
|
存储 Cloud Native Linux
OpenCV鼠标操作(画红色方框截取图像)
OpenCV鼠标操作(画红色方框截取图像)
|
计算机视觉
OpenCV图像像素逻辑操作
OpenCV图像像素逻辑操作
|
存储 计算机视觉
OpenCv形态学(一)
OpenCv形态学(一)
157 0
|
算法 计算机视觉
【Qt&OpenCV 图像的形态学变换 morpholgyEx】
【Qt&OpenCV 图像的形态学变换 morpholgyEx】
94 0
|
算法 计算机视觉
【Qt&OpenCV 图像阈值操作 threshold】
【Qt&OpenCV 图像阈值操作 threshold】
130 0