• Tidak ada hasil yang ditemukan

Bab III Analisis Sistem

N/A
N/A
Protected

Academic year: 2021

Membagikan "Bab III Analisis Sistem"

Copied!
10
0
0

Teks penuh

(1)

IV.

Bab III Analisis Sistem

IV.1 Deskripsi Umum Sistem

Dalam penelitian ini penulis mengemukakan sistem CBIR yang diberi nama SPECKTRAL (Sistem Pencari Citra dengan Kode Fraktal). Sistem ini dikembangkan dalam lingkungan berbasis web. SPECKTRAL mampu melakukan

browsing citra dalam basis data berdasarkan kategori yang dipilih pengguna atau

mencari citra berdasarkan kemiripan nama. Kemampuan utama dari sistem ini yaitu dapat mencari citra yang mirip dengan citra yang dipilih pengguna. Kemiripan citra ditentukan berdasarkan tingkat kesamaan kode fraktal.

Untuk melakukan browsing koleksi citra, pengguna terlebih dahulu memilih kategori yang diinginkan. Kategori-kategori citra dapat ditambah atau diedit oleh administrator. Setelah kategori terpilih maka sistem akan menampilkan citra-citra yang termasuk dalam kategori tersebut. Pengguna dapat melakukan pencarian file citra pada koleksi berdasarkan kemiripan nama file. Pencarian dilakukan setelah pengguna memasukkan kata kunci berupa keseluruhan atau sebagian nama file. Setelah melakukan salah satu proses di atas, maka pengguna dapat melakukan pencarian lebih lanjut yaitu pencarian berdasarkan kemiripan citra. Jadi pengguna memilih salah satu citra hasil browsing atau pencarian berdasarkan nama sebagai citra query dan sistem kemudian mencari citra dalam koleksi yang memiliki kode fraktal mirip dengan citra query tersebut. Koleksi citra dalam basis data dapat ditambah, diedit atau dihapus oleh pihak yang berwenang yaitu administrator sistem.

IV.2 Pembentukan Kode Fraktal

Kode fraktal yang digunakan dalam sistem ini merupakan kode fraktal dari citra

gray scale. Citra berwarna terlebih dahulu dikonversi ke citra gray scale sebelum

dicari kode fraktalnya. Proses pembentukan citra gray scale dilakukan dengan terlebih dahulu mengkonversi model warna yang dimiliki citra berwarna yaitu

(2)

RGB ke model YIQ. Model YIQ merupakan model warna yang merepresentasikan warna dalam tiga komponen, yaitu komponen Y mewakili pencahayaan (luminance), komponen I mewakili corak warna (hue) dan komponen Q mewakili intensitas atau kedalaman warna (saturation). Kemudian Y diambil sebagai nilai intensitas piksel pada citra gray scale hasil konversi [4]. Matrik konversi nilai untuk masing-masing komponen RGB ke YIQ dinyatakan dalam persamaan (20). ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎣ ⎡ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎣ ⎡ − − − = ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎣ ⎡ B G R Q I Y 312 . 0 523 . 0 211 . 0 322 . 0 274 . 0 596 . 0 144 . 0 587 . 0 299 . 0 (22)

Pergeseran posisi domain yang digunakan dalam pembentukan kode fraktal adalah sebesar ukuran range yaitu 8 piksel, berbeda dengan besarnya pergeseran yang digunakan dalam pengkodean fraktal pada landasan teori yaitu sebesar 1 piksel. Pelebaran jarak pergeseran ini dapat mengurangi waktu yang dibutuhkan untuk pengkodean karena jumlah domain berkurang, tanpa mengurangi ketelitian kode yang dihasilkan terutama untuk pencarian berdasarkan kemiripan bukan berdasarkan kesamaan citra. Format kode fraktal yang digunakan dalam sistem ini dinyatakan dalam Gambar III.1.

si oi

Gambar III.1. Format kode fraktal

Dimana si dan oi adalah koefisien kekontrasan dan kecerahan yang dihasilkan pada pengkodean fraktal untuk range ke-i.

IV.3 Proses Retrieval

Proses retrieval dalam sistem ini berdasarkan citra query yang dimasukkan oleh

user atau disebut juga metode Query By Example (QBE). Citra query kemudian

dikodekan dan menghasilkan file berisi kode fraktal. File kode fraktal tersebut diukur kemiripannya dengan file kode fraktal yang telah ada dalam Inverted File. Setelah didapat dokumen-dokumen citra yang relevan terhadap citra query yang diurutkan berdasarkan tingkat kemiripannya, kemudian dilakukan proses retrieve

(3)

dokumen citra yang relevan tersebut dari basis data tempat dokumen citra disimpan. Proses retrieval tersebut dinyatakan dalam Gambar III.3.

Query Citra Basisdata Citra Fractal Coder File Fractal Pengukuran Kemiripan Inverted FIle Retrieve Hasil Retrieval

Gambar III.3. Proses retrieval pada SPECKTRAL

Koleksi citra dalam sistem dapat di update yaitu ditambah, diedit atau dihapus. Proses penambahan citra ke dalam basis data citra dilakukan dengan menyimpan informasi lokasi citra query dalam basis data citra dan sekaligus menyimpan kode fraktal dari citra tersebut ke dalam Inverted File. Proses penambahan koleksi digambarkan dalam diagram pada Gambar III.4.

File Citra Basisdata Citra Fractal Coder File

Fractal InvertedIndex

Inverted FIle

Gambar III.4. Proses penambahan koleksi citra

Proses penghapusan citra dalam koleksi dilakukan dengan menghapus entry dokumen citra tersebut yang berada dalam Inverted File dan menghapus informasi dokumen yang tersimpan dalam basis data citra.

(4)

IV.4 Pengukuran Kemiripan Citra

Metode pengukuran tingkat kemiripan kode fraktal menggunakan selisih jarak

Euclidean dari tiap koefisien kekontrasan (s) dan kecerahan (o) dalam kode

fraktal. Jarak Euclidean dipilih karena sensitif terhadap perbedaan nilai (dissimilarity). Ini dapat terlihat dari proses pengukurannya dimana selisih dua nilai dikuadratkan terlebih dahulu sebelum dijumlahkan dan dicari akar kuadratnya. Sehingga selisih nilai yang kecil berpengaruh pada pengukuran jarak. Hal ini diperlukan dalam pengukuran kesamaan kode fraktal terutama untuk mengukur perbedaan nilai s. Selisih nilai s sangat berpengaruh terhadap kemiripan citra karena s merupakan faktor pengali dari nilai kontras piksel.

Untuk setiap kode dalam citra query dicari nilai jarak minimumnya terhadap setiap kode dalam dokumen, dan jarak minimum tersebut di jumlahkan. Kemudian jumlah jarak minimum tersebut dirata-rata, yaitu membaginya dengan jumlah kode dalam query. Pengukuran tersebut dinyatakan dalam persamaan (20)

(

) (

)

Q o o s s D Q dist( , ) minq Qd D( q d q d ) 2 2 , − + − = ∈ ∈ (20)

Q adalah citra query, D dokumen citra. sq , oq adalah komponen kontras dan kecerahan citra query Q. sd, od komponen kontras dan kecerahan dokumen citra dan |Q| menyatakan jumlah kode dalam Q . Nilai sq dan sd memiliki rentang nilai

0≤ sq , sd < 1 sedangkan 0 ≤ oq, od ≤ 255 sehingga selisih nilai sq , sd menjadi tidak signifikan dibanding selisih nilai oq, od padahal tidak demikian kenyataannya, kedua koefisien tersebut setara. Sehingga sq , sd terlebih dahulu dikalikan dengan nilai maksimum oq, od yaitu 255. Semakin besar jarak maka citra dianggap semakin tidak mirip.

IV.5 Pembangunan Indeks

Indeks yang digunakan dalam sistem CBIR ini adalah inverted file yang umum digunakan dalam retrieval berbasis teks [16]. Metode indeks ini digunakan karena relatif sederhana dibandingkan dengan indeks multidimensi yang sering digunakan dalam image retrieval dan telah teruji kemampuannya terutama di

