Abstraksi dan Desain Interface

3.2. Abstraksi dan Desain Interface

Setelah selesai melakukan tahap persiapan, pembaca kini sudah siap untuk membuat aplikasi. Namun sebelumnya jika pembaca cukup sabar, dan berminat dengan ide penulis, mari kita deskripsikan dulu tujuan kita membuat program dengan bahasa alami bahasa ibu programmer untuk membantu mendeskripsikan idenya. “Penulis ingin membuat aplikasi di mana aplikasi tersebut dapat mengendalikan webcam input untuk mendeteksi gerakan motion detection secara otomatis process dari rekaman realitas video recoring dan dapat menyimpannya output di folder yang sudah disediakan storage media.” Beranjak ke model perintah yang sedikit rumit, penulis akan menjabarkan perintah tadi dengan abstraksi, agar dapat fokus ke objek yang akan diimplementasikan. Penulis akan memulai dengan memecah persoalan untuk mendapatkan domain solusi, dan berikut hasil abstraksi penulis :

1. Abtraksi Pertama dan Hasil Interfacenya

Untuk membuat aplikasi ini, dibutuhkan lima penyusun utama, penampil penampil berjumlah dua, display rekaman realitas, dan display motion detect, tombol yang mengontrol webcam untuk memulai motion detect, tombol untuk menghentikan motion detect, tombol untuk memilih sensitifvitas, dan tombol untuk memilih perangkat capture webcam. Gambar 23 : Interface Hasil Abstraksi Pertama DISPLAY REKAMAN REALITAS DISPLAY MOTION DETECT SELECT SOURCE MULAI STOP SENSITIFITAS

2. Abstraksi Kedua dan Hasil Interfacenya

Tombol untuk memulai dan menghentikan dapat dijadikan satu, dengan logika percabangan. Karena pada display hasil motion detect, diinginkan gambar mudah tersimpan dengan ukuran sama yang mendukung konsep array maka penampil gambar ditambahkan lagi satu komponen sebagai tempat gambar agar mudah dikonversi yaitu PictureBox. Agar rapi kedua penampil lebih baik dijadikan grup masing-masing dengan groupbox. Gambar 24 : Interface Hasil Abstraksi Kedua Selesai mengabstraksikan objek pada abstraksi kedua, berarti kita sudah dapat mulai mengidentifikasi bagaimana objek akan diimplementasikan. Select source diimplementasikan dengan pemilihan sumber device, startstop selain mengganti label, juga berisi implementasi mulai atau menghentikan capture menggunakan genericFilter. Dan terakhir, pada sensitifitas, penulis akan membandingkan nilai sensitifitas gerakan berupa filter frekuensi sesuai efek doppler dengan video rekaman realitas. DISPLAY REKAMAN REALITAS PENAMPIL GAMBAR SELECT SOURCE STARTSTOP SENSITIFITAS PICTURE BOX

3. Abstraksi DirectShow Filter Perancangan Proses Aplikasi

Selesai mendesain interface mari kita rancang proses yang bekerja di dalamnya. Adapun dengan mengacu bahasa alami dan abstraksi sebelumnya, kita dapatkan DirectShow filter sebagai berikut : Gambar 25 : Abstraksi Komunikasi Data dengan DirectShow Keterangan : A : Filter Source untuk mendapatkan sumber device B : Filtergraph IMedia Control memulai prosedur capture C : Filter iMediaEvent pemantauan event D : Prosedur genericFilter1_ProcessData untuk pembanding motion detect efek doppler –kirim ke outputpin dan olah ke motion detect- E : Filter Transform mengubah menjadi gambar .bmp F : Filter Rendering dan IvideoWindow keduanya berperan dalam menampilkan

4. Implementasi Penggerak Proses dengan VisionLab

Sebelumnya kita sudah mengetahui bahwa VisionLab akan memudahkan kita hingga setengah jalan jika sudah benar dalam mendefinisikan filter-filter sebagai komponen komunikasi data. Sekarang kita kerjakan setengah jalan yang lain, agar komunikasi data aplikasi ini menjadi jelas. Ibarat memerintah karyawan, seorang bos dalam kasus kita sebelumnya, ia juga harus membayangkan jalan dan transportasi apa yang digunakan karyawannya agar misinya berhasil. Berikut komunikasi data dari proses yang diimplementasikan dengan “penggerak proses” atau objek-objek yang akan kita komunikasikan hingga membentuk komunikasi data webcam berbantu komputer untuk mendeteksi gerakan secara otomatis : A B C D E Gambar 26 : Implementasi Komunikasi Data Objektif Motion Detection

3.3. Implementasi Pembuatan Aplikasi