Преобразование Фурье в OpenCV

Не буду вдаваться в подробности про то, что такое преобразование Фурье, БПФ, и зачем это нужно. В конце концов, есть Google, Википедия и множество источников, где можно почитать теорию. Напомню только, что данное преобразование позволяет получить спектр сигнала, ну или в обратном случае из спектра – сам сигнал. Преобразование реализуется функцией.
void cvDFT(
const CvArr* src, 
CvArr* dst, 
int flags, 
int nonzeroRows=0
);



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

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

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


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

Индивидуальный выбор оптимального количества особенностей при распознавании графических образов

         Существует целый класс алгоритмов распознавания графических образов, основанных на сопоставлении некоторых особенностей («особых» точек) неизвестного объекта с эталонными образами. Один из наиболее известных механизмов выделения особенностей представлен в работе [4] и реализован в популярной программной библиотеке OpenCV. Достоинством алгоритма распознавания на базе особенностей является возможность находить объекты на изображениях, где они повёрнуты на произвольные углы и могут частично перекрываться. Вероятность правильного распознавания в данном алгоритме, прежде всего, зависит от количества и содержимого эталонных образов, а также от числа сравниваемых особенностей.
         При применении алгоритмов на базе особенностей существенное влияние оказывает проблема быстродействия, которая усиливается при увеличении числа эталонных образов, когда особенности неизвестного изображения необходимо сравнить со всеми особенностями всех эталонных образов. Чрезмерное увеличение количества особенностей ведёт к снижению производительности алгоритма, поэтому возникает идея выбирать количество особенностей индивидуально для каждого эталонного образа, что позволит снизить время распознавания при сохранении качества. Целью настоящей работы является оптимизация алгоритма распознавания на основе особенностей путём оптимального выбора количества особенностей.


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

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

Бинаризация изображений, т.е. перевод полноцветного или в градациях серого изображения в монохромное, где присутствуют только два типа пикселей (темные и светлые) имеет большое значение при распознавании образов. Особенно это относится к бинарным объектам, таким, как штриховые коды, текст, чертежи и т.п. Существуют различные подходы к бинаризации, которые условно можно разделить на 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…


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