BAB II LANDASAN TEORI

dokumen-dokumen yang mirip
BAB II LANDASAN TEORI

BAB II LANDASAN TEORI

Proses memperbaiki kualitas citra agar mudah diinterpretasi oleh manusia atau komputer

BAB III METODE ROBERTS DAN SOBEL DALAM MENDETEKSI TEPI SUATU CITRA DIGITAL

Batra Yudha Pratama

BAB 2 LANDASAN TEORI

BAB 2 TINJAUAN PUSTAKA

Pendahuluan Pengantar Pengolahan Citra. Bertalya Universitas Gunadarma, 2005

Pengolahan Citra : Konsep Dasar

PERBANDINGAN METODE ROBERTS DAN SOBEL DALAM MENDETEKSI TEPI SUATU CITRA DIGITAL. Lia Amelia (1) Rini Marwati (2) ABSTRAK

BAB II LANDASAN TEORI

Deteksi Tepi pada Citra Digital menggunakan Metode Kirsch dan Robinson

BAB 2 TINJAUAN TEORITIS

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB II LANDASAN TEORI

BAB III ANALISA DAN PERANCANGAN

8 2.4 Derau dalam citra Pada saat proses capture (pengambilan gambar), beberapa gangguan mungkin terjadi, seperti kamera tidak focus atau munculnya bi

SATUAN ACARA PERKULIAHAN ( SAP )

Pengantar Pengolahan Citra. Ade Sarah H., M. Kom

Konvolusi. Esther Wibowo Erick Kurniawan

PENGOLAHAN CITRA DIGITAL ( DIGITAL IMAGE PROCESSING )

BAB II LANDASAN TEORI

BAB 2 LANDASAN TEORI

IMPLEMENTASI METODE CANNY DAN SOBEL UNTUK MENDETEKSI TEPI CITRA

ANALISIS EDGE DETECTION CITRA DIGITAL DENGAN MENGGUNAKAN METODE ROBERT DAN CANNY

SATUAN ACARA PERKULIAHAN ( SAP )

BAB II LANDASAN TEORI

Modul PVB-POLINEMA V1.0

BAB II LANDASAN TEORI

Implementasi Edge Detection Pada Citra Grayscale dengan Metode Operator Prewitt dan Operator Sobel

MATHunesa (Volume 3: No 2) 2014

BAB I PERSYARATAN PRODUK

BAB 3 ANALISIS DAN PERANCANGAN SISTEM

Judul : APLIKASI PERBAIKAN KUALITAS CITRA DIGITAL MENGGUNAKAN MATLAB 7. 1 Nama : MELISA NPM :

BAB 2 LANDASAN TEORI

Implementasi Morphology Concept and Technique dalam Pengolahan Citra Digital Untuk Menentukan Batas Obyek dan Latar Belakang Citra

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI. 1. Gambaran obyek yang dibuahkan oleh pantulan atau pembiasan sinar yang difokuskan oleh sebuah lensa atau sebuah cermin.

BAB I PENDAHULUAN. 1.1 Latar Belakang

BAB 2 LANDASAN TEORI

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI

Perbandingan Metode Sobel, Metode Prewitt dan Metode Robert Untuk Deteksi Tepi Objek Pada Aplikasi Pengenalan Bentuk Berbasis Citra Digital

DETEKSI TEPI MENGGUNAKAN METODE CANNY DENGAN MATLAB UNTUK MEMBEDAKAN UANG ASLI DAN UANG PALSU ABSTRAKSI

Pengantar Algoritma & Flow Chart

BAB I PENDAHULUAN. 1.1 Latar Belakang

BAB 2 LANDASAN TEORI. dari sudut pandang matematis, citra merupakan fungsi kontinyu dari intensitas cahaya

PENDETEKSIAN TEPI OBJEK MENGGUNAKAN METODE GRADIEN

MENGANALISA PERBANDINGAN DETEKSI TEPI ANTARA METODE SOBEL DAN METODE ROBET

BAB 2 TINJAUAN PUSTAKA

Penentuan Stadium Kanker Payudara dengan Metode Canny dan Global Feature Diameter

BAB II DASAR TEORI. 2.1 Meter Air. Gambar 2.1 Meter Air. Meter air merupakan alat untuk mengukur banyaknya aliran air secara terus

IMPLEMENTASI METODE SPEED UP FEATURES DALAM MENDETEKSI WAJAH

