1. OpenCV шаг за шагом. Введение.


OpenCV logo
Оглавление
1. OpenCV шаг за шагом. Введение.

Про OpenCV (Open Source Computer Vision Library) было немного рассказано здесь.
Это библиотека, которая до 1-й версии разарабатывалась в Центре разработки программного обеспечения Intel (причём, российской командой в Нижнем Новгороде).
OpenCV написана на языке высокого уровня (C/C++) и содержит алгоритмы для: интерпретации изображений, калибровки камеры по эталону, устранение оптических искажений, определение сходства, анализ перемещения объекта, определение формы объекта и слежение за объектом, 3D-реконструкция, сегментация объекта, распознавание жестов и т.д.

Эта библиотека очень популярна за счёт своей открытости и возможности бесплатно использовать как в учебных, так и коммерческих целях.

Фактически, OpenCV – это набор типов данных, функций и классов для обработки изображений алгоритмами компьютерного зрения.

Основные модули библиотеки:

cxcore — ядро
* содержит базовые структуры данных и алгоритмы:
— базовые операции над многомерными числовыми массивами
— матричная алгебра, математические ф-ции, генераторы случайных чисел
— Запись/восстановление структур данных в/из XML
— базовые функции 2D графики

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

Highgui — модуль для ввода/вывода изображений и видео, создания пользовательского интерфейса
— захват видео с камер и из видео файлов, чтение/запись статических изображений.
— функции для организации простого UI (все демо приложения используют HighGUI)

Cvaux — экспериментальные и устаревшие функции
— пространств. зрение: стерео калибрация, само калибрация
— поиск стерео-соответствия, клики в графах
— нахождение и описание черт лица

CvCam — захват видео
— позволяет осуществлять захват видео с цифровых видео-камер ( поддержка прекращена и в последних версиях этот модуль отсутствует )

Текущая (на момент правки статьи) стабильная версия 2.4.1.

Скачать библиотеку можно здесь:
http://sourceforge.net/projects/opencvlibrary/

В версии 2.2 структура библиотека реорганизована — теперь вместо больших универсальных модулей (cxcore, Cvaux, Highgui, Cvaux) библиотека OpenCV разделена на небольшие модули по функцианальному использованию:
opencv_core — ядро: базовые структуры, вычисления (математические функции, генерация псевдослучайных чисел, DFT, DCT, ввод/вывод в XML и т.п.)
opencv_imgproc — обработка изображений (фильтры, преобразования и т. д.).
opencv_highgui — простой UI, загрузка/сохранение изображений и видео.
opencv_ml — методы и модели машинного обучения (SVM, деревья принятия решений и т. д.).
opencv_features2d — различные дескрипторы (SURF).
opencv_video — анализ движения и отслеживание объектов (оптический поток, шаблоны движения, устранение фона).
opencv_objdetect — детектирование объектов на изображении (вейвлеты Хаара, HOG и т. д.).
opencv_calib3d — калибровка камеры, поиск стерео-соответстсвия и элементы обработки трехмерных данных.
opencv_flann — библиотека быстрого поиска ближайших соседей (FLANN).
opencv_contrib — сопутствующий код, еще не готовый для применения.
opencv_legacy — устаревший код, сохраненный ради обратной совместимости.
opencv_gpu — ускорение некоторых функций OpenCV за счет CUDA (NVidia).

Читать далее: 2. OpenCV шаг за шагом. Установка.

Книга про OpenCV:
Gary Bradski, Adrian Kaehler «Learning OpenCV. Computer vision with the OpenCV library.»

Ссылки
http://ru.wikipedia.org/wiki/OpenCV

Home


http://docs.opencv.org
http://www.compvision.ru/forum/index.php?showforum=4

Автор: Vladimir (noonv), 2010-2011

Эксклюзивно для robocraft.ru
копирование на другие ресурсы и публикация
без разрешения автора запрещены.


0 комментариев на «“1. OpenCV шаг за шагом. Введение.”»

    • Искал перевод этой книги около месяца, нашел здесь. Пусть с опозданием, но спасибо огромное.

  1. Здравствуйте! Я новичок в этом деле. Мне нужна помощь с моим проектом, за деньги разумеется. Есть на просторах интернета статья(https://opencv-srf.blogspot.ru/2010/09/object-detection-using-color-seperation.html?showComment=1503168085976#c1626075366995164909) «Color Detection & Object Tracking». Мне очень подходит данный код, НО… требуется сделать некоторые изменения: 1)Вместо прочерчивания линии за объектом, требуется захватить его в окружность(прямоугольник); 2) Необходимо добавить код, который мог бы объект удерживать всегда в центре при помощи 2 сервоприводов и Arduino. Моя почта: [email protected]

  2. Здравствуйте! Получиться ли у меня с помощью этого сделать, запись определенных слов в файл с видеосигнала, после нахождения на данном видео сигнале(видео камере)определенного слова?

    • Да. Только дял поиска слова придётся что-то придумать.

Добавить комментарий

Arduino

Что такое Arduino?
Зачем мне Arduino?
Начало работы с Arduino
Для начинающих ардуинщиков
Радиодетали (точка входа для начинающих ардуинщиков)
Первые шаги с Arduino

Разделы

  1. Преимуществ нет, за исключением читабельности: тип bool обычно имеет размер 1 байт, как и uint8_t. Думаю, компилятор в обоих случаях…

  2. Добрый день! Я недавно начал изучать программирование под STM32 и ваши уроки просто бесценны! Хотел узнать зачем использовать переменную типа…

3D-печать AI Android Arduino Bluetooth CraftDuino DIY IDE iRobot Kinect LEGO OpenCV Open Source Python Raspberry Pi RoboCraft ROS swarm ИК автоматизация андроид балансировать бионика версия видео военный датчик дрон интерфейс камера кибервесна манипулятор машинное обучение наше нейронная сеть подводный пылесос работа распознавание робот робототехника светодиод сервомашинка собака управление ходить шаг за шагом шаговый двигатель шилд юмор

OpenCV
Робототехника
Будущее за бионическими роботами?
Нейронная сеть - введение