【发布时间】:2019-05-05 10:05:14
【问题描述】:
图像被分解为图片元素(像素),这意味着当我检查例如的属性时存储在磁盘上的 JPEG 图像我可以看到例如532 × 1051 pixels 表示宽度为532 高度为1051。
它还在文件的属性中说颜色模型是 RGB,这意味着每个通道 1 个字节 = 3 个字节来描述颜色。
所以我会假设图像的实际大小是:532x1051x3= 1.67MB
但我看到的是报告的实际文件大小为 45KB。
那么这是否意味着1.67MB 是内存中图像的大小?
我也将其视为元数据的一部分:Image DPI: 96 pixels/inch。
这些信息究竟是用来做什么的?
【问题讨论】:
-
在您打印文件之前,
dpi在很大程度上是无关紧要的 - 那时它仅表示打印的宽度为 5.5" (532/96)。45kB 的出现是因为 JPEG 压缩了您的图像。 -
@MarkSetchell:所以当我们在任何程序中查看图像时,
96 pixes/inch根本没有被使用? -
有些程序确实使用它。一些摄影比赛坚持这样做。我不知道为什么。最终,您拥有的像素数量将决定您拥有的质量 - 如果您的图像中只有 2x2 像素,那么拥有 360 dpi 是没有用的。我宁愿有 64 dpi 的 8000x6000 像素。
-
顺便说一句,内存中的 1.67MB 也不完全正确。程序可以选择以 2 字节
unsigned short或 4 字节int32或 8 字节float64或其他方式存储 R、G 和 B 像素。一些程序存储为 RB565,这意味着所有三个 RGB 分量总共 2 个字节。 -
图像文件不一定存储像素值(取决于扩展名)。一些扩展存储其他类型的信息,基于这些信息可以计算原始图像的估计值。这会导致较小的文件大小,尽管通常质量较差。尝试将大的、高质量的 png 图像转换为 jpeg。当你放大时,你会看到很多奇怪的(明显错误的)图像伪影,但它只有一部分大小。至于问题;不,当您将其逐个像素存储在内存中时,它不会具有相同的大小,因为这是计算出的估计值/恢复值。
标签: image image-processing resolution screen-resolution