我试图找出图片是由哪个 MCU(8x8、16x8 和 16x16)制成的。为此,我解析了存储色度二次采样因子的帧开始 (SOFn) 标记。我找到了以下内容:
Number of Img components = 3
Component[1]: ID=0x01, Samp Fac=0x22 (Subsamp 1 x 1), Quant Tbl Sel=0x00 (Lum: Y)
Component[2]: ID=0x02, Samp Fac=0x11 (Subsamp 2 x 2), Quant Tbl Sel=0x01 (Chrom: Cb)
Component[3]: ID=0x03, Samp Fac=0x11 (Subsamp 2 x 2), Quant Tbl Sel=0x01 (Chrom: Cr)
我对如何解释它感到困惑。读到这里我开始相信 1x1 代表 4:4:4 采样,因此导致 8x8 像素 MCU,2x1 代表 4:2:2 -> 16x8 像素 MCU,2x2 代表 4:2:0 -> 16x16 pixl MCU .
每个采样率都决定了组件如何存储在熵编码数据中,从而导致 MCU。但是现在每个分量(Y、Cb、Cr)都有自己的子采样率。
如何解释我从 JPEG 标记中读取的日期,以判断整个图像中使用了哪个 MCU?