强制cv :: Mat使用RGB数据顺序

时间:2016-07-22 12:20:48

标签: c++ opencv

默认情况下cv::imread以BGR顺序将数据读取到cv::Mat。我更喜欢RGB顺序。我每次看图像都会进行转换:

cv::Mat image;
image = cv::imread("...",CV_LOAD_IMAGE_COLOR);
if(!image.data )
    ...
cvtColor(image, image, CV_BGR2RGB);

有没有办法告诉Matimread颜色顺序应该不同? 类似的东西:

Cv::Mat image;
image.setOrder(CV_RGB) // ???
image = cv::imread("...",CV_LOAD_IMAGE_COLOR);

1 个答案:

答案 0 :(得分:1)

不,事实上,imread()或定义渠道订单的可能性没有这种可配置性。

我建议你将图像读取和通道混合包装在一个小的效用函数中。