51 - KONVERSI FORMAT CITRA RGB KE FORMAT …p3m.amikom.ac.id/p3m/51 - KONVERSI FORMAT CITRA RGB KE...

6
Seminar Nasional Teknologi 2007 (SNT 2007) ISSN : 1978 – 9777 Yogyakarta, 24 November 2007 D 1 KONVERSI FORMAT CITRA RGB KE FORMAT GRAYSCALE MENGGUNAKAN VISUAL BASIC Hanif Al Fatta STMIK AMIKOM Yogyakarta e-mail : [email protected] ABSTRACTS This paper explains how to manipulate image file format. The development of image processing requires image file type that is small enough to calculate but doesn’t erase the major feature of the image. This paper aims to explain how to manipulate RGB image into grayscale format The first step is to extract the red value, green value and Blue value from a pixel. And then from these three values, the grayscale value calculated. Using the algorithm perform in this paper, an RGB can be transformed into Grayscale less than a seconds. Keyword: RGB, Grayscale, image 1. PENDAHULUAN Pada aplikasi image processing, konversi format citra ke format citra yang lain adalah hal yang sangat esensial. Hal ini berkaitan dengan beberapa hal, diantaranya adalah ukuran file yang akan diproses idealnya adalah ukuran file yang paling kecil sehingga beberapa format file gambar harus diubah misalnya dari format .bmp ke format .jpg. Konversi format file juga berpengaruh terhadap beberapa algoritma, beberapa format citra menggunakan lebih dari 1 matriks untuk merepresentasikan warna misalnya format citra RGB. Beberapa algoritma image processing hanya bisa diberlakukan untuk citra yang direpresentasikan dengan 1 matriks tunggal saja, sehingga format RGB perlu dikonversi. Pada tulisan ini akan dibahas teknik mngubah format citra .bmp yang bersifat RGB ke format grayscale. 1.1. Citra RGB Suatu citra biasanya mengacu ke citra RGB. Sebenarnya bagaimana citra disimpan dan dimanipulasi dalam komputer diturunkan dari teknologi televisi, yang pertama kali mengaplikasikannya untuk tampilan grafis komputer. Jika dilihat dengan kaca pembesar, tampilan monitor komputer akan terdiri dari sejumlah triplet titik warna merah (RED), hijau (GREEN) dan biru (BLUE). Tergantung pada pabrik monitornya untuk menentukan apak titik tersebut merupakan titik bulat atau kotak kecil, tetapi akan selalu terdiri dari 3 triplet red, green dan blue. Citra dalam komputer tidak lebih dari sekumpulan sejumlah triplet dimana setiap triplet terdiri atas variasi tingkat keterangan (brightness) dari elemen red, green dan blue. Representasinya dalam citra, triplet akan terdiri dari 3 angka yang mengatur intensitas dari Red (R), Green (G) dan Blue (Blue) dari suatu triplet. Setiap triplet akan merepresentasikan 1 pixel (picture element). Suatu triplet dengan nilai 67, 228 dan 180 berarti akan mengeset nilai R ke nilai 67, G ke nilai 228 dan B k nilai 180. Angka-angka RGB ini yang seringkali disebut dengan color values. Pada format .bmp

Transcript of 51 - KONVERSI FORMAT CITRA RGB KE FORMAT …p3m.amikom.ac.id/p3m/51 - KONVERSI FORMAT CITRA RGB KE...

Page 1: 51 - KONVERSI FORMAT CITRA RGB KE FORMAT …p3m.amikom.ac.id/p3m/51 - KONVERSI FORMAT CITRA RGB KE FOR… · Seminar Nasional Teknologi 2007 (SNT 2007) ISSN : 1978 – 9777 Yogyakarta,

Seminar Nasional Teknologi 2007 (SNT 2007)    ISSN : 1978 – 9777 Yogyakarta, 24 November 2007  

D ‐ 1  

KONVERSI FORMAT CITRA RGB KE FORMAT GRAYSCALE MENGGUNAKAN VISUAL BASIC

