• Tidak ada hasil yang ditemukan

BAB 2 TINJAUAN TEORITIS

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB 2 TINJAUAN TEORITIS"

Copied!
21
0
0

Teks penuh

(1)

TINJAUAN TEORITIS

2.7. Kecerdasan Buatan

Kecerdasan Buatan adalah suatu bidang sains komputer yang ditujukan untuk menyempurnakan kinerja sistem instrumentasi elektronika. Peralatan atau sistem yang dibangun dapat melakukan kerja yang memerlukan kecerdasan apa yang dilakukan oleh manusia. Sebagai contoh, jika kita menanyakan suatu subjek pada mesin atau peralatan, maka akan memperoleh jawaban darinya. Kecerdasan lebih menekankan pada apa yang dikerjakan otak, bukan pada bagaimana otak bekerja.

2.7.1. Topologi Kecerdasan Buatan

Kecerdasan pada suatu sistem membutuhkan kemampuan prediksi dan pengendalian sistem secara literatif seperti layaknya seorang yang memiliki kecerdasan tertentu. Menurut Russel dan Norwig kecerdasan tiruan terdiri dari 2 dimensi yaitu :

a. Peniruan perilaku

b. Peniruan cara berfikir manusia

Sistem yang mampu meniruan perilaku manusia memiliki kemampuan dalam hal :

a. Menyimpan informasi

b. Menggunakan informasi yang dimiliki untuk melakukan suatu pekerjaan dan menarik kesimpulan

c. Beradaptasi dengan keadaan baru d. Berkomunikasi dengan pengunanya

Sistem yang mampu menirukan cara berfikir manusia terdiri atas dua kategori, yaitu :

(2)

b. Kecerdasan Berbasis Pengetahuan (Ekspert System) c. Kecerdasan Komputasional

Gbr 2.1 Topologi Kecerdasan Tiruan

2.7.2. Kecerdasan Buatan Komputasional

Dalam hal ini kecerdasan buatan dibangun dengan pendekatan menciptakan program-program komputer yang menjelaskan tingkah laku mesin cerdas. Mekanisme proses pemodelan otak digunakan untuk mencapai kecerdasan.

Menurut topologinya, Kecerdasan Buatan Komputasional dapat dikategorikan menjadi tiga kelompok, yaitu :

a. Jaringan Sarat Tiruan (JST) b. Fuzzy

c. Algoritma Genetik

2.8. Jaringan Saraf Tiruan (JST)

Jaringan Saraf Tiruan (JST) merupakan suatu sistem pemrosesan informasi yang memiliki karakteristik-karakteristik menyerupai jaringan syaraf biologi (Fauset, 1994). JST juga merupakan sebuah mesin yang dirancang untuk memodelkan cara kerja otak manusia mengerjakan fungsi atau tugas-tugas tertentu.

(3)

a. JST adalah suatu teknik pemrosesan informasi berbasis komputer yang mensimulasikan dan memodelkan sistem saraf biologis.

b. Suatu model matematik yang mengandung sejumlah besar elemen proses yang diorganisasikan dalam lapisan-lapisan.

c. Suatu sistem komputasi yang dibuat dari sejumlah elemen proses yang sederhana dan saling terkoneksi untuk memproses informasi melalui masukan dari luar dan mampu merespon keadaaan yang dinamis.

d. JST adalah suatu teknologi komputasi yang berbasis hanya pada model syaraf terhadap berbagai macam masukan.

2.8.1. Jaringan Saraf Biologi Manusia

Otak manusia memiliki struktur yang sangat kompleks dan memiliki kemampuan yang luar biasa. Otak terdiri dari neuron-neuron dari penghubung yang disebut sinapsis. Neuron bekerja berdasarkan implus/sinyal yang diberikan pada neuron. Neuron meneruskannya pada neuron lain. Diperkirakan manusia memiliki 1012 neuron dan 6.1025 sinapsis. Dengan jumlah yang begitu banyak, otak mampu mengenali pola, melakukan perhitungan dan mengontrol organ-organ tubuh dengan kecepatan yang lebih tinggi dibandingkan komputer digital.

Pada waktu lahir, otak mempunvai struktur yang menakjubkan karena kemampuannya membentuk sendiri aturan-aturan/pola berdasarkan pengalaman yang diterima. Jumlah dan kemampuan neuron berkembang seiring dengan pertumbuhan fisik manusia, terutama pada umur 0 – 2 thaun. Pada usia 2 tahun pertama umur manusia, terbentuk 1 juta sinapsi perdetiknya.

