Установите и используйте интерфейс Computer Vision Toolbox для OpenCV в MATLAB

Используйте файлы Интерфейса OpenCV, чтобы интегрировать ваш Код С++ OpenCV в MATLAB® и создать файлы MEX, которые вызывают функции OpenCV.

Установка

После того, как вы установите сторонние файлы поддержки, можно использовать данные с продуктом Computer Vision Toolbox™. Чтобы установить файлы поддержки Дополнения, используйте один из следующих методов:

  • Выберите Get Add-ons из Add-ons выпадающее меню с рабочего стола MATLAB. Файлы Дополнения находятся в разделе “MathWorks Features”.

  • Введите visionSupportPackages в командном окне MATLAB и следуют за подсказками.

Примечание

У вас должны быть привилегии записи для папки установки.

Когда новая версия программного обеспечения MATLAB будет выпущена, повторите этот процесс, чтобы проверять на обновления. Можно также проверять на обновления между релизами.

Поддержите содержимое пакета

Интерфейс Computer Vision Toolbox для OpenCV в файлах поддержки MATLAB установлен в 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 или позже
Linux® 64 битаgcc-4.9.3 (g ++)
Mac 64 битаXCode 6.2.0 (Лязг ++)

Создайте файл MEX из OpenCV файл C++

Этот пример создает файл MEX из обертки файл C++ и затем тестирует недавно созданный файл. Пример использует алгоритм сравнения с шаблонами OpenCV, перенесенный в файл C++, который расположен в example/TemplateMatching папка.

  1. Измените свою текущую рабочую папку в example/TemplateMatching папка:

    cd(fullfile(fileparts(which('mexOpenCV')),'example',filesep,'TemplateMatching'))

  2. Создайте файл MEX из исходного файла:

    mexOpenCV matchTemplateOCV.cpp

  3. Запустите тестовый скрипт, который использует сгенерированный файл MEX:

    testMatchTemplate

Используйте интерфейс Computer Vision Toolbox для OpenCV в MATLAB API C++

mexOpenCV интерфейсные служебные функции преобразуют данные между OpenCV и MATLAB. Эти функции поддерживают CPP-рычажное-устройство только. Поддержка графического процессора доступна на glnxa64, win64, и платформы Mac. Специфичные для графического процессора служебные функции поддерживают CUDA, включенный NVIDIA графический процессор. Смотрите Системные требования Parallel Computing Toolbox™ и Поддержку графического процессора Релизом (Parallel Computing Toolbox). Служебные функции графического процессора требуют программного обеспечения Parallel Computing Toolbox.

Интерфейс Computer Vision Toolbox для OpenCV в MATLAB API поддерживает версию 4.2.0 OpenCV.

ФункцияОписание
ocvCheckFeaturePointsStruct

Проверяйте, что struct MATLAB представляет характерные точки

ocvStructToKeyPoints

Преобразуйте struct характерных точек MATLAB в OpenCV KeyPoint вектор

ocvKeyPointsToStruct

Преобразуйте OpenCV KeyPoint вектор к struct MATLAB

ocvMxArrayToCvRect

Преобразуйте struct MATLAB, представляющий прямоугольник OpenCV CvRect

ocvCvRectToMxArray

Преобразуйте OpenCV CvRect к struct MATLAB

ocvCvBox2DToMxArray

Преобразуйте OpenCV CvBox2D к struct MATLAB

ocvCvRectToBoundingBox_{DataType}

Преобразуйте vector<cv::Rect> к M-by-4 mxArray из ограничительных рамок

ocvMxArrayToSize_{DataType}

Преобразуйте с 2 элементами mxArray к cv::Size

ocvMxArrayToImage_{DataType}

Преобразуйте упорядоченный по столбцам mxArray к упорядоченному по строкам cv::Mat для изображения

ocvMxArrayToMat_{DataType}Преобразуйте упорядоченный по столбцам mxArray к упорядоченному по строкам cv::Mat для стандартной матрицы
ocvMxArrayFromImage_{DataType}

Преобразуйте упорядоченный по строкам cv::Mat к упорядоченному по столбцам mxArray для изображения

ocvMxArrayFromMat_{DataType}Преобразуйте упорядоченный по строкам cv::Mat к упорядоченному по столбцам mxArray для стандартной матрицы.
ocvMxArrayFromVector

Преобразуйте числовой vectorT к mxArray

ocvMxArrayFromPoints2f

Преобразует vector<cv::Point2f> к mxArray

Примечание

Описанные ниже Функции графического процессора будут удалены в будущем релизе.

Функция графического процессораОписание
ocvMxGpuArrayToGpuMat_{DataType}

Создайте cv::gpu::GpuMat от gpuArray

ocvMxGpuArrayFromGpuMat_{DataType}

Создайте gpuArray от cv::gpu::GpuMat

Создайте свои собственные файлы MEX OpenCV

Вызовите mxArray функционируйте со своим исходным файлом.

mexOpenCV yourfile.cpp

Для файлов MEX создания справки, в командной строке MATLAB, введите:

help mexOpenCV

Запустите примеры OpenCV

Каждая подпапка в качестве примера в Интерфейсе Computer Vision Toolbox для OpenCV в пакете поддержки MATLAB содержит все файлы, необходимо запустить пример. Чтобы запустить пример, необходимо вызвать mexOpenCV функция с одним из предоставленных исходных файлов.

 Запустите пример сравнения с шаблонами

 Запустите приоритетный пример детектора

 Запустите ориентированный FAST и вращаемый BRIEF (ORB) пример детектора

Смотрите также

|

Похожие темы