8 Maret 2011

Konversi Color Space RGB-HSV dan HSV-RGB dengan Metode Travis

Warna merupakan hasil persepsi dari cahaya dalam spektrum wilayah yang terlihat oleh retina mata, dan memiliki panjang gelombang antara 400nm sampai dengan 700nm. Suatu model warna adalah model matematis abstrak yang menggambarkan cara agar suatu warna dapat direpresentasikan sebagai baris angka, biasanya dengan nilai-nilai dari tiga atau empat buah warna atau komponen, misalnya RGB (Red-Green-Blue) , CMYK (Cyan-Magenta-Yellow-Key/Black), HSI (Hue-Satruation-Lightness), atau HSV (Hue-Satruation-Value).
Warna pada dasarnya merupakan bentukan 3 dimensi, sehingga disebut sebagai "color space". Untuk aplikasi yang berbeda ruang warna yang dipakai bisa juga berbeda, peralatan tertentu biasanya membatasi ukuran dan jenis ruang warna yang dapat digunakan. Misalnya layar monitor menggunakan RGB sedangkan printer menggunakan CMYK. Oleh karena itu, diperlukan konversi color space agar gambar kita misalnya bisa tampil di monitor dan bisa di print dengan benar oleh printer, serta masih banyak contoh lainnya. Yang akan penulis bahas selanjutnya adalah konversi HSV ke RGB.
Model warna HSV mendefinisikan warna dalam terminologi Hue, Saturation dan Value. Keuntungan HSV adalah terdapat warna-warna yang sama dengan yang ditangkap oleh indra manusia. Sedangkan warna yang dibentuk model lain seperti RGB merupakan hasil campuran dari warna-warna primer.
A.     Konversi RGB ke HSV
HSV merupakan kependekan dari Hue, Saturation, dan Value. Dimana karakteristik pokok dari warna tersebut adalah:
1.       Hue: menyatakan warna sebenarnya, seperti merah, violet, dan kuning dan digunakan menentukan kemerahan (redness), kehijauan (greeness), dsb.
2.       Saturation: kadang disebut chroma, adalah kemurnian atau kekuatan warna.
3.       Value : kecerahan dari warna. Nilainya berkisar antara 0-100 %. Apabila nilainya 0 maka warnanya akan menjadi hitam, semakin besar nilai maka semakin cerah dan  muncul variasi-variasi baru dari warna tersebut.
RGB merupakan kependekan dari Red, Green, Blue. Warna – warna yang dibentuk oleh model warna merupakan hasil campuran dari warna-warna primer merah, hijau, dan biru berdasarkan komposisi tertentu.
Ada sebuah metode untuk mengkonversi HSV ke RGB dan sebaliknya yang dibuat oleh Travis sebagai berikut:
Pertama-tama cari nila maksimum dan minimum dari ketiga komponen RGB.
1.       Satruation (S) :
S=(max-min)/max
2.       Value (V) :                                  
V= max
3.       Hue (H) : Pertama-tama hitung R’, G’, dan B’
R'=max-R / max-min
G'=max-G / max-min
B'=max-B / max-min
Jika Satruation, S=0, maka hue tidak terdefinisi (tidak memiliki hue berarti monochrome). kemungkinan lain:
·         if (R = max and G = min)        -> H = 5 + B’
·         else if (R = max and G ≠ min)   -> H = 1 − G’
·         else if (G = max and B = min)   -> H = R’ + 1
·         else if (G = max and B ≠ min)   -> H = 3 – B’
·         else if (R = max)               -> H = 3 + G’
·         otherwise                       -> H = 5 – R’
Hue (H) lalu dikonversi menjadi derajat/degrees dengan cara mengalikan dengan 60 sehingga menghasilkan HSV dengan S dan V antara ) dan 1 dan H antara 0-360
B.      Konversi HSV ke RGB
Untuk mengkonversi balik dari HSV ke RGB ,pertama ambil nilai H (range 0-360) dan bagi dengan 60.
Hex = H/60
Lalu hitung nilai dari warna primer, warna sekunder, a, b, dan c. Warna primer adalah komponen integer dari Hex ( misal dalam C : floor(Hex) ).
Secondary colour = Hex – primary colour
a = (1-S)V
b = (1 − (S * secondary colour))V
c = (1 − (S * (1 − secondary colour)))V
Selanjutnya hitung nilai RGB dengan cara berikut :
·         if primary colour = 0 then     -> R = V,G = c,B = a
·         if primary colour = 1 then     -> R = b,G = V,B = a
·         if primary colour = 2 then     -> R = a,G = V,B = c
·         if primary colour = 3 then     -> R = a,G = b,B = V
·         if primary colour = 4 then     -> R = c,G = a,B = V
·         if primary colour = 5 then     -> R = V,G = a,B = b

Dari perhitungan di atas maka akan didapatkan nilai-nilai dari model warna RGB.
references :

2 komentar:

bejo mengatakan...

ijin nyimak
http://osharedoc.blogspot.com

Qalbu mengatakan...

bang febri,, artkenya bagus ni,, alhamdlillah sangat mmbantu sy ni,,
trims yea bang,,,
wasalam,,
salam knal bang,,,

Posting Komentar