PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

92
PENERAPAN MOTION DETECTION UNTUK PERINGATAN DINI TERHADAP SISTEM KEAMANAN RUMAH TINGGAL BERBASIS MULTIMEDIA MESSAGING SERVICE (MMS) Oleh : Lia Rainingsih NIM. : 105091002913 PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN TEKNOLOGI UNIVERSITAS ISLAM NEGERI SYARIEF HIDAYATULLAH JAKARTA 2010 LEMBAR PENGESAHAN

Transcript of PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

Page 1: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

PENERAPAN MOTION DETECTION UNTUK PERINGATAN DINI TERHADAP

SISTEM KEAMANAN RUMAH TINGGAL BERBASIS MULTIMEDIA MESSAGING

SERVICE (MMS)

Oleh :

Lia Rainingsih

NIM. : 105091002913

PROGRAM STUDI TEKNIK INFORMATIKA

FAKUTAS SAINS DAN TEKNOLOGI

UNIVERSITAS ISLAM NEGERI SYARIEF HIDAYATULLAH

JAKARTA

2010

LEMBAR PENGESAHAN

Page 2: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

Judul Penelitian : PENERAPAN MOTION DETECTION UNTUK PERINGATAN

DINI TERHADAP SISTEM KEAMANAN RUMAH

TINGGAL

Jenis Penelitian : Individu

Nama Peneliti : Lia Rainingsih

NIM. : 105091002913

Waktu Penelitian : 3 Bulan (Mei – Juli 2009)

Menge

tahui,

Sekretaris Prodi Teknik Informatika

Viva Arifin, MMSI

Page 3: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

ABSTRAK

Lia Rainingsih, Penerapan Motion Detection Untuk Peringatan Dini Terhadap Sistem Keamanan Rumah Tinggal Berbasis Multimedia Messaging Service

(MMS). Di bawah bimbingan Viva Arifin,MMSI dan Arini,M.T.

Pada saat ini keamanan rumah tinggal merupakan salah satu hal yang penting

dalam sistem keamanan. Agar keamanan rumah tinggal dapat tetap bisa dipantau

oleh pemilik rumah, dibutuhkan sistem keamanan yang dapat memberikan

peringatan saat terjadi suatu hal yang tidak diinginkan. Pada umumnya untuk

memantau rumah tinggal menggunakan kamera pengawas seperti CCTV (Closed-

Circuit Television), namun dalam penelitian ini penulis mengganti CCTV dengan

web camera. Sistem yang akan dibangun menggunakan motion detection yang

dapat mengidentifikasi adanya pergerakan pada ruangan yang sedang dipantau.

Berdasarkan hasil deteksi tersebut, kemudian informasi akan direkam dan gambar

hasil tangkapan akan diteruskan kepada pengguna sebagai peringatan dini

menggunakan teknologi MMS (Multimedia Messaging Service). Dalam

pengembangan aplikasi ini, penulis menggunakan metodologi RAD (Rapid Application Development) sebagai alur dari pengembangan sistem, yang terdiri

dari analysis and quick design, construction, testing, dan implementation. Bahasa pemrograman yang digunakan dalam implementasi sistem ini adalah bahasa

pemrograman C#, dan teknologi yang mendukung yaitu Aforge framework dan

MMS Gateway. Pengujian yang dilakukan menggunakan Nunit (Unit Testing) dan

Black Box. Dari penelitian ini, dapat disimpulkan bahwa Penerapan motion

detection mampu menginformasikan kepada pengguna pergerakan yang terjadi

pada objek yang diamati dan memiliki fungsi yang sama dengan kamera

pengawas, yaitu memantau rumah tinggal serta dilengkapi dengan peringatan dini berupa MMS dan biaya yang lebih terjangkau.

Kata Kunci : Motion Detection, Multimedia Messaging Service (MMS)

vii

Page 4: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

KATA PENGANTAR

Segala Puji dan Syukur penulis panjatkan kepada Allah SWT atas segala

karunia-Nya karena penulis dapat menyelesaikan penulisan Skripsi ini dengan

Judul Penerapan Motion Detection Untuk Peringatan Dini Terhadap Sistem

Keamanan Rumah Tinggal Berbasis Multimedia Messaging Service (MMS)

dengan baik. Shalawat serta salam penulis haturkan kepada Nabi Muhammad

SAW, para sahabat dan keluarga beliau.

Setelah seluruh penulisan Skripsi ini terlaksana, penulis ingin

mengucapkan banyak terimakasih kepada seluruh pihak yang telah membantu

baik itu berupa motivasi, bimbingan, moril maupun materil, yang ditujukan

kepada:

1. Bapak DR. Syopiansyah Jaya Putra, M.SIS, selaku Dekan Fakultas Sains

dan Teknologi, UIN Syarif Hidayatullah Jakarta.

2. Bapak Yusuf Durrachman, M. Sc, MIT, selaku Ketua Program Studi

Teknik Informatika, Fakultas Sains dan Teknologi, UIN Syarif

Hidayatullah Jakarta

3. Ibu Viva Arifin, M.SSI, selaku dosen pembimbing I yang selalu

memberikan bimbingan, semangat dan selalu meluangkan waktunya

walaupun sangat sibuk.

4. Ibu Arini, M.T, selaku dosen pembimbing II yang telah memberikan

pengarahan dan membantu menyelesaikan penulisan skripsi ini.

viii

Page 5: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

5. Ibunda (Rohani) dan Ayahanda (Basry Elley) yang selalu ada dalam hati

penulis.

6. Kakak, adik, keponakan, yang telah memberi dukungan baik moril

maupun materil. Tak lupa untuk ncing dan uwak yang selalu menemani

disaat penulis kurang sehat.

7. Deni Zakya yang selalu memberikan solusi dan motivasi dalam

menyelesaikan penulisan Skripsi ini(semoga Alloh segera menyatukan hati

kita, Amin).

8. Teman-teman kelas TI-d angkatan 2005, Ale, Khairin, Dianita, Rindy,

Olia, Tasya, Wildan, Hari, Adit, Maulana, Novan, Didi, Ipul, Muklis,

Shodik, Zanba, Ery, Fahmi, Bayu, Randy, kapan qta bisa kumpul-kumpul

lagi, kalau bisa kumpulnya sambil naik gunung.

9. Elin, Ningsih, K’Yeni, Daus, terimakasih untuk informasi dan bantuannya

saat menghadapi seminar(dadakan).

10. Dan semua pihak yang telah membantu pelaksanaan dan penyusunan

Skripsi yang tidak dapat disebutkan satu persatu.

Penulis sadar bahwa penyusunan skripsi ini masih jauh dari sempurna,

oleh karena itu penyusun mengharapkan kritik dan saran yang bersifat

membangun agar penyusunan skripsi ini menjadi lebih baik lagi.

ix

Page 6: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

Akhir kata, semoga skripsi ini bermanfaat khususnya kepada penulis

sendiri dan bagi yang membacanya.

Jakarta, 13 Januari 2010

Lia Rainingsih

105091002913

x

Page 7: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

DAFTAR ISI

Halaman Judul .............................................................................................. i

Halaman Sampul ........................................................................................... ii

Lembar Pengesahan ...................................................................................... iii

Lembar Persetujuan ..................................................................................... iv

Halaman Pernyataan .................................................................................... v

Halaman Persembahan ................................................................................. vi

Abstrak .......................................................................................................... vii

Kata Pengantar ............................................................................................. viii

Daftar Isi ....................................................................................................... xi

Daftar Gambar .............................................................................................. xv

Daftar Tabel .................................................................................................. xvi

BAB 1 PENDAHULUAN

1.1 Latar Belakang .................................................................................... 1

1.2 Rumusan Masalah ............................................................................... 3

1.3 Batasan Masalah .................................................................................. 3

1.4 Tujuan dan Manfaat Pennelitian .......................................................... 3

1.5 Metodologi Penelitian ......................................................................... 5

1.5.1 Metodologi Pegumpulan Data ..................................................... 5

1.5.2 Metode Pengembangan Sistem ................................................... 5

1.7 Sistematika Penulisan .......................................................................... 6

xi

Page 8: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

BAB 2 LANDASAN TEORI

2.1 Motion Detection ................................................................................. 8

2.1.1 Motion Detection ......................................................................... 8

2.1.2 Penerapan Motion Detection ...................................................... 12

2.1.3 Image Processing ....................................................................... 12

2.2 MMS (Multimedia Messaging Service) ................................................ 13

2.2.1 MMS Gateway ........................................................................... 15

2.3 Kamera Keamanan .............................................................................. 17

2.4 Framework .NET ................................................................................ 21

2.4.1 Pengertian Microsoft .NET Framework ........................................ 21

2.4.2 Arsitektur Framework .NET ....................................................... 23

2.4.3 Keuntungan Framework .NET .................................................... 25

2.5 Aforge Framework ............................................................................... 27

2.6 Sekilas Tentang Visual C# ................................................................... 28

2.6.1 Pengertian C# ............................................................................. 28

2.6.2 Alasan Menggunakan Bahasa C# ................................................ 29

2.6.3 Nunit .......................................................................................... 30

2.6.4 Mengenal Integrated Development Environmen

Visual Sudio 2008 ...................................................................... 31

2.7 Pengembangan Sistem.......................................................................... 32

2.7.1 Model Pengembangan Sistem yang Dipakai ................................ 32

BAB 3 METODOLOGI PENELITIAN

3.1 Bahan dan Alat .................................................................................... 35

xii

Page 9: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

3.1.1 Perangkat Keras .......................................................................... 35

3.1.2 Perangkat Lunak ......................................................................... 36

3.2 Metode Pengumpulan Data .................................................................. 37

3.1.1 Observasi .................................................................................... 37

3.1.2 Studi Pustaka .............................................................................. 37

3.3 Metode Perancangan Sistem ................................................................ 38

3.4 Siklus Penerapan metode RAD ............................................................ 40

BAB 4 ANALISIS DAN PERANCANGAN SISTEM

4.1 Bahan dan Alat .................................................................................... 42

4.1.1 Perangkat Keras .......................................................................... 42

4.1.2 Perangkat Lunak ......................................................................... 43

4.2 Analisis dan Perancangan .................................................................... 44

4.2.1 Analisis ...................................................................................... 44

1. Analisis Masalah ..................................................................... 44

a. Analisis Struktur Motion Detection .................................... 44

b. Analisis Struktur MMS Gateway ......................................... 48

2. Analisis Kebutuhan Perangkat Lunak ..................................... 49

a. Deskripsi Umum Sistem ..................................................... 49

b. Analisis Spesifikasi dan Kebutuhan Perangkat Lunak ......... 50

3. Analisis Kebutuhan Perangkat Keras ...................................... 51

a. Analisis Spesifikasi dan Kebutuhan Perangkat Keras .......... 51

4.2.2 Perancangan Cepat ........................................................................... 52

xiii

Page 10: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

1. Perancangan Kelas ........................................................................ 52

a. Diagram Perancangan Kelas .................................................... 52

b. Deskripsi Diagram Perancangan Kelas .................................... 53

c. Operasi dan Atribut ................................................................. 54

2. Perancangan Antar Muka ............................................................. 56

4.3 Construction ........................................................................................ 61

4.3.1 Batasan Implementasi ................................................................. 61

4.3.2 Implementasi Kelas .................................................................... 62

1. Deskripsi Kelas ........................................................................ 62

2. Operasi dan Atribut .................................................................. 63

4.3.3 Implementasi Antar Muka .......................................................... 65

4.4 Pengujian ............................................................................................ 66

4.4.1 Pengujian Perangkat Lunak ......................................................... 66

1. Pengujian Level Unit Menggunakan Alat Bantu NUnit ............. 66

2. Pengujian Level Sistem Menggunakan Pendekatan Black Box . 68

4.4.2 Analisis Hasil Pengujian ............................................................. 72

4.5 Implementasi ....................................................................................... 73

BAB 5 PENUTUP

5.1 Kesimpulan .......................................................................................... 74

5.2 Saran .................................................................................................... 75

Daftar Pustaka .............................................................................................. 76

Lampiran ....................................................................................................... 77

xiv

Page 11: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

DAFTAR GAMBAR

Gambar 2.1 Penerapan Kanade-Lucas-Tomasi Point Tracking Algorithm ........... 10

Gambar 2.2 Penerapan Motion Detection .......................................................... 12

Gambar 2.3 Arsitektur MMS .............................................................................. 14

Gambar 2.4 Sistem CCTV Sederhana ................................................................ 18

Gambar 2.5 Sistem CCTV dengan Recorder ...................................................... 18

Gambar 2.6 Sistem CCTV dengan Digital Video Recording(DVR)..................... 19

Gambar 2.7 Sistem CCTV dengan Menggunakan Komputer .............................. 20

Gambar 2.8 Arsitektur framework .NET ............................................................. 23

Gambar 2.9 Splash Screen Visual Studio 2008.................................................... 31

Gambar 3.1 Ilustrasi Metodologi Penelitian ....................................................... 41

Gambar 4.1 Flowchart Motion Detection ........................................................... 47

Gambar 4.2 Arsitektur Global Sistem.................................................................. 50

Gambar 4.3 Diagram Perancangan Kelas ............................................................ 53

Gambar 4.4 Hasil Unit Testing Method OpenVideoSource pada

Kelas FormUtama ............................................................................................... 67

Gambar 4.5 Hasil Unit Testing Method BuatAVI pada Kelas FormUtama .......... 67

Gambar 4.6 Hasil Unit Testing Method MotionDetector pada Kelas

MotionDetector ................................................................................................ 68

Gambar 4.7 Hasil Unit Testing Method BuatAVI pada Kelas FormUtama .......... 68

Gambar 4.8 Hasil Unit Testing Method AmbilDataByTAnggal pada Kelas

FormUtama.......................................................................................................... 68

Gambar 4.9 Hasil Unit Testing Method SetModemTes pada Kelas FormUtama .. 68

xv

DAFTAR TABEL

Page 12: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

Tabel 4.1 Daftar Operasi dari Kelas FormUtama ............................................... 55

