1

我一直在努力解决将图像保存为 jpeg 质量的问题。作为我学位的一个项目,我正在制作一个应用程序,我在 facebook 上上传图像。

我有一个漂亮的彩色图像,我将像素值打乱以获得映射图像。然后我把它上传到脸书上。当我下载并将像素移回原始图像时,它的质量损失太大了。

以下是原始、映射和检索的图像:

原来的 蒙面 检索图像

我尝试了许多策略,例如使用 png 文件,这些都有效。但是,目前,无论图像是什么,facebook 都会将其转换为 jpeg。因此,如果我将 maskedimage.png 上传到 facebook,它会将其转换为 .jpg 并丢失一些像素相关值,这最终不会给我正确的图像来检索原始图像。

我正在使用 PHP 和 facebook-php sdk。

请建议。
谢谢
-考尔

4

2 回答 2

3

你被困住了。JPEG是一种有损算法,它依赖于人类视觉特征来掩盖不准确之处。通过加扰像素,您改变了损失的性质,使其不再不可见。

于 2012-08-06T20:32:38.517 回答
0

这主要不是关于 JPEG 有损;这是关于 Facebook 强制图像重新压缩,即使您在上传时选中“高质量”。

您可以做的最好的事情是将源图像分辨率加倍,对于纯色,请尝试引入噪声。此GD.SE 问题中的详细信息

请注意,至少自2012 年 6 月以来,上传 <100kb 的图像的技巧不再有效。

于 2012-11-28T08:22:27.453 回答