如何转换为ARGB格式

时间:2013-08-14 19:05:01

标签: c++ opencv rgb argb

我正在尝试将RGB图像转换为ARGB格式。在openCV中有没有办法解决这个问题?据我所知,可以将图像转换为RGBA,但我不确定ARGB。

这就是我目前正在做的事情:

        cv::Mat argb(myImage.rows, myImage.cols, CV_8UC4);
        cv::Mat alpha(myImage.rows, myImage.cols, CV_8UC1);
        cv::Mat in[] = { myImage, alpha };
        int from_to[] = { 0,1,  1,2,  2,3,  3,0 };
        cv::mixChannels( in, 2, &argb, 1, from_to, 4 );

myImage是8uc3格式,这是我的输入图像。但我需要将格式更改为另一个应用程序的ARGB。

1 个答案:

答案 0 :(得分:0)

据我所知cvtColor函数不提供这样的转换,所以你需要自己编写 - 看看cvtColor函数的源代码,你的转换将与CV_BGR2RGB非常相似 - 你只需要切换第一个和最后一个频道。