Post on 20-Oct-2020
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