PERBANDINGAN METODE PREWIT DAN ROBERTS UNTUK KEAKURATAN MENDETEKSI TEPI PADA SEBUAH GAMBAR DENGAN MENGGUNAKAN VB.6

BAB 3 ANALISIS DAN PERANCANGAN PROGRAM

ANALISA PERBANDINGAN KINERJA DETEKSI TEPI METODE SOBEL DAN METODE CANNY PADA CITRA LUKISAN ABSTRAK

DETEKSI GERAK BANYAK OBJEK MENGGUNAKAN BACKGROUND SUBSTRACTION DAN DETEKSI TEPI SOBEL

BAB 2 LANDASAN TEORI

BAB II LANDASAN TEORI

PENERAPAN METODE SOBEL DAN GAUSSIAN DALAM MENDETEKSI TEPI DAN MEMPERBAIKI KUALITAS CITRA

BAB III ANALISIS DAN PERANCANGAN

PERBANDINGAN WAKTU EKSEKUSI MENDETEKSI TEPI GAMBAR MENGGUNAKAN BERBAGAI METODE

BAB 1 PENDAHULUAN 1.1 Latar Belakang Universitas Sumatera Utara

BAB I PENDAHULUAN 1.1 Latar Belakang Masalah

Algoritma Kohonen dalam Mengubah Citra Graylevel Menjadi Citra Biner

PENGENALAN AKSARA JAWA MENGGUNAKAN OPERATOR PREWITT

