Рубрика «opencv» - 10

Специальные очки меняют личность человека для системы распознавания лиц - 1
Успешная имперсонификация в системе распознавания лиц. Слева: актриса Риз Уизерспун, личность которой нейросеть распознаёт с вероятностью 100%. В центре: очки, подобранные для имперсонификации актёра Рассела Кроу. Справа: жертва имперсонификации

Благодаря нейросетям системы машинного зрения достигли рекордной точности результаты в распознавании лиц. Личность человека почти безошибочно распознаётся даже на смазанных фотографиях и на тех, где лицо видно лишь частично. Созданы алгоритмы, которые учитывают контекст: одежду, окружение, походку. Пока это лишь передовые технологические разработки. Но учитывая всемирную истерию вокруг терроризма и безопасности (хотя от терроризма погибает в 53 раза меньше людей, чем в ДТП), очень скоро подобные программы распознавания будут без всякого сомнения подключены к миллионам видеокамер наружного наблюдения в общественных местах. Вопрос в том, какие есть методы, чтобы бороться с такой слежкой?
Читать полностью »

Вчера я опубликовал статью про машинное обучение и NVIDIA DIGITS. Как и обещал, сегодняшняя статья — почему всё не так уж и хорошо + пример выделения объектов в кадре на DIGITS.

NVIDIA подняла волну пиара по поводу разработанной и имплиментированной в DIGITS сетки DetectNet. Сетка позиционируется как решение для поиска одинаковых/похожих объектов на изображении.

Почему супер-мега-про машинного обучения за 15 минут всё же не стать - 1
Читать полностью »

Тем, кто занимается системами машинного обучения и компьютерным зрением, хорошо знакома такая библиотека как OpenBLAS (Basic Linear Algebra Subprograms). OpenBLAS написан на C и используется повсеместно там где нужна работа с матрицами. Так же у него есть несколько альтернативных реализаций таких как Eigen и двух закрытых имплементацией от Intel и Apple. Все они написаны на СС++.

В настоящий момент OpenBLAS используется в матричных манипуляциях в таких языках как Julia и Python (NumPy). OpenBLAS крайне хорошо оптимизирована и значительная её часть вообще написана на ассемблере.

Однако так ли хорош для вычислений чистый C, как это принято считать?

Встречайте Mir GLAS! Нативная реализация библиотеки линейной алгебры на чисто D без единой вставки на ассемблере!
Читать полностью »

Доброе утро, дамы и господа. Внимательные читатели заметили, что на российском рынке вновь проклюнулись переводные книги на тему компьютерного зрения. Нас также не могла не заинтересовать следующая книга:

OpenCV и обработка изображений - 1

Поскольку технологии компьютерного зрения в значительной степени завязаны и на Python, и на C++, мы подобрали статью с разбором проблемы и кодом на обоих языках. Кроме того, искренне надеемся, что девушка под катом вам понравится.
Читать полностью »

Подходит к концу первая проектная смена в образовательном центре «Сириус». Обычно здесь проводятся образовательные смены, на которых учащиеся школ готовятся к олимпиадам всероссийского и мирового уровня. Например, команда математиков перед всемирной олимпиадой проходила сборы в «Сириусе». Предполагается в будущем сделать это место одним из основных центров притяжения талантливой молодежи для дальнейшей интеграции в высокотехнологичные проекты, которые находятся на особом счету государства.
Команда Университета ИТМО, помимо обширного участия в проектах, связанных с нанотехнологиями, работала с учащимися школ над несколькими робототехническими проектами. Наша группа состояла из 19 учеников и 3 преподавателей. Заранее мы определили основные технологии и особенности конструкции, которые будут реализованы в ходе проекта. Некоторые проекты ориентированы на автоматизацию определенных процессов, а какие-то имеют больше творческую визуальную составляющую. В качестве основы для создания роботов было решено использовать робототехнический конструктор ТРИК. Здесь уже публиковались примеры использования этого конструктора.
Проектная смена в образовательном центре «Сириус» - 1
Читать полностью »

Распознаем лица на фото с помощью Python и OpenCV - 1
В этой статье я хотел бы остановиться на алгоритмах распознавания лиц, а заодно познакомить вас с очень интересной и полезной библиотекой OpenCV. Уверен, что этот материал окажется полезным для новичков в этой области.

Что нам понадобится:
• Установленный Python 2.7 с библиотеками NumPy и PIL
• OpenCV 2-й версии

Здесь ссылка на материал по установке всех необходимых компонентов. Установка всего необходимого не составит труда.
Читать полностью »

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

Задача заключалась в следующем:

1. Написать программу сервер, которая загружает видео из файла, сжимает в JPEG и передает по протоколу TCP программе клиенту.
2. Написать программу клиент, которая принимает видео по TCP, декодирует и отображает.
Читать полностью »

3D-сканер из молока и смартфона - 1

На сайте Instructables опубликована инструкция, как собрать самый простой и дешёвый 3D-сканер из подручных средств. Автор проекта GotMesh подсмотрел идею использовать молоко у коллег из проекта Milkscanner, которые применили его для создания сложных 3D-моделей ещё до того, как 3D-печать пошла в массы. Новый способ намного проще, автоматизирован с помощью скрипта и OpenCV, а также оптимизирован конкретно для 3D-печати отсканированного предмета.
Читать полностью »

Компьютерное зрение и мобильные роботы. Часть 1 — V-REP, Python, OpenCV - 1

Когда прочитал публикацию про запуск беспилотных гоночных автомобилей — подумал, было бы интересно сделать что-то подобное. Конечно не гоночный болид, но по крайней мере мобильный робот, что ориентируется в пространстве посредством камеры — распознаванием образов.

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

Так и возникла идея серии статей, про решение простейшей задачи ориентации робота в пространстве — от виртуальной симуляции, до воплощения в реальном мобильном роботе:

Часть 1. Настройка виртуальной среды, интеграция с python и OpenCV для распознавания образов из виртуального мира.
Часть 2. Создание виртуального мобильного робота, алгоритм автономного перемещения (поиск объекта)
Часть 3. Создание реального робота, перенос логики на него.

Хочется добиться такого результата — чтобы python скрипт, управляющий виртуальным роботом — был бы максимально идентичным тому, что будет управлять реальным роботом.

Мозгом робота будет микрокомпьютер RaspberryPi2 — на котором без проблем работает и python, и OpenCV. Таким образом необходимо состыковать систему виртуальной робототехники V-REP — с Python и OpenCV. Вот про это и будет первая часть — данная публикация.

Видео, что получилось (поиск зеленого объекта)


На верхнем окне — прямое изображение с видео-камеры в 3д виртуальном мире, на нижнем окне — результат выполнения python скрипта, что получает изображение передаёт её OpenCV и рисует маркер, вокруг найденного объекта.

Нарисуем архитектуру нашего мобильного робота.
Читать полностью »

Тир на Raspberry, версия 2.0 - 1
Статья о дальнейшем улучшении прошлой версии тира geektimes.ru/post/255350
Пользоваться тиром дома быстро наскучило, поэтому, на радость коллегам, он был установлен на работе. Однако после непродолжительной эксплуатации был выявлен ряд недостатков:

  • «игрушечность» и непрактичность пистолета
  • необходимость кропотливой калибровки
  • пропуски выстрелов
  • перспективные искажения камеры и вследствие — значительные погрешности
  • система подсчета очков без округления

Все это было исправлено в новой версии.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js