Encoding 使用不完全MCU填充方法的JPEG
根据这个话题的评论,我提出了一个问题,因为它还不清楚 我有一个9px(宽)x17px(高)RGB的位图。 目标是在垂直方向上使用减半色度子采样将其编码为jpeg,质量默认值(50)使用3个组件 对于垂直方向的减半色度子采样,我应该使用8x16(宽x高)的MCU 我要做的步骤:Encoding 使用不完全MCU填充方法的JPEG,encoding,jpeg,Encoding,Jpeg,根据这个话题的评论,我提出了一个问题,因为它还不清楚 我有一个9px(宽)x17px(高)RGB的位图。 目标是在垂直方向上使用减半色度子采样将其编码为jpeg,质量默认值(50)使用3个组件 对于垂直方向的减半色度子采样,我应该使用8x16(宽x高)的MCU 我要做的步骤: 将RGB转换为YCbCr图像(3个分量:Y、Cb、Cr) 做2分钟。Y、Cb和Cr组件的阵列更大,所以我可以创建完整的8x16 MCU块 在8x16的MCU块中拆分-->获取Y0Y1CbCr 8x8块 使用Y0Y1CbCr
欢迎提供任何建议。您在原始列表的第2步有点偏离了轨道。DCT处理不应有大于8x8的阵列。您需要将原始图像分为Y0、Y1、Cb、Cr的8x8块(四个唯一的8x8块)。从源图像中提取像素数据以填充这些块时,将填充缺失的像素(如果需要)。然后分别进行DCT变换,锯齿和哈夫曼编码。我没有使DCT大于8x8。如果我的映像是9x17 px,那么我的Y、Cb、Cr是一个9x17的数组。因此,我将这个数组变大(用一个值填充),并取8x8值(或其他值,具体取决于采样率)。那应该会得到同样的结果不?我发现不那样做比较容易。在我的编码器中,我同时进行颜色转换和二次采样,并将结果写入准备就绪的8x8 DCT块中。你的想法会更慢(写入/读取额外的临时数据),更难扩展到所有情况。填充MCU的常用方法是复制最后一行和最后一列。