繁体   English   中英

加载后图像尺寸增加

[英]Image size increases after loading

我有一个RGB JPEG图像,其重量约为11 MB,分辨率为7680 x4320。我使用uchar4数组将其存储在RAM中。 sizeof(uchar4)是4个字节,这是逻辑上的。 不难计算出我使用的数组大小将是4 x 7680 x 4320 = 132710400字节=大约126 MB。 因此,当图像存储在硬盘驱动器上时,其重量仅为11 MB,而加载到RAM中后的重量仅为126 MB。

因此,实际上您的问题是,为什么图像大小在存储在磁盘上时会变小,因为内存中的大小实际上是您所期望的,对吗?

不幸的是,您没有告诉我们用于存储图像的文件格式,但是基本上所有常见的图像格式都不按原样存储像素值。 他们首先应用了压缩算法。 某些格式(例如PNG或GIF)使用无损压缩,而其他格式(例如JPEG)则使用有损压缩,这意味着在存储图像时,图像质量会稍差一些。 但是,这些格式允许更好的压缩。

所有压缩算法都取决于以下事实:图像像素之间(统计上)并不相互独立。 附近的像素通常是相关的。 此相关性用于减少数据量。 因为不同的图像通常具有不同的相关性,所以即使像素数相同,图像文件的大小也会变化。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM