Вы взглянули на бумагу для переноски Gary Bradski? Вы можете скачать его с here
Я использовал алгоритм обнаружения кожи год назад для обнаружения областей кожи для отслеживания рук, и он надежный. Это зависит от того, как вы его используете.
Первая проблема с использованием цвета для отслеживания заключается в том, что он не является надежным для вариантов освещения или, как вы уже упоминали, когда у людей разные оттенки кожи. Однако это можно легко решить, как указано в документе:
- Преобразование изображения в цветовое пространство HSV.
- Выбросьте канал V и рассмотрите канал H и S и, следовательно, скидка на вариации освещения.
- Пороговые пиксели с низким насыщением из-за их нестабильности.
- Вставьте выбранную область кожи в двумерную гистограмму. (OpenCV's calcHist ) Эта гистограмма теперь действует как модель для кожи.
- Вычислить «обратный проект» (например, использовать гистограмму для вычисления «вероятности» , чтобы каждый пиксель на вашем изображении имел цвет тона кожи) с использованием calcBackProject. Кожа регионов будут иметь высокие значения.
- Вы можете либо использовать meanShift для поиска режима 2D «Вероятностная» карта, сгенерированная backproject, либо для обнаружения капель высокой «вероятности».
Отбрасывание V-канала в HSV, и только с учетом каналов H и S действительно достаточно (удивительно) для обнаружения различных тонов кожи и при различных вариантах освещения. Плюсом является то, что его вычисление выполняется быстро.
Эти шаги и соответствующий код можно найти в оригинале OpenCV book.
В качестве побочного примечания я также использовал гауссовские модели смеси (GMM). Если вы только рассматриваете цвет, я бы сказал, что использование гистограмм или GMM не имеет большого значения. Фактически гистограмма будет работать лучше (если ваш GMM не создан для учета изменений освещения и т. Д.). GMM хорош, если ваши векторы образца более сложны (например, вы рассматриваете другие функции), но скорость гистограммы намного быстрее, потому что вычисление карты вероятностей с использованием гистограммы - это, по существу, поиск в таблице, тогда как GMM требует выполнения вычисления матрицы (для вектора с размерностью> 1 в формуле для многомерного гауссовского распределения), что может потребовать много времени для приложений реального времени.
Итак, если вы только пытаетесь обнаружить области кожи, используя цвет, то перейдите к методу гистограммы. Вы можете приспособить его к рассмотрению локального градиента (то есть гистограмму градиентов, но, возможно, не в полной мере использовать алгорифм обнаружения человека Dalal и Trigg), чтобы он мог различать кожу и области с похожим цветом (например, картон или деревянная мебель), используя локальную информацию текстуры. Но для этого потребуется больше усилий.
Для получения исходного кода о том, как использовать гистограмму для обнаружения кожи, вы можете взглянуть на страницу OpenCV here. Но обратите внимание, что на этой веб-странице упоминается, что они используют только канал оттенков, и что использование обоих оттенок и насыщенность дадут лучший результат.
Для более сложного подхода вы можете взглянуть на работу Маркерет Флек и Дэвида Форсайт «Обнаружение обнаженных людей». Это была одна из ранних работ по обнаружению областей кожи который учитывает как цвет, так и текстуру. Подробности можно найти: here.
Отличный ресурс для исходного кода, связанного с компьютерным зрением и i обработка мага, которая включает код для визуального отслеживания, может быть найдена here. И нет, это не OpenCV.
Надеюсь, это поможет.
спасибо за подробный ответ. Dont знаю, если я буду реализовывать метод точно, но его большая помощь, так как он также объясняет некоторые детали, такие как игнорирование v-канала, которое в настоящее время делает, но не понимая, почему – Nicolas
Я добавил ссылку на сайт с большим количеством исходного кода CV и приложения для обработки изображений, включая визуальное отслеживание, которое, я думаю, может показаться полезным, поскольку, по-моему, обнаружение кожи может быть только одним возможным подходом. Возможно, стоит посмотреть на других. – lightalchemist
Обновление ссылки для Обнаруживание голых людей - http://mfleck.cs.illinois.edu/naked.html – saurabheights