Pull to refresh
454
-5
Мальцев Антон @ZlodeiBaal

Computer Vision, Machine Learning

Send message

Автомобильные номера и их применения

Reading time4 min
Views21K
В последнее время мы с Vasyutka написали ряд постов (1,2,3,4) про распознавание номеров и про наш взгляд на использование системы распознавания. После публикаций было огромное количество интересных комментариев, писем и идей. Наибольшее количество мыслей и откликов было, безусловно, в стиле: «сделайте обращение в ГИБДД» и «прикрутите отправку сообщений по номерам». Но нашей основной целью было не создание приложения, а создание алгоритма распознавания, которым бы мог воспользоватся любой (хотя приложение потихоньку тоже будем развивать, оставляя исходники открытыми). Поэтому многие из идей мы ещё долго не реализуем. Но это не повод грустить! Сервисы, где всё это уже присутствует существуют. Они не очень известны, но они есть.



Этот пост про то, какие проекты социализации и проявления активной гражданской позиции через автомобильный номер существуют в РуНете. Мы с удивлением и любопытством изучали эти проекты, когда нам присылали ссылки или мы натыкались на них. Надеюсь, что вам тоже понравится, а может и пригодится!
Читать дальше →
Total votes 20: ↑17 and ↓3+14
Comments19

Time of flight

Reading time4 min
Views85K
Знаете, меня порой удивляет причудливая структура общественного мнения. Взять к примеру технологию 3D-визуализации. Огромный общественный резонанс вызывают в последнее время технологии очков виртуальной реальности: Oculus Rift, Google Glass. Но ведь ничего нового тут нет, первые шлемы виртуальной реальности появились ещё в конце 90-х. Да, они были сложны, они опередили своё время, но почему тогда это не вызывало такого WOW-эффекта? Или 3D-принтеры. Статьи о том, как они круты или как быстро они захватят мир появляются в информационном поле два раза в неделю последние года три. Я не спорю, это круто и мир они таки захватят. Но ведь эта технология была создана ещё в 80х и с тех пор вяло прогрессирует. 3D-телевидение? 1915 год…

Технологии все эти хороши и любопытны, но откуда столько шумихи из-за каждого чиха?

Что, если я скажу, что в последние 10 лет была изобретена, разработана и внедрена в массовое производство технология 3D съёмки, очень сильно отличающаяся от любой другой? При этом технология уже повсеместно используемая. Отлаженная и доступная простым людям в магазинах. Вы слышали про неё? (наверное только специалисты по робототехнике и сопутствующим областям науки уже догадались, что я говорю про ToF-камеры).

Что такое ToF камера? В русской Википедии (англ) вы не найдёте даже коротенького упоминания о том, что это такое. «Time of flight camera» переводится как «Времяпролётная камера». Камера определяет дальность через скорость света, измеряя время пролёта светового сигнала, испускаемого камерой, и отражённого каждой точкой получаемого изображения. Сегодняшним стандартом является матрица 320*240 пикселей (следующее поколение будет 640*480). Камера обеспечивает точность измерения глубины порядка 1 сантиметра. Да-да. Матрица из 76800 сенсоров, обеспечивающих точность измерения времени порядка 1/10,000,000,000 (10^-10) секунды. В продаже. За 150 баксов. А может вы ею даже пользуетесь.
А теперь чуть подробнее про физику, принцип работы, и где вы встречали эту прелесть.
Читать дальше →
Total votes 76: ↑74 and ↓2+72
Comments65

Автоматическое выделение меток

Reading time5 min
Views23K
В машинном зрении и робототехнике есть забавный класс задачек: обнаружение заранее известных меток. Сюда можно отнести всё: QR-коды, Augmented Reality ( AR, дополненная реальность), задачи позиционирования объектов (motion capture, определение местоположения), детектирование объектов по меткам, классификация объектов в робототехнике (например при автоматической сортировке), помощь автоматическим системам в позиционировании (роботизированные захваты), трекинг объектов, и.т.д.



В статье описаны основные методы захвата меток, их возможности, границы применимости.
Читать дальше →
Total votes 52: ↑51 and ↓1+50
Comments8

Не соблаговолите ли больше не нарушать, сэр (мэм)?

