Используйте файлы Интерфейса OpenCV, чтобы интегрировать ваш Код С++ OpenCV в MATLAB® и создать файлы MEX, которые вызывают функции OpenCV. Пакет поддержки также содержит поддержку графического процессора (GPU).
После того, как вы установите сторонние файлы поддержки, можно использовать данные с продуктом Computer Vision Toolbox™. Используйте один из двух способов установить файлы поддержки Дополнения.
Выберите Get Add-ons из Add-ons выпадающее меню с рабочего стола MATLAB. Файлы Дополнения находятся в разделе “MathWorks Features”.
Введите visionSupportPackages
в Окне Команды MATLAB и следуйте за подсказками.
У вас должны быть привилегии записи для папки установки.
Когда новая версия программного обеспечения MATLAB будет выпущена, повторите этот процесс, чтобы проверять на обновления. Можно также проверять на обновления между релизами.
Файлы поддержки Интерфейса OpenCV установлены в папке visionopencv
. Чтобы найти путь к этой папке, введите следующую команду:
fileparts(which('mexOpenCV'))
visionopencv
содержит эти файлы и папку.
Файлы | Содержимое |
---|---|
Папка example | Сравнение с шаблонами, Приоритетный Детектор, и Ориентированный FAST и Вращаемый BRIEF (ORB) примеры, включая версию графического процессора. Каждая подпапка в папке в качестве примера содержит файл README.txt с постепенными инструкциями. |
Папка registry | Регистрационные файлы. |
Файл mexOpenCV.m | Функция, чтобы создать файлы MEX. |
Файл README.txt | Справочный файл. |
Функция mex
пользуется предварительно созданными библиотеками OpenCV, которые поставляются с продуктом Computer Vision Toolbox. Ваш компилятор должен быть совместим с тем, используемым, чтобы создать библиотеки. Следующие компиляторы используются, чтобы создать библиотеки OpenCV для хоста MATLAB:
Операционная система | Совместимый компилятор |
---|---|
Windows® 64 бита | Microsoft® Visual Studio® 2015 Professional или Visual Studio 2017 |
Linux® 64 бита | gcc-4.9.3 (g ++) |
Mac 64 бита | XCode 6.2.0 (Лязг ++) |
Этот пример создает файл MEX из обертки файл C++ и затем тестирует недавно созданный файл. Пример использует алгоритм сравнения с шаблонами OpenCV, перенесенный в файл C++, который расположен в папке example/TemplateMatching
.
Измените свою текущую рабочую папку на папку example/TemplateMatching
:
cd(fullfile(fileparts(which('mexOpenCV')),'example',filesep,'TemplateMatching'))
Создайте файл MEX из исходного файла:
mexOpenCV matchTemplateOCV.cpp
Запустите тестовый скрипт, который использует сгенерированный файл MEX:
testMatchTemplate
Служебные функции интерфейса mexOpenCV
преобразовывают данные между OpenCV и MATLAB. Эти функции поддерживают CPP-связь только. Поддержка графического процессора доступна на glnxa64, win64, и платформы Mac. Специфичные для графического процессора служебные функции поддерживают CUDA, включенный NVIDIA, графический процессор с вычисляет возможность 2.0 или выше. Смотрите Системные требования Parallel Computing Toolbox™, служебные функции графического процессора требуют программного обеспечения Parallel Computing Toolbox.
Функция | Описание |
---|---|
ocvCheckFeaturePointsStruct | Проверяйте, что struct MATLAB представляет характерные точки |
ocvStructToKeyPoints | Преобразуйте struct характерных точек MATLAB в вектор OpenCV |
ocvKeyPointsToStruct | Преобразуйте вектор OpenCV |
ocvMxArrayToCvRect | Преобразуйте struct MATLAB, представляющий прямоугольник OpenCV |
ocvCvRectToMxArray | Преобразуйте OpenCV |
ocvCvBox2DToMxArray | Преобразуйте OpenCV |
ocvCvRectToBoundingBox_{DataType} | Преобразуйте |
ocvMxArrayToSize_{DataType} | Преобразуйте |
ocvMxArrayToImage_{DataType} | Преобразуйте столбец главный |
ocvMxArrayToMat_{DataType} | Преобразуйте столбец главный mxArray , чтобы расположить в ряд главный cv::Mat для типичной матрицы |
ocvMxArrayFromImage_{DataType} | Преобразуйте строку главный |
ocvMxArrayFromMat_{DataType} | Преобразуйте строку главный cv::Mat в столбец главный mxArray для типичной матрицы. |
ocvMxArrayFromVector | Преобразуйте числовой |
ocvMxArrayFromPoints2f | Преобразовывает |
Функция графического процессора | Описание |
---|---|
ocvMxGpuArrayToGpuMat_{DataType} | Создайте |
ocvMxGpuArrayFromGpuMat_{DataType} | Создайте |
Вызовите функцию mxArray
со своим исходным файлом.
mexOpenCV
yourfile.cpp
Для файлов MEX создания справки, в подсказке команды MATLAB, введите:
help mexOpenCV
Каждая подпапка в качестве примера в пакете поддержки Интерфейса OpenCV содержит все файлы, необходимо запустить пример. Чтобы запустить пример, необходимо вызвать функцию mexOpenCV
с одним из предоставленных исходных файлов.
Запустите пример сравнения с шаблонами
Запустите приоритетный пример детектора
Запустите ориентированный FAST и вращаемый BRIEF (ORB) пример детектора
Запуститесь обнаруживают функции ORB (версия графического процессора) пример