PROGRAM STUDI TEKNIK INFORMATIKA FAKUTAS SAINS DAN ... · penerapan motion detection untuk...

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 ... · penerapan motion detection untuk...

  • 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

  • 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

  • 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

  • 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

  • 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

  • Akhir kata, semoga skripsi ini bermanfaat khususnya kepada penulis

    sendiri dan bagi yang membacanya.

    Jakarta, 13 Januari 2010

    Lia Rainingsih

    105091002913

    x

  • 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

  • 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

  • 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

  • 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

  • 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

  • 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

  • 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.

  • 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

  • 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

  • 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 :

  • 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

  • 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

  • 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.

  • 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

  • 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:

  • 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

  • 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( );

  • 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

  • 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

  • 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

  • 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.

  • 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

  • 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 :

  • 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]

  • 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

  • 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

  • 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

  • 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.

  • 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.

  • 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

  • 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

  • 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

  • 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

  • 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-

  • 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

  • 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

  • 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

  • 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

  • 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,

  • 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.

  • 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.

  • 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

  • 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

  • 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

  • 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)

  • 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.

  • 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

  • Gambar 3.1 Ilustrasi Metodologi Penelitian

  • 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.

  • 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

  • 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

  • 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.

  • 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

  • 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.

  • 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,

  • 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

  • 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.

  • 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

  • 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

  • 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 :

  • 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