Tugas Mata Kuliah
LAPORAN PEMROSESAN CITRA DIGITAL
ANDI DANIAH PAHRANY H11113303
JURUSAN MATEMATIKA PRODI MATEMATIKA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS HASANUDDIN MAKASSAR 2015
PEMROSESAN CITRA DIGITAL
Citra analog Citra
Matriks 2 dimensi yg terdiri dari angkaangka
Citra Digital Masing-masing pixel menunjukkan tingkat kecerahan
Citra (image) dalam hal ini merupakan pencitraan dari suatu gambar atau dengan kata lain merupakan tiruan dari gambar sebenarnya. Citra itu sendiri dibagi menjadi citra analog dan citra digital dimana yang dipelajari dalam mata kuliah ini dikhususkan pada citra digital yang memuat matriks 2 dimensi yg trdiri dari angka-angka atau masing-massing pixel menunjukkan tingkat kecerahan. Citra dibagi menjadi 2 macam: 1. Citra Kontinu yaitu, citra yang dihasilkan dari sistem optik yang menerima sinyal analog, misalnya, mata manusia dan kamera analog. 2. Citra Diskrit yaitu, citra yang dihasilkan melalui proses digitalisasi terhadap citra kontinu. Atau sering juga disebut dengan citra digital.
Citra digital adalah citra f(x,y) yang telah dilakukan digitalisasi baik koordinat area maupun brightness level. Nilai f di koordinat (x,y) menunjukkan brightness atau grayness level dari citra pada titik tersebut.
Citra yang dihasilkan direkam datanya bersifat kontinu harus dirubah dahulu menjadi citra digital dengan konversi sehingga dikenal komputer.
Proses tersebut disebut digitasi, yaitu membuat kisi-kisi arah horizontal dan vertical sehingga terbentuk array 2 dimensi.
Gambar 1 Representasi definisi Citra Digital
Gambar 2 Bentuk pengolahan dengan mengguakan matriks
RESOLUSI CITRA Resolusi citra merupakan tingkat detailnya suatu citra. Semakin tinggi resolusinya maka semakin tinggi pula tingkat detail dari citra tersebut. Ada 2 jenis resolusi citra : 1. Resolusi Spasial : ukuran haslus/kasarnya pembagian kisi-kisi baris dan kolom pada saat sampling. Resolusi ini digunakan untuk menentukan jumlah pixel per satuan panjang (dpi = dot per inchi) 2. Resolusi Kecemerlangan (Intensitas/brightness) : ukuran halus/kasarnya pembagian tingkat gradasi warna saat dilakukan kuantisasi. Disebut juga dengan kedalaman bit/kedalaman warna (Bit Depth). Bit Depth menentukan berapa banyak informasi warna yang tersedia untuk ditampilkan dalam setiap piksel. Semakin besar
nilainya, semakin bagus kualitas gambar yang dihasilkan dan semakin besar ukurannya.
gambar 3
Tingkat Keabuan dan Warna Citra Supaya citra digital dapat diolah komputer, maka citra digital harus mempunyai format tertentu. Format citra digital yang dipakai adalah citra skala keabuan (Gray Scale).Pada umumnya warna yang digunakan pada grayscale adalah warna hitam sebagai warna minimal (0), dan warna putih (255) sebagai warna maksimal, sehingga warna antaranya adalah abu-abu.
Derajat keabuan sendiri memiliki nilai, tidak hanya skala 0 sampai 255. Tergantung pada nilai pixel yang dimiliki oleh citra. Skala keabuan (grayscale = G ) dibagi menjadi sejumlah level, memiliki nilai berupa bilangan bulat dan merupakan hasil perpangkatan dari dua. G = 2m
Warna Citra Setiap piksel mempunyai warna yang spesifik yang merupakan kombinasi 3 warna dasar : Red (R) Green (G) Blue (B) Sering disebut sebagai citra RGB. Setiap komponen warna mempunyai intensitas sendiri dengan nilai 0 – 255. •Contoh: Warna Kuning (gabungan warna merah dan hijau) sehingga nilai RGBnya: –R = 255 –G = 255 –B = 0 Jadi setiap piksel membutuhkan 3 byte
Warna Citra Berindeks Format penyimpanan warna true color. Jumlah kombinasi warna = 224 = 16 juta warna.Jumlah memori true color = 3 x jumlah piksel untuk penghematan digunakan citra berindeks. informasi tiap titik merupakan indeks dari suatu tabel yang berisi informasi warna (disebut palet warna).Pada saat penyimpanan → informasi palet harus disertakan.Keuntungan: ukuran berkas data citra warna berindeks lebih kecil dibandingkan citra true color.
Citra biner (monokrom) Setiap titik bernilai 0 atau 1 : 0 → hitam 1 →putih
Setiap titik membutuhkan 1 bit. 1 byte dapat menampung 8 titik.
Gambar 4
Gambar 5
PENGGUNAAN MATLAB 1.2 Membaca/Memuat Citra Untuk membaca atau memuat citra ke dalam MATLAB digunakan fungsi imread dimana fungsi tersebut dapat dituliskan dalam sintaks ini imread(‘filename’)
Disini, filenama bersifat string dan melengkapo nama dari citra (termasuk eksistensi apa saja). Sebagai contoh the command line.
Gambar 6 Pada contoh ini, saya menggunakan image yg telah dimasukkan pada command line. Namun apabila image tersebut tidak terletak di command line maka sintaksnya pun berubah karena dimasukkan pula lokasi dari file tersebut. Seperti pada contoh penulisannya dibawah ini.
Gambar 7
Fungsi size memberikan dimensi baris dan kolom dari citra:
Gambar 8
Fungsi ini sangat utama digunakan dalam pemprograman ketika digunakan diikuti dengan format yang secara otomatis menentukan ukuran dari citra. Dimana ukurannya itu baris dan kolom.
Fungsi who menampilkan tambahan informasi tentang array. Pada kalimat ini, statementnya
Gambar 9 Tulisan Unit8 menunjukkan beberapa data class MATLAB. Sedangkan bytes menunjukaan ukuran dari gambar tersebut dalam bytes.
1.3 Displaying Images Citra ditampilkan pada desktop MATLAB dengan menggunakan fungi imshow, dengan syntax dasar: imshow(f,g)
Dimana f adalah array image dan g adalah nomor intensitas level yang digunakan untuk menampilkan. Jika g dihilangkan, itu artinya default pada level 256. Dengan menggunkan syntax
imshow(f,[low high])
Dengan menggunakan syntax tersebut maka akan mucul jendela seperti di bawah ini : >>imshow(f)
Gambar 10 Dengan mengubah jenis data pada file menggunakan im2bw dan menampilkannya dengan imshow maka tampillah figure seperti ini
Gambar 11 >>impexelregion
Gambar 11
Gambar 12
Gambar 11 menunjukkan matriks yg ada pada gambar 9, dimana isi matriks itu menunjukkan gabungan dari warna yg ada pada gambar. Sedangkan gambar 12 menunjukkan implementasi matriks / warna dari gambar 10.
Dengan menggunakan syntaks : imshow (img, [low high])
menampilkan hitam semua nilai yang kurang dari atau sama dengan low, dan putih semua nilai lebih besar dari atau sama dengan high. Nilai-nilai di antara ditampilkan sebagai perantara nilai intensitas.
1.4 Writing image Citra ditulis untuk penggunaan di disk dengan menggunakan fungsi imwrite, yang diikuti dengan syntax: imwrite(f,’filename’)
Dengan syntax ini, filename bertipe string juga termasuk format file extension ( lihat tabel sebelumnya). Selain itu format desired juga dapat dispesifikasikan dengan input 3 argumen. Sebagai contoh ikuti command writes f to a TIFT file named patient10_run1:
Gambar 13 Jika filename tidak terdapat pada path information, makan imwrite disimpan pada file pada directory yg bekerja. Funsi imwrite dapat membuat parameter lain, terikat pada format file yang dipilih. Kebanyakan pekerjaan ini, diikuti dengan chapter deals lainnya dengan JPEG or TIF gambar. Jadi kita dapat fokuskan perhatian pada kedua format file ini. Salah satu dasar syntax imwrite diaplikasikan hanya untuk hgambar dengan format JPEG adalah
Imwrite(f,’filename.jpg’,’quality’,q)
Dimana q adalah integer antara 0 dan 100 (angka terendah tertinggi degradasi tiba pada kompres JPEG).
Gambar 14 Penggunaan angka 10 tersebut mempengaruhi kualitas gambar yang ada sehingga itu dapat diubah tergantung dengan keinginan.
Saat filename sudah complate filename pada gambar di disk. Sebagai contoh
Gambar 15 Filename pada hasil MATLAB merupakan lokasi dari gambar bernama a.jpg tersebut. FileModeDate menunjukkan tanggal gambar tersebut di ambil serta waktunya. Format file menunjukkan format dari gambar. Width menunjukkan lebar dari dimensi dan weight menunjukkan panjang dari gambar. Colortype menunjukkan tipe dari gambar.
Informasi dari tampilan mengguakan imfinfo dapat ditampilkan hingga ke struktur variabel sehingga dapat digunakan subsequent komputasi. Menggunakan
prediksi dari gambar contohnya dan memberikan tanda K sebagai nama untuk struktur variabel, kita menggunakan syntax:
>>K=imfinfo(‘a.jpg’);
untuk menyimpan hingga semua informasi varibel K diperoleh oleh command imfinfo. Informasi utama menggunakan imfinfo.
Gambar 16
1.5 Kelas Data Semua numerik komputasi pada MATLAB selesai menggunakan double kuantitas, jadi ini juga merupakan frekuensi kelasa data pada gambar yang sedang diproses pada aplikasi. Kelas uint8 jugafrekuensi encountered, terkhusus saat membaca data dari penyimpanan.
Gambar 17
1.6 Tipe Gambar Toolbox mendukung empat tipe dari gambar yaitu : 1. Intensity images 2. Binary images 3. Indexed images 4. RGB images Kebanyakan monokuler memproses operasi gambar dibawa menggunakan binary atau intensuty gambar. Jadi kita memfokuskan pada kesua tipe gambar tesebut. Indexed dan RGB warna gambar akan didiskusikan pada BAB 6.
Intensity Gambar Intensity gambar adalah data matriks yg telah memuat skala representasi intensitas. Dimana elemen dari intensitas gambar dari kelas uint8, atau kelas uint16, mereka mempunyai integer di antara [0,255] and [0,65535]respectively. Jika kelas gambar double intensity dia berada antara batas [0,1] dengan konversi. Binary images
Binary images mempunyai banyak spesifikasi dalam MATLAB, binary merupakan logika dari 0 dan 1.
1.7 Mengkonversi Dua Kelas Data Dan Tipe Gambar 1.7.1 Konversi antara data kelas Mengkonversi
dua
kelas
data
adalah
straightforward.
Dengan
menggunakan syntax dasar array B, adalah dasar dari command B=double(A). Konversi ini menggunakan trought book karena MATLAB mengartikan lain dari komputasi numerik
1.7.2 Konversi antara kelas gambar dan typenya
Mencerminkan gambar
Gambar 18
Dengan menggunakan sintaks:
>> fp=img(end:-1:1,:); >> subplot(3,1,1),imshow(f),subplot(3,1,2),imshow(img),subplot(3,1,3),imshow(fp)
Maka gambar 18 akan ditampilkan gambar ini menampilkan gambar yg telah diubah jenis datanya dari GRB ke biner sehingga hanya menampilkan dua
warna saja. Gambar yang paling bawah menunjukkan gambar yang telah dicerminkan terhadap sumbu x.
Memperbesar (zoom out) gambar Memperbesar gambar agar bisa dilihat dengan jelas dapat dilakukan dengan menggunakan sintaks:
>> fc=img(257:768,257:768); >> subplot(2,2,1),imshow(img),subplot(2,2,2),imshow(fc)
Gambar 19
Gambar pada sebelah kanan menunjukkan hasil zoom dari gambar sebelumnya, dimana skalanya bisa diatur sesuai dengan keinginan
Memeperkecil (zoom in) Gambar Untuk memperkecil gambar yang ada dapat diakukan dengan menggunakan sintaks:
>> fs=img(1:4:end,1:4:end);
>> subplot(2,2,1),imshow(img),subplot(2,2,2),imshow(fs)
Maka akan dihasilkan gambar seperti di bawah ini
Gambar 20
Dimana skala tersebut dapat dibuah sesuai dengan keinginan.
Membuat histogram dari gambar
Gambar 21
Gambar ini dapat ditampilkan dengan sintaks: >>plot(img)