【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>
膨胀和腐蚀
膨胀和腐蚀是相对于亮度区域而言的,膨胀操作即将亮度的区域进行扩展,腐蚀操作相反,是将亮度区域进行腐蚀掉。
#include <opencv2/opencv.hpp>
#include <iostream>
int main()
{
cv::Mat img = cv::imread("pic/dige.png");
if (img.empty())
{
std::cout << "Read images failed!" << std::endl;
return -1;
}
cv::namedWindow("src", CV_WINDOW_NORMAL);
cv::imshow("src", img);
cv::Mat elem = cv::getStructuringElement(cv::MORPH_RECT, cv::Size(4,4));
//膨胀操作,将亮度区域扩张
cv::Mat dilate;
cv::dilate(img, dilate, elem, cv::Point(), 1);
cv::namedWindow("dilate", CV_WINDOW_NORMAL);
cv::imshow("dilate", dilate);
//腐蚀操作,将亮度区域腐蚀掉
cv::Mat erode;
cv::erode(img, erode, elem);
cv::namedWindow("erode", CV_WINDOW_AUTOSIZE);
cv::imshow("erode", erode);
cv::waitKey(0);
return 0;
}
效果图:左下角为膨胀,右下角为腐蚀。
来源:oschina
链接:https://my.oschina.net/u/4228078/blog/3154297