(4)

Gbr 2.2 Struktur Jaringan Saraf Manusia

Neuron memiliki 3 komponen penting yaitu dendrit, soma dan asom. Dendrit menerima sinyal neuron lain. Sinyal tersebut berupa implus elektrik yang dikirim melalui celah sinaptik melalui proses kimiawi. Sinyal tersebut di modifiakasi (diperkuat/diperlemah) di celah sinaptik. Berikutnya, Soma menjumlahkan sinyal-sinyal yang masuk. Jika jumlah tersebut cukup kuat dan melebihi batas ambang, maka sinyal tersebut akan diteruskan ke sel lain melalui axon. Frekuensi penerusan sinyal berbeda antara satu sel dengan yang lain.

Neuron biologi merupakan sistem yang tolerant dalam 2 hal. Pertama, manusia dapat mengenali sinyal input yang agak berbeda dari yang pernah kita terima sebelumnya. Kedua, otak manusia tetap mampu belajar meskipun beberapa neuronnya tidak mampu bekerja dengan baik. Jika sebuah neuron rusak, neuron lain kadang-kadang dapat dilatih untuk menggantikan fungsi sel yang rusak.

2.8.2. Jaringan Saraf Manusia Sebagai Dasar Jaringan Saraf Tiruan

Jaringan Saraf Tiruan (JST) merupakan suatu sistem pemrosesan informasi yang memiliki karakteristik-karakteristik menyerupai jaringan syaraf biologi (Fauset, 1994). JST juga merupakan sebuah mesin yang dirancang untuk memodelkan cara kerja otak manusia mengerjakan fungsi atau tugas-tugas tertentu.

(5)

Berikut ini adalah hubungan antara konsep biologi dengan jaringan saraf tiruan menurut Medsker dan Liebowitz (1994) dalam Turban (2001) yang digambarkan pada table berikut ini :

Tabel 2.1 Taber Konsep Jaringan Saraf Biologi dan Tiruan

Jaringan Saraf Biologi (Manusia) Jaringan Saraf Tiruan (JST)

Soma Node (Simpul)

Dendrit Input

Axon Output

Synapse Weight (bobot)

Slow speed Fast speed

Terdiri dari banyak neuron (109) Beberapa Neuron

2.8.3. Karakteristik Jaringan Saraf Tiruan

Dengan meniru sistem jaringan biologis (manusia), maka sistem jaringan saraf tiruan memiliki 3 karakteristik utama, yaitu :

a. Arsitektur Jaringan

Merupakan pola keterhubungan antara neuron. Keterhubungan neuron-neuron inilah yang membentuk suatu jaringan.

b. Algoritma Jaringan

Merupakan metode untuk menentukan nilai bobot hubungan. Ada dua metode pada algoritma jaringan saraf tiruan, yaitu metode bagaimana JST tersebut melakukan Pelatihan (Pembelajaran) dan, metode bagaimana JST tersebut melakukan Pengenalan (Aplikasi).

c. Fungsi Aktivasi

Merupakan fungsi untuk menentukan nilai keluaran berdasarkan nilai total masukan pada neuron. Fungsi aktivasi suatu algoritma jaringan dapat berbeda dengan fungsi aktivasi algoritma jaringan lain.

(6)

2.8.4. Arsitektur Jaringan Saraf Tiruan

Secara umum, arsitektur JST terdiri atas beberapa bagian lapisan, yaitu : a. Lapisan masukan (input layer)

Merupakan lapisan yang terdiri dari beberapa neuron yang akan menerima sinyal dari luar dan kemudian meneruskan ke neuron-neuron lain dalam jaringan. Lapisan ini diilhami berdasarkan ciri-ciri dan cara kerja sel-sel syaraf sensorik pada jaringan saraf biologi (manusia).

b. Lapisan tersembunyi (hidden layer)

Merupakan tiruan dari dari sel-sel saraf konektur pada jaringan saraf biologi (manusia). Lapisan tersembunyi berfungsi meningkatkan kemampuan jaringan dalam memecahkan masalah. Konsekuensi dari adanya lapisan ini adalah pelatihan menjadi makin sulit atau lama.

c. Lapisan keluaran (output layer)

Lapisan keluaran berfungsi menyalurkan sinyal-sinyal keluaran hasil pemrosesan jaringan. Lapisan ini terdiri dari sejumlah neuron. Lapisan ini jugan tiruan dari sel saraf motorik pada jaringan biologi (manusia).

(7)

Pada gambar dibawah ini digambarkan keterhubungan dari bagian-bagian arsitektur Jaringan Saraf Tiruan.

Gbr 2.3 Arsitektur Jaringan Saraf Tiruan

2.8.5. Prinsip Dasar Pelatihan\Pembelajaran JST

Contoh paling sempurna dari pelatihan untuk mengasosiasikan pola adalah pada manusia. Bila kita memegang buah jeruk berwarna kuning dihadapan seorang bayi dan secara berulang-ulang mengatakan kuning maka kekuatan koneksi synaptic akan meningkat bila sel Saraf yang sesuai dari pusat optic secara simultan teraktivitasi bersama dengan yang berasal dari pusat auditori suara untuk kata jeruk yang diucapkan.

Prinsip ini dikemukakan oleh Hebb (1949). Walaupun Hebb hanya menyatakan jika neuron A dan neuron B tereksitasi secara simultan maka kekuatan koneksi synaptic diantara keduanya akan meningkat. Namun prinsip inilah yang kebanyakan menjiwai semua model matematis Jaringan Syaraf Tiruan yang ada sekarang.

Network Input Network Output

Output Layer

Hidden Layer

(8)

2.8.6. Proses Algoritma Pelatihan\Pembelajaran Jaringan Saraf Tiruan

Sebelum digunakan, JST dilatih untuk mengenal fungsi pemetaan. Pelatihan merupakan proses belajar JST yang dilakukan dengan menyesuaikan bobot terkoneksi jaringan. Suatu Jaringan Saraf Tiruan belajar dari pengalaman. Proses yang lazim dari pembelajaran meliputi 3 tugas, yaitu :

a. Perhitungan output

b. Membandingkan output dengan target yang diinginkan c. Menyesuaikan bobot dan mengulang prosesnya.

Proses pelatihan atau pembelajaran tersebut merupakan proses bobot antar neuron sehingga sebuah jaringan dapat menyelesaikan sebuah masalah. Proses belajar JST diklasifikasikan menjadi dua:

a. Belajar dengan pengawasan ( Supervised learning) b. Belajar tanpa pengawasan ( Unsupervised learning)

2.8.7. Belajar Dengan Pengawasan ( Supervised Learning)

Belajar dengan Pengawasan atau Supervised Learning adalah proses belajar dengan memberikan latihan untuk mencapai suatu target keluaran yang ditentukan. Dengan memberikan target keluaran, perubahan masukan akan diadaptasi oleh keluaran dengan mengubah bobot interkoneksinya mengikuti algoritma belajar yang ditentukan. Pelatihan dilakukan dengan memberikan pasangan pola-pola masukan dan keluaran.

2.8.8. Fungsi Aktifasi

Sebuah sinyal aktivasi diperlukan oleh suatau neuron untuk menyalakan atau memadamkan perjalanan sinyal dari neuron yang satu ke neuron yang lainnya. Sinyal aktivasi dalam jaringan saraf tiruan ditentukan oleh suatu fungsi aktivasi.

(9)

Ada beberapa fungsi yang digunakan dalam JST (Fausset,1990) antara lain : a. Fungsi Identitas

b. Fungsi Linear

c. Fungsi Treshold (ambang) d. Fungsi Sigmoid Bipolar e. Fungsi Sigmoid Biner

Untuk memilih fungsi aktivasi yang akan digunakan dalam sistem jaringan saraf tiruan maka tergantung pada algoritma jaringan yang digunakan.

2.8.9. Fungsi Sigmoid Bipolar

Fungsi ini tergantung pada nilai parameter Alpha. Nilai parameter alpha antara 0 sampai dengan 1. Fungsi ini merupakan fungsi yang menghasilkan nilai keluaran antara -1 sampai +1. Nilai masukan vector yang dapat diterima oleh fungsi ini dalam perhitungannya adalah nilai 1 atau 0, nilai masukan vektor inilah yang mempengaruhi besar nilai bobot.

2.8.10. Algoritma Jaringan Saraf Tiruan

Penggunaan Jaringan Saraf Tiruan dalam menyelesaikan permasalahan akan dipengaruhi oleh permasalahan apa yang akan diselesaikan. Berbagai macam permasalan yang dapat diselesaikan dengan Jaringan Saraf Tiruan, antara lain; pengenalan pola dan optimisasi. Dalam hal ini diperlukan keputusan terbaik dalam memilih algoritma yang terbaik untuk menyelesaikan masalah, dari beberapa algoritma Jaringan Saraf tersebut antara lain :

