-
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