Увлекаешься компьютерным зрением? Ivideon зовет тебя на Шри-Ланку!


За прошедший год командой Ivideon была проделана огромная работа. Выпуск приложений для iOS иAndroid, создание сервера для Mac OS X, выход на зарубежные рынки, а также запуск децентрализованной сети CDN с серверами в США, Нидерландах, Германии, Кореи, России, Украине и Казахстане. Благодаря этому Ivideon стал единственным международным сервисом видеонаблюдения, работающим одинаково хорошо во всем мире. В результате последовало можество предложений от производителей IP-камер по интеграции с нашим облаком. Зачем интегрировать свои камеры отдельно с сервисом в Европе, а затем отдельно с локальным сервисом в США, когда можно один раз поддержать Ivideon, который есть везде.

Мы заключили ряд стратегически важных контрактов по установке бизнес версии Ivideon в корпоративной сети крупных предприятий. В общем, это был отличный год для нашей компании, поэтому мы решили сменить обстановку и дать возможность отдохнуть нашей команде. Где-то с середины декабря мы вылетаем на тропический остров Шри-Ланка, где пробудем целый месяц. И у нас есть два свободных места. Хотите поехать вместе с нами?

Шри-Ланка 

Островное государство Шри-Ланка или до 1972 года больше известное как Цейлон, расположилось восточнее южной оконечности Индостана и омывается водами Индийского океана и Бенгальского залива. В период с декабря по январь на Шри-Ланке устанавливается наиболее комфортная дла отдыха погода. Отсутствует изнуряющая жара и высокая влажность, свойственная сезону дождей.

Пожалуй, дополнительную информацию об этом удивительном острове и его жителях можно найти на специализированных ресурсах в Интернете. Могу лишь сказать, что для всех, кто там побывал, Шри-Ланка представляется по разному. Для каждого — своя. С одной стороны там развит туризм, с другой, он развит не настолько сильно, как в том же Тайланде. Поэтому на Шри-Ланке все еще остались места и люди, не испорченные нашим братом. Хотя уже довольно давно Шри-Ланка является популярной среди серферов всего мира.

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

  Помимо собственной культуры на острове очень многое привезено португальцами и англичанами. Включая дома и виллы в колониальном стиле. В одной из таких вилл мы и планируем остановиться. Точнее, за время пребывания мы сменим 3 виллы, чтобы побывать в разных частях Шри-Ланки. Совместить пляжный отдых с путешествиями в древнюю столицу Канди, посмотреть высокогорные плантации чая Нувара-Элии и побывать в местном заповеднике.

 

Кого мы хотим взять с собой

Как вы, наверное, уже догадались по содержанию заголовка, мы очень хотим взять с собой человека, для которого одним из самых больших увлечений в жизни является компьютерное зрение. 
Мы ожидаем, что к концу 2013 года во всем мире будет порядка 2 млн. пользователей нашего сервиса. И чтобы это произошло, немаловажным является повышение удобства работы с ним и добавление аналитических возможностей, которые в том числе уже есть в топовых дорогостоящих системах. Но мы хотим их сделать гораздо проще и доступней для пользователя. Готовы ли вы нам в этом помочь?

А для того чтобы найти самого лучшего кандидата (или кандидатов) мы организуем небольшой конкурс,победитель которого поедет вместе с нами на Шри-Ланку, а по возвращении получит предложение о работе в нашей компании.

Итак, до 1 декабря 2012 года необходимо написать приложение на C/C++ с использованием OpenCV, которое будет захватывать видео с веб-камеры, анализировать его и предоставлять следующие возможности:

— устойчивое слежение за несколькими объектами в кадре даже в случае их совместного пересечения или временного “пропадания” за препятствием;

— возможность подсчета объектов, пересекающих определенную зону и учет направления пересечения;

— детектор появления и исчезновение предмета/объекта в кадре. Очень хочется навести мышкой на грязную чашку на столе и найти момент в видеоархиве, когда она там появилась и кто её оставил!

Конечно, все из перечисленных возможностей могут быть не реализованы за такой короткий срок. Поэтому мы будем смотреть на наиболее полное и качественное решение.
А в начале декабря запишем несколько проверочных видео роликов, которые позволят протестировать работу всех приложений, присланных на конкурс.
Думаю, что не стоит говорить, что для конкурса можно использовать только собственный код совместно с OpenCV, чтобы у него не было юридических проблем.
Помимо результатов работы приложения с точки зрения производительности и ошибок срабатывания, мы также будем анализировать качество кода.

В виде итога опубликуем в начале декабря статью о результатах конкурса. Если же достойных кандидатов будет много, запустим голосование.
А уже после поездки ждите подробный рассказ о том, что из всего этого вышло.

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

Подписывайтесь на наш блог, чтобы не пропустить результаты конкурса и отчет о поездке!

Пояснения к задачам

1. Для детектирования и слежения за объектами очень важно знать что они из себя представляют. Какие предполагаются объекты слежения?

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

2. Где можно получить сэмплы видео, которые будут использоваться для детектирования? Необходимо предварительно настроить классификаторы.

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

У нас один из самых требовательных пользователей — массовый. Например, некоторые устанавливают наше ПО на Pentium 3 и пишут отрицательный отзыв в GooglePlay, что оно у нас не работает и видео идет рывками, искренне не понимая, что для кодирования видео требуются более современные процессоры. Хотя оно и правильно. Пользователь не обязан об этом знать. Это наша недоработка, что мы ему об этом не говорим во время установки. К чему я это пишу? Просто мы сами не можем знать за чем захочет следить и что захочет считать пользователь. Вполне возможно, что завтра кто-нибудь сделает на базе Ivideon трансляцию тараканьих бегов с автоматическим определением победителя.

3. Можно ли использовать алгоритм Tracking-Learning-Detection (aka Predator)?

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

4. Почему только C/C++? Можно сделать гораздо лучше, например, на C#

На данный момент все основные приложения у нас написаны на C++. Один и тот же код используется не только в Windows, но и в Linux и Mac OS X. Поэтому не хочется разводить зоопарк технологий, а также думать о том, как запускать C# на Mac и Linux. Надеемся на понимание. 

5. Если я соберу готовый пример из OpenCV, можно ли мне его отправить на конкурс?

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

6. На конкурс представлено 3 задачи. Их нужно делать по отдельности.

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

7. Можно ли делать без OpenCV?

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

8. К сожалению, я не являюсь специалистом по компьютерному зрению. Но у меня есть компетенции в других вопросах. Можно ли мне участвовать в конкурсе?

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

9. Как можно с вами связаться?

Все вопросы можно отправлять по адресу contest(собака)ivideon.ru. Постараемся ответить как можно оперативней.


Выберите вариант подключения Ivideon

Мы в Twitter

Читайте в Twitter @ivideon_ru!