Выделение области на изображении, работа с образами
-
- Сообщения: 526
- Зарегистрирован: 03 янв 2009, 23:17
- Откуда: Voronezh
- Контактная информация:
Есть два автомобиля, один оснащен камерой, второй - любой впередиидущий атомобиль. Во время движения через опр. промежутки времени с камеры передаются кадры. Программа анализирует кадр на наличие номерного знака, и при нахождении сравнивает его размер с эталлоном и делает вывод о дистанции между автомобилями. Если дистанция меньше порогового значения, подается сигнал. Так же в изображении находятся линии дорожной разметки и фиксируется их пересечение автомобилем с камерой.
Главная особенность, это то что камера подвижна! Поэтому для нахождения области со знаком, отбрасывание фона не подходит и, скорее всего, придется проходить построчно, начиная с нижней строчки, по всему кадру.
Буду благодарен за любую информацию. Может кто-то работал с алгоритмом Канни или Хока?
Главная особенность, это то что камера подвижна! Поэтому для нахождения области со знаком, отбрасывание фона не подходит и, скорее всего, придется проходить построчно, начиная с нижней строчки, по всему кадру.
Буду благодарен за любую информацию. Может кто-то работал с алгоритмом Канни или Хока?
Нет религии выше истины
Дабавь в задачу дорожные знаки и оценку собственной скросте по динамике фона. Думаю, будет интересней.
Вопрос: "Почему вы все сионисты? Нельзя ли писать на чём то другом?".
Ответ: "Писать можно на чём угодно. Но зачем же так себя ограничивать? Пиши на С!".
Ответ: "Писать можно на чём угодно. Но зачем же так себя ограничивать? Пиши на С!".
-
- Сообщения: 526
- Зарегистрирован: 03 янв 2009, 23:17
- Откуда: Voronezh
- Контактная информация:
Да, собственную скорость машины с камерой тоже приходится учитывать. Сейчас отказался от определения растояния между авто, и делаю анализ быстроты изменения размера области номерного знака. Знак выделяю по Хаафу.atavin-ta писал(а):...и оценку собственной скрости по динамике фона.
Нет религии выше истины
-
- Сообщения: 526
- Зарегистрирован: 03 янв 2009, 23:17
- Откуда: Voronezh
- Контактная информация:
Можно по-подробней про это?atavin-ta писал(а):по динамике фона.
Сейчас встала проблема определения минимального прямоугольника, описывающего объект. И вообще определения объекта. Нужен надежный алгоритм. У кого какие мысли?
Нет религии выше истины
Минимальный прямоугольник - имеется в виду со сторонами, параллельными сторонам изображения, или перекошенный? В первом варианте все банально - взять точку, которая гарантированно принадлежит объекту, и потом от нее рекурсивно ходить на соседние, если те тоже принадлежат объекту. В процессе обхода сохранять максимальные и минимальные координаты обходимых точек.
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
-
- Сообщения: 526
- Зарегистрирован: 03 янв 2009, 23:17
- Откуда: Voronezh
- Контактная информация:
Прямой. При этом стороны проходят через крайние точки объекта. Пример в атаче.Хыиуду писал(а):параллельными сторонам изображения, или перекошенный?
В этом, то и проблема: если мы будем знать, какие точки гарантированно принадлежат объекту, мы можем по количеству точек сравнивать объекты между собой. Сейчас пробую строить гистограммы по бинарному изображению и, анализируя скачки, выделять области по сопоставлению минимумов. Нахожу 4 точки, выделяю из две, строю по ним прямоугольник. Нахожу длины отрезков, от точки до точки (определяю длины двух сторон), нахожу площадь. Всё бы хорошо, если цвет объекта не близок к цвету фона.Хыиуду писал(а):взять точку, которая гарантированно принадлежит объекту.
- Вложения
-
- IMG_2966.JPG (95.89 КБ) 442 просмотра
-
- IMG_2965.jpg (83.17 КБ) 441 просмотр
Нет религии выше истины
Какая интересная задача...
Начнем с граничных условий:
- Считать, что обе машины движутся прямолинейно?
- С какой частотой делаются снимки?
- Какие машины подходят под наблюдение? Обязательно прямоугольные (фургоны, газели), или хоть трактор Беларусь?
- Считать, что номерной знак на машине обязательно белый (т.е. не голубой и не грязный)?
Начнем с граничных условий:
- Считать, что обе машины движутся прямолинейно?
- С какой частотой делаются снимки?
- Какие машины подходят под наблюдение? Обязательно прямоугольные (фургоны, газели), или хоть трактор Беларусь?
- Считать, что номерной знак на машине обязательно белый (т.е. не голубой и не грязный)?
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
-
- Сообщения: 526
- Зарегистрирован: 03 янв 2009, 23:17
- Откуда: Voronezh
- Контактная информация:
На коротких промежутках прямолинейно, а так произвольно.Хыиуду писал(а):Считать, что обе машины движутся прямолинейно?
Обычная видеокамера с черезстрочной разверткой и частотой кадров примерно 25 кадров/сек.Хыиуду писал(а):С какой частотой делаются снимки?
Объекты любой формы (и даже не машины).Хыиуду писал(а):Какие машины подходят под наблюдение? Обязательно прямоугольные (фургоны, газели), или хоть трактор Беларусь?
Я хотел использовать номерной знак (а скорее его размер) для определения дистанции до впередиидущего авто. Но сейчас отказался от этого, поскольку авто может быть без номера, иметь транзитный, загрязненный, помятый, иметь много надписей похожих на номерной знак или вообще вести полный кузов номеровХыиуду писал(а):Считать, что номерной знак на машине обязательно белый (т.е. не голубой и не грязный)?

