Você está na página 1de 4

Situs Pengolahan Citra | Digital Image Processing

Cara membaca dan menampilkan file citra dengan Matlab

Pengantar Dalam pengolahan citra, matlab sering kali dijadikan salah satu pilihan tools. Mengapa? Karena dengan menggunakan Matlab, kerumitan-kerumitan yang harus dilakukan dalam bahasa pemrograman dapat dihindarkan. Dalam tutorial kali ini, kita akan membahas 3 fungsi matlab yang cukup penting dalam pengolahan citra.

Membaca file citra Kalau di java, kita perlu mengerti konsep Java Graphical User Interface (GUI) programming yang terdapat dalam package Swing, di Matlab, kita hanya perlu mengetahui perintah-perintah penting saja. Untuk membaca file citra, kita dapat menggunakan perintah imread yang berarti image read. Output dari imread ini berupa matrix citra yang mirip dengan apa yang telah dibahas pada artikel berikut ini. Matrix citra ini bisa berupa matrix 3 dimensi untuk citra berwarna, ataupun matrix 2 dimensi untuk citra monokrom. Berikut ini adalah contohnya. 1: [matrixCitra] = imread('fruit.jpeg');

Pada potongan di atas, matlab akan membaca file citra yang bernama fruit.jpeg, dan menyimpan semua data citra tersebut di variable matrixCitra.

Menampilkan data citra

Langkah selanjutnya ketika kita sudah mempunyai data citra. Kita dapat menampilkannya. Bagaimana caranya? sangat mudah! yaitu dengan menggunakan perintah imshow yang berarti image show.

Berikut adalah salah satu contohnya.

1: imshow(matrixCitra);

Di sini keunggulan Matlab. Karena Matlab sudah menyediakan GUI tempat di mana citra ditampilkan.

http://pengolahancitra.com

Powered by Joomla!

Generated: 9 September, 2013, 06:04

Situs Pengolahan Citra | Digital Image Processing

Memodifkasi data citra

Pengubahan data citra sangat lazim dilakukan. Proses ini adalah inti dari pengolahan citra. Segala macam algoritma dapat dijalankan pada langkah ini. Ok, dalam tutorial kali ini, kita akan mencoba untuk mengubah citra menjadi citra monokrom. Rumus untuk mengubah citra menjadi citra monokrom dapat dilihat pada artikel ini.

Berikut ini adalah implementasi pada Matlab.

1: Monokrom = (matrixCitra(:,:,1) + matrixCitra(:,:,2) + matrixCitra(:,:,3) ... 2: ) / 3;

3: matrixCitra(:,:,1) = Monokrom; 4: matrixCitra(:,:,2) = Monokrom; 5: matrixCitra(:,:,3) = Monokrom;

Variable Monokrom merupakan variable sementara yang menampung hasil rata-rata dari komponen RGB pada setiap pixel. Tanda titik tiga (...) mengartikan bahwa baris 2 dan baris 1 adalah 1 baris. Pertanyaannya adalah, kan kita harus merata-rata nilai RGB pada setiap pixel. Mengapa tidak ada For atau Looping di sini???? Yes! ini adalah keunggulan Matlab. Matlab dapat melakukan pertambahan secara matrix. Jadi kalimat pada baris satu bisa dibaca seperti berikut:

"Tambahkan matrix red dengan matrix green dengan matrix blue. Lalu bagi dengan sebuah nilai skalar yang bernilai 3. Simpan hasil operasi matrix tersebut pada matrix yang bernama Monokrom" Dalam pengolahan citra, saya sangat menganjurkan untuk menghindari looping atau for sebanyak mungkin sehingga kita dapat menggunakan keunggulan Matlab secara maksimal. Lalu berikutnya adalah, bagaimana dengan baris 3, 4 dan 5? Apa itu maksudnya? Begini penjelasannya. Pada baris 1 dan 2, kita telah melakukan operasi monokrom. Apa yang terjadi? Yang terjadi adalah citra hasil operasi tersebut kehilangan informasi warnanya (hanya mempunyai 1 komponen informasi). Pada citra berwarna, sebenarnya ini berarti ketiga komponen memiliki nilai yang sama. Jadi, pada ketiga baris ini lah kita memasukan nilai yang sama pada setiap komponen warna. Sebenarnya ada banyak cara untuk membuat monokrom sepanjang kita memberikan informasi yang sama pada setiap komponen. Jadi bisa saja seperti ini.

1: matrixCitra(:,:,2) = matrixCitra(:,:,1); 2: matrixCitra(:,:,3) = matrixCitra(:,:,1);

Dijamin citranya menjadi citra monokrom.

http://pengolahancitra.com

Powered by Joomla!

Generated: 9 September, 2013, 06:04

Situs Pengolahan Citra | Digital Image Processing

Menyimpan data citra ke dalam file

Langkah terakhir dalam pengolahan citra biasanya menyimpan data citra ke dalam file. Untuk melakukan hal ini, Matlab menyediakan fungsi yang bernama imwrite yang berarti image write. Matlab mensupport beberapa jenis format penyimpanan citra. Silahkan ketik help imwrite untuk mengetahui lebih lanjut mengenai format-format yang didukung oleh Matlab.

Berikut ini adalah contoh penggunaan imwrite.

1: imwrite(matrixCitra,'FruitModifed.jpeg');

Sangat mudah? Tentunya. Apa yang dilakukan pada potongan kode di atas adalah membuat sebuah citra yang bernama FruitModified.jpeg dan menyimpan data citra yang bernama matrixCitra ke dalam file tersebut dengan format penyimpanan bertipe jpeg.

Program keseluruhan

Berikut ini adalah script Matlab secara utuh yang dijelaskan pada tutorial ini.

1: % Skrip tutorial citra 2: % Membaca file Citra 3: matrixCitra = imread('Fruit.jpeg'); 4: 5: % Membuat citra menjadi monokrom 6: Monokrom = (matrixCitra(:,:,1) + matrixCitra(:,:,2) + matrixCitra(:,:,3) ... 7: ) / 3;

8: matrixCitra(:,:,1) = Monokrom; 9: matrixCitra(:,:,2) = Monokrom; 10: matrixCitra(:,:,3) = Monokrom; 11: 12: % Menampilkan Citra hasil operasi 13: imshow(matrixCitra); 14:
http://pengolahancitra.com Powered by Joomla! Generated: 9 September, 2013, 06:04

Situs Pengolahan Citra | Digital Image Processing

15: % Menyimpan citra 16: imwrite(matrixCitra,'FruitModified.jpeg');

Biasanya dalam pekerjaan sehari-hari, saya sering menggunakan Matlab untuk menciptakan algoritma baru. Mengapa Matlab? Karena dengan Matlab, kita dapat langsung bekerja ke dalam problem yang kita hadapi (langsung dapat mengoperasikan citra) tanpa harus mengurusi hal-hal seperti GUI.

Bila ada yang kurang jelas, silahkan add comment yah!

http://pengolahancitra.com

Powered by Joomla!

Generated: 9 September, 2013, 06:04

Você também pode gostar