Tabel 4.2 Daftar Atribut dari Kelas FormUtama ................................................ 56

Tabel 4.3 Daftar Operasi dari Kelas MotionDetector ......................................... 57

Tabel 4.4 Daftar Atribut dari Kelas MotionDetector .......................................... 57

Tabel 4.5 Daftar Atribut dari Kelas Rekaman Info ............................................ 58

Tabel 4.6 Daftar Implementasi Kelas ................................................................. 64

Tabel 4.7 Daftar Operasi dari Kelas FormUtama ............................................... 65

Tabel 4.8 Daftar Atribut dari Kelas FormUtama ................................................ 66

Tabel 4.9 Daftar Operasi dari Kelas MotionDetector ......................................... 67

Tabel 4.10 Daftar Atribut dari Kelas MotionDetector ........................................ 67

Tabel 4.11 Daftar Atribut dari Kelas Rekaman Info .......................................... 67

Tabel 4.12 Daftar Operator ............................................................................... 68

Tabel 4.13 Pengujian Perangkat Lunak ............................................................. 71

Tabel 4.14 Pengujian Motion Detection ............................................................ 73

Tabel 5.1 Perbandingan Biaya CCTV dan Aplikasi ............................................ 77

xvi

1

Page 13: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

BAB I

PENDAHULUAN

1.1 Latar Belakang

Pada saat ini keamanan adalah salah satu hal yang penting, khususnya

menjaga keamanan rumah ataupun perusahaan. Agar keamanan rumah tinggal

dapat tetap bisa dipantau oleh pemilik rumah, dibutuhkan sistem keamanan yang

dapat memberikan peringatan saat terjadi suatu hal yang tidak diinginkan.

Aksi pencurian di rumah kosong yang sedang ditinggal penghuninya

bepergian sering sekali terjadi. Pihak yang berwajib pun sulit untuk

mengidentifikasi kapan terjadinya dan siapa pencurinya dikarenakan tidak adanya

sistem keamanan yang mendukung. Oleh karena itu, menurut Kapolda Irjen

Adang Firman pada situs Polda Metro Jakarta Raya “Penggunaan teknologi

Closed-Circuit Television (CCTV) adalah tepat sesuai kondisi masyarakat yang

heterogen” [19].

CCTV yang ada pada saat ini belum dilengkapi dengan pendeteksi gerakan

dan peringatan dini, sehingga pengguna mengetahui apa yang terjadi pada

ruangan yang sedang dimonitoring pada saat kejadian telah terjadi. Biaya yang

dikeluarkan untuk sebuah CCTV relatif lebih mahal(dapat dibaca pada sub bab

5.1).

Pada penelitian sebelumnya [4] motion detection yang dilakukan belum

ada penanda terjadinya pergerakan pada objek yang sedang diamati, sehingga

pengguna tidak mengetahui objek yang bergerak.

Page 14: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

2

Berdasarkan latarbelakang diatas, penulis menggunakan motion detection

untuk memantau keadaan rumah tinggal saat ditinggalkan pemilik rumah yang

dilengkapi dengan penanda adanya gerakan pada objek yang sedang diamati.

Untuk mendukung motion detection, penulis menggunakan teknologi MMS

sebagai peringatan dini, agar penilik rumah dapat mengetahui dengan cepat

pergerakan yang terjadi pada ruangan yang sedang dimonitoring lewat gambar

MMS.

Kamera pengawas dapat diaktifkan saat penghuni rumah didalam maupun

diluar rumah. Kamera pengawas akan lebih bermanfaat saat rumah ditinggalkan

oleh penghuninya ke luar kota ataupun saat tidur. Kamera pengawas ini akan

ditempatkan diluar dan dalam rumah, disesuaikan dengan kebutuhan rumah itu

sendiri.

Kamera pengawas merupakan suatu aplikasi yang digunakan untuk

memantau keadaan atau kondisi suatu tempat yang nantinya dapat digunakan

sebagai pengontrol apabila ruangan tersebut ditinggalkan. Kamera pengawas yang

biasa digunakan adalah CCTV, namun pada penelitian ini CCTV akan digantikan

dengan web camera. Sistem yang dibangun dapat mengidentifikasi adanya

pergerakan pada ruangan yang dimonitoring oleh web camera menggunakan

motion detection. Berdasarkan hasil deteksi tersebut, informasi yang telah didapat

(berupa gambar yang telah di-capture) diteruskan kepada pengguna sebagai

peringatan menggunakan teknologi MMS (Multimedia Messaging Service).

Judul yang akan penulis angkat adalah“Penerapan Motion Detection untuk

Page 15: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

3

Peringatan Dini Terhadap Sistem Keamanan Rumah Tinggal Berbasis Multimedia

Messaging Service (MMS)”.

Diharapkan penelitian ini akan membantu masyarakat menengah kebawah

untuk dapat menggunakan sistem keamanan yang dapat memberikan peringatan

dini apabila ada suatu pergerakan yang terjadi terhadap objek yang diamati.

1.2 Rumusan Masalah

Masalah yang dapat dirumuskan dalam tugas akhir ini adalah :

Bagaimana motion detection mampu menginformasikan pergerakan yang

terjadi terhadap objek yang diamati untuk sistem keamanan rumah tinggal.

1.3 Batasan Masalah

Agar pembahasan mengenai topik ini tidak terlalu meluas maka diperlukan

batasan masalah. Adapun batasan masalah untuk skripsi ini antara lain:

1. Penggunaan web camera pada ruangan yang akan diamati jumlah dan posisi

web camera disesuaikan dengan keadaan rumah tinggal, misalnya didepan

pintu rumah, ruang tamu, dan lain-lain sesuai dengan kebutuhan.

2. Penyimpanan video dalam bentuk .avi

3. Telepon selular yang mampu menerima MMS yaitu dengan spesifikasi dapat

menerima MMS.

1.4 Tujuan dan Manfaat Penelitian

1. Tujuan Penelitian

Untuk mempermudah pengawasan keamanan rumah tinggal, sehingga

tidak memerlukan banyak tenaga keamanan serta pemilik rumah dapat cepat

Page 16: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

4

mengetahui kondisi rumah melalui MMS jika terjadi sesuatu hal yang tidak

diinginkan.

2. Manfaat Penelitian

Manfaat yang di dapatkan dalam melakukan kerja praktek ini adalah :

a) Bagi Penulis :

1) Mendapatkan pemahaman mengenai konsep motion detection.

2) Mendapatkan pemahaman mengenai konsep MMS gateway

melalui telepon selular.

3) Mendapatkan pemahaman mengenai metodologi penelitian,

khususnya Rapid Application Development (RAD)

4) Mendapatkan pemahaman mengenai pengujian, khususnya

pengujian pada level unit (NUnit) dan pengujian pada level sistem

(black box).

5) Mendapatkan pemahaman tentang bahasa pemrograman C#.

b) Bagi Pengguna :

1) Pengguna dapat memantau rumah saat ditinggal.

2) Pengguna dapat langsung mengetahui kondisi rumah dengan cepat,

apabila ada pergerakan yang terjadi pada objek yang diamati

berbasis MMS.

3) Aplikasi mampu menggantikan fungsi kamera keamanan (CCTV)

dengan biaya yang terjangkau.

c) Bagi Universitas :

Page 17: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

5

1) Mengetahui kemampuan mahasiswa dalam menguasai materi ilmu

yang telah diperoleh dibangku kuliah.

2) Mengetahui kemampuan mahasiswa dalam menerapkan ilmunya

dan sebagai bahan evaluasi.

3) Memberikan gambaran tentang kesiapan mahasiswa dalam

menghadapi dunia kerja dari hasil yang diperoleh selama kuliah.

1.5 Metodologi Penelitian

1. Pengumpulan Data

Berikut beberapa proses yang dilalui penulis dalam pengumpulan

data guna membantu dalam penulisan ini, yaitu:

a. Metode Observasi

Pengumpulan data dan informasi dengan cara meninjau dan

melakukan pengamatan secara langsung terhadap suatu kegiatan yang

sedang dilakukan, pengenalan data yang ada sehingga dapat diadakan

evaluasi dari sudut tertentu yang mendukung kebenaran.

b. Metode Studi Pustaka

Mengumpulkan data dan informasi dengan cara membaca dan

mempelajari buku-buku referensi serta situs-situs internet yang berkenaan

dengan topik yang dapat dijadikan acuan pembahasan dalam penelitian ini.

2. Metode Pengembangan Sistem

Metode pengembangan sistem yang penulis gunakan adalah

metode SDLC (System Development Life Cycle) model linier sequencial

Page 18: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

6

atau sering disebut Rapid Application Development (RAD). Tahapannya

adalah sebagai berikut :

1) Analisis dan Perancangan Cepat

a) Analisis penyelesaian masalah

1. Analisis masalah

2. Analisis kebutuhan perangkat lunak

3. Analisis Kebutuhan Perangkat Keras

b) Perancangan cepat

1. Perancangan kelas

2. Perancangan antar muka

2) Construction

1. Batasan implementasi

2. Implementasi kelas

3. Implementasi antar muka

3) Pengujian

1. NUnit

2. Black box

4) Impelementasi

1.6 Sistematika Penulisan

Penelitian ini terdiri dari lima bab, dengan penjelasan tiap-tiap bab sebagai

berikut:

BAB I : PENDAHULUAN

Page 19: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

7

Pada bab ini berisi tentang Latar Belakang, Rumusan Masalah, Batasan

Masalah, Tujuan dan Manfaat Penelitian, Metodologi Penelitian serta

Sistematika Penulisan Penelitian.

BAB II: LANDASAN TEORI

Bab ini berisi teori-teori yang digunakan dalam pembuatan program

Penerapan Motion Detection Untuk Peringatan Dini Terhadap Sistem

Keamanan Rumah Tinggal Berbasis MMS ini.

BAB III: METODOLOGI PENELITIAN

Bab ini menguraikan secara rinci metode penelitian yang digunakan dalam

menganalisis, merancang, mengimplementasikan, dan menguji sistem.

BAB IV: ANALISIS DAN PEMBAHASAN

Pada bab ini, penulis akan membahas mengenai program yang akan penulis

buat, yaitu mengenai analisis sistem, perancangan aplikasi, pengkodean, dan

pengujian..

BAB V: PENUTUP

Bab ini merupakan penutup yang berisi kesimpulan yang berkenaan dengan

hasil pemecahan masalah yang diperoleh dari penyusunan tugas akhir ini

serta beberapa saran untuk pengembangan lebih lanjut.

Page 20: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

BAB II

LANDASAN TEORI

2.1 Motion Detection

Motion detection merupakan aksi pergerakan fisik dalam ruangan yang telah

ditentukan. Pergerakan dapat dideteksi dengan perubahan warna dari objek yang sedang

dipantau. Pergerakan ini dapat digunakan oleh alat yang berinteraksi dengan ruangan

atau dengan alat elektronik lainnya. [5]. Dalam penelitian ini penulis menggunakan web

camera.

Pada saat terjadi pergerakan, program akan memberikan alarm atau peringatan ke

pengguna berupa gambar yang telah ditangkap oleh webcamera yang dihubungkan

dengan komputer yang menyimpan dan mengelola gambar yang telah ditangkap agar

bisa dilihat pada lain waktu atau dilihat pada komputer lain dalam satu jaringan.

2.1.1 Motion Detection

Pendekatan yang dilakukan oleh C. Stauffer and W. E. L. Grimson

adalah memisahkan gambar antara area background dengan area foreground

(area gerak untuk melacak adanya pergerakan). Asumsinya adalah area

background adalah tetap. Asumsi ini memungkinkan untuk mencapai

segmentasi citra akurat. Dengan asumsi ini, dapat dilakukan menghitung

objek dari waktu ke waktu. Untuk setiap frame video, kita dapat mengurangi

gambar background dari frame. Jumlah pixel dengan hasil mendekati nol

diasumsikan sebagai background dan jumlah pixel yang lebih besar adalah

Page 21: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

10

foreground (objek). [2]

Pertimbangan nilai yang berubah terhadap waktu dari sebuah pixel

pada posisi (x, y) dari urutan sebuah video grayscale. nilai ini sebagai

Vx,y(t). Hal ini dapat diperlakukan sebagai proses acak variabel Xt,

Xt = Vx,y(t)

Sekarang, misalkan kita dapat model probabilitas mengamati nilai

pixel sebagai campuran distribusi K Gaussian. Probabilitas ini adalah,

Dimana ǔi,t adalah perkiraan berat dari ith Gaussian, dan Ș adalah evaluasi dari standar

Gausian denga mean ȝi,t dan covariance matrix � i,t :

Karena latarbelakang diasumsikan statis, nilai pixel yang

merupakan bagian dari background dapat diwakili oleh satu atau lebih

Gaussian dengan variance kecil karena noise gambar. Lebih dari satu

Gaussian adalah kemungkinan untuk bimodal scenes seperti pohon-pohon

yang bergoyang dalam angina atau cahay lampu. Lebih jauh lagi, disebagian

scenes, background akan terlihat lebih sering daripada latar depan pada

setiap pixel, sehingga Gaussian dengan berat ǔ seperti background.

Berikut adalah pendekatan pengurangan untuk background :

a) Untuk setiap pixel dalam frame video:

Page 22: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

11

1) Pertimbangan nilai N terakhir yang paling cocok dengan pixel.

2) Temukan K-Gaussian dan wieght yang tepat untuk sample nilai N

menggunakan seperti K-Means atau Expectation Maximization

(EM).

3) Pilih Gaussian dengan weight ǔ terbesar dan simpan sebagai nilai

background gambar untuk pixel.

b) Pisahkan gambar background dari frame.

c) Pada hasil perbedaan gambar, beberapa nilai yang lebih besar

dibandingkan tiga standar deviasi dari mean adalah considered nilai

foreground, dan nilai lain adalah considered background.

Gambar 2.1 Contoh Penerapan Kanade-Lucas-Tomasi Point Tracking

Algorithm[6]

Fitur yang dilacak akan ditampilkan sebagai titik putih, dengan

perpindahan inter-frame yang ditampilkan sebagai garis putih. Panjang garis

berlebihan untuk menunjukkan gerakan. Frame ini tertangkap dari suatu urutan

video yang berjalan pada 30 frame per second.

Penerapan dari pendekatan motion detection adalah membandingkan

frame saat ini dengan frame sebelumnya. Pendekatan ini dilakukan pada

Page 23: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

12

kompresi video saat dibutuhkan untuk batasan perubahan dan menuliskannya

hanya pada saat perubahan. Untuk gambar saat ini disebut current frame

(currentFrame), dan untuk frame previous (backgroundFrame) [5].

// move background towards current frame

moveTowardsFilter.OverlayImage = tmpImage;

moveTowardsFilter.ApplyInPlace( backgroundFrame );

// set backgroud frame as an overlay for difference

filter

differenceFilter.OverlayImage = backgroundFrame;

Untuk dapat melihat pergerakan yang terjadi, kita akan membuat

sebuah kotak merah yang akan mengelilingi objek yang bergerak tersebut.

Kita akan menggunakan BlobCounter untuk memberikan penomoran objek

berdasarkan posisi dan dimensi pada binary image.

BlobCounter blobCounter = new BlobCounter( ); ... // get object rectangles

blobCounter.ProcessImage( thresholdedImage );

Rectangle[] rects = BlobCounter.GetObjectRectangles( ); // create graphics object from initial image

Graphics g = Graphics.FromImage( image ); // draw each rectangle

using ( Pen pen = new Pen( Color.Red, 1 ) ) {

foreach ( Rectangle rc in rects ) {

g.DrawRectangle( pen, rc );

if ( ( rc.Width > 15 ) && ( rc.Height > 15 ) ) { // here we can higligh large objects with

something else

}

} }

g.Dispose( );

Page 24: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

13

2.1.2 Penerapan Motion Detection

Berikut contoh hasil motion detection :

Gambar 2.2 Penerapan Motion Detection [5]

Pada gambar, pergerakan ditandai dengan warna merah. Warna merah

ini mengunci objek yang sedang bergerak dan adanya penomoran objek

yang bergerak.

2.1.3 Image Processing

Digital image processing tersusun dari elemen-elemen yang terbatas,

setiap elemen memiliki sebuah lokasi khusus dan nilai. Elemen-elemen ini

ditandai sebagai picture elements, image elements, pels, dan pixels. Dalam

penelitian ini, elemen yang digunakan dalam motion detection adalah

elemen pixel. Pixel ini merupakan cabang lebih luas, hal ini ditunjukkan

dengan elemen-elemen digital image.[3]. Image tidak seperti manusia yang

memiliki keterbatasan visual dari elektromagnetik (EM) spectrum, imaging

machine menutup seluruh spectrum EM, jarak dari gamma ke gelombang

radio. Hal ini dapat dioperasikan pada image generated dengan sumber-

sumber manusia yang tidak biasa diasosiasikan dengan gambar, termasuk

Page 25: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

14

ultrasound, electron microscopy, dan computer-generated images. Digital

imaging processing terdiri dari lebar dan jenis lokasi aplikasi.[15]

2.2 MMS (Multi Media Messaging Service)

MMS merupakan jenis layanan messaging yang mampu mengintegrasikan

beberapa macam media object (text, image, sound, video) yang ditampilkan

sekaligus. Proses pengiriman MMS yaitu dalam mode store and forward

menggunakan kanal trafik. MMS disimpan dalam MMSC (MMS Centre) dan

diforward seperti pada SMS. Dengan MMS ini kita dapat menikmati suatu pesan

gambar berwarna, diiringi dengan suara dan penjelasan berupa teks, sehingga

pesan dinamis.[11]

Fitur-fitur MMS antara lain pertukaran isi pesan seperti melodi poliponik,

gambar, video dan persentasi multimedia dengan bahasa xHTML. MMS dapat

didukung dengan teknologi jaringan 2.5G dan 3G[11].

a) Perangkat Pendukung MMS

Multimedia messaging didefinisikan oleh 3GPP dan WAP sebagai badan

standardisasi. Multimedia Messaging Service (MMS) menggunakan WAP

sebagai sarana transportasi dan independent sebagai bearernya sehingga MMS

bisa berjalan melalui jaringan GPRS. Layanan MMS yang diluncurkan

menggunakan jaringan GPRS akan menawarkan fasilitas yang lebih bagi para

pengguna. Jaringan GPRS menyediakan peningkatan yang penting dalam hal

bandwidth dan bantuan peningkatan kerja layanan MMS dan penggunaannya.

b) Arsitektur dan Elemen Pembangunan MMS

Page 26: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

15

Sampai sekarang ada dua standarisasi internasional yang mengatur

tentang layanan MMS ini, yakni 3GPP dan WAP Forum. Perbedaan yang

paling mendasar dari kedua standarisasi ini adalah standarisasi oleh 3GPP

bersifat global dan standar dari WAP Forum lebih bersifat spesifik, yaitu

langsung dengan implementasi menggunakan protocol WAP. Dan standarisasi

oleh WAP Forum ini tetap mengacu pada standar 3GPP. Secara umum

arsitektur MMS seperti pada Gambar dibawah:

Gambar 2.3 Arsitektur MMS[19]

MMS Environment (MMSE) merupakan kumpulan elemen-elemen

tertentu dalam satu administrasi pengaturan. MMSE meliputi semua layanan

dari elemen-elemen untuk proses penyampaian (delivery), penyimpanan

(storage) dan pemberitahuan (notification) suatu message. MMS atau

Multimedia Messaging Service sebenarnya adalah hasil pengembangan dari

SMS (Short Message Service).

c) Cara Kerja MMS

MMS merupakan salah satu aplikasi yang dikembangkan pada platform

Page 27: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

16

teknologi 2.5G. Tidak seperti SMS yang dikirimkan menggunakan kanal

control (control Chanel), MMS menggunakan GPRS dalam pengirimannya.

MMS dikirimkan secara “store and forward” yang artinya MMS mula-mula

disimpan dalam Multimedia Message Service Centre (MMSC) baru kemudian

dinotifikasikan (diberitahukan) kepada penerima. Pada MMS, pesan MMS

pada server atau MMSC akan disimpan dalam batas waktu tertentu. Jika

penerima MMS tidak mendownload pesan yagn dikirimkan kepadanya hingga

melewati batas waktu expiring date dari pesan, maka pesan tersebut akan

dihapus oleh server. MMS mendukung pengiriman pesan dengan media

Images, text dan Audio.

2.2.1 MMS Gateway

MMS (Multimedia Messaging Service) Gateway adalah suatu

platform yang menyediakan mekanisme untuk External User Application

(EUA) yang menghantar dan menerima MMS dari peralatan mobile (HP,

PDA phone, dll) melalui MMS Gateway’s shortcode (sbg contoh 9221). Di

bawah ini disertakan sedikit ilustrasi mengenai penjelasan di atas.

MMS Gateway membolehkan UEA untuk berkomunikasi dengan

Telco MMSC (telkomsel, indosat, dll) atau MMS platform untuk

menghantar dan menerima pesan MMS dengan sangat mudah, Karena MMS

Gateway akan melakukan semua proses dan koneksi dengan Telco. MMS

Gateway juga menyediakan UEA dengan interface yang mudah dan standar.

Page 28: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

17

Seperti berbagai aplikasi web yang telah banyak menggunakan

MMS (free sms, pendaftaran, konfirmasi melalui MMS, aplikasi

perkantoran, dsb), CMS, acara pengundian di televisi, dll. UEA melakukan

komunikasi dengan MMS Gateway melalui Internet menggunakan standard

HTTP GET atau HTTPS (untuk komunikasi yang aman).

Telco MMSC akan menghantar gambar (MMS) tersebut kepada

perusahaan MMS Gateway (sesuai dengan nomor yang telah disewa)

dengan menggunakan protokol yang khusus. Dan berdasarkan keyword

yang telah dituliskan pada MMS, maka sistem MMS Gateway akan

menghantar MMS tersebut ke URL yang telah ditentukan. UEA dapat

menghantar MMS reply kepada pelanggan melalui MMS Gateway tersebut.

Dan UEA dapat menentukan besarnya biaya (charging) yang akan

dikenakan kepada pelanggan.

MMS Gateway merupakan pintu gerbang bagi penyebaran Informasi

dengan menggunakan MMS. Anda dapat menyebarkan pesan ke ratusan

nomor secara otomatis dan cepat yang langsung terhubung dengan database

nomor-nomor ponsel saja tanpa harus mengetik ratusan nomor dan pesan di

ponsel anda karena semua nomor akan diambil secara otomatis dari

database tersebut. Selain itu, dengan adanya MMS Gateway anda dapat

mengustomisasi pesan-pesan yang ingin dikirim. Dengan menggunakan

program tambahan yang dapat dibuat sendiri, pengirim pesan dapat lebih

Page 29: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

18

fleksibel dalam mengirim berita karena biasanya pesan yang ingin dikirim

berbeda-beda untuk masing-masing penerimanya.

2.3 Kamera Pengawas

Kamera pengawas atau CCTV (Closed-Circuit Television) memiliki kamera

yang akan mentransmisikan image video ke tempat yang spesifik. System kamera

keamanan biasanya digunakan untuk alasan keamanan atau komersial ketika orang

memerlukannya bila berada di lingkungan yang berbahaya.[16]

Kamera keamanan pertama kali dibuat oleh Walter Brunch, dan diinstall di

sebuah area peluncuran roket di Jerman. Oleh karena peluncuran tersebut dirasa

berbahaya, dan banyak orang yang ingin menyaksikannya, maka dibuatlah kamera

keamanan sehingga dapat digambarkan secara detail mengenai peluncurannya.

Teknologi kamera keamanan masih digunakan untuk melihat peluncuran roket,

namun meluas fungsinya ke keamanan bank, institusi militer dan tempat lain yang

membutuhkan pengamanan yang tinggi. Di tahun 1990 dan 2000, kamera keamanan

mulai dipakai di area publik, seperti di sudut jalan di negara Inggris.

Teknologi kamera keamanan telah membuat evolusi jalan keamanan di

sektor publik dan pribadi. Kamera keamanan juga diperbolehkan oleh lingkungan

hukum untuk menyelesaikan kriminalitas di area, dimana kamera keamanan

dipasang (dalam hal ini untuk lalu lintas). Sekarang ini, kamera keamanan mudah

diidentifikasi oleh setiap orang. Banyak kamera keamanan yang dipasang di langit-

langit rumah, dinding atau atap bangunan. Berikut macam-macam sistem kamera

keamanan :

Page 30: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

19

1. Sistem CCTV Sederhana

Sistem CCTV yang paling sederhana terdiri dari kamera statik,

multiplexer/switcher dan TV monitor, seperti yang ada pada Gambar 2.3.

Kamera dapat di tempatkan di beberapa area/ruangan yang dianggap penting dan

seluruh kejadian dipantau oleh monitor. sistem ini digunakan dengan

pengawasan langsung oleh operator.

Gambar 2.4 Sistem CCTV Sederhana[20]

2. Sistem CCTV dengan Video Recorder

Sistem CCTV dengan Video Recorder adalah penambahan alat perekam pada

Sistem CCTV Sederhana. Sistem ini terdiri dari kamera statik,

multiplexer/switcher, TV monitor dan Video Recorder yang menggunakan kaset

VHS, seperti terlihat pada Gambar 2.4. Dengan adanya alat perekam operator

tidak harus terus menerus mengawasi monitor. Alat perekam juga

memungkinkan kejadian yang sudah berlalu dapat di review/lihat kembali.

Gambar 2.5 Sistem CCTV dengan Video Recorder[20]

Page 31: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

20

3. Sistem CCTV dengan Digital Video Recording (DVR)

DVR dibuat khusus untuk merekam dengan menggunakan Harddisk sebagai

media penyimpanan. DVR sudah meliputi fungsi Multiplexer/Switcher dan

Controller untuk kamera yang dapat digerakkan. Sistem ini terdiri dari kamera,

monitor dan DVR. Sistem ini dapat dikoneksikan langsung ke jaringan komputer

(LAN).

Beberapa keunggulan dari Sistem DVR, adalah:

a. Waktu penyimpanan yang lama, tergantung kapasitas Harddisk

b. Dapat di Back Up ke CD Rom atau ke Komputer.

c. Dapat di pantau/dikoneksikan melalui jaringan Internet

d. Jadwal perekaman dapat di atur secara otomatis

e. Mempunyai controller untuk kamera yang dapat digerakkan

f. Sedikit atau tidak perlu perawatan

Gambar 2.6. Sistem CCTV dengan Digital Video Recording (DVR)[ 20]

4. Sistem CCTV dengan Menggunakan Komputer dan Web Camera

Sistem ini terdiri dari komputer dan web camera. Sistem ini dapat dimonitor dari

komputer lain yang ada dalam jaringan LAN, fleksibilas yang lebih baik

Page 32: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

21

dibanding DVR, dan banyak keunggulan lainnya. Gambar yang direkam di

Komputer, sehingga dapat dilihat dilain waktu.

Gambar 2.7. Sistem CCTV dengan Menggunakan Komputer

Beberapa keunggulan dari Sistem ini, adalah:

a. Mudah di operasikan dan fleksibel.

b. Rekaman dengan kualitas tinggi.

c. Sedikit atau tidak perlu perawatan, karena menggunakan jaringan sederhana.

d. Kecepatan perekaman yang dapat di kostumasi.

e. Dapat menyimpan rekaman 30-60 hari, setelah 60 hari rekaman dapat dihapus

oleh user.

f. Dapat Menampilkan banyak kamera secara bersamaan.

g. Mampu mendeteksi objek yang bergerak dan Alarm.

h. Pengaturan jadwal secara otomatis.

i. Memiliki kontrol gerak dan pembesaran/zoom untuk kamera

Dalam penelitian ini penulis menggunakan kamera keamanan tipe ke empat,

namun computer yang penulis jadikan sebagai server belum terhubung dengan

Page 33: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

22

jaringan.

2.4 Framework .NET

2.4.1 Pengertian Microsoft .NET Framework

Microsoft .NET Framework (dibaca dot net framework) adalah

sebuah komponen yang dapat ditambahkan ke sistem operasi Microsoft

Windows atau telah terintegrasi ke dalam Windows (mulai dari Windows

2003 dan versi-versi Windows terbaru). Kerangka kerja ini menyediakan

sejumlah besar solusi-solusi program untuk memenuhi kebutuhan-

kebutuhan umum suatu program baru, dan mengatur eksekusi program-

program yang ditulis secara khusus untuk framework ini. .NET framework

adalah kunci penawaran utama dari Microsoft, dan dimaksudkan untuk

digunakan oleh sebagian besar aplikasi-aplikasi baru yang dibuat untuk

platform Windows. [18]

Framework .NET di disain untuk dapat memenuhi beberapa tujuan

berikut ini [9]:

1. Untuk menyediakan lingkungan kerja yang konsisten bagi bahasa

pemrograman yang berorientasi objek (object oriented programming)

baik kode itu disimpan dan dieksekusi secra lokal, atau dieksekusi secra

lokal tetapi didistribusikan melalui internet atau dieksekusi secara

remote.

2. Untuk menyediakan lingkungan kerja di dalam mengeksekusi kode

yang dapat meminimalisasi proses software development dan

Page 34: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

23

menghindari konflik penggunaan software yang dibuat.

3. Untuk menyediakan lingkungan kerja yang aman dalam hal

pengeksekusian kode, termasuk kode yang dibuat oleh pihak ketiga

(third part).

4. Untuk menyediakan lingkungan kerja yang dapat mengurangi masalah

pada persoalan performa dari kode atau dari lingkungan interpreter-

nya.

5. Membuat para developer lebih mudah mengembangkan berbagai

macam jenis aplikasi yang bervariasi, seperti aplikasi berbasis desktop

dan aplikasi berbasis web.

6. Membangun semua komunikasi yang ada di dalam standar industri

untuk memastikan bahwa kode aplikasi berbasis framework .NET dapat

berintegrasi dengan berbagai macam kode aplikasi lain.

Sebagai salah satu sarana untuk dapat memenuhi tujuan yang telah

dipaparkan, maka dibuatlah berbagai macam bahasa pemrograman yang

dapat digunakan dan dapat berjalan di atas platform framework seperti

bahasa C#, VB.NET, C++, J#, Perl.NET, dan lain-lain. Masing-masing

bahasa tersebut mempunyai kelebihan dan kekurangannya masing-masing,

namun yang pasti, apapun bahasa pemrograman yang digunakan, semua

dapat saling berkomunikasi dan saling compatible satu sama lainnya

dengan bantuan framework .NET.

Page 35: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

24

2.4.2 Arsitektur Framework .NET

Framework .NET terdiri dari dua komponen utama, yaitu CLR

(Common Language Runtime) dan .NET Framework Class Library atau

sering disebut dengan BCL (Base Class Library).[19]

Gambar 2.8 Arsitektur framework .NET [19]

1. CLR (Common Language Library)

CLR merupakan pondasi utama dari framework .NET. CLR

merupakan komponen yang bertanggung jawab terhadap berbagai

macam hal, seperti bertanggung jawab untuj melakukan manajemen

memori, melakukan eksekusi kode, melakukan verifikasi terhadap

keamanan kode dan berbagai layanan sistem lainnya. Dengan adanya

fungsi CLR ini, maka aplikasi berbasis .NET bisa juga disebut dengan

manged code, sedangkan aplikasi di luar itu bissa disebut dengan un-

managed code.

Page 36: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

25

Berikut ini beberapa hal yang disediakan oleh CLR bagi para

developer [9]:

a. Dapat lebih menyederhanakan proses pengembangan aplikasi.

b. Memungkinkan adanya variasi dan integrasi dari berbagai bahasa

pemrograman yang ada di lingkungan framework .NET.

c. Keamanan dengan menggunakan identifying pada kode aplikasi.

d. Bersifat assembly pada saat proses deployment/kompilasi.

e. Melakukan versioning sebuah komponen yang bisa di daur ulang.

f. Memungkinkan penggunaan kembali kode, dengan adanya sifat

inheritance.

g. Melakukan pangaturan/manajemen tentang lifetime sebuah objek.

h. Melakukan penganalisaan objek secara otomatis.

CLR melakukan kompilasi kode-kode aplikasi menjadi bahasa

assembly MSIL (Mictosoft Intermediate Language). Proses kompilasi

ini sendiri dilakukan oleh komponen yang bernama JIT (Just in Time).

JIT hanya akan mengkompilasi metode-metode yang memang

digunakan dalam aplikasi, dan hasil kompilasi ini sendiri di simpan di

dalam mesin dan akan dikompilasi kembali jika memang ada perubahan

pada kode aplikasi.

2. BCL (Base Class Library)

.NET Framework Class Library atau sering juga disebut BCL

adalah koleksi dari reusable types yang sangat terintegrasi secara

Page 37: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

26

melekat dengan CLR. Class library bersifat berorientasi terhadap objek

yang akan menyediakan types dari fungsi-fungsi managed code. Hal ini

juga dapat mengurangi waktu yang diperlukan pada saat eksekusi.

Dengan sifat tersebut, maka komponen pihak ketiga (third part) akan

dengan mudah diaplikasikan ke dalam aplikasi yang dibuat.

Dengan adanya BCL ini, maka kita bisa menggunakan

framework .NET untuk membuaut berbagai macam aplikasi, seperti [9]:

a. Aplikasi console

b. Aplikasi berbasis windows (Desktop Form)

c. Aplikasi berbasis ASP.NET (berbasis web)

d. Aplikasi Web Services XML

e. Aplikasi berbasis Windows Services

Jika kita membuat sekumpulan class untuk membuat

aplikasi berbasis windows (Windows Form), maka class-class tersebut

itu bisa kita gunakan untuk aplikasi lain, seperti aplikasi berbasis web.

2.4.3 Keuntungan Framework .NET

Berikut ini adalah beberapa keuntungan dari penggunaan framework

.NET [9] :

1. Mudah

Kemudahan di sini lebih ke arah pada kemudahan developer untuk

membuat aplikasi yang dijalankan pada lingkungan framework .NET.

Beberapa yang merepotkan developer pada saat membuat aplikasi telah

Page 38: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

27

di hilangkan atau di ambil alih kemampuannya oleh framework .NET,

misalnya masalah lifetime sebuah objek yang biasanya luput dari

perhatian developer pada saat proses pembuatan aplikasi. Masalah ini

telah ditangani dan diatur secara otomatis oleh framework .NET melalui

komponen yang bernama gerbage collector yang bertanggung jawab

untuk mencari dan membuat objek yang sudah tidak terpakai secara

otomatis.

2. Efisien

Kemudahan pada saat proses pembuatan aplikasi, akan berimplikasi

terhadap efisiensi dari suatu proses pembuatan produktifitas, baik

efisiensi dalam hal waktu pembuatan aplikasi atau juga efisiensi dalam

hal lain, seperti biaya.

3. Konsisten

Kemudahan-kemudahan pada saat pembuatan aplikasi, juga bisa

berimplikasi terhadap konsistenai pada aplikasi yang kita buat.

Misalnya dengan adanya BCL, maka kita bisa menggunakan objek atau

class yang dibuat untuk aplikasi berbasis windows pada aplikasi

berbasis web. Dengan adanya kode yang bisa diintegrasikan ke dalam

berbagai macam aplikasi ini, maka konsistensi kode-kode aplikasi dapat

terjaga.

4. Produktifitas

Semua kemudahan-kemudahan di atas, pada akhirnya akan membuat

Page 39: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

28

produktifitas menjadi lebih baik. Produktifitas naik, terutama

produktifitas para developer, akan berdampak pada meningkatnya

produktifitas suatu perusahaan.

2.5 Aforge Framework

Aforge framework adalah sebuah framework C# yang di desain untuk developer

dan peneliti pada lingkungan Computer Vision dan Artificial Intelligence (image

processing, neural network, genetic algotirhm, machine learning, robotic). [12]

Framework ini terdiri dari beberapa library dan contoh aplikasi, yang

ditunjukkan oleh fitur-fitur sebagai berikut :

1. Aforge.Imaging, library dengan image processing dan filter, untuk mem-filter

gambar yang akan diproses.

2. Aforge.Vision, computer vision library, library untuk proses motion detector

yang sederhana, membedakan nilai threshold dan penghitungan perbedaan pixel.

3. Aforge.Neuro, neural network computation library, untuk membuat arsitektur

neural network(jaringan saraf tiruan).

4. AForge.Genetic, evolution programming library, untuk ilmu komputasi,

memecahkan masalah (optimalisasi, perkiraan, prediksi, dan lain-lain) dengan

bantuan Genetic Algorithms (GA), Genetic Programming (GP), Gene

Expression Programming (GEP).

5. AForge.MachineLearning, machine learning library, dari mesin pembelajaran.

6. AForge.Robotics, library providing support of some robotics kits, memanipulasi

perbedaan Lego Mindstorm peralatan robotic, medukung peralatan Lego

Page 40: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

29

Minstorm RCX dan Lego Mindstorm NXT.

7. AForge.Video, set of libraries for video processing, untuk video yang

terintegrasi dengan Windows.

Perbaikan framework adalah pada kemajuan yang terus-menerus, artinya fitur-

fitur baru dan namespaces dating secara terus-menerus. Framework ini tidak hanya

disediakan dengan library dan sources yang berbeda, tetapi disediakan juga beberapa

contoh aplikasi, yang ditunjukkan untuk penggunaan framework ini, serta dengan

dokumentasi help files, yang disediakan dalam format html.

2.6 Sekilas Tentang Visual C#

2.6.1 Pengertian C#

C# (dibaca “See-Sharp”) merupakan bahasa pemrograman modern

yang berorientasi objek. Secara sintaks C# mirip dengan bahasa-bahasa

pemrograman keluarga C seperti C, C++, dan Java. C# menggabungkan

produktifitas dan kemudahan yang ada di pemrograman Visual Basic dengan

kemampuan dan flesibilitas yang ada di pemrograman C++, serta

menambahkan hal-hal baru yang tidak ada di bahasa pemrograman Java.

Perancang utamanya adalah Anders Hejlbers dari Microsoft, yang dulunya

membuat bahasa pemrograman Turbo Pascal dan berperan dalam

pengembangan Delphi dan Borland Delphi. [14]

Bahasa C# telah disarankan oleh Microsoft ke badan standar

internasional ECMA (European Computer Manufacture Assosiation). Proses

standarisasinya selesai pada Desember 2001 dengan nama standarnya EMA-

Page 41: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

30

334. Dengan standar tersebut, siapapun dapat dengan mudah dan bebas

membuat implementasi bahasa C#.

2.6.2 Alasan Menggunakan Bahasa C#

Ada beberapa alasan menggunakan bahasa C#, yaitu [9]:

1. Sederhana (Simple)

Bahasa C# bersifat sederhana, karena bahasa C# didasarkan kepada bahasa

C dan C++. Bahasa C# menghilangkan beberapa hal yang bersifat

kompleks yang terdapat dalam beberapa macam bahasa pemrograman Java

dan C++, termasuk diantaranya menghilangkan macro, templates, multiple

inheritance, dan virtual base classes. Hal-hal tersebut juga dapat

menyebabkan kebingungan pada saat menggunakannya, berpotensial dapat

menjadi masalah bagi para programmer C++.

2. Modern

Beberapa fitur yang membuat C# menjadi suatu bahasa pemrograman

moderen adalah exception handling, garbage collection, extensible data

types, dan code security (keamanan kode/bahasa pemrograman).

3. Object Oriented Programming

Kunci dari bahasa pemrograman yang bersifat object oriented adalah

encapsulation, inheritance, dan polymorphism. Sifat-sifat tersebut dimiliki

oleh bahasa C#, sehingga bahasa C# merupakan bahsa yang bersifat object

oriented.

4. Powerfull dan Fleksibel

Page 42: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

31

C# bisa digunakan untuk membuat berbagai macam aplikasi, seperti

sebuah aplikasi pengolah kata, grapik, spreadsheet, atau bahkan membuat

compiler untuk sebuah bahasa pemrograman.

5. Efisien

Bahasa C# adalah bahasa pemrograman menggunakan jumlah kata-kata

yang tidak terlalu banyak. C# hanya berisi kata-kata yang bisa disebut

dengan keywords. Keywords ini digunakan untuk menjelaskan berbagai

macam informasi.

6. Modular

Kode C# ditulis dengan pembagian class yang terdiri dari beberapa

routines yang disebut sebagai member methods. Class dan metode-metode

ini dapat digunakan kembali oleh program dan aplikasi lain. Hanya dengan

memberikan informasi yang dibutuhkan oleh class dan metode yang

dimaksud, maka kita akan dapat membuat suatu kode yang dapat

digunakan oleh satu atau beberapa aplikasi dan program (reusable code).

7. C# akan menjadi popular

Dengan dukungan penuh dari Microsoft yang akan mengeluarkan produk-

produk utamanya dengan dukungan framework .NET, maka masa depan

C# sebagai salah satu bahasa pemrograman yang ada di dalam lingkungan

framework .NET akan lebih baik.

2.6.3 NUnit

Nunit merupakan sebuah unit testing framework yang open source

Page 43: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

32

untuk Microsoft.NET. NUnit menyediakan fungsi-fungsi yang sama dengan

JUnit dapat menggunakan bahasa pemrograman Java, dan merupakan salah

satu dari keluarga xUnit. NUnit dapat merekam waktu eksekusi dari unit test

dan melaporkan kinerja XML, CSV, XHTML dengan diagram dan history

tracking. Artinya fungsi-fungsi ini dapat memudahkan pengembang untuk

mengintegrasikan performance metric dan menganalisa kedalam lingkungan

unit testing, untuk memudahkan mengontrol dan memonitoring

perkembangan hubungan algorhitmic complexit dan sumber-sumber sistem

pada perangkat lunak.[13]

Terdapat empat keuntungan menggunakan NUnit [1], yaitu kita dapat

memperbaiki koding, lebih cepat membuat deadline (setelah membuat

koding, dapat langsung diuji menggunakan NUnit sehingga dapat cepat

menyelesaikan program karena dapat langsung men\mperbaiki kode), cepat

pada saat debugger, dan cepat pada saat mengkoreksi kode.

2.6.4 Mengenal Integrated Development Environment Visual Studio 2008

Gambar 2.9 Splash Screen Visual Studio 2008

Page 44: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

33

2.7 Pengembangan Sistem

Pengembangan sistem yaitu menyusun sistem yang baru untuk

menggantikan sistem yang lama secara keseluruhan atau perbaikan pada sistem

yang telah ada dengan harapan bahwa sistem yang baru dapat mengatasi sistem

yang lama. [7]

Pengembangan sistem dapat berarti menyusun suatu sistem yang baru

untuk menggantikan sistem yang lama secara keseluruhan atau memperbaiki

sistem yang telah ada.

Dengan telah dikembangkannya sistem yang baru, maka diharapkan akan

terjadi peningkatan-peningkatan ini antara lain: [16]

1. Performance (Kinerja), yaitu terjadi peningkatan terhadap kinerja (hasil kerja)

sistem yang baru sehingga menjadi lebih efektif.

2. Throughput, yaitu jumlah dari pekerjaan yang dapat dilakukan suatu saat

tertentu.

3. Control (pengendalian), yaitu peningkatan terhadap pengendalian untuk

mendeteksi dan memperbaiki kesalahan-kesalahan serta kecurangan-

kecurangan yang akan terjadi.

4. Service (pelayanan), bagaimana peningkatan terhadap pelayanan yang

diberikan oleh sistem.

2.7.1 Model Pengembangan Sistem yang Dipakai untuk Pengembangan

Aplikasi Pendeteksian Dini Rumah Tinggal

Model pengembangan perangkat lunak yang digunakan pada

Aplikasi Pendeteksian dini rumah tinggal ini adalah model RAD. Penulis

Page 45: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

34

memilih model RAD adalah sebuah model proses perkembangan software

sekuensial linier yang menekankan siklus perkembangan yang sangat

pendek, proses RAD memungkinkan tim pengembangan menciptakan

“sistem fungsional yang utuh” dalam periode waktu yang sangat pendek

(kira-kira 60 sampai 90 hari)[10]. RAD cocok diterapkan pada aplikasi

pendeteksian dini rumah tinggal ini karena dimana perkembangan cepat

dicapai dengan menggunakan pendekatan kontruksi berbasis komponen

RAD mengasumsikan pemakaian teknik generasi keempat. Selain

menciptakan perangkat lunak dengan menggunakan bahasa pemrograman

generasi ketiga yang konvensional. Padasemuakasus, alat-alat bantu

otomatis dipakai untuk memfasilitasi konstruksi perangkat lunak.

Melakukan penggunaan kembali komponen yang ada (jika mungkin),

artinya membuat kembali penggunaan kembali komponen jika dibutuhkan.

Kemudian Testing and turnover. Karena proses RAD menekankan pada

pemakaian kembali, banyak komponen program telah diuji. Hal ini

mengurangi keseluruhan waktu pengujian. Tetapi komponen baru harus

diuji dan semua interface harus dilatih secara penuh.[10]

Hasil pengembangan bisa lebih cepat dibandingkan SDLC lainnya. RAD

memerlukan biaya yang lebih sedikit, mementingkan dari segibisnis dan teknik,

berkonsentrasi pada sudut pandang pengguna, RAD menyediakan kemungkinan

perubahan secara cepat sesuai permintaan pengguna, menghasilkan jarak

kesesuaian yang kecil antara kebutuhan user dan spesifikasi sistem, waktu, biaya,

Page 46: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

35

dan usaha yang akan dikeluarkan pun minimal. Untuk lebih jelasnya, pada

Gambar2.10 diperlihatkan siklus RAD.

Gambar 2.10 Siklus Rapid Application Development (RAD) [20]

Pada fase analysis and quick design yaitu menganalisis dan mengumpulkan

semua kebutuhan sistem serta melakukan perancangan cepat untuk tampilan awal

sistem. Pada fase construction merancang secara detail rancangan kelas dan

rancangan antar muka sistem. Pada fase testing yaitu melakukan pengujian untuk

unit-unit dan sistem secara keseluruhan. Dan pada fase implementation yaitu

menerapkan sistem.

Page 47: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

BAB III

METODOLOGI PENELITIAN

3.1 Bahan dan Alat

Bahan penelitian yang digunakan adalah citra digital (gambar yang telah

ditangkap oleh web camera). Peralatan diperlukan untuk mendukung penelitian dan

mengoperasikan aplikasi digolongkan menjadi :

3.1.1 Perangkat Keras

Perangkat Keras adalah seperangkat alat atau komponen

yang akan digunakan untuk membentuk suatu sistem komputer

a. CPU (Central Processing Unit)

CPU merupakan pusat pengolahan dan juga pusat pengontrolan

dari sebuah sistem komputer yang saling melaksanakan

kegiatan.

1) Processor Pentium IV 3.0 Ghz

2) Harddisk 80 GB

3) DDR2 RAM 1 GB

c. Keyboard

Keyboard adalah alat input yang biasanya didampingi dengan

alat tampilan (display) di layar monitor yang menampilkan apa

yang ditekan di keyboard.

d. Mouse

Mouse adalah alat input komputer yang digunakan oleh berbagai

program aplikasi GUI (Graphical User Interface) dengan

petunjuk posisi yang ditampilkan melalui monitor.

Page 48: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

39

f. Web Camera

Web camera merupakan sebuah kamera video digital kecil yang

dihubungkan ke komputer melalui (biasanya) port USB.

g. Telepon Selular

Telepon Selular merupakan alat komunikasi tanpa kabel.

Telepon selular yang digunakan oleh penulis adalah dua buah,

telepon selular yang digunakan sebagai modem ( memiliki fitur

GPRS dan MMS, penulis menggunakan tipe Nokia 3110Classic )

dan telepon selular yang digunakan untuk menerima MMS

(memiliki fitur MMS, penulis menggunakan tipe Nexian).

h. Kabel Data

Kabel data adalah kabel yang menghubungkan web camera

dengan komputer. Kabel data Nokia tipe DKE-2.

3.1.2 Perangkat Lunak

Perangkat lunak merupakan bagian dari sistem pengolahan

data yang digunakan untuk mengaktifkan fungsi dari perangkat

keras komputer. Perangkat lunak yang digunakan dalam penelitian

ini adalah sebagai berikut :

a. Sistem Operasi

Sistem operasi yang digunakan penulis Microsoft Windows

XP Service pack 2.

b. Program Aplikasi

Page 49: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

40

Merupakan perangkat lunak yang akan digunakan dalam

pembuatan program adalah Microsoft Visual Studio 2008 .

Spesifikasi untuk pengguna dapat dilihat pada sub bab 4.1.1.

3.2 Metode Pengumpulan Data

Pada metode pengumpulan data ini penulis melakukan 2 cara yaitu :

observasi dan studi pustaka.

3.2.1 Observasi (pengamatan)

Penyaksian terhadap peristiwa-peristiwa itu bisa dengan

melihat, mendengarkan, merasakan, yang kemudian dicatat

seobyektif mungkin. [10].

Pada metode ini, penulis mengumpulkan data dan informasi

yaitu dengan cara meninjau dan melakukan pengamatan secara

langsung ke lapangan terhadap suatu kegiatan yang sedang dilakukan

atau berjalan, untuk memperoleh semua data yang dibutuhkan.

Peranan penulis dalam metode ini adalah pengamat dan

peneliti yaitu peneliti berpartisipasi dalam penelitiannya.

Pengamatan dilakukan pada :

Tempat : Rumah penulis

Jl. Delima Jaya No.51 Ciputat Timur, Tangerang Selatan

Waktu : 30 April 2009 s.d 15 Mei 2009

3.2.2 Studi Pustaka

Penulis melakukan studi pustaka sebagai bahan tambahan

guna melengkapi kekurangan-kekurangan data yang diperoleh dari

Page 50: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

41

observasi. Pengumpulan data dengan cara mengambil dari

sumber-sumber media cetak maupun elektronik yang dapat dijadikan

acuan pembahasan masalah.

Pada metode pengumpulan data ini, penulis juga mempelajari

buku-buku yang berhubungan dengan masalah yang akan dibahas

dalam penulisan skripsi ini. Adapun data-data buku yang digunakan

dalam penulisan skripsi ini terdapat dalam daftar pustaka. Pencarian

melalui media elektronik seperti internet juga dilakukan dalam

memperoleh data-data tambahan yang pada media cetak yang tidak

ditemukan. Adapun studi pustaka yang digunakan dapat dilihat pada

daftar pustaka.

3.3 Metode Pengembangan Sistem

Metode yang digunakan untuk melakukan pengembangan sistem yaitu

model Rapid Application Development (RAD). RAD adalah sebuah model

proses pengembangan software sekuensial linier yang menekankan siklus

pengembangan yang sangat pendek.

RAD secara garis besar memiliki empat tahapan, yaitu :

1. Analisis (Analysis) dan Perancangan Cepat (Quick Design), (dapat

dibaca pada sub bab 4.2).

a. Analisis (Analysis), (dapat dibaca pada sub bab 4.2.1)

Tahap analisis dikenal juga sebagai tahap mendefinisikan rencana, pada

fase ini ditetapkan fungsi-fungsi bisnis dan wilayah persoalan data yang

Page 51: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

42

akan didukung oleh sistem dan ditentukan jangkauan atau batasan sistem.

Secara rinci yang penulis lakukan pada tahap analisis adalah :

1) Analisis masalah (dapat dibaca pada sub bab 1)

a) Analisis struktur motion detection

b) Analisis struktur MMS gateway

2) Analisis kebutuhan perangkat lunak (dapat dibaca pada sub bab 2)

a) Deskripsi umum sistem

b) Analisis spesifikasi dan kebutuhan perangkat lunak

3) Analisis kebutuhan perangkat keras (dapat dibaca pada sub bab 3).

b. Perancangan Cepat (Quick Design), (dapat dibaca pada sub bab 4.2.2)

Pada tahap ini perancangan akan dibagi menjadi perancangan

perancangan kelas dan perancangan antar muka. Pada perancangan yang

akan dilakukan yaitu:

a. Perancangan kelas (dapat dibaca pada sub bab 1)

1) Diagram perancangan kelas

2) Deskripsi diagram perancangan kelas

3) Operasi dan atribut

b. Perancangan antar muka (dapat dibaca pada sub bab 2)

2. Construction, (dapat dibaca pada sub bab 4.3)

Diketahui juga sebagai tahap pembuatan atau pembangunan. Pada

tahap ini dilakukan :

a. Batasan implementasi (dapat dibaca pada sub bab 4.3.1)

b. Implementasi kelas (dapat dibaca pada sub bab 4.3.2)

Page 52: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

43

1) Deskripsi kelas

2) Operasi dan atribut

c. Implementasi antar muka (dapat dibaca pada sub bab 4.3.3)

3. Pengujian (Testing), (dapat dibaca pada sub bab 4.4)

Testing adalah proses eksekusi program yang bertujuan untuk

menemukan error. Testing yang dilakukan pada tugas akhir ini terdiri dari

dua bagian, yaitu :

a. Nunit, (dapat dibaca pada sub bab 4.4.1)

b. Black Box, (dapat dibaca pada sub bab 4.4.2)

4. Implementasi, (dapat dibaca pada sub bab 4.5)

Implementasi dari sistem yang telah dikembangkan untuk sistem

keamanan rumah tinggal.

3.4 Siklus penerapan metode RAD untuk membangun aplikasi Peringatan

Dini terhadap Rumah Tinggal

Pada Gambar 3.2 diberikan siklus RAD yang diimplementasikan

untuk membangun sebuah perangkat lunak yang dapat mendeteksi gerakan dan

mengirimkan gambar yang telah terdeteksi ke telepon pengguna.

Page 53: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

44

Pemilihan Judul Penelitian

Perumusan Masalah

Observasi

Studi pustaka

Analisis Masalah

Analisis Struktur Motion Detection

Analisis Struktur MMS

Gateway

Analisis

Anali sis Analisis

Kebutuhan Perangkat

Lunak

Deskripsi Umum Sistem

Analisis Analisis Spesifikasi

dan Kebutuhan Perangkat

Lunak

Analisis dan Perancangan

Cepat

Analisis Analisis Kebutuhan

Perangkat Keras

Analisis Analisis Spesifikasi dan Kebutuhan Perangkat

Keras

Perancangan Cepat

Perancangan Kelas

Perancangan Antar

Muka

Construction

Batasan Implementasi

Implementasi

Kelas

Implementasi Antar Muka

Testing

NUnit

Black Box

Implementasi

Penarikan Kesimpulan Evaluasi Hasil

Page 54: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

Gambar 3.1 Ilustrasi Metodologi Penelitian

Page 55: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

42

BAB IV

ANALISIS DAN PEMBAHASAN

4.1 Bahan dan Alat

Bahan penelitian yang digunakan adalah citra digital (gambar yang

telah ditangkap oleh web camera). Peralatan yang diperlukan untuk

mendukung mengoperasikan aplikasi (dibutuhkan oleh pengguna)

digolongkan menjadi :

4.1.1 Perangkat Keras

Perangkat Keras adalah seperangkat alat atau komponen yang

akan digunakan untuk membentuk suatu sistem komputer:

a. CPU (Central Processing Unit)

CPU merupakan pusat pengolahan dan juga pusat pengontrolan

dari sebuah sistem komputer yang saling melaksanakan

kegiatan. Spesifikasi minimum untuk pengguna adalah sebagai

berikut :

1) Processor Pentium IV 2.4 Ghz

2) Harddisk 80 GB

3) DDR RAM 1 GB

4) VGA on board

b. Keyboard

Keyboard adalah alat input yang biasanya didampingi dengan

alat tampilan (display) di layar monitor yang menampilkan apa

yang ditekan di keyboard.

Page 56: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

43

c. Mouse

Mouse adalah alat input komputer yang digunakan oleh

berbagai program aplikasi GUI (Graphical User Interface)

dengan petunjuk posisi yang ditampilkan melalui monitor.

d. Web Camera

Web camera merupakan sebuah kamera video digital kecil yang

dihubungkan ke komputer melalui (biasanya) port USB.

e. Telepon Selular

Telepon selular yang digunakan oleh pengguna terdiri dari dua

buah, telepon selular yang digunakan sebagai modem

(memiliki fitur GPRS dan MMS, berikut beberapa tipe telepon

selular yang dapat digunakan oleh pengguna Nokia 6610,

Nokia 7250, Nokia 6030, SonyEricson K200i, SonyEricson

K220i ) dan telepon selular yang digunakan untuk menerima

MMS (memiliki fitur MMS, berikut beberapa tipe telepon

selular yang dapat digunakan oleh pengguna Nokia 7250,

Nokia 5070, Siemens ME55).

f. Kabel Data

Kabel data adalah kabel yang menghubungkan web camera

dengan komputer. Spesifikasi minimum kabel data disesuaikan

dengan telepon selular yang digunakan sebagai modem.

4.1.2 Perangkat Lunak

Perangkat lunak merupakan bagian dari sistem pengolahan data

yang digunakan untuk mengaktifkan fungsi dari perangkat keras

Page 57: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

44

komputer. Perangkat lunak yang disarankan untuk pengguna adalah

sistem operasi Microsoft Windows XP.

4.2 Construction

4.2.1 Analisis

1. Analisis Masalah

Masalah utama dari tugas akhir ini adalah melakukan implementasi

motion detection untuk mendeteksi adanya gerakan dan MMS gateway

yang berfungsi untuk mengirimkan gambar sebagai peringatan kepada

pengguna.

a. Analisis Struktur Motion Detection

motion detection melakukan pendekatan dengan

membandingkan frame saat ini dengan frame sebelumnya. Mula-

mula web camera akan menangkap gambar dari ruangan yang

sedang dimonitoring. Kemudian membandingkan warna yang

terdapat pada frame saat ini dengan frame sebelumnya. Apabila

terdapat perbedaan warna, maka objek tersebut terdeteksi sebagai

gerakan, even alarm akan dipanggil untuk proses penyimpanan

video dan pengiriman MMS. Kemudian objek tersebut akan dikunci

dengan membentuk sebuah kotak berwarna merah yang mengelilingi

objek tersebut. Kotak tersebut akan diberi nomor 1 sampai 9.

Penomoran sesuai dengan besarnya ukuran kotak, penomoran

dimulai dengan kotak terbesar. Penomoran kotak berdasarkan

banyaknya pixel yang berubah, semakin banyak pixel yang berubah

maka kotak akan semakin besar(kotak yang terbesar akan diberi

Page 58: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

45

nomor 1 sampai yang terkecil). Penomoran ini akan mempermudah

pengguna melihat adanya objek yang bergerak.

Setelah terdeteksi adanya pergerakan, program akan

menyimpan gambar(dalam bentuk .jpg) untuk dijadikan video

(dalam bentuk .avi). Lima detik setelah video tersimpan, program

akan mengambil gambar terakhir untuk dikirimkan ke pengguna

melalui MMS. Penamaan gambar dan video sesuai dengan tanggal

dan waktu kejadian.

Berikut alur dari motion detection :

� Mula-mula program akan menginisialisasi filter (mem-filter

gambar yang telah ditangkap oleh webcamera) pada

ProcessingFilter (proses filter pada spesifikasi image), yaitu

grayscaleFilter (kelas dasar untuk image grayscaling, kelas-

kelas yang lainnya akan mewarisi dari kelas dan menentukan

koefisien RGB yang digunakan untuk konversi image ke

grayscale) dan pixellateFilter (merupakan turunan dari

kelas FilterAnyToAnyPartial, yang dapat mem-filter image tanpa

merubah format pixel dan dimensi image, mem-filter seluruh

image rectangle yang telah ditentukan).

� Melewatkan parameter Bitmap sebagai frame yang akan

diproses.

� Jika backgroundFrame (frame sebelumnya) bernilai nol, program

akan mengambil parameter sebagai backgroundFrame dengan

melakukan filter terlebih dahulu, kemudian akan keluar fungsi.

Page 59: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

46

Namun jika backgroundFrame tidak bernilai nol, maka program

akan melakukan proses filter terhadap parameter

backgroundFrame dan meletakannya pada variabel tmpImage.

� Nilai counter ditambahkan 1, jika setelah ditambahkan 1 nilai

counter sama dengan 2, maka lakukan pergerakan pada

backgroundFrame terhadap frame saat ini, gunakan

moveTowardFilter (tmpImage sebagai overlay dan terapkan

terhadap backgroundFrame). Namun jika nilai counter tidak sama

dengan 2, langsung ketahap selanjutnya.

� Tetapkan backgroundFrame sebagai overlay pada

differenceFilter (mendapatkan perbedaan dari overlay dan

sumber image).

� Kemudian kunci pada tmpImage untuk menerapkan beberapa

filter.

� Lakukan filterisasi differenceFilter terhadap tmpImage.

� Lakukan thresholdFilter (filterisasi biner image menggunakan

spesifikasi nilai threshold, semua pixel dengan intensitas sama

atau lebih dari nilai threshold akan dikonvert ke pixel putih,

pixel yang lainnya dengan intensitas dibawah nilai threshold

akan dikonvert ke pixel hitam) terhadap tmpImage.

� Ambil hasil threshold menggunakan blobCounter untuk

menghitung jumlah kumpulan pixel putih.

� Jika persegi pixel sama nol, maka fungsi selesai. Namun jika

persegi pixel tidak sama dengan nol, gambar garis persegi pada

Page 60: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

47

setiap kumpulan pixel putih. Berikut contoh gambar yang

terdapat pixel putih:

� Hitung luas pixel yang berubah, yaitu panjang kali lebar setiap

persegi. Kemudian fungsi selesai.

Berikut adalah flowchart untuk motion detection.

Page 61: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

48

4.1 Flowchart Motion Detection

1) Analisis Ukuran MMS

Besar kecilnya ukuran MMS yang dikirim disesuaikan

dengan standar MMS(disesuaikan dengan tipe telepon selular yang

akan mengirimkan dan menerima MMS). Jika ukuran gambar terlalu

besar, telepon selular pengirim tidak dapat mengirimkan MMS dan

pengguna tidak dapat men-download MMS. Penulis menetapkan

ukuran gambar sebesar 320 x 240 pixel, yang akan menghasilkan

gambar MMS kurang dari 10KB.(dapat dilihat pada tabel 4.13).

2) Analisis nilai Threshold

Nilai threshold merupakan nilai ambang yang dapat

ditentukan pengguna. Nilai threshold akan mempengaruhi gerakan

yang terjadi. Jika nilai threshold terlalu tinggi, maka kemungkinan

besar tidak akan terdeteksi adanya gerakan, dan apabila nilai

threshold lebih kecil maka akan terdeteksi sebagai gerakan. (Hal ini

dapat dilihat pada tabel 4.14)

b. Analisis Struktur MMS Gateway

Program MMS gateway terdiri dari beberapa bagian yang

harus diisi oleh pengguna, yaitu bagian GSM/GPRS Modem, MMS

Server Setting, dan MMS Message.

Pada bagian GSM/GPRS Modem, program akan

mendeteksi modem yang telah dikenali oleh komputer.untuk bagian

MMS Server Setting, pengguna diminta untuk memasukkan login,

Page 62: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

49

password, Access Point Name(APN), IP dari Gateway, dan server

operator yang digunakan oleh modem MMS gateway. Pada bagian

MMS Message pengguna akan memasukkan nomor tujuan, Subject,

Body, dan From.untuk bagian Result, program akan secara otomatis

memberitahukan keberhasilan atau kegagalan program saat

mengirimkan MMS, berupa Report dan Response.

Saat terdeteksi adanya pergerakan, dan program telah

menyimpan dalam bentuk video, kemudian program akan

mengambil gambar (MMS) terakhir untuk dikirimkan ke Telco

MMSC sesuai dengan operator yang telah di-setting pada bagian

MMS Server Setting, Telco MMSC akan menghantar gambar

(MMS) tersebut kepada perusahaan MMS gateway (sesuai dengan

nomor yang telah disewa) dengan menggunakan protokol yang

khusus. Dan berdasarkan keyword yang telah dituliskan pada MMS,

maka sistem MMS gateway akan menghantar MMS tersebut ke URL

yang telah ditentukan. UEA dapat menghantar MMS reply kepada

pelanggan melalui MMS Gateway tersebut.

2. Analisis Kebutuhan Perangkat Lunak

a. Deskripsi Umum Sistem

Perangkat lunak yang akan dibangun akan diterapkan

pada komputer dan telepon seluler yang memiliki fungsi untuk

medeteksi adanya pergerakan dan mengirimkan MMS.

Pengguna akan berinteraksi melalui user interface yang

disediakan oleh perangkat lunak, pengguna memasukan data

Page 63: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

50

yang dibutuhkan untuk mengotomisasi program. Gambar yang

telah di-capture akan dikirimkan ke telepon seluler pengguna dan

akan disimpan dalam bentuk video. Secara umum, arsitektur

global perangkat lunak dapat dilihat pada Gambar 4.2.

Web Camera Komputer

GSM/GPRS

Modem

Jaringan

MMS

Telepon

Seluler

Penerima

Gambar 4.2 Arsitektur Global Sistem

b. Analisis Spesifikasi dan Kebutuhan Perangkat Lunak

Perangkat lunak yang akan dibangun memiliki dua buah

fitur utama, yaitu :

1) Mendeteksi adanya gerakan pada ruangan dengan motion

detection.

Ruangan akan dimonitoring oleh web camera yang

telah terhubung dengan sistem, jika terjadi gerakan yang

signifikan yang dideteksi oleh motion detection. Perangkat

lunak yang akan dibangun harus dapat merekam gambar yang

telah dideteksi oleh motion detection dengan baik.

2) Mengirimkan gambar yang telah direkam menggunakan

MMS gateway.

Perangkat lunak harus dapat mengirimkan gambar

yang telah direkam ke telepon selular pengguna, agar

peringatan dini dapat diketahui oleh pengguna secara

langsung.

Page 64: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

51

Agar kedua fitur utama tersebut dapat dipenuhi dan

pengguna dapat menggunakan sistem dengan mudah, maka

perangkat lunak yang akan dibangun memiliki beberapa

kebutuhan yang harus tersedia pada perangkat lunak tersebut,

kebutuhan fungsional perangkat lunak tersebut, yaitu :

a) Sistem dapat menangkap gambar dari web camera. (Terdapat

pada Kelas FormUtama, method OpenVideoSource)

b) Sistem harus dapat mendeteksi adanya gerakan. (Terdapat

pada Kelas MotionDetector, method MotionDetector).

c) Sistem dapat menyimpan file dalam bentuk video (.avi).

(Terdapat pada Kelas FormUtama, method BuatAVI).

d) Sistem harus dapat menyimpan gambar yang akan dikirim ke

telepon pengguna. (Terdapat pada Kelas FormUtama, method

SendMMS).

e) Sistem dapat menampilkan hasil video (.avi). (Terdapat pada

Kelas FormUtama, method AmbilDataByTanggal).

3. Analisis Kebutuhan Perangkat Keras

a. Analisis Spesifikasi dan Kebutuhan Perangkat Keras

Berdasarkan analisis yang telah dilakukan, spesifikasi

perangkat keras yang digunakan untuk menjalankan aplikasi ini

adalah:

1) CPU (Central Processing Unit)

Spesifikasi minimum untuk pengguna adalah sebagai berikut:

a) Processor Pentium IV 2.4 Ghz

Page 65: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

52

b) Harddisk 80 GB

c) DDR RAM 1 GB

2) Keyboard

3) Mouse

4) Web Camera

5) Telepon Selular

Telepon selular yang digunakan oleh pengguna terdiri dari dua

buah, telepon selular yang digunakan sebagai modem

(memiliki fitur GPRS dan MMS, berikut beberapa tipe telepon

selular yang dapat digunakan oleh pengguna Nokia 6610,

Nokia 7250, Nokia 6030, SonyEricson K200i, SonyEricson

K220i ) dan telepon selular yang digunakan untuk menerima

MMS (memiliki fitur MMS, berikut beberapa tipe telepon

selular yang dapat digunakan oleh pengguna Nokia 7250,

Nokia 5070, Siemens ME55).

6) Kabel Data

Kabel data adalah kabel yang menghubungkan telepon selular

dengan komputer. Spesifikasi minimum kabel data disesuaikan

dengan telepon selular yang digunakan sebagai modem.

4.2.2 Perancangan Cepat (Quick Design)

1. Perancangan Kelas

a. Diagram Perancangan Kelas

Page 66: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

53

Gambar 4.3 Diagram Perancangan Kelas

b. Deskripsi Diagram Perancangan Kelas

Berikut adalah deskripsi dan penjelasan dari kelas-kelas yang

muncul pada diagram perancangan kelas :

Page 67: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

54

1. Kelas FormUtama

Kelas FormUtama merupakan kelas utama yang memanggil

kelas-kelas lain dan mengirimkan MMS.

2. Kelas MotionDetector

Kelas ini akan mengolah video dari hasil tangkapan web

camera untuk dideteksi apakah terjadi pergerakan atau tidak.

3. Kelas RekamanInfo

Kelas ini akan menampung field dari tabel rekaman

c. Operasi dan Atribut

1) Kelas FormUtama

Daftar operasi dari kelas FormUtama dapat dilihat pada Tabel

4.1 dan daftar atribut kelas FormUtama dapat dilihat pada tabel 4.2.

Tabel 4.1 Daftar Operasi dari Kelas FormUtama

Nama Operasi Visibility

(Private,

Public)

Keterangan

aboutToolStripM

enuItem_Click( ) Private Tentang Penulis

AmbilDataByTa

nggal( ) Public Mengambil data dari table Rekaman

BuatAVI( ) Private Menyimpan file dalam bentuk .avi

camera_Alarm( ) Private Menentukan waktu penyimpanan saat

terjadi alarm

camera_NewFra

me( ) Private Menyimpan frame

chkKirim_Check

edChanged( ) Private Memeriksa combo box kirim

CloseFile( ) Private Menutup Program

dataGridView1_

CellClicl( ) Private Menentukan row yang akan menjadi

acuan untuk melihat rekaman video

exitToolStripMe

nuItem_Click( ) Private Menutup program melalui menu

FormUtama( ) Public Inisialisasi komponen, memanggil

Page 68: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

55

fungsi setModem dan AmbilData

FormUtamaFrom

Closing( ) Private Menutup Program

GetResult( ) Private Memberikan laporan saat pengiriman

MMS

InsertData( ) Protected Memasukkan data

LinkProviders_L

inkClicked( ) Private Penyedia link

openLocalDevice

ToolStripMenuIt

em_Click( )

Private Memeriksa combo box kirim

OpenVideoSourc

e( ) Private Membuka web camera yang telah

terpasang

SendMMS( ) Private Mengirimkan MMS

setModem( ) Private Menyiapkan Modem

tabControl1_Clic

k( ) Private Mengambil data

timer_Tick( ) Private Waktu

Tabel 4.2 Daftar Atribut dari Kelas FormUtama

Nama Atribut Visibility (Private,

Public)

Tipe

cameraWindow Private CameraWindow

ConnectionString Private String

detector Private IMotionDetector

frameReady Private Boolean

frames Private Bitmap

gambar Private Bitmap

intervalsToSave Private Int

objMMSConnecti

on Public MM!Connection

objMMSMessage Public MMSMessage

openFileDialog1 Private OpenFileDialog

saveFileDialog1 Private SaveFileDialog

saveOnMotion Private Boolean

sendImage Private String

sqlComm Private SQLConnection

sqlConn Private SQLCommand

statCount Private Int

Page 69: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

56

statIndex Private Int

statLength Private Int

statReady Private Int

writer Private AVIWriter

2) Kelas MotionDetector

Tabel 4.3 Daftar Operasi dari Kelas MotionDetector

Nama Operasi Visibility

(Private,

Public)

Keterangan

MotionDetector( ) Public Penerapan motion detector

ProcessFrame( ) Public Proses frame baru

Reset( ) Public MeMemasang kembali untuk inisialisai

keadaan

Tabel 4.4 Daftar Atribut dari Kelas MotionDetector

Nama Atribut Visibility

(Private,

Public)

Keterangan

backgroundFrame Private Bitmap

bitmapData Private BitmapData

blobCounter Private BlobCounter

calculateMotionLevel Private Boolean

counter Private Int

diffrenceFilter Private Difference

grayscaleFilter Private IFilter

height Private Int

moveTowardsFlter Private MoveTowards

numberBitmaps Private Bitmap

pixellateFilter Private IFilter

pixelsChanged Private Int

ProcessingFilter1 Private FilterSequence

thresholdFilter Private Threshold

width Private Int

2. Perancangan Antar Muka

Page 70: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

57

Berikut akan dilakukan perancangan antar muka dari beberapa

layar yang penting pada aplikasi yang akan dibangun. Antar muka yang

dirancang meliputi :

a. Antar Muka Menu Utama.

MMS Motion Help

CCTV MMS VIEW

CAM ERA 1 CAMERA 2

CAMER A 3 CAMERA 4

fps

Pada perancangan antar muka menu utama, terdapat menu

MMS (terdapat check box Kirim MMS), Motion (terdapat check box

Simpan Pergerakan), Help (terdapat About yang berisi deskripsi

peringatan dini dan cara penggunaan), tab page CCTV (terdapat

tampilan hasil tangkapan web camera baik terjadi pergerakan atau

tidak, terdapat empat buah hasil tangkapan Iweb camera yang dapat

dipilih), tab page MMS(terdapat GSM/GPRS modem, MMS server

setting, MMS message, dan Result), dan tab page View(terdapat

tanggal, waktu dan tampilan kejadian). Jika pengguna men-checklist

combo box kirim MMS, MMS akan secara otomatis dikirimkan oleh

program jika terdeteksi gerakan.

b. Antar Muka Menu MMS

Page 71: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

58

MMS Motion Help

CCTV

Kirim MMS

MMS VIEW

fps

Pada menu MMS, terdapat check box Kirim MMS. Jika

pengguna men-checklist, program akan mengirimkan MMS secara

ootmatis bila terjadi pergerakan.

c. Antar Muka Menu Motion

MMS Motion Help

Simpan Saat Pergerakan CCTV MMS VIEW

fps

Pada menu Motion, terdapat check box Simpan Saat

Pergerakan. Jika pengguna men-checklist, program akan menyimpan

pergerakan dalam bentuk .avi.

d. Antar Muka Menu Help

Page 72: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

VIEW

GPRS/GSM Setting

MMS Server Setting

MMS Message

Result

59

MMS Motion Help

About CCTV MMS

How To

fps

Pada menu Help, terdapat About dan How to. Menu About

merupakan informasi tentang penulis dan menu Menu How To

merupakan informasi mengenai aplikasi dan cara penggunaanya..

e. Antar muka TabPage MMS

MMS Motion Help

CCTV MMS VIEW

fps

Pada antar muka TabPage MMS terdapat empat bagian.

Bagian pertama, pengguna harus memilih modem yang digunakan.

Bagian kedua, pengguna harus memasukkan APN, gateway dan server

operator GSM, login, dan password. Bagian ketiga, pengguna harus

memasukan nomor tujuan, from, subject, dan body. Bagian keempat,

Page 73: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

Nama FIle

60

pengguna akan mendapatkan laporan berhasil atau tidak pada saat

pengiriman MMS.

f. Antar muka TabPage VIEW

MMS Motion Help

CCTV MMS VIEW

Kalender Hasil Rekaman Video

fps

Antar muka VIEW terdiri dari tiga bagian, yaitu bagian

kalender, bagian database dan bagian untuk menampilkan hasil

rekaman video.

g. Antar muka About

MMS Motion Help

CCTV MMS VIEW

About

-Peringatan Dini PERINGATAN DINI -Penggunaan

fps

Antar muka Help berisi informasi tentang aplikasi

peringatan dini dan cara penggunaan.

Page 74: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

61

4.3 Construction

Alat yang digunakan antara lan sebuah komputer untuk membangun

perangkat lunak, sebuah web camera dan dua buah telepon selular yang

digunakan untuk melakukan uji coba perangkat lunak yang telah dibangun.

Perangkat keras yang digunakan pengguna untuk melakukan

implementasi memiliki spesifikasi minimum sebagai berikut :

1. Processor Pentium IV 2.4 Ghz

2. Harddisk 80 GB

3. DDR RAM 1 GB

4. Perangkat masukkan keyboard dan mouse

5. Perangkat keluaran monitor

6. Telepon Selular yang dapat mengirimkan dan menerima MMS, serta

teknologi GPRS.

Adapun perangkat lunak yang digunakan untuk membangun aplikasi

adalah :

1. Sistem Operasi Windows XP Service Pack 2

2. Microsoft Visual Studio 2008

Perangkat lunak dibangun menggunakan bahasa pemrograman C# dengan

teknologi .NET. Hasil implementasi diujikan pada web camera dan telepon selular

Nokia 3110 Classic.

4.3.1 Batasan Implementasi

Pada tugas akhir ini, perangkat lunak yang akan dibangun memiliki

batasan sebagai berikut :

Page 75: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

62

1. Perangkat lunak hanya melakukan koneksi ke telepon selular

sebagai modem GPRS

2. Perangkat lunak yang dibangun dapat dijalankan pada selular

yang dapat mendukung aplikasi MMS dan GPRS.

4.3.2 Implementasi Kelas

Kelas-kelas yang telah dirancang diimplementasikan dengan

menggunakan bahasa pemrograman C#.

1. Deskripsi Kelas

Pada Tabel 4.6 dapat dilihat daftar implementasi kelas-

kelas yang ada pada perangkat lunak beserta keterangannya.

Tabel 4.6 Daftar Implementasi Kelas Nama Kelas Nama File Keterangan FormUtama FormUtama.cs Kelas ini menangani

pendeteksian perangkat web camera, menangkap gambar,

menampilkan video, dan

mengirimkan MMS MotionDetector MotionDetetctor.cs Kelas ini mengolah video

yang telah ditangkap oleh web

camera untuk didetetksi

apakah terjadi pergerakan atau

tidak. RekamanINfo RekamanInfo.cs Kelas ini akan menampung

field dari tabel rekaman.

2. Operasi dan Atribut

1. Kelas FormUtama

Daftar hasil implementasi operasi dari kelas

FormUtama dapat dilihat pada Tabel 4.7 dan implementasi

atribut dari kelas FormUtama dapat dilihat pada Tabel 4.8.

Tabel 4.7 Daftar Operasi dari Kelas FormUtama

Nama Operasi Visibility

(Private, Public) Keterangan

aboutToolStripM Private Tentang Penulis

Page 76: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

63

enuItem_Click( )

AmbilDataBy

Tanggal( ) Public Mengambil data dari table Rekaman

BuatAVI( ) Private Menyimpan file dalam bentuk .avi

camera_Alarm( ) Private Menentukan waktu penyimpanan saat

terjadi alarm

camera_NewFra

me( ) Private Menyimpan frame

chkKirim_Check

edChanged( ) Private Memeriksa combo box kirim

CloseFile( ) Private Menutup Program

dataGridView1_

CellClicl( ) Private Menentukan row yang akan menjadi

acuan untuk melihat rekaman video

exitToolStripMe

nuItem_Click( ) Private Menutup program melalui menu

FormUtama( ) Public Inisialisasi komponen, memanggil

fungsi setModem dan AmbilData

FormUtamaFrom

Closing( ) Private Menutup Program

GetResult( ) Private Memberikan laporan saat pengiriman

MMS

InsertData( ) Protected Memasukkan data

LinkProviders_L

inkClicked( ) Private Penyedia link

openLocalDevice

ToolStripMenuIt

em_Click( )

Private Memeriksa combo box kirim

OpenVideoSourc

e( ) Private Membuka web camera yang telah

terpasang

SendMMS( ) Private Mengirimkan MMS

setModem( ) Private Menyiapkan Modem

tabControl1_Clic

k( ) Private Mengambil data

timer_Tick( ) Private Waktu

Tabel 4.8 Daftar Atribut dari Kelas FormUtama

Nama Atribut Visibility

(Private,

Public)

Tipe

cameraWindow Private CameraWindow

ConnectionStrin

g Private String

Page 77: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

64

detector Private IMotionDetector

frameReady Private Boolean

frames Private Bitmap

gambar Private Bitmap

intervalsToSave Private Int

objMMSConnect

ion Public MM!Connection

objMMSMessag

e Public MMSMessage

openFileDialog1 Private OpenFileDialog

saveFileDialog1 Private SaveFileDialog

saveOnMotion Private Boolean

sendImage Private String

sqlComm Private SQLConnection

sqlConn Private SQLCommand

statCount Private Int

statIndex Private Int

statLength Private Int

statReady Private Int

writer Private AVIWriter

2. Kelas MotionDetector

Daftar hasil implmentasi operasi dari kelas

MotionDetector dapat dilihat pada Tabel 4.9 dan

implementasi atribut dari kelas MotionDetector dapat dilihat

pada Tabel 4.10.

Tabel 4.9 Daftar Operasi dari Kelas MotionDetector

Nama Operasi Visibility

(Private,

Public)

Keterangan

MotionDetector( ) Public Penerapan motion detector

ProcessFrame( ) Public Proses frame baru

Reset( ) Public MeMemasang kembali untuk inisialisai

keadaan

Page 78: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

65

Tabel 4.10 Daftar Atribut dari Kelas MotionDetector

Nama Atribut Visibility

(Private,

Public)

Keterangan

backgroundFrame Private Bitmap

bitmapData Private BitmapData

blobCounter Private BlobCounter

calculateMotionLevel Private Boolean

counter Private Int

diffrenceFilter Private Difference

grayscaleFilter Private IFilter

height Private Int

moveTowardsFlter Private MoveTowards

numberBitmaps Private Bitmap

pixellateFilter Private IFilter

pixelsChanged Private Int

ProcessingFilter1 Private FilterSequence

thresholdFilter Private Threshold

width Private Int

3. Kelas RekamanInfo

Daftar hasil implmentasi atribut dari kelas RekamanInfo

dapat dilihat pada Tabel 4.11.

Tabel 4.11 Daftar Atribut dari Kelas RekamanInfo

Nama Atribut Visibility

(Private,

Public)

Keterangan

_id Private Int

_namaFile Private String

_tanggal Private DateTime

4.3.3 Implementasi Antar Muka

Subbab ini berisi gambar-gambar hasil implementsi antar muka

dari perangkat lunak yang telah dibangun. Gambar hasil implementasi

tersebut merupakan gambar dari emulator (dapat dilihat pada Lampiran)

Page 79: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

66

Pada Tab page MMS, bagian MMS Server Setting disesuaikan

dengan operator yang digunakan. Dalam hal ini penulis menggunakan

operator XL. Berikut beberapa cara pengisian untuk operator lain :

Tabel 4.12 Daftar Operator Nama

Operator APN Gateway Login Password Server

Matrix indosatmms 10.19.19.19 indosat indosat http://mmsc.indosat.com

IM3 indosatmms 010.019.019.019 indosatmms indosatmms http://mmsc.indosat -im3.net

SIMPATI mms 10.1.89.130 wap Wap123 http://mms.telkomsel.com

AXIS AXISmms 10.8.3.8 AXIS 123456 http://mmsc.AXIS

3(THREE) 3mms 10.0.4.10 3mms 3mms http://mms.hutch.co.id

4.4 Pengujian (Testing)

Pengujian yang dilakukan merupakan pengujian perangkat lunak yang

terdiri dari dua bagian yaitu pengujian dengan NUnit dan pengujian dengan

black box.

4.4.1 Pengujian Perangkat Lunak

Pengujian perangkat lunak dilakukan pada level unit

menggunakan alat bantu Nunit dan pada level sistem menggunakan

pendekatan black box.

1. Pengujian level unit menggunakan alat bantu NUnit

Pengujian ini dilakukan dengan melakukan pengujian

terhadap fungsi-fungsi yang penting.

Berikut ini adalah contoh salah satu pengujian yang

dilakukan terhadap fungsi setModem. Fungsi setModem adalah

fungsi yang mencari modem yang telah terinstal dan terhubung

dengan komputer.

Page 80: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

67

/// <summary> ///A test for setModem ///</summary> [TestMethod()]

[DeploymentItem("PeringatanDini.exe")] public void setModemTest() {

FormUtama_Accessor target = new FormUtama_Accessor(); // TODO: Initialize to an

appropriate value

target.setModem();

Assert.AreNotEqual(null,

target.objMMSConnection.Device); }

Fungsi testing ini akan mencek apakah fungsi setModem

dapat mendeteksi adanya selular yang dijadikan modem sudah

terpasang ke komputer atau belum.

Apabila fungsi testing ini berjalan dengan baik, maka kolom

Result akan menampilkan status ”passed” seperti gambar dibawah

ini:

Gambar 4.4 Hasil Unit Testing Method OpenVideoSource

pada Kelas FormUtama

Gambar 4.5 Hasil Unit Testing Method BuatAVI

pada Kelas FormUtama

Page 81: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

.

68

Gambar 4.6 Hasil Unit Testing Method MotionDetector

pada Kelas MotionDetector

Gambar 4.7 Hasil Unit Testing Method SendMMS

pada Kelas FormUtama

Gambar 4.8 Hasil Unit Testing Method AmbilDataByTanggal

pada Kelas FormUtama

Gambar 4.9 Hasil Unit Testing Method setModemTest

pada Kelas FormUtama

2. Pengujian level sistem menggunakan pendekatan Black Box

Pengujian ini dilakukan untuk mengetahui apakah perangkat

lunak yang telah dibangun dapat berjalan dengan baik atau tidak.

Tata cara pengujian ini adalah dengan memonitoring suatu ruangan

Page 82: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

69

dan dilakukan pergerakan agar terdeteksi adanya gerakan, gambar

yang telah di-capture dkirimkan ke telepon selular lain. Hasil

pegujian perangkat lunak dapat dilihat pada Tabel 4.13 dan hasil

pengujian motion detection dapat dilihat pada Tabel 4.14.

Tabel 4.13 Pengujian Perangkat Lunak No Gambar yang Dikirim

oleh Personal Computer (PC)

Gambar yang

Diterima oleh

Pengguna (Telepon Selular)

Ukuran Gambar

Video yang Tersimpan

2009-7-13 22-56-14.jpg 2009-7-13 22-56- 14.jpg

5.30 KB 2009-7-13 22-56-15.avi

2009-7-13 22-56-19.jpg 2009-7-13 22-56- 19.jpg

5.64 KB 2009-7-13 22-56-20.avi

2009-7-13 22-56-24.jpg 2009-7-13 22-56- 24.jpg

6.55 KB 2009-7-13 22-56-25.avi

2009-7-13 22-56-29.jpg 2009-7-13 22-56- 29.jpg

6.95 KB 2009-7-13 22-56-30.avi

2009-7-13 22-56-34.jpg 2009-7-13 22-56- 34.jpg

7.02 KB 2009-7-13 22-56-35.avi

Berikut keterangan gambar dari tabel 4.20

1. 2009-8-5 13-15-56.jpg

2. 2009-8-6 7-27-8.jpg

Page 83: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

70

3. 2009-8-6 7-31-33.jpg

4. 2009-8-6 7-31-38.jpg

5. 2009-8-6 7-31-42.jpg

Berikut adalah tampilan mms pada telepon Selular

Page 84: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

71

Tabel 4.14 Pengujian Motion Detection

Threshold Gambar yang Terdeteksi

Keterangan

5 0 Tidak terdeteksi adanya

pergerakan karena MotionLevel

kurang dari 5 1 0 Tidak terdeteksi adanya

pergerakan karena MotionLevel

kurang dari 1 0.5 3 Terdeteksi adanya pergerakan

karena MotionLevel lebih dari

0.5 0.1 4 Terdeteksi adanya pergerakan

karena MotionLevel lebih dari

0.1 0.05 5 Terdeteksi adanya pergerakan

karena MotionLevel lebih dari

0.05 0.01 5 Terdeteksi adanya pergerakan

karena MotionLevel lebih dari

0.01 0.005 6 Terdeteksi adanya pergerakan

karena MotionLevel lebih dari

0.005

Hal ini dapat dilihat pada kelas camera.cs berikut potongan kodenya:

// check motion level

if (

( motionDetecotor.MotionLevel >= alarmLevel ) && ( Alarm != null )

) {

Alarm( this, new EventArgs( ) ); }

Pada potongan kode diatas terdapat alarmLevel yang

merupakan nilai dari threshold(nilai ambang), nilai threshold ini

dimasukkan oleh pengguna (dapat dilihat pa tabel 4.14). Penulis

menggunakan nilai threshold 0.005 berdasarkan hasi percobaan

diatas. Sedangkan nilai MotionLevel (nilai alarm yang sedang

terjadi) didapat dari kelas MotionDetector :

// Motion level - amount of changes in percents public double MotionLevel

{

Page 85: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

72

get { return (double) pixelsChanged / ( width * height ); }

}

Width merupakan nilai lebar dari image dan height

merupakan nilai tinggi dari image. Nilai pixelsChanged (banyaknya

pixel yang berada dalam kotak merah) diberi nilai awalan nol,

kemudian jika terdapat perbedaan pixel, akan dijalankan proses

dibawah ini :

pixelsChanged += rc.Width * rc.Height;

Nilai rc.Width merupakan lebar pixel putih (pixel yang

berubah), dan rc.Height merupakan nilai tinggi pixel putih.

4.4.2 Analisis Hasil Pengujian

Berdasarkan hasil pengujian fitur motion detection dan MMS

gateway berjalan sesuai dengan diinginkan, seperti terlihat pada

Tabel 13. Oleh karena itu, dapat disimpulkan bahwa perangkat lunak

yang telah dibangun sesuai dengan tujuan penelitian ini.

Pada Tabel 4.14 dapat terlihat bahwa jumlah gambar yang

terdeteksi sama dengan jumlah gambar yang dikirim ke pengguna

dan diterima pengguna. Saat terdeteksi adanya gerakan, program

juga dapat menyimpan file tersebut dalam bentuk video sesuai

dengan gambar yang dikirimkan dan diterima oleh pengguna. Pada

Tabel 4.14 dapat dilihat bahwa pergerakan dapat terdeteksi jika nilai

MotionLevel harus kurang dari atau sama dengan nilai threshold.

Kesimpulan terakhir bahwa motion detection dan MMS gateway

Page 86: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

73

dapat diterapkan pada proses peringatan dini untuk sistem keamanan

rumah tinggal.

4.5 Implementasi

Tahap akhir dalam pengembangan sistem RAD adalah implementasi,

yaitu menerapkan sistem yang telah dikembangkan untuk sistem keamanan

rumah tinggal.

Page 87: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

75

BAB V

PENUTUP

5.1 Kesimpulan

Berdasarkan uraian dan pembahasan pada bab-bab sebelumnya, maka dapat

ditarik kesimpulan bahwa :

1. Berdasarkan pengujian dengan NUnit, aplikasi ini dapat berjalan sesuai dengan

tujuan, analisis, dan desain yang telah dirancang, sehingga aplikasi ini dapat

mendukung peringatan dini untuk sistem rumah tinggal. (Hal ini dapat dilihat

pada sub bab 4.5.1)

2. Penerapan motion detection mampu menginformasikan kepada pengguna

pergerakan yang terjadi pada objek yang diamati. (Hal ini dapat dilihat pada sub

bab 4.5.2)

3. Berdasarkan pengujian black box yang dilakukan, alpikasi ini dapat dijadikan

aplikasi peringatan dini untuk rumah tinggal, karena dapat langsung

memberitahukan pemilik rumah saat ada pergerakan pada ruangan yang

dimonitoring. (Hal ini dapat dilihat pada sub bab 4.5.2).

4. Aplikasi ini memiliki fungsi yang sama dengan kamera pengawas, yaitu

memantau rumah tinggal serta dilengkapi dengan peringatan dini dan biaya yang

lebih terjangkau. Hal ini dapat dilihat pada tabel 5.1.

Tabel 5.1 Perbandingan Biaya CCTV dan Aplikasi

Kamera CCTV

(Terdiri dari kamera

CCTV, DVR, dan kabel)

Aplikasi yang dibuat

(Terdiri dari web camera dan

kabel USB)

Page 88: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

1 Kamera 3.850.000 130.000

Page 89: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

76

2 Kamera 4.550.000 260.000

3 Kamera 5.25.000 390.000

4 Kamera 5.950.000 520.000

5.2 Saran

Berdasarkan kesimpulan-kesimpulan yang telah dikemukakan, dapat diajukan

beberapa saran untuk pengembangan lebih lanjut antara lain :

1. Personal Computer (PC) sebaiknya ditempatkan dalam ruang yang tidak

diketahui oleh orang lain.

2. Disarankan adanya pengembangan aplikasi ini yang tadinya berbasis jaringan

yang hanya bisa diakses oleh PC server saja, menjadi aplikasi yang berbasis web

(internet) sehingga user dapat mengakses aplikasi ini kapan saja dan dimana saja.

3. Aplikasi ini belum dapat membedakan pemilik rumah atau tidak. Disarankan

adanya pengembangan berupa kecerdasan buatan yang dapat mengidentifikasi

objek yang bergerak adalah pemilik rumah tinggal atau orang lain.

4. Jika pengguna menginginkan aplikasi dapat langsung menyala jika terjadi

penurunan listrik atau mati listrik, aplikasi dapat di setting secara autorun.

Page 90: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

DAFTAR PUSTAKA

[1] Andrew Hunt, David Thomas: Pragmatic Unit Testing in C# with NUnit, 2nd Ed.

The Pragmatic Bookshelf, Raleigh 2007, ISBN 0-9776166-7-3.

[2] C. Stauffer and W. E. L. Grimson: Adaptive background mixture models for real-

time tracking. 1999. Proc. IEEE Conf. Comput. Vision and Pattern Recogn.

[3] Gonzalez C.Rafael, Woods E.Richard: Digital Image Processing, 2nd Ed. Tom

Robbins 2002, ISBN 0-201-18075-8.

[4] Handojo. A: Aplikasi Security Surveillance System Menggunakan Webcam dan

HP dengan Fasilitas General Packet Radio Services dan MMS. 2005. Universitas

Kristen Petra Surabaya.

[5] Kirillov Andrew. http://www.codeproject.com/KBaudio-video/Motion_Detection.

aspx. 5 April 2009, Pukul 14.10.00 WIB

[6] Moore. D, Areal : A Real System for Human Motion Detection and Tracking.

2003 : 9. California Institute of Technology.

[7] Pohan. R: Pengembangan Sistem Informasi Inventori Berbasis Jaringan Local

Area Network (LAN) pada PT. Mitra Mega Semesta (DoctoRabbit). 2009 : 19.

UIN Syarif Hidayatullah Jakarta.

[8] Putra, S.I.R. Implementasi Algoritma Advanced Encryption Standard dengan Tiga

Mode Operasi Block Chiper pada Aplikasi MMS Kriptografi Berbasis J2ME. IT

Telkom.2009. http://www.ittelkom.ac.id/library/index.php?option=com_content&

view=article&id=508:multimedia-messaging-service-mms&catid=17:sistem-

komunikasi-bergerak&Itemid=15. 4 April 2009, Pukul 19.15.20 WIB

Page 91: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...

[9] Supardi: Analisis Penerapan Algoritma String Matching pada Aplikasi Pencarian

Berkas di Komputer. 2009:44. UIN Syarif Hidayatullah Jakarta.

[10] W. Gulo, Metodologi Penelitian, Grasindo (Gramedia Widiasarana Indonesia),

Jakarta, 2002.

[11] Wiley John : Mobile Technologies and Services:SMS,EMS,MMS. 2003. ISBN 0-

470-84876-6

[12] http://www.aforgenet.com/framework/v2.html. 18 Mei 2009, Pukul 25.10.35

[13] http://www.firebenchmarks.com/Modules/ContentItems/Public/ContentItems_ View

.aspx?RCICode=rci_001&viewRSS=1&view. Print=1. 21 Juli 2009, Pukul

15.10.05

[14] http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-334.pdf.

21 Juli 2009, Pukul 15.10.05

[15] http://www.ittelkom.ac.id/library/index.php?option=com_content&view=section

&id=3&Itemid=15. 21 Juli 2009, Pukul 15.31.55

[16] http://kkb-sistemcctv.blogspot.com/2008/09/beberapa-pilihan-sistem-cctv-

sistem.html. 5 April 2009, Pukul 14.21.05 WIB

[17] http://www.lantas.metro.polri.go.id/ _datamenu/poldaJakarta.php.htm. 26 Mei

2009, Pukul 11.05 WIB

[18] http://www.microsoft.com/net/overview.aspx. 21 Juli 2009, Pukul 10.20.45 WIB

[19] http://rachmans.com/image_artikel.htm. 18 Mei 2009, Pukul 20.15.23 WIB

[20] http://www.oware.com/Subpages/radmethodology.htm.

21 Juli 2009, Pukul 15.20.25

Page 92: PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ...