SISTEM VISUAL MANUSIA
DAN PEMBENTUKAN CITRA
Copyright @ 2007 by emy 3
Kompetensi
z
Mampu memahami proses pembentukan
citra oleh sensor mata
z
Mampu menjelaskan proses perekam
citra
z
Mampu menjelaskan pengertian citra
digital
Model Citra
z
Citra ada 2 macam :
•
Citra kontinyu
•
Dihasilkan dari sistem optik yg menerima sinyal analog. Contoh : mata manusia, kamera analog•
Citra Diskrit / Citra digital
•
Dihasilkan melalui proses digitalisasi terhadap citra kontinyu. Contoh : kamera digital, scannerCopyright @ 2007 by emy 5
Sistem Visual Manusia
z
Pembentukan Citra oleh Sensor Mata
•
Intensitas cahaya ditangkap oleh diagram iris dan
diteruskan ke bagian retina mata.
•
Bayangan obyek pada retina mata dibentuk
dengan mengikuti konsep sistem optik dimana
fokus lensa terletak antara retina dan lensa mata.
•
Mata dan syaraf otak dapat menginterpretasi
bayangan yang merupakan obyek pada posisi
terbalik.
A cross section of the human eye (Gonzalez & Woods, 1992)
Retina
Blind Spot Fovea Iris
Lens
Visual Axis Cornea
Copyright @ 2007 by emy 7
Sistem Visual Manusia
Sistem Visual Manusia
zSubjective brightness
•
Merupakan tingkat kecemerlangan yang dapat ditangkap sistem visual manusia;•
Merupakan fungsi logaritmik dari intensitas cahaya yang masuk ke mata manusia;•
Mempunyai daerah intensitas yang bergerak dari ambang scotopic (redup) ke ambang photocopic (terang).z
Brightness adaption
•
Merupakan fenomena penyesuaian mata manusia dalammembedakan gradasi tingkat kecemerlangan;
•
Batas daerah tingkat kecemerlangan yang mampu dibedakan secara sekaligus oleh mata manusia lebih kecil dibandingkan dengan daerah tingkat kecemerlangan sebenarnya.Sistem Visual Manusia
Sistem Visual Manusia
z Kepekaan dalam pembedaan tingkat kecemerlangan merupakan fungsi yang tidak sederhana, namun dapat dijelaskan antara lain dengan dua fenomena berikut:
z Mach Band (ditemukan oleh Ernst Mach): pita tengah bagian kiri kelihatan lebih terang dari bagian kanan.
z Simultaneous Contrast: kotak kecil disebelah kiri kelihatan lebih gelap dari kotak kecil disebelah kanan, padahal intensitasnya sama tapi intensitas latar belakang berbeda. Hal sama terjadi bila kertas putih di meja kelihatan lebih putih daripada kertas sama diarahkan ke sinar matahari.
Copyright @ 2007 by emy 9
Data Acquisition
Data Acquisition
zSistem Perekaman Citra
•
Citra yang diperoleh tergantung:•
karakteristik dari obyek yang direkam;•
kondisi variabel dari sistem perekaman;•
Citra merupakan gambaran tentang karakteristik suatu obyek menurut kondisi variabel tertentu;•
Contoh:•
bandingkan hasil foto manusia dengan kamera / sensor optik dan dengan sensor sinar X (kondisi variabel sistem berbeda);•
bandingkan hasil foto pemandangan di tepi laut dan di daerah pegunungan (karakteristik obyek berbeda).Komponen Sistem
Pengolahan Citra Dijital
Copyright @ 2007 by emy 11
Elemen Sistem
Pemrosesan Citra Digital
z
Komputer Digital
•
Yg digunakan pd sistem pemroses citra dpt bervariasi dari komputer mikro sampai komputer besar yg mampumelakukan bermacam-macam fungsi pada citra digital resolusi tiggi
z
Pembentukan Citra
•
Sensor yang sensitif terhadap gelombang EMmenghasilkan sinyal listrik sesuai dengan enersi yang diterima. Analog-to-Digital Converter / Digitizer akan mengubah sinyal listrik tersebut menjadi bentuk dijital.
•
Scanner yang menerima masukan dalam bentuk analog(dokumen, peta, foto) akan mengubah menjadi data dalam bentuk dijital.
Elemen Sistem
Pengolahan Citra Digital
Elemen Sistem
Pengolahan Citra Digital
z
Pemrosesan Citra dan Komunikasi
•
Data citra berukuran besar (perlu tempat simpan yang besar serta waktu proses yang lama).•
Issue penting pada komunikasi: kompresi citra.•
Issue penting pada pemrosesan citra: proses paralel. zPiranti tampilan
•
Berfungsi mengkonversi matrik intensitas yg merepresentasikan citra ke tampilan yg dapat diinterpretasikan oleh mata manusia•
Contoh :•
Dalam bentuk softcopy (layar peraga / monitor).•
Dalam bentuk hardcopy (printer, film writer, plotter).Copyright @ 2007 by emy 13
Elemen Fungsi Dasar
Sistem Pengolahan Citra
Elemen Fungsi Dasar
Sistem Pengolahan Citra
zMedia penyimpanan
•
Piranti yg mempunyai kapasitas memori yg besar
sehingga dpt gambar dapat disimpan secara
permanen agar dapat diproses lagi pada waktu
yang lain.
z
Penyimpanan Citra
•
Penyimpanan jangka pendek (sedang diproses):
memory
•
Penyimpanan on-line (siap dipakai): disk magnetik
•
Penyimpanan arsip: pita atau disk magnetik, CD
Elemen-elemen
Sistem Analisis Citra
Elemen-elemen
Sistem Analisis Citra
Copyright @ 2007 by emy 15
Pengertian
Sensor Aktif dan Pasif
Pengertian
Sensor Aktif dan Pasif
zSensor Pasif
•
Sistem sensor yang merekam data obyek tanpa mengirimkan enersi, sumber enersi bisa dalam bentuk sinar matahari, sinar lampu, dlsb.nya;•
Contoh: sensor optik dari kamera foto, sensor optik pada sistem inderaja.z
Sensor Aktif
•
Sistem sensor yang merekam data obyek mengirimkan dan menerima pantulan dari enersi yang dikirim ke arah obyek, enersi yang dikirim bisa berupa gelombang pendek, sinar X, dlsb.nya;•
Contoh: sensor Rontgen untuk foto thorax, sensor gelombang pendek pada sistem radar, sensor ultrasound pada sistem USG.Sensor Pasif Optik dan
Sensor Aktif Radar
Sensor Pasif Optik dan
Sensor Aktif Radar
Optical Sensor / Passive Sensor: Landsat TM (Land Satellite) - USA, 1982 Landsat MSS - USA, 1984
SPOT (Systeme Probatoire d’Observation de la Terre) - French, 1986/1990
Radar Sensor / Active Sensor:
ERS1 (First European Remote Sensing Satellite) -ESA, 1991
FUYO-1 (JERS-1) - Japan, 1992
Copyright @ 2007 by emy 17
Pengertian
Citra Dijital
z Posisi koordinat pada bidang citra mengacu pd bentuk koordinat
kartesian, Citra dijital merupakan fungsi intensitas cahaya f(x,y), dimana harga x dan y merupakan koordinat spasial dan harga fungsi tersebut pada setiap titik (x,y) merupakan tingkat kecemerlangan citra pada titik tersebut;
z Karena cahaya merupakan bentuk energi, maka intensitas cahaya
bernilai antara 0 s.d tak terhingga 0 ≤ f(x,y) < ∞
Pengertian
Citra Dijital
z
Nilai f(x,y) sebenarnya adalah hasil kali dari :
•
i(x,y) = jumlah cahaya yg berasal dari sumbernya(illumination), nilainya antara 0 s.d tak terhingga
•
r(x,y) = derajad kemampuan obyek memantukancahaya (reflection) nilainya antara 0 dan 1 z
Jadi
f(x,y) = i(x,y) . r(x,y)
z
Yg dalam hal ini
•
0 ≤ i(x,y) < ∞•
0 ≤ r(x,y) ≤ 1Copyright @ 2007 by emy 19
Pengertian
Citra Dijital
Pengertian
Citra Dijital
•
Citra dijital adalah citra f(x,y) dimana dilakukan
diskritisasi koordinat spasial (sampling) dan
diskritisasi tingkat kecemerlangannya/keabuan
(kwantisasi);
Pengertian
Citra Dijital
Pengertian
Citra Dijital
Sampl erCitra kontinue Citra dijital Matriks citra dengan obyek angka 5
Resolusi spasial : Resolusi kecemerlangan : Tinggi (16 x 16) Rendah (8 x 8) Tinggi (4)
Copyright @ 2007 by emy 21
Proses Pembentukan
Intensitas Cahaya
z Sumber cahaya menyinari permukaan objek.
z Jumlah pancaran cahaya yg diterima objek pd koordinat (x,y) adlh
i(x,y).
z Objek memantulkan cahaya yg diterimanya dgn derajad pantulan
r(x,y).
z Hasil kali antara i(x,y) dan r(x,y) menyatakan intensitas cahaya pd
koordinat (x,y) yg ditangkap oleh sensor visual pd sistem optik
Permukaan i(x,y) Normal f(x,y) α
Pembentukan
Intensitas Cahaya
z
Nilai i(x,y) ditentukan oleh sumber cahaya
•
Pada hari cerah, matahari menghasilkan iluminasi i(x,y) sekitar 9000 foot candles•
Pada hari mendung, matahari menghasilkan iluminasi i(x,y) sekitar 1000 foot candles•
Pada malam bulan purnama, sinar bulan menghasilkan iluminasi i(x,y) sekitar 0.01 foot candlesz
Nilai r(x,y) ditentukan oleh karakteristik objek
didalam gambar
•
Benda hitam mempunyai r(x,y) = 0.01•
Dinding putih mempunyai r(x,y) = 0.8•
Benda logam dari stainlessteel mempunyai r(x,y) = 0.65•
Salju mempunyai r(x,y) = 0.93Copyright @ 2007 by emy 23
Pembentukan
Intensitas Cahaya
z
Intensitas f dari gambar hitam putih pd titik
(x,y) disebut derajad keabuan (grey level)
z
Dlm hal ini derajad keabuannya bergerak dari
hitam ke putih
z
Skala keabuan (l
min,l
max), atau biasanya
ditulis [0,L], dimana nilai intensitas 0
menyatakan hitam dan L menyatakan
intensitas putih
z
Citra hitam pituh disebut citra satu kanal,
sedangkan citra berwarna disebut spektral
karena tersususn dlm 3 komponen.
Digitalisasi Citra
z
Digitalisasi : representasi citra dari fungsi malar
(kontinyu) menjadi nilai-nilai diskrit.
z
Pada umumya citra digital berbentuk empat persegi
panjang, dan dimensi ukurannya dinyatakan sebagai
tinggi x lebar
z
Citra digital yg berukuran N x M lazim dinyatakan
dengan matriks yg berukuran N baris dan M kolom.
zIndeks baris (i) dan indeks kolom (j) menyatakan suatu
koordinat titik pada citra, sedangkan f(I,j) merupakan
intensitas (derajad keabuan) pd titik (i,j)
z
Proses digitalisasi ada 2:
•
Digitalisasi spasial(x,y) sering disebut sbg sampling•
Digitalisasi intensitas f(x,y) sering disebut sebagaiCopyright @ 2007 by emy 25
Digitalisasi Spasial
z Citra kontinyu disampling pada grid-grid yg berbentuk
bujur sangkar (kisi-kisi dlm arah horizontal dan vertikal)
z Titik asal (0,0) pd gambar berada pada sudut kiri bawah,
sedangkan penomoran piksel (0,0) pd matrik diulai dari sudut kiri atas
z Contoh ukuran sampling 256 x 256 piksel, 128 x 256 piksel
Citra Kontinyu
Sampling
Citra Digital
Digitalisasi Spasial
z
Pembagian gambar menjadi ukuran tertentu
menentukan resolusi (yaitu derajad rincian yg
dpt dilihat) spasial yg diperoleh.
z
Semakin tinggi resolusi yg berarti semakin
kecil ukuran piksel (semakin banyak jml
piksel) semakin halus gambar yg diperoleh
krn informasi yg hilang akibat
pengelompokkan derajad keabuan pd
sampling semakin kecil.
Copyright @ 2007 by emy 27
Digitalisasi
Intensitas
z Proses digitalisasi intensitas /kuantisasi membagi skala
keabuan (0,L) menjadi G buah level yg dinyatakan dengan harga bilangan bulat (integer).
z Biasanya nilai G adalah perpangkatan dari 2 (2m) Dimana : G: derajad keabuan
m : bilangan bulat positif
z Contoh : citra hitam putih dikuantisasi pada 256 level dan
membutuhkan 1 byte (8 bit) untuk merepresentasikan setiap piksel.
z Penyimpanan citra digital yg disampling menjadi N x M
buah piksel dan dikuantisasi menjadi G = 2mlevel derajad
keabuan membutuhkan memori N x M x m
PEMROGRAMAN CITRA
MENGGUNAKAN MATLAB
Copyright @ 2007 by emy 29
Beberapa Bagian dari
Window Matlab
z Current Directory
• menampilkan isi dari direktori kerja saat menggunakan matlab.
z Command History
• berfungsi untuk menyimpan perintah-perintah apa saja yang sebelumnya dilakukan oleh pengguna terhadap matlab.
z Command Window
• tempat untuk menjalankan fungsi, mendeklarasikan variable, menjalankan proses-proses , serta melihat isi variable. z Workspace
• berfungsi untuk menampilkan seluruh variabel-variabel yang sedang aktif pada saat pemakaian matlab.
Getting Help
z
Matlab menyediakan fungsi help yang tidak
berisikan tutorial lengkap mengenai Matlab dan
segala keunggulannya.
z
User dapat menjalankan fungsi ini dengan
menekan tombol pada toolbar atau menulis
perintah ‘helpwin’ pada command window.
z
Matlab juga menyediakan fungsi demos yang
berisikan video tutorial matlab serta
contoh-contoh program yang bisadibuat dengan
matlab
Copyright @ 2007 by emy 31
Variabel Pada Matlab
z
Matlab hanya memiliki dua jenis tipe data
yaitu
•
Numeric dan
•
String.
z
Dalam matlab setiap variabel akan disimpan
dalam bentuk matrik.
z
User dapat langsung menuliskan variabel
baru tanpa harus mendeklarasikannya
terlebih dahulu pada command window
Variabel Pada Matlab
z Penamaan variabel pada
matlab bersifat caseSensitif karena itu perlu diperhatikan penggunaan huruf besar dan kecil pada penamaan
variabel.
z Apabila terdapat variabel
lama dengan nama yang sama maka matlab secara otomatis akan me-replace variabel lama tersebut dengan variabel baru yang dibuat user.
Copyright @ 2007 by emy 33
MATRIKS
z Didalam matlab setiap data
akan disimpan dalam bentuk matriks.
z Dalam membuat suatu data
matriks pada matlab, setiap isi data harus dimulai dari kurung siku ‘[‘ dan diakhiri dengan kurung siku tutup ‘]’.
z Untuk membuat variabel
dengan data yang terdiri beberapa baris, gunakan tanda ‘titik koma’ (;) untuk memisahkan data tiap barisnya.
Matriks Khusus
z
Untuk pemanggilan data berurutan seperti a(1,2,3)
dapat disingkat dengan menggunakan tanda titik dua
‘:’ sehingga menjadi a(1:2).
z
Penggunaan tanda titik dua ‘:’ juga dapat digunakan
untuk memanggil data matriks perbaris atau
perkolom.
z
Contoh penggunaan:
•
c(2:5) = memanggil data matrik baris 2 sampai baris 5•
a(1,:) = memanggil data matriks pada baris pertama•
b(:,3) = memanggil data matris pada kolom ketigaCopyright @ 2007 by emy 35
Manipulasi Matriks
z Beberapa fungsi untuk memanipulasi matrik yang umum digunakan
untuk menyelesaikan sistem persamaan linier, metode simplek, dll
z Fungsinya diantaranya :
•
Transpose matrik : ‘•
Ordo matriks A : size(A)•
Ordo dari vektor A : [m,n] = size(A)•
Invers matriks A : inv(A)•
Menjumlahkan elemen diagonal matrik A = trace(A)•
Menjumlahkan elemen kolom pd matrik A= sum(A) atau sum(A,1)•
Menjumlahkan elemen baris pd matrik A = sum(A,2)•
Mengurutkan elemen kolom matrika A = sort(A) atau sort(A,1)•
Mengurutkan elemen baris matrika A = sort(A) atau sort(A,2)•
Menguji kesamaan matrik A dan B = isequal(A,B)Mengakses Elemen Matrik
z elemen matriks dapat diakses satu persatu maupun perbaris atau kolom
z Untuk mengakses sebuah elemen matriks dapat dilakukan dengan menyebutkan posisi baris dan kolomnya, contoh
•
A(3,4)z Untuk mengakses seluruh elemen dalam satu baris atau kolom dengan menggunakan ttk dua (:)
•
Untuk menghasilkan tampilan data matrik pada baris ke m = A(m,:)•
Untuk menghasilkan tampilan data matrik mulai baris tertentu pada kolom ke n = A(2:m , n)z Untuk menghapus baris/kolom matrik menggunakan tanda [ ]
Copyright @ 2007 by emy 37
OUTPUT
z
Perintah
disp
•
Sintaks :disp(nama_variabel)
•
Argumen perintah disp adalah tunggal, sehingga apabila akan memuncukanbeberapa tampilan maka harus dituliskan perintah disp
berulang-ulang z
Contoh :
OUTPUT
z Syarat digunakannyadisp, isi didalamnya harus
merupakan strings, jadi jika ingin menampilkan sebuah angka terlebih dahulu dirubah kedalam bentuk strings dengan menggunakan function num2str( ).
Copyright @ 2007 by emy 39
OUTPUT
z
Perintah
fprintf
•
Sintaks :
fprintf(format, A, ……..)
•
Format
adalah bentuk penulisan yg akan
ditampilkan dilayar seperti jumlah angka
desimal, tab, lebar karakter, penulisan di baris
baru, dll
•
A
adalah nama variabel yg isinya akan
dicetak di layar
KONVERSI KARAKTER
\n
\f
\b
‘%i’
‘%f’
‘%e’
‘%d’
‘%c’
KONVERSI
Penulisan dituliskan pada baris baru
Formfeed(penulisan diteruskan dalam
baris yg sama
Backspace
Notasi desimal dengan tanda
+/-Notasi titik tetap (fixed point)
Notasi eksponensial
Notasi desimal dengan tanda
+/-Karakter tunggal
Copyright @ 2007 by emy 41
INPUT
z
Untuk membaca data dari keyboard, gunakan
perintah
INPUT
z
Bentuk Umumnya :
Nama_variabel = input (‘teks’)
z
Apabila di run akan muncul di layar command
window teks dan menunggu inputan dari user
yg diakhiri dengan penekanan tombol enter,
apabila langsung dienter maka teks akan
berisi matriks kosong
Copyright @ 2007 by emy 43
Contoh Untuk Pemrosesan
Citra
z
Image dibagi kedalam 2 bagian yaitu:
•
Image warna•
Image kelabu/grayscalez
Membaca Data Citra
•
Tulis perintah di command window>> Citra=imread(‘D:\Gambar\peppers.bmp’); z
Untuk mengetahui ukuran image tulis
perintah:
>>size(Citra)
Membaca Data Citra
z
Untuk menampilkan sebagian data citra,
perintahnya:
>> citra_sebagian= citra(1:10,1:10) >> imshow(citra_sebagian)
Copyright @ 2007 by emy 45
Menyimpan Citra
z
Perintahnya :
•
imwrite(X,map,’nama citra’) zMengubah ukuran citra :
•
imresize(variabel penampung citra,ukuran perbesaran/pengecilan)z
Perintah merotasi
•
Variabel penampung= imrotate(variael citra,ukuran derajad perputaran,’nama citra’)z
Croping gambar
•
Imcrop(variabel penampung citra)MEMBENTUK
M-FILE
z
Dengan M-File dapat memberikan kontrol lebih
banyak diandingkan dengan command line
•
Percabangan•
Perulangan, dllz
Struktur mirip bhs C atau Pascal yg membagi
program dalam blok program berupa
fungsi-fungsi
Copyright @ 2007 by emy 47
MEMBUKA
JENDELA M-FILE
z
Melalui menu
File – New – M File
atau
z
Menekan tombol
Ctrl-N
BAGIAN-BAGIAN
FUNGSI DALAM MATLAB
zDefinisi Fungsi
•
Di dalam M File, kita dapat menuliskan
fungsi-fungsi yang berisikan berbagai operasi sehingga
menghasilkan data yang diinginkan.
•
BU :
Copyright @ 2007 by emy 49
CONTOH
PENGGUNAAN FUNGSI
IF, ELSE, ElSEIF
z
Bentuk Umum
Penulisan statemen
if
Copyright @ 2007 by emy 51
SWITCH
z
Bentuk umumnya
LOOP FOR
z
Loop for memungkinkan sekelompok perintah
diulang sebanyak suatu jumlah yang tetap
z
BU :
z
Default dari nilai increment (penambahan nilai
setiap perulangan) jika tidak ditentukan oleh
user adalah 1.
Copyright @ 2007 by emy 53
Loop For
z Contoh :
z Biasanya loop for dapat dibuat sehingga berada dalam loop for
yang lain sebanyak yang diinginkan
z Contoh : for i=1:10 for j=1:5 U(i,j)=i^2+j^2; end end
WHILE
z
Statement while digunakan untuk aliran
data yang bersifat perulangan.
z
Loop while mengerjakan sekelompok
perintah yang diulang secara tidak
terbatas.
Copyright @ 2007 by emy 55
WHILE
z
Contoh Penggunaan
z
Hasil setelah dijalankan
Latihan
z Sebutkan perbedaan input dan output dari proses-proses
pengolahan citra digital, komputer grafik, dan data processing
z Apa perbedaan sampling dan kuantisasi dalam citra z Bila citra gray scale dengan ukuran 320 x 240 pixel dan
derajad keabuan 256, berapakah sampling dan kuantisasi pada citra tersebut
z Berdasarkan teknik pengambilannya, sebutkan jenis-jenis
citra yang saudara kenal
z Jelaskan tiga tahap dalam pengolahan citra dan apa