|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
03.11.2009, 18:11 | #1 |
Форумчанин
Регистрация: 07.03.2009
Сообщений: 123
|
Выделение области на изображении, работа с образами
Есть автомобиль с камерой, есть впередиидущий автомомбиль (объект). Есть кадры движущегося объекта (автомобиля), сделанные через промежутки времени. Необходимо:
- выделить область номерного знака; - определить примерное расстояние от машины с камерой до объекта (или точнее, проверить достачно ли расстояние, чтобы избежать столкновения), по размеру знака; - определить линии разметки; - фиксировать пересечение линий разметки машиной с камерой. Главная трудность, что машина с камерой так же подвижна, как и объект! Все найденные мной методы, основываются на том принципе, что камера неподвижна (соотв. можно отбросить фон при подготовке) и не учитывают движение машины с камерой. Как быть с определением дистанции? Буду благодарен за любую помощь или ссылки на литературу.
Не говорите что мне делать, и я не скажу куда Вам идти.
Пишу программы на заказ на Delphi и Pascal Форум разработчиков Pascal и Delphi |
03.11.2009, 19:46 | #2 |
Старожил
Регистрация: 29.09.2009
Сообщений: 9,713
|
по первому...
по второму - более надежный метод - эхолокация, ультразвуковая, инфракрасная по 3-4 - скорее понадобиться вторая отдельная камера, или первая должна быть широкоугольной
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation |
03.11.2009, 21:42 | #3 |
Форумчанин
Регистрация: 07.03.2009
Сообщений: 123
|
Не говорите что мне делать, и я не скажу куда Вам идти.
Пишу программы на заказ на Delphi и Pascal Форум разработчиков Pascal и Delphi |
03.11.2009, 22:22 | #4 |
Старожил
Регистрация: 29.09.2009
Сообщений: 9,713
|
ясно.
...скину вам распознавание через нейронные сети (для 3 из них нужен компонент -NeuralBase, остальные два сами по себе работают)
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation |
03.11.2009, 22:32 | #5 |
Форумчанин
Регистрация: 07.03.2009
Сообщений: 123
|
Raxp,cпасибо! Cейчас буду смотреть.
Про выделение области знака: вероятно придется проходить по всему изображению построчно начиная с последней. Отбросить фон не получится. Втал вопрос! Основная проблема: определение объекта (машина и т.п.), а конкретней: определение минимального прямоугольника, описывающего объект. Бьюсь над этим второй день - безрезультатно. Статические методы не работают. Может кто-то работал с выделением границ с ипользованием гистограмм?
Не говорите что мне делать, и я не скажу куда Вам идти.
Пишу программы на заказ на Delphi и Pascal Форум разработчиков Pascal и Delphi Последний раз редактировалось Stilet; 16.11.2009 в 11:29. |
10.11.2009, 10:04 | #6 | |
Старожил
Регистрация: 29.09.2009
Сообщений: 9,713
|
Общая теория - Компьютерная обработка и распознавание изображений и + возможно это уже видели
Цитата:
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation Последний раз редактировалось raxp; 10.11.2009 в 10:33. |
|
11.11.2009, 19:41 | #7 |
Форумчанин
Регистрация: 07.03.2009
Сообщений: 123
|
Проработал все алгоритмы как определению дистанции до авто, так и поскорости его приближения. Что-то никак не разберусь с цветовыми гистограммами (а точнее с их сравнением). То, что хочу реализовать в атаче.
С появлением объекта в кадре вроде разобрался: 1. Разбиваем изображение на 4 части 2. Строим цветовую гистограмму по принципу куба, т.е. цветовое RGB-пространство рассматривается как трехмерный куб, каждая ось которого соответствует одному из трех основных цветов (красному, зеленому или синему), деления на осях пронумерованы от 0 до 255. Для построения цветовой гистограммы каждая сторона делится на n (n=4) равных интервалов, соответственно RGB-куб делится на N (N=64) прямоугольных параллелепипедов. Vi – множество цветов, все компоненты которых попадают в определенные интервалы. Гистограмма изображения отражает распределение точек RGB-пространства, соответствующих цветам пикселов изображения, по параллелепипедам. 3. Рассчитываются расстояния между гистограммами четвертей данного кадра и предыдущего, итоговым результатом считается корень из суммы квадратов расстояний. Каждый однородно окрашенный объект проецируется в нелинейное цветовое пространство (в моём случае RGB-куб) как точечный кластер или кластер в форме отрезка кривой с преимущественной ориентацией вдоль оси яркости. Это подтверждается экспериментальным исследованием изображений, полученных с реальных камер. Необходимо находить в цветовом пространстве кластеры типа криволинейных отрезков: 1. разбиение цветового пространства на слои семейством плоскостей, нормальных к главной диагонали цветового пространства; 2. послойная кластеризация с помощью алгоритма поиска водоразделов; 3. сборка кластеров; 4. обратное проецирование на плоскость изображения с целью получения карты сегментации. Нужно использовать разбиение изображения на небольшие, плотно покрывающие изображение, прямоугольные области, каждая из которых сегментируется независимо. При этом при сегментации текущей области анализируется цветовое распределение, взятое по большей области. При этом объект, далёкий от текущей области, уже не зашумляет её локальное цветовое распределение, а близкие объекты вносят существенный вклад, даже если их вклад по площади в сегментируемую область мал. Для устранения границ между «областями внимания» используется процедура слияния областей с помощью ГСО. Функция для меры несходства определенна. C реализацией этого проблемы Как бы описать нечто подобное: Код:
Не говорите что мне делать, и я не скажу куда Вам идти.
Пишу программы на заказ на Delphi и Pascal Форум разработчиков Pascal и Delphi Последний раз редактировалось Stilet; 16.11.2009 в 11:31. |
16.11.2009, 10:21 | #8 | |
Старожил
Регистрация: 29.09.2009
Сообщений: 9,713
|
Цитата:
...как я понял из описания цветовой гистограммы в 3d, то вам нужно просто иметь на входе динамическую запись вида: Код:
Код:
... заготовку opengl проекта можете взять тут по управлению тут
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation Последний раз редактировалось raxp; 16.11.2009 в 10:40. |
|
14.12.2009, 04:36 | #9 |
Форумчанин
Регистрация: 07.03.2009
Сообщений: 123
|
raxp, спасибо за помощь с OpenGL (и не только).
После длительного перерыва возвращаюсь к этой задаче. В результате некоторых размышлений подход к решению данной задачи значительно изменился. Пробую реализовать метод выделения объектов на основе оптического потока. Вот вкратце что предполагается сделать: Есть два кадра, первый снят во время t0 (далее предыдущий кадр), а второй во время t (далее текущий кадр). Кадры разбиваются на блоки пикселов и для каждого блока пикселов текущего кадра находится вектор движения (определяет смещение блока пикселов по x и y, относительно предыдущего кадра, основываясь на том, что интенсивность каждого пиксела постоянна). После этого производится обход блоков и сравнение их векторов движения, при этом блоки с похожими (по направлению, длине и т.п.) векторами движения объеденяются. Все эти действия направленны на сегментацию изображений, т.е. на выделение объектов отличных от статичного фона. Проблема следующая: необходимо подобрать (как вариант усовершенствовать/разработать) быстрый алгоритм нахождения векторов движения (для начала можно предположить, что у нас нет проблем с освещеностью, что текстура объектов хорошо выраженна). Главными требованиями для этого алгоритма будут: небольшая вычислительная сложность (соотв. время вычислений), и минимальное кол-во ложных векторов движения, не соотв. реальному движению нестатичных объектов. В идеале это кол-во должно приближаться к количеству, как при методе полного перебора (где-то ~35% от общего количества). В сущности проблема в выборе алгоритма. Однако можно подумать в направлении предварительной обработки изображений для сужения зоны поиска и/или последующего исключения ложных векторов вижения, чтобы снизить риск рассегментации и потери объекта. В общем проблема такая. Может кто что посоветует?
Не говорите что мне делать, и я не скажу куда Вам идти.
Пишу программы на заказ на Delphi и Pascal Форум разработчиков Pascal и Delphi |
14.12.2009, 09:10 | #10 |
Старожил
Регистрация: 29.09.2009
Сообщений: 9,713
|
эм.. почитал про оптический поток.... после всего у меня сложилось общее впечатление, что векторизация напоминает работу нейронных сетей.... о, вы кстати смотрели их? как они в данном случае, ведь прикладное их применение в распознавании цифр...
по-поводу алгоритма поиска векторов движения, поищу.
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
(Pascal) Выделение произвольной области на экране | bobby2008 | Помощь студентам | 1 | 29.05.2009 21:33 |
выделение области | seregaAV110 | Мультимедиа в Delphi | 3 | 27.11.2008 21:33 |
выделение произвольной области на изображении | seregaAV110 | Помощь студентам | 2 | 16.11.2008 11:46 |
Координаты курсора на изображении | Ciberal | Мультимедиа в Delphi | 2 | 28.10.2008 19:33 |
Изображения на изображении :) | nikleb | JavaScript, Ajax | 6 | 24.11.2007 01:34 |