Детектирование QR Code с помощью средств OpenCV

Распознавание двухмерных кодов является актуальной задачей, впрочем, уже решенной на ряде устройств и персональных компьютерах. Однако на настоящий момент отсутствуют BSD версии библиотек распознавания, а ограниченные лицензии в большинстве случаев не позволяют использовать открытые исходные кода для своих целей.
Популярный в Японии QrCode является одним из наиболее оптимальных кодов, хотя при малых размерах кода квадраты-мишени отнимают много места. На рисунке 1 приведен пример кода Qr с закодированной фразой «Test code».



( Читать дальше )
  • +2
  • 03 апреля 2011, 16:52
  • vidikon
  • 2

Статическое подключение OpenCV 1.1 к проекту в VC 2003

Задача, конечно, врятли актуальная. Поскольку большинство пользуется OpenCV более новых версий и более новые студии. Однако, возникла такая ситуация. Необходимо создать проект на visual studio 2003 с использованием некоторых средств OpenCV, которая была бы статически подключена. Первое — это то, что версии OpenCV, начиная с 2.0 отпадают, поскольку они предназначены только для работы, начиная с vs 2005. Второе — динамически все работает нормально, однако когда речь заходит о статической линковке возникает ряд проблем. Ниже описано, какие действия надо сделать, что откомпилировать и подключить статически OpenCV к вашему проекту в vs 2003.


( Читать дальше )

Бинаризация изображений

Бинаризация изображений, т.е. перевод полноцветного или в градациях серого изображения в монохромное, где присутствуют только два типа пикселей (темные и светлые) имеет большое значение при распознавании образов. Особенно это относится к бинарным объектам, таким, как штриховые коды, текст, чертежи и т.п. Существуют различные подходы к бинаризации, которые условно можно разделить на 2 группы:
  • пороговые;
  • адаптивные.


( Читать дальше )

Android + OpenCV

    Привет всем, сегодня я расскажу вам о сборке OpenCv для Android под управлением ОС Windows7.
    Перед началом сего процесса необходимо иметь:
  1. Android NDK; developer.android.com/sdk/ndk/index.html
  2. Android SDK; developer.android.com/sdk/index.html
  3. JDK (5 или 6); www.oracle.com/technetwork/java/javase/downloads/index.html
  4. SWIG(swigwin); www.swig.org/download.html
  5. Apache Ant; ant.apache.org/bindownload.cgi
  6. Make; gnuwin32.sourceforge.net/packages/make.htm
  7. Cmake; www.cmake.org/cmake/resources/software.html
  8. Svn клиент; sourceforge.net/projects/win32svn/


( Читать дальше )

Затачиваем OpenCV под QT на Windows: Компиляция OpenCV под QT, создание OpenCV проекта на QT



Привет, народ! Сегодня расскажу вам как компилировать OpenCV с поддержкой QT…


( Читать дальше )

Перенос блога

Блог «Распознавание образов для программистов», расположенный по адресу: blog.vidikon.com перенесен на recog.ru.
Старые записи доступны по адресу:
Старые записи

iCCTV распознавание автомобильных номеров без ограничений по каналам – лучший выбор

iCCTV — программный комплекс, предназначенный для работы с IP камерами в формате RTSP, MJPEG. Сейчас он в первую очередь предназначен для распознавания автомобильных номеров. С ценами вы можете ознакомиться здесь:
http://intbusoft.com/icctv/
Данная система предназначена для опытных пользователей, в том числе для компаний, желающих встроить решение по распознаванию автомобильных номеров в свою продукцию. Почему iCCTV является для таких пользователей и компаний лучшим выбором?

1. Система обладает простым интерфейсом



( Читать дальше )

Распознавание номеров железнодорожных вагонов на основе iANRCR SDK

Распознавание с помощью iANRCR SDK очень просто, поскольку используется библиотека OpenCV. Предположим с камеры поступает стабильное, обрезанное так, как нам нужно изображение:

в формате матрицы OpenCV Mat image.
Переводим изображение в градации серого
Mat gray;
cvtColor(image, gray, CV_BGR2GRAY);



( Читать дальше )

Жизненный цикл разработки оптимального программного обеспечения для распознавания образов в реальном времени

Выдержка из книги Кручинин, А.Ю. Оптимальный подход к распознаванию протяженных объектов в реальном времени. – М.: АНО Изд. Дом «Науч. обозрение», 2016. – 305 с.

Жизненный цикл разработки современного программного обеспечения обычно представляется спиральной моделью Боэма, выделяя последовательность итераций [138]:
  • определение требований;
  • анализ;
  • разработка;
  • проектирование следующей фазы.
Эта модель наиболее подходит и для разработки программного обеспечения распознавания образов. Если руководствоваться классической постановкой задачи распознавания образов (параграф 1.1), то применимо к разработке программного обеспечения для распознавания эти итерации выглядят так:
• определение требований к эффективности распознавания образов;
• анализ и выбор информативных признаков;
• разработка программы, которая вычисляет информативные признаки и по ним соотносит неизвестный образ с одним из эталонов, в том числе проводится тестирование;
• анализ результатов тестирования и проектирование следующей последовательности итераций (коррекция требований, модифицированные информативные признаки, другая реализация алгоритма распознавания).


