2013-08-01 3 views
0

Я новичок в обработке изображений, и я работаю над простым проектом, чтобы узнать людей по их цвету одежды. Я не уверен, что лучший способ сделать это. Поскольку я использую Kinect (с Kinect-SDK), легко обнаружить людей, использующих поток глубины, и путем сопоставления данных глубины с данными цвета я могу получить цветные пиксели людей. Я попытался построить цветную гистограмму для каждого человека, чтобы распознать цвет человека. Я не уверен, правильно это или нет! Что я делаю: 1- Получить данные глубины с устройства Kinect. 2- Убедитесь, что пиксель является пикселем игрока или нет, используя индекс Player. 3- Карта пикселей игрока в цветные пиксели. 4- Настройте цветную гистограмму для проигрывателя.Отслеживайте человека по цвету одежды с помощью датчика Kinect

У меня есть проблема дела с шагом 4. Это, как я пытаюсь построить гистограмму (32 ящиков):

color = ColorPixelData[colorPixelIndex]; 
B_Values[color/8]++; 

color = ColorPixelData[colorPixelIndex + 1]; 
G_Values[color/8]++; 

color = ColorPixelData[colorPixelIndex + 2]; 
R_Values[color/8]++; 

Я думаю, что я делаю это в неправильном направлении. Значения цветов выглядят очень разными при каждом запуске программы на одной сцене.

Может ли кто-нибудь дать мне несколько баллов? Любая помощь будет оценена по достоинству.

+0

На это влияет количество окружающего света в комнате? –

ответ

0

Цветовая гистограмма не поможет вам. В тот же день, когда я делал инструмент распознавания лиц, гистограмма цвета давала разные значения для изображений, которые выглядят почти одинаково. Так что это не путь. Вместо того, чтобы строить цветную гистограмму, вы можете увидеть, как, например, красный цвет присутствует на сцене, если кто-то из ваших испытуемых носит красную куртку.

Смежные вопросы