mBGR.convertTo(mfloat_BGR, CV_32F, 1.0/255);
分离RGB通道
cv::Mat(RGB) 的排列方式是
RGBRGBRGBRGB
RGBRGBRGBRGB
RGBRGBRGBRGB
在使用过程中可能需要转成一下格式
RRRRRRRRRRRR
GGGGGGGGGG
BBBBBBBBBBB
这个时候就可以使用cv::split() 函数。
cv::Mat mat(HEIGHT, WIDTH, CV_8UC3)
cv::Mat rgbChannnels[3]
split(mfloat_BGR,rgbChannnels)
int singleChannelSize = 500* 500
float* yolo_rgb_plane = (float *)malloc(sizeof(float) * 500* 500* 3)
for(int i = 0
float *singleChannel = (float *)rgbChannnels[i].data
memcpy(yolo_rgb_plane+singleChannelSize*i, singleChannel, singleChannelSize * sizeof(float))
复制代码