这是个图像膨胀的例子

#include "import.h"
#include
#include

IplImage* src = 0;
IplImage* image = 0;
IplImage* dest = 0;

//the address of variable which receives trackbar position update
int pos = 0;

//callback function for slider , implements opening
void Opening(int id)  
{
    id;
    cvErode(src,image,NULL,pos);
    cvDilate(image,dest,NULL,pos);
    cvShowImage("Opening&Closing window",dest);
}  

//callback function for slider , implements closing
void Closing(int id)  
{
    id;
    cvDilate(src,image,NULL,pos);
    cvErode(image,dest,NULL,pos);
    cvShowImage("Opening&Closing window",dest);
}

//callback function for slider , implements erosion
void Erosion(int id)  
{
    id;
    cvErode(src,dest,NULL,pos);
    cvShowImage("Erosion&Dilation window",dest);
}

//callback function for slider , implements dilation
void Dilation(int id)  
{
    id;
    cvDilate(src,dest,NULL,pos);
    cvShowImage("Erosion&Dilation window",dest);
}

int main( int argc, char** argv )
{
    char* filename = argc == 2 ? argv[1] : "c://33.jpg";
    if( (src = cvLoadImage(filename,1)) == 0 )
        return -1;

    image = cvCloneImage(src);
    dest = cvCloneImage(src);

    //create windows for output images
    cvNamedWindow("Opening&Closing window",1);
    cvNamedWindow("Erosion&Dilation window",1);

    cvShowImage("Opening&Closing window",src);
    cvShowImage("Erosion&Dilation window",src);

    cvCreateTrackbar("Open","Opening&Closing window",&pos,10,Opening);
    cvCreateTrackbar("Close","Opening&Closing window",&pos,10,Closing);
    cvCreateTrackbar("Dilate","Erosion&Dilation window",&pos,10,Dilation);
    cvCreateTrackbar("Erode","Erosion&Dilation window",&pos,10,Erosion);

    cvWaitKey(0);
    //releases header an dimage data 
    cvReleaseImage(&src);
    cvReleaseImage(&image);
    cvReleaseImage(&dest);
    //destroys windows
    cvDestroyWindow("Opening&Closing window");
    cvDestroyWindow("Erosion&Dilation window");

    return 0;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值