2010-05-06 101 views
1

我試圖將此c代碼(http://nashruddin.com/OpenCV_Eye_Detection)轉換爲python代碼,但在c風格,他使用cvROI的東西,因爲ROI函數不支持python-opencv,我試過cvGetSubRect在Opencv眼睛檢測問題

所以這裏是代碼的眼睛檢測部分:

eye_region = cvGetSubRect(image,cvRect(face.x,int(face.y + (face.height/4)),face.width,int(face.height/2))) 
eyes = cvHaarDetectObjects(eye_region,eyeCascade,memo,1.15,3,0,cvSize(25,15)) 
for e in eyes: 
    cvRectangle(image, cvPoint(int(e.x), int(e.y)), 
           cvPoint(int(e.x + e.width), int(e.y + e.height)), 
           CV_RGB(0, 255, 0), 1, 8, 0) 


return image; 

當我運行這段代碼,這將矩形無關緊要的地方。我想,eye_region座標是錯誤的,並嘗試了一些座標,但它沒有奏效。任何想法 ?

注意:人臉檢測方法效果很好,其代碼與眼睛檢測方法相同。

回答

2

確定最後我解決了這個問題,雖然這是一個僞問題

改變

cvRectangle(eye_region, cvPoint(int(e.x), int(e.y)), 
           cvPoint(int(e.x + e.width), int(e.y + e.height)), 
           CV_RGB(0, 255, 0), 1, 8, 0) 

解決了這個問題