Derajat keabuan

Dalam fotografi digital, pencitraan hasil komputer, dan kolorimetri, **derajat keabuan** (disebut juga **skala abu-abu**) sebuah citra adalah nilai tiap piksel yang berupa *jumlah* cahaya dari sampel, yaitu ia hanya menyajikan informasi intensitas. Citra berderajat keabuan, biasa terlihat sebagai gambar hitam putih atau monokrom, tersusun dari berbagai tingkat warna abu-abu. Kontrasnya dimulai dari hitam (intensitas terendah) hingga putih (intensitas tertinggi).

Citra berderajat keabuan berbeda dengan citra hitam putih 1 bit yang, dalam pencitraan komputer, terdiri dari dua warna: hitam dan putih (biasa disebut citra biner). Citra berderajat keabuan memiliki banyak tingkat di antaranya.

Citra berderajat keabuan bisa berasal dari pengukuran intensitas cahaya pada tiap piksel sesuai frekuensi (atau panjang gelombang) tertentu. Pada kasus tersebut, citranya akan monokrom ketika hanya mengukur frekuensi tunggal (pada praktiknya, rentang sempit frekuensi). Frekuensi ini pada prinsipnya bisa bernilai apa pun dalam spektrum elektromagnetik, misal inframerah, cahaya tampak, ultraungu, dan lain-lain.

## Representasi bilangan

Intensitas tiap piksel dinyatakan dalam rentang antara minimum dan maksimum (inklusif). Rentang ini digambarkan secara abstrak sebagai rentang dari 0 (0%, hampa/hitam) sampai 1 (100%, penuh/putih) dengan pecahan di antaranya. Notasi ini dipakai dalam karya tulis ilmiah, tetapi tidak mendefinisikan warna hitam atau putih dalam kolorimetri. Bisa pula, rentangnya dibalik, seperti dalam percetakan (tinta), misal 0 menandakan tanpa tinta (putih) dan 1 menandakan tinta penuh (hitam).

Dalam komputasi, meski derajat keabuan dapat dinyatakan dalam bilangan rasional, piksel citra biasanya dikuantisasi untuk menyimpannya dalam bilangan bulat tak bertanda untuk mengurangi ukuran dan mempercepat pengolahan. Beberapa monitor derajat keabuan hanya dapat menampilkan hingga enam belas tingkat yang berbeda yang dapat disimpan dalam biner 4 bit. Namun, citra berderajat keabuan saat ini (misal fotografi) yang ditampilkan pada layar ataupun media cetak menggunakan 8 bit per piksel. Kedalaman piksel ini memberikan 256 tingkat cahaya dan memudahkan perhitungan karena satu piksel dapat diakses sebagai satu bita. Namun, jika intensitas dijarak sama (skala linear), perbedaan cahaya akan terlihat sebagai artefak pita dan tingkatan yang lebih cerah akan "terbuang". Maka, tingkatan cahaya biasa disimpan dalam skala nonlinear terkompresi gama yang memperkirakan penjarakan tingkat untuk cahaya gelap dan terang secara tampak.

Keperluan teknis, seperti pencitraan medis dan pengindraan jauh, sering membutuhkan lebih banyak tingkat untuk memaksimalkan penggunaan akurasi sensor, biasanya hingga 10 sampai 12 bit per sampel, dan untuk mengurangi galat pembulatan dalam perhitungan. Enam belas bit per sampel (65.536 tingkat) biasa dipakai karena komputer dapat mengelola kata (*word*) 16 bit dengan efisien. Format TIFF dan PNG adalah salah satu format berkas gambar yang mendukung derajat keabuan 16 bit secara bawaan. Namun, peramban dan program pengolahan citra biasa mengabaikan 8 bit terendah untuk tiap piksel (sehingga hanya menampilkan 256 tingkat). Secara internal, program pengolah citra biasa memakai bilangan bulat atau bilangan titik mengambang 16 bit atau 32 bit.

## Konversi warna ke derajat keabuan

Konversi citra berwarna ke derajat keabuan tidak unik pada umumnya. Hal ini tergantung pada konfigurasi bobot untuk tiap frekuensi saluran, seperti penggunaan filter fotografi.

### Konversi kolorimetri (penjagaan kependaran tampak) ke derajat keabuan
Cara yang umum adalah dengan menggunakan prinsip fotometri atau umumnya kolorimetri untuk menghitung nilai derajat keabuan (dalam ruang warna derajat keabuan tujuan) agar memiliki kependaran yang sama (secara teknis, kependaran relatif) dengan citra berwarna asal (dalam ruang warnanya). Selain memiliki kependaran yang sama, cara ini juga memastikan bahwa kedua citra akan memiliki kependaran mutlak yang sama ketika ditampilkan. Kependaran itu sendiri dimodelkan berdasarkan penglihatan manusia sehingga menjaga kependaran juga menjaga ukuran pencahayaan tampak, seperti  (seperti dalam ruang warna CIE Lab 1976) yang ditentukan berdasarkan kependaran linear  itu sendiri (seperti dalam ruang warna CIE XYZ 1931) yang akan ditulis sebagai  untuk menghindari ambiguitas.

