Category Archives: Pengolahan Citra

Pengolahan Citra Digital menggunakan GUI MATLAB

Klasifikasi Jenis Kendaraan Menggunakan Algoritma Extreme Learning Machine


Extreme Learning Machine (ELM) merupakan jenis jaringan syaraf tiruan dengan satu lapisan tersembunyi yang biasa disebut dengan single hidden layer feedforward neural network (SLNs). Metode ini memiliki kecepatan pembelajaran yang lebih cepat dibandingkan metode jaringan syaraf tiruan konvensional seperti backpropagation.

Contoh arsitektur jaringan syaraf tiruan Extreme Learning Machine ditunjukkan pada gambar di bawah ini

-read more->

Klasifikasi Jenis Buah Menggunakan Linear Discriminant Analysis


Linear Discriminant Analysis (LDA) merupakan salah satu metode yang digunakan untuk mengelompokkan data ke dalam beberapa kelas. Penentuan pengelompokan didasarkan pada garis batas (garis lurus) yang diperoleh dari persamaan linear.

Berikut ini merupakan contoh aplikasi pengolahan citra untuk mengklasifikasikan jenis buah menggunakan linear discriminant analysis. Jenis buah yang diklasifikasikan adalah buah apel dan buah jeruk. Kedua jenis buah tersebut dibedakan berdasarkan ciri warnanya menggunakan nilai hue dan saturation. Contoh citra buah pada masing-masing kelas ditunjukkan pada gambar di bawah ini.

-read more->

Kompresi Citra Digital Menggunakan Transformasi Wavelet


Dalam bidang pengolahan citra digital, terkadang kita menemukan kendala pada besarnya ukuran data yang dibutuhkan untuk merepresentasikan citra. Oleh karena itu dibutuhkan suatu teknik kompresi yang dapat mereduksi ukuran data pada citra. Tujuan dari kompresi citra di antaranya adalah untuk menghemat kapasitas penyimpanan data, mempercepat waktu transmisi data, dan mempercepat waktu komputasi saat pengolahan citra dilakukan. Kompresi citra bekerja dengan cara meminimalkan jumlah bit penyusun citra sehingga ukuran data menjadi lebih kecil.

Terdapat dua buah metode kompresi citra yaitu metode lossless dan metode lossy. Pada metode lossless memungkinkan data yang telah terkompresi dapat dikembalikan seperti semula. Sedangkan pada metode lossy tidak memungkinkan data yang telah terkompresi dapat dikembalikan seperti semula.

-read more->

Steganografi Citra Digital


Apakah yang dimaksud dengan steganografi??

Steganografi merupakan suatu teknik menyembunyikan sebuah file pada file lainnya. Dalam metode ini diperlukan file sebagai penampung (cover) dan file lain yang akan ditampung (message). File penampung maupun file yang akan ditampung dapat berupa citra, audio, maupun text.

Penggunaan steganografi bertujuan untuk menyembunyikan atau menyamarkan suatu data sehingga sulit untuk dideteksi (encoding). Data yang disembunyikan dapat diekstraksi kembali sama seperti keadaan aslinya (decoding).

Berikut ini merupakan contoh pemrograman matlab mengenai steganografi dengan metode substitusi LSB (Least Significant Bit) di mana baik file penampung maupun file yang akan ditampung adalah berupa citra digital.

Langkah-langkah pemrogramannya adalah sebagai berikut:

-read more->

Klasifikasi Jenis Sayuran Menggunakan Algoritma PCA dan KNN


Apakah yang dimaksud dengan Principal Component Analysis (PCA)??

Principal Component Analysis (PCA) merupakan suatu algoritma yang mampu mengkonversi sekelompok data yang pada awalnya saling berkorelasi menjadi data yang tidak saling berkorelasi (Principal Component). Jumlah Principal Component yang dihasilkan adalah sama dengan jumlah data aslinya, tetapi dapat direduksi dengan jumlah yang lebih kecil dan tetap mampu merepresentasikan data asli dengan baik.

