Sabtu, 25 Agustus 2018

Matlab Imadd, Imsubtract, Immultiply Pengolahan Citra Digital dengan menggunakan Matlab (Komputasi Terapan)


Pengantar tentang MATLAB
MATLAB (Matrix Laboratory) adalah suatu program untuk analisis dan komputasi numerik dan merupakan suatu bahasa pemrograman matematika lanjutan yang dibentuk dengan dasar pemikiran menggunakan sifat dan bentuk matriks. Pada awalnya, program ini merupakan interface untuk koleksi rutin-rutin numeric dari proyek LINPACK dan EISPACK, dan dikembangkan menggunkan bahasa FORTRAN namun sekarang merupakan produk komersial dari perusahaan Mathworks, Inc.yang dalam perkembangan selanjutnya dikembangkan menggunakan bahasa C++ dan assembler (utamanya untuk fungsi-fungsi dasar MATLAB).

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.

MATLAB merupakan merk software yang dikembangkan oleh Mathworks.Inc. (lihathttp://www.mathworks.com) merupakan software yang paling efisien untuk perhitungan numeric berbasis matriks. Dengan demikian jika di dalam perhitungan kita dapat menformulasikan masalah ke dalam format matriks maka MATLAB merupakan software terbaik untuk penyelesaian numeriknya. MATLAB yang merupakan bahasa pemrograman tingkat tinggi berbasis pada matriks sering digunakan untuk teknik komputasi numerik, untuk menyelesaikan masalah-masalah yang melibatkan operasi matematika elemen, matrik, optimasi, aproksimasi dan lain-lain. Sehingga Matlab banyak digunakan pada : ( 1 ) Matematika dan Komputansi, (2) Pengembangan dan Algoritma, (3) Pemrograman modeling, simulasi, dan pembuatan prototype, (4) Analisa Data, eksplorasi dan visualisasi, (5) Analisis numerik dan statistic, dan (6) Pengembangan aplikasi teknik.

Lingkungan Kerja MatlaB
Window-window pada MATLAB
Ada beberapa macam window yang tersedia dalam MATLAB, yang dapat dijelaskan sebagai berikut:

Command window/editor
MATLAB Command window/editor merupakan window yang dibuka pertama kali setiap kali MATLAB dijalankan pada window di atas dapat dilakukan akses akses ke command MATLAB dengan cara mengetikkan barisan-barisan ekpresi MATLAB, seperti mengakses help window dan lain-lainnya. Jika perintah-perintah yang sudah diketikkan dan hasil yang ditampilkan pada layar command window akan disimpan maka dapat dilakukan dengan menggunkan command diary. Command windows juga digunakan untuk memanggil tool Matlab seperti editor, debugger atau fungsi. Command Window adalah tempat untuk menjalankan fungsi, mendeklarasikan variable, menjalankan proses-proses , serta melihat isi variable.

Current Directory
Window ini menampilkan isi dari direktori kerja saat menggunakan matlab. Kita dapat mengganti direktori ini sesuai dengan tempat direktori kerja yang diinginkan. Default dari alamat direktori berada dalam folder works tempat program les Matlab berada.

Command History
Window ini berfungsi untuk menyimpan perintahperintah apa saja yang sebelumnya dilakukan oleh pengguna terhadap matlab.

Workspace
Workspace berfungsi untuk menampilkan seluruh variabel-variabel yang sedang aktif pada saat pemakaian matlab. Apabila variabel berupa data matriks berukuran besar maka user dapat melihat isi dari seluruh data dengan melakukan double klik pada variabel tersebut. Matlab secara otomatis akan menampilkan window “array editor” yang berisikan data pada setiap variabel yang dipilih user.

Getting Help
Matlab menyediakan fungsi help yang tidak berisikan tutorial lengkap mengenai Matlab dan segala keunggulannya. User dapat menjalankan fungsi ini dengan menekan tombol pada toolbar atau menulis perintah ‘helpwin’ pada command window. Matlab juga menyediakan fungsi demos yang berisikan video tutorial matlab serta contoh-contoh program yang bias dibuat dengan MATLAB.

Interupting dan Terminating dalam Matlab
Untuk menghentikan proses yang sedang berjalan pada matlab dapat dilakukan dengan menekan tombol Ctrl-C. Sedangkan untuk keluar dari matlab dapat dilakukan dengan menuliskan perintah exit atau quit pada comamnd window atau dengan menekan menu exit pada bagian menu file dari menu bar.

Posisi Subplot pada Matlab:

%deretan 3 angka pada subplot digunakan untuk menentukan Lokasi penempatan yang dinginkan,
%penempatan foto yang akan kita tampilkan saat ini,
%menggunakan matriks 2x4
%angka pertama pada subplot digunakan untuk menentukan banyak baris matriks
%angka kedua pada subplot digunakan untuk menentukan banyak kolom matriks
%angka ketiga pada subplot digunakan untuk menentukan lokasi penempatan
subplot(2,4,1);imshow(RGB);
%imshow digunakan untuk menampilkan foto yang kita inginkan.
%foto yang kita tampilkan, bisa kita pilih sesuai dengan variabel foto tsb.
subplot(2,4,2);imshow(RGB2);
subplot(2,4,3);imshow(RGB3);
subplot(2,4,4);imshow(RGB5);
subplot(2,4,5);imshow(RGB6);
subplot(2,4,6);imshow(RGB8);
subplot(2,4,7);imshow(RGB9);
%nilai angka "0/nol" pada imshow digunakan untuk menampilkan foto blank
%warna blank bisa ditentukan, 
%apabila nilai semakin besar, maka tampilan foto akan menjadi brightness
%apabila nilai semakin kecil, maka tampilan foto akan menjadi darkness
subplot(2,4,8);imshow(0);

Matlab Sample Code:


Script lengkapnya:

clear all
clc

RGB=imread('D:\DOC JULY\BUDI LUHUR\MKOM UBL\Semester 2\Komputasi Terapan\jule1.png');
RGB2=imadd(RGB,75);
RGB3=imadd(RGB,-75);

RGB4=imread('D:\DOC JULY\BUDI LUHUR\MKOM UBL\Semester 2\Komputasi Terapan\jule2.png');
RGB5=imsubtract(RGB4,25);
RGB6=imsubtract(RGB4,-25);

RGB7=imread('D:\DOC JULY\BUDI LUHUR\MKOM UBL\Semester 2\Komputasi Terapan\jule3.png');
RGB8=immultiply(RGB7,1.5);
RGB9=immultiply(RGB7,0.2);

subplot(2,4,1);imshow(RGB);
subplot(2,4,2);imshow(RGB2);
subplot(2,4,3);imshow(RGB3);
subplot(2,4,4);imshow(RGB5);
subplot(2,4,5);imshow(RGB6);
subplot(2,4,6);imshow(RGB8);
subplot(2,4,7);imshow(RGB9);
subplot(2,4,8);imshow(0);


Berikut penjelasan detail mengenai Codingan diatas:


Detail Penjelasan Script Coding

%digunakan untuk menghapus seluruh variabel terdahulu pada Workspace
clear all

%digunakan untuk menghapus seluruh isi yang ada pada layar Command Window 
clc

%Function imread menggunakan Path Dokumen berfungsi untuk mengetahui lokasi foto yang kita inginkan, dan dipaling akhir path dicantumkan judul dan format foto yang kita gunakan
%RGB adalah Variabel yang digunakan untuk menampung foto yang dituju
RGB=imread('D:\DOC JULY\BUDI LUHUR\MKOM UBL\Semester 2\Komputasi Terapan\jule1.png');

%Function imadd digunakan untuk menambah kecerahan foto(brightness)
%Nilai positif pada brightness akan menambah tingkat kecerahan foto
RGB2=imadd(RGB,75);
%Nilai negatif pada brightness akan menambah tingkat kecerahan foto
RGB3=imadd(RGB,-75);

RGB4=imread('D:\DOC JULY\BUDI LUHUR\MKOM UBL\Semester 2\Komputasi Terapan\jule2.png');
%imsubtract digunakan untuk menambah tingkat darkness pada foto
%Nilai positif pada darkness akan menambah tingkat darkness pada foto
RGB5=imsubtract(RGB4,25);
%Nilai negatif pada darkness akan mengurangi tingkat darkness pada foto
RGB6=imsubtract(RGB4,-25);

RGB7=imread('D:\DOC JULY\BUDI LUHUR\MKOM UBL\Semester 2\Komputasi Terapan\jule3.png');
%Function immultiply digunakan untuk perkalian dengan matriks konstan
%Nilai >1 digunakan untuk perkalian yang lebih besar satu (brightness)
RGB8=immultiply(RGB7,1.5);
%Nilai <1 digunakan untuk perkalian yang kurang dari satu (darkness)
RGB9=immultiply(RGB7,0.2);

%deretan 3 angka pada subplot digunakan untuk menentukan Lokasi penempatan yang dinginkan, penempatan foto yang akan kita tampilkan saat ini, menggunakan matriks 2x4
%angka pertama subplot digunakan untuk menentukan banyak baris matriks
%angka kedua subplot digunakan untuk menentukan banyak kolom matriks
%angka ketiga pada subplot digunakan untuk menentukan lokasi penempatan
subplot(2,4,1);imshow(RGB);
%imshow digunakan untuk menampilkan foto yang kita inginkan.
%foto yang kita tampilkan, bisa kita pilih sesuai dengan variabel foto
subplot(2,4,2);imshow(RGB2);
subplot(2,4,3);imshow(RGB3);
subplot(2,4,4);imshow(RGB5);
subplot(2,4,5);imshow(RGB6);
subplot(2,4,6);imshow(RGB8);
subplot(2,4,7);imshow(RGB9);
%nilai angka "0/nol" pada imshow digunakan untuk menampilkan foto blank
%warna blank bisa ditentukan, 
%apabila nilai semakin besar, maka tampilan foto akan menjadi brightness,apabila nilai semakin kecil, maka tampilan foto akan menjadi darkness
subplot(2,4,8);imshow(0);



Hasil Pengolahan Citra Digital – Warna Blank Darkness


Hasil Pengolahan Citra Digital – Warna Blank Brightness



DAFTAR PUSTAKA



Cahyono, Budi. (2013). PENGGUNAAN SOFTWARE MATRIX LABORATORY (MATLAB) DALAM PEMBELAJARAN ALJABAR LINIER. Jurnal Phenomenon, Volume 1 Nomor 1, Juli 2013.

1 komentar: