2

由于我正在处理图像并提高应用程序的性能,因此需要在不损失质量的情况下减小图像数据的大小。

例如:如果原始缓冲图像大小为 50kb,尺寸 1024*768 应用缩小 alog 后:尺寸 < 30kb,尺寸 1024*768 与原始图像质量相同。

您能否告诉我如何在不降低质量的情况下减少缓冲图像。

谢谢和问候迷你。

4

2 回答 2

1

除了可用的标准无损压缩之外,我想,你不能做很多事情。

但是:您使用的是什么颜色深度?图像是否真的有必要以 24 位提供?那里有非常好的抖动算法,可以将颜色深度降低到调色板。通常你可以取得很好的效果。这肯定取决于您获得的图像源以及客户期望的结果。

于 2013-09-12T10:49:51.453 回答
1

您需要定义质量度量 :-) 图像可能会以人类观察者不会看到任何质量损失的方式进行压缩,即使图像数据略有变化。这是有损压缩。在无损压缩中,您将能够逐位重建原始数据。

无损压缩

通过“智能重新打包数据”工作。这里的经典算法是Huffman CodingRun-Length Coding.png格式或某些风格的.tiff无损存储图像。

不幸的是,无损编码可以做多少是有限制的:数据携带一定数量的信息,这对您的文件可以变得多小设置了一个下限。

有损压缩

通过将数据重新排序为“重要”和“不重要”部分来工作,并删除不重要的部分。这种重新排序的示例是Vector QuantizationDiscrete Cosine Transform。最流行的有损图像压缩格式是.jpeg

在有损压缩中,文件大小可以变得多小没有严格的下限。但是,存在一个阈值,人类观察者开始看到压缩伪影。尽管如此,对于许多图像类型,有损算法比无损算法获得更小的文件大小,而质量没有明显下降。

于 2013-09-12T11:05:39.213 回答