Category Archives: Pengolahan Citra

Pengolahan Citra Digital menggunakan GUI MATLAB

Jaringan Syaraf Tiruan untuk Identifikasi Jenis Bunga


Jaringan syaraf tiruan (neural network) merupakan algoritma yang mampu melakukan identifikasi suatu kelas berdasarkan ciri masukan yang diberikan. Algoritma ini akan melatihkan ciri masukan yang diberikan pada masing-masing kelas sehingga diperoleh suatu arsitektur jaringan dan bobot-bobot awal yang mampu memetakan ciri masukan ke dalam kelas keluaran.

Terdapat banyak jenis jaringan syaraf tiruan, di antaranya adalah backpropagation, perceptron, probablistik neural network, radial basis network, dll.

Berikut ini merupakan contoh pemrograman matlab (menggunakan matlab r2015b) untuk mengidentifikasi jenis bunga menggunakan algoritma jaringan syaraf tiruan radial basis network (rbfnn). Pada proses pelatihan jaringan digunakan 100 citra latih yang terdiri dari 50 citra bunga dengan jenis kansas state flower dan 50 citra bunga berjenis marguerite daisy. Sedangkan pada proses pengujian digunakan 60 citra uji yang terdiri dari 30 citra bunga kansas state flower dan 50 citra bunga marguerite daisy.

Citra bunga yang digunakan dalam pemrograman ini diunduh dari halaman website http://www.robots.ox.ac.uk/~vgg/data/flowers/17/. Contoh citra bunga yang digunakan ditunjukkan pada gambar berikut.

-read more->

Cara Menghitung Nilai MSE, RMSE, dan PSNR pada Citra Digital


Mean Square Error (MSE), Root Mean Squared Error (RMSE), dan Peak Signal-to-Noise Ratio (PSNR) merupakan contoh parameter yang biasa digunakan sebagai indikator untuk mengukur kemiripan dua buah citra. Parameter tsb sering digunakan untuk membandingkan hasil pengolahan citra dengan citra awal atau citra asli. Persamaan yang digunakan untuk menghitung ketiga paramater tersebut adalah sebagai berikut:

MSE dan RMSE tidak memiliki satuan sedangkan satuan dari PSNR adalah desibel. Semakin mirip kedua citra maka nilai MSE dan RMSE nya semakin mendekati nilai nol. Sedangkan pada PSNR, dua buah citra dikatakan memiliki tingkat kemiripan yang rendah jika nilai PSNR di bawah 30 dB.

Berikut ini merupakan contoh pemrograman GUI matlab untuk menghitung nilai MSE, RMSE, dan PSNR. Ketiga nilai tersebut digunakan untuk menghitung tingkat kemiripan citra yang terkontaminasi derau/noise dengan citra asli dan citra hasil restorasi dengan citra asli. Derau aditif ditambahkan pada citra asli antara lain adalah derau impuls (salt & pepper), derau uniform, derau gaussian, dan derau rayleigh. Sedangkan filter yang digunakan untuk merestorasi citra antara lain adalah filter rata-rata dan filter median masing-masing menggunakan kernel berukuran 3 x 3 dan 5 x 5.

-read more->

Segmentasi Citra dengan Metode Thresholding


Thresholding merupakan salah satu metode segmentasi citra yang memisahkan antara objek dengan background dalam suatu citra berdasarkan pada perbedaan tingkat kecerahannya atau gelap terang nya. Region citra yang cenderung gelap akan dibuat semakin gelap (hitam sempurna dengan nilai intensitas sebesar 0), sedangkan region citra yang cenderung terang akan dibuat semakin terang (putih sempurna dengan nilai intensitas sebesar 1). Oleh karena itu, keluaran dari proses segmentasi dengan metode thresholding adalah berupa citra biner dengan nilai intensitas piksel sebesar 0 atau 1. Setelah citra sudah tersegmentasi atau sudah berhasil dipisahkan objeknya dengan background, maka citra biner yang diperoleh dapat dijadikan sebagai masking utuk melakukan proses croppping sehingga diperoleh tampilan citra asli tanpa background atau dengan background yang dapat diubah-ubah.

Berikut ini merupakan contoh pemrograman matlab mengenai aplikasi dari metode thresholding untuk melakukan segmentasi terhadap citra digital. Setelah objek berhasil disegmentasi, proses selanjutnya adalah mengganti-ganti background citra rgb asli

Langkah pemrogramannya adalah sebagai berikut:
1. Membaca dan menampilkan citra asli

clc; clear; close all;

% Object
Img = imread('the mario bros.jpg');
figure, imshow(Img);

Sehingga diperoleh tampilan

-read more->

Pengolahan Citra untuk Ekstraksi Ciri Objek


Ekstraksi ciri citra merupakan tahapan mengekstrak ciri atau informasi yang dimiliki oleh suatu objek dalam citra. Ciri atau informasi tersebut dapat digunakan untuk membedakan antara objek yang satu dengan objek lainnya.

Ekstraksi ciri citra merupakan tahapan yang sangat penting dalam sebuah sistem visi komputer. Tahapan ini menentukan baik tidaknya tingkat pengenalan objek yang dilakukan oleh komputer.

Dalam pemilihan ciri hendaknya memperhatikan hal-hal sebagai berikut:

  1. Secara visual, ciri apakah yang membedakan antara objek satu dengan lainnya. Apakah bentuknya, warnanya, teksturnya, ukurannya, atau geometrinya.
  2. Parameter apakah yang mewakili ciri tersebut. Misalnya secara visual antara objek satu dengan lainnya tampak berbeda ukurannya, maka parameter yang dapat digunakan untuk mengenali objek adalah luas.
  3. Menentukan jumlah parameter yang akan digunakan. Semakin banyak parameter pada umumnya tingkat pengenalan semakin baik. Namun harus dipastikan bahwa parameter-parameter yang digunakan benar-benar dapat membedakan antar objek.

