Добро пожаловать, гость
:: алгоритмы  и методы :: :: олимпиадные задачи :: :: связь :: :: о сайте :: :: форум ::

Форум работает в режиме архива, только для чтения и поиска.
Архив 2004 Архив 2007 Архив 2013

 
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 20.10.2010, 21:51
Новичок

Отправить личное сообщение для TacoBell Посмотреть профиль Найти все сообщения от TacoBell
 
Регистрация: 20.10.2010
Сообщений: 11

Поиск ладони
Доброе время суток! Есть изображение с ладошкой:

Как найти ладонь на изображении? (С++, OpenCV) Понимаю, что нужно перевести в градации серого само изображение, сделать бинаризацию, найти контуры и закрасить разными цветами... Но вот дальше не знаю.. Или может алгоритм изначально не верный? Прошу у вас помощи...
  #2  
Старый 20.10.2010, 22:09
гость

 
Сообщений: n/a

Только на этом изображении найти или же алгоритм должен быть более общим?
  #3  
Старый 20.10.2010, 22:12
гость

 
Сообщений: n/a

Сообщение от TacoBell Посмотреть сообщение
перевести в градации серого само изображение,
имхо это как раз категорически нельзя делать. цвет несет очень мощный сигнал в данном случае
  #4  
Старый 20.10.2010, 22:59
Новичок

Отправить личное сообщение для TacoBell Посмотреть профиль Найти все сообщения от TacoBell
 
Регистрация: 20.10.2010
Сообщений: 11

Сообщение от гость Посмотреть сообщение
Только на этом изображении найти или же алгоритм должен быть более общим?
Общим. Суть вот в чем: поток изображений поступает с веб камеры. Алгоритм должен, пока, выделить контур ладони пропустив другие объекты.

Сообщение от гость Посмотреть сообщение
имхо это как раз категорически нельзя делать. цвет несет очень мощный сигнал в данном случае
Кхм.. Я как раз думал над этим... НО потом отказался от идеи фильтра по цвету т.к. подумал, что Афроамериканцы не смогут пользоваться прогой xD Хотя, в данном случае, это не имеет значения (учебный проект). Тогда, получается, нужно выбрать планку цвета +- какое-то кол-во пикселей и отсечь другие цвета?
  #5  
Старый 21.10.2010, 00:08
Пользователь

Отправить личное сообщение для lordKelvin Посмотреть профиль Найти все сообщения от lordKelvin
 
Регистрация: 25.01.2010
Сообщений: 51

Можно слегка упростить задачу, повесив на руку яркие и легко распозноваемые маркеры. Придется брать качественную вебкамеру, чтобы избежать эффекта замедления из матрицы.=) И анализ изображений ёмкий ко времени процесс, готовься налегать на оптимизацию.
  #6  
Старый 21.10.2010, 00:20
Новичок

Отправить личное сообщение для TacoBell Посмотреть профиль Найти все сообщения от TacoBell
 
Регистрация: 20.10.2010
Сообщений: 11

Сообщение от lordKelvin Посмотреть сообщение
Можно слегка упростить задачу, повесив на руку яркие и легко распозноваемые маркеры. Придется брать качественную вебкамеру, чтобы избежать эффекта замедления из матрицы.=) И анализ изображений ёмкий ко времени процесс, готовься налегать на оптимизацию.
Без оптимизации, конечно, никак... Но и хотелось бы без маркеров. Может есть какие-то идеи на эту тему?
  #7  
Старый 21.10.2010, 06:44
Пользователь

Отправить личное сообщение для lordKelvin Посмотреть профиль Найти все сообщения от lordKelvin
 
Регистрация: 25.01.2010
Сообщений: 51

Можно фильтром высчитать фон и искать двигающиеся предметы, вычитанием. Руку определять уже по контуру. Собственно, если есть гарантированный контраст с фоном, то можно сразу искать границу.
  #8  
Старый 21.10.2010, 08:17
Новичок

Отправить личное сообщение для TacoBell Посмотреть профиль Найти все сообщения от TacoBell
 
Регистрация: 20.10.2010
Сообщений: 11

Сообщение от lordKelvin Посмотреть сообщение
Можно фильтром высчитать фон и искать двигающиеся предметы, вычитанием. Руку определять уже по контуру. Собственно, если есть гарантированный контраст с фоном, то можно сразу искать границу.
Спасибо, но, однако, этот вариант мне не подходит: камера может тоже двигаться.
  #9  
Старый 21.10.2010, 21:36
Пользователь

Отправить личное сообщение для lordKelvin Посмотреть профиль Найти все сообщения от lordKelvin
 
Регистрация: 25.01.2010
Сообщений: 51

Как знать. Можно считать, что камера двигается медленнее руки и не постоянно. И пользоваться постоянным фоном, когда таковой имеется.
  #10  
Старый 21.10.2010, 21:50
Новичок

Отправить личное сообщение для TacoBell Посмотреть профиль Найти все сообщения от TacoBell
 
Регистрация: 20.10.2010
Сообщений: 11

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

P.S> А еще появилась идея. МОжно находить руку с помощью фильтра по цвету. Тогда, в начале работы программы, юзер должен закрыть своей ладонью большую часть обзора камеры и при этом нажать кнопку старт. Далее высчитывается среднее значение поверхности которая больше всего покрывает изображение (ладонь) и выбирается барьер бинаризации. Далее просто все остальное отсекается и остается черным цветом рука на белом фоне +- какие-то артефакты, которые можно легко убрать посчитав их площадь. Как думаете, покатит?

Последний раз редактировалось TacoBell, 21.10.2010 в 21:55.
 


Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра