OpenCV Отслеживание одного глаза с камерой в голове

Я хочу отследить один глаз в Opencv в cpp . я буду использовать камеру с креплением на голову [обычная / ик-камера], я пробовал разные алгоритмы, но каждый код связан с техникой оценки позы на голове. Может ли кто-нибудь предложить какой-либо алгоритм с кодом или способ реализации

2 ответа

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

http://www.inb.uni-luebeck.de/publikationen/pdfs/TiBa11b.pdf

В нем подробно описан довольно простой и быстрый метод быстрого нахождения ученика по изображению или интересующей области глаза.

Кроме того, только что нашел это, если вы просто хотите сорвать чей-то код:

http://thume.ca/projects/2012/11/04/simple-accurate-eye-center-tracking-in-opencv/

Это реализация C++ того же алгоритма.

Если вы хотите, вы можете использовать реализацию каскада Хаара. Для отслеживания одного глаза вы можете отслеживать лица и глаза, используя классификатор, который возвращает координаты блоков, где лица и глаза находятся на изображении, и проверяя, находится ли глаз в блоке лица, вы Можно определить каждую пару глаз для каждого лица. Затем вы можете выбрать, какой глаз показывать для каждого лица.

Вот ссылка, которая показывает, как использовать каскадные классификаторы.

OpenCV Cascade классификатор

Вот файл, который вам нужен для использования каскадного классификатора. Здесь, если вас интересуют некоторые статьи, объясняющие некоторые алгоритмы отслеживания в компьютерном зрении.

Документация по HaarCascade

Другие вопросы по тегам