Berikut ini merupakan contoh pemrograman matlab untuk klasifikasi jenis sayuran menggunakan algoritma PCA dan KNN. Jenis sayuran yang akan diklasifikasi adalah sayur kol, sawi, dan wortel. Ketiga jenis sayur tersebut dibedakan berdasarkan ciri warna dan ukurannya. Contoh citra sayuran pada masing-masing kelas ditunjukkan pada gambar di bawah ini.

-read more->

Deteksi Lingkaran Menggunakan Transformasi Hough


Apakah yang dimaksud dengan Transformasi Hough??

Transformasi Hough merupakan salah satu metode image processing yang dapat digunakan untuk mendeteksi garis dan lingkaran pada suatu citra digital. Transformasi Hough bekerja dengan cara mencari hubungan ketetanggaan antar piksel menggunakan persamaan garis lurus untuk mendeteksi garis dan persamaan lingkaran untuk mendeteksi lingkaran. Berikut ini merupakan contoh aplikasi pemrograman matlab untuk melakukan deteksi lingkaran pada citra digital menggunakan Transformasi Hough. Sedangkan materi mengenai deteksi garis menggunakan transformasi hough dapat dilihat pada halaman berikut: Deteksi Titik Sudut Citra Untuk Identifikasi Bentuk

Pemrograman yang dilakukan merupakan modifikasi source code yang sebelumnya telah dikembangkan oleh David Young. Modifikasi dilakukan pada pengolahan akhir citra hasil deteksi sehingga objek dapat dipisahkan dengan background dan dapat dihitung luas dan kelilingnya.

Langkah-langkah pemrogramannya adalah sebagai berikut:

1. Membaca citra RGB

clc; clear; close all; warning off all;

% membaca citra RGB
im = imread('cristiano ronaldo.jpg');
figure,imshow(im);

-read more->

Kompresi Lossless Pada Citra Digital


Apakah tujuan kompresi citra??

Kompresi atau pemampatan citra bertujuan untuk mereduksi atau memperkecil ukuran file citra. Dalam kompresi citra dikenal dua buah algoritma yaitu kompresi lossless dan kompresi lossy. Pada kompresi lossless memungkinkan citra asli dapat disusun kembali secara utuh dari citra hasil kompresi. Sedangkan pada kompresi lossy akan lebih banyak data yang hilang ketika penyusunan kembali dari citra hasil kompresi ke citra asli.

Berikut ini merupakan contoh aplikasi pemrograman matlab untuk melakukan kompresi lossless pada citra digital. Pemrograman yang dilakukan merupakan pengembangan program yang sebelumnya telah dikerjakan oleh Lalit G. Patil. Tahapan kompresi yang dilakukan ditunjukkan pada gambar flowchart berikut ini:

Langkah-langkah pemrograman untuk melakukan kompresi lossless pada citra digital adalah sebagai berikut:

-read more->

Identifikasi Jenis Bunga Menggunakan Ekstraksi Ciri Orde Satu Dan Algoritma Multisvm


Apakah yang dimaksud dengan ekstraksi ciri??

Ekstraksi ciri citra merupakan tahapan mengekstrak ciri/informasi dari objek di dalam citra yang ingin dikenali/dibedakan dengan objek lainnya. Ciri yang telah diekstrak kemudian digunakan sebagai parameter/nilai masukan pada tahapan identifikasi/ klasifikasi.

Salah satu contoh metode ekstraksi ciri citra adalah ekstraksi ciri orde satu atau disebut juga dengan ekstraksi ciri orde pertama. Ekstraksi ciri orde satu merupakan metode pengambilan ciri yang didasarkan pada karakteristik histogram citra. Beberapa parameter ciri orde satu antara lain adalah mean, skewness, variance, kurtosis, dan entropy. Parameter ciri tersebut dapat digunakan sebagai masukan dalam algoritma identifikasi untuk mengenali objek dalam citra. Berikut ini merupakan contoh aplikasi pemrograman matlab untuk mengidentifikasi jenis bunga menggunakan ekstraksi ciri orde satu dan algoritma multisvm. Citra yang digunakan terdiri dari lima jenis bunga yaitu calendula, iris, leucanthemum maximum, peony, dan rose. Pada data latih digunakan 6 citra pada masing-masing jenis bunga sehingga jumlah total data latih adalah 30 citra. Sedangkan pada data uji digunakan 2 citra pada masing-masing jenis bunga sehingga jumlah total data uji adalah 10 citra (sumber dataset citra: https://www.kaggle.com/olgabelitskaya/flower-color-images).

Beberapa citra pada data latih ditunjukkan pada gambar berikut ini:

-read more->

Analisis Tekstur Menggunakan Metode GLCM, LBP, dan FLBP


Apakah yang dimaksud dengan analisis tekstur??

Tekstur merupakan salah satu ciri yang bisa diekstrak dari suatu citra digital. Tekstur dapat digunakan sebagai ciri yang membedakan antara citra yang satu dengan citra lainnya. Analisis tekstur dapat diimplementasikan ke dalam bidang pengolahan citra antara lain untuk pengenalan motif kain batik, identifikasi kualitas daging, identifikasi tumor/kanker, klasifikasi jenis kayu, dll.

Berikut ini merupakan contoh aplikasi pemrograman matlab mengenai analisis tekstur menggunakan tiga buah metode yang berbeda yaitu Gray-Level Co-Occurrence Matrix (GLCM), Local Binary Pattern (LBP), dan Fuzzy Local Binary Pattern (FLBP). Pada pemrograman ini analisis tekstur dilakukan terhadap citra yang diberi perlakuan rotasi. Hal ini dilakukan untuk melihat pengaruh rotasi dalam analisis tekstur pada masing-masing metode.

Tampilan citra asli dan setelah diberi perlakuan rotasi ditunjukkan pada gambar di bawah ini.

bricks.jpg

bricksRotated.jpg

-read more->

Pengolahan Citra Digital Menggunakan Transformasi Wavelet


Perbedaan transformasi fourier dengan transformasi wavelet??

Pada bidang pengolahan sinyal digital, kita dapat menggunakan transformasi Fourier untuk memperoleh informasi berapa besar frekuensi dari sebuah sinyal, tetapi kita tidak dapat mengetahui informasi kapan frekuensi itu terjadi. Transformasi Fourier hanya cocok untuk sinyal stasioner (sinyal yang frekuensinya tidak berubah terhadap waktu). Untuk mengatasi hal tersebut maka kita dapat menggunakan transformasi Wavelet yang mampu merepresentasikan informasi waktu dan frekuensi suatu sinyal dengan baik.

Penerapan transformasi wavelet pada bidang pengolahan citra digital antara lain adalah untuk kompresi, filtering, dan analisis tekstur. Berikut ini merupakan contoh aplikasi pemrograman matlab untuk melakukan transformasi wavelet. Pemrograman meliputi proses transformasi terhadap citra grayscale ke dalam empat buah koefisien yaitu koefisien aproksimasi, koefisien detail vertikal, koefisien detail horizontal, dan koefisien detail diagonal.

1. Dekomposisi citra menggunakan wavelet haar level 1 (ukuran citra menjadi 1/2 kali ukuran semula)

clc; clear; close all;

% membaca citra grayscale
Img = imread('lena_gray_512.tif');

% dekomposisi wavelet haar level 1
[c,s] = wavedec2(Img,2,'haar');
[H1,V1,D1] = detcoef2('all',c,s,1);
A1 = appcoef2(c,s,'haar',1);
V1img = wcodemat(V1,255,'mat',1);
H1img = wcodemat(H1,255,'mat',1);
D1img = wcodemat(D1,255,'mat',1);
A1img = wcodemat(A1,255,'mat',1);

figure;
subplot(2,2,1);
imagesc(A1img);
colormap gray;
title('Approximation Coef. of Level 1');

subplot(2,2,2);
imagesc(H1img);
title('Horizontal detail Coef. of Level 1');

subplot(2,2,3);
imagesc(V1img);
title('Vertical detail Coef. of Level 1');

subplot(2,2,4);
imagesc(D1img);
title('Diagonal detail Coef. of Level 1');

-read more->

%d bloggers like this: