由于我正在处理图像并提高应用程序的性能,因此需要在不降低质量的情况下缩小图像数据的大小。
例如: 如果原始缓冲图像 大小是50kb, 尺寸1024 * 768 申请减少alog后: 尺寸是< 30KB, 尺寸1024 * 768,质量与原始图像相同。
请您告诉我如何在不降低质量的情况下减少缓冲图像。
谢谢&问候 迷你。
答案 0 :(得分:1)
除了可用的标准无压缩按压之外,我想,你做不了多少。
但: 你使用什么颜色深度?是否真的有必要,图像是24位?有非常好的抖动算法,它会将颜色深度减少到颜色调色板。通常你可以取得很好的效果。这肯定取决于您获得的图像作为来源以及客户期望的结果。
答案 1 :(得分:1)
您需要定义您的质量度量:-)即使图像数据略有变化,图像也可能以人类观察者看不到任何质量损失的方式进行压缩。这是有损压缩。在无损压缩中,您将能够为位重建原始数据位。
通过“智能地重新打包数据”来工作。这里的经典算法是Huffman Coding或Run-Length Coding。 .png格式或某些版本的.tiff无损存储图像。
不幸的是,无损编码可以做多少是有限的:数据带有一定数量的信息,这会对文件的小小产生一个下限。
通过将数据重新排序为“重要”和“不重要”部分,并删除不重要的部分。此重新排序的示例包括Vector Quantization或Discrete Cosine Transform。有损图像压缩最流行的格式是.jpeg。
在有损压缩中,文件大小的小小没有严格的下限。然而,存在人类观察者开始看到压缩伪像的阈值。尽管如此,对于许多图像类型而言,有损算法比无损算法的文件大小更小,但质量没有明显下降。