OpenCV — библиотека компьютерного зрения с открытым исходным кодом. Библиотека была разработана с использованием программирования C и C++ и работает в трех операционных системах, а именно Linux, Windows и Mac OS X.
OpenCV (Open Computer Vision) — это библиотека API (интерфейс прикладного программирования), которая очень хорошо знакома с обработкой изображений компьютерного зрения. Само компьютерное зрение — это ветвь области обработки изображений, позволяющая компьютерам видеть, как люди. Благодаря этому видению компьютер может принимать решения, совершать действия и распознавать объекты. Некоторые реализации компьютерного зрения включают распознавание лиц, обнаружение лиц, отслеживание лиц/объектов, отслеживание дорог и т. д. OpenCV разработан для приложений реального времени и имеет хорошие функции сбора изображений и видео.
Сам OpenCV состоит из 5 библиотек, а именно:
- CV: для обработки изображений и алгоритмов зрения
- ML: для библиотек машинного обучения
- HighGUI: для графического интерфейса пользователя, ввода-вывода изображений и видео.
- CXCORE: для структур данных, поддержка XML и графических функций.
- CVAux
Структура и содержание OpenCV:
Функции, принадлежащие OpenCV, включают:
- Обработка данных изображения (размещение, копирование, настройка, преобразование)
- Ввод/вывод изображений и видео (ввод файлов и камер, вывод изображений и видеофайлов)
- Манипуляции с матрицами и векторами наряду с линейной алгеброй (pproducts, решатели, собственные значения, SVD)
- Динамические структуры данных (списки, очереди, наборы, деревья и графики)
- Фундаментальная обработка изображений (фильтрация, обнаружение краев, обнаружение углов, выборка и интерполяция, преобразование цвета, морфологические операции, гистограммы, пирамиды изображений)
- Структурный анализ (компоненты связности, обработка контуров, преобразование расстояний, различные моменты, сопоставление шаблонов, преобразование Хафа, полигональная аппроксимация, аппроксимация линией, аппроксимация эллипса, триангуляция Делоне).
- Калибровка камеры (шаблоны калибровки, оценка фундаментальной матрицы, оценка гомографии, стереосоответствие)
- Анализ движения (оптический поток, сегментация и отслеживание)
- Распознавание объектов
- Графический пользовательский интерфейс (отображение изображения/видео, работа с клавиатурой и мышью, полосы прокрутки)
- Разметка изображения (линия, конус, многоугольник, текстовый рисунок)
- Графические функции
Вы можете связаться со мной в моем блоге: archgorithm