Haruskah saluran alfa dikoreksi gamma

11

Kita tahu bahwa di PNG, BMP, dll ... nilai piksel yang disimpan tidak dalam ruang RGB linier. Tapi saya tidak menemukan dokumen yang mengatakan apa pun tentang saluran alpha. Apakah saluran alfa disimpan dalam file gambar dalam ruang linear atau tidak?

Mary Chang
sumber

Jawaban:

11

Kita tahu bahwa di PNG, BMP, dll ... nilai piksel yang disimpan tidak dalam ruang RGB linier.

Ini belum tentu benar. Anda dapat menyimpan ruang warna apa pun yang Anda inginkan ke dalam gambar, bahkan tidak perlu berupa warna (seperti peta normal).

Saluran alpha umumnya linier. Saluran alfa tidak ditampilkan, tetapi umumnya merupakan istilah non-warna yang digunakan untuk transparansi (atau apa pun yang lain). Karena mereka tidak perlu ditampilkan di monitor, tidak ada alasan untuk menyimpan di ruang gamma. Jika ya, Anda tidak perlu kehilangan presisi di ujung bawah nilai alpha. Peta normal mengikuti garis penalaran yang sama, seperti dijelaskan dengan sangat baik oleh Julien Guertault .

ace
sumber
3

Format file gambar sendiri tidak menganggap gamma tetapi menyimpan nilai pixel yang tidak dimodifikasi sebagai program authoring (misalnya Photoshop) memutuskan untuk menyimpan nilai-nilai tersebut, sehingga saluran RGB dan alpha tidak memiliki perbedaan dari sudut pandang format file gambar (kecuali potensi strategi kompresi lossy, tapi itu topik lain).

Namun, ketika Anda membuat gambar di Photoshop, gambar tersebut ditampilkan di layar dalam ruang sRGB termasuk saluran alpha, jadi jika Anda penulis saluran alpha mengandalkan bahwa kecerahan piksel mewakili transparansi, maka Anda dapat mengatakan bahwa alpha juga disimpan dalam ruang gamma. TETAPI, jika Anda membuat alpha dengan menggunakan transparansi layer di Photoshop, maka alpha disimpan secara linear (misal, 50% layer transparan disimpan sebagai alpha = 128).

Jadi pada akhirnya itu tergantung bagaimana Anda membuat data yang di mana ruang data disimpan dan bagaimana Anda harus menafsirkannya. Juga hal yang perlu dipertimbangkan adalah jika distribusi nilai non-linear memberi Anda manfaat presisi. Nilai warna disimpan dalam sRGB karena sistem visual manusia merespons secara logis terhadap kecerahan cahaya, sehingga masuk akal untuk memiliki lebih banyak detail dalam kegelapan daripada dalam benderang untuk mengurangi garis yang dirasakan, tetapi Anda dapat bertanya apakah distribusi tersebut akan bermanfaat, misalnya peta normal atau nilai kekasaran yang tersimpan dalam tekstur.

JarkkoL
sumber