您的位置:首页 > 编程语言 > C语言/C++

【第八课:C++和opencv】图像的腐蚀+控制条

2013-11-29 22:42 549 查看
     和前一课差不多,不多讲了,直接上代码。

      代码:

      

#include "stdafx.h"
#include "opencv2/opencv.hpp"
#include <iostream>

using namespace std;
using namespace cv;

int _tmain(int argc, _TCHAR* argv[])
{
// Read image
Mat image;
image = imread("F://Opencv_picture/s4.jpg");
if(image.empty())
{
cout<<"Cannot find or open image"<<endl;
return -1;
}

//Create window
namedWindow("Image_dilate", 0);

//Create trackbar
int dilation_elem= 0;
int dilation_size= 0;
createTrackbar("Element", "Image_dilate", &dilation_elem, 2);
createTrackbar("Kernel", "Image_dilate", &dilation_size, 100);

while(true)
{
Mat dst;

int dilation_type;
if(dilation_elem== 0)
{
dilation_type= MORPH_RECT;
}
else if(dilation_elem== 1)
{
dilation_type= MORPH_CROSS;
}
else if(dilation_elem== 2)
{
dilation_type= MORPH_ELLIPSE;
}

Mat element= getStructuringElement(dilation_type,
Size(2* dilation_size+ 1, 2* dilation_size+ 1),
Point(dilation_size, dilation_size) );
dilate(image, dst, element);
//show image
imshow("Image_dilate", dst);
//wait untill user press any key
if(waitKey(33)== 27)
{
break;
}
}
return 0;
}


结果图:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: