Участник:Amolchanov/Детекция движения
Материал из MachineLearning.
Строка 1: | Строка 1: | ||
{{Tip|На странице изложена примерная структура будущей статьи посвященной исследованию задачи детекции движения транспортных средств в видеоданных студентом [[Участник:Amolchanov|Андреем Молчановым]] в рамках работы над дипломом}} | {{Tip|На странице изложена примерная структура будущей статьи посвященной исследованию задачи детекции движения транспортных средств в видеоданных студентом [[Участник:Amolchanov|Андреем Молчановым]] в рамках работы над дипломом}} | ||
+ | |||
== Дневник исследователя == | == Дневник исследователя == | ||
Оформил покадровую обработку как отдельный класс, отвечающий за фильтрацию. | Оформил покадровую обработку как отдельный класс, отвечающий за фильтрацию. | ||
Строка 6: | Строка 7: | ||
== Предпосылки == | == Предпосылки == | ||
- | + | При исследовании некоторых задач, связанных с анализом поведения автомобильного потока, возникает необходимость получения экспериментальных данных. | |
- | + | ||
- | + | Примером такой задачей может быть построение модели движения автомобилей по еще не построенной трассе с целью определения вероятности возникновения пробок. Для анализа такой модели необходимо будет наполнить ее объектами-машинами, которые будут передвигаться по определенным правилам. Для того, чтобы модель как можно больше соответствовала реальности, правила, по которым будут передвигаться машины, должны основываться на данных о передвижении машин, полученных с действующих дорог. | |
- | + | ||
+ | Существует несколько методов получения таких данных. Например, могут использоваться специальные устройства, устанавливаемые в сам автомобиль и снимающие данные с его систем управления. | ||
+ | |||
+ | В моей работе изучается другой подход — восстановление данных по видеозаписи определенного участка трассы. | ||
== Постановка задачи == | == Постановка задачи == | ||
- | + | Используя видеозапись участка дороги восстановить треки машин, проезжающих по этому участку. Под треком понимается соответствие временным точкам позиции машины в реальном пространстве. | |
+ | |||
+ | Так как данные будут использоваться лишь в отдельно проводимых далее экспериментах, задача восстановления в режиме реального времени не ставится. | ||
== Описание исходных данных == | == Описание исходных данных == | ||
- | + | Анализируемая видеозапись участка дороги. На данном этапе решения задачи, под видеозаписью понимается последовательность BMP-файлов, находящихся в одной директории. Это сделано дл того, чтобы избежать технических сложностей, связанных с обработкой видео-файлов, закодированных с помощью различных кодеков. | |
+ | |||
+ | Кроме видеозаписи может использоваться дополнительная информация об участке дороги. Это может быть например, указанный участок кадра, в котором могут быть автомобили. Либо это может быть информация о перспективе, необходимая для перевода экранных координат в пространственные. | ||
== Требуемый результат == | == Требуемый результат == | ||
- | + | Восстановленные треки машин, проехавших по участку дороги и попавших на видеозапись. Понятно, что если легковой автомобиль всю запись был загорожен большим грузовиком, то мы никак не сможем получить о нем информацию. | |
+ | |||
+ | Кроме того, заранее предполагается некоторый небольшой процент ошибок, связанных с тем, что данная задача в традиционном смысле не разрешима в принципе. | ||
== Этапы решения задачи == | == Этапы решения задачи == | ||
- | + | ||
- | * | + | === Подготовка вилеозаписи === |
+ | Необходимо конвертировать видеозапись произвольного формата в последовательность кадров, сохраненных в формате Bitmap. Задача была решена вручную с использованием программы VirtualDub и соответствующих кодеков. | ||
+ | |||
+ | === Выделение перемещающихся пятен на кадрах === | ||
+ | Выделение машин на видеозаписи опирается на следующую гипотезу: если рассмотреть 2 последовательных кадра, то на более-менее значимое расстояние передвинутся лишь машины, а следовательно лишь пиксели, соответствующие автомобилям изменят цвет. Для поиска таких пятен предпринимается следующая последовательность действий: | ||
+ | * Вычитание предыдущего кадра из текущего | ||
+ | * Бинаризация с некоторым порогом | ||
+ | * Удаление отдельно находящихся точек (не имеющих соседей) | ||
+ | * Дилатация с размером ядра 1 | ||
+ | * Морфологическая обработка кадра с целью связать близко примыкающие области (дилатация с размером ядра 2, закраска внутренних областей, обратная дилатация с размером ядра 2) | ||
+ | |||
+ | === Связывание информации о пятнах между кадрами === | ||
+ | Находится на этапе решения. | ||
== Текущие результаты == | == Текущие результаты == | ||
+ | Из предложенной видеозаписи выделяются машины с высокой степенью четкости. | ||
== Ссылки на файлы == | == Ссылки на файлы == | ||
+ | Файлы отправил на почту, так как здесь файлы не выкладываются. | ||
+ | |||
== Ссылки на литературу == | == Ссылки на литературу == | ||
- | * Р. Гонсалес, Р. Вудс, | + | * Р. Гонсалес, Р. Вудс, «Цифровая обработка изображений» ([http://www.ozon.ru/context/detail/id/2423470/ на OZON.ru]) |
- | [http://www.ozon.ru/context/detail/id/2423470/ | + | * Шани Растопман (?) |
- | * Шани Растопман | + |
Версия 12:34, 10 мая 2010
На странице изложена примерная структура будущей статьи посвященной исследованию задачи детекции движения транспортных средств в видеоданных студентом Андреем Молчановым в рамках работы над дипломом |
Содержание |
Дневник исследователя
Оформил покадровую обработку как отдельный класс, отвечающий за фильтрацию. Также добавил морфологию. После добавления, изображение, как и ожидалось слегка сгладилось, дырки пропали. В ближайших планах обнаружение объектов с помощью стропов. --amolchanov 23:54, 27 апреля 2010 (MSD)
Предпосылки
При исследовании некоторых задач, связанных с анализом поведения автомобильного потока, возникает необходимость получения экспериментальных данных.
Примером такой задачей может быть построение модели движения автомобилей по еще не построенной трассе с целью определения вероятности возникновения пробок. Для анализа такой модели необходимо будет наполнить ее объектами-машинами, которые будут передвигаться по определенным правилам. Для того, чтобы модель как можно больше соответствовала реальности, правила, по которым будут передвигаться машины, должны основываться на данных о передвижении машин, полученных с действующих дорог.
Существует несколько методов получения таких данных. Например, могут использоваться специальные устройства, устанавливаемые в сам автомобиль и снимающие данные с его систем управления.
В моей работе изучается другой подход — восстановление данных по видеозаписи определенного участка трассы.
Постановка задачи
Используя видеозапись участка дороги восстановить треки машин, проезжающих по этому участку. Под треком понимается соответствие временным точкам позиции машины в реальном пространстве.
Так как данные будут использоваться лишь в отдельно проводимых далее экспериментах, задача восстановления в режиме реального времени не ставится.
Описание исходных данных
Анализируемая видеозапись участка дороги. На данном этапе решения задачи, под видеозаписью понимается последовательность BMP-файлов, находящихся в одной директории. Это сделано дл того, чтобы избежать технических сложностей, связанных с обработкой видео-файлов, закодированных с помощью различных кодеков.
Кроме видеозаписи может использоваться дополнительная информация об участке дороги. Это может быть например, указанный участок кадра, в котором могут быть автомобили. Либо это может быть информация о перспективе, необходимая для перевода экранных координат в пространственные.
Требуемый результат
Восстановленные треки машин, проехавших по участку дороги и попавших на видеозапись. Понятно, что если легковой автомобиль всю запись был загорожен большим грузовиком, то мы никак не сможем получить о нем информацию.
Кроме того, заранее предполагается некоторый небольшой процент ошибок, связанных с тем, что данная задача в традиционном смысле не разрешима в принципе.
Этапы решения задачи
Подготовка вилеозаписи
Необходимо конвертировать видеозапись произвольного формата в последовательность кадров, сохраненных в формате Bitmap. Задача была решена вручную с использованием программы VirtualDub и соответствующих кодеков.
Выделение перемещающихся пятен на кадрах
Выделение машин на видеозаписи опирается на следующую гипотезу: если рассмотреть 2 последовательных кадра, то на более-менее значимое расстояние передвинутся лишь машины, а следовательно лишь пиксели, соответствующие автомобилям изменят цвет. Для поиска таких пятен предпринимается следующая последовательность действий:
- Вычитание предыдущего кадра из текущего
- Бинаризация с некоторым порогом
- Удаление отдельно находящихся точек (не имеющих соседей)
- Дилатация с размером ядра 1
- Морфологическая обработка кадра с целью связать близко примыкающие области (дилатация с размером ядра 2, закраска внутренних областей, обратная дилатация с размером ядра 2)
Связывание информации о пятнах между кадрами
Находится на этапе решения.
Текущие результаты
Из предложенной видеозаписи выделяются машины с высокой степенью четкости.
Ссылки на файлы
Файлы отправил на почту, так как здесь файлы не выкладываются.
Ссылки на литературу
- Р. Гонсалес, Р. Вудс, «Цифровая обработка изображений» (на OZON.ru)
- Шани Растопман (?)