1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
|
#include <cv.h>
#include <highgui.h>
#include <stdio.h>
#include <iostream>
using namespace std;
int main(void)
{
char c;
CvSize pattern_size = cvSize(13,26);
int *corner_count=new int,pattern_was_found=0;
CvPoint2D32f* corners = new CvPoint2D32f;//(CvPoint2D32f*)malloc(220 * sizeof(CvPoint2D32f));
cvNamedWindow("Calibration", 0);
cvMoveWindow( "Calibration", 500, 0);
cvNamedWindow("Originale", 0);
cvMoveWindow( "Originale", 0, 0);
IplImage* image = cvLoadImage("calibration_1.JPG",1);
IplImage* imgCorner = cvCreateImage(cvGetSize(image), 8, 1);
pattern_was_found = cvFindChessboardCorners(image, pattern_size, corners,
corner_count, CV_CALIB_CB_NORMALIZE_IMAGE );
cvDrawChessboardCorners(imgCorner, pattern_size,corners, *corner_count, pattern_was_found );
while(1)
{
cvShowImage("Originale",image);
cvShowImage("Calibration",imgCorner);
c=cvWaitKey(15);
if(c==' ')
{
cout<<"exiting..."<<endl;
cvDestroyAllWindows();
cvReleaseImage(&image);
cvReleaseImage(&imgCorner);
cout<<"...end"<<endl;
break;
}
}
return 0;
} |
Partager