Релиз библиотеки компьютерного зрения OpenCV 3.2


После года разработки состоялся релиз свободной библиотеки OpenCV 3.2 (Open Source Computer Vision Library), предоставляющей средства для обработки и анализа содержимого изображений. Код библиотеки написан на языке С++ и распространяется под лицензией BSD. Биндинги подготовлены для различных языков программирования, включая Python, MATLAB и Java.

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

В состав новой версии интегрированы новые возможности, подготовленные студентами в рамках программы «Google Summer of Code 2016». Например, подготовлены синусоидальные модели для модуля разворачивания фаз (phase unwrapping), реализован алгоритм DIS (Dense Inverse Search) для контроля оптического потока, добавлен алгоритм для отслеживания объектов на основе свёрточной нейронной сети (CNN, Convolutional Neural Network), реализованы алгоритмы PCAFlow и Global Patch Collider, подготовлено многоязычное руководство по использованию OpenCV в Python, C++ и Java, подготовлена новая модель для камеры и параллельной обработки совмещённых работ, проведена оптимизация модуля dnn (Deep Neural Network), в хранилище добавлена поддержка форматов Batiny_dnnse64 и JSON, внесены улучшения в модуль tiny_dnn, реализован алгоритм разбора слов (Word-spotting) на основе свёрточной нейронной сети.

Из работ, проведённых без привлечения студентов GSoC, отмечено значительное улучшение и ускорение работы модуля dnn: добавлено множество новых слоёв, реализовано семантическое сегментирование и поддержка SSD-сетей, добавлена поддержка импорта из TensorFlow. Расширен список поддерживаемых форматов изображений и камер. Добавлено приложение для интерактивной калибровки камеры. Добавлена большая порция оптимизаций для ускорения работы на архитектурах с процессорами Intel и ARM, в том числе задействованы векторные инструкции и новые ядра OpenCL. Реализована возможность ускорения за счёт применения в OpenCV наборов OpenVX и LAPACK/BLAS (включая Intel MKL, Apple Accelerate, OpenBLAS и Atlas). В репозиторий opencv_contrib добавлена порция новых алгоритмов.

© OpenNet