Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
дипломчик.docx
Скачиваний:
6
Добавлен:
01.07.2025
Размер:
3 Мб
Скачать
☆
      1. Библиотека OpenCv

OpenCV (open source computer vision library)— это библиотека компьютерного зрения с открытым исходным кодом. Также, она существует для некоторых других языков, например, для Java. Включает в себя различные алгоритмы компьютерного зрения, распознавания изображений и многое другое, работающих в реальном режиме времени. Все желающие могут использовать библиотеку OpenCV бесплатно, как в образовательных целях, так и в коммерческих проектах.

Она включает в себя следующие алгоритмы: 

  • Распознавание объектов в видеопотоке.

  • Распознавание печатного и рукописного текста.

  • Устранение искажений картинки.

  • Выявление сходства и формы объектов.

  • Слежение за перемещением объекта.

  • Распознавание движений, жестов и многое другое. 

Поддерживаемые платформы и инструменты для OpenCV.

Сами библиотеки:

  • Windows: компиляторы Microsoft Visual C++ (6.0, .NET 2003), Intel Compiler, Borland C++, Mingw (GCC 3.x).

  • Linux: GCC (2.9x, 3.x), Intel Compiler: "./configure-make-make install", RPM (spec файл включен в поставку)

  • Используются C и "облегченный" C++. Прагмы и условная компиляция используются очень ограниченно.

Средства GUI, захват видео:

  • Windows: DirectShow, VFW, MIL, CMU1394

  • Linux: V4L2, DC1394, FFMPEG

Документация: статический HTML

Функциональность OpenCV:

• Ядро cxcore, также частично используется в Intel Open Source Probabilistic Network Library:

  • Базовые операции над многомерными числовыми массивами;

  • Матричная алгебра, математические ф-ции, генераторы случайных чисел;

  • DFT, DCT;

  • Запись/восстановление структур данных в/из XML/YAML;

  • Базовые функции 2D графики;

  • Поддержка более сложных структур данных: разреженные массивы, динамически растущие последовательности, графы;

Модуль обработки изображений и компьютерного зрения CV: 

  • Базовые операции над изображениями (фильтрация, геометрические преобразования, преобразование цветовых пространств и т.д.);

  • Анализ изображений (выбор отличительных признаков, морфология, поиск контуров, гистограммы);

  • Структурный анализ (описание форм, плоские разбиения и т.д.);

  • Анализ движения, слежение за объектами;

  • Обнаружение объектов, в частности лиц;

  • Калибровка камер, элементы восстановления пространственной структуры;

Модуль для ввода/вывода изображений и видео, пользовательского интерфейса highgui:

  • Захват видео с камер и из видео файлов, чтение/запись статических изображений;

  • Функции для организации простого UI (сейчас все демо приложения используют HighGUI);

Экспериментальные и устаревшие функции cvaux:

  • Пространственное зрение: стереокалибрация, самокалибрация;

  • Поиск стереосоответствия, клики в графах;

  • Нахождение и описание черт лица;

  • Сравнение форм, построение скелетонов;

  • Скрытые Марковские цепи;

  • Описание текстур.

Развитие библиотеки:

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

• Библиотека останется свободной;

• Улучшится стабильность и скорость;

• Улучшится интеграция с IPP для еще большей производительности;

• Переход к более открытой модели разработки;

• Перенос некоторой функциональности из прошлых и текущих исследовательских проектов.

Библиотека OpenCV достаточно мощный инструмент для решения задач как в научной, так и промышленной областях.