Hanif Al Fatta

STMIK AMIKOM Yogyakarta

e-mail : [email protected]

ABSTRACTS

This paper explains how to manipulate image file format. The development of image processing requires image file type that is small enough to calculate but doesn’t erase the major feature of the image. This paper aims to explain how to manipulate RGB image into grayscale format

The first step is to extract the red value, green value and Blue value from a pixel. And then from these three values, the grayscale value calculated. Using the algorithm perform in this paper, an RGB can be transformed into Grayscale less than a seconds.

Keyword: RGB, Grayscale, image

1. PENDAHULUAN

Pada aplikasi image processing, konversi format citra ke format citra yang lain adalah hal yang sangat esensial. Hal ini berkaitan dengan beberapa hal, diantaranya adalah ukuran file yang akan diproses idealnya adalah ukuran file yang paling kecil sehingga beberapa format file gambar harus diubah misalnya dari format .bmp ke format .jpg. Konversi format file juga berpengaruh terhadap beberapa algoritma, beberapa format citra menggunakan lebih dari 1 matriks untuk merepresentasikan warna misalnya format citra RGB. Beberapa algoritma image processing hanya bisa diberlakukan untuk citra yang direpresentasikan dengan 1 matriks tunggal saja, sehingga format RGB perlu dikonversi. Pada tulisan ini akan dibahas teknik mngubah format citra .bmp yang bersifat RGB ke format grayscale.

1.1. Citra RGB

Suatu citra biasanya mengacu ke citra RGB. Sebenarnya bagaimana citra disimpan dan dimanipulasi dalam komputer diturunkan dari teknologi televisi, yang pertama kali mengaplikasikannya untuk tampilan grafis komputer. Jika dilihat dengan kaca pembesar, tampilan monitor komputer akan terdiri dari sejumlah triplet titik warna merah (RED), hijau (GREEN) dan biru (BLUE). Tergantung pada pabrik monitornya untuk menentukan apak titik tersebut merupakan titik bulat atau kotak kecil, tetapi akan selalu terdiri dari 3 triplet red, green dan blue.

Citra dalam komputer tidak lebih dari sekumpulan sejumlah triplet dimana setiap triplet terdiri atas variasi tingkat keterangan (brightness) dari elemen red, green dan blue. Representasinya dalam citra, triplet akan terdiri dari 3 angka yang mengatur intensitas dari Red (R), Green (G) dan Blue (Blue) dari suatu triplet. Setiap triplet akan merepresentasikan 1 pixel (picture element). Suatu triplet dengan nilai 67, 228 dan 180 berarti akan mengeset nilai R ke nilai 67, G ke nilai 228 dan B k nilai 180. Angka-angka RGB ini yang seringkali disebut dengan color values. Pada format .bmp

Page 2: 51 - KONVERSI FORMAT CITRA RGB KE FORMAT …p3m.amikom.ac.id/p3m/51 - KONVERSI FORMAT CITRA RGB KE FOR… · Seminar Nasional Teknologi 2007 (SNT 2007) ISSN : 1978 – 9777 Yogyakarta,

Seminar Nasional Teknologi 2007 (SNT 2007)    ISSN : 1978 – 9777 Yogyakarta, 24 November 2007  

D ‐ 2  

citra setiap pixel pada citra direpresentasikan dengan dengan 24 bit, 8 bit untuk R, 8 bit untuk G dan 8 bit untuk B, dengan pengaturan seperti pada gambar 1.

1.2. Citra Grayscale

Dalam komputasi, suatu citra digital grayscale atau greyscale adalah suatu citra dimana nilai dari setiap pixel merupakan sample tunggal. Citra yang ditampilkan dari citra jenis ini terdiri atas warna abu-abu, bervariasi pada warna hitam pada bagian yang intensitas terlemah dan warna putih pada intensitas terkuat. Citra grayscale berbeda dengan citra ”hitam-putih”, dimana pada konteks komputer, citra hitam putih hanya terdiri atas 2 warna saja yaitu ”hitam” dan ”putih” saja. Pada citra grayscale warna bervariasi antara hitam dan putih, tetapi variasi warna diantaranya sangat banyak. Citra grayscale seringkali merupakan perhitungan dari intensitas cahaya pada setiap pixel pada spektrum elektromagnetik single band .

