0% menganggap dokumen ini bermanfaat (0 suara)
140 tayangan5 halaman

Modul 2-Digital Image Processing

Digital image processing melibatkan pengolahan matriks representasi gambar digital untuk memecahkan masalah tertentu. Matriks ini merepresentasikan nilai piksel gambar dalam koordinat x-y. Fungsi MATLAB seperti imread dan imshow digunakan untuk membaca dan menampilkan gambar, sementara fungsi lain seperti rgb2gray dan imhist berguna untuk konversi warna dan membuat histogram. Crop dan ROI memungkinkan pemotongan bagian tertentu gambar.

Diunggah oleh

yehezkiel
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
140 tayangan5 halaman

Modul 2-Digital Image Processing

Digital image processing melibatkan pengolahan matriks representasi gambar digital untuk memecahkan masalah tertentu. Matriks ini merepresentasikan nilai piksel gambar dalam koordinat x-y. Fungsi MATLAB seperti imread dan imshow digunakan untuk membaca dan menampilkan gambar, sementara fungsi lain seperti rgb2gray dan imhist berguna untuk konversi warna dan membuat histogram. Crop dan ROI memungkinkan pemotongan bagian tertentu gambar.

Diunggah oleh

yehezkiel
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 5

Digital Image Processing

Image atau gambar adalah representasi spasial dari suatu objek yang sebenarnya dalam bidang dua
dimensi yang biasanya ditulis dalam koordinat kartesian x-y, dan setiap koordinat
merepresentasikan satu sinyal terkecil dari objek yang biasanya koordinat terkecil ini disebut sebagai
piksel. Karena merupakan sistem koordinat yang memiliki nilai maka biasanya image dianggap
sebagai sebuah matrik x-y yang berisi nilai piksel.

Represntasi dari matriks tersebut dapat ditulis sebagai berikut:

Dan di MATLAB representasi ini biasa ditulis menjadi

Yang perlu diperhatikan adalah bahwa indeks matriks pada MATLAB selalu dimulai dengan anggak 1
sehingga untuk f(0,0) akan sama dengan f(1,1) pada matlab.

Bentuk matrik ini kemudian diolah menurut teori-teori tertentu yang bertujuan untuk
memecahkan masalah tertentu, bentuk matriks adalah perwujudan dari bentuk sinyal digital
sehingga proses pemecahan dan pengolahan matriks dari gambar ini biasanya disebut dengan
digital image processing.

Pembacaan Image
Pada matlab fungsi untuk melakukan pembacaan image standar yaitu:

imread(‘filename’)

Perintah ini digunakan untuk membaca beberapa format file diantaranya:


Format Deskripsi Recognized Extension
TIFF Tagged Image File Format .tif .tiff
JPEG Join Photographics .jpg .jpeg
Expert’s Group
GIF Graphics Interchange .gif
Format
BMP Windows Bitmap .bmp
PNG Portable Network .png
Graphics
XWD X-Window Dump .xwd

Hasil dari pembacaan imread(‘filename’) bisa berupa matriks dua dimensi jika gambar yang
dibaca adalah gambar grayscale dan matrik 3 dimensi jika berupa gambar 3 dimensi.

Ekstraksi Nilai Piksel Red, Green dan Blue (RGB)


Hampir setiap pengolahan citra yang berbasis warna perlu dilakukan pemisahan band-band yang
ada pada citra khususnya citra RGB, MATLAB menyediakan fasilitas yang cukup baik dalam
memisahkan ketiga warna RGB, yaitu sebagai berikut:
gambar=imread(‘gambarkoe.jpg’); %--------membaca file gambar
red=gambar(:,:,1); %memanggil matriks gambar yang hanya berisi piksel
warna merah
green=gambar(:,:,2);% memanggil matriks gambar yang hanya berisi
piksel warna merah
blue=gambar(:,:,3); %memanggil matriks gambar yang hanya berisi
piksel warna merah
%----------menampilkan gambar---------------------
imshow(gambar)
imshow(red)
imshow(green)
imshow(blue)
Terlihat bahwa untuk mengambil nilai piksel merah memiliki indeks 1, warna hijau memiliki indeks 2
dan warna biru memiliki indeks 3.

Konversi Gambar RGB ke Grayscale