Untuk mengubah warna dari ruang RGB terkompresi gama (skala nonlinear) ke dalam derajat keabuan kependarannya, fungsi kompresi gama harus dihilangkan melalui perluasan gama (linearisasi) untuk mengubah citra ke dalam RGB linear.

Untuk ruang warna sRGB pada umumnya, perluasan gama didefinisikan sebagai
: C_\mathrm{linear} = \begin{cases}
\frac{C_\mathrm{srgb}}{12,92} & \text{untuk } C_\mathrm{srgb} \le 0,\!04045\\
\left(\frac{C_\mathrm{srgb} + 0,055}{1,055}\right)^{2,4} & \text{lainnya}
\end{cases}

dengan  mewakili salah satu dari tiga warna utama sRGB yang terkompresi gama (, , dan ; dalam rentang [0,1]) serta  adalah hasil linearnya (, , dan ; dalam rentang [0,1]). Lalu, kependaran linear dihitung berdasarkan penjumlahan berbobot dari tiga warna linear tersebut. Ruang warna sRGB didefinisikan dalam kependaran linear CIE 1931  sebagai

: Y_\mathrm{linear} = 0,\!2126 R_\mathrm{linear} + 0,\!7152 G_\mathrm{linear} + 0,\!0722 B_\mathrm{linear}.

Tiga koefisien di atas menggambarkan kepekaan mata terhadap intensitas (kependaran) cahaya sesuai warna aditif utama dalam Rec. 709 yang dipakai dalam definisi sRGB. Penglihatan manusia sangat peka terhadap warna hijau sehingga koefisien hijau paling besar (0,7152) dan kurang peka terhadap warna biru sehingga koefisien biru paling kecil (0,0722).

Untuk menyimpan informasi derajat keabuan dalam RGB linear, tiap saluran (warna) linear diatur menjadi nilai kependaran linear di atas (), yakni , , dan  diganti dengan . Nilai tersebut lalu dikompresi gama kembali ke dalam bentuk nonlinear. Untuk sRGB, tiap saluran (warna) utama bisa diatur menjadi nilai  yang terkompresi gama dengan inversi perhitungan di atas sebagai berikut.

: Y_\mathrm{srgb} = \begin{cases}
12,\!92\ Y_\mathrm{linear} & \text{untuk } Y_\mathrm{linear} \le 0,\!0031308\\
1,\!055\ Y_\mathrm{linear}^{1/2,4} - 0,\!055 & \text{lainnya}
\end{cases}

Karena ketiga saluran (warna) sama yang berarti bahwa citra tersebut dalam bentuk derajat keabuan, cukup disimpan sekali saja. Citra inilah yang disebut citra berderajat keabuan. Cara ini yang dipakai untuk menyimpan citra dalam format yang mendukung sRGB saluran tunggal, seperti PNG dan JPEG. Perangkat lunak yang akan membukanya harus menghasilkan citra yang sama dengan citra "berwarna" yang ketiga salurannya bernilai sama.

### Pengodean luma dalam video

Untuk citra dalam ruang warna YUV dan kerabatnya yang dipakai dalam standar TV dan sistem video seperti PAL, SECAM, dan NTSC, komponen luma nonlinear () dihitung langsung dari komponen terkompresi gama. Hasilnya bukan gambaran sempurna dari kependaran kolorimetris, tetapi dapat dihitung lebih cepat karena tidak perlu melakukan perluasan dan kompresi gama.

Namun, bila komponen luma  dipakai sebagai gambaran derajat keabuan citra, kependarannya tidak terjaga. Dua warna bisa memiliki luma  yang sama, tetapi berbeda kependaran linear CIE-nya  sehingga berbeda pula nilai -nya (seperti yang telah didefinisikan di atas) dan tampak lebih gelap atau terang menurut penglihatan manusia. Sebaliknya, dua warna yang memiliki nilai kependaran  yang sama (sehingga -nya sama) bisa memiliki nilai luma  yang berbeda sesuai perhitungan di atas.

## Derajat keabuan sebagai saluran tunggal dari citra warna banyak saluran
Citra berwarna sering terdiri dari beberapa saluran warna. Tiap saluran berisi tingkatan nilai untuk saluran tersebut. Misalnya, citra RGB terdiri dari tiga saluran independen untuk merah, hijau, dan biru; citra CMYK terdiri dari empat saluran untuk sian, magenta, kuning, dan hitam.

Penyusunan citra berwarna dari saluran-saluran terpisah dapat dilakukan. Dengan pengaturan tertentu, seperti translasi, rotasi, dan lain-lain, dapat diperoleh citra berwarna dengan efek artistik tertentu.

## Lihat pula
* Saluran (citra digital)
* Halfton
* Duotone
* Warna semu
* Heightmap

## Referensi