Citra grayscale disimpan dalam format 8 bit untuk setiap sample pixel, yang memungkinkan sebanyak 256 intensitas. Format ini sangat membantu dalam pemrograman karena manupulasi bit yang tidak terlalu banyak. Pada aplikasi lain seperti pada aplikasi medical imaging dan remote sensing biasa juga digunakan format 10,12 maupun 16 bit.

2. CARA PENELITIAN

2.1. Bahan Penelitian

Untuk melakukan penelitian ini, sumber data berupa citra RGB bertipe .bmp. Citra ini akan di konversi dengan software yang dibangun dengan software Visual Basic. Hasil akhirnya adalah citra yang telah diubah kedalam format grayscale.

2.2. Proses Konversi

Adapun proses pengubahan citra RGB ke dalam citra grayscale dapat dilihat pada gambar 3

                     

B  G  R 

gambar 2 Citra grayscale dan citra hitam putih

Page 3: 51 - KONVERSI FORMAT CITRA RGB KE FORMAT …p3m.amikom.ac.id/p3m/51 - KONVERSI FORMAT CITRA RGB KE FOR… · Seminar Nasional Teknologi 2007 (SNT 2007) ISSN : 1978 – 9777 Yogyakarta,

Seminar Nasional Teknologi 2007 (SNT 2007)    ISSN : 1978 – 9777 Yogyakarta, 24 November 2007  

D ‐ 3  

 

  

Proses pertama adalah mengambil nilai R, G dan B dari suatu citra bertipe RGB. Pada tipe .bmp citra direpresentasikan dalam 24 bit, sehingga diperlukan proses untuk mengambil masing-masing 3 kelompok 8 bit dari 24 bit tadi. Sebagai contoh suatu pixel memiliki nilai RGB 24 bit sebagai berikut :

111100001111000011111111, untuk mendapatkan masing-masing nilai R, G dan B dilakukan operasi-operasi sebagai berikut. Untuk mendapatkan nilai R dilakukan operasi modulo dengan bilangan 256 sebagai berikut :

Nilai R = 111100001111000011111111 mod 10000000

= 11111111

Sedangkan untuk nilai G, dapat dicari dengan cara sebagai berikut:

Nilai G = (111100001111000011111111 and 1111111100000000)/100000000

= 11110000

Untuk Nilai B, dapat dicari dengan menggunakan rumus

Nilai B= (111100001111000011111111 and

111111110000000000000000)/10000000000000000

= 11110000

sehingga dari nilai pixel 1111000011110000111111112 atau 15790335 diperoleh nilai R =

 

Citra RGB

 

Ekstraksi Komponen R, G dan B 

Nilai R

Nilai G 

Nilai B 

Kalkulasi Nilai 

Grayscale 

Citra Grayscale 

Page 4: 51 - KONVERSI FORMAT CITRA RGB KE FORMAT …p3m.amikom.ac.id/p3m/51 - KONVERSI FORMAT CITRA RGB KE FOR… · Seminar Nasional Teknologi 2007 (SNT 2007) ISSN : 1978 – 9777 Yogyakarta,

Seminar Nasional Teknologi 2007 (SNT 2007)    ISSN : 1978 – 9777 Yogyakarta, 24 November 2007  

D ‐ 4  

11111111 = 255

G = 11110000 = 240

B = 11110000= 240

Sehingga diperoleh triplet RGB= (255,240,240).

Setelah nilai triplet RGB kita peroleh, maka kita bisa mendapatkan nilai grayscale dari pixel tersebut. Ide dasarnya sebenarnya adalah membuat band tunggal dari 3 band RGB tadi dengan rumus tertentu. Pada penelitian ini digunakan rumus :

