Representasi warna yang dikenal antara lain: i) Red, Green, Blue (RGB), ii) Cyan, Magenta, Yellow, Black (CMYK), iii) Hue, Saturation, Brightness (HSB), dan iv) CIE-XYZ. Di sini yang paling mudah dan terkenal adalah RGB. Postingan ini bermaksud menjelaskan secara mudah model warna RGB ini.
Sejarah
Kita mengenal TV berwarna yang mengkombinasikan tiap piksel dengan gabungan komposisi warna Red, Green, dan Blue. Jika seluruh warna R, G, dan B nol atau padam, maka dihasilkan warna hitam. Sebaliknya jika seluruhnya menyala maksimal, diperoleh warna putih.
Membuat Warna
Perhatikan warna Turqoise di bawah ini. Warna ini merupakan kombinasi warna Red, Green, dan Blue berturut-turut 64, 224, dan 208. Bagaimana merepresentasikannya dalam Matlab?
Baik, kita mulai saja dengan membuka Matlab versi 2008 ke atas (mungkin sebelumnya bisa, asalkan ada fungsi “imshow” dan “cat” pada matriks).
Format RGB pada Matlab
Matlab menggunakan format matriks tiga dimensi, berbeda dengan gray atau biner yang menggunakan satu matriks saja. Oke, misalnya kita buat piksel yang membentuk huruf ‘c’.
-
c=[1 1 1;1 0 0;1 1 1];
-
imshow(c,’InitialMagnification’,’fit’)
Disini “InitialMagnification” artinya memperbesar huruf c tersebut agar bisa dilihat jelas. Coba saja tanpa fungsi itu, pasti hanya berupa titik kecil saja.
Nah, di sini kita diminta merubah huruf c format biner tersebut menjadi warna turquoise pada gambar di atas sebelumnya. Caranya adalah dengan merubah satu matriks ‘c’ tersebut menjadi komposisi tiga matriks R, G, dan B berupa perbandingan dari 0 hingga 255.
Warna Red, Green, Blue
Di sini warna merah adalah 64 dari 255. Tuliskan di command window instruksi berikut.
-
r=c*64/255
-
r =
-
0.2510 0.2510 0.2510
-
0.2510 0 0
-
0.2510 0.2510 0.2510
Dengan cara yang sama buat juga Green dan Blue.
-
g=c*224/255;
-
b=c*224/208;
Jika komposisi R, G, dan B sudah dibuat, berikutnya adalah meng-concatenate tiga matriks tersebut (r, g, dan b) menjadi satu.
-
image=cat(3,r,g,b);
-
imshow(image,’InitialMagnification’,’fit’)
Pastikan diperoleh huruf ‘c’ dengan warna turquoise seperti di bawah. Jika Anda bisa memanipulasi satu piksel maka Anda pasti bisa memanipulasi beragam citra menjadi warna-warna tertentu. Sekian, semoga bermanfaat.