OpenCV入门7:图像形态学变换

形态学是一种针对图像形状和结构进行操作和分析的图像处理方法。在OpenCV中,提供了一些函数和方法用于执行形态学操作。下面将介绍一些常见的形态学操作及其在OpenCV中的实现方式。

  • 膨胀(Dilation):

膨胀操作可以扩展图像中的边缘和明显的亮区域。它通过在图像上滑动一个结构元素(通常是一个正方形或圆形的小区域),将与该结构元素有重叠的区域像素的最大值赋给输出图像中的对应像素。在OpenCV中,可以使用cv::dilate()函数进行膨胀操作。以下是一个示例:

cpp 复制代码
cv::Mat image = cv::imread("image.jpg", cv::IMREAD_GRAYSCALE); // 读取灰度图像 cv::Mat dilatedImage; 
// 结构元素为3x3的矩形 
cv::Mat kernel = cv::getStructuringElement(cv::MORPH_RECT, cv::Size(3, 3)); 
cv::dilate(image, dilatedImage, kernel); // 图像膨胀
  • 腐蚀(Erosion):

腐蚀操作与膨胀操作相反,可以消除图像中的边缘和明显的亮区域,使其变窄。它通过在图像上滑动一个结构元素,将与该结构元素完全重叠的区域像素的最小值赋给输出图像中的对应像素。在OpenCV中,可以使用cv::erode()函数进行腐蚀操作。以下是一个示例:

cpp 复制代码
cv::Mat image = cv::imread("image.jpg", cv::IMREAD_GRAYSCALE); // 读取灰度图像 
cv::Mat erodedImage; 
// 结构元素为3x3的矩形 
cv::Mat kernel = cv::getStructuringElement(cv::MORPH_RECT, cv::Size(3, 3)); 
cv::erode(image, erodedImage, kernel); // 图像腐蚀
  • 开运算(Opening)和闭运算(Closing):

开运算和闭运算是形态学操作中常用的组合操作,包括先腐蚀后膨胀(开运算)和先膨胀后腐蚀(闭运算)。开运算可以消除图像中的噪声和细小的斑点,而闭运算可以填充图像中的孔洞和连接断开的区域。在OpenCV中,可以使用cv::morphologyEx()函数进行开运算和闭运算操作。以下是一个示例:

cpp 复制代码
cv::Mat image = cv::imread("image.jpg", cv::IMREAD_GRAYSCALE); // 读取灰度图像 cv::Mat openedImage, closedImage; 
// 结构元素为3x3的矩形 
cv::Mat kernel = cv::getStructuringElement(cv::MORPH_RECT, cv::Size(3, 3));
cv::morphologyEx(image, openedImage, cv::MORPH_OPEN, kernel); // 开运算 
cv::morphologyEx(image, closedImage, cv::MORPH_CLOSE, kernel); // 闭运算

以上是OpenCV中常见的形态学操作的示例,包括膨胀、腐蚀、开运算和闭运算等。通过这些操作,可以对图像进行形状和结构上的改变和逐渐调整。

相关推荐
喵~来学编程啦4 小时前
【论文精读】LPT: Long-tailed prompt tuning for image classification
人工智能·深度学习·机器学习·计算机视觉·论文笔记
凤枭香6 小时前
Python OpenCV 傅里叶变换
开发语言·图像处理·python·opencv
ctrey_7 小时前
2024-11-4 学习人工智能的Day21 openCV(3)
人工智能·opencv·学习
可均可可8 小时前
C++之OpenCV入门到提高004:Mat 对象的使用
c++·opencv·mat·imread·imwrite
蒙娜丽宁9 小时前
《Python OpenCV从菜鸟到高手》——零基础进阶,开启图像处理与计算机视觉的大门!
python·opencv·计算机视觉
好喜欢吃红柚子9 小时前
万字长文解读空间、通道注意力机制机制和超详细代码逐行分析(SE,CBAM,SGE,CA,ECA,TA)
人工智能·pytorch·python·计算机视觉·cnn
plmm烟酒僧9 小时前
Windows下QT调用MinGW编译的OpenCV
开发语言·windows·qt·opencv
AI小杨9 小时前
【车道线检测】一、传统车道线检测:基于霍夫变换的车道线检测史诗级详细教程
人工智能·opencv·计算机视觉·霍夫变换·车道线检测
冷凝女子11 小时前
【QT】海康视频及openCv抓拍正脸接口
qt·opencv·音视频·海康
撞南墙者12 小时前
OpenCV自学系列(1)——简介和GUI特征操作
人工智能·opencv·计算机视觉