IplImage *img_32f = cvCreateImage(cvGetSize(img), IPL_DEPTH_32F, 1);
cvConvertScale(img, img_32f, 1.0 / 255.0, 0);
cvSmooth(img_32f, img_32f, CV_GAUSSIAN, 3);
IplImage *diff_x = cvCreateImage(cvGetSize(img), IPL_DEPTH_32F, 1);
IplImage *diff_y = cvCreateImage(cvGetSize(img), IPL_DEPTH_32F, 1);
cvSobel(img_32f, diff_x, 1, 0, 3);
cvSobel(img_32f, diff_y, 0, 1, 3);
IplImage *magnitude = cvCreateImage(cvGetSize(img), IPL_DEPTH_32F, 1);
IplImage *orientation = cvCreateImage(cvGetSize(img), IPL_DEPTH_32F, 1);
/* calculate the edge magnitude and orientation */
cvCartToPolar(diff_x, diff_y, magnitude, orientation, 0);
cvConvertScale(img, img_32f, 1.0 / 255.0, 0);
cvSmooth(img_32f, img_32f, CV_GAUSSIAN, 3);
IplImage *diff_x = cvCreateImage(cvGetSize(img), IPL_DEPTH_32F, 1);
IplImage *diff_y = cvCreateImage(cvGetSize(img), IPL_DEPTH_32F, 1);
cvSobel(img_32f, diff_x, 1, 0, 3);
cvSobel(img_32f, diff_y, 0, 1, 3);
IplImage *magnitude = cvCreateImage(cvGetSize(img), IPL_DEPTH_32F, 1);
IplImage *orientation = cvCreateImage(cvGetSize(img), IPL_DEPTH_32F, 1);
/* calculate the edge magnitude and orientation */
cvCartToPolar(diff_x, diff_y, magnitude, orientation, 0);

comments
comments rss (+댓글 쓰러가기)