图像转换:RGBA到RGB

时间:2010-03-03 06:49:59

标签: c++ rgb

假设我有来自帧抓取器的RGBA(32位)输出,未使用alpha通道(由帧抓取器填充时保留值),是否有任何有效的RGB转换方法(24位)?

我正在处理5 MegaPixels流媒体图像,所以速度也很重要。 请记住,alpha通道中的数据可以被丢弃。

2 个答案:

答案 0 :(得分:3)

只需复制RGB字节并丢弃Alpha通道(1个字节)。可能的优化将是特定于硬件的。例如,英特尔在IPP library中有特殊的颜色转换功能。

答案 1 :(得分:2)

只需复制数据并跳过未使用的alpha字节。

如果速度对您很重要,您可能需要使用SSE或MMX并使用内置的位混洗指令。这通常比普通的c代码快一点。

500万像素听起来不像那么多数据,除非你必须以100fps的速度完成。