Я строю проект с обнаружением человеческих лиц и определением ориентиров. Я делаю несколько тестов с ним, пока я смог создать «пользовательский» dlib shape_predictor, и теперь я пытаюсь выбрать, какой API обнаружения лиц мне следует использовать. Мой окончательный проект будет построен на Raspberry Pi 3 B. Я много читаю, и люди обычно говорят, что Haar менее надежен, но менее тяжел для процессора, чем HOG, тем не менее, я просто попытался использовать каскад haar, но он использует 70% моего процессора (i7-7700HQ), а HOG также загружает процессор на 30%. Я делаю что-то не так?
Я использую Dlib 19.7 и OpenCV 4.2.0.32 в Anaconda (windows 10).
Это код для обнаружения лиц каскада Хаара:
detectorFace = cv2.CascadeClassifier('haarcascade_frontalface_default.xml')
vs = VideoStream(src=0).start()
while True:
frame = vs.read()
frame = imutils.resize(frame, width=600)
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
retangs = detectorFace.detectMultiScale(gray, scaleFactor=1.1, minNeighbors=5, minSize=(30, 30),flags=cv2.CASCADE_SCALE_IMAGE)
for (x, y, w, h) in retangs:
cv2.rectangle(frame, (x, y), (x + w, y + h), (0, 255, 0), 2)
...