( Читать дальше )

Распознавание номеров железнодорожных вагонов

На сайте http://intbusoft.com/2018/04/util_ianrcr/ выложена первая демо-версия распознавания железнодорожных номеров в виде утилиты. Пример работы утилиты можно посмотреть ниже

iANPR 1.6

Версия iANPR 1.6 для распознавания автомобильных номеров доступна для скачивания. Что нового:

добавлено экспериментальное распараллеливание, настраиваемое через структуру ANPR_OPTIONS;
добавлена возможность настраивания поворота в плоскости и вглубь камеры для корректировки номера;
исправлены ошибки в распознавании, примерах и др.;
улучшена производительность.
http://intbusoft.com/ianpr/

iCCTV - распознавание автомобильных номеров 1.0

Выпущена первая версия программы распознавания автомобильных номеров. iCCTV — программный комплекс, предназначенный для работы с IP камерами в формате RTSP, MJPEG. Первая версия предназначена только для автоматического распознавания автомобильных номеров и работает совместно с iANPR SDK.
Перейти к странице продукта

Распознавание номеров железнодорожных вагонов

Ниже приведены примеры предварительного исследования в области распознавания номеров железнодорожных вагонов.

За подробностями обращайтесь на intbusoft.com

iANPR SDK 1.5

Вышла новая версия библиотеки распознавания автомобильных номеров iANPR SDK 1.5
Что нового:
— добавление большого количества типов номеров для Беларуси;
— добавление базового типа номеров Польши;
— добавление базового типа номеров Латвии;
— добавление базового типа номеров Эстонии;
— добавление базового типа номеров Литвы;
— добавление основных типов номеров Украины;
— добавление основных типов номеров Молдовы;
— добавление настраиваемого типа ANPR_CUSTOM_TYPE;
— возвращение всех типов номеров при флаге RETURN_TYPE_NUMBER;
— добавление флага NO_LOW_RELIABILITY для удаления номеров с низкой достоверностью;
— немного переработано определение ложных срабатываний;
— изменен цветовой фильтр выбора типа номера для цветных изображений;
— исправлены некоторые мелочи и ошибки.
Перейти на страницу продукта

Решение проблемы низкой FPS на некоторых USB камерах

Столкнулся с проблемой в Windows, что камеры на новых ноутбуках и некоторые новые камеры при разрешениях выше 640x480 дают низкое значение FPS использованием видеопотока OpenCV (неважно Си или Си++ интерфейс).
В моем случае было 3 камеры (2 внешние и одна ноутбука), которые ставили разрешение 1280x760, но только одна при этом давала 30 FPS, остальные две камеры давали значение 10 FPS.

Естественно первая идея — установить FPS с помощью CV_CAP_PROP_FPS, но оно не работает для камер. Тогда пришлось смотреть исходники OpenCV и выяснять в каких режимах работает камера.


( Читать дальше )

DataMatrix Windows FREE Reader

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

Cкачать здесь:
http://intbusoft.com/download/products/DataMatrixReader.exe

Распознавание и слежение за знаком скорости

Распознавание знака скорости и слежение за ним. Все выполняется довольно быстро — на 1 ядре процессора AMD FX(tm)-6100 Six-Core выделенная зона распознается за 0.017с. (полное FullHD изображение где-то в среднем на одном ядре за 0.032с — но анализ всего изображения не нужен. Достаточно распознавать указанную область).

iANPR SDK 1.4

Вышла версия SDK для распознавания автомобильных номеров версии 1.4
Изменения:
— добавление распознавания двухстрочных номеров Российской Федерации;
— добавление возвращения типа номера для номеров Российской Федерации;
— исправление ошибок утечки памяти в функциях anprPlateMatRect и anprPlateMatRectXML.

Перейти к странице продукта

Контурный анализ - детектирование зашумленного бинарного объекта

Бинарный объект

Бинарный объект – это объект, созданный человеком, и находящийся в поле зрения камеры. К таким объектам относятся дорожные знаки, автомобильные номера, баркоды и т.п. Часто эти объект имеют контур, по которому они достаточно хорошо детектируются. Однако возникают ситуации, когда объекты серьезно наклонены к оси камеры в нескольких плоскостях, а при этом на них накладывается шум:

Здесь: (а) исходный объект, (б) искаженный объект в результате поворота к камере, (в) зашумленный объект
Для правильного распознавания объекта необходимо провести перспективное преобразование. Но для этого необходимо получить 4 точки бинарного объекта.
Цель данной публикации: определить 4 точки в зашумленном объекте изначальной прямоугольной формы.


( Читать дальше )

iANPR SDK 1.3 Linux

Вышла версия 1.3 iANPR SDK для Linux
Страница продукта:
http://intbusoft.com/rus/products/iANPR/
Страница скачивания:
http://ianpr.org/download.htm