Untuk merubah gambar RGB ke gambar grayscale di MATLAB disediakan fungsi khusus yaitu
rgb2gray(matrik_gambar), tetapi kadangkala diinginkan untuk perubahan bentuk grayscale ini tidak
menggunakan fungsi MATLAB yang sudah ada yang merupakan nilai rata-rata piksel RGB tetapi
masing-masing nilai RGB diberi nilai bobot yang berbeda-beda, hal ini dengan mudah dilakukan
dengan menggunakan pemisahan nilai seperti yang telah dilakukan diatas seperti contoh berikut:
gambar=imread(‘gambarkoe.jpg’); %--------membaca file gambar
red=gambar(:,:,1); %memanggil matriks gambar yang hanya berisi piksel
warna merah
green=gambar(:,:,2);% memanggil matriks gambar yang hanya berisi
piksel warna merah
blue=gambar(:,:,3); %memanggil matriks gambar yang hanya berisi piksel
warna merah
gray2=0.3*red+0.5*green+0.2*blue ;
Membuat Histogram Image
Fungsi yang disediakan MATLAB untuk membuat histogram dari gambar yaitu dengan fungsi
imhist(matrik_1_dimensi_image)

Perlu diperhatikan bahwa imhist hanya dapat digunakan untuk matrik image 1 dimensi sehingga bila
diimplementasikan pada matriks gambar maka hanya berupa matriks merah saja, hijua saja, biru saja
atau grayscale.

Contoh penggunaan Histogram dari Image yaitu:


gambar=imread(‘gambarkoe.jpg’); %--------membaca file gambar
red=gambar(:,:,1); %memanggil matriks gambar yang hanya berisi piksel
warna merah
green=gambar(:,:,2);% memanggil matriks gambar yang hanya berisi
piksel warna merah
blue=gambar(:,:,3); %memanggil matriks gambar yang hanya berisi
piksel warna merah
merahgray2=0.3*red+0.5*green+0.2*blue ;
imhist(red)
imhist(green)
imhist(blue)
imhist(gray)
contoh Hasil:
Crop Image
Matlab juga menyediakan fungsi untuk melakukan cropping (pemotongan bagian tertentu
dari gambar menjadi matrik baru yang independen). Fungsi tersebut yaitu

Imcrop(matrik_gambar,matrik_titiksudut_crop);

Contoh implementasinya adalah:


gambar=imread('turtle.jpg');
crop=imcrop(gambar,[627 237 230 250])
imshow(gambar), figure, imshow(crop)

contoh hasil keluaranya dari program diatas yaitu:

Penentuan titik yang akan diambil yaitu menggunakan matrik_titiksudut_crop yaitu yang
merepresentasikan nilai [x,y,a,b] dimana x dan y adalah titik awal (sudut kiri atas) dari image
yang akan dikrop sedangakan a adalah jumlah piksel memanjang kearah sumbu-x dan b adalah
jumlah piksel ke arah sumbu-y.

Region Of Interest (ROI)


Kelemahan proses cropping jika itu merupakan daerah yang kita tertarik maka proses cropping
hanya dapat digunakan untuk bentuk kotak (rectangular). Untuk bentuk lain atau area yang
berbentuk tidak beraturan yang ingin dipisahkan dari image induk maka didefinisikan sebagai ROI
(Region of Interest) dimana di MATLAB terdapat banyak sekali fungsi yang bisa digunakan, salah
satunya yaitu roipoly(I,c,r) dimana I adalah matrik gambar, c adalah matrik titik kolom daerah yang
menjadi ROI dan r adalah matrik titik baris daerah yang menjadi ROI.

Contoh penggunaan ROI yaitu:


I=imread('turtle.jpg');
c = [625 685 733 798 816 753 667];
r = [327 282 247 288 221 402 427];
BW = roipoly(I,c,r);
figure, imshow(I)
figure, imshow(BW)
Contoh implementasi real ROI
gambar=imread('turtle.jpg');
I=gambar(:,:,1);
c = [625 685 733 798 816 753 667];
r = [327 282 247 288 221 402 427];
BW = roipoly(I,c,r);
j = roifill(I,c,r);
figure, imshow(gambar)
figure, imshow(I)
figure, imshow(BW)
figure, imshow(j)

Anda mungkin juga menyukai