Нет религии выше истины
С тем же успехом впереди может ехать автобус, а может газель, которая по форме выглядит так же (квадрат), в этом случае надо как-то определять размер машины, чтобы система не впадала в панику, если вы едете позади Белаза.
Можно попробовать проанализировать однотонный участок дороги перед вами и отсечь тот уровень, где он заканчивается (начинаются колеса впередиидущего). В этом случае вообще все равно, что там перед вами едет - хоть телега. Только этот случай очень уязвим при езде после дождя или по заснеженной трассе.
Можно попробовать проанализировать однотонный участок дороги перед вами и отсечь тот уровень, где он заканчивается (начинаются колеса впередиидущего). В этом случае вообще все равно, что там перед вами едет - хоть телега. Только этот случай очень уязвим при езде после дождя или по заснеженной трассе.
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
-
- Сообщения: 526
- Зарегистрирован: 03 янв 2009, 23:17
- Откуда: Voronezh
- Контактная информация:
Программа реагирует не на размер, а на быстроту его увеличения. Для этого и необходимо описать квадрат вокруг предмета, чтобы по нескольким кадрам можно было анализировать эту самую быстроту. Другими словами, нам не важен размер объекта сам по себе, мы просто сравнимаем площади, и если скажем объект увеличился в два раза, мы прибегаем к паникеХыиуду писал(а):С тем же успехом впереди может ехать автобус, а может газель, которая по форме выглядит так же (квадрат), в этом случае надо как-то определять размер машины, чтобы система не впадала в панику, если вы едете позади Белаза.

Этот вариант не эффективен, так как будет множество ошибочных определений, связанных с цветом дороги, освещением, её рельефом, а главное, что препятствие можем не иметь колёсХыиуду писал(а):Можно попробовать проанализировать однотонный участок дороги перед вами и отсечь тот уровень, где он заканчивается (начинаются колеса впередиидущего). В этом случае вообще все равно, что там перед вами едет - хоть телега. Только этот случай очень уязвим при езде после дождя или по заснеженной трассе.

Нет религии выше истины