(5)

retrieval berbasis teks. Inverted file berisi term-term dan inverted file entry yang

menyimpan daftar pointer keseluruh kemunculan term tersebut dalam dokumen. Dalam sistem ini yang dimaksud term adalah kode fraktal dari citra. Untuk membentuk inverted file, terlebih dahulu dibentuk file berisi kode fraktal dari citra. Kemudian masing-masing kode tersebut dimasukkan ke inverted file sebagai suatu term. Untuk masing-masing term dibuat suatu pointer yang berisi kode dokumen dimana kode / term tersebut muncul. Kemunculan term bisa terjadi di lebih dari satu dokumen, sehingga pointer dapat menunjuk ke pointer yang lain membentuk suatu list. Struktur dari inverted file untuk kode fraktal tk dan dokumen citra Di digambarkan pada Gambar III.5.

Gambar III.5. Inverted file untuk kode fraktal

IV.6 Metode Pengembangan Perangkat Lunak SPECKTRAL

Pengembangan perangkat lunak SPECKTRAL menggunakan pendekatan berorientasi obyek dengan metode Unified Process. Pendefinisian seluruh aktifitas dalam proses pengembangan perangkat lunak dengan metode ini menggunakan diagram dalam notasi UML (Unified Modelling Languange) [12]. Metode ini dipilih karena memberikan kemudahan dalam mengadopsi penambahan kemampuan baru pada sistem. Hal tersebut sangat diperlukan dalam suatu mesin pencari (search engine) agar sistem menjadi dinamis dan dapat menyesuaikan dengan keinginan pengguna yang beragam. Alasan lain adalah karena Unified

Process telah menjadi metode standard dalam pengembangan perangkat lunak

dewasa ini.

Unified Process merupakan metode pengembangan perangkat lunak yang

mendeskripsikan kelakuan sistem melalui suatu model. Model yang digunakan kode fraktal t1 t2 t3tn D1 D4 D3 D4 D9 D5 D9 Dm Dm

(6)

adalah model Use case, yaitu deskripsi dari suatu himpunan rangkaian aksi yang dilakukan sistem dan menghasilkan nilai yang dapat diukur. Unified Process dibagi menjadi empat fase yaitu inception, elaboration, construction dan

transition.

(1) Inception, pada fase ini dilakukan pengumpulan informasi kebutuhan perangkat lunak. Informasi tersebut dinyatakan dalam diagram Use Case dan analisis use case.

(2) Elaboration, dalam fase ini dilakukan analisis, perancangan dan perencanaan pengujian. Sebagian besar pekerjaan yang dilakukan pada tahap ini adalah merinci use case.

(3) Construction, pada fase ini sistem yang telah dirancang mulai diimplementasikan dan diuji. Sebagian besar pekerjaan yang dilakukan pada tahap ini adalah pembuatan program (coding).

(4) Transition, fase ini merupakan fase terakhir dimana program telah selesai dan siap diserahkan ke pengguna. Pekerjaan yang dilakukan dalam fase ini meliputi melengkapi dokumentasi program dan pelatihan bagi pengguna.

IV.7 Model Use-Case

Untuk memodelkan sistem SPECKTRAL dalam tahap analisis ini digunakan Model Use Case yang terdiri dari aktor dan use case. Aktor adalah abstraksi entitas di luar sistem yang berinteraksi langsung dengan sistem dan use case adalah rincian dari rangkaian aksi yang dapat dilakukan sistem saat berinteraksi dengan aktor [12]. Dari hasil analisis informasi kebutuhan sistem SPECKTRAL didapat dua aktor yang terlibat yaitu User dan Administrator dan 10 use case yang muncul, seperti dinyatakan dalam diagram pada Gambar III.6

(7)

Cari File Cari Citra Browse Citra Login Hapus Dokumen Tambah Dokumen Pengkodean Citra «uses» «uses» User Edit Dokumen Administrator Tambah Kategori Edit Kategori