a. Algoritma Jaringan Kohonen b. Algoritma Jaringan Fractal

c. Algoritma Jaringan Learning Vector Quantization d. Algoritma Jaringan Cyclic

e. Algoritma Jaringan Alternating Projection f. Algoritma Jaringan Hammimg

(10)

g. Algoritma Jaringan Feedforwad Banyak Lapis

Dari berbagai macam Algoritma Jaringan Saraf Tiruan yang telah ada, maka pengguna haruslah menentukan salah satu algoritma jaringan yang cocok dan dapat menyelesaikan masalah sesuai permasalahan. Peneliti juga dapat menciptakan algoritma jaringan sendiri jika diperlukan.

2.8.11. Learning Vector Quantization (LVQ)

Learning Vector Quantization (LVQ) adalah suatu metode untuk melakukan pembelajaran pada lapisan kompetitif yang terawasi. Suatu lapisan kompetitif akan secara otomatis belajar untuk mengklasifikasikan vektor-vektor input. Kelas-kelas yang didapatkan sebagai hasil dari lapisan kompetitif ini hanya tergantung pada jarak antara vektor-vektor input. Jika 2 buah vektor input mendekati sama, maka lapisan kompetitif akan meletakkan kedua vektor input tersebut ke dalam kelas yang sama.

Algoritma :

1. Tetapkan: BobotAwal (W),Maksimum Epoh (MaEpoh), Eror Minimum yang diharapkan (Eps), Learning rate (α).

2. Masukkan :

a. Input : x(m,n); b. Target m : T(1,n)

3. Tetapkan kondisi awal: a. Epoh=0; b. Err =1.

4. Kerjakan jika : (epoh<MaxEpoh) atau (α > eps) a. Epoh=epoh + 1

b. Kerjakan untuk i=1 sampai n

a. Tentukan J sedemikian hingga || w – wj || minimum

(11)

b. Perbaiki wj dengan ketentuan:

i. Jika t = Cj maka :

Wj(baru)=Wj(lama) + α (X – Wj(lama))

ii. Jika T ≠ Cj maka :

Wj(baru)=Wj(lama)- α (X- Wj(lama))

c. Kurangi nilai α

5. Selesai

[Diah Puspitaningrum, 2006. Pengantar Jaringan Syaraf Tiruan. Yogyakarta: Andi. Hal 258].

2.9. Pengenalan Pola Pola (Pattern Recognation)

Pola adalah entitas yang terdefenisi dan dapat didefinisikan melalui ciri-cirinya (feature). Ciri-ciri tersebut digunakan untuk membedakan suatu pola dengan pola yang lain. Pengenalan pola bertujuan untuk menentukan kelompok untuk kategori pola berdasarkan ciri-ciri yang dimiliki oleh pola tersebut. Dengan kata lain pengenalan pola membedakan objek dengan objek lain.

Pengenalan Pola (Pattern Recognition) adalah suatu proses atau rangkaian pekerjaan yang bertujuan mengklasifikasikan data numerik dan simbol. Banyak teknik statistik dan sintaksis yang telah dikembangkan untuk keperluan klasifikasi pola dan teknik-teknik ini dapat memainkan peran yang penting dalam sistem visual untuk pengenalan objek yang biasanya memerlukan banyak teknik. Bentuk-bentuk objek tertentu dalam dunia nyata yang sangat kompleks dapat dibandingkan dengan pola-pola dasar di dalam citra sehingga penggolongan objek yang bersangkutan dapat dilakukan dengan lebih mudah.

(12)

2.9.1. Proses Pengenalan Pola

Proses pengenalan pola mendeskripsikan tahap-tahapan dalam pengenalan pola. Hal ini dimaksudkan agar adanya langkah-langkah terstruktur dalam melakukan pengenalan pola. Berikut tahap-tahapan dalam proses Pengenalan Pola :

a. Data ( gambar, bunyi, teks) untuk dikelaskan

b. Menghilangkan ganguan/menormalkan gambar (Image processing). c. Pengiraan Citra

d. Pengenalan Kelas (mengambil keputusan)

2.9.2. Pendekatan Pengenalan Pola Dengan Statistik

Pendekatan ini merupakan konsep pengenalan pola yang mengacu terhadap nilai statistik yang mendefinisikan pola sehingga pola dapat dikenali. Semakin banyak pola yang disimpan, maka sistem akan semakin cerdas. Salah satu contoh penerapannya banyak pada pola pengenalan iris scan. Kelemahannya hanya bergantung pada data yang disimpan saja, tidak memiliki sesuatu struktur yang unik yang dapat menjadi kunci pengenalan pola. Metode Statistik mendefinisikan/mengidentifikasi berdasarkan data-data statistik objek tersebut.

2.9.3. Pendekatan Pengenalan Pola Dengan Sintaks (Rule)

Pendekatan ini merupakan konsep pengenalan pola yang mengacu terhadap aturan-aturan (rule) yang mendefinisikan pola sehingga pola dapat dikenali. Seluruh rule-rule telah dikenalkan kepada sistem, kemudian sistem memproses pola masukan. Hasil proses adalah rule-rule yang terpenuhi pola masukan dijadikan sebagai pengambilan keputusan dalam mengenali pola tersebut. Dengan rule / aturan maka sistem yang lebih terstruktur sehingga memiliki sesuatu ciri yang unik. Salah satu contoh penerapannya pada pola pengenalan sidik jari / finger print... Metode Sintaks mendefinisikan atau mengidentifikasi berdasarkan aturan-aturan tertentu.

(13)

2.9.4. Pendekatan Pengenalan Pola Dengan JST

Pendekatan Pengenalan Pola Dengan JST merupakan perpaduan pendekatan secara statisti dan sintaks (Rule). JST mengenali dengan melakukan proses mengenali pola masukan terhadap nilai statistik dan sintak yang dimiliki pola masukan yang akan dikenali. Seluruh nilai statistik dan sintaks yang diperoleh disajikan berupa nilai-nilai bobot. Nilai bobot-bobot inilah yang nantinya dijadikan acuan dalam mengenali pola masukan.

2.10. Pengolahan Citra

Pengolahan citra bertujuan untuk mengolah citra untuk mendapatkan citra hasil terbaik dalam satu tujuan tertentu. Banyak proses-proses pengolahan citra yang dapat dimanfaatkan dalam mendapatkan hasil ataupun keluaran citra yang sesuai kebutuhan dan tujuan citra tersebut diolah. Beberapa proses pengolahan citra antara lain; Grayscale, Treshold, Binerisasi, Penghilangan Noise, dan lain-lain.

2.10.1. Citra RGB

Suatu citra biasanya mengacu ke citra RGB. Sebenarnya bagaimana citra disimpan dan dimanipulasi dalam komputer diturunkan dari teknologi televisi, yang pertama kali mengaplikasikannya untuk tampilan grafis komputer. Jika dilihat dengan kaca pembesar, tampilan monitor komputer akan terdiri dari sejumlah triplet titik warna merah (RED), hijau (GREEN) dan biru (BLUE). Tergantung pada pabrik monitornya untuk menentukan apakah titik tersebut merupakan titik bulat atau kotak kecil, tetapi akan selalu terdiri dari 3 triplet red, green dan blue.

Citra dalam komputer tidak lebih dari sekumpulan sejumlah triplet dimana setiap triplet terdiri atas variasi tingkat keterangan (brightnes) dari elemen red, green dan blue. Representasinya dalam citra, triplet akan terdiri dari 3 angka yang mengatur intensitas dari Red (R), Green (G) dan Blue (Blue) dari suatu triplet. Setiap triplet akan merepresentasikan 1 piksel (picture element). Suatu triplet dengan nilai 67, 228 dan 180 berarti akan mengeset nilai R ke nilai 67, G ke nilai 228 dan B ke nilai 180.

(14)

Angka-angka RGB ini yang seringkali disebut dengan color values. Pada format .bmp citra setiap piksel pada citra direpresentasikan dengan dengan 24 bit, 8 bit untuk R, 8 bit untuk G dan 8 bit untuk B, dengan pengaturan seperti pada gambar dibawah ini.

Gambar 2.4 Citra RGB

2.10.2. Citra Grayscale (Derajat Keabuan)

Grayscale adalah mengubah citra berwarna yang terdiri dari 3 layer matrik,yaitu R-layer, G-R-layer, B-layer menjadi 1 layer matriks dimana pada citra hasil tidak ada lagi kombinasi warna melainkan derajat keabuan. Untuk mengubah citra berwarna yang mempunyai nilai matriks masing-masing R, G, dan B menjadi citra gray scale dengan nilai S, maka konversi dapat dilakukan dengan mengambil rata-rata dari nilai R, G dan B sehingga dapat ditulis menjadi :

S = (R + G + B) / 3 Warna = RGB (S , S , S)

Proses ini juga diterapkan dalam proses thinning citra berwarna. Kebanyakan gray-scale thinning algorithm dibangun untuk meng-extract objek dan menipiskannya untuk memisahkan dari image background.

2.10.3. Citra Treshold

Pada proses Thresholding, ditetapkan suatu nilai batas / ambang, batas ambang yang ditetapkan sebesar A dimana elemen-elemen (piksel) pada citra batas nilainya lebih kecil dari pada nilai batas tersebut ‘dimatikan’, dan elemen-elemen lainnya dianggap

(15)

‘menyala’, dan keduanya diubah nilainya sesuai statusnya, kedua status ini hanya memiliki dua kemungkinan nilai, yaitu 0 atau 1.

Thereshold digunakan untuk mengatur jumlah derajat keabuan yang ada pada citra. Dengan menggunakan Threshold,maka derajat keabuan bisa diubah sesuai dengan keinginanan. Thresholding ini pada dasarnya adalah proses pengubahan kuantitas pada citra, sehingga untuk melakukan Theresholding dengan derajat keabuan A dapat digunakan rumus :

Jika x < A maka x = 0, jika tidak maka x = 255 Warna = RGB (x , x , x)

2.10.4. Citra Biner

Proses pembineran dilakukan dengan membulatkan ke atas atau kebawah untuk setiap nilai keabuan dari piksel yang berada di atas atau bawah harga ambang. Metode untuk menentukan besarnya harga ambang disebut thresholding.

Citra Biner merupakan citra yang banyak digunakan untuk keperluan Pattern Recognition yang sederhana seperti pengenalan angka atau pengenalan huruf. Prosesnya sama dengan Thereshold yaitu mengubah kuantitas citra. Untuk citra dengan derajat keabuan 256, maka nilai tengahnya adalah 128:

Jika x < 128 maka x = 0, jika tidak maka x = 1

Binerisasi akan menghasilkan matriks yang membentuk pola citra yang telah di Thresholding dengan elemen 0 atau 1.

2.11. Thinning

Thinning merupakan suatu langkah preprocessing yang penting dalam bermacam operasi penganalisaan suatu citra antara lain pengenalan karakter yang bersifat optik, pengenalan sidik jari dan pemrosesan dokumen. Thinning melibatkan penghapusan

(16)

titik (point) atau lapisan (layer) dari outline suatu gambar sampai semua garis atau kurva mempunyai ukuran sebesar satu piksel. Piksel merupakan informasi terkecil informasi dari sebuah citra. Piksel biasanya direpresentasikan dengan titik-titik yang membentuk sebuah citra. Garis atau kurva yang dihasilkan tersebut bisa disebut kerangka obyek

Data input hanya berupa image. Citra (image) merupakan suatu yang menggambarkan objek dan biasanya dua dimensi. Citra merupakan suatu representasi, kemiripan atau imitasi dari suatu objek atau benda.

Operasi thinning mempunyai persyaratan tertentu yang harus dipenuhi, bila tidak semua macam bentuk akan direduksi menjadi sebuah titik. Jadi syarat-syarat operasi Thinning sebenarnya untuk mengatur arah penghapusan bagian objek sehingga setiap bentuk objek akan mempunyai hasil yang unik dan dapat dijadikan sebagai ciri pembeda dari bentuk-bentuk lainnya melalui bentuk skeleton. Syarat-syarat operasi Thinning adalah sebagai berikut :

a. Daerah harus diubah menjadi struktur garis yang terkoneksi b. Hasil thinning minimal harus 8-lintasan

c. Ujung-ujung garis harus tetap dipertahankan

d. Cabang-cabang pendek disebabkan oleh Thinning harus dieliminasi.

Cara yang umum digunakan dalam operasi Thinning adalah dengan memeriksa setiap piksel didalam citra dalam kaitannya dengan Neighborhood region minimal untuk jendela berukuran 3 x 3 piksel, dan “mengupas” batas daerah, satu-persatu piksel, sampai menjadi garis. Proses ini dilakukan berulang-ulang, pada tiap iterasi, setiap pixel.

