metpen baru

23
Tabel Evaluasi : Belajar Pengolahan Citra Menggunakan Matlab Pengarang Bahas a Pemro grama n Definisi Contoh Program Dasar Kelebih an Dan Kekuran gan http:// zavatista.wordpress.com/ 2010/11/23/pengolahan- citra-menggunakan- matlab/ Matla b MATLAB adalah sebuah bahasa dengan kemampuan tinggi untuk komputasi teknis. Ia menggabun gkan komputasi , visualisa si, dan pemrogram tt = 0:0. 3:4; xx = sin( 0.7* pi*t t); subp lot( 2,1, 1) plot ( tt , xx) Kelebih an : manipul asi data matrik jika kita banding kan dengan iterasi konvens ional maka hasil pada saat

Upload: ari-wiliams

Post on 24-Jul-2015

65 views

Category:

Documents


0 download

TRANSCRIPT

Tabel Evaluasi : Belajar Pengolahan Citra Menggunakan Matlab

Bahasa Pengarang Pemrogram Definisi an MATLAB adalah sebuah bahasa dengan kemampuan tinggi untuk komputasi teknis. Ia menggabungkan komputasi, visualisasi, dan pemrograman dalam satu kesatuan yang mudah digunakan di mana masalah dan penyelesaiannya diekspresikan dalam notasi matematik yang sudah dikenal.

Contoh Program Dasar tt 0:0.3:4;

Kelebihan Dan Kekurangan

http://zavatista.wordpress.com/2010/ Matlab 11/23/pengolahan-citramenggunakan-matlab/

= Kelebihan :

manipulasi = data matrik sin(0.7*pi jika kita *tt); bandingkan xx subplot(2, dengan iterasi 1,1) plot( xx) tt, konvensional maka hasil pada saat kita running jauh yang dimilki =manipulasi pada tt,MATLAB, inilah merupakan salah satu kelebihan dan tt,menjadi tolak ukur bahwa

title(tt =lebih cepat 0:0.3:4; xx *tt); plot( xx)) subplot(2, 1,2) stem( xx)

sin(0.7*pi data matrik

menggunakan title(tt = MATLAB 0:0.3:4; lebih banyak

xx *tt); plot( xx))

=

