Здравствуйте.
Я работаю в IT-компании, и вмести с моими коллегами, мы разрабатываем
программное обеспечение, способное вдохнуть жизнь в новые аппаратные
комплексы. Параллельно с моей основной работой я занимаюсь исследованиями
в области компьютерного зрения. Целью исследования является поиск машинных
методов трехмерного восприятия реального мира.
К сожалению публикаций моих работ, пока нет, да и моя нынешняя основная
работа далека от темы компьютерного зрения.
Сейчас я занимаюсь сегментацией движений. Сегментация по движениям
мне нужна для определения границ объектов (то есть первичной информации
об объектах которые "видит" камера, изначально не зная как выглядят объекты сцены).
После определения первичной информации о границах объектов, можно выделить ряд признаков,
которые характеризуют объект, выполнить классификацию объектов по вектору признаков,
и в дальнейшем будет возможным опознавать ранее классифицированные объекты
даже по одному единственному кадру.
Мне удалось разработать вполне приемлемый алгоритм расчёта карты векторов движений
пикселей в видеопоследовательности, но извлечь от туда границы объектов пока не удаётся.
http://edv-detail.narod.ru/vm0001.jpg
Получается забавная ситуация, зрительно объекты отчётливо видны на карте движений
(визуализация: направление-скорость -> цвет-яркость), а получить чёткие границы
объектов не удаётся (ну прям видит око да зуб неймёт).
Я испробовал три способа:
В первом, сегментация по карте движений выполнялась
по превышению порогового значения скорости с учётом четырёх направлений, но это не даёт хороших
результатов (разве что на статическом фоне всё красиво получается).
http://edv-detail.narod.ru/m1vm0001.jpg
Второй вариант: по карте движений строится гистограмма направления-движения,
определяются кластера гистограммы, остальные точки гистограммы распределяются между кластерами.
По полученной гистограмме и карте движений строится гистограммная проекция,
после чего сегментация проекции. Результат тоже не ахти.
http://edv-detail.narod.ru/hist0001.jpg
Ну и наконец третий вариант: по карте движений строим гистограммы направления-движения
для каждого сегмента изображения, потом для всех соседних сегментов определяем степень похожести
их гистограмм. По пороговому значению объединяем похожие сегменты.
Исходное сегментированное изображение:
http://edv-detail.narod.ru/m3seg0001.jpg
После объединения похожих фрагментов:
http://edv-detail.narod.ru/m3fseg0001.jpg
К сожалению и тут результаты не радуют.
Ну вот, хочу с вами посоветоваться, может в вашей практике встречались подобные задачи,
и вы можете посоветовать что-нибудь полезное по данной тематике.