0

我是图像处理领域的新手。我使用过 bmp 图像,但目前我手头有一个问题,需要在进一步处理之前将图像转换为 YCbCr 颜色空间。我已阅读有关 YCbCr 和转换过程的信息,但问题是我不知道如何以图像格式存储 YCbCr 数据以及哪种图像格式将支持它。

我的意思是在 bmp 图像中 rgb 组件以 bgr 格式存储,字节应该是 4 的倍数等,但是 YCbCr 呢?它们是如何表示的?

如果这听起来很蹩脚,我很抱歉。我用谷歌搜索了一下,但问题是我认为我的方向不正确。实际上这是我的最后一个项目,我的时间不多了。

更新:虽然可以使用 tiff 和 jpeg,但实际上不需要将其存储在某些图像容器中。我通过将 rgb 转换为 YCbCr 处理它然后将其逐个像素地转换回 rgb 来解决它。

4

1 回答 1

0

这两种格式每个像素只需要三个字节。因此,只要您以某种未压缩的格式(例如 ppm)存储像素,就无需担心转换。写的时候,把 Y 放入 R,Cb int G 和 Cr 分别放入蓝色字节。当您读入这些值时,由您的程序来解释它们 - 大多数图像处理程序的默认解释是将它们视为 RGB,但您可以告诉它以 YCbCr 的形式读取它们

如果您选择以某种压缩格式(例如 jpeg)存储它,您读回的值可能与您存储的值不同,但决定取决于您需要的准确性。

于 2012-07-15T20:20:17.620 回答