http://blog.csdn.net/zxlstudio/article/details/10024175?utm_source=tuicool&utm_medium=referral
2013-08-17 14:18
1558人阅读
收藏
举报
分类:
版权声明:本文为博主原创文章,未经博主允许不得转载。
测试图片:
code:
- #include <opencv\cv.h>
- #include <opencv\highgui.h>
- #include <opencv\cxcore.h>
- #include <stdlib.h>
- #include <stdio.h>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- CvSeq* getImageContour(IplImage* srcIn){
-
- IplImage* src;
- src = cvCreateImage(cvGetSize(srcIn),8,1);
-
-
- cvCopy(srcIn,src);
-
-
- CvMemStorage* mem = cvCreateMemStorage(0);
-
- CvSeq* seq;
-
- if(!mem){
- printf("mem is null");
- }
-
-
- cvThreshold(src,src,100,255,0);
-
-
- cvFindContours(src,mem,&seq,sizeof(CvContour),CV_RETR_CCOMP);
-
-
- cvReleaseImage(&src);
-
-
- return seq;
-
- }
-
-
-
-
- int main(int argc, char* argv[]){
-
-
- IplImage* src1 = cvLoadImage("C:\\Users\\zxl\\Desktop\\1.png",CV_LOAD_IMAGE_GRAYSCALE);
-
- CvSeq* contour1;
- contour1 = getImageContour(src1);
-
-
-
- IplImage* src2 = cvLoadImage("C:\\Users\\zxl\\Desktop\\3.png",CV_LOAD_IMAGE_GRAYSCALE);
-
- CvSeq* contour2;
- contour2 = getImageContour(src2);
-
-
-
- double result;
-
-
-
-
-
- result = cvMatchShapes(contour1,contour2,1);
-
-
- printf("result is %f \n",result);
-
-
- cvReleaseMemStorage(&contour1->storage);
- cvReleaseMemStorage(&contour2->storage);
-
-
- cvReleaseImage(&src1);
- cvReleaseImage(&src2);
-
- return 0;
-
- }
-