2012-08-01 68 views
2

我有一个简单的问题,任何知道这个答案的人...我正在制作一个社交照片共享应用程序,我想在应用程序中保存足够大的图像,以便它可以使用在一个全屏的网站应用程序前进。想想... Facebook的。iOS vs Photoshop JPEG压缩

我一直在iOS上玩JPEG压缩,还用Photoshop CS5测试大小和质量。这两个人的结果非常不同。在Photoshop中,即使在高压缩情况下,图像也非常清晰,并保留了很多细节。在iOS中,一旦压缩率跌破0.5左右,看起来很可怕和块状。几乎看起来像是在某个魔术压缩数字之后图像质量下降了。

使用photoshop,我使用“保存为Web”选项和iOS我使用UIImageJPEGRepresentation(图像,0.6)。这两者有巨大差异吗?并非所有的JPEG都使用相同类型的压缩?

我真的不知道在这个世界上的图像处理。任何人都可以告诉我什么是将图像压缩到保持质量并保持带宽友好的好方法?我希望我的图像长度保持在1280像素左右。

欢迎任何关于在网络上移动JPEGS的方法或更明智的方法。谢谢。

回答

0

如果您的应用正在从iOS设备生成图像,则应继续使用UIImageJPEGRepresentation。我认为比较UIKit JPEG压缩和Photoshop的效率并不高。

我会发现一个JPEG压缩级别,您对使用可用的UIKit API感到满意并且随之而去。当您每秒提供超过300万张图片时,可能需要查看优化,但在此之前将其留给UIKit。

+0

所以我问这个问题后发现了很多信息。但是你是对的,在UIKit之外投入时间将会花费太多的工作。由于我正在构建MVP - 现在想想这个也没有意义。我已经解决了代码中的错误,并为我的应用程序找到了一个gd质量值。我正在用https://github.com/BradLarson/GPUImage查看一个Objective-C缩减采样过滤器 - 如果我得到任何不同的结果,将会发布。无论如何欣赏答案。干杯! – dineth 2012-09-05 05:14:04

+0

@dineth GPUImage是一个用于更高级图像处理的好库,绝对是一个很好的资源。 – Jessedc 2012-09-05 05:35:25