Python OpenCV - обнаружение рук

1

Мы все любим каскады хара.

Более того, в Python OpenCV обнаружение лиц во входном изображении довольно просто:

import cv2 
img = cv2.imread("picture.jpg", 0)
haar_face = "haarcascade_frontalface_default.xml"
faceCascade = cv2.CascadeClassifier(haar_face)
faces = faceCascade.detectMultiScale(img, 1.3, 5)

Изображение 174551

Но как я обнаруживаю руки, следуя точному же подходу?

Я искал, загружал и использовал много XML файлов из Интернета, но все они выполнялись очень плохо.

Может ли кто-нибудь указать хорошую ссылку на файл xml haarcascade для обнаружения рук?

Теги:
opencv
object-detection

2 ответа

0

Использование haarcascades для обнаружения рук не даст очень надежных результатов обнаружения из-за различных возможных поз рук. Таким образом, открытой руке или кулаку потребуются отдельные хааркаскады. Хотя haarcascades не могут обрабатывать вращение очень хорошо.

Если ваше оборудование позволяет это, вы можете использовать глубокие нейронные сети для обнаружения рук. Очень надежный подход заключается в обнаружении позы тела и извлечении ручных ключевых точек оттуда:

Очень надежный, но также очень ресурсный голод/медленный (требуется графический процессор):
https://github.com/CMU-Perceptual-Computing-Lab/openpose

Менее точные, но гораздо быстрее:
https://github.com/ildoonet/tf-pose-estimation

Просто новый и многообещающий, но непроверенный для меня:
https://github.com/tensorlayer/openpose-plus

0

Используйте соответствующий файл haarcascades. В фонде нет ни одного, но кто-то сделал свой заказ на https://github.com/Balaje/OpenCV/tree/master/haarcascades. (Отказ от ответственности: я не проверял его.)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню