• Tidak ada hasil yang ditemukan

Pembangunan Aplikasi Auto Capture Berdasarkan Pergerakan Objek Pada Platform Android Dengan Menggunakan Metode Sum Of Absolute Differences

N/A
N/A
Protected

Academic year: 2017

Membagikan "Pembangunan Aplikasi Auto Capture Berdasarkan Pergerakan Objek Pada Platform Android Dengan Menggunakan Metode Sum Of Absolute Differences"

Copied!
89
0
0

Teks penuh

(1)

BERDASARKAN PERGERAKAN OBJEK PADA

PLATFORM ANDROID DENGAN MENGGUNAKAN

METODE

SUM OF ABSOLUTE DIFFERENCES

SKRIPSI

Diajukan untuk Menempuh Ujian Akhir Sarjana

Ryan Indrawan Sutanto

10109389

PROGRAM STUDI TEKNIK INFORMATIKA

FAKULTAS TEKNIK DAN ILMU KOMPUTER

(2)
(3)
(4)

BIODATA PENULIS

1. Data Pribadi

Nama : Ryan Indrawan Sutanto

Tempat dan Tanggal Lahir : Bandung, 21 Maret 1991

Jenis Kelamin : Laki-laki

Agama : Islam

Warga Negara : Indonesia

Alamat : Jl. Suplier 9 no 4 Blok 5 RT 03/05 Bumi

Rancaekek Kencana Kab. Bandung

Email : ryanindrawan09@gmail.com

2. Riwayat Pendidikan

a. 2009-Sekarang : UNIVERSITAS KOMPUTER INDONESIA b. 2006-2009 : SMK Bandung Timur

(5)

v

BAB 1 PENDAHULUAN ... 1

1.1 Latar Belakang ... 1

1.2 Identifikasi Masalah ... 2

1.3 Maksud dan Tujuan ... 2

1.4 Batasan Masalah ... 3

1.5 Metodologi Penelitian ... 3

1.5.1 Metode Pengumpulan Data ... 4

1.5.2 Metode Pembuatan Perangkat Lunak ... 4

1.6 Sistematika Penulisan ... 5

BAB 2 LANDASAN TEORI ... 7

2.1 Surveillance ... 7

2.2 Deteksi Gerak ... 7

2.3 Image Processing ... 8

2.3.1 Citra Digital ... 8

2.3.2 Elemen – elemen Citra Digital ... 11

2.3.3 Jenis Citra Digital ... 13

2.3.4 Karakteristik Citra Digital ... 17

2.3.5 Format Citra Digital ... 18

(6)

vi

2.5 Preview Survace ... 22

2.6 Preview Callback ... 22

2.7 YUV to RGB ... 23

2.8 RGB to Grayscale ... 24

2.9 Sum of absolute differences ... 25

2.10 Java ... 28

2.10.1 Kelebihan dan Kekurangan Java ... 29

2.10.2 Eclipse ... 30

2.10.3 Android Development Tools (ADT) ... 30

2.11 Android ... 31

2.11.1 Fitur Android ... 33

2.12 Komunikasi Data ... 38

2.13 Konfigurasi Jaringan ... 40

2.13.1 Pengertian Jaringan Komputer ... 40

2.14 WiFi ( Wireless Fidelity) ... 44

2.15 Xampp ... 46

2.16 Php ... 47

2.16.1 Pengertian PHP ... 48

2.17 Unified Modeling Language (UML) ... 48

2.17.1 Sejarah UML ... 49

2.17.2 Diagram UML ... 49

2.17.3 Use Case Diagram... 50

2.17.4 Activity Diagram... 51

2.17.5 Sequence Diagram ... 52

2.17.6 Class Diagram ... 53

BAB 3 ANALISIS DAN PERANCANGAN SISTEM ... 54

3.1 Analisis ... 54

3.1.1 Analisis Masalah ... 54

3.1.2 Analisis Sistem yang akan dibangun... 55

3.1.3 Analisis Komunikasi Data... 73

(7)

vii

3.1.5 Analisis Kebutuhan Sistem ... 75

3.1.6 Analisis Kebutuhan Non-Fungsional ... 76

3.1.7 Analisis Kebutuhan Fungsional ... 77

3.2 Perancangan Sistem ... 99

3.2.1 Perancangan Struktur Menu ... 99

3.2.2 Perancangan Antarmuka ... 100

3.2.3 Perancangan Jaringan Semantik ... 105

BAB 4 IMPLEMENTASI DAN PENGUJIAN SISTEM ... 107

4.1 Implementasi Sistem ... 107

4.1.1 Implementasi Perangkat Keras Pembangun ... 107

4.1.2 Implementasi Perangkat Lunak Pembangun ... 107

4.1.3 Implementasi Antarmuka ... 108

4.1.4 Implementasi Class ... 113

4.2 Pengujian Perangkat Lunak ... 114

4.2.1 Pengujian Alpha ... 114

4.2.2 Pengujian Akurasi ... 117

4.2.3 Kesimpulan pengujian akurasi ... 118

4.2.4 Pengujian Beta ... 118

4.2.5 Kesimpulan Pengujian Beta ... 123

BAB 5 KESIMPULAN DAN SARAN ... 125

5.1 Kesimpulan ... 125

5.2 Saran ... 125

(8)

126 States of America.

[2] http://developer.android.com/reference/android/ (diakses 15 April 2014). [3] Abdillah Triningtyas, Dr. Ir. Achmad Affandi, DEA., Dr. Ir. Wirawan,

DEA, Perancangan Sistem Pengenalan Objek Visual Untuk Pengamanan dan Pemantauan Fasilitas PLTA, Institut Teknologi Sepuluh November, Surabaya.

[4] Rosa A.S, M. Shalahudin. “Rekayasa Perangkat Lunak Terstruktur dan

Berorientasi Objek”. Penerbit: Informatika.

[5] Akhmad Dharma Kasman. “Kolaborasi Dahsyat Android dengan PHP &

MySql”. Penerbit: Lokomedia.

[6] Bambang Hariyanto, Ir., MT. “Esensi-esensi Bahasa Pemrograman

JAVA”. Penerbit : Informatika.

[7] Joaquin Olivares, Javier Hormigo, Julio Villalba, Ignacio Benavides. “ Minimum Sum of absolute differences implementation in a single FPGA

device”. University of Malaga, Spain.

[8] Gonzalez, R.C., & Woods,R.E.(2001). Digital Image Processing, Second Edition. United State Of American: Prentice Hall.

[9] Presman, Ph.D, dan Roger S. 2002. Rekayasa Perangkat Lunak Pendekatan Praktis Buku 1, Andi, Yogyakarta

[10] Muhammad Ihsan Zul, Widyawan, Lukito Edi Nugroho. “ Deteksi Gerak dengan Menggunakan Frame Differences pada IP Camera”. Fakultas Teknik UGM, Yogyakarta.

[11] Nadir Nourain Dawoud, Brahim Belhaouari Samir, Josefina Janier. “Fast Template Matching Method Based Optimized Sum Of Absolute Difference

(9)

[12] S. Wong, S. Vassiliadis, S. Cotofana “A Sum of absolute differences Implementation in FPGA Hardware", 28th Euromicro Conference

(EUROMICRO'02), pp.183{188, Dortmund, Germany, 2002.

[13] Collins, R. T., Lipton, A. J., Kanade, T., Fujiyoshi, H., Duggins, D., Tsin, Y., et al. (2000). “A System for Video Surveillance and Monitoring. CMU-RI-TR- 00-12”, Robotics Institute, Carnegie Mellon University.

[14] Gil-Jim´enez, P., Maldonado-Basc´on, P., Gil-Pita, R., dan Moreno, H. G. (2003).”Background Pixel Classification for Motion Detection in Video Image Sequences. IWANN'03 Proceedings of the Artificial and natural

neural networks 7th international conference on Computational Methods

in Neural Modeling”. Heidelberg, Germany.

[15] Kenchannavar, H. H., Patkar, G. S., Kulkarni, U. P., dan Math, M. M. (2010). “Simulink Model for Frame Difference and Background Subtraction comparision in Visual Sensor Network. 2010 The 3rd

International Conference on Machine Vision (ICMV 2010)”. Hongkong China.

[16] Rosin, P., dan Ellis, T. (1995). “Image Difference Threshold Strategies and Shadow Detection”. in Proc. British Machine Vision Conf (pp. 347-356). BMVA Press.

[17] Gupta, N., Gupta, R., Singh, A., dan Wytock, M. (2008). “Object Recognition using Template Matching”. California, USA: Stanford.edu. [18] Migliore, D. A., Matteucci, M., dan Naccari, M. (2006). “A Revaluation of

Frame Difference in Fast and Robust Motion Detection. Proceedings of

the 4th ACM international workshop on Video surveillance and sensor

networks”. New York, USA.

(10)

iii

KATA PENGANTAR

Dengan nama Allah yang Maha Pengasih lagi Maha Penyayang.

Assalamu’alaikum, Wr.,Wb.

Segala puji dan syukur penulis panjatkan ke hadirat Allah SWT, atas segala rahmat dan hidayah-Nya sehingga penulis dapat menyelesaikan tugas akhir ini dengan mengambil judul “PEMBANGUNAN APLIKASI AUTO CAPTURE BERDASARKAN PERGERAKAN OBJEK PADA PLATFORM ANDROID

DENGAN MENGGUNAKAN METODE SUM OF ABSOLUTE

DIFFERENCES”. Adapun tujuan dari penyusunan tugas akhir ini adalah untuk memenuhi salah satu syarat dalam menyelesaikan jenjang studi stara satu (S1) di Program Studi Teknik Informatika, Universitas Komputer Indonesia.

Dengan selesainya penyusunan tugas akhir ini, penulis mengucapkan terimakasih yang sebesar-besarnya kepada:

1. Kedua orang tua penulis Sudarso dan Sri Soelastri, adik penulis Irwan Darmawan yang senantiasa melimpahkan cinta dan kasih sayangnya serta selalu mendoakan dan mendukung penulis dalam penyelesaian skripsi ini. 2. Bapak Irfan Maliki, S.T., M.T.,. Selaku dosen pembimbing yang telah

memberikan bimbingan, pengarahan dan masukan bagi penulis.

3. Bapak Irawan Afrianto, S.T., M.T. Ketua Program Studi Teknik Informatika Universitas Komputer Indonesia selaku dosen penguji seminar dan penguji satu sidang yang juga membimbing saya, terima kasih atas arahan dan masukannya.

4. Bapak Iskandar ikbal, S.T., M.Kom. Selaku dosen penguji 3 yang telah memberikan masukan dan pengarahan bagi penulis.

(11)

iv

6. Teman-teman mahasiswa seperjuangan Teknik Informatika UNIKOM IF-9 angkatan 2009 yang selalu memberikan dukungan dan semangat. 7. Semua pihak yang telah terlibat membantu dalam penulisan tugas akhir ini

baik secara langsung dan tidak langsung.

Di dalam penulisan laporan ini, penulis telah berusaha semaksimal mungkin, walaupun demikian penulis menyadari bahwa laporan tugas akhir ini masih jauh dari sempurna. Oleh karena itu penulis menerima segala masukan, saran, dan kritik yang membangun untuk perbaikan dari masa mendatang.

Akhir kata, semoga laporan ini dapat berguna khusunya bagi penulis, dan untuk seluruh pihak yang membutuhkan pada umumnya.

Bandung, 22 Agustus 2014

(12)

1

Pentingnya suatu keamanan terhadap tindak pencurian barang berharga maka diperlukannya suatu aplikasi yang dapat digunakan untuk memantau keadaaan suatu ruangan menggunakan perangkat yang umum dimiliki masyarakat yaitu smartphone. Penggunaan aplikasi kamera pada smartphone pada saat ini

cenderung hanya digunakan untuk memotret dan merekam suatu kejadian. Di sisi lain penggunaan aplikasi kamera pada smartphone juga dapat digunakan untuk pengawasan atau monitoring suatu ruangan, karena penulis disini ingin memperkenalkan dan mengembangkan bahwa smartphone tidak hanya dapat digunakan untuk menelpon, sms dan social media. Banyak sistem pengawasan atau monitoring yang memonitor situasi memiliki sistem kerja merekam suatu kejadian setiap waktu tanpa henti, walaupun pada ruangan yang dimonitor oleh kamera tersebut tidak terdapat aktifitas sehingga membutuhkan media penyimpanan yang besar, sehingga akan lebih efektif jika aplikasi dapat mendeteksi sebuah pergerakan pada preview kamera di ponsel android dan dapat melakukan capture otomatis setelah pergerakan terdeteksi.

Berhubung aplikasi ini menggunakan perangkat mobile, maka akan lebih baik jika aplikasi ini hanya digunakan saat diperlukan saja atau ketika di ruangan tersebut tidak ada aktifitas. Pada saat penggunaan aplikasi dengan waktu yang cukup lama, aplikasi ini akan meng-capture otomatis beberapa pergerakan yang terdeteksi. Hal ini akan menjadi sebuah masalah karena membutuhkan media penyimpanan pada handphone yang sangat besar. Oleh karena itu, untuk menjawab permasalahan ini diperlukannya media upload gambar ke komputer server dengan menggunakan jaringan wireless Fidelity (Wi-Fi).

(13)

algoritma untuk mengukur kesamaan antara blok gambar. SAD bekerja dengan mengambil perbedaan mutlak (Absolute Difference) antara setiap pixel di blok asli dan pixel yang sesuai di blok yang digunakan untuk perbandingan.

Berdasarkan permasalahan tersebut maka diperlukan sebuah aplikasi kamera yang dapat meng-capture secara otomatis ketika terdeteksi sebuah pergerakan dan dapat meng-upload gambar hasil capture secara otomatis ke komputer menggunakan jaringan Wireless Fidelity (Wi-Fi). Oleh karena itu judul yang diambil untuk skripsi ini adalah “Pembangunan Aplikasi Auto Capture Pada Platform Android Dengan Menggunakan Metode Sum of absolute differences.

1.2 Identifikasi Masalah

Berdasarkan uraian pada latar belakang masalah, maka identifikasi masalah dari penelitian ini adalah:

1. Bagaimana membangun aplikasi pengawasan atau monitoring suatu ruangan dengan perangkat smartphone android.

2. Kurang efektifnya aplikasi pengawasan atau montoring suatu ruangan yang merekam suatu kejadian terus menerus setiap saat tanpa henti. 3. Manualnya proses capture setelah pergerakan terdeteksi dan terbatasnya

media penyimpanan pada handphone. 1.3 Maksud dan Tujuan

Berdasarkan permasalahan yang diteliti maka, maksud dari penelitian adalah membangun Aplikasi Auto Capture Berdasarkan Pergerakan Objek Dengan Menggunakan Metode Sum of absolute differences.

Sedangkan tujuan yang akan dicapai dalam penelitian ini adalah sebagai berikut:

(14)

2. Memudahkan pengguna dalam pengawasan atau monitoring suatu ruangan karena aplikasi dapat mendeteksi sebuah pergerakan pada preview kamera secara real-time.

3. Memudahkan pengguna karena aplikasi dapat proses capture secara otomatis setelah pergerakan terdeteksi dan meng-upload gambar hasil capture otomatis ke komputer server dengan menggunakan jaringan

wireless Fidelity (Wi-Fi).

1.4 Batasan Masalah

Adapun Batasan masalah dalam penelitian ini adalah sebagai berikut :

1. Menyimpan smartphone android pada suatu tempat yang dapat memantau seluruh isi ruangan.

2. Terdapat jaringan wifi pada ruangan.

3. Ter-install Aplikasi Xampp pada komputer server. 4. Alat untuk capture adalah smartphone android.

5. pencahayaan yang cukup terang agar kamera dapat mendeteksi sebuah pergerakan.

6. Aplikasi ini tidak dapat mengidentifikasi objek.

7. Resolusi kamera pada perangkat minimal 2 megapixel. 8. Minimal operating system Android versi 2.2 atau froyo.

9. Model analisis sistem adalah Object Oriented dan tools yang digunakan adalah UML (Unfied Modeling Language) dalam model fungsional dan diagram-diagram yang digunakan yaitu Use Case Diagram, Class Diagram, Sequence Diagram, Acticity Diagram.

10.Metode yang digunakan pada proses deteksi gerak adalah metode Sum of absolute differences (SAD).

1.5 Metodologi Penelitian

(15)

1.5.1 Metode Pengumpulan Data

Metode pengumpulan data yang digunakan dalam penelitian ini adalah Studi Literatur dimana pengumpulan data dilakukan dengan cara mengumpulkan literatur, jurnal, paper yang ada kaitannya dengan judul penelitian.

1.5.2 Metode Pembuatan Perangkat Lunak

Mengenai metode yang digunakan dalam proses yang digunakan dalam tahap pembuatan perangkat lunak adalah dengan menggunakan metode Classical Life Cycle (CLC) atau yang biasa disebut dengan Waterfall. Beberapa proses diagram

waterfall sebagai berikut :

1. System Enginering.

Proses penilaian sistem lama yang sedang berjalan dan studi kelayakan pengembangan sistem baru berdasarkan aspek teknologi, ekonomis dan sumber daya manusia.

2. Analisis.

Perolehan kebutuhan pengguna sistem dari user serta pilihan solusi jenis aplikasi yang akan dikembangkan.

3. Desain.

Proses ini digunakan untuk mengubah kebutuhan-kebutuhan diatas menjadi representasi ke dalam bentuk software. Desain harus dapat mengimplementasikan kebutuhan yang telah disebutkan pada tahap sebelumnya maka proses ini juga harus didokumentasikan sebagai konfigurasi dari software.

4. Coding dan Testing.

Desain harus diubah bentuknya menjadi bentuk yang dapat dimengerti olek komputer, yaitu ke dalam bahasa pemrograman melalui proses coding. Tahap ini merupakan implementasi dari tahap desain yang secara

(16)

5. Implementasi.

Semua fungsi-fungsi software harus di ujicoba agar software bebas dari kesalahan, dan hasilnya harus benar-benar sesuai dengan kebutuhan yang sudah didefinisikan sebelumnya. Maka proses selanjutnya adalah bagaimana sistem baru akan diinstall dan dijalankan di perusahaan dengan pengoperasian yang dilakukan oleh user.

6. Pemeliharaan.

Pemeliharaan suatu software sangat diperlukan, termasuk didalamnya adalah pengembangan, karena software yang dibuat tidak selamanya hanya seperti itu. Ketika dijalankan mungkin saja masih ada kesalahan kecil yang tidak ditemukan sebelumnya, atau ada penambahan fitur-fiter yang belum ada pada software tersebut. Pengembangan diperlukan ketika adanya perubahan dari perusahaah seperti ketikan ada pergantian sistem operasi adanya perubahan dari perusahaan seperti ketika ada pergantian sistem operasi atau perangkat lainnya.

Gambar 1.1 Metode Waterfall [9]

1.6 Sistematika Penulisan

(17)

BAB 1 PENDAHULUAN

Bab ini berisi latar belakang masalah, rumusan masalah, maksud dan tujuan, batasan masalah, metodologi penelitian yang digunakan, serta sistematika penulisan.

BAB 2 TINJAUAN PUSTAKA

Bab ini berisi membahas berbagai konsep dasar dan teori-teori yang berkaitan dengan topik penelitian yang dilakukan dan hal-hal yang berguna dalam proses analisis permasalahan seperti Object Oriented Programming, Image Processing, Sum of absolute differences (SAD), android, uml dan Tools Implementasi seperti

JDK dan Eclipse IDE.

BAB 3 ANALISIS DAN PERANCANGAN

Bab ini membahas tentang desain dan sistem yang akan dibuat meliputi : Lingkungan pengembangan program, Analisis, Perancangan sistem¸ Rancangan tampilan aplikasi, dan Flowchart algoritma.

BAB 4 IMPLEMENTASI DAN PENGUJIAN

Merupakan tahapan yang dilakukan dalam penelitian secara garis besar sejak dari tahap persiapan sampai penarikan kesimpulan, metode dan kaidah yang diterapkan dalam penelitian. Termasuk menentukan variabel penelitian, identifikasi data yang diperlukan dan cara pengumpulannya, penentuan sampel penelitian dan teknik pengambilannya, serta metode/teknik analisis yang akan dipergunakan dan perangkat lunak yang akan dibangun jika ada.

BAB 5 PENUTUP

(18)

54

Analisis bertujuan untuk mengidentifikasi permasalahan-permasalahan yang terdapat pada sistem serta menentukan kebutuhan-kebutuhan dari sistem yang dibangun. Analisis tersebut meliputi analisis masalah, analisis kebutuhan data, analisis kebutuhan fungsional, dan analisis sistem.

3.1.1 Analisis Masalah

Pentingnya keamanan terhadap tindak pencurian barang berharga maka diperlukannya suatu aplikasi yang dapat digunakan untuk memantau keadaaan suatu ruangan menggunakan perangkat yang umum dimiliki masyarakat yaitu smartphone. Banyak aplikasi pengawasan atau monitoring yang memonitor situasi

memiliki sistem kerja merekam situasi terus menerus tanpa henti, walaupun ruangan yang dimonitor tidak terdapat aktifitas. Sehingga akan lebih efektif ketika aplikasi dapat mendeteksi sebuah pergerakan pada preview kamera di android secara real-time, aplikasi dapat meng-capture pergerakan tersebut dan aplikasi dapat meng-upload gambar hasil capture secara otomatis ke komputer server.

Metode yang digunakan untuk mendeteksi gerak adalah Sum Of Absolute Difference (SAD). Diawali dengan mengambil citra pada frame preview kamera,

karena citra yang didapat adalah format YUV maka ubah kedalam format RGB lalu mengubahnya menjadi grayscale. Setelah itu ambil nilai pixel pada frame kamera, bandingkan antara frame 1 dan selanjutnya, diambil selisihnya dan di absolute-kan. Agar kamera tidak meng-capture sembarang pergerakan maka

(19)

3.1.2 Analisis Sistem yang akan dibangun

Sistem yang akan dibangun adalah sistem aplikasi pengawasan atau monitoring sebuah ruangan. Aplikasi ini dapat mengenali sebuah pergerakan dan akan meng-capture secara otomatis ketika sebuah pergerakan terdeteksi. adapun gambaran umum tentang sistem yang akan dilihat pada Gambar 3.1.

Ambil citra pada frame

preview kamera Konversi YUV ke RGB Konversi RGB ke Grayscale

capture

output Upload otomatis ke

komputer

Hitung dengan metode Sum Of Absolute Differences

(SAD) Resize Gambar

Gambar 3.1 Analisis Sistem yang akan dibangun

Berikut penjelasan alur proses sistem yang akan dibangun :

1. Kamera akan mengambil citra pada frame – frame preview kamera dan citra yang didapat adalah format YUV.

2. Format citra YUV dikonversikan ke jenis citra warna yaitu format RGB. 3. Suatu citra warna di ubah menjadi citra grayscale untuk memperoleh

informasi intensitas dari gambar, sehingga dapat di sortir mulai dari hitam untuk intensitas yang paling lemah samapai dengan putih yang intensitas yang paling kuat. Dan mendapatkan nilai grayscale nya

(20)

5. Capture Pada tahap ini sistem akan meng-capture secara otomatis ketika ada sebuah pergerakan terdeteksi.

6. Resize Gambar pada tahap ini resolusi gambar akan dirubah ukurannya untuk mempercepat proses upload.

7. Upload pada tahap ini sistem akan meng-upload secara otomatis menggunakan jaringan wireless Fidelity (Wi-Fi) ketika pergerakan tersebut telah di capture oleh aplikasi.

8. Output pada tahap ini gambar hasil capture telah berada di folder komputer.

3.1.2.1 Analisis Preview Kamera

Pada tahap ini merupakan proses yang penting, karena melalui proses inilah data input akan didapatkan untuk dilakukan proses penghitungan. Pada proses ini kamera akan mengambil nilai-nilai pixel pada frame-frame yang kamera tangkap. Kecepatan kamera untuk proses preview kamera yang digunakan adalah 24 fps. Adapun posisi untuk penempatan kamera smartphone yang digunakan pada penelitian ini adalah berada di tepi ruangan dengan kemiringan sekitar 75 derajat.

(21)

3.1.2.2 Analisis Model Warna YUV ke RGB

Proses ini dilakukan karena kamera mendapatkan citra dengan format YUV. RGB merupakan suatu model warna yang terdiri atas tiga warna yaitu R(Red), G(Green), B(Blue). Pada format RGB, suatu warna didefinisikan sebagai kombinasi (campuran) dari komponen warna R, G dan B. Proses ini dilakukan karena di tahapan berikutnya penulis akan melakukan proses grayscaling guna mempermudah proses perhitungan. Formulasi konversi dari YUV ke RGB adalah: R = Y + (1.4075 * (V-128));

G = Y – (0.3455 * (U-128) – (0.7169 * (V-128)); B = Y + (1.7790 * (U-128));

Contoh citra YUV:

(22)

Sedangkan Algoritma mengubah YUV ke RGB untuk seluruh pixel adalah:

Kamus

ImageHeight : integer ImageWidth : integer

Image : array[imageHeight][ImageWidth]

YUVImage : array[ImageHeight][ImageWidth] of integer RGBImage : array[ImageHeight][ImageWidth] of integer Algoritma

For i← 0 to ImageWidth do

For j ← 0 to ImageHeight do

YUVImage[i][j] ← Image[i][j]

RGBImage[i][j] ←

R ← YUVImage[i][j].Y+(1.4075*(YUVImage[i][j].V-128));

G ← YUVImage[i][j].Y

-(0.3455*(YUVImage[i][j].U-128)-(0.716*(YUVImage[i][j].V-128));

B ← YUVImage[i][j].Y+(1.7790*(YUVImage[i][j].U-128));

Endfor Endfor

End

Gambar 3.4 Algoritma YUV ke RGB

3.1.2.3 Analisis Grayscaling

Tahap selanjutnya adalah tahap grayscaling yaitu mengubah citra warna menjadi citra grayscale, hal ini digunakan untuk menyederhanakan model citra dan guna mempermudah proses perhitungan. Untuk memperoleh informasi intensitas dari citra tersebut, citra dapat di sortir secara ekslusif mulai dari hitam untuk intensitas yang paling lemah sampai dengan putih untuk intensitas yang paling kuat. Citra warna terdiri dari 3 layer matrik yaitu R-layer, G-layer, B-layer. Jadi dalam proses ini akan mengubah 3 layer matriks citra berwarna menjadi 1 layer matriks grayscale dan hasilnya citra grayscale. Dalam citra ini tidak ada lagi warna, yang ada adalah derajat keabuan

Untuk mengubah citra berwarna yang mempunyai nilai matrik masing-masing R, G dan B menjadi citra grayscale dengan nilai I. Berikut adalah perhitungan untuk mendapatkan grayscale :

(23)

Contoh citra berwarna (RGB):

Gambar 3.5 Citra Berwarna RGB

Contoh citra yang telah menjadi grayscale:

Gambar 3.6 Citra Grayscale

Sedangkan algoritma grayscale adalah sebagai berikut:

Kamus

ImageHeight : integer ImageWidth : integer

Image : array[imageHeight][ImageWidth]

(24)

Algoritma

For i← 0 to ImageWidth do

For j ← 0 to ImageHeight do

RGBImage[i][j] ← Image[i][j] GrayImage[i][j] ←

0.21 * RGBImage[i][j].R + 0.77 * RGBImage[i][j].G + 0.02 * RGBImage[i][j].B Endfor

Endfor End

Gambar 3.7 Algoritma RGB to Grayscale

3.1.2.4 Analisis Sum of absolute differences (SAD)

Setelah melakukan proses preview kamera, mengubah citra YUV ke citra RGB dan mengubah citra RGB menjadi citra gray, langkah selanjutnya adalah menghitung nilai Sum of absolute differences (SAD) pada setiap frame yang telah dikonversi menjadi grayscale. Pada tahap ini, tiap pixel akan dibandingkan dengan pixel lain. Sum of absolute differences(SAD) ini bekerja dengan cara mengambil prebedaan mutlak (Absolute Differences) antara setiap pixel di citra awal dengan citra-citra berikutnya. Illustrasi langkah-langkah metode SAD adalah sebagai berikut:

(25)

Diff Diff Diff

Abs Abs Abs

+ +

+

MATRIX 1 MATRIX 2

PHASE 1

PHASE 2

PHASE 3

Gambar 3.8 Ilustrasi menghitung pixel antar frame

Berikut penjelasan ilustrasi menghitung antar frame :

1. Bandingkan selisih pixel 1 di matrix 1 dan pixel 1 di matrix 2, pixel 2 pada matrix 1 dan pixel 2 pada matrix 2 dan begitu selanjutnya. Matrix disini dianalogikan sebagai frame.

2. Absolute-kan nilai hasil selisih pixel antar frame.

3. Jumlahkan seluruh selisih pixel tersebut sehingga mendapatkan nilai SAD nya.

(26)

selanjutnya kamera akan menambah gambar sebagai citra baru yang akan dibandingkan dengan citra awal. Jika tidak ada perubahan nilai pixel dibandingkan dengan citra awal maka kamera akan menambah citra baru untuk kembali dibandingkan dan jika ada perubahan pixel maka akan ditandai sebagai pergerakan. Berikut ini merupakan flowchart deteksi gerak dengan menggunakan Sum of absolute differences (SAD).

Start

Tangkap gambar sebagai citra referensi

Tambah gambar sebagai citra baru

Apakah ada perubahan pixel jika dibandingkan dengan citra

referensi?

Tandai sebagai pergerakan

End Ya Tidak

Gambar 3.9 Flowchart deteksi gerak dengan SAD

Untuk Setiap frame, lakukan pemrosesan setiap pixel yang menggunakan persamaan Sum of absolute differences (SAD) berikut:

SAD =

Dimana:

i= frame i. j= frame j.

n= jumlah pixel pada frame.

(27)

Procedure getFrameDifference()

Kamus

i,j,f1,f2,f3,Fd : integer

pixel : array [ih][iw] of double

Algoritma

Pixel = new double [ih][iw];

For i ← 0 to i < ih do

For j ← 0 to j <iw do

Fd ← ((absolute)(f1[i][j] – f2[i][j])) +

((absolute) (f2[i][j] – f3[i][j]));

Endfor

Endfor

Gambar 3.10 Algoritma proses perbandingan antar frame SAD

3.1.2.4.1 Contoh penerapan Pemrosesan SAD

Contoh penerapan permrosesan SAD dapat dilihat pada Gambar 3.11 dan Gambar 3.13. Dengan membandingkan frame 1 sebagai citra awal dan frame 2 sebagai citra baru.

(28)

Gambar 3.12 Citra awal Frame 1 Grayscale

Gambar 3.13 Citra Frame 2

(29)

Contoh pemrosesan SAD adalah sebagai berikut. yang disebut pergerakan pada aplikasi ini adalah ketika nilai pixel antar frame berubah. Berikut adalah contoh nilai pixel dengan luas sebesar 20x15 pixel.

x/y 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

Gambar 3.15 Nilai pixel citra frame 1

(30)

14 128 178 163 189 181 185 190 200 123 123 123 232 106 143 141

Gambar 3.16 Nilai pixel Citra frame 2

Nilai SAD dihitung melalui perbandingan antara citra frame 1 sebagai citra awal dan frame 2 sebagai citra baru. Pada citra frame 1 dan frame 2 memiliki nilai pixel-pixel. Perhitungan SAD dilakukan terhadap pixel-pixel ini. Jumlah pixel dinyatakan dengan n. berikut perhitungannya:

SADf1,2 = |103-137| + |115-120| + |90-100| +

|94-80| + |101-101| + |89-75| + …………

|138-143| + |102-141| + |115-141| SADf1,2 = 2034

Resolusi pixel yang digunakan adalah sesuai resolusi kamera pada perangkat. Untuk mempercepat proses perhitungan deteksi gerak menggunakan Sum of absolute differences (SAD) maka pada tahap ini dilakukan normalisasi

(31)

|

Tahapan selanjutnya adalah thresholding atau penentuan nilai ambang batas untuk menentukan ada atau tidaknya pergerakan pada suatu daerah pemantauan. Pergerakan yang akan di capture secara otomatis adalah apabila terdapat gerakan dengan nilai hasil persamaan SAD antar frame yang melebihi nilai threshold yang telah ditentukan. Dalam hal ini beberapa nilai threshold diujicobakan dari nilai 100 – 600. Penentuan nilai threshold dilihat dengan cara melihat hasil persamaan SAD antar frame pada saat capture otomatis pada saat kamera di arahkan pada suatu ruangan yang kosong untuk mendeteksi pergerakan. Proses ini dilakukan berulang-ulang dan menggunakan jarak pantau yang berbeda serta merubah nilai threshold yang berulang-ulang juga untuk mendapatkan nilai yang cocok. Sehingga diperoleh nilai threshold yang cocok. Nilai threshold yang cocok adalah 300 karena nilai 300 adalah nilai tengah dari nilai yang diujicobakan dari batas minimum 100 – 600 dengan nilai 300 aplikasi dapat mendeteksi pergerakan orang berjalan dengan jarak maksimal 6 meter ruangan yang diawasi. Jika nilai hasil persamaan SAD antar frame yang didapat > 300 maka dipastikan terdapat objek yang bergerak dan akan di capture secara otomatis.

(32)

Gambar 3.17 SAD Frame 1 dan Frame 2

Gambar 3.18 SAD Frame 1 dan Frame 2

Pada gambar 3.17 terdapat nilai SAD antar frame kurang dari 300, jika kondisi seperti itu maka aplikasi akan mengabaikan pergerakan tersebut karena aplikasi menganggap bahwa pada ruangan yang diawasi tidak terdapat pergerakan. Pada gambar 3.18 terdapat nilai SAD antar frame lebih dari 300, jika kondisi seperti itu maka aplikasi akan meng-capture secara otomatis pergerakan tersebut dan menganggap bahwa pada ruangan yang diawasi terdapat pergerakan. 3.1.2.6 Proses Capture

(33)

start

Preview kamera Deteksi Gerak dengan SAD

Hasil persamaan SAD > Threshold

capture

end

tidak

Ya

Gambar 3.19 Flowchart proses capture

Gambar hasil capture kamera:

Gambar 3.20 Gambar hasil capture

3.1.2.7 Proses resize gambar

(34)

menggunakan salah satu built in di android programing yaitu resize bitmap. Berikut adalah tahap tahapannya:

1. Inisialisasi bitmap

Bitmap result = Bitmap.createScaledBitmap(source, newWidth, newHeight,

filter);

Gambar 3.21 Inisialisasi bitmap

Dari syntax diatas hasil resize akan ditampung di result. Parameter yang dikirim ke fungsi createScaledBitmap adalah Bitmap source atau gambar yang mau di resize, width dan height yang diinginkan.

2. Resize image

Selanjutnya setelah inisialisasi bitmap yang bertujuan untuk menambah gambar baru untuk hasil resize. Gambar yang akan di resize pada penelitian ini adalah gambar ukuran 2448x3264 menjadi 256x341.

public static Bitmap getResizedBitmap(Bitmap bm){ float height2;

float width2;

int width = bm.getWidth(); int height = bm.getHeight();

Bitmap resizeBitmap = null;

//potrait width2 = 256;

height2 = ((float)256/width)*height;

resizeBitmap = Bitmap.createScaledBitmap(bm, Math.round(width2), Math.round(height2), true);

}

(35)

Penjelasan dari fungsi diatas adalah pertama buat function getResizedBitmap, lalu inisialisasi variable width, height itu ukuran bitmap source. Width2, height2 itu adalah ukuran bitmap yang akan dicapai. Karena pada

penelitian ini akan me-resize dalam bentuk portrait, maka width atau lebarnya kita buat 256 dan height nantinya akan lebih dari 341. Cara menghitung height barunya adalah dengan (256/width lama) x height lama. Lalu resize berdasarkan height dan width yang sudah di dapatkan.

Gambar 3.23 resize ukuran gambar.

3.1.2.8 Proses Upload

(36)

Jaringan Wireless Fidelity (Wi-Fi)

Perangkat Mobile

Data Gambar Data Gambar

Komputer

Gambar 3.24 Proses Upload ke komputer menggunakan wireless Fidelity (wi-fi)

Berikut penjelasan mengenai langkah-langkah upload ke komputer server: 1. Hubungkan perangkat handphone dan komputer ke dalam suatu jaringan. 2. Konfigurasikan IP-address komputer server pada aplikasi. Jika perangkat

mobile dapat mengakses web server maka komputer dan perangkat mobile dapat melakukan proses komunikasi data.

3. Ketika aplikasi meng-capture pergerakan tersebut maka aplikasi akan secara otomatis meng-upload gambar hasil capture tersebut ke komputer. Setelah proses-proses tersebut maka akan menghasilkan output berupa gambar yang telah berada di folder komputer.

(37)

3.1.3 Analisis Komunikasi Data

Analisis komunikasi data ini merupakan tahapan analisis untuk proses komunikasi data antara perangkat mobile atau smartphone sebagai client dan komputer sebagai server. Topologi jaringan yang digunakan dalam aplikasi pemantauan atau monitoring pada suatu ruangan diperlihatkan pada gambar. Pada topologi jaringan ini perangkat mobile dan komputer akan dihubungkan dengan menggunakan jaringan Wireless Fidelity (Wi-Fi). perangkat mobile akan mengirimkan data gambar dan komputer akan mengambil data gambar tersebut untuk ditampilkan. Namun, jika jaringan wi-fi mati atau terganggu maka semua perangkat yang dihubungkan ke jaringan wi-fi tersebut tidak dapat saling berkomunikasi. Client akan menjalankan aplikasi auto capture dan mengirimkan data gambar ke komputer server untuk ditampilkan. Instruksi permintaan data oleh web server dikemas dalam TCP yang merupakan protocol transport dan dikirim ke protocol HTTP. Web server akan mencari data byte yang dikemas dalam TCP protocol. Jika perangkat mobile tidak dapat mengakses url ip address komputer, maka perangkat yang dihubungkan tidak dapat saling berkomunikasi.

Jaringan wi-fi

Komputer

Handphone

POST GET

Web server

(38)

3.1.4 Arsitektur Sistem

Sistem yang akan dibangun adalah sistem aplikasi pengawasan atau monitoring pada suatu ruangan dengan menggunakan perangkat mobile atau smartphone. Adapun arsitektur sistem yang akan dibangun yang dapat dilihat

pada Gambar 3.27:

Jaringan Wireless Fidelity (Wi-Fi)

Perangkat Mobile (client)

Data Gambar Data Gambar

Komputer (server)

Pengguna

Gambar 3.27 Arsitektur sistem

Penjelasan dari arsitektur sistem yang akan dibangun adalah: 1. Perangkat Mobile

Perangkat mobile dalam aplikasi auto capture berdasarkan pergerakan objek berfungsi sebagai perangkat yang digunakan untuk memonitor sebuah ruangan. Perangkat mobile ini dapat mengenali sebuah pergerakan, akan meng-capture setelah pergerakan terdeteksi dan akan mengirim gambar hasil capture ke komputer.

(39)

Jaringan Wireless Fidelity (Wi-Fi) dalam aplikasi ini adalah sebuah jaringan yang menghubungkan antara perangkat mobile dan komputer. 3. Web Server

Web Server dalam aplikasi auto capture berdasarkan pergerakan objek berfungsi sebagai sebuah aplikasi untuk proses komunikasi data antara perangkat mobile dan komputer.

4. Komputer

Komputer dalam aplikasi auto capture berdasarkan pergerakan objek berfungsi sebagai server yang didalamnya terdapat aplikasi web server. Agar komputer ini dapat diakses oleh client maka komputer server juga harus terhubung ke jaringan. Komputer yang berperan sebagai web server memiliki IP address sehingga ketika komputer dan perangkat mobile terhubung ke jaringan maka komputer dapat menampilkan gambar hasil capture.

3.1.5 Analisis Kebutuhan Sistem

Kebutuhan sistem yang diperlukan dan yang digunakan dalam pembuatan sistem ini terdiri dari beberapa bagian, yaitu: kebutuhan fungsional dan kebutuhan non fungsional.

Tabel 3.1 Kebutuhan Fungsional

Nomor Keterangan

SKPL-F-01 Sistem dapat mendeteksi pergerakan pada

preview kamera.

SKPL-F-02 Sistem dapat meng-capture otomatis setelah pergerakan terdeteksi.

SKPL-F-03 Sistem dapat meng-upload otomatis gambar hasil capture ke komputer.

Tabel 3.2 Kebutuhan Non-Fungsional

Nomor Keterangan

SKPL-NF-01 Sistem dibangun dalam bentuk aplikasi mobile.

(40)

SKPL-NF-03 Pada perangkat ponsel harus memiliki kamera belakang minimal 2 megapixel.

3.1.6 Analisis Kebutuhan Non-Fungsional

Analisis kebutuhan non-fungsionalitas merupakan analisis yang yang dibutuhkan untuk menentukan spesifikasi yang diperlukan. Spesifikasi ini juga meliputi elemen atau komponen-komponen apa saja yang dibutuhkan untuk aplikasi yang akan dibangun. Kebutuhan non-fungsionalitas yang dibutuhkan untuk membangun aplikasi ini terdiri dari tiga hal, yaitu : analisis pengguna, analisis kebutuhan perangkat keras dan analisis kebutuhan perangkat lunak. 3.1.6.1 Analisis Pengguna

Pengguna aplikasi ini adalah user atau masyarakat umum yang terbiasa mengoperasikan komputer dan aplikasi mobile serta, terbiasa dengan perangkat mobile dengan display layar sentuh, karakteristik pengguna pada aplikasi ini dapat

dilihat pada Tabel 3.3.

Tabel 3.3 Analisis Pengguna

No Tipe Hak Akses Tingkat Keterampilan

1 Pengguna Aplikasi

mobile

Memulai pengawasan atau monitoring pada suatu ruangan

Mampu mengoperasikan smartphone android.

2 Pengguna Komputer

Melihat Gambar hasil capture

dari perangkat mobile

Mampu mengoperasikan komputer.

3.1.6.2 Analisis Kebutuhan Perangkat keras

Perangkat keras yang dibutuhkan berdasarkan kebutuhan minimum yang harus terpenuhi yaitu perangkat keras handphone yang digunakan untuk menjalankan aplikasi dan perangkat keras komputer yang digunakan untuk membangun dan sebagai output aplikasi.

Tabel 3.4 Perangkat Keras Handphone

(41)

1 Processor 600 Mhz

Tabel 3.5 Perangkat keras Komputer

No Perangkat Keras Spesifikasi

1 Processor Intel Core i3

2 RAM 2 GB

3 Hard Disk 500 GB

4 Monitor 14 inch

3.1.6.3 Analisis Kebutuhan Perangkat Lunak

Analisis perangkat lunak terdiri dari spesifikasi minimum perangakat lunak yang dibutuhkan untuk membangun aplikasi Auto capture berdasarkan pergerakan objek. Spesifikasi minimum yang dimaksud dapat dilihat pada Tabel 3.6.

Tabel 3.6 Analisis Kebutuhan Perangkat Lunak

No Nama Perangkat Spesifikasi

1 Sistem Operasi Windows 7 32 bit

2 JDK (Java Development Kit) JDK 4.2.2

3 IDE Eclipse Juno

4 SDK Android SDK Windows

5 ADT ADT v.10.0.0

6 Sistem Operasi Mobile Android 4.0 ICS

7 Web Server Apache

3.1.7 Analisis Kebutuhan Fungsional

(42)

UML (Unified Modeling Language). Tahap-tahap pemodelan dalam analisis tersebut antara lain identifikasi aktor, Use Case diagram, skenario, sequence diagram, activity diagram, dan class diagram.

3.1.7.1 Definisi Aktor

Definisi aktor dimaksudkan untuk mengetahui siapa saja aktor yang terlibat di dalam sistem aplikasi ini.Deskripsi dari tiap aktor yang terlibat dapat dilihat pada Tabel 3.7.

Tabel 3.7 Definisi Aktor

No Aktor Deskripsi

1 Pengguna Pengguna ini merupakan pengguna aplikasi pada platform android. Dimana dalam menggunakan aplikasi user dapat menjalankan aplikasi dan user dapat melihat hasil capture yang telah disimpan di komputer.

2 Komputer Menampilkan gambar hasil capture.

3.1.7.2 Use Case Diagram

(43)

Gambar 3.28 Use Case Diagram Aplikasi

3.1.7.3 Definisi Use Case

Use case diagram merupakan konstruksi untuk mendeskripsikan hubungan-hubungan yang terjadi antar aktor dengan aktivitas yang terdapat pada sistem. Sasaran pemodelan use case diantaranya adalah mendefinisikan kebutuhan fungsional dan operasional sistem dengan mendefinisikan skenario penggunaan yang disepakati antara pemakai dan pengembang.

Tabel 3.8 Definisi Use Case

No Use Case Deskripsi

UC-01 Mulai Monitoring Merupakan aksi untuk memulai monitoring.

UC-02 Mendeteksi Pergerakan Merupakan proses untuk deteksi gerak dan

capture otomatis setelah pergerakan terdeteksi.

UC-03 Mengunggah Gambar Merupakan proses upload otomatis gambar hasil capture.

UC-04 Menampilkan Informasi Merupakan aksi untuk menampilkan informasi aplikasi.

UC-05 Konfigurasi Merupakan aksi untuk menampilkan

konfigurasi IP address.

UC-06 Menampilkan Bantuan Merupakan aksi untuk menampilkan bantuan menggunakan aplikasi.

(44)

3.1.7.4 Skenario Use Case

Skenario Use Case mendeskripsikan urutan langkah-langkah dalam proses bisnis, baik yang dilakukan aktor terhadap sistem maupun yang dilakukan oleh sistem terhadap aktor.

3.1.7.4.1 Use Case Skenario Mulai Monitoring

Interaksi antara aktor user dengan use case Mendeteksi Pergerakan dijelaskan dalam Tabel 3.9.

Tabel 3.9 Use Case Skenario Mulai Monitoring

Identifikasi

Nomor UC-01

Nama Use Case Mulai Monitoring

Tujuan Memulai monitoring

Aktor Pengguna

Skenario Utama Kondisi Awal PenggunaMenjalankan Aplikasi

Aksi Aktor Reaksi Sistem

1. Menampilkan menu utama aplikasi

2. Menekan tombol mulai

3. Menampilkan preview kamera. Skenario Alternatif

Kondisi Akhir Memulai monitoring

3.1.7.4.2 Use Case Skenario Mendeteksi Pergerakan

Interaksi antara aktor user dengan use case mendeteksi pergerakan dijelaskan dalam Tabel 3.10.

Tabel 3.10 Use Case Skenario Mendeteksi Pergerakan

Identifikasi

Nomor UC-02

Nama Use Case Mendeteksi Pergerakan

Tujuan Mendeteksi pergerakan pada preview kamera

Aktor Pengguna

Skenario Utama

Kondisi Awal Penggunaberada pada tampilan preview kamera.

(45)

1. Ambil Frame sebagai kondisi awal pada preview kamera. 2. Konversi dari YUV ke RGB 3. Konversi dari RGB ke Grayscale

4. Hitung difference antar frame

5. Cek threshold

6. Tandai bahwa pergerakan terdeteksi.

Skenario Alternatif

Jika nilai SAD antar frame <

threshold maka kembali ke ambil frame pada preview kamera.

Skenario Alternatif

Kondisi Akhir Mendeteksi pergerakan pada preview kamera

3.1.7.4.3 Use Case Skenario Mengunggah Gambar

Interaksi antara aktor user dengan use case Mengunggah gambar dijelaskan dalam Tabel 3.11.

Tabel 3.11 Use Case Skenario Mengunggah gambar

Identifikasi

Nomor UC-03

Nama Use Case Mengunggah gambar

Tujuan Gambar telah berada pada folder di komputer.

Aktor Pengguna

Skenario Utama Kondisi Awal Pergerakan terdeteksi

Aksi Aktor Reaksi Sistem

1. Capture Pergerakan pada frame.

2. Upload gambar secara otomatis ke komputer.

Skenario Alternatif

1. Jika handphone dan komputer tidak terhubung pada satu

jaringan maka aplikasi tidak akan meng-upload gambar hasil

capture dan menampilkan pesan salah konfigurasi IP.

(46)

3.1.7.4.4 Use Case Skenario Informasi

Interaksi antara aktor user dengan use case informasi dijelaskan dalam Tabel 3.12.

Tabel 3.12 Use Case Skenario Informasi

Identifikasi

Nomor UC-04

Nama Use Case Menampilkan Informasi

Tujuan Menampilkan Informasi aplikasi

Aktor Pengguna

Skenario Utama

Kondisi Awal Penggunaberada di tampilan menu aplikasi

Aksi Aktor Reaksi Sistem

1. Menekan tombol tentang.

2. Menampilkan halaman informasi aplikasi.

Kondisi Akhir Menampilkan Informasi aplikasi

3.1.7.4.5 Use Case Skenario Konfigurasi

Interaksi antara aktor user dengan use case bantuan dijelaskan dalam tabel Tabel 3.13.

Tabel 3.13 Skenario Konfigurasi

Identifikasi

Nomor UC-05

Nama Use Case Konfigurasi

Tujuan Menampilkan alamat Ip.

Aktor Pengguna

Skenario Utama

Kondisi Awal Penggunaberada di tampilan menu aplikasi

Aksi Aktor Reaksi Sistem

1. Menekan tombol konfigurasi

2. Menampilkan alamat Ip

3. Menampilkan nilai Threshold

(47)

3.1.7.4.6 Use Case Skenario Bantuan

Interaksi antara aktor user dengan use case bantuan dijelaskan dalam Tabel 3.14.

Tabel 3.14 Skenario Bantuan

Identifikasi

Nomor UC-06

Nama Use Case Menampilkan Bantuan

Tujuan Menampilkan Informasi bantuan menggunakan aplikasi

Aktor Pengguna

Skenario Utama

Kondisi Awal Penggunaberada di tampilan menu aplikasi

Aksi Aktor Reaksi Sistem

1. Menekan tombol bantuan.

2. Menampilkan halaman bantuan aplikasi.

Kondisi Akhir Menampilkan bantuan menggunakan aplikasi

3.1.7.4.7 Use Case Skenario Menampilkan Gambar

Interaksi antara aktor Komputer dengan use case menampilkan gambar dijelaskan dalam Tabel 3.15 .

Tabel 3.15 Skenario Menampilkan Gambar

Identifikasi

Nomor UC-07

Nama Use Case Menampilkan Gambar

Tujuan Menampilkan Gambar di folder komputer

Aktor Komputer

Skenario Utama Kondisi Awal Sistem mengupload gambar otomatis

Aksi Aktor Reaksi Sistem

1. Upload Gambar hasil capture

2. Menyimpan gambar hasil capture.

Kondisi Akhir Menampilkan gambar hasil capture di folder komputer.

3.1.7.5 Activity Diagram

Activity diagram menggambarkan berbagai alur aktivitas dalam sistem

(48)

terjadi dan bagaimana mereka berakhir. Penggambaran activity diagram memiliki kemiripan dengan flowchart diagram. Activity diagram memodelkan event-event yang terjadi pada Use Case dan digunakan untuk pemodelan aspek dinamis dari sistem.

3.1.7.5.1 Activity Diagram Mulai Monitoring

Berikut ini adalah diagram yang menunjukan alur aksi pada aktivitas mulai monitoring pada aplikasi yang dapat dilihat pada Gambar 3.29.

Gambar 3.29 Activity Diagram Mulai

3.1.7.5.2 Activity Diagram Mendeteksi Pergerakan

Berikut ini adalah diagram yang menunjukan alur aksi pada aktivitas mendeteksi pergerakan yang dapat dilihat pada Gambar 3.30.

User Sistem

Menjalankan Aplikasi

Menampilkan Menu Utama Aplikasi

Menekan Tombol Mulai Monitoring

Menampilkan Preview Kamera

(49)

Gambar 3.30 Activity Mendeteksi pergerakan

3.1.7.5.3 Activity Diagram Mengunggah Gambar

Berikut ini adalah diagram yang menunjukan alur aksi pada aktivitas mengunggah gambar yang dapat dilihat pada Gambar 3.31.

Sistem

Ambil Frame

Konversi YUV ke RGB

Konversi RGB ke Grayscale

Hitung Difference antar Frame

Cek threshold

(50)

Gambar 3.31 Activity Mengunggah gambar

3.1.7.5.4 Activity Konfigurasi

Berikut ini adalah diagram yang menunjukan alur aksi pada aktivitas konfigurasi yang dapat dilihat pada Gambar 3.32.

user sistem

berada di menu utama aplikasi

Menekan tombol Konfigurasi

Menampilkan alamat IP

(51)

Gambar 3.32 Activity Diagram Konfigurasi

3.1.7.5.5 Activity Informasi

Berikut ini adalah diagram yang menunjukan alur aksi pada aktivitas menampilkan informasi yang dapat dilihat pada Gambar 3.33.

user sistem

berada di menu utama aplikasi

Menekan tombol Konfigurasi

Menampilkan alamat IP

(52)

Gambar 3.33 Activity Diagram Informasi

3.1.7.5.6 Activity Bantuan

Berikut ini adalah diagram yang menunjukan alur aksi pada aktivitas menampilkan bantuan menggunakan aplikasi yang dapat dilihat pada Gambar 3.34.

User Sistem

Berada di tampilan menu aplikasi

Menekan tombol informasi

(53)

Gambar 3.34 Activity Diagram Bantuan

3.1.7.5.7 Activity Menampilkan Gambar

Berikut ini adalah diagram yang menunjukan alur aksi pada aktivitas menampilkan gambar hasil capture di komputer dapat dilihat pada Gambar 3.35.

User Sistem

Berada di tampilan menu aplikasi

menekan tombol bantuan

(54)

Gambar 3.35 Activity Diagram Menampilkan Gambar

3.1.7.6 Class Diagram

Diagram kelas (Class Diagram) merupakan diagram structural yang memodelkan sekumpulan kelas, interface, kolaborasi dan relasinya. Diagram kelas digambarkan dengan kotak yang pada dasarnya terbagi atas tiga bagian yaitu: nama kelas, atribut dan operasi. Diagram kelas digunakan untuk menggambarkan proses static dari aplikasi pengukuran tinggi objek ini. berikut ini adalah class diagram dari aplikasi auto capture berdasarkan pergerakan objek dapat dilihat pada Gambar 3.36.

Komputer Sistem

Upload gambar hasil capture

Menampilkan gambar hasil capture

(55)

Gambar 3.36 Class Diagram

Tabel 3.16 Deskripsi Class Diagram

No Kelas Jenis Kelas Deskripsi

1 CameraStarter Interface Merupakan kelas yang digunakan untuk menampilkan halaman utama.

2 CameraPreviewActivity Interface Merupakan kelas yang digunakan untuk menampilkan preview kamera.

3 ConfigActivity Interface Merupakan kelas yang digunakan untuk

menampilkan konfigurasi. 4 CameraPreview Entity Merupakan kelas yang

digunakan untuk memproses citra dan perhitungan SAD 5 ActionUploadImage Control Merupakan kelas yang

(56)

berisi method untuk upload ke komputer.

6 Util Control Merupakan kelas yang

berisi method utilitas untuk konfigurasi dengan

komputer.

7 Compressor Control Merupakan kelas yang berfungsi untuk me-resize ukuran gambar.

3.1.7.7 Sequence Diagram

Sequence diagram digunakan untuk menggambarkan perilaku pada sebuah

scenario. Diagram ini menunjukkan sejumlah contoh obyek dan message yang diletakkan diantara obyek-obyek ini didalam usecase. Biasa digunakan untuk menggambarkan scenario atau rangkaian langkah-langkah yang dilakukan sebagai respon dari sebuah event untuk menghasilkan output tertentu. Diawali dari sebuah aktivitas tertentu, kemudian berproses mengikuti urutan tertentu yang bisa terlihat melalui message antar objeknya.

3.1.7.7.1 Sequence Diagram Mulai Monitoring

Sequence diagram Mulai merupakan diagram yang menggambarkan

(57)

Gambar 3.37 Sequence Diagram Mulai Monitoring

3.1.7.7.2 Sequence Diagram Mendeteksi Pergerakan

Sequence diagram mendeteksi pergerakan merupakan diagram yang

(58)

Gambar 3.38 Sequence Mendeteksi Pergerakan

3.1.7.7.3 Sequence Diagram Mengunggah gambar

Sequence diagram mengunggah gambar merupakan diagram yang

(59)

Gambar 3.39 Sequence Mengunggah gambar

3.1.7.7.4 Sequence Diagram Menampilkan Informasi

Sequence diagram informasi merupakan diagram yang menggambarkan

(60)

Gambar 3.40 Sequence Diagram Menampilkan Informasi

3.1.7.7.5 Sequence Diagram Menampilkan Bantuan

Sequence diagram informasi merupakan diagram yang menggambarkan

(61)

Gambar 3.41 Sequence Diagram Menampilkan Bantuan

3.1.7.7.6 Sequence Diagram konfigurasi

Sequence diagram konfigurasi merupakan diagram yang menggambarkan

(62)

Gambar 3.42 Sequence Diagram Konfigurasi

3.1.7.7.7 Sequence Diagram Menampilkan gambar

Sequence diagram menampilkan gambar merupakan diagram yang

(63)

Gambar 3.43 Sequence Diagram Menampilkan Gambar

3.2 Perancangan Sistem

Perancangan sistem merupakan suatu proses yang menggambarkan bagaimana suatu sistem dibangun untuk memenuhi kebutuhan pada fase analisis. 3.2.1 Perancangan Struktur Menu

Perancangan struktur menu merupakan gambaran jalur pemakaian aplikasi. Perancangan struktur menu dari aplikasi ini dapat dilihat pada Gambar 3.44.

Menu Utama

Mulai Informasi Bantuan Keluar

Detail Bantuan Aplikasi Detail Informasi Aplikasi

Preview Kamera

Konfigurasi

Menampilkan Konfigurasi

(64)

3.2.2 Perancangan Antarmuka

Tahap perancangan antarmuka sistem bertujuan untuk mencari bentuk yang optimal dari aplikasi yang akan dibangun dengan pertimbangan faktor-faktor permasalahan dan kebutuhan yang ada pada sistem seperti yang telah ditetapkan pada tahap analisis. Dalam tahap ini upaya yang dilakukan yaitu dengan cara mengkombinasikan penggunaan teknologi perangkat keras dan perangkat lunak yang tepat sehingga diperoleh yang optimal dan mudah diimplementasikan. 3.2.2.1 Perancangan antarmuka tampilan awal aplikasi

Perancangan antarmuka tampilan awal merupakan tahapan rancangan antarmuka dari awal aplikasi dijalankan. Perancangan antarmuka tampilan awal aplikasi auto capture berdasarkan pergerakan objek ini terlihat pada Gambar 3.45.

T 01

· Tampilan awal aplikasi

· Pilih Button mulai monitoring untuk masuk ke T02

· Pilih Button konfigurasi untuk masuk ke T03

· Pilih Button Informasi untuk masuk T04

· Pilih Button bantuan untuk masuk T05

· Pilih Button keluar untuk keluar aplikasi Warna : Hitam dan Putih Orientation : Potrait

Informasi

(65)

3.2.2.2 Perancangan antarmuka preview kamera

Perancangan antarmuka preview merupakan tahapan rancangan antarmuka setelah user menekan tombol mulai. Perancangan antarmuka tampilan preview kamera aplikasi auto capture berdasarkan pergerakan objek ini terlihat pada Gambar 3.46.

Gambar 3.46 Tampilan Preview kamera

3.2.2.3 Perancangan antarmuka konfigurasi

(66)

T 03

· Tampilan Konfigurasi.

· Masukan alamat IP pada kolom masukan IP.

· Masukan nilai Threshold pada kolom masukan Threshold.

· Tekan button ubah konfigurasi untuk kembali ke T01.

Header

Masukan IP

Resolusi : 320x480 Font : Times New Roman Warna : Hitam dan Putih Orientation : Potrait

Ubah Konfigurasi Masukan Threshold IP

Threshold

Gambar 3.47 Tampilan Konfigurasi

3.2.2.4 Perancangan antarmuka informasi aplikasi

(67)

T 04

· Tampilan Informasi aplikasi.

· Bantuan aplikasi menampilkan informasi detail aplikasi..

· Tekan button keluar untuk kembali ke T01.

Header

Informasi Aplikasi

Resolusi : 320x480 Font : Times New Roman Warna : Hitam dan Putih Orientation : Potrait

Keluar

Gambar 3.48 Tampilan Informasi Aplikasi

3.2.2.5 Perancangan antarmuka bantuan aplikasi

(68)

T 05

· Tampilan bantuan aplikasi.

· Bantuan aplikasi menampilkan bantuan untuk menggunakan aplikasi..

· Tekan button keluar untuk kembali ke T01.

Header

Bantuan Aplikasi

Resolusi : 320x480 Font : Times New Roman Warna : Hitam dan Putih Orientation : Potrait

Keluar

Gambar 3.49 Tampilan Bantuan Aplikasi

3.2.2.6 Perancangan Antarmuka pesan

(69)

Konfigurasi IP Salah

P01

Gambar 3.50 Antarmuka Pesan Salah Konfigurasi

Konfigurasi Berhasil Diubah

P02

Gambar 3.51 Antarmuka Pesan Konfigurasi Berhasil Diubah

3.2.3 Perancangan Jaringan Semantik

Jaringan semantik adalah diagram yang menggambarkan alur-alur dari menu dan pesan dalam sebuah program. Jaringan semantik dari aplikasi auto capture berdasarkan pergerakan objek yang dibangun yaitu seperti pada Gambar

(70)

T01

T05

T02

T03 T04

P01

P02

(71)

107

Tahap implementasi merupakan tahap penerjemah perancangan berdasarkan hasil analisis kedalam suatu bahasa pemograman tertentu serta penerapan perangkat lunak yang dibangun pada lingkungan yang sesungguhnya. adapun pembahasan yang implementasi terdiri dari perangkat keras pembangun, perangkat lunak pembangun dan implementasi antar muka.

4.1.1 Implementasi Perangkat Keras Pembangun

Perangkat keras pembangun menjelaskan perangkat keras yang digunakan untuk menjalankan aplikasi auto capture berdasarkan pergerakan objek. Adapun perangkat keras yang digunakan adalah sebagai berikut

1. Processor Intel Core i3-350M 2.26 GHz 2. Memory 2 GB

3. Harddisk 500 GB 4. Monitor LCD 14 inch 5. Keyboard dan Mouse

4.1.2 Implementasi Perangkat Lunak Pembangun

Perangkat lunak pembangun menjelaskan perangkat lunak yang digunakan untuk memjalankan aplikasi auto capture berdasarkan pergerakan objek. Adapun perangkat lunak yang digunakan adalah sebagai berikut :

1. Windows 7 Pro 32 – bit sebagai sistem oprasi pembangun 2. Eclipse Juno 3.8.2 sebagai perangkat lunak pembangun 3. Android SDK untuk pengembang aplikasi Android

(72)

4.1.3 Implementasi Antarmuka

Dalam Eclipse versi Juno, implementasi antarmuka dilakukan dengan sebuah layout yang berekstensi XML. Setiap file XML dalam layout dibuat class java dan ditulis dengan berekstensi java. Berikut ini adalah implementasi dari setiap layout yang dibuat.

Tabel 4.1 Implementasi antarmuka

No Halaman Deskripsi File XML

1 Main Menu Halaman yang digunakan

untuk menampilkan menu utama

starter

2 Mulai Monitoring Halaman yang digunakan untuk memulai monitoring dengan menampilkan preview kamera

starter

3 konfigurasi Halaman yang digunakan

untuk meng-update alamat IP dan nilai threshold.

activity_config

4 Informasi Halaman yang berisi

informasi tentang aplikasi.

starter

5 Bantuan Halaman yang berisi

bantuan menggunakan aplikasi

starter

4.1.3.1 Tampilan Antarmuka Main Menu

(73)

Gambar 4.1 Tampilan antarmuka Main menu

4.1.3.2 Tampilan Antarmuka Mulai Monitoring

Antarmuka Mulai merupakan tampilan yang digunakan untuk menampilkan preview kamera yang mendeteksi pergerakan dan meng-capture saat pergerakan terdeteksi kemudian aplikasi akan meng-upload gambar hasil capture ke komputer menggunakan jaringan wi-fi. Tampilan mulai dapat dilihat

(74)

Gambar 4.2 Tampilan antarmuka Mulai

(75)

4.1.3.3 Tampilan Antarmuka Konfigurasi

Antarmuka konfigurasi merupakan tampilan yang digunakan untuk menampilkan setting Konfigurasi Ip address dan nilai threshold. Tampilan konfigurasi dapat dilihat pada Gambar 4.4.

Gambar 4.4 Tampilan antarmuka Konfigurasi

4.1.3.4 Tampilan Antarmuka Informasi

(76)

Gambar 4.5 Tampilan antarmuka Informasi

4.1.3.5 Tampilan Antarmuka Bantuan

(77)

Gambar 4.6 Tampilan Antarmuka Bantuan

4.1.4 Implementasi Class

Implementasi class pada aplikasi ini merupakan implementasi dari

perancangan class diagram yang terbentuk dari use case diagram kedalam bentuk

fisik file-file dengan ekstensi .java yang digunakan dalam pembuatan dan jalannya

proses dalam sistem. Implementasi class yang telah terdefinisi dapat dilihat pada

Tabel 4.2:

Tabel 4.2 Implementasi class

No Class Isi Class Nama File

1 CameraStarter ActionMulai CameraStarter.Java

ActionKonfigurasi

ActionInformasi

ActionBantuan

(78)

ctivity va

3 CameraPreview CameraPreview CameraPreview.java

YUVtoRGB

RGBtoGray

SAD

Capture

Upload

4 Upload ActionUpload CameraPreview.java

5 ConfigActivity Konfigurasi IP ConfigActivity.java

6 Util Utilitas konfigurasi Util.java

7 Compress Resize Util.java

4.2 Pengujian Perangkat Lunak

Pengujian perangkat lunak merupakan tahapan untuk menemukan kesalahan-kesalahan dan kekurangan-kekurangan pada perangkat lunak yang dibangun sehingga bisa diketahui apakah perangkat lunak tersebut telah memenuhi kreteria sesuai dengan tujuan atau tidak. Adapun metode pengujian yang digunakan pada perangkat lunak ini adalah metode pengujian black box. Pengujian black box berfokus pada persyaratan fungsional perangkat lunak. Metode pengujian black box ini terdiri dari dua tahapan pengujian, yaitu tahapan pengujian alpha dan tahapan pengujian beta.

4.2.1 Pengujian Alpha

(79)

4.2.1.1 Skenario Pengujian

Skenario pengujian merupakan skenario yang akan memaparkan urutan apa saja yang akan dilakukan pengujian pada Aplikasi auto capture berdasarkan pergerakan objek dengan metode Sum of absolute differences. Adapun skenario pengujian yang akan dilakukan dapat dilihat pada Tabel 4.3.

Tabel 4.3 Skenario Pengujian

Menu Yang Diuji

Point Pengujian Jenis Pengujian

Mulai Monitoring

Memulai mendeteksi pergerakan,

capture secara otomatis dan upload

gambar hasil capture secara otomatis.

Black Box

Konfigurasi

Menampilkan Ip address untuk komputer yang akan dijadikan output

berupa gambar.

Black Box

Mengubah Ip address untuk komputer yang akan dijadikan output berupa gambar.

Black Box

Menampilkan nilai threshold untuk

batas nilai SAD optimum. Black Box

Mengubah nilai threshold untuk batas

nilai SAD optimum. Black Box

4.2.1.2 Kasus dan Hasil Pengujian

Kasus dan hasil pengujian berisi pemaparan dari rencana pengujian yang telah

disusun pada skenario pengujian. Pengujian ini dilakukan secara Black Box. Berikut

ini pemaparan dari setiap point pengujian yang terdapat pada:

4.2.1.2.1 Pengujian Mulai Monitoring

(80)

Tabel 4.4 Pengujian benar mulai monitoring

Kasus dan Hasil Uji

Prosedur pengujian

Masukan Yang Diharapkan

Pengamatan Kesimpulan

Menekan

Tabel 4.5 pengujian salah mulai monitoring

Kasus dan Hasil Uji

Prosedur pengujian

Masukan Yang Diharapkan

Pengamatan Kesimpulan

Menekan

4.2.1.2.2 Pengujian Konfigurasi

Pada Tabel 4.6 dapat dilihat butir pengujian pada proses konfigurasi. Data nilai threshold default adalah nilai 3 x 100 adalah sebagai berikut:

Tabel 4.6 Pengujian Konfigurasi

Kasus dan Hasil Uji Prosedur

Pengujian

Masukan Yang Diharapkan Pengamatan Kesimpulan

Konfigurasi

Gambar

Gambar hasil capture kamera:
Gambar 3.24 Proses Upload ke komputer menggunakan wireless Fidelity (wi-fi)
Gambar 3.26 Analisis Komunikasi Data
Gambar 3.27 Arsitektur sistem
+7

Referensi

Dokumen terkait

Di dalam sertifikat halal tertulis fatwa halal MUI yang menyatakan kehalalan suatu produk sesuai dengan syariat Islam dan menjadi syarat pencantuman label halal dalam

Kajian berkaitan budaya dalam puisi-puisi Muhammad Haji Salleh oleh pengkaji diharap dapat memberi inspirasi kepada mahasiswa dan mahasiswi untuk turut serta

Dengan demikian menjadikan suatu problem yang menarik bagi peneliti untuk menambahkan fly ash dan serat bendrat pada campuran bahan pembuatan beton mutu tinggi, sehingga

1) Güzel kadınlar ne kadar verirsen daha çoğunu istiyor. Çünkü bunları vermeye aday olan adamlar, zaten her daim kapıda hazır bekliyor. Hızlı verilen kararların çoğunun

Dengan menggunakan teknik semi-diskritisasi galerkin dari Metode Elemen Hingga dalam domain spasial, persamaan gelombang 2D tersebut dapat dituliskan sebagai

Sedangkan pada smoothie apel, tidak terjadi proses penyarian (pembuatan perasan) dan tidak semua bagian buah dapat dihaluskan seperti bila menggunakan juicer karena pisau yang

Jenis penelitian kausal yang terdapat dalam penelitian ini digunakan dengan tujuan untuk mengetahui dan menganalisis, Pengaruh Workaholism, Work Engagementdan Lingkungan

Berdasarkan hasil pengolahan dan analisis data, maka kesimpulan dari hasil penelitian ini adalah terdapat hubungan yang positif dan signifikan antara asesmen