3

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

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

4

2 回答 2

3

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

于 2010-03-03T07:20:37.557 回答
3

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

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

除非您必须以 100fps 的速度进行,否则 5 兆像素听起来并不像那么多数据。

于 2010-03-03T10:26:56.197 回答