概述
开运算
先腐蚀,在膨胀
- 去噪、消除小区域块
- 在纤细点处分离区域
- 平滑较大块区域的边界的同时并不明显改变其面积
cv::Mat src = cv::imread(imagePath, cv::IMREAD_GRAYSCALE);
cv::namedWindow("src", cv::WINDOW_NORMAL);
cv::namedWindow("dst", cv::WINDOW_NORMAL);
cv::Mat open;
cv::Mat openKernel = cv::getStructuringElement(cv::MORPH_RECT, cv::Size(5, 5));
cv::morphologyEx(src, open, cv::MORPH_OPEN, openKernel);
cv::imshow("src", src);
cv::imshow("dst", open);
cv::waitKey();
黄色区域:分离细小连接处
红色区域:去除大区域的毛刺
蓝色:消除细小区域
闭运算
先膨胀,在腐蚀
- 消除黑色的小块,填充闭合区域
cv::Mat src = cv::imread(imagePath, cv::IMREAD_GRAYSCALE);
cv::namedWindow("src", cv::WINDOW_NORMAL);
cv::namedWindow("dst", cv::WINDOW_NORMAL);
cv::Mat close;
cv::Mat openKernel = cv::getStructuringElement(cv::MORPH_RECT, cv::Size(10, 10));
cv::morphologyEx(src, close, cv::MORPH_CLOSE, openKernel);
cv::imshow("src", src);
cv::imshow("dst", close);
cv::waitKey();
最后
以上就是帅气中心为你收集整理的opencv形态学开运算/闭运算(02)的全部内容,希望文章能够帮你解决opencv形态学开运算/闭运算(02)所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复