opencv 图像尺度空间介绍

测试图片:

code:

#include <opencv\cv.h>
#include <opencv\highgui.h>
#include <opencv\cxcore.h>
#include <stdio.h>


#define SCALESIZE 20
int main(int argc, char* argv[])
{
	IplImage* src;

	src = cvLoadImage("C:\\Users\\zxl\\Desktop\\test1.jpg",0);

	int winSize[SCALESIZE],i;
	IplImage* scaleImage[SCALESIZE];
	IplImage* edgeImage[SCALESIZE];

	char filename[256];

	winSize[0] = 3;
	scaleImage[0]=cvCreateImage(cvGetSize(src),8,1);
	edgeImage[0]=cvCreateImage(cvGetSize(src),8,1);
	
	for( i=1;i<SCALESIZE;i++)
	{
		winSize[i] = winSize[i-1]+2;
		scaleImage[i]=cvCreateImage(cvGetSize(src),8,1);
		edgeImage[i]=cvCreateImage(cvGetSize(src),8,1);
	}

	
	for(i=0;i<SCALESIZE;i++)
	{
		cvSmooth(src,scaleImage[i],CV_GAUSSIAN,winSize[i],winSize[i]);

		cvCanny(scaleImage[i], edgeImage[i], 30, 90, 3);
	}

	//保存图像
	for(i=0;i<SCALESIZE;i++)
	{
		sprintf(filename,"scale_%d.jpg",i);

		cvSaveImage(filename,scaleImage[i]);

		sprintf(filename,"edge_%d.jpg",i);

		cvSaveImage(filename,edgeImage[i]);


	}

	for(i=0;i<SCALESIZE;i++)
	{
		cvReleaseImage(&scaleImage[i]);
		cvReleaseImage(&edgeImage[i]);
	}
	cvReleaseImage(&src);
	return 0;
}


 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值