前面已经说了如何配置opencv3.0+vs2013及如何显示图像,这次说说图像腐蚀。
腐蚀,即用图像中暗色部分“腐蚀”掉图像中高亮的部分。
程序首先载入和显示图像,然后定义一个Mat类型的来获得getStructuringElement函数的返回值,而getStructuringElement函数返回值为指定形状和尺寸的结构元素(内核矩阵),然后通过调用erode函数进行图像腐蚀操作,最后调用imshow函数显示效果图,用waitKey函数等待按钮按下,以便窗口一直显示。
代码如下:
#include <opencv2/highgui/highgui.hpp> //OpenCV模块highgui头文件
#include <opencv2/imgproc/imgproc.hpp>//OpenCV图像处理头文件
using namespace cv;
int main()
{
//读入图片
Mat imag = imread("picture1.png");//图像要跟main.cpp同一目录下
//显示图片
imshow("【原图】腐蚀操作", imag);
//进行腐蚀操作
Mat element = getStructuringElement(MORPH_RECT, Size(15, 15));//返回指定形状和尺寸
Mat dstimag;
erode(imag, dstimag, element);//进行图像腐蚀操作
//显示效果图
imshow("【效果图】腐蚀操作", dstimag);
waitKey(0);
return 0;
}
结果如下: