Преобразовать основной столбец mxArray в строку major cv::Mat для общей матрицы
#include "opencvmex.hpp"
void ocvMxArrayToMat_double(const mxArray *in, cv::Mat &out);
void ocvMxArrayToMat_single(const mxArray *in, cv::Mat &out);
void ocvMxArrayToMat_uint8(const mxArray *in, cv::Mat &out);
void ocvMxArrayToMat_uint16(const mxArray *in, cv::Mat &out);
void ocvMxArrayToMat_uint32(const mxArray *in, cv::Mat &out);
void ocvMxArrayToMat_int8(const mxArray *in, cv::Mat &out);
void ocvMxArrayToMat_int16(const mxArray *in, cv::Mat &out);
void ocvMxArrayToMat_int32(const mxArray *in, cv::Mat &out);
void ocvMxArrayToMat_bool(const mxArray *in, cv::Mat &out);
cv::Ptr<cv::Mat> ocvMxArrayToMat_double(const mxArray *in, const bool copyData = true);
cv::Ptr<cv::Mat> ocvMxArrayToMat_single(const mxArray *in, const bool copyData = true);
cv::Ptr<cv::Mat> ocvMxArrayToMat_uint8(const mxArray *in, const bool copyData = true);
cv::Ptr<cv::Mat> ocvMxArrayToMat_uint16(const mxArray *in, const bool copyData = true);
cv::Ptr<cv::Mat> ocvMxArrayToMat_uint32(const mxArray *in, const bool copyData = true);
cv::Ptr<cv::Mat> ocvMxArrayToMat_int8(const mxArray *in, const bool copyData = true);
cv::Ptr<cv::Mat> ocvMxArrayToMat_int16(const mxArray *in, const bool copyData = true);
cv::Ptr<cv::Mat> ocvMxArrayToMat_int32(const mxArray *in, const bool copyData = true);
cv::Ptr<cv::Mat> ocvMxArrayToMat_uint8(const mxArray *in, const bool copyData = true);
inУказатель на структуру 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 объект.
false - Нет копий данных из mxArray в Mat объект. Функция создает новый Mat обертка и использует ее для указания на mxArray данные. Поскольку OpenCV основан на строках, а MATLAB - на столбцах, столбцы mxArray стать рядами Mat объект. Если изображение 2-D, то 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 Matrix API, C MEX файловые приложения