BAB II
LANDASAN TEORI
2.1Citra
Secara harafiah, citra (image) adalah gambar pada bidang dwimatra (dua dimensi). Ditinjau dari sudut pandang matematis, citra merupakan fungsi menerus (continue) dari intensitas cahaya pada bidang dwimatra. Sumber cahaya menerangi objek, objek memantulkan kembali sebagian dari berkas cahaya tersebut. Pantulan cahaya ini ditangkap oleh oleh alat-alat optik, misalnya mata pada manusia, kamera, pemindai (scanner), dan sebagainya, sehingga bayangan objek yang disebut citra tersebut terekam.
Citra sebagai keluaran dari suatu sistem perekaman data dapat bersifat: 1. optik berupa foto.
2. analog berupa sinyal video seperti gambar pada monitor televise. 3. digital yang dapat langsung disimpan pada suatu pita magnetic.
Citra bergerak (moving images) adalah rangkaian citra diam yang ditampilkan secara beruntun (sekuensial) sehingga memberi kesan pada mata kita sebagai gambar yang bergerak. Setiap citra di dalam rangkaian itu disebut frame. Gambar- gambar yang tampak pada film layar lebar atau televisi pada hakikatnya terdiri atas ratusan sampai ribuan frame (Ahmad, 2005).
2.2Citra Digital
teknologi dengan penerapan angka dalam computer untuk proses citra digital. Hasil pengaplikasian citra digital biasa ditemukan dalam robotik, fotografi, dan representasi visual dalam medis (Thyagarajan, 2006).
Citra atau gambar dapat didefinisikan sebagai sebuah fungsi dua dimensi f(x, y) dimana x dan y adalah koordinat bidang datar, sedangkan harga fungsi f di setiap pasangan koordinat (x, y) disebut intensitas atau level keabuan (grey level) dari gambar di titik tersebut. Jika x, y dan f semuanya berhingga (finite)
dan nilainya diskrit, maka gambarnya disebut citra digital atau gambar digital. Sebuah citra digital terdiri dari sejumlah elemen yang berhingga, dimana masing-masing mempunyai lokasi dan nilai tertentu. Elemen-elemen ini disebut sebagai picture element, image element, pels atau piksels (Ahmad, 2005).
2.2.1 Jenis-jenis Citra Digital
Ada tiga jenis citra yang umum digunakan dalam pemrosesan citra. Ketiga jenis citra tersebut yaitu citra warna, citra berskala (citra grayscale), dan citra biner.
2.2.1.1 Citra Warna
Citra berwarna, atau biasa dinamakan citra RGB, merupakan jenis citra yang
menyajikan warna dalam bentuk komponen R (red), G (green), dan B (blue). Setiap
komponen warna menggunakan 8 bit (nilainya berkisar antara 0 sampai dengan
255). Dengan demikian, kemungkinan warna yang bisa disajikan mencapai 255 x 255
x 255 atau 16.581.375 warna. Itu sebabnya format ini dinamakan true color karena
memiliki jumlah warna yang cukup besar. Citra RGB ditunjukan seperti pada Gambar
Gambar 2.1 Citra RGB 2.2.1.2. Citra Grayscale
Citra grayscale menggunakan warna tingkatan keabuan. Warna abu-abu
merupakan satu-satunya warna pada ruang RGB dengan komponen merah, hijau, dan biru yang mempunyai nilai intensitas yang sama. Citra grayscale memiliki
kedalaman warna 8 bit (256 kombinasi warna keabuan). Banyaknya warna yang ada tergantung pada jumlah bit yang disediakan di memori untuk menampung kebutuhan warna ini. Citra grayscale ditunjukan seperti pada Gambar 2.2.
2.2.1.3. Citra Biner
Citra biner merupakan citra yang telah melalui proses pemisahan piksel-piksel berdasarkan derajat keabuan yang dimiliki. Citra biner adalah citra yang hanya direpresentasikan nilai tiap piksel-nya dalam satu bit (satu nilai binary). Citra biner dimana citra pikselnya hanya bernilai hitam dan putih. Dibutuhkan satu bit di memori untuk menyimpan kedua warna ini. Setiap piksel pada citra bernilai 0 untuk warna hitam dan 1 untuk warna putih (Burger, 2009). Salah satu contoh dari citra biner ditunjukan seperti Gambar 2.3.
Gambar 2.3 Citra biner 2.3Pengolahan Citra
Meskipun sebuah citra kaya informasi, namun seringkali citra yang ada mengalami penurunan mutu (degradasi), misalnya mengandung cacat atau derau (noise), warnanya terlalu kontras, kurang tajam, kabur (blurring), dan sebagainya. Tentu saja citra semacam ini menjadi lebih sulit diinterpretasi karena informasi yang disampaikan oleh citra tersebut menjadi berkurang. Agar citra yang mengalami gangguan mudah diinterpretasi (baik oleh manusia maupun mesin), maka citra tersebut perlu dimanipulasi menjadi citra lain yang kualitasnya lebih baik. Bidang studi yang menyangkut hal ini adalah pengolahan citra (image processing).
Pengolahan citra adalah pemrosesan citra, khususnya dengan menggunakan komputer, menjadi citra yang kualitasnya lebih baik . Sebagai contoh, citra burung nuri pada Gambar 2.4 (a) tampak agak gelap, lalu dengan operasi pengolahan citra kontrasnya ditingkatkan sehingga menjadi lebih terang dan tajam (b).
1. perbaikan atau memodifikasi citra perlu dilakukan untuk meningkatkan kualitas penampakan atau untuk menonjolkan beberapa aspek informasi yang terkandung di dalam citra;
2. elemen di dalam citra perlu dikelompokkan, dicocokkan, atau diukur; 3. sebagian citra perlu digabung dengan bagian citra yang lain;
Gambar 2.4 (a) Citra burung nuri yang agak gelap, (b) Citra burung yang telah ditingkatkan kontrasnya sehingga terlihat jelas dan tajam Pengolahan citra bertujuan memperbaiki kualitas citra agar mudah diinterpretasi oleh manusia atau mesin (dalam hal ini komputer). Teknik-teknik pengolahan citra mentransformasikan citra menjadi citra lain. Jadi, masukannya adalah citra dan keluarannya juga citra, namun citra keluaran mempunyai kualitas lebih baik daripada citra masukan. Termasuk ke dalam bidang ini juga adalah pemampatan citra (Kadir, 2013).
2.4Segmentasi
masing-masing objek telah terisolasi atau terlihat jelas. Tingkat keakurasian segmentasi bergantung pada tingkat keberhasilan prosedur analisis yang dilakukan. Dan diharapkan proses segmentasi memiliki tingkat keakuratan yang tinggi. Algoritma dari segmentasi citra terbagi dalam dua macam, yaitu:
1. Diskontinuitas
Pembagian citra berdasarkan perbedaan dalam intensitasnya, contohnya titik, garis, dan tepi (edge).
2. Similaritas
Pembagian citra berdasarkan kesamaan-kesamaan kriteria yang dimilikinya, contohnya thresholding, region growing, region splitting, dan region merging (Sutoyo, 2009).
2.4.1 Deteksi Titik
Pendeteksian titik yang terisolasi dari suatu citra secara prinsip berlangsung secara straight forward. Dapat dikatakan bahwa suatu titik dinyatakan terisolasi jika:
| R | ≥ T
Dimana T adalah threshold positif dan R adalah nilai dari persamaan: R = ��=�����
Dengan demikian, titik yang terisolasi adalah titik yang berbeda (secara signifikan) dengan titik-titik di sekitarnya. Adapun mask-nya adalah :
-1 -1 -1 -1 8 -1 -1 -1 -1
2.4.2 Deteksi Garis
Secara matematis dapat dirumuskan sebagai berikut:
| Ri | > | Rj | dengan i ≠ j
Adapun mask untuk mendeteksi garis adalah sebagai berikut:
Arah horizontal dan vertikal
Arah + 450
2.4.3. Deteksi Tepi
Deteksi tepi adalah proses untuk menemukan perubahan intesitas yang berbeda nyata dalam sebuah bidang citra. Deteksi tepi sensitif terhadap perubahan nilai keabuan yang diambil dari nilai lingkungannya. Dengan cara ini, citra terbentuk dimana bagian-bagian dari citra tampak terang dan di mana perubahan terjadi ketika semua bagian lainnya tetap gelap (Jähne, 2004)
Biasanya operator yang digunakan untuk mendeteksi tepi yang pertama adalah operator berbasis Gradient (turunan pertama), yaitu operator Robert, operator Sobel, dan operator Prewitt. Yang kedua adalah operator berbasis turunan kedua, yaitu operator Laplacian, operator Laplacian Of Gaussian dan operator laplacian Of Gaussian.
2.4.4 Deteksi Tepi Berdasarkan Turunan Pertama
Terdapat berbagai operator deteksi tepi yang telah dikembangkan berdasarkan turunan pertama (first order derivative), diantaranya operator Robert, operator Canny, operator Prewitt, operator Frei-Chen dan operator Sobel. Konsep dasar dari perhitungan deteksi tepi menggunakan turunan pertama adalah dengan memanfaatkan perbedaan nilai suatu piksel dengan piksel tetanggnya, seperti persamaan dibawah ini.
∆y = f(x,y) – f(x,y+1)
∆x = f(x,y) – f(x-1,y)
dimana ∆y menyatakan perbedaan nilai piksel dalam arah y, sedangkan ∆x menyatakan perbedaan nilai piksel dalam arah x. dalam proses konvolusi, ∆y diwakili dengan matrik 2 x 1,
1 −1
Sedangkan∆x diwakili dengan matrik 1 x 2 :
−1 1
∆y dan ∆x dapat digunakan untuk menghitung nilai gradiean sebagai berikut:
gradient = tan-1 ∆ ∆
2.4.5 Deteksi Tepi Berdasarkan Turunan Kedua
Adanya pengembangan selanjutnya dari deteksi tepi mengarah pada turunan kedua (second order detection). Setiap operator deteksi tepi yang telah dijelaskan sebelumnya, akan menampilkan area yang terdeteksi sebagai tepian. Tepian yang dihasilkan masih berupa garis yang tebal. Idealnya, suatu operator deteksi harus dapat menampilkan pusat tepian. Jika suatu deteksi tepi menghasilkan tepian yang lebar maka sangat sulit untuk menentukan pusat dari tepian tersebut. Oleh karena itu perlu dilakukan proses thining untuk mengurangi lebar tepian menjadi 1 piksel. Deteksi tepi dari turunan kedua adalah Laplacian, Laplacian of Gaussian dan Difference Of Gaussian (Putra, 2010).
2.4.6 Operator Laplacian
Deteksi tepi Laplacian dapat menebalkan tepi ke segala arah. Namun, operator Laplacian ini memiliki kelemahan, yakni peka terhadap derau, memberikan ketebalan ganda, dan tidak mampu mendeteksi arah tepi (Gonzalez & Woods, 2002).
Gambar 2.5 Deteksi tepi dengan operator Laplacian 2.4.7 Operator Laplacian of Gaussian
Laplacian of Gaussian adalah salah satu operator deteksi tepi yang dikembangkan
dari turunan kedua. Operator Laplacian of Gaussian sangat berbeda dengan operator dengan operator yang lainnya, karena operator Laplacian berbentuk omny directional (tidak horizontal tidak vertikal). Operator ini akan menangkap tepian
dari semua arah dan menghasilkan tepian yang lebih tajam dari operator yang lainnya. Laplacian of Gaussian terbentuk dari proses Gaussian yang diikuti operasi Laplace. Hasilnya tidak terlalu terpengaruh oleh derau karena fungsi Gaussian adalah mengurangi derau. Laplacian mask meminimalisasi kemungkinan kesalahan deteksi tepi. Fungsi dari Laplacian of Gaussian adalah sebagai berikut (Putra, 2010) :
Fungsi diatas merupakan fungsi untuk membentuk tapis dari Laplacian of Gaussian. Salah satu contoh operator LoG dalam matriks 3 x 3 berikut ini:
0
Gambar 2.6 Deteksi tepi dengan operator LoG 2.4.8 Operator Difference of Gaussian
Difference of Gaussian (DoG) merupakan selisih antara 2 buah fungsi gaussian yang telah dikonvolusikan terlebih dahulu dengan sebuah isyarat atau citra. Hasil akhir adalah sama dengan LoG, yakni zero crossing. Dengan memanfaatkan zero crossing, kita bisa menentukan tepi dari objek pada citra.
Gambar 2.7 menunjukan contoh dari deteksi tepi metode DoG.
2.5 Format File Citra JPEG (.jpg)
JPEG atau Joint Photographic Experts Group adalah format gambar yang banyak digunakan untuk menyimpan gambar-gambar dengan ukuran lebih kecil. Ada beberapa karakteristik gambar dalam JPEG yang tentu kita tahu pasti memiliki ekstensi .jpg atau .jpeg. Selain itu JPEG juga mampu menayangkan warna dengan kedalaman 24-bit true color. Mengkompresi gambar dengan sifat lossy yang pada umumnya digunakan untuk menyimpan gambar-gambar hasil foto. Jika kita ingin menampilkan gambar foto ataupun gambar dengan detail yang rumit dan bergradasi, kita bisa menggunakan jenis file ini. File JPEG dapat menghasilkan gambar yang hampir seperti aslinya. File JPEG dapat menghasilkan warna sampai dengan 16 juta warna. Warna yang disediakan oleh web browser hanya terbatas sampai dengan 216 warna. Namun demikian web browser akan menggantikan warna yang tidak tersedia dengan warna yang serupa yang tersedia, hingga tampilan gambar tetap akan terlihat cantik. Ukuran file JPEG biasanya lebih besar dari pada GIF.
2.6 Peak Signal to Noise Ratio (PSNR)
Peak Signal to Noise Ratio (PSNR) adalah sebuah perhitungan yang menentukan
nilai dari sebuah citra yang dihasilkan. PSNR adalah perbandingan antara nilai maksimum dari sinyal yang diukur dengan besarnya noise yang berpengaruh pada sinyal tersebut. PSNR biasanya diukur dalam satuan desibel. Nilai PSNR ditentukan oleh besar atau kecilnya nilai MSE yang terjadi pada citra. Semakin besar nilai PSNR, semakin baik pula hasil yang diperoleh pada tampilan citra hasil. Sebaliknya, semakin kecil nilai PSNR, maka akan semakin buruk pula hasil yang diperoleh pada tampilan citra hasil. Satuan nilai dari PSNR sama seperti MSE, yaitu dB (decibel). Jadi hubungan antara nilai PSNR dengan nilai MSE adalah semakin besar nilai PSNR, maka akan semakin kecil nilai MSE-nya (Sutoyo, 2009). Perhitungan PSNR dilakukan dengan menggunakan rumus:
PSNR = 10 log 2552 � �
Keterangan :
255 = nilai skala keabuan dari citra 2.7 Mean Square Error (MSE)
Mean Square Error (MSE) adalah kesalahan kuadrat rata-rata. Nilai MSE didapat
dengan membandingkan nilai selisih piksel-piksel citra asal dengan citra hasil pada posisi piksel yang sama. Semakin besar nilai MSE, maka tampilan pada citra hasil akan semakin buruk. Sebaliknya, semakin kecil nilai MSE, maka tampilan pada citra hasil akan semakin baik. Satuan nilai dari MSE. Perhitungan MSE dilakukan dengan menggunakan rumus:
Keterangan :
f (x, y) = citra asli dengan dimensi m x n
fˆ(x, y) = citra hasil yang telah mengalami proses 2.8 Running Time
Running time adalah sejumlah waktu yang dibutuhkan untuk mengeksekusi setiap
baris pseudocode. Satu baris statement memilki jumlah waktu yang berbeda dengan baris yang lain maka dari itu akan diasumsikan bahwa setiap pelaksanaan garis membutuhkan waktu ci, dimana ci adalah konstan. Running time dari sebuah algoritma adalah jumlah dari running time dari setiap statement yang diesksekusi (Claudia,2014)..
2.9 Kommpleksitas Theta
Kompleksitas theta adalah bagian dari kompleksitas waktu dari sebuah algoritma.
Big Ɵ ( Big Theta) didefinisikan bahwa f(n) merupakan Theta dari g(n) dan dinotasikan f(n) = Ɵ(g(n) jika dan hanya jika terdapat tiga konstanta positif n0 , c1
dan c2 sedemikian berlaku (Claudia, 2014):