sin(0.7*pi keuntungannya tt, .

http://bisonerichmatlab.blogspot.com/2009/02/penger tian-matlab.html

matlab

MATLAB digunakan meliputi : 1. Matematika dan komputasi 2. Pengembangan algoritma 3. Akuisisi data 4. Pemodelan, simulasi dan prototype 5. Grafik saintifik dan engineering 6.Perluasan pemakaian, seperti graphical user interface

Kekuranganny a: apabila Matlab tersebut terinstal pada system Theme Windows Clasic, jadi untuk menjalankann ya tema window 7 nya harus diubah clasic dulu.

http://omega1902.blogspot.com/2009 /12/matlab.html

(GUI).

http://udienskhusy.com/10/pengertian -matlab

Pengolahan Citra Menggunakan Matlab1. Tentang Bahasa Pemrograman

Bahasa pemrograman adalah teknik komunikasi standar untuk mengekspresikan instruksi kepada komputer. Layaknya bahasa manusia, setiap bahasa memiliki tata tulis dan aturan tertentu. Bahasa pemrograman memfasilitasi seorang programmer untuk secara spesifik apa yang akan dilakukan oleh komputer selanjutnya, bagaimana data tersebut disimpan dan dikirim, dan apa yang akan dilakukan apabila terjadi kondisi yang variatif. Bahasa pemrograman dapat diklasifikasikan menjadi tingkat rendah, menengah, dan tingkat tinggi. Pergeseran tingkat dari rendah menuju tinggi menunjukkan kedekatan terhadap bahasa manusia http://www.membuatblog.web.id/2010/08/pengertian-bahasa-pemrograman.html 2. Bahasa Pemograman Matlab 2.1. Matlab 2.1.1 Definisi Matlab MATLAB adalah sebuah bahasa dengan kemampuan tinggi untuk komputasi

teknis. Ia menggabungkan komputasi, visualisasi, dan pemrograman dalam satu kesatuan yang mudah digunakan di mana masalah dan penyelesaiannya diekspresikan dalam notasi matematik yang sudah dikenal. Pemakaian MATLAB meliputi : Matematika dan komputasi Pengembangan algoritma Akuisisi data Pemodelan, simulasi dan prototype Grafik saintifik dan engineering Perluasan pemakaian, seperti graphical user interface (GUI). MATLAB adalah system interaktif yang mempunyai basis data array yang tidak membutuhkan dimensi. Ini memungkinkan kita dapat menyelesaikan banyak masalah komputasi teknis, khususnya yang berkaitan dengan formulasi matrik dan vector. Nama MATLAB merupakan singakatn dari matrix labolatory . MATLAB awalnya dibuat untuk memudahkan dalam mengakses software matriks yang telah dikembangkan oleh LINPACK dan EISPACK. Dalam perkembangannya, MATLAB mampu mengintegrasikan beberapa software matriks sebelumnya dalam satu software untuk komputasi matriks. Tidak hanya itu, MATLAB juga mampu melakukan komputasi simbolik yang biasa dilakukan oleh MAPLE.

Sistem MATLAB terdiri atas lima bagian utama : Development Environment. Ini adalah kumpulan semua alat-alat dan fasiltas untuk membantu kita dalam menggunakan fungsi dan file MATLAB. Bagian ini memuat desktop, Command window, command history, editor and debugger, dan browser untuk melihat help, workspace, files.

The MATLAB Mathematical Function Library. Bagian ini adalah koleksi semua algoritma komputasi, mulai dari fungsi sederhana seperti sum, sine, cosine sampai fungsi lebih rumit seperti, invers matriks, nilai eigen, fungsi Bessel dan fast Fourier transform. The MATLAB language. Ini adalah bahasa matriks/array level tinggi dengan control flow, fungsi, struktur data, input/output, dan fitur objek programming lainnya. Graphics. MATLAB mempunyai fasilitas untuk menampilkan vector dan matriks sebagai grafik. Fasilitas ini mencakup visualisasi data dua / tiga dimensi, pemrosesan citra (image), animasi, dan grafik animasi. The MATLAB Application Program Interface (API). Paket ini memungkinkan kita menulis bahasa C dan Fortran yang berinteraksi dengan MATLAB. Ia memuat fasilitas untuk pemanggilan kode-kode dari MATLAB (dynamic linking), yang disebut MATLAB sebagai mesin penghitung, dan untuk membaca dan menulis MAT-files. http://bisonerich-matlab.blogspot.com/2009/02/pengertian-matlab.html

2.1.2. Tipe Data matlab MATLAB memiliki 15 tipe data dasar (basic data type) yang biasanya juga disebut dengan class. Semua tipe data tersebut memiliki kesamaan bentuk yaitu bentuk array. Array yang paling minimal memiliki ordo 00 dan dapat bertambah menjadi array n dimensi dengan sembarang ukuran. Dalam keadaan khusus, array dua dimensi bisa disebut matriks. Tipe data tambahan yang dapat dibuat oleh user (user defined) adalah classes yang merupakan tipe data berorientasi obyek dan java classes yang dapat digunakan sebagai interface antara MATLAB dan JAVA. Tipe-tipe data yang terdapat dalam MATLAB adalah : Tipe data Logical

Sama seperti di JAVA, tipe data logical di MATLAB adalah sebuah tipe data yang memiliki dua nilai yaitu true atau false dan masing-masing direpresentasikan dengan angka 1 atau 0. MATLAB memiliki beberapa operator logika untuk merepresentasikan fungsi logic ini. Tipe data Char Tipe data char di MATLAB merupakan sebuah tipe data yang melibatkan karakter. Sebenarnya representasi string pada MATLAB adalah (kumpulan karakter) merupakan array dari sekumpulan karakter yang berukuran 1 x n. Dalam matlab, string diibaratkan sebuah array dari kumpulan karakter. Setiap karakter direpresentasikan sebagai sebuah nilai ASCII. Contoh : >> string = kita mencoba tipe data char di MATLAB string = kita mencoba tipe data char di MATLAB Untuk melihat penyajian string str di atas yang menggunakan kode ASCII, kita menggunakan sebuah fungsi double. >> teststring = double(string) teststring =

Columns 1 through 16 107 105 116 97 32 109 101 110 99 111 98 97 32 116 105 112 Columns 17 through 32 101 32 100 97 116 97 32 99 104 97 114 32 100 105 32 77

Columns 33 through 37 65 84 76 65 66 Kita dapat kembali mengembalikan array str2 ke karakter dengan menggunakan fungsi konversi char. >> testconvertchar = char(teststring) testconvertchar = kita mencoba tipe data char di MATLAB Beberapa fungsi yang digunakan dalam string adalah : strcmp Fungsi ini dipakai untuk memeriksa apakah dua string memiliki kesamaan. Contoh: >> testequals = strcmp(string,testconvertchar) testequals = 1 strcat

Fungsi ini dipakai untuk menggabungkan dua buah string. Contoh: >> string1 = andre mahasiswa

string1 = andre mahasiswa >> string2 = sistem informasi ITS string2 = sistem informasi ITS >> strcat(string1,string2) ans = andre mahasiswasistem informasi ITS isletter Fungsi ini dipakai untuk memeriksa apakah dalam suatu string terdapat huruf atau tidak, dengan fungsi ini pada MATLAB maka apabila dalam string tersebut terdapat huruf maka akan ditunjukkan dengan angka 1 dan apabila dalam string tersebut ada karakter selain hurufmaka akan ditunjukkan dengan angka 0. Contoh: >> isletter(string1) ans = 111110111111111 isspace Fungsi ini dipakai untuk memeriksa apakah terdapat spasi, enter, tabulasi di dalam satu string, dan apabila ditemukan salah satu dari ketiganya (spasi,enter,tabulasi) maka akan ditunjukkan dengan angka 1, selain itu akan ditunjukkan dengan angka 0. Contoh:

>> isspace (string1) ans = 000001000000000 int2str Fungsi ini dipakai untuk mengkonversi dari integer ke dalam string. Fungsi ini akan membulatkan argument (matriks) ke dalam sebuah bilangan integer dan mengkonversi hasilnya menjadi sebuah matriks string. Contoh: >> testinteger = randn(4) testinteger = -0.4326 -1.1465 0.3273 -0.5883 -1.6656 1.1909 0.1746 2.1832 0.1253 1.1892 -0.1867 -0.1364 0.2877 -0.0376 0.7258 0.1139

>> testinteger2 = int2str(testinteger) testinteger2 = 0 -1 0 -1 -2 1 0 2 0100

0010 num2str >> testinteger3 = num2str(testinteger) testinteger3 = -0.43256 -1.1465 0.32729 -0.58832 -1.6656 1.1909 0.17464 2.1832 0.12533 1.1892 -0.18671 -0.1364 0.28768 -0.037633 0.72579 0.11393 Tipe Data Function Handles Tipe data ini dipakai untuk menampilkan informasi yang digunakan dalam referensi sebuah fungsi. Ketika tipe data dibuat, matlab menangkap semua informasi tentang fungsi. Function Handles ini digunakan untuk mengatur behaviour dalam suatu fungsi di dalam MATLAB. Tipe Data Structure Tipe data ini adalah sebuah tipe data yang berorientasi array dengan field-field yang memiliki nama dan dapat memuat segala jenis data, termasuk sel array atau mungkin jenis structure yang lain. Tipe Data Numeric Yang termasuk tipe data numeric di MATLAB antara lain :

bilangan bulat bertanda dan tidak bertanda (signed and unsigned integer) bilangan pecahan atau mengambang dengan presisi tunggal maupun ganda (single and double precision floating point numbers) Berikut adalah beberapa hal yang perlu diperhatikan untuk tipe data numeric:

Perhitungan untuk komputasi dilakukan dengan menggunakan bilangan berpresisi ganda. Pengerjaan operasi matematika pada array integer maupun bilangan berpresisi tunggal terlebih dahulu harus dikonversi menjadi bilangan berpresisi ganda. Penggunaan memori untuk type array integer dan bilangan berpresisi tunggal lebih efisien dibandingkan bilangan berpresisi ganda. Tipe Data Cell Tipe data cell dapat digambarkan sebagai sebuah array atau kotak-kotak atau container yang dapat memuat data yang berbeda atau tipe data matlab lainnya. Setiap sel dalam sel array dapat memuat semua jenis tipe data matlab yang meliputi array, teks, obyek symbol, sel array, maupun struktur. Tipe Data Java Classes Tipe data ini digunakan MATLAB sebagai interface-nya untuk terhubung dengan JAVA. informasi lebih lengkap bisa dibaca di bukunya Amos Gilat MATLAB: An Introduction With Applications http://parvian.wordpress.com/2008/03/07/data-type-on-matlab/

2.1.3. Pengolahan Citra Pengolahan citra adalah salah satu cabang dari ilmu informatika. Pengolahan citra berkutat pada usaha untuk melakukan transformasi suatu citra/gambar menjadi citra lain dengan menggunakan teknik tertentu. Definisi Dasar: Citra

Citra adalah gambar dua dimensi yang dihasilkan dari gambar analog dua dimensi yang kontinu menjadi gambar diskrit melalui proses sampling. Gambar analog dibagi menjadi N baris dan M kolom sehingga menjadi gambar diskrit. Persilangan antara baris dan kolom tertentu disebut dengan piksel. Contohnya adalah gambar/titik diskrit pada baris n dan kolom m disebut dengan piksel [n,m]by Iwan Ramadhan STTBCI BAnda Aceh Sampling Sampling adalah proses untuk menentukan warna pada piksel tertentu pada citra dari sebuah gambar yang kontinu. Pada proses sampling biasanya dicari warna rata-rata dari gambar analog yang kemudian dibulatkan. Proses sampling sering juga disebut proses digitisasi. Kuantisasi Ada kalanya, dalam proses sampling, warna rata-rata yang didapat di relasikan ke level warna tertentu. Contohnya apabila dalam citra hanya terdapat 16 tingkatan warna abu-abu, maka nilai rata-rata yang didapat dari proses sampling harus diasosiasikan ke 16 tingkatan tersebut. Proses mengasosiasikan warna rata-rata dengan tingkatan warna tertentu disebut dengan kuantisasi.

Derau Derau (Noise) adalah gambar atau piksel yang mengganggu kualitas citra. Derau dapat disebabkan oleh gangguan fisis(optik) pada alat akuisisi maupun secara disengaja akibat proses pengolahan yang tidak sesuai. Contohnya adalah bintik hitam atau putih yang muncul secara acak yang tidak diinginkan di dalam citra. bintik acak ini disebut dengan derau salt & pepper. Banyak metode yang ada dalam pengolahan citra bertujuan untuk mengurangi atau menghilangkan noise.

Operasi pengolahan citra Operasi yang dilakukan untuk mentransformasikan suatu citra menjadi citra lain dapat dikategorikan berdasarkan tujuan transformasi maupun cakupan operasi yang dilakukan terhadap citra. Berdasarkan tujuan transformasi operasi pengolahan citra dikategorikan sebagai berikut :

Peningkatan Kualitas Citra (Image Enhancement)

Operasi peningkatan kualitas citra bertujuan untuk meningkatkan fitur tertentu pada citra.

Pemulihan Citra (Image Restoration)

Operasi pemulihan citra bertujuan untuk mengembalikan kondisi citra pada kondisi yang diketahui sebelumnya akibat adanya pengganggu yang menyebabkan penurunan kualitas citra. Berdasarkan cakupan operasi yang dilakukan terhadap citra, Operasi pengolahan citra dikategorikan sebagai berikut :

Operasi titik, yaitu operasi yang dilakukan terhadap setiap piksel pada citra yang keluarannya hanya ditentukan oleh nilai piksel itu sendiri.

Operasi area, yaitu operasi yang dilakukan terhadap setiap piksel pada citra yang keluarannya dipengaruhi oleh piksel tersebut dan piksel lainnya dalam suatu daerah tertentu. Salah satu contoh dari operasi berbasis area adalah operasi ketetanggaan yang nilai keluaran dari operasi tersebut ditentukan oleh nilai piksel-piksel yang memiliki hubungan ketetanggaan dengan piksel yang sedang diolah.

Operasi global, yaitu operasi yang dilakukan tehadap setiap piksel pada citra yang keluarannya ditentukan oleh keseluruhan piksel yang membentuk citra.

Alat bantu matematika Alat bantu matematika yang sering dipakai dalam pengolahan citra adalah sebagai berikut :

Statistik inheren

Konvolusi Transformasi Fourier Representasi Kontur

Algoritma Berikut ini adalah algorima yang biasa dipakai dalam pengolahan citra. Algoritma dibawah ini dibagi menjadi beberapa kategori berdasarkan pendekatan yang dilakukan dalam memanipulasi citra asli. Algoritma berbasis histogram Algoritma kategori ini menggunakan histogram dari citra awal untuk menghasilkan citra baru.

Peregangan Kontras Ekualisasi histogram Filter Minimum Filter Median Filter Maksimum

Algoritma berbasis matematika Algoritma pada kategori ini menggunakan piksel/beberapa piksel untuk menjadi masukan suatu fungsi matematik untuk menentukan nilai piksel pada citra hasil.

Biner Operasi ini berbasis operasi boolean (AND,OR,NOT) untuk memanipulasi citra

Aritmetika Operasi ini berbasis operasi Aritmatika ( penjumlahan, pengurangan, perkalian dan pembagian citra)

Geometri Algoritma berbasis konvolusi Algoritma pada kategori ini menggunakan teknik konvolusi untuk menghasilkan citra hasil.

Contoh coding dalam matlab: Contoh matlab mendeskripsikan matriks 2D dan 3 D 1. Membuka editor matlab yang baru dengan menu file new .Mat. 2. Mendefinisikan matriks dengan fungsifungsi yang ada pada library matlab A = pascal(4) B = magic(4) C = fix(10*rand(4,3)) u = [3; 1; 4] v = [2 0 1] s=7 3. Membuat matriks nol dengan fungsi zero F = zeros(4) G = zeros (4,5) 4. Membuat matriks dengan elemenelemennya bernilai satu dengan fungsi ones D = ones(4,5) E = ones(4) 5. Mengakses elemen matrik menggunakan indeks nomor baris dan nomor kolom. %mengakses elemen baris 1 kolom 3 dari matrik v v(1,3) %mengakses semua elemen baris pada kolom 2 dari matrik D D(:,2) %mengakses semua elemen kolom pada baris 3 dari matrik D D(3,:) %mengakses elemen matrik baris 1 dan baris 2 D(1:2, :) 6. Mengubah elemen matrik pada indeks yang ditentukan % mengubah elemen baris pertama matrik D menjadi 3 D(1,:) = 3 %mengubah elemen kolom ke 2 matrik D menjadi 2 D(:, 2) = 2 7. Menyimpan file ke direktori kerja dan menjalankan program dengan perintah run atau menekan icon run atau melalui menu debugrun (F5). . Penutup MATLAB (Matrix Laboratory) adalah sebuah program untuk analisis dan komputasi numerik. Pada awalnya, program ini merupakan interface untuk koleksi rutin-rutin numerik dari proyek LINPACK dan EISPACK, namun sekarang merupakan produk komersial dari

perusahaan Mathworks, Inc. MATLAB telah berkembang menjadi sebuah environment pemrograman yang canggih yang berisi fungsi-fungsi built-in untuk melakukan tugas pengolahan sinyal, aljabar linier, dan kalkulasi matematis lainnya. MATLAB juga berisi toolbox yang berisi fungsi-fungsi tambahan untuk aplikasi khusus . MATLAB bersifat extensible, dalam arti bahwa seorang pengguna dapat menulis fungsi baru untuk ditambahkan pada library ketika fungsi-fungsi built-in yang tersedia tidak dapat melakukan tugas tertentu. Kemampuan pemrograman yang dibutuhkan tidak terlalu sulit bila Anda telah memiliki pengalaman dalam pemrograman bahasa lain seperti C, PASCAL, atau FORTRAN. Umumnya citra digital berbentuk persegi panjang atau bujur sangkar (pada beberapa sistem pencitraan ada pula yang berbentuk segienam) yang memiliki lebar dan tinggi tertentu. Ukuran ini biasanya dinyatakan dalam banyaknya titik atau piksel sehingga ukuran citra selalu bernilai bulat. Setiap titik memiliki koordinat sesuai posisinya dalam citra. Koordinat ini biasanya dinyatakan dalam bilangan bulat positif, yang dapat dimulai dari 0 atau 1 tergantung pada sistem yang digunakan. Setiap titik juga memiliki nilai berupa angka digital yang merepresentasikan informasi yang diwakili oleh titik tersebut.

Sumber: http://id.shvoong.com/exact-sciences/physics/1803946-pengolahan-citra-imageprocessing/#ixzz1Z8ZAdUqk 4. Daftar Pustaka http://id.shvoong.com/exact-sciences/physics/1803946-pengolahan-citra-image-processing/ http://www.slideshare.net/arifgator/matlab-untuk-pengolahan-citra/ http://id.wikipedia.org/wiki/Pengolahan_citra http://bisonerich-matlab.blogspot.com/2009/02/pengertian-matlab.html Disusun Oleh :