Bagaimana menemukan kualitas JPG?


16

Ketika saya menyimpan file JPG dengan GIMP, saya dapat menyesuaikan kualitas tempat saya menyimpannya, dari 0-100 (saya menggunakan 89). Sepertinya saya sudah menggunakan aplikasi untuk melihat apa nomor ini pada file yang disimpan tetapi jika saya lakukan saya tidak bisa seumur hidup saya mencari tahu apa itu. Ada saran tentang apa yang harus digunakan?


2
Hanya untuk memastikan bahwa itu diketahui: pengaturan kualitas aplikasi yang berbeda tidak dapat dibandingkan, secara umum: faqs.org/faqs/jpeg-faq/part1/section-5.html . Baik GIMP dan ImageMagick harus menggunakan skala kualitas IJG.
Michael Schumacher

Jawaban:


22

Setelah disimpan, Anda tidak dapat lagi mengetahui kualitasnya.

(Mengatur kualitas sambil menyimpan hanya memberitahu perangkat lunak berapa banyak kerugian yang Anda dapat diterima, tetapi sekali disimpan: apa yang hilang hilang. Anda perlu manusia untuk mengatakan jika sesuatu terlihat bagus.)

Hmmm, saya kira saya salah. Saya masih berpikir di atas adalah benar, tetapi ImageMagick 's identifymembuktikan saya salah?

identifikasikan -verbose myimage.jpg

Gambar: myimage.jpg
  Format: JPEG (Format Gabungan Kelompok Ahli Fotografi Bersama)
  Kelas: DirectClass
  Geometri: 358x240 + 0 + 0
  Resolusi: 300x300
  [...]
  Kompresi: JPEG
  Kualitas: 90
  Orientasi: Tidak terdefinisi
  [...]

Saya tidak tahu bagaimana gambar dalam pengujian saya disimpan, tetapi tidak memiliki data EXIF. Mungkinkah kualitasnya masih disimpan dalam gambar?


Tidak bisakah Anda bereksperimen mengkonversi ke kualitas yang berbeda? Saya merasa sulit untuk percaya, kecuali ImageMagick menyimpan beberapa data pribadi di jpg (jadi ini mungkin tidak berfungsi dengan paket lain).
harrymc

Menarik. Saya akan menunggu untuk melihat bagaimana ini keluar.
Nathaniel

1
+1 Ya imagemagick berfungsi. Saya berulang kali dapat mengubah kualitas jpeg dan menggunakan identifikasi untuk melihat perubahannya. Ini berfungsi jika saya menggunakan convert (ketidakstabilan imagemagick lain) atau alat lain seperti MS Photo Editor.
DaveParillo

1
ImageMagick melakukan sesuatu yang berbeda. Ini memberikan perkiraan, daripada membaca apa yang perangkat lunak asli Anda lakukan. Jawaban Anda yang asli, yang sekarang sudah dicoret, lebih benar. Lihat jawaban @ sleske.
mattdm

26

Untuk menambah jawaban Arjan:

ImageMagick identifytampaknya benar-benar melihat ke dalam gambar JPEG untuk menebak pengaturan kualitas yang digunakan untuk menyandikannya.

Kode sumber ImageMagick (mendukung perangkat lunak gratis :-)) berisi baris :

/*
  Determine the JPEG compression quality from the quantization tables.
*/
sum=0;
for (i=0; i < NUM_QUANT_TBLS; i++)
{
  if (jpeg_info.quant_tbl_ptrs[i] != NULL)
    for (j=0; j < DCTSIZE2; j++)
      sum+=jpeg_info.quant_tbl_ptrs[i]->quantval[j];

( coders/jpeg.c, baris 843 dst. dalam versi terbaru saya dari kode sumber ImageMagick).

Saya tidak cukup tahu tentang JPEG untuk benar-benar mengerti, tetapi tampaknya melakukan sesuatu seperti yang dijelaskan dalam artikel ini:

Tentukan faktor kualitas JPEG dengan menggunakan Visual C # .NET (tautan mati per Januari 2018; salin di archive.org dari 2015 )

Jadi ya, identifysebenarnya dapat menentukan pengaturan kualitas JPEG hanya dari file yang dikompresi saja (meskipun hasilnya mungkin tidak selalu sepenuhnya akurat).


1
Wah Sangat baik dari Anda untuk memeriksa kode sumber. Keren.
Nathaniel

@Nathaniel, bisakah Anda memilih jawaban ini sebagai jawaban yang diterima, dan bukan jawaban saya? Terima kasih! (Saya tidak dapat menghapus milik saya selama itu diterima.)
Arjan

Itu sedang mencari tabel kuantisasi JPEG yang paling menjelaskan bagaimana tampilan bitstream terkompresi.
jbarlow

5

Seperti Arjan diceritakan identify -verbose myimage.jpgakan melakukannya. Karena imagemagick adalah alat CLI, itu mungkin berguna untuk skrip. Pendekatannya identify -verbose myimage.jpg | grep ...sangat lambat. Saya sarankan menggunakan IM seperti ini

identify -format '%Q' myimage.jpg

Secara besar-besaran lebih cepat.


2

JPEGsnoop adalah alternatif yang bagus untuk ImageMagick identify. Unduhannya cukup kecil dan tersedia dalam format portabel.

Setelah memproses jpg, Anda akan menemukan "Faktor kualitas sekitar" di bawah penanda DQT.



Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.