Piksel diperiksa dalam jendela berukuran n x n, dan batas setebal satu piksel yang tidak digunakan untuk mempertahankan koneksi atau tidak pada posisi di ujung garis dihapus. Iterasi akan berakhir bila tidak ada perubahan yang terjadi (tidak ada lagi aksi penghapusan) pada objek yang sedang dikenakan operasi.

(17)

Berikut adalah hasil dari operasi Thinning dari citra bineri yang sederhana. (a) (b)

Gbr 2.5 (a) Pola awal , (b) Pola hasil Thinning

Ada beberapa algoritma Thinning yang dapat diimplementasikan pada citra, dan masing-masing algoritma ini memilliki kelebihan dan kekurangan masing-masing tergantung pada citra yang diproses oleh masing-masing algoritma. Berikut beberapa algoritma Thinning :

a. Algoritma Thinning ZhangSuen b. Algoritma Thinning Stetinford c. Algoritma Thinning Rosenfeld d. Algoritma Thinning Hilditch

e. Algoritma Thinning Simple Edge Detection f. Algoritma Thinning canny edge Detection thinng

g. Algoritma Thinning Combination Zhang and suen dengan stetinford h. Dan lain-lain

2.12. Kriteria Algoritma Thinning

Umumnya suatu algoritma thinning yang dilakukan terhadap citra biner seharusnya memenuhi kriteria-kriteria sebagai berikut:

a. Skeleton dari citra kira-kira berada di bagian tengah dari citra awal sebelum dilakukan thinning.

(18)

b. Citra hasil dari algoritma thinning harus tetap menjaga struktur keterhubungan yang sama dengan citra awal.

c. Suatu skeleton seharusnya memiliki bentuk yang hampir mirip dengan citra awal. d. Suatu skeleton seharusnya mengandung jumlah piksel yang seminimal mungkin

namun tetap memenuhi kriteria-kriteria sebelumnya.

Sebagian besar algoritma thinning merupakan algoritma yang besifat iteratif. Dalam sebuah penelusuran piksel sisi diperiksa berdasarkan beberapa kriteria untuk menentukan apakah suatu piksel sisi dihapus atau tidak. Banyaknya jumlah penelusuran yang terjadi dihitung berdasarkan jumlah loop (perulangan) yang terjadi. Ada beberapa jenis algoritma thinning yaitu sequential dan parallel. Jenis sequential menggunakan hasil dari penelusuran sebelumnya dan hasil yang didapatkan sejauh ini dalam penelusuran yang sekarang untuk memproses piksel yang sekarang. Jadi pada setiap ujung penelusuran sejumlah piksel telah diproses terlebih dahulu. Hasil ini dapat digunakan secepatnya untuk memproses piksel selanjutnya. Sedangkan jenis parallel, hanya hasil dari penelusuran sebelumnya yang mempengaruhi keputusan untuk menghapus suatu titik pada penelusuran yang sekarang.

2.12.1. Algoritma Thinning ZhangSuen

Algoritma ini adalah algoritma untuk citra biner, dimana piksel background citra bernilai 0, dan piksel foreground (region) bernilai 1. Algoritma ini cocok digunakan untuk bentuk yang diperpanjang (elongated) dan dalam aplikasi OCR (Optical Character Recognition). Algoritma ini terdiri dari beberapa penelusuran, dimana setiap penelusurannya terdiri dari 2 langkah dasar yang diaplikasikan terhadap titik objek (titik batas) region. Titik objek ini dapat didefinisikan sebagai sembarang titik yang pikselnya bernilai 1, dan memiliki paling sedikit 1 piksel dari 8-tetangganya yang bernilai 0.

(19)

Gambar berikut ini mengilustrasikan titik objek P1 dan 8-tetangganya:

P9 P2 P3

P8 P1 P4

P7 P6 P5

Gambar 2.6 Contoh Piksel P1 dengan 8 tetangga

Langkah pertama dari sebuah penelusuran adalah menandai semua titik objek untuk dihapus, jika titik objek tersebut memenuhi syarat-syarat berikut:

a. 2 ≤ N (P1) ≤ 6

b. S(P1) = 1

c. P2 * P4 * P6 = 0

d. P4 * P6 * P8 = 0

Keterangan :

a. jumlah dari tetangga titik objek P1, yang pikselnya bernilai 1, yaitu:

N(P1) = P2 + P3 + P4 + ... + P9.

