将RGB数组转换为Mat(OpenCv)

rap*_*ini 5 c rgb opencv mat

我一直在尝试[R,G,B,..]使用opencv 转换Mat对象中的数组.但是返回错误的数据,有人知道为什么吗?

double data[12] = {0,0,255,0,0,255,0,0,255,0,0,255};
Mat src =  Mat(2,2, CV_16UC3, data);
Run Code Online (Sandbox Code Playgroud)

并返回:

M = 
 [0, 0, 0, 0, 0, 0;
  0, 0, 0, 0, 57344, 16495]
Run Code Online (Sandbox Code Playgroud)

编辑:

解决了!使用uchar代替double,以及CV_8UC3

ber*_*rak 7

我想,你想:

uchar data[12] = {0,0,255,0,0,255,0,0,255,0,0,255};
Mat src =  Mat(2,2, CV_8UC3, data);
Run Code Online (Sandbox Code Playgroud)

(全红色,2x2 rbg图像)