用opencv实验形态学开运算和闭运算

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

用opencv实验形态学开运算和闭运算,程序代码为

#include "cv.h"

#include "highgui.h"

int main(int argc, char* argv[])

{

//调入照片

IplImage* img = cvLoadImage("2.jpg");

if(!img) //判断图片调入是否成功

return -1; //调入图片失败则退出

//将图片缩小两倍

IplImage*

img_small=cvCreateImage(cvSize(img->width/3,img->height/3),img->depth,img->n Channels);

cvResize(img,img_small);

//初始化结果要存到的图像指针

IplImage* result1=cvCloneImage(img_small);

IplImage* result2=cvCloneImage(img_small);

//分别对图像进行形态学开运算和闭运算

cvMorphologyEx(img_small,result1,NULL,NULL,CV_MOP_OPEN,1);//最后一个参数为膨胀和腐蚀次数

cvMorphologyEx(img_small,result2,NULL,NULL,CV_MOP_CLOSE,1);

//创建窗口,并确定其为大小不可变类型窗口

cvNamedWindow("liuxi_open", CV_WINDOW_AUTOSIZE);

cvNamedWindow("liuxi_close", CV_WINDOW_AUTOSIZE);

//显示图片

cvShowImage("liuxi_open", result1);

cvShowImage("liuxi_close", result2);

//cvShowImage("liuxi_open", img_small);

cvWaitKey(0); //等待按键

//release images

cvReleaseImage(&img);

cvReleaseImage(&img_small);

cvReleaseImage(&result1);

cvReleaseImage(&result2);

//destroy windows

cvDestroyWindow("liuxi_open");

cvDestroyWindow("liuxi_close");

return 0;

}

相关文档
最新文档