Способ определения скорости по видео
METHOD OF DETERMINING SPEED FROM VIDEO

Область техники
Предлагаемое изобретение относится к технике видео мониторинга различных движущихся объектов, например, транспортных потоков, в том числе автомобильных потоков, конкретно к системам определения скорости с помощью видеосъемки.
Предшествующий уровень техники
Системы мониторинга трафика на основе обработки видеоизображений и отслеживания транспортных средств были активной темой исследования в области компьютерного зрения и обработки изображений. Значительная часть таких систем решает задачу оценки скорости движущихся объектов, так как последовательность упорядоченных во времени кадров позволяет определить скорость движения объекта мониторинга как его дискретное смещение для каждой пары последовательных изображений. Для каждого кадра (но с использованием соседних кадров) можно оценить скорость объекта, измеренную в пикселях за такт. С точки зрения последовательных кадров видеопотока надо найти величину смещения части изображения (соответствующую объекту мониторинга) относительно фона, на котором отображен движущийся объект. В настоящее время используются, в частности, следующие методы решения поставленной задачи:
- оптический поток;
- метод грубой силы;
- техника особых точек.
Для большого числа движущихся объектов используется техника особых точек. Этот метод принципиально хорошо работает с заслонениями, зашумлением и инвариантен ко многим типам искажений яркости. При реализации метода выполняются следующие этапы работы.
1. Требуется найти хорошо различимые фрагменты на отображении объекта, то есть выделить особые точки (feature detection). В литературе используются следующие названия таких фрагментов: характеристические точки, особенности, локальные особые точки, точки интереса, ключевые точки, features. Ставка делается на то, что такие фрагменты, интерпретируемые как особые точки, окажутся инвариантными преобразованию изображения. Иными словами особые точки должны попарно соответствовать друг другу в смысле отображенного объекта.
2. Описание особых точек (feature description) для того, чтобы попарно сопоставить найденные особые точки.
3. Нахождение такого движения изображения, которое совмещает найденные точки на соседних кадрах.
В патентном источнике US 20130322697, являющемся аналогом предлагаемого изобретения, для оценки скорости движущегося объекта на основе множества цифровых изображений каждое изображение захватывается в другой момент времени, причем предложенный в аналоге способ, содержит следующие этапы:
- этап идентификации данных изображения, связанных с каким-либо известным атрибутом (особенностью) движущегося объекта из первого цифрового изображения;
- этап идентификации данных изображения, связанных с тем же атрибутом движущегося объекта из второго цифрового изображения;
- этап определения скорости движущегося объекта на основе цифровых данных, связанных с атрибутами первого и второго цифровых изображений, и связанных с каждым из них временем захвата.
В патентном источнике US 8964031, являющемся прототипом предлагаемого изобретения, для измерения скорости транспортного средства необходимо найти особенность транспортного средства, имеющую определенные размеры, для отслеживания положения объекта от кадра к кадру. При реализации системы измерения скорости процессор предварительно обнаруживает особенность (характерный признак) транспортного средства и вычисляет его размеры. Эти особенности табулируются. При отслеживании движущихся транспортных средств в потоке видеокадров, для определения положения автомобиля в каждом изображении используются рассчитанные размеры, и определяется скорость транспортного средства на основе определения местоположения транспортного средства на дороге в каждом изображении и времени обновления изображений.
Существенный недостаток аналога состоит в необходимости иметь априорную информацию о конкретных атрибутах движущихся объектов, что исключает возможность использования аналога для определения скорости объектов произвольной природы.
Недостаток прототипа состоит в излишней сложности способа, обусловленной необходимостью поиска на изображении объекта мониторинга стабильных специфических особенностей, вычислении их размеров и определении сдвига этих особенностей на смежных кадрах. При пространственных эволюциях объекта мониторинга профиль и размеры особенностей могут быть весьма нестабильными. Это приводит к снижению точности предлагаемого способа.
Таким образом, существует потребность в новых способах определения скорости объектов с использованием видео, в которых преодолены указанные недостатки.
Сущность изобретения
В соответствии с предлагаемым изобретением особые точки на изображении следует создавать искусственно путем совмещения контуров объектов мониторинга, отображенных на смежных кадрах или сдвинутых на несколько пикселей отображений объекта на одном кадре. За особые точки принимают пиксели, лежащие в местах пересечения контуров пары отображений одного объекта мониторинга. В пару могут входить отображения, сдвинутые во времени (на смежных кадрах) или в пространстве пиксельного поля (на одном кадре).
Для пояснения сущности предлагаемого изобретения на фиг. 1 изображен контур в форме эллипса, движущийся по дуге против часовой стрелки вокруг точки поз. 40 со скоростью 10° за такт. Это движение отображено на последовательности кадров 1, 2 и 3. При наложении указанных кадров друг на друга в местах пересечения контуров появятся особые точки поз. 21, поз. 31, поз. 22 и поз. 32. Очевидно, что эти точки удовлетворяют требованиям, предъявляемым к особым точкам:
- специфичность;
- локальность;
- простота в вычислении.
Центр дуги окружности поз. 40, по которой движется контур, может быть найден в точке пересечения медиатрис отрезков, построенных на точках поз. 21 и поз. 22, а так же на точках поз. 31 и поз. 32. Угловое смещение равно углу между отрезками, построенными на точках поз. 40 и поз. 21, а так же на точках поз. 40 и поз. 22.
С помощью рисунков, приведенных на фиг. 2, можно показать, что эти соотношения работают при наложении отображений равномерно движущихся гладких контуров любой формы. Кадры 1-3 на фиг. 2 отображают произвольную движущуюся гладкую кривую. Кадр 4 - это наложение кадров 1,2 и 3. Кадр 5 это наложение кадров 2 и 1. Если повернуть оба контура из кадра 5 одновременно на 10 градусов, то получится кадр 6, в котором точка пересечения контуров повернулась на 10 градусов. Если затем совместить кадры 5 и 6, то получится кадр 7, идентичный кадру 4. Идентичность этих кадров подтверждает универсальность особых точек, получаемых наложением равномерно движущихся контуров.
Если контуры двигаются с ускорением, то кадры 4 и 7 уже не будут идентичными. Однако, увеличивая частоту кадров ошибку оценки углового и линейного смещения можно и в этом случае уменьшить до приемлемого уровня. Это утверждение иллюстрируется рисунками, приведенными на фиг. 3 и 4. На этих рисунках показана имитация движения произвольного гладкого контура поз. 50 по траектории поз. 51.
Движение происходит так, что некоторая хорда поз. 52 контура поз. 50 при движении касается траектории поз. 51. Используя множество особых точки поз. 21 и поз. 31 в местах пересечения отображений смежных контуров можно построить по ним ломаные траектории поз. 53 и поз. 54 соответственно. На фиг. 3 движение контура поз. 50 покадрово отображается с частотой в два раза меньшей, чем на фиг. 4. Поэтому форма траекторий поз. 53 и поз. 54 на фиг. 4 значительно ближе к форме исходной траектории поз. 51.
В соответствии с предлагаемым изобретением таким же образом можно использовать особые точки, образующиеся в местах пересечения контуров пары сдвинутых отображений объекта на одном кадре или пары, состоящей из контура отображения объекта на текущем кадре и контура сдвинутого отображения на одном из предыдущих кадров. Также могут быть использованы точки пересечения контура трека объекта со сдвинутым контуром самого объекта.
По сравнению с аналогом и прототипом предлагаемый способ обеспечивает большую точность и более высокое быстродействие при определении скорости движения объекта по видео. Это достигается за счет того, что точки пересечения контуров, сдвинутых в покадровом времени или в пиксельном пространстве универсальны, хорошо локализованы и просто определяются наложением этих контуров друг на друга.
Краткое описание чертежей
На фиг. 1 - показано как создают и используют для оценки скорости особые точки путем наложения контуров, отображенных на смежных кадрах.
На фиг. 2 - показано как используют в качестве особых - точки пересечения контуров произвольной движущейся фигуры.
На фиг. 3 и на фиг. 4 - показана имитация движения произвольной фигуры и восстановление траектории движения по особым точкам при различной частоте кадров.
На фиг. 5 - показаны исходные видеокадры, сформированные из них бинарные кадры и наложение смежных кадров для создания особых точек.
На фиг. 6 - показаны исходные видеокадры, сформированные из них цветные бинарные кадры и наложение смежных кадров для создания особых точек.
На фиг. 7 - показаны исходные видеокадры, сформированные из них бинарные кадры, кадры с выделенными контурами объектов и наложение смещенных контуров для создания особых точек.
На фиг. 8 - показаны исходные видеокадры, сформированные из них бинарные кадры и кадры, полученные вычитанием смещенных отображений на бинарных кадрах для создания особых точек.
На фиг. 9 - показаны исходные видеокадры, сформированные из них бинарные кадры и кадры, полученные вычитанием отображения на текущем бинарном кадре из сдвинутого отображения на предыдущем бинарном кадре.
На фиг. 10 - показаны исходные видеокадры, сформированные из них бинарные кадры трека объекта и его контура, а также кадры, полученные совмещением контура трека со сдвинутым контуром объекта.
Осуществление изобретения
Видеоизображение объектов мониторинга может представляться в любом подходящем формате, например, MPEG4 и тому подобное. Способ может быть использован в режиме реального времени с обработкой потокового видео с камеры, а также в режиме обработки записанного видео. Каждый кадр содержит массив пикселей. Каждый пиксель находится на пересечении i - го столбца и j - й строки. Каждый пиксель имеет значение освещенности в соответствующей части захваченного изображения. Пиксели могут иметь значения освещенности в цветовой системе, например, RGB или в черно-белой системе. Для устранения влияния шумовых выбросов на захваченных изображениях применяются хорошо известные приемы сглаживания, например, алгоритм Гаусса или медианный метод сглаживания.
Варианты осуществления настоящего изобретения могут быть реализованы в виде аппаратных средств, встроенного программного обеспечения, программного обеспечения для универсальных компьютеров или любой их комбинации. Варианты осуществления настоящего изобретения также могут быть реализованы в виде инструкций, хранящихся на машиночитаемом носителе, которые могут быть считаны и исполнены одним или несколькими процессорами. Машиночитаемый носитель может включать в себя любой механизм для хранения или передачи информации в форме, считываемой машиной (например, вычислительное устройство).
Определение некоторых понятий и терминов, используемых при описании.
Контуром объекта мониторинга называется совокупность пикселей, лежащих на границе отображения движущегося объекта или его трека и фона, на котором происходит движение объекта.
Треком объекта называется совокупность пикселей, отображающих объект мониторинга на ряде последовательных кадров. Один из возможных способов построения трека из исходной видеопоследовательности приведен в патентной заявке PCT/RU/2017000628.
Для повышения точности определения смещения объекта может потребоваться процедура сглаживания линии контура для устранения шумовых выбросов. Специалистам хорошо известны такие методы, например, сглаживание сплайном или сглаживание с использованием вейвлет-преобразования. В дальнейшем, при описании вариантов реализации предлагаемого изобретения, об этом не упоминается, так как процедура сглаживания практически всегда применяется при обработке видеоизображений, а конкретный выбор способа сглаживания зависит от вида объекта мониторинга и условий видеосъемки.
При преобразовании исходных видеокадров в бинарный вид обычно используется попарное сравнение освещенностей одноименных пикселей на смежных кадрах. При этом практически равными считаются значения освещенности, которые отличаются не более чем на величину заранее заданного порога, который называется порогом неразличимости. Величина порога может изменяться, в том числе автоматически, в зависимости от условий освещенности, наличия вибрации камеры и других внешних условий, влияющих на стабильность неподвижного фона.
Текущим кадром называется кадр, относительно которого определяются предыдущий и последующий кадры.
Первый вариант предлагаемого способа может быть реализован путем выполнения следующей последовательности действий над каждым кадром исходной видеопоследовательности, показанной на фиг. 5 для трех последовательных кадров.
1. Преобразуют исходную последовательность кадров 101, 102 и 103 в последовательность бинарных кадров 104, 105, 106. В бинарном кадре пиксели, относящиеся к движущимся объектам, имеют одно значение освещенности, а пиксели, относящиеся к фону - другое. Упомянутое преобразование осуществляют, например, способом попиксельного сравнения значений освещенности одноименных пикселей текущего кадра с одним из предыдущих и одним из последующих. Для определенности можно считать, что в бинарном кадре пикселям присваивают максимальное значение (белый цвет), если одноименные пиксели хотя бы в одной паре кадров практически равны, и нулевое значение (черный цвет) - остальным пикселям. Бинарный кадр будет более четким, если отображения объекта мониторинга не будут накладываться друг на друга при наложении текущего, предыдущего и последующих кадров. Бинарные кадры, показанные на фиг. 5 и далее, получены с использованием в качестве предыдущих и последующих - кадров, которые отстоят назад и вперед от текущего кадра на пять тактов. На фиг. 5 эти кадры не показаны.
2. Преобразуют кадры 104, 105 и 106 в кадры 107, 108, 109, в которых выделены контуры движущихся объектов, для чего пикселям, находящимся на границе объекта и неподвижного фона присваивают одно значение, а остальным пикселям -другое.
3. Преобразуют кадры 107, 108, 109 в кадры 110, 111, для чего совмещают кадр с выделенным контуром с таким же кадром, полученным на предыдущем шаге.
4. Определяют координаты точек пересечения контуров поз. 21 и поз. 31 в кадрах 110, 111 и вычисляют величину пиксельного смещения этих точек при смене кадров.
Используют полученную величину смещения для определения скорости движения объектов, учитывая при этом проективные искажения, связанные с оптическими характеристиками камеры и особенностями ее установки относительно движущихся объектов.
Для сокращения времени вычислений можно при формировании бинарных кадров пикселям, относящимся к движущемуся объекту, на четных кадрах присваивать значения соответствующие одному цвету или оттенку; а на нечетных кадрах присваивать значения соответствующие другому цвету или другому оттенку одного цвета, как показано на фиг. 6 на кадрах 134 … 136. При этом вместо кадров 110, 111 используют разноцветные кадры 112, 113, получаемые вычитанием текущего и предыдущего цветных бинарных кадров. В местах пересечения контуров движущегося объекта, сдвинутых относительно друг друга при смене кадров, образуются точки поз. 21 и поз. 31. В окрестности этих точек присутствуют пиксели всех цветов или оттенков, образующихся при формировании разности двуцветных смежных кадров 134-135 и 135-136. По этому признаку производят идентификацию особых точек.
Второй вариант предлагаемого способа может быть реализован путем выполнения следующей последовательности действий над каждым кадром исходной видеопоследовательности, показанной на фиг. 7.
1. Преобразуют исходную последовательность кадров 101, 102, 103 в последовательность бинарных кадров 104, 105, 106.
2. Преобразуют кадры последовательности 104, 105, 106 в кадры 107 … 109, в которых выделены контуры движущихся объектов.
3. Преобразуют кадры 107 … 109 в кадры 114 … 116, для чего совмещают исходное и сдвинутое на несколько пикселей изображение в каждом из кадров 107, 108 и 109. Величину и направление смещения выбирают так, чтобы точки пересечения контуров были хорошо различимы для более четкой локализации в пиксельном поле кадра и так, чтобы минимизировать ошибку определения скорости движения объекта. Критерии минимизации хорошо известны специалистам, а их выбор зависит от вида объекта и условий видеосъемки.
4. Определяют координаты точек пересечения контуров поз. 21 и поз. 31 в каждом из кадров 114 … 116 и вычисляют величину пиксельного смещения этих точек при смене кадров. Используют полученную величину смещения для определения скорости движения объектов.
Для сокращения времени вычислений вместо кадров 114 … 116 можно использовать кадры 117 … 119, получаемые вычитанием двух сдвинутых относительно друг друга текущих бинарных кадров, как показано на фиг. 8.
Третий вариант предлагаемого способа может быть реализован путем комбинации первого и второго способов. В этом варианте особые точки поз. 21 и поз. 31 создают в местах пересечения контура отображения объекта на текущем кадре и контура сдвинутого отображения на одном из предыдущих кадров как показано на фиг. 9. На кадрах 120 и 121 в окрестности точек пересечения контуров группируются пиксели всех цветов или оттенков, образующихся при формировании разности двуцветных смежных кадров 134 … 135 и 135 … 136. По этому признаку легко идентифицировать точки пересечения соответствующих контуров.
В четвертом варианте предлагаемого способа реализации изобретения особые точки поз. 21 и поз. 31 создают на пересечении контуров трека объекта мониторинга и контура сдвинутого отображения объекта на текущем кадре, как показано на фиг. 10. Как видно из рисунков на фиг. 10, исходные кадры 201 … 209 сначала преобразуют в кадр 210 с отображением трека объекта, затем в кадр 211 с отображением контура трека, который затем совмещают с контуром объекта на кадре 212.
Промышленная применимость
Из представленного описания понятно как предлагаемый способ может быть использован при реализации различных систем, предназначенных для видеомониторинга движущихся объектов, например транспортных средств. Благодаря малому объему вычислений, предлагаемый способ может применяться в специализированных видеокамерах, предназначенных для использования в системах контроля дорожного движения. Простота способа позволяет создавать относительно дешевые высокоэффективные системы, снабженные большим числом таких видеокамер для непрерывного мониторинга больших участков дорожной сети.