Reading time4 min
Views66K
Примерно неделю назад Vasyutka опубликовал пост про распознавание номеров и обещал, что мы выложим софт, который можно будет опробовать. Мы немножко схитрили, не рассказав все подробнее. Ну, а то бы никакой интриги не было! Ядро алгоритма распознавания мы сделали с полгода назад, но тот проект, для которого оно было сделано, не двинулся. Он остановился где-то на альфа-версии. Подумав, и посовещавшись с заказчиком, мы решили, что это нехорошо, когда такой алгоритм пылится на полке и не приносит пользу обществу. С другой стороны выкладывать все исходники распознающей части не хотелось. Тогда и родилась идея, о которой пойдёт речь в этой статье.
image
Решили мы, собственно, сделать открытый сервер, который бы распознавал номера, приходящие http-запросами. Так как вся идея некоммерческая, то сервер, конечно, слабенький, но на то, чтобы народ игрался, надеюсь, его хватит.
А вот тут крутой поворот сюжета. Пост этот не про протокол обращения к серверу. Об этом будет следующий пост. Этот пост о программе, которую мы начали делать как пример работы с сервером, но которая вылилась в интересную на наш взгляд концепцию. В статье будет рассказано про Android-приложение, которым можно сфотографировать номер автомобиля… И обругать владельца бранным словом! Ну, или посмотреть статистику того, сколько раз сего автомобилиста обругали.
Те, кому невтерпёж, смогут расковырять работу с сервером из исходников в конце статьи. Остальных подержим пару дней в напряжении, а потом выложим законченный мануал.
Заинтриговал?
Total votes 120: ↑110 and ↓10+100
Comments65

Пару слов о распознавании образов

Reading time13 min
Views310K
Давно хотел написать общую статью, содержащую в себе самые основы Image Recognition, некий гайд по базовым методам, рассказывающий, когда их применять, какие задачи они решают, что возможно сделать вечером на коленке, а о чём лучше и не думать, не имея команды человек в 20.
image

Какие-то статьи по Optical Recognition я пишу давненько, так что пару раз в месяц мне пишут различные люди с вопросами по этой тематике. Иногда создаётся ощущение, что живёшь с ними в разных мирах. С одной стороны понимаешь, что человек скорее всего профессионал в смежной теме, но в методах оптического распознавания знает очень мало. И самое обидное, что он пытается применить метод из близрасположенной области знаний, который логичен, но в Image Recognition полностью не работает, но не понимает этого и сильно обижается, если ему начать рассказывать что-нибудь с самых основ. А учитывая, что рассказывать с основ — много времени, которого часто нет, становится всё ещё печальнее.
Распознать
Total votes 130: ↑129 and ↓1+128
Comments52

Обучение OpenCV каскада Хаара

