Перейти к содержимому
Compvision.ru
mult1plexer

Парковочная система

Recommended Posts

Добрый день, появилась задача связанная с парковочной системой, а именно определению количества занятых и свободных парковочных мест, ничего нового впринципе. Необходимо решить проблему связанную с изменением освещенности, отражениями от поверхностей, бликами. Первоначально использовал простые методы по детектированию авто такие, как вычитания изображения из базового статического кадра и последующие бинарные, морфологические и т.д. преобразования на простых тестовых видеозаписях (статичное освещение, нет бликов, нет отражений) это давало неплохие результаты. На сложных или более естественных видеозаписях, где происходит смена освещения и т.д это не работает. Стал смотреть в сторону адаптивных моделей фона, в частности  BackgroundSubtractorMOG2, проблемы с фоном решились, но появились новые. Например переход объектов переднего плана к модели фону, в связи с чем невозможность детектирования малоподвижных или статических в определенный момент времени объектов. Так вот если кто то сталкивался с такими проблемами и успешно решал не могли бы вы подсказать пути их решения?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Да, сталкивался. Проблемы возникли ещё раньше, на многих парковках не было возможности повесить камеру достаточно высоко, поэтому многие автомобили на краях кадра были видны лишь кусочками - только крыша, например. Либо совсем не видны за Газельками.

Решение получилось своеобразным: ставится поворотная камера, которая сканирует парковку и распознаёт номера автомобилей. Номер распознан - место занято. Номер какое-то количество обходов не распознаётся - место свободно. Проблемы с освещённостью ушли, появились другие, но меньшие.

Это мой опыт.

 

Для того, чтобы что-то подсказать тебе, желательно увидеть 1-2 кадра: как оно вообще выглядит. Два кадра лучше: один в одно время, другой позже, когда часть машин разъехалась, часть приехала, изменилось освещение (пошёл дождь, снег, спустился туман - на твой выбор).

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Работаю с этими видео.

1 видео - https://youtu.be/p8YvegQFKSU

2 видео - https://youtu.be/ZpJA7e7gNXo

3 видео - https://youtu.be/qV3hksMwZNk

С первым видео проблем нет если использовать методику со статичным фоном подвижные объекты можно успешно определить.

Со вторым в момент движения автомобиля появляются проблемы связанные с освещенностью от фар. Но они пропадают когда авто останавливается. Тоже статичный фон. 

Третье самое проблемное . Статичный фон здесь не подходит. Меняется освещение, отражения. Использовал динамичную модель фона. Более менее нормально определяются авто, но непонятно как решить проблему с переходом объектов переднего плана к модели фона.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Первая мысль, конечно: делать не детектирование движения или смотреть на изменение фона, а использовать распознавание. То есть тудо искать и распознавать по всему кадру автомобили.

Вторая - объединить статику и динамику. То есть всё также использовать статичный кадр для сравнения, но обновлять его кусками на основании того же BackgroundSubtractorMOG2. Надо подумать...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Тут конечно не просто все, как в любой реальной задаче, но можно попробовать такой алгоритм:

1) Детект и инициализация трекинга вычитанием фона (пока объект движется).

2) Пока идет первая часть трекинга инициализировать трекер с онлайн обучением и распознаванием ( например из арсенала  VOTR).

 

3) Трекать пока не уедет :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Тут как раз мне кажется больше решается задача слежения, чем выявлении новых объектов. По сути в моей задачи не нужен трекинг авто, а важен сам факт появления или его отсутствия в заданных областях.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ну тогда можно еще рассмотреть вариант: отмечать место в которое вселились (приехали из-за экрана и встали).

Пока объект никуда не движется, он там и нам не нужно его видеть.

Как только он начал движение, мы его опять видим, если уехал, отмечаем место свободным.

Более того, место откуда только что уехали, будет какое то время подсвечено, что довольно удобно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
7 hours ago, mult1plexer said:

