Telegram Group & Telegram Channel
# Поиск работы: разбор тестового задания Planetfarms

Дано видео на пол минуты с камеры на капоте радиоуправляемой машинки. Нужно следить за машинкой, которая едет впереди. Координаты этой машинки на первом кадре даны. Видео непростое: камера прыгает, цель пропадает из кадра, вылезает много объектов включая вторую идентичную машинку. Для выполнения надо использовать предобученную модель детекции, Faster-RCNN. Нельзя ничего обучать. Было указано, что задание примерно на пару часов.

Посмотрел видео. Было не очень понятно, сколько на нем нужно трекать эту машинку, поэтому я решил делать, пока не получится отслеживать в течение всего видео.

Я не работал с детекцией, поэтому полез изучать, кто такой Faster-RCNN. Разобравшись попробовал запустить на паре кадров. Сеть принимает на вход изображение, а выдает кучу ббоксов (bounding box, прямоугольники вокруг объектов) для найденных объектов, а так же вероятности, что объект относится к одному из 1000 классов Imagenet. Окей, но надо обрабатывать не изображения, а видео. Пришлось работать с видео как с последовательностью изображений.

Начальная позиция машинки дана, так что ближайший к ней ббокс и нужно трекать. Главная проблема вот в сопоставлении. Есть куча ббоксов на фрейме 1, куча ббоксов на фрейме 2. Нужно определить, какие пары относятся к одним и тем же сущностям.

Очевидно, что два ближайших ббокса это один объект. Близость определяем по евклидовому расстоянию между центрами. Погуглил и оказалось, что я изобрел centroid tracker. Сразу вылезла тонна проблем. Например: машинка подъезжает близко, а потом резко отъезжает. Трекинг "перескакивает" на капот машины с камерой и успешно следит за ним до конца видео. Или машинка подпрыгивает на кочке и трекинг переключается на какое-нибудь дерево. Или когда две машинки подъезжают слишком близко и трекинг "перепрыгивает" на вторую. Наконец, непонятно что делать, когда машинка совсем пропадает из кадра.

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

Далее изменил метрику расстояния. Надо было учесть, что если ббокс t1 по форме похож на t2, то более вероятно, что это ббоксы одной сущности. Поэтому я стал считать расстояние между векторами из координат верхнего левого и нижнего правого углов, вида (x1, y1, x2, y2). Это учитывает форму ббоксов, расстояние между похожими меньше. Немного помогло.



group-telegram.com/boris_again/1208
Create:
Last Update:

# Поиск работы: разбор тестового задания Planetfarms

Дано видео на пол минуты с камеры на капоте радиоуправляемой машинки. Нужно следить за машинкой, которая едет впереди. Координаты этой машинки на первом кадре даны. Видео непростое: камера прыгает, цель пропадает из кадра, вылезает много объектов включая вторую идентичную машинку. Для выполнения надо использовать предобученную модель детекции, Faster-RCNN. Нельзя ничего обучать. Было указано, что задание примерно на пару часов.

Посмотрел видео. Было не очень понятно, сколько на нем нужно трекать эту машинку, поэтому я решил делать, пока не получится отслеживать в течение всего видео.

Я не работал с детекцией, поэтому полез изучать, кто такой Faster-RCNN. Разобравшись попробовал запустить на паре кадров. Сеть принимает на вход изображение, а выдает кучу ббоксов (bounding box, прямоугольники вокруг объектов) для найденных объектов, а так же вероятности, что объект относится к одному из 1000 классов Imagenet. Окей, но надо обрабатывать не изображения, а видео. Пришлось работать с видео как с последовательностью изображений.

Начальная позиция машинки дана, так что ближайший к ней ббокс и нужно трекать. Главная проблема вот в сопоставлении. Есть куча ббоксов на фрейме 1, куча ббоксов на фрейме 2. Нужно определить, какие пары относятся к одним и тем же сущностям.

Очевидно, что два ближайших ббокса это один объект. Близость определяем по евклидовому расстоянию между центрами. Погуглил и оказалось, что я изобрел centroid tracker. Сразу вылезла тонна проблем. Например: машинка подъезжает близко, а потом резко отъезжает. Трекинг "перескакивает" на капот машины с камерой и успешно следит за ним до конца видео. Или машинка подпрыгивает на кочке и трекинг переключается на какое-нибудь дерево. Или когда две машинки подъезжают слишком близко и трекинг "перепрыгивает" на вторую. Наконец, непонятно что делать, когда машинка совсем пропадает из кадра.

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

Далее изменил метрику расстояния. Надо было учесть, что если ббокс t1 по форме похож на t2, то более вероятно, что это ббоксы одной сущности. Поэтому я стал считать расстояние между векторами из координат верхнего левого и нижнего правого углов, вида (x1, y1, x2, y2). Это учитывает форму ббоксов, расстояние между похожими меньше. Немного помогло.

BY Борис опять


Warning: Undefined variable $i in /var/www/group-telegram/post.php on line 260

Share with your friend now:
group-telegram.com/boris_again/1208

View MORE
Open in Telegram


Telegram | DID YOU KNOW?

Date: |

The SC urges the public to refer to the SC’s I nvestor Alert List before investing. The list contains details of unauthorised websites, investment products, companies and individuals. Members of the public who suspect that they have been approached by unauthorised firms or individuals offering schemes that promise unrealistic returns For tech stocks, “the main thing is yields,” Essaye said. Individual messages can be fully encrypted. But the user has to turn on that function. It's not automatic, as it is on Signal and WhatsApp. The gold standard of encryption, known as end-to-end encryption, where only the sender and person who receives the message are able to see it, is available on Telegram only when the Secret Chat function is enabled. Voice and video calls are also completely encrypted. However, the perpetrators of such frauds are now adopting new methods and technologies to defraud the investors.
from no


Telegram Борис опять
FROM American