#include "stdafx.h"
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>
using namespace cv;
int main(int argc, char* argv[])
{
Mat src = imread("12.jpg"); //载入图片
imshow("原图腐蚀操作",src);
Mat ele = getStructuringElement(MORPH_RECT,Size(15,15)); //获取15*15的矩形区域的结构
Mat dest;
//erode(src,dest,ele);//图像腐蚀
dilate(src, dest, ele);//图像膨胀
imshow("效果图",dest);
waitKey(0);
return 0;
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>
using namespace cv;
int main(int argc, char* argv[])
{
Mat src = imread("12.jpg"); //载入图片
imshow("原图腐蚀操作",src);
Mat ele = getStructuringElement(MORPH_RECT,Size(15,15)); //获取15*15的矩形区域的结构
Mat dest;
//erode(src,dest,ele);//图像腐蚀
dilate(src, dest, ele);//图像膨胀
imshow("效果图",dest);
waitKey(0);
return 0;
}
通常情况下,我们可以使用函数getStructuringElement()来制作操作内核。
Mat getStructuringElement(int shape, Size esize, Point anchor=Point(-1,-1));
参数:shape:内核形状,主要有MORPH_RECT,MORPH_CROSS和MORPH_ELLIPSE,分别为矩形、椭圆形和交叉形,对应的值分别为0,1,2
esize:内核大小。
anchor:内核锚点,默认为内核中心点。