2014-04-13 1 views
1

저는 python을 처음 사용합니다. 얼굴을 감지하고 얼굴의 경계를 찾으려고합니다. 만드는 법? 그것은 얼굴의 경계가되는 다수의 포인트가 될 수 있습니다.얼굴을 감지하여 얼굴의 경계를 얻으십시오.

나는 이런 식으로 뭔가를 얻으려는 :

enter image description here

+2

시작을 그렇게 검출! -) 아래 답변 중 하나가 문제를 해결하면 해당 답변 옆에있는 체크 표시를 클릭하여 동의해야합니다. 그것은 두 가지 일을합니다. 모든 사람에게 문제가 해결되었음을 알리고 도움을 제공하는 사람에게 도움을줍니다. 자세한 내용은 [here] (http://meta.stackexchange.com/a/5235/187716)를 참조하십시오. –

답변

0

http://fideloper.com/facial-detection에서 :

우리는 얼굴 검출을 OpenCV를 사용할 수 있습니다. OpenCV는 C로 작성되었지만 은 bindings for Python이며 실제 PHP입니다.

import cv2 

def detect(path): 
    img = cv2.imread(path) 
    cascade = cv2.CascadeClassifier("/vagrant/detect/haarcascade_frontalface_alt.xml") 
    rects = cascade.detectMultiScale(img, 1.3, 4, cv2.cv.CV_HAAR_SCALE_IMAGE, (20,20)) 

    if len(rects) == 0: 
     return [], img 
    rects[:, 2:] += rects[:, :2] 
    return rects, img 

def box(rects, img): 
    for x1, y1, x2, y2 in rects: 
     cv2.rectangle(img, (x1, y1), (x2, y2), (127, 255, 0), 2) 
    cv2.imwrite('/vagrant/img/detected.jpg', img); 

rects, img = detect("/vagrant/img/one.jpg") 
box(rects, img) 

원본 이미지 : 얼굴 enter image description here

enter image description here

+0

알지만 직사각형이 아닌 양식 줄에 테두리를 넣고 싶습니다. 더 정확한 경계를 원합니다. 나는 이것 같이 얻고 싶다 http://my-files.ru/sxy798 – NAlmaz

+0

ок, 나는 응답을 기다리고있다 – NAlmaz

관련 문제