BAB II LANDASAN TEORI. mesin atau robot untuk melihat (

BAB 3 IMPLEMENTASI SISTEM

BAB 2 TINJAUAN PUSTAKA

IDENTIFIKASI TANDA TANGAN DENGAN DETEKSI TEPI DAN KOEFISIEN KORELASI

Pengantar Algoritma dan Program

BAB 1 PENDAHULUAN. menyebabkan pengolahan citra digital memiliki kegunaan yang sangat luas. geologi, kelautan, industri, dan lain sebagainya.

BAB II LANDASAN TEORI

PERBANDINGAN METODE PENDETEKSI TEPI STUDI KASUS : CITRA USG JANIN

ALAT BANTU PEMBELAJARAN MATA KULIAH COMPUTER VISION PADA MATERI EDGE BASED SEGMENTASI CITRA BERBASIS MULTIMEDIA

BAB II TINJAUAN PUSTAKA DAN LANDASAN TEORI

BAB 3 ANALISIS DAN PERANCANGAN PROGRAM APLIKASI

PERBANDINGAN METODE PREWITT DAN SOBEL DALAM MENDETEKSI TEPI SUATU CITRA DIGITAL

Faktor Penentu Tingkat Keberhasilan Sistem Deteksi Wajah pada Citra Digital

Gambar 2.1. Citra Apusan Tepi Sel Darah Merah Normal

BAB I PENDAHULUAN. Citra digital adalah gambaran dari suatu objek yang bersifat analog berupa

GLOSARIUM Adaptive thresholding Peng-ambangan adaptif Additive noise Derau tambahan Algoritma Moore Array Binary image Citra biner Brightness

Analisa Hasil Perbandingan Metode Low-Pass Filter Dengan Median Filter Untuk Optimalisasi Kualitas Citra Digital

Aplikasi Pembesaran Citra Menggunakan Metode Nearest Neighbour Interpolation

PERTEMUAN - 2 PENGOLAHAN CITRA

BAB II TINJAUAN PUSTAKA

Konsep Dasar Pengolahan Citra. Pertemuan ke-2 Boldson H. Situmorang, S.Kom., MMSI

ANALISIS PERBANDINGAN METODE PREWITT DAN CANNY UNTUK IDENTIFIKASI IKAN AIR TAWAR

PEMANFAATAN PENGOLAHAN CITRA DIGITAL DALAM MENENTUKAN KEMATANGAN BUAH KAKAO MENGGUNAKAN METODE EUCLIDEAN DISTANCE SKRIPSI

PENDETEKSI TEMPAT PARKIR MOBIL KOSONG MENGGUNAKAN METODE CANNY

APLIKASI PENGENALAN PLAT NOMOR KENDARAAN BERMOTOR MENGGUNAKAN METODE LEARNING VECTOR QUANTIZATION

DAFTAR ISI. Lembar Pengesahan Penguji... iii. Halaman Persembahan... iv. Abstrak... viii. Daftar Isi... ix. Daftar Tabel... xvi

BAB 2 LANDASAN TEORI 2.1. Sistem Remote Sensing (Penginderaan Jauh)

BAB II DASAR TEORI. CV Dokumentasi CV berisi pengolahan citra, analisis struktur citra, motion dan tracking, pengenalan pola, dan kalibrasi kamera.

CS3214 Pengolahan Citra - UAS. CHAPTER 1. Pengantar Pengolahan Citra

Operasi Bertetangga KONVOLUSI. Informatics Eng. - UNIJOYO log.i. Citra kualitas baik: mencerminkan kondisi sesungguhnya dari obyek yang dicitrakan

Analisa Perbandingan Metode Edge Detection Roberts Dan Prewitt

BAB 2 LANDASAN TEORI

BAB 4 METODOLOGI PEMECAHAN MASALAH DAN PERANCANGAN. 4.1 Model Rumusan Masalah dan Pengambilan Keputusan

Muhammad Zidny Naf an, M.Kom. Gasal 2015/2016

Transkripsi:

BAB II LANDASAN TEORI 2.1 Pengertian Citra Citra merupakan hasil keseluruhan dari suatu sistem perekaman data. secara teoritis citra dapat dikelompokkan menjadi 2 (dua) macam, yaitu citra kontinu dan citra diskrit (citra digital). Citra kontinu dihasilkan dari sistem optik yang menerima sinyal analog. Contoh: mata manusia, kamera analog. Sedangkan citra digital dihasilkan melalui proses digitalisasi terhadap citra kontinu [16]. Contoh: kamera digital, scanner. Citra sebagai keluaran dari suatu sistem perekaman data dapat bersifat : 1. Optik berupa foto, citra bersifat optik ini secara teoritis merupakan citra kontinu (merekam data secara langsung dalam suatu bidang). Kontinu dalam pengertian nilai keabuan dinyatakan dengan presisi angka tak terhingga. 2. Analog berupa sinyal video seperti gambar pada monitor televisi. Citra analog adalah citra yang terdiri dari sinyal-sinyal frekuensi elektromagnetis yang belum dibedakan sehingga pada umumnya tidak dapat ditentukan ukurannya. 3. Digital yang dapat langsung disimpan pada suatu pita magnetik. Citra digital adalah citra yang dinyatakan secara diskrit (tidak kontinu), baik untuk posisi koordinatnya maupun warnanya. Dengan demikian, citra digital dapat digambarkan sebagai suatu matriks, di mana indeks baris dan indeks kolom dari matriks menyatakan posisi suatu titik di dalam citra dan harga dari elemen matriks menyatakan warna citra pada titik tersebut. 2.1.1 Pengolahan Citra Pengolahan citra (image processing) merupakan suatu sistem dimana proses dilakukan dengan masukan berupa citra (image) dan hasilnya juga berupa citra (image) [5]. Pengolahan citra merupakan bagian mendasar dari berbagai aplikasi, 7

8 seperti pembacaan barcode pada barang di supermarket, mengenali peluru kendali melalui sensor visual, deteksi kanker dengan sinar X, rekonstruksi foto janin hasil USG. Pengolahan citra mempunyai dua tujuan utama, yaitu sebagai berikut : 1. Memperbaiki kualitas citra, dimana citra yang dihasilkan dapat menampilkan informasi secara jelas atau dengan kata lain manusia dapat melihat hasil dari perbaikan kualitas citra yang dilakukan. 2. Mengekstrasi informasi ciri yang menonjol pada suatu citra, dimana hasilnya adalah informasi citra. Operasi yang dapat di lalukan dengan Pengolahan citra : 1. Perbaikan kualitas citra (Image Enhacement) Tujuan : memperbaiki kualitas citra dengan memanipulasi parameterparameter citra. Operasi perbaikan citra : perbaikan kontras gelap/terang, perbaikan tepian objek (edge enhancement), penajaman (sharpening), pemberian warna semu (pseudocoloring), penapisan derau (noise filtering). 2. Pemugaran citra (Image Restoration) Tujuan : menghilangkan cacat pada citra. Operasi pemugaran citra : penghilangan kesamaran (deblurring), penghilangan derau (noise). 3. Pemampatan citra (Image Compression) Tujuan : citra direpresentasikan dalam bentuk lebih kompak, sehingga keperluan memori lebih sedikit namun dengan tetap mempertahankan kualitas gambar (misal dari.bmp menjadi.jpg). 4. Segmentasi citra (Image Segmentation) Tujuan : memecah suatu citra ke dalam beberapa segmen dengan suatu kriteria tertentu. Berkaitan erat dengan pengenalan pola. Operasi segmentasi citra : deteksi titik, deteksi garis, pendeteksian tepi objek (edge detection). 5. Pengorakan citra (Image Analysis) Tujuan : menghitung besaran kuantitatif dari citra untuk menghasilkan deskripsinya. Diperlukan untuk melokalisasi objek yang diinginkan dari

9 sekelilingnya. Operasi pengorakan citra : ekstraksi batas (boundary), representasi daerah (region). 6. Rekonstruksi citra (Image Recontruction) Tujuan : membentuk ulang objek dari beberapa citra hasil proyeksi. 2.1.2 Segmentasi Citra Segmentasi citra merupakan proses yang ditujukan untuk mendapatkan objek-objek yang terkandung didalam citra atau membagi citra ke dalam beberapa daerah dengan setiap objek atau daerah memilii kemiripan atribut. Segmentasi membagi citra ke dalam daerah intensitasnya masing-masing sehingga bisa membedakan antara objek dan background-nya. Segmentasi harus di hentikan apabila masing-masing objek telah terisolasi atau terlihat dengan jelas [6]. Algoritma segmentasi citra terbagi dalam dua macam, yaitu : 1. Diskontinuitas Pembagian citra berdasarkan perbedaan dalam intensitasnya, contohnya titik, garis, dan edge (tepi). 2. Similaritas Pembagian citra berdasarkan kesamaan-kesamaan kriteria yang dimilikinya, contohnya thresholding, region growing, region splitting, dan region merging. 2.1.3 Deteksi Tepi Tepi (edge) adalah proses untuk menentukan perubahan nilai intensitas derajat keabuan yang mendadak besar dalam jarak yang dekat. Suatu titik (x,y) dikatakan sebagai tepi(edge) dari suatu citra bila titik tersebut mempunyai perbedaan nilai piksel yang tinggi dengan nilai piksel tetangganya. Bentuk tepi gambar tergantung pada banyak parameter yaitu tergantung pada sifat geometris dan optik dari objek, kondisi cahaya dan tingkatan noise pada gambar [7]. pada suatu citra dapat menghasilkan tepi tepi dari obyek tersebut untuk menandai bagian yang detail pada citra tujuanya memperbaiki dari citra yang kabur atau eror.

10 Pada gambar dibawah ini adalah dimana suatu proses dilakukan untuk memperoleh tepi gambar yang sudah ada. Gambar 2.1 Proses Deteksi Tepi Citra Sumber : Buku Step by Step Pengolahan Citra Digital, 2005 Pendeteksian tepi merupakan langkah pertama untuk melingkupi informasi di dalam citra. Tepi mencirikan batas-batas objek dan karena itu tepi berguna untuk proses segmentasi dan identifikasi di dalam citra. Tujuan pendeteksian tepi adalah untuk meningkatkan penampakan garis batas suatu daerah atau objek di dalam citra, mencirikan batas objek dan berguna untuk proses segmentasi dan identifikasi objek. Terdapat tiga macam tepi didalam citra digital, yaitu : a. Tepi Curam Tepi curam adalah tepi dengan perubahan intensitas yang tajam. Arah tepi berkisar 90 0. Gambar 2.2 Tepi Curam Sumber : Buku Pengolahan Citra Digital Menggunakan MATLAB, 2007

11 b. Tepi Landai Tepi landai yaitu tepi dengan sudut arah yang kecil. Tepi landai dapat dianggap terdiri dari sejumlah tepi-tepi lokal yang lokasinya berdekatan. Gambar 2.3 Tepi Landai Sumber : Buku Pengolahan Citra Digital Menggunakan MATLAB, 2007 c. Tepi yang mengandung derau Umumnya tepi yang terdapat pada aplikasi visi komputer mengandung derau. Operasi peningkatan kualitas citra dapat dilakukan terlebih dahulu sebelum pendektesian tepi. Gambar 2.4 Tepi Curam Dengan Derau Sumber : Buku Pengolahan Citra Digital Menggunakan MATLAB, 2007 2.1.4 Operator Roberts Operator Roberts adalah operator yang berbasis gradien yang menggubakan kernel ukuran 2x2 piksel. Operator Robert juga disebut operator silang karena operator ini mengambil arah diagonal untuk penentuan arah dalam perhitungan nilai gradien. Perhitungan gradien dalam operator Robert adalah : G = f(x, y) f(x + 1, y + 1) + f(x + 1, y) f(x, y + 1)...2-1

12 Bila ditulis dalam komponen gradien menjadi : G = G X + G Y...2-2 dimana Gx dan Gy dihitung menggunakan kernel konvolusi sebagai berikut. G x = [ 1 0 0 1 ] G y = [ 0 1 1 0 ]...2-3 2.1.5 Operator Sobel Deteksi tepi operator Sobel diperkenalkan oleh Irwin Sobel pada tahun 1970. Operator Sobel adalah salah satu operator yang menghindari adanya perhitungan gradien dititik interpolasi. Operator ini menggunakan kernel ukuran 3x3 piksel untuk perhitungan gradien sehingga perkiraan gradien berada tepat ditengah jendela [8]. Misalkan sususan piksel-piksel disekitar piksel (x,y) adalah : a0 a1 a2 a7 (x,y) a3 a6 a5 a4 Berdasarkan susunan piksel tetangga tersebut, besaran gradien yang dihitung menggunakan operator Sobel adalah : M = S x 2 + S y 2 Dimana M adalah besar gradien dititik tengah kernel dan turunan parsial dihitung menggunhakan persamaan berikut. Sx = (a2+ca3+a4) (a0+ca7+a6) Sy = (a0+ca1+a2) (a6+ca5+a4) Dimana c adalah konstanta yang bernilai 2. Sx dan Sy diimpelementasikan menjadi kernel berikut. 1 0 1 S x = [ 2 0 2 1 0 1 1 2 1 ] S y = [ 0 0 0 ]...2-4 1 2 1 Operator Sobel menempatkan penekanan atau pembobotan pada pikselpiksel yang lebih dekat dengan titik pusat jendela. Dengan demikian pengaruh piksel-piksel tetangga akan berbeda sesuai dengan letaknya terhadap titik di mana

13 gradien dihitung. Gradien adalah hasil pengukuran perubahan dalam sebuah fungsi intensitas, dan sebuah citra dapat dipandang sebagai kumpulan beberapa fungsi intensitas kontinyu dari citra. Dari susunan nilai-nilai pembobotan pada jendela juga terlihat bahwa perhitungan terhadap gradien juga merupakan gabungan dari posisi horisontal dan vertikal. 2.1.6 Operator Prewitt Pengembangan dari gradient operator dengan menggunakan 2 mask (horizontal dan vertikal) ukuran 3x3. Pada operator ini kekuatan gradient ditinjau dari sudut pandang horizontal dan vertikal (memperhatikan titik disekitar pada posisi horizontal dan vertikal). Selain itu metode Prewitt merupakan pengembangan metode Robert dengan menggunakan filter HPF yang diberi satu angka nol penyangga. Metode ini mengambil prinsip dari fungsi laplacian yang dikenal sebagai fungsi untuk membangkitkan HPF. Persamaan gradien pada operator Prewitt sama seperti operator Sobel, tetapi menggunakan nilai konstanta c = 1, Kernel fillter yang digunakan dalam metode Prewitt ini adalah : 1 0 1 P x = [ 1 0 1 1 0 1 1 1 1 ] P y = [ 0 0 0]...2-5 1 1 1 Operator Prewitt tidak meletakkan penekanan atau pembobotan pada pikselpiksel yang lebih dekat dengan titik pusat dari jendela, dengan demikian ke- 8 piksel tetangga mempunyai pengaruh yang sama terhadap perhitungan gradien pada titik pusat jendela. Inilah yang menjadi perbedaan antara operator prewitt dengan Operator Sobel [9]. 2.1.7 Operator Isotropic Operator Isotropic merupakan salah satu deteksi tepi dengan metode operator gradien yang menggunakan dua buah matriks 3x3, yaitu matriks vertikal dan matriks horisontal yang ditapis secara bersamaan. Bedanya operator Isotropic dengan operator metode gradien lain adalah nilai konstanta c = 2, Berikut adalah kernel untuk operator Isotropic.

14 1 0 1 I x = [ 2 0 2 1 0 1 ] I y = [ 1 2 1 0 0 0]...2-6 1 2 1 Kekuatan tepinya dilakukan dengan akar dari penjumlahan kuadrat hasil penelusuran secara horisontal (Ix) dengan hasil penelusuran secara vertikal (Iy), sehingga dapat dituliskan bahwa: G [f(x, y)] = Ix 2 + Iy 2...2-7 2.1.8 Operator Stochastic Operator Stochastic sama seperti operator Sobel, Prewitt dan Isotropic yaitu salah satu operator deteksi tepi dengan metode gradien yang menggunakan dua buah matriks 3x3, yaitu matriks vertikal dan matriks horisontal yang ditapis secara bersamaan. Berikut adalah kernel untuk operator Stochastic. 0.776 0 0.776 0.776 1 0.776 St x = [ 1 0 1 ] St y = [ 0 0 0 ]...2-8 0.776 0 0.776 0.776 1 0.776 Kekuatan tepinya dilakukan dengan akar dari penjumlahan kuadrat hasil penelusuran secara horisontal (Stx) dengan hasil penelusuran secara vertikal (Sty), sehingga dapat dituliskan bahwa: G [f(x, y)] = Stx 2 + Sty 2...2-9 2.2 MATLAB Matlab adalah sebuah sistem interaktif yang menggunakan elemen data dasarnya adalah array yang tidak membutuhkan dimensi. Hal ini mempermudah anda untuk menyelesaikan masalah komputasi, terutama yang menyangkut matriks dan vector. Nama matlab merupakan singkatan dari Matrix Laboratory. Matlab telah digunakan bertahun-tahun dengan banak pengguna. Di lingkungan universitas matlab telah menjadi alat standar untuk pengajaran tingkat dasar dan tingkat lanjut

15 yang berhubungan dengan matematika, rekayasa, dan sains. Dilingkungan industri, matlab merupakan alat untuk penelitian produktifitas, pengembangan, dan analisis. Menurut Wijaya & Priyono [10] Sistem matlab terdiri dari 5 bagian utama, yaitu : 1. Bahasa (pemrograman) matlab Bahasa ini adalah Bahasa (pemrograman) tingkat tinggi yang menggunakan matriks/array dengan pernyataan aliran kencali program, struktur data, masukan/keluaran, dan fitur-fitur pemrograman berorientasi objek. 2. Lingkungan kerja matlab Bagian ini adalah sekumpulan kakas dan fasilitas matlab yang digunakan oleh pengguna atau pemrogram. Fasilitas yang dimaksudkan misalnya untuk mengelola variable di dalam ruang kerja (workspace) dan melakukan impor dan ekspor data. Sedangkan kakas yang disediakan unruk pengembangan, pengelolaan, proses debugging dan pembuatan profil M- files untuk aplikasi matlab. 3. Penanganan grafik Bagian ini adalah system grafik matlab, termasuk perintah-perintah (program) tingkat tinggi untuk visualisasi data dimensi 2 dan dimensi 3, pengolahan citra, animasi, dan presentasi grafik. Selain itu, bagian ini juga termasuk perintah-perintah (program) tingkat rendah untuk menetapkan sendiri tampilan grafik seperti halnya membuat antarmuka pengguna grafis untuk aplikasi matlab. 4. Pustaka (library) fungsi matematis matlab Bagian ini adalah koleksi algoritma komputasi mulai dari fungsi dasar seperti menjumlahkan (sum), menentukan nilai sinus (sine), kosinus (cosine), dan aritmatika bilangan kompleks; fungsi-fungsi seperti inverse matriks, nilai eign matriks, fungsi Bessel, dan FFT (fast fourier transform). 5. API (application program interface) matlab Bagian ini adalah pustaka (library) untuk menuliskan program daam Bahasa C dan Fortran yang berinteraksi dengan matlab, termasuk fasilitas untuk memanggil rutin program dari matlab (dynamic linking), memanggil matlab sebagai mesin komputasi (computational engine), dan untuk pembacaan serta penulisan Mat-files.

16 Gambar 2.4 Tampilan antar muka Matlab 2.2.1 GUI Matlab GUIDE atau GUI builder merupakan sebuah graphical user interface (GUI) yang dibangun dengan obyek grafis seperti tombol (button), kotak teks, slider, sumbu (axes), maupun menu. Sebagai contoh, ketika menggerakkan slider, maka kita dapat melihat perubahan sebuah nilai. Kemudian, ketika kita menekan tombol OK, maka aplikasi kita akan dijalankan. Aplikasi yang menggunakan GUI umumnya lebih mudah dipelajari dan digunakan karena orang yang menjalankannya tidak perlu mengetahui perintah yang ada dan bagaimana perintah bekerja. Tidak seperti Bahasa pemrograman lainnya, GUIDE matlab memiliki banyak keunggulan tersendiri, antara lain : 1. GUIDE matlab banyak digunakan dan cocok untuk aplikasi-aplikasi berorientasi sains, sehingga banyak peneliti atau mahasiswa, baik S1, S2 maupun S3, menggunakan GUIDE matlab untuk menyelesaikan riset atau tugas akhirnya. 2. Matlab memiliki banyak fungsi built in yang siap digunakan dan pemakai tidak perlu repot membuatnya sendiri. 3. Ukuran file, baik FIG-file maupun M-file, yang dihasilkan relatif kecil.

17 Kemampuan grafisnya cukup andal dan tidak kalah dibandingkan Bahasa pemrograman lainnya [11]. Gambar 2.5 Tampilan antar muka GUI Matlab 2.3 Rekayasa Perangkat Lunak Rekayasa Perangkat Lunak adalah suatu disiplin ilmu yang membahas semua aspek produksi perangkat lunak, mulai dari tahapan awal yaitu analisa kebutuhan pengguna/user, menentukan spesifikasi dari kebutuhan pengguna, desain, pengkodean, pengujian sampai pemeliharaan sistem setelah digunakan. Menurut Pressman [12] Rekayasa Perangkat Lunak adalah suatu disiplin ilmu yang mengintegrasikan proses/prosedur, metode, dan perangkat tools untuk pembangunan perangkat lunak komputer. Tujuan dari Rekayasa Perangkat Lunak ini adalah : 1. Memperoleh biaya produksi perangkat lunak yang rendah. 2. Menghasilkan pereangkat lunak yang kinerjanya tinggi, andal dan tepat waktu 3. Menghasilkan perangkat lunak yang dapat bekerja pada berbagai jenis platform 4. Menghasilkan perangkat lunak yang biaya perawatannya rendah

18 2.3.1 Metode Prototyping Prototyping merupakan salah satu metode pengembangan perangat lunak yang banyak digunakan, dengan metode prototyping ini pengembang dan user dapat saling berinteraksi selama proses pembuatan sistem. Sering terjadi seorang user hanya mendefinisikan secara umum apa yang dikehendakinya tanpa menyebutkan secara detail output apa saja yang dibutuhkan, pemprosesan dan datadata apa saja yang dibutuhkan. Sebaliknya disisi pengembang kurang memperhatikan efesiensi algoritma, kemampuan sistem operasi dan interface yang menghubungkan manusia dan komputer. Untuk mengatasi ketidak serasian antara user dan pengembang maka dibutuhakan kerjasama yang baik diantara keduanya sehingga pengembang akan mengetahui dengan benar apa yang diinginkan user dengan tidak mengesampingkan segi-segi teknis dan pelanggan akan mengetahui proses-proses dalam menyelasaikan sistem yang diinginkan. Dengan demikian akan menghasilkan sistem sesuai dengan jadwal waktu penyelesaian yang telah ditentukan. Menurut O Brien [13], Prototyping adalah suatu sistem potensial yang disediakan bagi pengembang dan calon pengguna/user yang dapat memberikan gambaran bagaimana kira-kira sistem tersebut akan berfungsi bila telah disusun dalam bentuk yang lengkap, dimana prosesnya disebut dengan prototype. Pengumpulan Kebutuhan Produk Rekayasa Perancangan Cepat Perbaikan Prototype Membuat Prototype Evaluasi Prototype Gambar 2.6 Metode Prototyping Sumber : Buku Management Information Systems, 2011

19 Tahapan Metode Prototyping : 1. Pengumpulan Kebutuhan Menetapkan segala kebutuhan untuk pembangunan perangkat lunak 2. Perancangan cepat Tahap penerjemahan dari keperluan atau data yang telah dianalisis ke dalam bentuk yang mudah dimengerti oleh user. 3. Membuat Prototype Menerjemahkan data yang telah dirancang ke dalam bahasa pemrograman (Program contoh atau setengah jadi ) 4. Evaluasi Prototype Program yang sudah jadi diuji oleh pelanggan, dan bila ada kekurangan pada program bisa ditambahkan. 5. Perbaikan Prototype Perbaikan program yang sudah jadi, sesuai dengan kebutuhan konsumen. Kemudian dibuat program kembali dan di evaluasi oleh konsumen sampai semua kebutuhan user terpenuhi. 6. Produk Rekayasa Program yang sudah jadi dan seluruh kebutuhan user sudah terpenuhi 2.3.2 Flowchart Flowchart merupakan gambar atau bagan yang memperlihatkan urutan dan hubungan antar proses beserta instruksinya. Gambaran ini dinyatakan dengan simbol. Dengan demikian setiap simbol menggambarkan proses tertentu. Sedangkan hubungan antar proses digambarkan dengan garis penghubung. Flowchart ini merupakan langkah awal pembuatan program. Dengan adanya flowchart urutan poses kegiatan menjadi lebih jelas. Jika ada penambahan proses maka dapat dilakukan lebih mudah. Setelah flowchart selesai disusun, selanjutnya pemrogram (programmer) menerjemahkannya ke bentuk program dengan bahasa pemrograman. Menurut Jogiyanto [14] Bagan alir (flowchart) adalah bagan (chart) yang menunjukan hasil (flow) didalam program atau prosedur sistem secara logika. Bagan alir digunakan terutama untuk alat bantu komunikasi dan untuk

20 dokumentasi. Serta Menurut Ladjamuddin [15] Flowcart adalah bagan-bagan yang mempunyai arus yang menggambarkan langkah-langkah penyelsaian suatu masalah. Flowchart merupakan cara penyajian dari suatu algoritma. Tujuan Utama dari penggunaan Flowchart adalah untuk menggambarkan suatu tahapan penyelesaian masalah secara sederhanna, terurai, rapi dan jelas dengan menggunakan simbol-simbol yang standar. Tahap penyelesaian masalah yang disajikan harus jelas, sederhana, efektif dan tepat. Tabel 2.1 Simbol-simbol Flowchart SIMBOL NAMA FUNGSI TERMINATOR Permulaan/akhir program GARIS ALIR (FLOW LINE) Arah aliran program PREPARATION Proses inisialisasi/pemberian harga awal PROSES Proses perhitungan/proses pengolahan data INPUT/OUTPUT DATA PREDEFINED PROCESS (SUB PROGRAM) DECISION ON PAGE CONNECTOR OFF PAGE CONNECTOR Proses input/output data, parameter, informasi Permulaan sub program/proses menjalankan sub program Perbandingan pernyataan, penyeleksian data yang memberikan pilihan untuk langkah selanjutnya Penghubung bagian-bagian flowchart yang berada pada satu halaman Penghubung bagian-bagian flowchart yang berada pada halaman berbeda

21 2.3.3 Metode Pengujian Pengujian perangkat lunak sangat diperlukan dalam suatu system informasi, dimana dengan melakukan suatu pengujian akan ditemukan kesalahan atau error yang muncul dari system perangkat lunak tersebut. Dengan demikian tentunya seorang programmer akan bisa mengetahui dan apa yang harus dikerjakan selanjutnya. Metode yang banyak digunakan dalam pengujian perangkat lunak yaitu metode White Box Testing dan Black Box Testing. Penjelasan keduanya yaitu sebagai berikut : 1. White Box Testting White Box digunakan untuk mengetahui cara kerja suatu perangkat lunak secara internal yaitu dengan cara masuk kedalam modul untuk meneliti kode-kode program yang ada, dan menganalisis apakah ada kesalahan atau tidak. Jika ada modul yang menghasilkan output yang tidak sesuai dengan proses bisnis yang dilakukan, maka baris-baris program, variabel, dan parameter yang terlibat pada unit tersebut akan dicek satu persatu dan diperbaiki, kemudian di-compile ulang. Pengujian dilakukan untuk menjamin operasi-operasi internal sesuai dengan spesifikasi yang telah ditetapkan dengan menggunakan struktur kendali dari prosedur yang dirancang. 2. Black Box Testting Black Box digunakan untuk menguji fungsi-fungsi khusus dari perangkat lunak yang dirancang. Kebenaran perangkat lunak yang diuji hanya dilihat berdasarkan keluaran yang dihasilkan dari data atau kondisi masukan yang diberikan untuk fungsi yang ada tanpa melihat bagaimana proses untuk mendapatkan keluaran tersebut. Dari keluaran yang dihasilkan, kemampuan program dalam memenuhi kebutuhan pemakai dapat diukur sekaligus dapat diiketahui kesalahan-kesalahannya. Tidak seperti pengujian white box yang dilakukan pada awal proses pengujian, pengujian black box cenderung diaplikasikan selama tahap akhir pengujian. Karena pengujian black box memperhatikan struktur kontrol, maka perhatian berfokus pada domain informasi [17].

22