Bahasa Indonesia

Gambar & foto · Konverter & Kompresor Gambar

JPEG hilangnya generasi: apa yang terjadi jika Anda menyimpan ulang foto yang sama

· Cara kerjanya

format gambar jpeg kualitas gambar

Sebuah foto melewati tahapan ekspor yang hilang berulang kali dengan tanda yang terakumulasi
Ilustrasi vektor ToolAcre asli

Setiap penyimpanan yang hilang membuang informasi, dan pembuangan tersebut terakumulasi: foto yang disimpan sepuluh kali tidak sama dengan foto yang disimpan sekali dengan kualitas yang sama. Postingan ini menjelaskan alasannya, apa yang membuatnya lebih buruk, dan bagaimana menyusun alur kerja agar terjadi satu kali.

Gambarannya semakin suram setiap minggunya — penurunan lambat yang tidak disadari oleh siapa pun sampai mereka membandingkan versi pertama dan terbaru

Gambar kampanye mingguan dapat menjadi membosankan dan berisik ketika setiap versi baru dimulai dari JPEG minggu lalu. Perubahan ini mungkin luput dari perhatian karena tidak ada yang memandang generasi satu selain generasi delapan. Logika format ToolAcre menyebutkan mekanisme yang dapat dibuktikan: JPEG lossy pada setiap kualitas, dan pengodean ulang JPEG menambahkan putaran kerugian lain di atas kualitas pertama.

Audit alur kerja sebelum memperdebatkan satu nilai penggeser. Temukan sumber paling awal yang dipertahankan dan daftarkan setiap operasi yang menulis JPEG lainnya. Pengunduhan, penggantian nama, atau penyalinan tidak menyebabkan hilangnya generasi dengan sendirinya; decode diikuti oleh encode tidak. Perbedaan tersebut sering kali menunjukkan adanya ekspor yang tidak perlu antara pemotongan, pengubahan ukuran, persetujuan, dan pengiriman akhir.

Mengapa lossy itu lossy — kuantisasi membulatkan koefisien frekuensi, dan pembulatan tidak dapat dibatalkan dengan mendekode

Penjelasan koefisien frekuensi rencana tersebut merupakan bahan latar belakang yang masuk akal, namun perhitungan tersebut tidak ada dalam aplikasi ini. Browser memiliki encoder JPEG. ToolAcre meneruskan piksel kanvas, jenis dan kualitas MIME, lalu menerima Blob. Oleh karena itu, klaim yang dapat dipercaya bersifat perilaku: detail dibuang, dan informasi yang dibuang tidak dapat dipulihkan dengan memilih PNG nanti.

Mempersempit batasan bukti tidak melemahkan rekomendasi. Tahap lossy seharusnya terjadi hanya ketika file pengiriman lossy diperlukan. Jika perantara harus disimpan di antara alat, pertahankan proyek asli atau raster lossless jika memungkinkan. Ekspor berikutnya dapat dimulai dari piksel yang belum bertahan dalam perkiraan JPEG yang dapat dihindari.

Repositori memverifikasi pengkodean browser yang hilang, bukan matematika koefisien JPEG

Pada penyimpanan kedua, decoder menghasilkan piksel dari JPEG pertama dan encoder memperkirakan piksel tersebut lagi. Tiket baru tidak memiliki akses ke sumber pra-JPEG dan tidak dapat membedakan detail asli dari artefak yang sudah diperkenalkan. Peringatan ToolAcre secara eksplisit menyebut ini sebagai putaran kedua daripada menyarankan bahwa format dan kualitas yang sama membiarkan byte tidak tersentuh.

Eksperimen yang berguna mempertahankan setiap generasi alih-alih menimpa satu nama file. Mulailah dengan master, hasilkan `round-1.jpg`, muat hasil tersebut untuk `round-2.jpg`, dan lanjutkan. Bandingkan masing-masing dengan master dan dengan induk langsungnya. File terpisah membuat perubahan bertahap terlihat dan mencegah pengujian itu sendiri menghancurkan referensinya.

Penyimpanan kedua adalah browser kedua yang dikodekan dari piksel yang didekodekan

Memotong atau mengubah ukuran antar penyimpanan akan memperkenalkan operasi piksel tambahan. Dalam kode ini, dimensi yang diubah menandai rencana sebagai sampel ulang meskipun pembuat enkode tujuan adalah PNG. `drawImage` menggambar ulang persegi panjang sumber yang dipilih ke dalam geometri target dengan penghalusan tinggi sebelum pengkodean, sehingga perubahan dimensi harus dicatat secara terpisah dari penulisan lossy JPEG.

Garis besarnya mengaitkan kerusakan ekstra pada kisi blok yang bergeser, tetapi saluran browser ini tidak memperlihatkan penyelarasan blok. Prosedur yang dapat dipertahankan adalah dengan mengisolasi variabel: pertama-tama ulangi ekspor JPEG dengan ukuran yang sama, lalu ulangi dengan mengubah ukuran. Jika urutan kedua berubah lebih banyak, observasi menjadi milik browser tersebut dan gambar uji tanpa memberikan penjelasan tingkat encoder.

Mengubah ukuran menambahkan pengambilan sampel ulang; penjelasan blok-grid berada di luar bukti implementasi

Menggunakan nomor kualitas yang sama di setiap putaran tidak menciptakan pelabuhan yang aman. Nilai tersebut diteruskan sebagai instruksi ke pembuat enkode browser saat ini; ini bukan checksum, persentase detail yang dipertahankan, atau janji bahwa pembuat enkode lain memetakan nomor tersebut secara identik. Catatan sumber bahkan memperingatkan bahwa keluaran mungkin sedikit berbeda antar browser dan platform.

Kualitas 100 masih tergolong lossy untuk JPEG. Menaikkan nomor pada generasi berikutnya dapat menambah byte, tetapi tidak dapat memanggil tekstur yang dihapus sebelumnya. Pilih kualitas dengan memeriksa salinan pengiriman generasi pertama dan ukurannya yang diukur. Setelah diterima, buat ulang salinan tersebut dari master setiap kali konten berubah alih-alih menggunakan ekspor yang diterima sebagai sumber berikutnya.

Angka kualitas adalah masukan encoder, bukan jaminan kuantisasi yang setara

Untuk demonstrasi lima putaran, pilih foto yang berisi langit halus, rambut, dedaunan, dan tepi kontras tinggi. Pertahankan dimensi tetap dan gunakan satu browser dan satu kualitas. Simpan setiap putaran dengan nama file bernomor, lalu bandingkan keenam file pada 100 persen di penampil yang tidak menerapkan pengeditan tambahan.

Catat byte keluaran daripada mengklaim pertumbuhan atau pengurangan yang telah ditentukan. Putaran selanjutnya bisa lebih kecil atau lebih besar bergantung pada piksel dan pembuat enkode; arah ukuran bukanlah skor kualitas. Carilah perubahan di sekitar batas detail dan wilayah halus, dan hentikan eksperimen dengan dokumen asli yang masih utuh.

Apa yang tidak tercakup di sini — format lossless, yang tidak mengalami hal ini, dan pengeditan RAW atau file master

Pengkodean tujuan lossless berperilaku berbeda, tetapi mengonversi JPEG yang terdegradasi menjadi PNG hanya menyimpan piksel dekode yang terdegradasi dengan tepat. Itu tidak membalikkan kerugian sebelumnya. Pengembangan RAW, proyek berlapis, dan alur kerja master khusus kamera berada di luar konverter browser ini, yang menerima masukan JPEG, PNG, WebP dan bingkai tunggal GIF.

Alat ini juga tidak membandingkan generasi secara otomatis atau menghitung skor persepsi. Panel sebelum dan sesudah hasil pertama mendukung tinjauan visual, sementara file yang diunduh memungkinkan perbandingan ukuran asli yang lebih ketat. Perlakukan fasilitas tersebut sebagai alat bantu inspeksi, bukan sertifikasi bahwa lokasi yang dipilih adalah arsip.

Kesimpulan: pertahankan master, ekspor sekali — cara menggunakan Konverter Gambar & Kompresor sebagai langkah terakhir, bukan langkah berulang

Pertahankan satu sumber kebenaran dan jadikan file lossy sebagai turunan yang dapat diganti. Aturan kepemilikan sederhana ini mencegah kalender sosial menjadi jaringan perkiraan. ToolAcre harus menjadi penyandian terakhir untuk penerima atau saluran tertentu, bukan perantara tak kasat mata yang diulang setelah setiap pengeditan kecil.

Ketika varian baru diperlukan, buka kembali master, terapkan semua geometri yang diperlukan satu kali, dan ekspor satu kali. Arsipkan pengaturan atau catatan persetujuan daripada silsilah yang rusak. Browser selalu dapat membuat pengiriman lain JPEG; ia tidak dapat merekonstruksi informasi yang dibuang oleh generasi sebelumnya.