Gambar III.6. Diagram use case

1. Definisi Aktor

Definisi masing-masing aktor yang terlibat dalam SPECKTRAL dinyatakan dalam Tabel III.1.

Tabel III.1. Aktor sistem SPECKTRAL

No Aktor Keterangan

A1. User Pengguna sistem SPECKTRAL yang dapat melakukan

browsing berdasarkan kategori yang dipilih dan pencarian

berdasarkan nama atau berdasarkan kemiripan citra

A2. Administrator Pengelola sistem yang dapat menambah atau menghapus koleksi citra dalam sistem.

User adalah pengguna umum yang dapat menggunakan sistem tanpa harus login terdahulu, sedangkan Administrator adalah pihak yang berwenang mengelola sistem dan harus melakukan login terlebih dahulu sebelum menggunakan sistem.

2. Definisi Use-Case

(8)

Tabel III.2. Use case sistem SPECKTRAL

No

Use Case Keterangan

U1. Browse Citra User browsing citra berdasarkan kategori yang

dipilih

U2. Cari File User mencari citra berdasarkan nama file U3. Cari Citra User mencari berdasarkan kemiripan citra U4. Login Administrator login ke sistem

U5. Tambah Kategori Administrator menambah kategori citra U6. Edit Kategori Administrator mengedit kategori citra U7. Tambah Dokumen Administrator menambah dokumen citra U8. Edit Dokumen Administrator mengedit dokumen citra U9. Hapus Dokumen Administrator menghapus dokumen citra

Use case Browse Citra, Cari File dan Cari Citra merupakan use case yang menggambarkan perilaku sistem yang merupakan reaksi dari aksi aktor User. Reaksi sistem terhadap aksi aktor Administrator digambarkan oleh use case Login, Tambah Kategori, Edit Kategori, Tambah Dokumen, Edit Dokumen dan Hapus Dokumen.

3. Definisi Skenario

Masing-masing Aktor dan Use Case dalam SPECKTRAL memiliki keterkaitan yang dijelaskan dalam suatu Skenario. Definisi lengkap Skenario untuk masing-masing Use Case dapat dilihat pada Lampiran A.

IV.8 Pemodelan Kelas Tahap Analisis

Pemodelan kelas pada tahap analisis ini bertujuan untuk mendapatkan suatu model kelas analisis yang tepat untuk sistem berdasarkan spesifikasi kebutuhan sistem dan use case. Model yang dihasilkan pada tahap ini akan digunakan sebagai dasar untuk tahap berikutnya yaitu tahap perancangan. Secara garis besar, langkah-langkah yang dilakukan dalam proses pemodelan ini terdiri dari identifikasi paket dan kelas serta identifikasi interaksi antar kelas.

(9)

1. Identifikasi Paket dan Kelas

Identifikasi kelas dilakukan berdasarkan skenario-skenario yang telah disusun pada pemodelan use case. Kemudian kelas-kelas yang telah teridentifikasi tersebut dikelompokkan menjadi beberapa paket sesuai dengan perannya untuk mempermudah peng-organisasi-an kelas. Hasil identifikasi paket pada tahap analisis untuk sistem SPECKTRAL dinyatakan dalam Tabel III.3. :

Tabel III.3. Hasil identifikasi paket

Nama Paket Use Case Terkait Keterangan

User

Browse Citra Cari File Cari Citra

Paket yang menangani antar muka user dan melakukan pencarian citra FractalCoder Pengkodean Citra Paket yang menangani pengkodean

fractal dari citra

Admin Login Tambah Kategori Edit Kategori Tambah Dokumen Edit Dokumen Hapus Dokumen

Paket yang mengani antar muka administrator dan update database citra

