// 2_6.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include <cv.h>
#include <cvcam.h>
#include <cxcore.h>
#include <highgui.h>
#pragma comment(lib,"cv.lib")
#pragma comment(lib,"cvcam.lib")
#pragma comment(lib,"cxcore.lib")
#pragma comment(lib,"highgui.lib")
IplImage *DoCanny(IplImage *pSourceImage)
{
assert(pSourceImage != NULL);
IplImage *pDestImage = cvCreateImage(
cvGetSize(pSourceImage),
pSourceImage->depth,
pSourceImage->nChannels
);
cvCanny(pSourceImage,pDestImage,0.78,0.78);
if (pDestImage != NULL)
{
return pDestImage;
}
else
{
return NULL;
}
}
int main(int argc, char* argv[])
{
IplImage *pSourceImage = cvLoadImage(argv[1],CV_LOAD_IMAGE_GRAYSCALE);
assert(pSourceImage != NULL);
cvNamedWindow(argv[2]);
cvNamedWindow(argv[3]);
IplImage *pDestImage = DoCanny(pSourceImage);
assert (pDestImage != NULL);
cvShowImage(argv[2],pSourceImage);
cvShowImage(argv[3],pDestImage);
cvWaitKey();
cvReleaseImage(&pSourceImage);
cvReleaseImage(&pDestImage);
cvDestroyWindow(argv[1]);
cvDestroyWindow(argv[2]);
return 0;
}