2011-03-02 101 views
1

我的web應用程序允許用戶上傳他們的圖像進行查看,並且我想在顯示圖像之前壓縮圖像。那裏有什麼好的有損圖像壓縮算法。我在這裏研究和這頁http://www.imageoptimizer.net/Pages/Home.aspx,是否完美。我的圖像是670KB,壓縮後只有150KB,質量幾乎相同。Java:有損圖像壓縮算法

+0

JPEG確實包含了一些非常嚴肅的數學思想來實現它,你不會說失去或不是質量的任何事情。 JPEG確實有很多屬性需要調整。 imageoptimizer是一個衆所周知的西裝W /相當多的優化,但他們仍然返回JPEG。 – bestsss 2011-03-02 20:42:01

+0

@bestsss:對不起,模糊。我試圖完成的是壓縮希望不會降低圖像太多,並減少它的大小。我想我會嘗試遵循@Uriah建議並嘗試'javax.io'。謝謝 – 2011-03-02 22:06:37

+0

@bestsss這是一個很好的觀點,可以通過刪除不感興趣的數據來縮小圖像的文件大小。對於來自數碼相機的大多數普通的JPEG圖像,您可能會在EXIF數據中有10-30K。 Pro圖像可能包含ICC配置文件,其大小可能爲幾百K. Photoshop添加的XMP數據也可能很重量級。 – 2011-03-03 05:39:43

回答

3

JPEG是攝影圖像事實上的壓縮算法。

對於線條藝術類型的圖像,通常使用PNG或GIF格式。

+0

請原諒我所說的聽起來很愚蠢,但我上面顯示的網站實際上將JPEG圖像的大小從670KB減小到150KB。有沒有像那樣的開源算法? – 2011-03-02 20:29:34

+0

JPEG過濾器具有「質量」的概念 - 您可以調整怪胎旋鈕以獲得最佳質量與應用程序的大小壓縮級別。您可以使用現有的JPEG圖像(技術上爲JFIF容器)並再次應用JPEG壓縮。 Java中有很多JPEG實現 - 其中一些比其他更好。大多數人發現'javax.imageio'就足夠了。更進一步,你可以研究分形壓縮技術。 – 2011-03-02 20:48:11

+0

謝謝。我現在正在研究'javax.imageio'。希望這是我想要的。 +1 – 2011-03-02 22:07:15