Преобразуйте столбец главный mxArray, чтобы расположить в ряд главный cv::Mat для типичной матрицы
#include "opencvmex.hpp"
освободите ocvMxArrayToMat_double (const mxArray *в, условная цена:: Циновка &out);
освободите ocvMxArrayToMat_single (const mxArray *в, условная цена:: Циновка &out);
освободите ocvMxArrayToMat_uint8 (const mxArray *в, условная цена:: Циновка &out);
освободите ocvMxArrayToMat_uint16 (const mxArray *в, условная цена:: Циновка &out);
освободите ocvMxArrayToMat_uint32 (const mxArray *в, условная цена:: Циновка &out);
освободите ocvMxArrayToMat_int8 (const mxArray *в, условная цена:: Циновка &out);
освободите ocvMxArrayToMat_int16 (const mxArray *в, условная цена:: Циновка &out);
освободите ocvMxArrayToMat_int32 (const mxArray *в, условная цена:: Циновка &out);
освободите ocvMxArrayToMat_bool (const mxArray *в, условная цена:: Циновка &out);
условная цена:: Ptr <условная цена:: Циновка> ocvMxArrayToMat_double (const mxArray *в, const bool copyData = верный);
условная цена:: Ptr <условная цена:: Циновка> ocvMxArrayToMat_single (const mxArray *в, const bool copyData = верный);
условная цена:: Ptr <условная цена:: Циновка> ocvMxArrayToMat_uint8 (const mxArray *в, const bool copyData = верный);
условная цена:: Ptr <условная цена:: Циновка> ocvMxArrayToMat_uint16 (const mxArray *в, const bool copyData = верный);
условная цена:: Ptr <условная цена:: Циновка> ocvMxArrayToMat_uint32 (const mxArray *в, const bool copyData = верный);
условная цена:: Ptr <условная цена:: Циновка> ocvMxArrayToMat_int8 (const mxArray *в, const bool copyData = верный);
условная цена:: Ptr <условная цена:: Циновка> ocvMxArrayToMat_int16 (const mxArray *в, const bool copyData = верный);
условная цена:: Ptr <условная цена:: Циновка> ocvMxArrayToMat_int32 (const mxArray *в, const bool copyData = верный);
условная цена:: Ptr <условная цена:: Циновка> ocvMxArrayToMat_uint8 (const mxArray *в, const bool copyData = верный);
inУказатель на struct MATLAB®, mxArray, имея столбец главные данные. Данными может быть n - матрицы канала. Поддерживаемые типы данных:
real_T (double) | uint8_T (uint8) | uint32_T (uint32) | int16_T (int16) |
real32_T (single) | uint16_T (uint16) | int8_T (int8) | int32_T (int32) |
copyDataБулев флаг, чтобы скопировать данные от mxArray до объекта Mat.
true (значение по умолчанию) — Функция транспонирует и чередования (для изображений RGB) столбец главные данные mxArray в строку главный объект cv::Mat.
ложь Никакие данные не копируют от mxArray до объекта Mat. Функция создает новую обертку Mat и использует ее, чтобы указать на данные mxArray. Поскольку OpenCV основан на строке, и MATLAB основан на столбце, столбцы mxArray становятся строками объекта Mat. Если изображение 2D, то copyData является false.
outСсылка на OpenCV cv::Mat со строкой главные данные.
Функции, которые устанавливают copyData, возвращают интеллектуальный указатель OpenCV (cv::Ptr) в объект cv::Mat.
Функция ocvMxArrayToMat_{DataType} применяется к двум реализациям C++. Один набор возвращает void, и другой набор возвращает интеллектуальный указатель OpenCV. Функции, которые возвращают void, перераспределяют память для cv::Mat в случае необходимости.
ocvMxArrayToMat_{DataType} транспонирует и чередует столбец главные данные mxArray в строку главный cv::Mat. Это матричное преобразование является типичной стандартной программой для любого количества каналов.
mxArray, ocvMxArrayToImage_{DataType}, ocvMxArrayFromMat_{DataType}, C матричный API (MATLAB), приложения файла MEX на C (MATLAB)