默认情况下cv::imread
以BGR顺序将数据读取到cv::Mat
。我更喜欢RGB顺序。我每次看图像都会进行转换:
cv::Mat image;
image = cv::imread("...",CV_LOAD_IMAGE_COLOR);
if(!image.data )
...
cvtColor(image, image, CV_BGR2RGB);
有没有办法告诉Mat
或imread
颜色顺序应该不同?
类似的东西:
Cv::Mat image;
image.setOrder(CV_RGB) // ???
image = cv::imread("...",CV_LOAD_IMAGE_COLOR);
答案 0 :(得分:1)
不,事实上,imread()
或定义渠道订单的可能性没有这种可配置性。
我建议你将图像读取和通道混合包装在一个小的效用函数中。