我打算让用户上传300x300像素的JPEG压缩图片。有没有办法确定这样一张图片的最大文件大小?
我可以想象可以通过100质量下压缩随机噪声来尝试,但是是否存在理论上的最大值呢?
假设这张图片是完全无法压缩的随机噪声,它可能是每个像素3字节(24比特色彩)并留有元数据的余地吗?或者这样一张图片在压缩后会比原始图片更大吗?
我打算让用户上传300x300像素的JPEG压缩图片。有没有办法确定这样一张图片的最大文件大小?
我可以想象可以通过100质量下压缩随机噪声来尝试,但是是否存在理论上的最大值呢?
假设这张图片是完全无法压缩的随机噪声,它可能是每个像素3字节(24比特色彩)并留有元数据的余地吗?或者这样一张图片在压缩后会比原始图片更大吗?
对于最高质量的图像(Q = 100),每个彩色像素需要约8.25位 http://zh.wikipedia.org/wiki/JPEG#例子照片
因此,对于一个300x300
的图像,当Q=100
时,结果为(300 * 300) 像素 * 8.25 位/像素 = 742,500 位 = ~93 kB
还有无损的JPEG
编码模式,但是实际上几乎不使用 (第二段最后一句话)。但它们会有 RGB 典型的 24 位/像素
。