Ciri yang diekstrak dalam tahapan ekstraksi ciri kemudian digunakan sebagai masukan dalam tahapan klasifikasi objek. Tahapan klasifikasi dapat menggunakan berbagai jenis algoritma ataupun dapat juga menggunakan aturan if else sederhana.

Berikut ini merupakan contoh pemrograman komputer menggunakan bahasa pemrograman MATLAB untuk melakukan ekstraksi ciri objek dalam citra digital. Citra yang digunakan adalah citra sand play set.jpg yang ditunjukkan pada gambar di bawah ini:

sand play set.jpg

-read more->

Segmentasi Citra Grayscale dengan Metode K-Means Clustering


K-means clustering merupakan salah satu algoritma yang dapat mempartisi data menjadi beberapa region kluster. Proses partisi data didasarkan pada jarak terdekat antara data dengan centroid masing-masing kluster. Berikut ini merupakan salah satu contoh pemrograman matlab mengenai segmentasi citra grayscale dengan metode k-means clustering. Citra yang digunakan adalah citra cat.jpg di mana objek yang ingin disegmentasi adalah berupa hewan kucing, sedangkan background adalah berupa rumput.

Langkah-langkah segmentasi citra adalah sebagai berikut:
1. Membaca citra rgb asli

-read more->

Segmentasi Warna Citra Digital


Segmentasi citra merupakan suatu proses yang bertujuan untuk memisahkan antara region foreground dengan region background. Pemisahan tersebut didasarkan pada perbedaan karakteristik masing-masing region yang mencolok.

Pada contoh pemrograman ini, dilakukan segmentasi citra berdasarkan pada perbedaan warna antara foreground dengan background. Dalam citra digital, warna yang merupakan spektrum cahaya tampak (merah, jingga, kuning, hijau, biru, ungu) direpresentasikan oleh nilai Hue. Oleh sebab itu, proses segmentasi citra pada pemrograman ini dilakukan pada ruang warna HSV (Hue, Saturation, Value).

Langkah-langkah pemrograman matlab untuk melakukan segmentasi warna adalah sebagai berikut:
1. Membaca dan menampilkan citra asli. Citra yang digunakan adalah citra bird.jpg di mana foreground atau objek yang dimaksud adalah berupa burung.

clc; clear; close all; warning off all;

% Membaca citra asli
RGB = imread('bird.jpg');
figure, imshow(RGB);

diperoleh tampilan

-read more->

Segmentasi Pola Tekstur menggunakan Filter Gabor


Kemampuan sistem visual manusia dalam membedakan pola tekstur didasarkan pada kapabilitas dalam mengidentifikasikan berbagai frekuensi dan orientasi spasial dari tekstur yang diamati.

Filter Gabor merupakan salah satu filter yang mampu mensimulasikan karakteristik sistem visual manusia dalam mengisolasi frekuensi dan orientasi tertentu dari citra.

Karakteristik ini membuat filter Gabor sesuai untuk aplikasi pengenalan tekstur dalam bidang computer vision.

Berikut ini merupakan pemrograman matlab untuk melakukan segmentasi pola tekstur dari suatu citra menggunakan filter Gabor. Koding dapat dijalankan minimal menggunakan Matlab R2015b.

Langkah-langkah pemrogramannya yaitu:
1. Membaca dan menampilkan citra asli

clc;clear;close all;

% Read the image
I = imread('metal texture.jpg');
figure,imshow(I);
title('Original Image');

sehingga diperoleh tampilan

-read more->

Segmentasi Warna menggunakan Algoritma Fuzzy C-Means Clustering


Fuzzy c-means clustering merupakan algoritma klustering yang mempartisi data berdasarkan pada jarak antara data masukan dengan pusat kluster terdekat. Sama seperti pada algoritma k-means clustering, pusat cluster selalu diupdate berulang-ulang hingga dihasilkan pembagian kluster yang optimal. Pada algoritma ini, perulangan didasarkan pada minimisasi fungsi objektif.

Berikut ini merupakan contoh pemrograman matlab untuk melakukan segmentasi warna suatu citra digital menggunakan algoritma fuzzy c-means clustering. Citra yang digunakan adalah citra sky-grass.jpg yang memuat dua buah objek yaitu langit dan rumput seperti ditunjukkan pada gambar di bawah ini.

-read more->

Ekstraksi Ciri Citra RGB


Berikut ini merupakan contoh pemrograman matlab untuk melakukan proses ekstraksi ciri dari citra rgb. Ciri yang diekstrak adalah berupa ciri statistik dan ciri bentuk. Pada contoh ini digunakan citra fish.jpg di mana foreground adalah berupa ikan sedangkan background adalah berupa air.

Langkah-langkah pemrogramannya adalah sebagai berikut:
1. Membaca dan menampilkan citra asli

clc;clear;close all;

Img = imread('fish.jpg');
figure, imshow(Img), title('original image');

sehingga diperoleh tampilan:

-read more->

Segmentasi Citra dengan Metode Multi Thresholding dan K-Means Clustering


Berikut ini merupakan pemrograman matlab untuk melakukan segmentasi citra dengan menggunakan dua buah metode yang berbeda. Metode yang pertama yaitu multi thresholding, sedangkan metode yang kedua adalah k-means clustering. Segmentasi dilakukan terhadap citra rose.jpg yang ditunjukkan pada gambar di bawah ini.

rose.jpg

-read more->

%d bloggers like this: