2012-11-29 20 views
10

Khi sử dụng Python,Cách lấy điểm cho cv2.CascadeClassifier.detectMultiScale()?

chức năng OpenCV

cv.HaarDetectObjects() 

trả về một đối tượng tìm thấy cùng với một số phát hiện.

Nếu tôi sử dụng chức năng opencv2 thay vào đó,

cv2.CascadeClassifier.detectMultiScale() 

tôi nhận được đối tượng phát hiện, nhưng điểm số không. Điều này làm cho nó khó khăn để có được một biện pháp "tự tin" tốt của phát hiện.

Có cách nào để sử dụng CV2 bằng cách nào đó không?

+0

bạn đã tìm ra cách để làm điều này? Cảm ơn! – angela

Trả lời

1

Theo các documentation

cv2.CascadeClassifier.detectMultiScale(image, rejectLevels, levelWeights[, scaleFactor[, minNeighbors[, flags[, minSize[, maxSize[, outputRejectLevels]]]]]]) → objects 

Danh sách rejectLevels là loại điểm số cho thấy sự tự tin của kết quả phát hiện.

Các tương ứng (tuy nhiên không có cơ sở) C++ API là:

CV_WRAP virtual void detectMultiScale(const Mat& image, 
           CV_OUT vector<Rect>& objects, 
           vector<int>& rejectLevels, 
           vector<double>& levelWeights, 
           double scaleFactor=1.1, 
           int minNeighbors=3, int flags=0, 
           Size minSize=Size(), 
           Size maxSize=Size(), 
           bool outputRejectLevels=false); 
+0

Bạn có biết trọng số cấp là bao nhiêu không? –

+4

bạn có ví dụ về việc sử dụng detectMultiScale với rejectLevels và levelWeights không? – samkhan13

Các vấn đề liên quan