Apakah Anda mengetahui alat apa pun (lebih disukai baris perintah) untuk mengoptimalkan JPEG secara otomatis dan tanpa kehilangan yang dapat saya integrasikan ke dalam lingkungan pembuatan kami? Untuk PNG saat ini saya menggunakan PNGOUT , dan umumnya menghemat sekitar 40% bandwidth / ukuran gambar.
Paling tidak, saya ingin alat yang dapat menghapus metadata dari JPG - Saya melihat kasus aneh di mana saya mencoba membuat thumbnail dari sebuah foto, dan tidak bisa membuatnya lebih kecil dari 34 kB. Setelah menyelidiki lebih lanjut, saya menemukan bahwa data EXIF masih menjadi bagian dari gambar, dan thumbnail berukuran 3 kB setelah menghapus metadata.
Dan di luar itu - apakah mungkin untuk lebih mengoptimalkan JPG tanpa kehilangan? Pengoptimal PNG mencoba berbagai strategi kompresi, inisialisasi acak pengkodean Huffmann, dll.
Saya sadar bahwa sebagian besar penghematan berasal dari parameter kualitas JPEG, dan ini merupakan ukuran yang agak subjektif. Saya hanya mencari alat yang dapat dijalankan sebagai langkah pembuatan dan yang memeras beberapa byte dari gambar tanpa kerugian.
sumber
Jawaban:
Saya menggunakan libjpeg untuk operasi lossless. Ini berisi alat baris perintah jpegtran yang dapat melakukan semua yang Anda inginkan. Dengan opsi baris perintah,
-copy none
semua metadata dihilangkan, dan-optimize
melakukan pengoptimalan lossless dari kompresi Huffmann. Anda juga dapat mengonversi gambar ke mode progresif dengan-progressive
, tetapi itu dapat menyebabkan masalah kompatibilitas (adakah yang tahu lebih banyak tentang itu?)sumber
Saya menulis GUI untuk semua alat pengoptimalan gambar yang dapat saya temukan , termasuk MozJPEG dan
jpegoptim
yang mengoptimalkan tabel Huffman, pemindaian progresif, dan (opsional) menghapus metadata yang tidak terlihat.Jika Anda tidak memiliki Mac, saya juga memiliki antarmuka web dasar yang berfungsi di semua platform.
sumber
[HANYA JENDELA]
RIOT (Alat Pengoptimalan Gambar Radikal) Ini adalah alat pengoptimalan gambar terbaik yang pernah saya temukan!
http://luci.criosweb.ro/riot/
Anda dapat dengan mudah mendapatkan gambar 10MB hingga 800KB melalui sub-sampling. Ini mendukung PNG, GIF, dan JPEG. Itu bahkan terintegrasi ke dalam menu konteks sehingga Anda dapat mengirim gambar langsung ke sana. Memungkinkan Anda untuk memutar, mengubah ukuran, mengompres ke KB tertentu, dan banyak lagi. Juga memiliki plugin untuk GIMP dan IrfanView dan lainnya.
Ada juga DLL yang tersedia jika Anda ingin memasukkannya ke dalam program Anda sendiri atau program java script / c ++.
Alternatif lain adalah http://pnggauntlet.com/ PNGGAUNTLET membutuhkan waktu lama tetapi itu melakukan pekerjaan yang cukup baik.
[HANYA JENDELA]
sumber
Sebuah layanan baru bernama JPEGmini memberikan hasil yang luar biasa.
Sayang sekali itu hanya online.Edit : Ini tersedia untuk Windows dan Mac sekarangsumber
Mencoba sejumlah saran di atas - Saya pribadi setelah kompresi lossless.
Gambar sampel saya memiliki ukuran asli 67.737 byte.
Menggunakan kraken.io, turun menjadi 64.718 Menggunakan jpegtran, turun menjadi 64.718 Menggunakan yahoo smush-it, turun menjadi 61.746 Menggunakan imagemagick (-strip), turun menjadi 65.312
Opsi smush.py terlihat menjanjikan, tetapi penginstalannya terlalu rumit untuk saya lakukan dengan cepat
jpegrescan terlihat menjanjikan juga, tetapi tampaknya unix dan saya menggunakan windows
jpegmini BUKAN lossless, tapi saya tidak bisa membedakannya (turun menjadi 22.172)
Aplikasi jpegstripper Altrasoft alas tidak berfungsi di windows 7 saya
jpegoptim bukan windows - tidak baik untuk saya
Riot (menjaga kualitas pada 100%) menurunkannya menjadi 63.416 dan dengan subsampling chroma disetel ke tinggi, menurunkannya menjadi 61.912 - Saya tidak tahu apakah itu lossless atau tidak, dan saya pikir itu terlihat lebih ringan dari aslinya .
Jadi putusan saya yahoo smushit kalau harus lossless
sumber
Saya akan mencoba Imagemagick. Ini memiliki banyak opsi baris perintah, gratis dan memiliki lisensi yang bagus. http://www.imagemagick.org
Sepertinya ada opsi bernama Strip yang dapat membantu Anda: http://www.imagemagick.org/script/command-line-options.php#strip
sumber
ImageOptim sangat apik. Opsi baris perintah yang diposting oleh penulis akan mengisi GUI dan menunjukkan kemajuan. Saya menggunakan jpegtran untuk mengoptimalkan dan mengubah ke progresif, lalu ImageOptim untuk pengoptimalan progresif lebih lanjut dan untuk jenis file lainnya.
Penggunaan kembali kode skrip juga ditemukan di forum ini (semua file diganti di tempat):
jpegtran.dll
ImageOptim
sumber
Jika ada yang melihat, saya telah menulis versi offline Yahoo's Smush.it. Ini akan mengoptimalkan pngs, jpgs dan gifs (animasi dan statis) tanpa kehilangan:
http://github.com/thebeansgroup/smush.py
sumber
Anda dapat menggunakan jpegoptim yang akan mengoptimalkan file jpeg secara default. The
--strip-all
pilihan strip semua info tambahan tertanam. Anda juga dapat menentukan mode kerugian dengan--max
sakelar yang berguna ketika Anda memiliki gambar yang disimpan dengan pengaturan kualitas yang sangat tinggi, yang tidak diperlukan untuk mis. isi web.Anda mendapatkan pengoptimalan yang serupa dengan jpegtran (lihat jawaban oleh OutOfMemory) tetapi jpegoptim tidak dapat menyimpan ke jpeg progresif.
sumber
Saya telah menulis alat baris perintah yang disebut 'picopt' (mirip dengan ImageOptim) yang menggunakan program eksternal untuk mengoptimalkan JPEG, PNG, GIFS, GIF animasi, dan bahkan konten arsip buku komik (CBR / CBZ).
Ini cocok untuk digunakan dengan homebrew di sistem OS X atau Linux di mana Anda telah menginstal alat seperti jpegrescan, jpegtran, optipng, gifsicle, dll.
https://github.com/ajslater/picopt
sumber
Saya juga akan merekomendasikan ImageMagick . Ini memiliki opsi baris perintah untuk menghapus metadata EXIF
Ada banyak alat lain di luar sana yang melakukan hal yang sama.
Sejauh mengompresi ulang JPEG, jangan. JPEG awalnya lossy, jadi segala bentuk kompresi ulang hanya akan merusak kualitas gambar. Namun, jika Anda memiliki gambar yang dienkode tanpa kehilangan, beberapa pembuat enkode bekerja lebih baik daripada yang lain. Saya telah memperhatikan bahwa JPEG yang dilakukan dengan Photoshop secara konsisten terlihat lebih baik daripada ketika dikodekan dengan ImageMagick (meskipun ukuran file yang sama) karena alasan yang rumit . Selain itu (dan ini relevan bagi Anda), saya tahu bahwa setidaknya Photoshop dapat menyimpan JPEG sebagai dioptimalkan yang berarti mereka menjatuhkan kompatibilitas dengan beberapa hal yang mungkin tidak Anda pedulikan untuk menghemat beberapa KB. Selain itu, pastikan Anda tidak memiliki profil warna yang disematkan dan Anda mungkin dapat menyimpan beberapa KB lagi.
sumber
Saya akan merekomendasikan menggunakan http://kraken.io Ini adalah webapp ultra-cepat yang akan mengoptimalkan file PNG dan JPEG Anda jauh lebih baik daripada smush.it.
sumber
Saya merekomendasikan untuk menggunakan JpegOptim, gratis dan sangat bagus, Anda dapat menentukan kualitas, ukuran yang Anda inginkan ... Dan mudah digunakan dalam baris perintah.
JpegOptim
sumber
Bolehkah saya merekomendasikan ini untuk hampir transparan:
Menggunakan ImageMagick 's
convert
danjpeg-recompress
dari jpeg-arsip .Keduanya open-source dan bekerja di Windows, Mac dan Linux. Anda mungkin ingin mengubah opsi di atas untuk ekspektasi kualitas yang berbeda.
sumber