From c7599f2fe85abefedf083c04377530d2e3497246 Mon Sep 17 00:00:00 2001 From: "N.N." Date: Thu, 3 Sep 2009 20:11:28 +0000 Subject: added pix_opencv_hough_lines svn path=/trunk/externals/pix_opencv/; revision=12233 --- pix_opencv_hough_circles.cc | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) (limited to 'pix_opencv_hough_circles.cc') diff --git a/pix_opencv_hough_circles.cc b/pix_opencv_hough_circles.cc index 40595d1..2ebbdcf 100755 --- a/pix_opencv_hough_circles.cc +++ b/pix_opencv_hough_circles.cc @@ -202,21 +202,22 @@ void pix_opencv_hough_circles :: processGrayImage(imageStruct &image) memcpy( gray->imageData, image.data, image.xsize*image.ysize ); - if( night_mode ) - cvZero( gray ); - x_storage = cvCreateMemStorage(0); cvSmooth( gray, gray, CV_GAUSSIAN, 9, 9 ); CvSeq* circles = cvHoughCircles( gray, x_storage, CV_HOUGH_GRADIENT, x_resolution, x_mindist, x_threshold, x_threshold2 ); + + if( night_mode ) + cvZero( gray ); + ucircles = (circles->total>x_maxcircles)?x_maxcircles:circles->total; for( i = 0; i < ucircles; i++ ) { float* p = (float*)cvGetSeqElem( circles, i ); char tindex[10]; - cvCircle( gray, cvPoint(cvRound(p[0]),cvRound(p[1])), 3, CV_RGB(0,255,0), -1, 8, 0 ); - cvCircle( gray, cvPoint(cvRound(p[0]),cvRound(p[1])), cvRound(p[2]), CV_RGB(255,0,0), 3, 8, 0 ); + cvCircle( gray, cvPoint(cvRound(p[0]),cvRound(p[1])), 3, CV_RGB(255,255,255), -1, 8, 0 ); + cvCircle( gray, cvPoint(cvRound(p[0]),cvRound(p[1])), cvRound(p[2]), CV_RGB(255,255,255), 3, 8, 0 ); SETFLOAT(&x_list[0], i); SETFLOAT(&x_list[1], cvRound(p[0])); SETFLOAT(&x_list[2], cvRound(p[1])); -- cgit v1.2.1