exponenta event banner

ocvMxArrayToImage_{DataType}

Преобразовать основной столбец mxArray в строку major cv::Mat для изображения

Синтаксис C++

#include "opencvmex.hpp"
void ocvMxArrayToImage_double(const mxArray *in, cv::Mat &out);
void ocvMxArrayToImage_single(const mxArray *in, cv::Mat &out);
void ocvMxArrayToImage_uint8(const mxArray *in, cv::Mat &out);
void ocvMxArrayToImage_uint16(const mxArray *in, cv::Mat &out);
void ocvMxArrayToImage_uint32(const mxArray *in, cv::Mat &out);
void ocvMxArrayToImage_int8(const mxArray *in, cv::Mat &out);
void ocvMxArrayToImage_int16(const mxArray *in, cv::Mat &out);
void ocvMxArrayToImage_int32(const mxArray *in, cv::Mat &out);
void ocvMxArrayToImage_bool(const mxArray *in, cv::Mat &out);

cv::Ptr<cv::Mat> ocvMxArrayToImage_double(const mxArray *in, const bool copyData = true);
cv::Ptr<cv::Mat> ocvMxArrayToImage_single(const mxArray *in, const bool copyData = true);
cv::Ptr<cv::Mat> ocvMxArrayToImage_uint8(const mxArray *in, const bool copyData = true);
cv::Ptr<cv::Mat> ocvMxArrayToImage_uint16(const mxArray *in, const bool copyData = true);
cv::Ptr<cv::Mat> ocvMxArrayToImage_uint32(const mxArray *in, const bool copyData = true);
cv::Ptr<cv::Mat> ocvMxArrayToImage_int8(const mxArray *in, const bool copyData = true);
cv::Ptr<cv::Mat> ocvMxArrayToImage_int16(const mxArray *in, const bool copyData = true);
cv::Ptr<cv::Mat> ocvMxArrayToImage_int32(const mxArray *in, const bool copyData = true);
cv::Ptr<cv::Mat> ocvMxArrayToImage_bool(const mxArray *in, const bool copyData = true);

Аргументы

in

Указатель на структуру MATLAB ® ,mxArray, имеющие основные данные столбца, которые представляют изображение 2-D или 3-D. Поддерживаемые типы данных:

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 объект.

Описание

ocvMxArrayToImage_{DataType} применяется к двум реализациям C++. Один набор возвращает void а другой набор возвращает интеллектуальный указатель OpenCV. Возвращаемые функции void перераспределить память для cv::Mat при необходимости.

ocvMxArrayToImage_{DataType} транспонирует и перемежает основные столбцы mxArray данные в основную строку cv::Mat. ocvMxArrayToImage_{DataType} функция поддерживает 2-D и 3-D изображения.

Эти функции не являются общей процедурой преобразования матриц. Для 3-D изображений они учитывают, что формат OpenCV использует порядок BGR и манипулирует данными, чтобы соответствовать этому форматированию.

Представлен в R2015a