b. S(P1) adalah jumlah perpindahan nilai dari 0 (nol) ke 1 (satu) mulai dari P2, P3,…

P8, P9.

c. P2 * P4 * P6 = 0, memiliki arti P2 atau P4 atau P6 bernilai 0 (nol).

Dan pada langkah kedua, kondisi (a) dan (b) sama dengan langkah pertama, sedangkan kondisi (c) dan (d) diubah menjadi:

(c’) P2 * P4 * P8 = 0;

(d’) P2 * P6 * P8 = 0

Langkah pertama dilakukan terhadap semua titik obyek di citra. Jika salah satu dari keempat kondisi di atas tidak dipenuhi atau dilanggar maka nilai piksel yang

(20)

bersangkutan tidak diubah. Sebaliknya jika semua kondisi tersebut dipenuhi maka piksel tersebut ditandai untuk penghapusan.

Piksel yang telah ditandai tidak akan dihapus sebelum semua titik obyek selesai diproses. Hal ini berguna untuk mencegah perubahan struktur data. Setelah langkah 1 selesai dilakukan untuk semua titik obyek maka dilakukan penghapusan untuk titik yang telah ditandai (diubah menjadi 0). Setelah itu dilakukan langkah 2 pada data hasil dari langkah 1 dengan cara yang sama dengan langkah 1.

Prosedur ini dilakukan secara iteratif sampai tidak ada lagi titik yang dapat dihapus, pada saat algoritma ini selesai maka akan dihasilkan skeleton dari citra awal. Sebagai contoh :

0 0 1

1 P1 0

1 0 1

Gambar 2.7 Contoh piksel N(P1) = 4 dan S(P1) = 3

2.13. Database (Gudang Data)

Database atau gudang data adalah kumpulan data yang berhubungan dengan suatu objek. Seluruh data mentah dari objek tersebut dikumpulkan, kemudian diatur sedemikian rupa antara keterkaitan data yang satu dengan data yang lainnya, sehingga nantinya informasi yang berhubungan dengan objek tersebut dapat disajikan dengan baik dan terstruktur bagi pengguna data. Pada database terdapat elemen penting antara lain; Tabel, Field (Kolom), Record (Baris), Query dan Relasi antar tabel. Dengan membangun database maka pengguna dapat dengan mudah untuk melakukan pengolahan data. Beberapa hal yang sering dilakukan dalam mengolah data antara lain:

a. Menyimpan data b. Mencari data c. Mengubah data d. Menghapus data

(21)

2.13.1. Tabel

Sebuah database terdiri dari sebuah atau beberapa atabel yang telah dirancang sedemikian rupa sesuai kebutuhan. Tabel terdiri dari beberapa Field (Kolom) dan beberapa Record (Baris). Sebuah Field merupakan pengelompokan data-data yang memiliki type data sama dan arti yang sama, sedangan Rows merupakan kumpulan dari sebuah data dari masing-masing Field dan menunjukkan penjelasan terhadap sebuah objek.

Gambar

Tabel 2.1 Taber Konsep Jaringan Saraf  Biologi dan Tiruan
Gambar 2.4 Citra RGB

Referensi

Dokumen terkait

Nilai rata-rata potensi produksi gas diterjemahkan sebagai parameter bagian bahan organik (BO) yang potensial terfermentasi didalam rumen (b) dan laju produksi

Mata Pelajaran Nilai Rata-rata Rapor1. Nilai

Penelitian ini bertujuan untuk menganalisis pengaruh produk domestik bruto terhadap utang luar negeri dan hubungan kausalitas antara investasi dengan pertumbuhan

Sesuai dengan definisi brand positioning di atas maka dapat dikatakan tujuan dari brand positioning ialah agar sebuah produk atau jasa yang ditawarkan oleh

Agar sosok seorang Bill Gates dapat kita jadikan sebagai motivator kita dalam. membangun dan

Metoda kultur yang digunakan adalah secara massal de- ngan dua media kultur teknis yang berbeda (Double Walne dan Guillard teknis), anali- sis lemak dilakukan dengan analisa proksi-

Selain itu hasil ikutan biogas (sludge) dapat menggurangi biaya produksi kegiatan pertanian dan peternakan, yaitu sebagai pupuk dan bahan pakan. Pembuatan biogas dari limbah

Seperti yang diketahui bahwa industri rokok telah memperkerjakan banyak tenaga kerja, untuk industri rokok kretek kelas menengah ke bawah dimana mereka rata-rata adalah