我有一个m x n个浮点数据值的矩阵,我想将彩虹色图应用到彩色图像然后存储为彩色图像。
数据值几乎是随机的。
用于存储此类图像的理想图像格式是什么? 我希望生成的图像文件尽可能小,而不会丢失视觉信息。
答案 0 :(得分:1)
取决于图像的用途。 WebP具有惊人的无损功能,但支持不是很好。 IOS和大多数浏览器不支持它,虽然后期Android和Chrome确实支持它。对于通用无损格式,您应该使用PNG。高质量设置的JPEG也很好,取决于您丢失信息的含义。如果您需要准确的像素精确颜色值,您需要无损并且无法使用JPG。
要使图像尽可能小,可以使用较低的位深度。默认情况下,大多数PNG文件是32位,即24位颜色和8位透明度(alpha通道)。如果你不需要透明度,你可以转储alpha通道并转到24位。如果您不需要那么多颜色,请使用较低的位深度。 16位将为您提供大多数用途所需的大多数颜色。您可以拍摄超过16位的图像并将其映射到16位,对于大多数目的而言,您无法分辨。它取决于图像中出现的颜色数量,即使它们是随机的。在8位及以下PNG文件使用颜色查找表,因此颜色可以是随机的,但如果少于256,或者如果你可以使用一些重新映射去8位PNG。如果少于128种颜色,请将7位一直下降到1位。
此外,您还可以通过剥离元数据和其他信息来节省大量的内容。有许多开源工具可以做到这一点。