Setelah paket teridentifikasi, langkah selanjutnya adalah mengidentifikasi kelas-kelas yang terdapat dalam tiap paket. Identifikasi yang dilakukan mencakup identifikasi tipe dari kelas tersebut. Dalam tahapan analisis, kelas dikelompokkan menjadi tiga tipe yaitu Boundary, Control dan Entity. Boundary Class adalah tipe kelas yang berhubungan langsung dengan dunia luar atau merupakan antarmuka sistem. Control Class adalah tipe kelas yang memiliki fungsionalitas tertentu dan dapat mengontrol interaksi dengan kelas lain. Entity Class merupakan tipe kelas yang dapat menyimpan informasi ke dalam storage. Hasil identifikasi kelas pada sistem SPECKTRAL dinyatakan dalam Tabel III.4.

Tabel III. 4. Hasil identifikasi kelas

No Paket Kelas Jenis Kelas

1. User SearchPage

SearchEngine

Boundary Control

2. FractalCoder FractalCode Control

3. Admin AdminPage DataUpdater ImageDB Boundary Control Entity

(10)

2. Identifikasi Interaksi Antar Kelas

Kelas-kelas yang telah dihasilkan dalam tahap identifikasi kelas pada tahap ini akan diidentifikasi keterkaitan antar kelas tersebut agar dapat merealisasikan skenario dalam use case. Hasil identifikasi interaksi antar kelas pada tahap analisis dinyatakan dalam bentuk diagram pada Gambar III.7.

Gambar III.7. Diagram interaksi antar kelas pada tahap analisis

SearchPage adalah boundary class yang menangani antarmuka sistem dengan

user dalam pencarian citra. Setelah user memasukkan kriteria pencarian maka selanjutnya menjadi tugas SearchEngine sebagai control class untuk melakukan pencarian citra dengan terlebih dahulu mengkodekan citra melalui interaksi dengan FractalCoder. Setelah menerima hasil pengkodean dari FractalCoder,

SearchEngine melakukan query citra ke ImageDB yang berisi informasi citra

yang telah tersimpan dalam sistem.

Administrator berinteraksi dengan sistem melalui antarmuka AdminPage. Perintah untuk mengupdate basisdata citra yang dimasukkan administrator melalui

AdminPage kemudian diteruskan ke control class DataUpdater yang bertanggung

jawab untuk melakukan update ke ImageDB. Kelas DataUpdater juga dilengkapi dengan fungsi untuk melakukan pengecekan login

Gambar

Gambar III.4.  Proses penambahan koleksi citra
Gambar III.5.  Inverted file untuk kode fraktal
Gambar III.6. Diagram use case
Tabel III.2. Use case sistem SPECKTRAL
+3

Referensi

Dokumen terkait

Ide dasar dari algoritma antrian lokal alokasi statis dari semua proses baru dengan proses migrasi yang diprakarsai oleh tuan rumah pada saat beban yang berada di bawah

Kinerja keuangan suatu koperasi atau badan usaha lain sangat bermanfaat bagi berbagai pihak seperti investor, kreditur, pemerintah dan pihak manajemen itu

Kesimpulan yang dapat diambil dari penelitian ini adalah kerapatan relatif tertinggi dari rumput laut di perairan Pantai Teluk Awur Jepara yaitu pada substrat

Koperasi ‘’Margo Suryo’’ adalah salah satu koperasi yang ada di kota Mojokerto yang beranggotakan para pengrajin sepatu yang memiliki volume produksi yang

Laporan Keterangan Pertanggungjawaban Bupati Pekalongan Akhir Tahun Anggaran 2016 II - 9 Untuk melaksanakan Misi 3 : Memantapkan Kondisi Sosial Budaya yang Berbasis

Artinya part dapat diganti dengan kombinasi dari beberapa part yang lain.. Jika P/N 154-13-41124 akan diorder dan tidak ada stock-nya, maka sebagai penggantinya adalah P/N yang ada

Pengertian KLB : (1) Sistem Kewaspadaan Dini (SKD) KLB adalah kewaspadaan terhadap penyakit berpotensi KLB beserta faktor-faktor yang mempengaruhinya dengan menerapkan

Tutkimus rajoittuu ainoastaan Helsingin Sanomien pääkirjoituksiin Krimin miehityksen ja sitä seuranneen vuoden ajalta, joten tutkimuksen tulokset luonnollisesti ilmentävät