Добрый день, появилась задача связанная с парковочной системой, а именно определению количества занятых и свободных парковочных мест, ничего нового впринципе. Необходимо решить проблему связанную с изменением освещенности, отражениями от поверхностей, бликами.

Здравствуйте!

"Вам шашечки или ехать?"

Собственно, вам надо решить "задачу, связанную с парковочной системой, а именно определение количества занятых и свободных парковочных мест" или "необходимо решить проблему связанную с изменением освещенности, отражениями от поверхностей, бликами"?

Чем точнее и полнее сформулируете задачу, тем быстрее найдёте решение. Например, задача "пропускать автомобили только, если есть свободные места" отличается от задачи "оценить количество посетителей по количеству автомобилей". Вот лишь первые вопросы, которые встают относительно видео:

  1. Программа должна быть универсальной или можно выполнять привязку к конкретным местам?
  2. Какие могут быть самые плохие видео? Метель, залепило камеру и т.д.
  3. Камеры статические, двигаются по заданному алгоритму, двигаются хаотично, есть возможно управлять приводом камеры?
  4. Какое разрешение и качество картинки, а также расстояние до земли?

P.S. Глянул на предложенные видео. Сделал скриншоты, потом применил find edges - все автомобили "как на ладони". Вместо вычитания фона и т.п. можете попробовать, например, определять границы, после чего сравнивать уже их. Можно взять и разбить всю сцену на небольшие квадраты (по 0.5 x 0.5 м), после чего определять занятость их с некоторой вероятность, а затем сопоставлять. Если заняты сразу соседние четыре, то кто-то точно встал: автомобиль, мотоцикл и т.п.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
16 час назад, boriso said:

Чем точнее и полнее сформулируете задачу, тем быстрее найдёте решение

Задача заключается в определении наличия или отсутствия авто в интересующих местах, которые пользователь произвольно выделяет.

16 час назад, boriso said:

Вот лишь первые вопросы, которые встают относительно видео:

  1. Программа должна быть универсальной или можно выполнять привязку к конкретным местам?
  2. Какие могут быть самые плохие видео? Метель, залепило камеру и т.д.
  3. Камеры статические, двигаются по заданному алгоритму, двигаются хаотично, есть возможно управлять приводом камеры?
  4. Какое разрешение и качество картинки, а также расстояние до земли?

 

1. Да как можно универсальнее, без привязки.

2. Любые погодные явления, которые могут возникнуть на открытой парковке.

3. Камеры статические.

4. Разрешение HD, FULL HD; расстояние до земли до 8м.

16 час назад, boriso said:

P.S. Глянул на предложенные видео. Сделал скриншоты, потом применил find edges - все автомобили "как на ладони". Вместо вычитания фона и т.п. можете попробовать, например, определять границы, после чего сравнивать уже их.

Детекторы границ тоже применял. они цепляют много посторонних предметов, те же тени, блики и т.д. По нескольким кадрам это может и работает, а вот на видеозаписи нет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
On 16.12.2015 at 3:52 PM, mult1plexer said:

Третье самое проблемное . Статичный фон здесь не подходит. Меняется освещение, отражения. Использовал динамичную модель фона. Более менее нормально определяются авто, но непонятно как решить проблему с переходом объектов переднего плана к модели фона.

Мда, третье и правда проблемное. Если настраивать на адаптацию к освещению, то не детектируется уезжающий с парковки чёрный автомобиль, он реально похож на асфальт. Если же детектировать его, то всякая лажа случается с тенями.

Поэтому я склоняюсь к классификатору и трекингу, найденных автомобилей. Не пробовал обучить тот же HOG?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

нет HOG не пробовал. Пробовал детектор Хаара. Варьируя параметры детектора, перестает цеплять шумы, теряя при этом информативность, т.е не все авто определяет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте учётную запись или войдите для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать учётную запись

Зарегистрируйтесь для создания учётной записи. Это просто!

Зарегистрировать учётную запись

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас


  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу

×