#include<opencv2/opencv.hpp>
#include<iostream>
using namespace cv;
Mat src,dst;
char OUTPUT_WIN[]="output image";
int element_size=3;
int max_size=20;
void onChangeTrackBar(int pos, void* userdata);
int main(){
src=imread("自己图像的路径");//自己图像的路径
namedWindow("input image",CV_WINDOW_AUTOSIZE);
namedWindow(OUTPUT_WIN,CV_WINDOW_AUTOSIZE);
imshow("input image",src);
createTrackbar("Element size : ",OUTPUT_WIN,&element_size,max_size,onChangeTrackBar);
onChangeTrackBar(0,0);
waitKey(0);
return 0;
}
void onChangeTrackBar(int pos, void* userdata){
int s=element_size*2+1;
Mat structureElement=getStructuringElement(MORPH_RECT,Size(s,s));
dilate(src,dst,structureElement);//膨胀
//erode(src,dst,structureElement);//腐蚀
imshow(OUTPUT_WIN,dst);
}
程序运行环境:ubuntu18.04 CMake 3.10.2 opencv==3.4.5