red = (red * 5) \ 10

green = (green * 8) \ 10

blue = (blue * 3) \ 10

gray = ((red + green + blue) * 10) \ 16

Dengan mengaplikasikan prosedur tadi pada semua pixel akan kita dapatkan citra dengan format grayscale.

3. HASIL DAN PEMBAHASAN

Program kemudian dikembangkan dalam bahasa Visual Basic. Detail programnya sebagai berikut :

Public Sub GrayScale(pict As PictureBox)

On Error Resume Next

x = pict.ScaleWidth

y = pict.ScaleHeight

For i = 0 To y - 1

For j = 0 To x - 1

pixel = pict.Point(j, i)

red = pixel& Mod 256

green = (pixel And &HFF00) / 256&

blue = (pixel And &HFF0000) / 65536

' my algorithm to grayscale picture

' is it correct?

red = (red * 5) \ 10

green = (green * 8) \ 10

blue = (blue * 3) \ 10

Page 5: 51 - KONVERSI FORMAT CITRA RGB KE FORMAT …p3m.amikom.ac.id/p3m/51 - KONVERSI FORMAT CITRA RGB KE FOR… · Seminar Nasional Teknologi 2007 (SNT 2007) ISSN : 1978 – 9777 Yogyakarta,

Seminar Nasional Teknologi 2007 (SNT 2007)    ISSN : 1978 – 9777 Yogyakarta, 24 November 2007  

D ‐ 5  

gray = ((red + green + blue) * 10) \ 16

pict.PSet (j, i), RGB(gray, gray, gray)

Next

pict.Refresh

Next

End Sub

Tingkat keabuan dari citra grayscale yang diperoleh, sangat ditentukan oleh fungsi pada bagian :

red = (red * 5) \ 10

green = (green * 8) \ 10

blue = (blue * 3) \ 10

gray = ((red + green + blue) * 10) \ 16

Dengan mengganti beberapa konstanta pada persamaan-persamaan diatas akan didapatkan citra grayscale dengan tingkat keabuan yang berbeda. Berikut ini contoh hasil konversi dari RGB ke grayscale.

 

 

 

  

Gambar 4:  hasil konversi citra RGB ke grayscale 

4. KESIMPULAN

1. Konversi citra dari format RGB ke grayscale sangat diperlukan untuk keperluan pemrosesan citra, diantaranya untuk memperkecil ukuran file dan untuk memenuhi syarat beberapa algoritma identifikasi yang memerlukan citra matriks tunggal.

2. Untuk mengkonversi perlu diekstraksi dulu niali R, G dan B dari suatu pixel untuk kemudian dijadikan input untuk menentukan nilai grayscale dari pixel tersebut.

RGB format BMP Gray scale format BMP

GrayScale(pict As PictureBox)

   

Page 6: 51 - KONVERSI FORMAT CITRA RGB KE FORMAT …p3m.amikom.ac.id/p3m/51 - KONVERSI FORMAT CITRA RGB KE FOR… · Seminar Nasional Teknologi 2007 (SNT 2007) ISSN : 1978 – 9777 Yogyakarta,

Seminar Nasional Teknologi 2007 (SNT 2007)    ISSN : 1978 – 9777 Yogyakarta, 24 November 2007  

D ‐ 6  

5. DAFTAR PUSTAKA

[1] Alfatta, H, 2007, Merancangbangun Sistem Presensi Karyawan Berbasis Pengenalan Wajah dengan algoritma Eigenface (studi kasus : STMIK AMIKOM Yogyakarta), Sekolah Pasca Sarjana Universitas Gadjah Mada, Yogyakarta

[2]

[3] http://exchange.manifold.net/manifold/manuals/5_userman/mfd50RGB_Images_and_Channels.htm

[4] Diakses tanggal : 7 Januari 2007

[5]

[6] http://en.wikipedia.org/wiki/Grayscale

[7] Diakses tanggal : 7 Januari 2007