Reading time8 min
Views191K
На хабре уже есть несколько статей и про то, что такое каскад Хаара (раз, два, три). Есть даже одна, где затронут процесс обучения, но в отношении описанной задачи. На тему обучения есть пара неплохих статей на английском (первая, вторая, третья), но, на мой взгляд, они путанные: либо рассказывают очень мало, либо слишком много и обо всём — выделить нужную мысль сложно.
image
В этой статье я попробую показать, как обучить каскад с нуля за несколько часов, натренировав на поиск простого предмета в видеопотоке (примером будет очаровательная сова с фотографии). Все обучающие выборки и программы будут приложены.
Зачем всё это нужно? Каскад Хаара это один из простейших способов распознавания классов объектов с большой скоростью работы. К ним относятся лица и руки людей, номера автомобилей, пешеходы. Детектором Хаара просто находить животных в кадре (кстати, удивительно, что я не видел ещё ни одной автоматической кормушки для синиц на raspberry pi). К тому же, готовые реализации OpenCV есть под большинство существующих систем (даже для blackfin'a встречал). Всё это делает Хаара одним из самых удобных методов, позволяющих решать задачи видеообработки даже людям, которые никогда не работали с обработкой видео.
Читать дальше →
Total votes 59: ↑57 and ↓2+55
Comments19

ISON, да не комета

Reading time5 min
Views68K
Недавно, увидев на Хабре статью про комету C/2012 S1 (ISON), которая сейчас пролетает мимо Солнца, я во внезапном порыве заколотил в поиск запрос «ISON», но ничего кроме кометы не нашёл. Повторил операцию на Яндыксе: результат был практически таким же, лишь официальный сайт в конце второй страницы. Моему удивлению не было предела. Ведь ISON, это не просто название кометы. Это название огромной сети, построенной российскими учёными за последнее десятилетие. Один из немногих успешных примеров слияния науки и высоких технологий мирового уровня в современной России. И открытие этой кометы является лишь закономерным следствием работы сети.
image

Сам я имею очень отдалённое отношение к этому проекту, зато знаю многих людей, участвующих в нём. Последние лет шесть краем глаза наблюдаю за его развитием, в основном по статьям в различных журналах и на конференциях. Этот рассказ не претендует на полноту, всё написанное — взгляд со стороны. Насколько мне известно, на Хабре порядочно астрономов. Может, кто что-то добавит, или напишет свою статью.
ISON — это проект, в рамках которого по всему миру развёрнута большая сеть телескопов для наблюдений за спутниками, астероидами и кометами. Телескопы в сети автоматически наблюдают объекты из солнечной системы, кроме того, на них выполняется огромная научная работа, например, детектирование гамма-всплесков. ISON — это международное название, по-русски проект зовётся «Пулковская кооперация оптических наблюдателей». А теперь по порядку.
Читать дальше →
Total votes 126: ↑125 and ↓1+124
Comments15

Использование каскада Хаара для сравнения изображений

Reading time4 min
Views72K
image

Признаки Хаара, про которые я расскажу, известны большинству людей, которые так или иначе связаны с системами распознавания и машинного обучения, но, судя по всему, мало кто использует их для решения задач вне стандартной области применения. Статья посвящена применению каскадов Хаара для сравнения близких изображений, в задачах сопровождение объекта между соседними кадрами видео, поиска соответствия на нескольких фотографиях, поиска образа на изображении и прочих подобных задач.
Total votes 79: ↑73 and ↓6+67
Comments19

Немножко философский пост про то, как мы в глаза смотрели

Reading time10 min
Views62K
В статье я расскажу небольшую историю про маленькую техническую задачку и о том, как её решали разные люди вокруг. Быть может этот рассказ поможет читателю вынести несколько уроков о том, какие временами встречаются ошибки.
Немножко матана инклудэд.
Три цвета
Идея распознавать людей по радужной оболочке появилась в далёком 1987 у доктора Джона Доугмана и была запатентована в 1989. Примерно тогда же появился прототип. На тот момент это была вершина технологии. Пару лет до первой коммерческой цифровой камеры + алгоритм обработки изображения на компьютерах уровня i386/i486. До сих пор я не представляю, как можно получать на таком оборудовании стабильный результат.
Задачка о которой я хочу рассказать появилась на свет где-то в 2006-2009 годах. Процессоры к этому времени несколько ускорились, появились хорошие камеры, патент 1989 года истёк и системы распознавания по глазам теперь получил право делать каждый. Люди, которые решили сделать клон системы захотели использовать современные технологии и улучшить алгоритм. Самое первое, что бросалось в глаза — старый алгоритм сравнения глаз использовал изображение глаза в близком ИК диапазоне. То, что глаза бывают цветными не учитывалось.
Total votes 125: ↑124 and ↓1+123
Comments59

Назад в прошлое: Печать фотографий на фотоувеличителе

Reading time10 min
Views120K
imageНедавно мне захотелось обновить воспоминания далёкого детства, когда напечатанные фотографии рождались не в фотолабораториях, а каким-то магическим образом из света и тени возникали в чуланах и ваннах обычных советских граждан. Несмотря на те смутные воспоминания, опыта печати фотографий на у меня никогда не было, так что это будет статья абсолютного нуба, попробовавшего разобраться в том, как работают технологии двадцатилетней давности и как запустить всю эту кухню в современных реалиях.
Вероятно, у старшего поколения всё это вызовет лишь улыбку, но ведь из тех, кому нет 30 лет лишь единицы имеют опыт печати фотографий. И сейчас даже отдалённое понимание того, какими способами такие люди как Энсель Адамс или Майкл Кенна достигали или достигают шедевральности своих фотографий уходит потихоньку в историю.
Читать дальше →
Total votes 64: ↑60 and ↓4+56
Comments69

Алкогольный орга́н Геллегера

Reading time6 min
Views12K
image
Гэллегер играл без нот и не глядя на клавиатуру. Это было бы совершенно естественно, будь он музыкантом, но Гэллегер был изобретателем. Пьяницей и сумасбродом, но хорошим изобретателем. Он хотел быть инженером-экспериментатором, и, вероятно, достиг бы в этом выдающихся успехов, поскольку моментами его осеняло. К сожалению, на систематические исследования ему не хватало средств, поэтому Гэллегер, консерватор интеграторов по профессии, держал свою лабораторию для души. Это была самая кошмарная лаборатория во всех Штатах. Десять месяцев он провел, создавая устройство, которое назвал алкогольным органом, и теперь мог, лежа на удобном мягком диване и нажимая кнопки, вливать в свою луженую глотку напитки любого качества и в любом количестве. Только вот сделал он этот орган, пребывая в состоянии сильного алкогольного опьянения, и разумеется, теперь не помнил принцип его действия. А жаль...
(с)Генри Каттнер, Рассказы о Геллегере.

Где-то с год назад мы с друзьями решил снять небольшой фильм. Естественно, до этого момента никто из нас фильмов никогда не снимал. А о чём могут снять фильм выпускники физтеха? Ну конечно! О фантастике и о алкоголе. Поэтому, не мудрствуя лукаво, за основу была взята любимая книжка — "Робот-Зазнайка" Генри Каттнера.
Но статья эта не о фильме, который ещё не доснят и не доделан, а одном из приборов из фильма, который я решил смастерить. Конечно, в фильме можно было бы использовать и макет. Но кто же откажется от возможности развлечься с настоящим устройством! Итак, Алкоорган и его создание…
Читать дальше →
Total votes 78: ↑75 and ↓3+72
Comments40

Основы биометрии

Reading time7 min
Views23K
Эта статья в какой-то мере является продолжением прошлой, а в какой-то её приквэлом. Здесь я расскажу про основы построения любой биометрической системы и про то, что осталось за кадром прошлой статьи, но обсуждалось в комментариях. Акцент сделан не на сами биометрические системы, а на их принципах и области действия.
Тем, кто не читал статью, или уже забыл — советую просмотреть что такое FAR и FRR, так как эти понятия будут использоваться и здесь.
Читать дальше →
Total votes 36: ↑33 and ↓3+30
Comments15

О современных методах околоземной астрономии

Reading time7 min
Views1.8K

Вступление лирическое


Если бы античный человек попал в наше время и взглянул на ночное небо, он бы наверное начал немедленно молиться своим богам, а может быть подумал, что пришёл судный день. Для нас, людей, чьё небо скрыто за световым загрязнением городов и деревень, такое утверждение может показаться абсурдным: «Звёзды такие же звёзды, что с них взять то?». Но если разобраться — оно обретёт смысл.
image
Выйдете вечером на природу и посмотрите в небо. Ничего не видите? Смотрите внимательнее! Практически в любой момент по небу будут лететь 2-3 ярких точки, а если присмотреться, то можно найти ещё с пяток более медленных и тусклых. Иногда (раза 3-4 за ночь) вам может посчастливиться и вы увидите ярчайшую вспышку на небе, лишь луна сравниться с ней по яркости. Всё это достижения человеческого прогресса — спутники. Для античного человека, для которого небо было символом постоянности, которое он видит над собой из ночи в ночь всё это мельтешение было бы воспринято как что-то противоестественное.

Вступление прагматическое


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



Читать дальше →
Total votes 26: ↑25 and ↓1+24
Comments12

Современные биометрические методы идентификации

Reading time21 min
Views147K
В последнее время на Хабре появляется множество статей, посвящённых Гугловским системам идентификации по лицам. Если честно, то от многих из них так и несёт журналистикой и мягко говоря некомпетентностью. И захотелось мне написать хорошую статью по биометрии, оно же мне не в первой! Пара неплохих статей по биометрии на Хабре есть — но они достаточно короткие и неполные. Тут я попробую вкратце обрисовать общие принципы биометрической идентификации и современные достижения человечества в этом вопросе. В том числе и в идентификации по лицам.

У статьи есть продолжение, которое, по-сути, является её приквэлом.
Читать дальше →
Total votes 91: ↑89 and ↓2+87
Comments45

Введение в OpenCL

Reading time11 min
Views61K
Эта статья посвящена основам программирования на OpenCl. OpenCl -это язык программирования на GPU/CPU, по своей структуре близкий к стандарту c99. Его развитием занимается Khronos Group, где на их сайте доступна полная документация. Во избежание полемики на тему «ну это же всё тривиально, достаточно покопаться в инете» сразу оговорюсь: в рунете информация на эту тематику практически полностью отсутствует, а в западном инете доступна весьма в разрозненном состоянии на десятке сайтов. Здесь будет приведена некоторая компиляция базовых принципов, максимально упрощающая начинающему программисту жизнь, а так же позволяющая с самого первого проекта максимально задействовать вычислительные мощности видеокарты. Людям написавшим 2-3 серьёзных программы на OpenCl это будет уже неинтересно. Статья в некотором смысле является продолжением моей прошлой статьи.
Читать дальше →
Total votes 47: ↑46 and ↓1+45
Comments26

OpenCL под C# это просто

Reading time8 min
Views43K
Хотя технология OpenCL появилась ещё в 2008 году, большого распространения она не получила до сих пор. Плюсы технологии несомненны: ускорение вычислений, кроссплатформенность, способность исполнять код как под GPU, так и под CPU, поддержка стандарта целым рядом компаний: Apple, AMD, Intel, nVidia и некоторыми другими. Минусов не так много, но и они есть: более медленная работа на nVidia, чем через CUDA, сложность использования. Первый из минусов влияет только при серьёзной разработке, где скорость программы важнее кроссплатформенности. Второй и является основным препятствием на пути разработчиков, делающих выбор в пользу того или иного метода разработки. Чтобы разобраться в куче хэдэров, драйверов и стандартов требуется куча времени. Но не всё так плохо. Темой этой статьи будет короткий guide по тому, как наиболее простым способом можно запустить OpenCL под C# и получить удовольствие от параллельного программирования.

Читать дальше →
Total votes 27: ↑23 and ↓4+19
Comments7

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Works in
Date of birth
Registered
Activity