Ровно месяц назад мы объявляли конкурс на создание приложения, реализующего несколько алгоритмов машинного зрения. Главным призом в этом конкурсе была поездка с нашей командой на Шри-Ланку для встречи либо конца света 21 декабря, либо Нового года (это уже как повезет). Но мы больше надеемся на Новый год и в любом случае постараемся организовать трансляцию с места событий.
Вообще я очень не люблю разного рода конкурсы. Точнее отношусь к ним с долей подозрения в том, что в результате потратишь на них время и ничего не получишь.
Я и мои коллеги в Ivideon очень не хотели бы, чтобы кто-то из тех кто принял участие в нашем конкурсе пожалел о потраченном на него времени. И здесь речь идет о 9 потенциальных кандидатах, приславших работы.
Поэтому мы приняли решение, что 8 человек, которые по тем или иным причинам не заняли первое место — получат за свой труд мегапиксельную IP-камеру с поддержкой облака Ivideon на борту. Для тех кто не знает, это обычная IP-камера, в которой есть наш модуль, позволяющий напрямую подключать её к облаку Ivideon без дополнительных приложений и компьютеров. Мы не производим сами камеры. Мы предоставляем возможность встроить этот модуль всем производителям. Для удаленного доступа к такой камере не требуется внешнего IP-адреса и сетевых настроек вроде port-forwarding. Ну и она обладает всеми возможностями, которые предоставляет Ivideon. От записи видео в наше облако, до организации трансляции на своем сайте или в блоге. Очень надеемся, что эта камера станет достойной компенсацией за потраченное на наш конкурс время. Тем более помимо неё участники получили как минимум дополнительный опыт в разработке приложений видеоанализа.
Все присланные работы мы условно разделили на три группы:
1. Примеры из сети Интернет, которые хоть и решают отчасти поставленные задачи, но все же остаются примерами.
Причем в них явно прослеживается отсутствие единого стиля форматирования кода, что говорит о быстром copy-paste из разных источников. Несмотря на то, что они дают определенный результат, с точки зрения самого кода — выглядят несколько неряшливо. Так и возникало желание при просмотре листингов расставить пробелы, табы и переносы. Как говорится, кто ясно мыслит — тот ясно излагает. В данном случае складывалось ощущение того, что сам код до конца не понятен для тех, его использует. Надеюсь, что данная критика будет воспринята правильно и станет стимулом к улучшению качества написания кода в дальнейшем.
2. Переписанные примеры из сети Интернет.
Их читать было гораздо приятней. В них прослеживалось то, что автор понимает алгоритмы компьютерного зрения, построенные на базе OpenCV. Они выглядят как некий пересказ того, что автор уже видел ранее. Но тем не менее качественно результат выполнения не сильно отличался от того, что было в работах из первой группы. Часть этих примеров была способна одновременно следить только за одним объектом.
3. А третья группа представлена на самом деле всего лишь одной работой, которая и заняла первое место в нашем конкурсе.
В ней человек показал существенный опыт использования и разработки алгоритмов компьютерного зрения. Где прослеживается четкое понимание того, где та самая грань между качественным результатом и требованиями к ресурсам. Если наше программное обеспечение для анализа одного канала видео будет требовать пару Xeon’ов, вряд ли кто-то захочет его использовать.
Данная работа пошла существенно дальше существующих примеров. И что самое замечательное к ней был прислан текстовый документ с рассуждениями и пояснениями. Принцип работы на всех этапах анализа. От вычитания фона, до трекинга объектов.
Человека, который прислал эту работу зовут Олег и мы будем очень рады, если в результате нашего дальнейшего сотрудничества после возвращения из Шри-Ланки мы получим хорошо реализованные модули анализа видеопотока для Ivideon Server. Превратим работу присланную на конкурс в надежно работающую подсистему аналитики нашего приложения и будем развивать её дальше.
Сейчас рано загадывать когда мы сможем представить готовую аналитику нашим пользователям. Но очень надеемся, что уже к концу февраля предложим большую часть функций видеоанализа, которые присутствуют в дорогостоящих профессиональных системах. И сделаем это на хорошем уровне.
Лично я очень рад, что в целом все наши ожидания оправдались, мы нашли достойного кандидата и Хабр еще какой торт. Ресурс, который объединяет мыслящую интеллектуальную элиту нашего общества. Умеющую не просто ставить плюсы или минусы, но еще и думать, рассуждать, оппонировать и самостоятельно принимать решения. Людей, которые несмотря ни на что добиваются отличных результатов каждый в своей области. Очень здорово, что вы есть! Спасибо!
Если у вас есть идеи и предложения на тему организации нового конкурса — будем рады увидеть их в комментариях!