Anda di halaman 1dari 45

PROPOSAL PENELITIAN

IMPLEMENTASI PENGENALAN WAJAH PADA CCTV


SECARA REAL-TIME BERBASIS INTERNET OF THINGS

ILHAM NATSIR T. BATTOA


NIM. 217280197

PROGRAM STUDI TEKNIK INFORMATIKA


FAKULTAS TEKNIK
UNIVERSITAS MUHAMMADIYAH PAREPARE
2022
ii

HALAMAN PERSETUJUAN

IMPLEMENTASI PENGENALAN WAJAH PADA CCTV


SECARA REAL-TIME BERBASIS INTERNET OF THINGS

ILHAM NATSIR T. BATTOA


NIM. 217280197

Setetelah diperiksa/diteliti maka proposal ini dapat diajukan untuk mengikuti


seminar proposal

Parepare, 27 April 2022


Komisi Pembimbing

Pembimbing I Pembimbing II

Muh. Basri, ST., MT. Ahmad Selao, S.TP., M.Sc.


NBM. 957 773 NBM. 856 590

Mengetahui:
Ketua Program Studi
Teknik Informatika

Marlina, S.Kom., M.Kom.


NBM. 1162 680
iii

KATA PENGANTAR

Bismillahirrahmanirrahim

Alhamdulillahi rabbil ‘alamin, puji syukur kita panjatkan kepada Allah

Subahanahu wa Ta’ala, yang selalu mencurahkan rahmat dan hidayah-Nya kepada

penulis, sehingga penulis dapat meneyelsaikan Proposal penelitian ini sebagai

syarat untuk mulai melakukan penelitian skripsi pada Universitas Muhammadiyah

Parepare (UM Parepare). Tak lupa pula kita kirimkan Shalawat serta salam kepada

baginda Rasulullah Muhammad Sallallaahu ‘Alaihi Wasallam, sebagai seseorang

yang dapat memberikan syafa’atnya kelak kepada kita In Syaa Allah.

Adapun judul penelitian yang penulis rencanakan pada proposal ini adalah

“Implementasi Pengenalan Wajah pada CCTV Secara Real-Time Berbasis Internet

of Things”. Tentu saja banyak faktor kemampuan, pengetahuan dan pengalaman

pada penulis sehingga penulis masih memiliki keterbatasan dalam penelitian ini.

Meskipun masih jauh dari kata kesempurnaan, penulis berharap proposal ini

bermanfaat tidak hanya bagi penulis pribadi, tetapi juga bermanfaat untuk pembaca

pada umumnya. Untuk itu, penulis mengharapkan kritik dan saran dari pembaca.
iv

Akhir kata, penulis berharap proposal ini menambah manfaat dan

pengetahuan bagi pribadi penulis dan pembaca pada umumnya.

Parepare, 08April 2022


Penulis

Ilham Natsir T. Battoa


NIM. 217280197
v

DAFTAR ISI

HALAMAN JUDUL i

HALAMAN PERSETUJUAN ii

KATA PENGANTAR iii

DAFTAR ISI v

DAFTAR TABEL vii

DAFTAR GAMBAR viii

BAB I PENDAHULUAN 1

A. Latar Belakang 1

B. Rumusan Masalah 2

C. Batasan Masalah 2

D. Tujuan Penelitian 2

E. Manfaat Penelitian 3

F. Sistematika Penulisan 3

BAB II TINJAUAN PUSTAKA 5

A. Tinjauan Penelitian Terdahulu 5

B. Sistem Pengenalan Wajah / Facial Recognition System 6

C. Dlib 7

D. Python 7

E. PyCharm 9

F. Library 10

G. Face_recognition Library 11

H. NumPy 17

I. OpenCV 18
vi

J. Webcam 18

K. Flowchart 19

L. Unified Modelling Language(UML) 21

M. Kerangka Pikir 28

BAB III METODE PENELITIAN 29

A. Jenis Penelitian 29

B. Tempat dan Waktu Penelitian 29

C. Alat dan Bahan Penelitian 29

D. Desain Sistem 30

E. Metode Pengumpulan Data 33

F. Metode Pengujian 34

DAFTAR PUSTAKA 36
vii

DAFTAR TABEL

Halaman
Tabel 2.1 Simbol Flowchart 20

Tabel 2.2 Simbol Use Case Diagram 23

Tabel 2.3 Simbol Class Diagram 25

Tabel 2.4 Simbol Sequence Diagram 26

Table 2.5 Simbol Statechart Diagram 26

Table 2.6 Simbol Activity Diagram 27

Table 3.1 Spesifikasi Perangkat Keras 30

Table 3.2 Spesifikasi Perangkat Lunak 30


viii

DAFTAR GAMBAR

Halaman
Gambar 2.1 Penggunaan Sistem Pengenalan

Wajah Pada Bandara 7

Gambar 2.2 Top Computer Language 2021 8

Gamaba 2.3 PyCharm IDE 10

Gambar 2.4 Deteksi Letak Wajah 12

Gambar 2.5 Hasil Encoding 128 Dimension Array 13

Gambar 2.6 Hasil Pencocokan 1 Training Image


Dengan 2 Image Baru 13
Gambar 2.7 Struktur CNN 15

Gambar 2.8 Fitur HOG Pada Wajah 16

Gambar 2.9 Hasil HOG Sebuah Gambar 17

Gambar 3.1 Use Case Diagram 25

Gambar 3.2 Flowchart Diagram 26


BAB I

PENDAHULUAN

A. Latar Belakang

Wajah adalah organ pusat untuk ekspresi, pengenalan dan komunikasi manusia.

Wajah tersebut merukapan salah satu ukuran fisiologis yang digunakan untuk

membedakan suatu individu dengan individu lainnya. Dengan mengingat wajah

seseorang, maka suatu individu dapat melakukan penetapan identitas orang yang

diingatnya untuk melakukan identifikasi, salah satunya yaitu nama.

Teknologi identifikasi telah banyak dikembangkan saat ini, seperti identifikasi

sidik jari, telapak tangan dan wajah. Deteksi wajah merupakan subjek penelitan

yang penting dibidang pengenalan pola dan computer vision. Deteksi wajah telah

banyak diimplementasikan pada aplikasi yakni seperti sistem otentikasi, sistem

absensi bahkan paspor elektronik.

Sistem pengamanan suatu ruangan dapat dilakukan oleh manusia dengan

melakukan pengamatan, namun pengamatan wajah secara langsung oleh manusia

mempunyai kelemahan karena kelelahan dan kejenuhan yang terjadi, sehingga

dapat menyebabkan menurunnya ketelitian. Karena itu penggunaan komputer dapat

menjadi alternatif solusi. Dengan memanfaatkan teknologi computer vision, sistem

pengamanan akan menjadi lebih ekstra ketimbang pengamanan tersebut hanya

dilakukan oleh manusia.


2

Berdasarkan uraian latar belakang tersebut, maka penulis melakukan penelitian

yang berjudul “Implementasi Teknologi Pengenalan Wajah pada CCTV Secara

Real-Time Berbasis Internet of Things ”.

B. Rumusan Masalah

Berdasarkan dari uraian latar belakang diatas, maka rumusan masalah yang

akan dibahas adalah bagaimana pengimplementasian teknologi computer vision

secara real-time pada CCTV?

C. Batasan Masalah

Penelitian ini memiliki beberapa batasan masalah dengan haraapan penelitian

terfokus dengan batasan-batasan yang dibuat. Adapun batasan masalah tersebut

adalah sebagai berikut:

1. Sistem menggunakan Webcam sebagai alternative prototype.

2. Sistem yang dirancang berbasis desktop application.

3. Sistem ini mendeteksi wajah dan menampilkan sebuah nama.

4. Lingkup sampel data adalah dalam lingkungan Universitas

Muhammadiyah Parepare

D. Tujuan Penelitian

Sesuai dengan permassalahan dan batasan masalah yang telah diuraikan diatas,

maka tujuan penelitian ini adalah untuk mengetahui implementasi teknologi

computer vision pada cctv secara real-time.

2
3

E. Manfaat Penelitian

Manfaat dari penelitian ini adalah untuk dapat mengetahui pemanfaatan

teknologi computer vision pada cctv.

F. Sistematika Penulisan

Agar pembahasan lebih sistematis, maka tulisan ini dibuat dalam lima bab,

yaitu:

BAB I PENDAHULUAN

Berisi tentang uraian latar belakang pemilihan judul Implementasi

Pengenalan Wajah pada CCTV secara Real-Time Berbasis Internet of Things,

rumusan masalah, batasan masalah, tujuan penelitian dan sistematika penulisan.

BAB II TINJAUAN PUSTAKA

Dalam bab ini berisikan tentang teori-teori yang berkaitan dengan computer

vision, Bahasa pemrograman python, library, PyCharm IDE.

BAB III METODE PENELITIAN

Dalam bab ini menjelaskan mengenai tahapan-tahapan yang dilalui dalam

penyelesaian penelitian ini, yaitu tempat penelitian, waktu penelitian, metode

pengumpulan data, alat, dan bahan penelitian, tahapan penelitian, metode pengujian

serta gambaran desain sistem yang akan dirancang dan dibuat.

BAB IV HASIL PENELITIAN DAN PEMBAHASAN

Dalam bab ini menjelaskan mengenai rancangan sistem yang telah dibuat,

metode dan teknik pengujian

3
4

BAB V KESIMPULAN DAN SARAN

Dalam bab ini dipaparkan mengenai kesimpulan dan saran dari hasil.

4
BAB II

TINJAUAN PUSTAKA

A. Tinjauan Penelitian Terdahulu

Pada penelitian Aditya Santoso, (2018) yang berjudul “Implementasi Deep

Learning Berbasis KERAS Untuk Pengenalan Wajah” memiliki kelebihan yaitu

menggunakan library Keras dan menerapkan metode Convolutional Neural

Network(CNN) yang menghasilkan tingkat akurasi mencapai 98.57% berdasar

pengujian terhadap data yang telah di testing. Adapun kelemahan penelitian ini

yaitu penerapan sistem yang masih belum real-time, sehingga penetlitian

selanjutnya yang saya lakukan yaitu dengan menerapkan secara real-time.

Pada penelitian Sayeed Al-Aidid, Daniel S. Pamungkas, (2018) yang berjudul

“Sistem Pengenalan Wajah dengan Algoritma Haar Cascade dan Local Binary

Pattern Histogram” memiliki kelebihan yaitu sistem ini dapat mendeteksi wajah

manusia dan wajah bukan manusia, dengan menggunakan algoritma Haar Cascade

kecepatan yang dihasilkan sistem ini cukup cepat. Adapun kelemahansistem ini

yaitu wajah yang akan dikenali disimpan dalam database dimana gambar tersebut

bersifat grayscale.

Pada penelitian Abd. Rasman. Syahirun Alam, Marlina. (2021) yang berjudul

“Deteksi Identitas Berdasarkan Wajah” memiliki kelebihan yaitu sistem ini

berbasis smartphone, dengan menggunakan metode centroid dan geometric mean


6

sehingga menghasilkan akurasi hingga 90% dengan waktu komputasi sekitar 19,6

detik. Kelemahan sistem ini yaitu sistem ini menggunakan centroid method and

geometric mean yang memiliki tingkat akurasi di bawah metode Convolutional

Neural Network.

Berdasarkan penelitian terdahulu yang diuraikan di atas, maka peneliti

bermaksud membangun sistem yang bias mendeteksi wajah secara real-time.

B. Sistem Pengenalan Wajah / Facial Recognition System

Pengenalan wajah adalah cara untuk mengidentifikasi atau mengkonfirmasi

identitas individu menggunakan wajah, sistem ini dapat digunakan untuk

mengidentifikasi seseorang dalam foto, video ataupun secara real-time.

Pengenalan wajah adalah kategori keamanan biometric. Beberapa bentuk lain

dari perangkat biometric yaitu pengenalan suara, pengenalan sidik jari dan retina

mata atau pengenalan iris. Teknologi pengenalan wajah sebagian besar digunakan

untuk keamanan dan penegakan hukum, akan tetapi tidak kecil kemungkinan

teknologi ini akan berkembang dan tersebar luas pemanfaatannya lebih dari yang

telah diterapkan saat ini.

6
7

Gambar 2.1 Penggunaan sistem pengenalan wajah pada bandara


Sumber: (https://www.kaspersky.com/resource-center/definitions/what-is-facial-
recognition)

C. Dlib

Dlib adalah toolkit C++ modern yang berisi algoritma pembelajaran mesin

termasuk klasifikasi, regresi, pengelompokan, transformasi data dan prediksi

terstruktur. Dlib juga merupakan alat(tool) untuk membuat perangkat lunak

kompleks dalam C++ untuk memecahkan masalah dunia nyata. Dlib digunakan di

industri dan akademisi di berbagai domain termasuk robotika, perangkat tertanam,

ponsel dan lingkungan komputasi berkinerja tinggi yang besa. Selain dengan

keunggulan Dlib sebagai library yang powerful, Dlib juga merupakan library yang

bersifat open-source.

D. Python

Python adalah Bahasa pemrograman tingkat tinggi yang ditafsirkan,

berorientasi objek dengan semantic dinamis. Dengan struktur data bawaan tingkat

7
8

tinggi yang dikombinasikan dengan pengetikan dinamis dan pengikatan dinamis

membuat bahasa python sangat menarik untuk digunakan pada pengembagan

aplikasi. Pyhon juga digunakan sebagai Bahasa program penghubung, dengan

sintaks penulisan yang sederhana dan mudah dipelajari. Bahasa python mendukung

modul dan paket yang mendorong modularitas program dan penggunaan kembali

sebuah kode, python interpreter dan pustaka standar yang tersedia dalam bentuk

sumber(source) tanpa biaya untuk semua platform utama dan dapat didistribusikan

secara bebas(open-source). Menurut statistic times pada laman statistictimes.com,

python adalah bahasa pemrograman terpopuler tahun 2021.

Gambar 2.2 Top computer language 2021


Sumber: (https://statisticstimes.com/tech/top-computer-languages.php)

8
9

E. PyCharm

PyCharm adalah python Integrated Development Environtment(IDE) khusus

yang menyediakan berbagai alat penting untuk pengembangan bahasa

pemrograman python. PyCharm terintegerasi erat untuk menciptakan lingkungan

yang nyaman bagi pengembangan python, web dan data science development.

PyCharm dikembangkan oleh perusahaan Ceko yaitu JetBrains yang sebelumnya

dikenal sebagai IntelliJ. PyCharm terdiri dari tiga edisi yaitu:

1. Community (free and open-sourced)

Edisi Komunitas adalah edisi gratis dan bersumber terbuka yang ditujukan

untuk pengembangan python yang cerdas, termasuk bantuan kode, refactoring,

debugging visual dan integrasi kontrol versi.

2. Professional (paid)

Edisi Profesional adalah edisi berbayar yang ditujukan untuk Python

professional, web dan pengembangan data science,termasuk bantuan kode,

refactoring, debugging visual, integrase kontrol versi, konfigurasi jarak jauh,

penerapan dan dukungan untuk kerangka kerja web popular seperti Django dan

Flask, dukungan basis data, dan scientific tools termasuk Jupyter dan alat Big

Data.

9
10

3. Edu (free and open sourced)

Edisi Edu adalah edisi yang ditujukan untuk mempelajari Bahasa

pemrograman dan terkait teknologi dengan integrasi alat pendidikan (integrated

educational tools).

Gambar 2.3 PyCharm IDE


Sumber : (https://www.jetbrains.com/pycharm/)

F. Library

Library adalah kumpulan modul terkait yang berisi kumpulan kode yang dapat

digunakan berulang kali dalam program yang berbeda. Adanya library membuat

pemrograman menjadi lebih sederhana dan nyaman bagi programmer karena tidak

perlu menulis kode yang sama berulang kali untuk program yang berbeda.

10
11

Library memaninkan peran yang sangat vital dalam bidang pembelajaran

mesih, data science, visualisasi data, aplikasi manipulasi gambar dan data dan

masih banyak lagi.

G. Face_recognition Library

Face_recognition adalah library yang digunakan untuk mengenali dan

memanipulasi wajah dari bahaasa pemrograman python dengan baris kode paling

simple. Face_recognition library dibangun menggunakan library Dlib face

recognition dengan metode deep learning sehingga tecaatat model ini memiliki

tingkat akurasi 99,38% pada situs Benchmark Labeled Face in the Wild.

Face_recognition library menyediakan baris perintah yang sederhana yang

memungkinkan programmer melakukan pengenalan wajah pada folder yang berisi

gambaran dari baris perintah. Library ini juga memiliki fitur seperti menemukan

wajah pada gambar, memanipulasi wajah pada gambar mengidentifikasi wajah

pada gambar dan dapat digunakan pada library lain pada bahasa pemrograman

python.

Face_recognition library menggunakan arsitektur CNN (Convolutional Neural

Network) dan deskriptor HOG (Histogram of Oriented Gradient) dalam melakukan

deteksi objek, dalam hal ini adalah wajah,

1. Face Encodings

Pengkodean wajah pada dasarnya adalah cara untuk merepresentasikan

wajah menggunakan satu set 128 pengukuran yang dihasilkan komputer.

11
12

Dua gambar berbeda dari orang yang sama akan memiliki penyandian yang

sama dan dua orang yang berbeda akan memiliki penyandian yang sama

sekali berbeda.

Setelah semua pengkodean wajah dibuat, Support Vector Classifier

(SVC) dengan scikit-learn dilatih pada pengkodean wajah bersama dengan

labelnya dari semua wajah yang dikenal di direktori pelatihan. Terakhir, API

mendeteksi semua wajah dalam gambar uji yang Anda berikan dan SVC

terlatih memprediksi semua wajah yang dikenal dalam gambar uji.

Gambar 2.4 Deteksi letak wajah

Sumber: (https://medium.com/codex/face-recognition-25f7421a2268)

12
13

Gambar 2.5 hasil encoding 128 dimension array

Sumber: (https://medium.com/codex/face-recognition-25f7421a2268)

Gambar 2.6 Hasil pencocokan 1 training image dengan 2 gambar baru

Sumber: (https://medium.com/codex/face-recognition-25f7421a2268)

13
14

Kedua larik (array) ini menunjukkan kesamaan gambar yang diberikan

dalam parameter kedua dengan masing-masing pengkodean wajah yang

diketahui dalam daftar yang disediakan dalam parameter pertama.

Dapat dilihat bahwa array pertama menunjukkan lebih banyak

kesamaan yang berarti gambar yang di training (latih) cocok dengan 1

gambar yang dimasukan dan mengidentifikasi orang tersebut.

2. CNN (Convolutional Neural Network)

CNN adalah salah satu jenis arsitektur neural network yang biasa

digunakan pada data image. Sebenarnya CNN ini tidak jauh berbeda dengan

neural network pada umumnya. CNN juga terdiri dari neuron yang

memiliki weight, bias dan activation function.

Kemampuan utama CNN adalah arsitektur yang mampu mengenali

informasi prediktif suatu objek (gambar, teks, potongan suara, dan

sebagainya) walaupun objek tersebut dapat diposisikan dimana saja pada

input. Kontribusi CNN di feature extraction layer adalah pada convolution

dan pooling layer. Convolution bekerja dengan prinsip sliding window dan

weight sharing (mengurangi kompleksitas perhitungan). Pooling layer

digunakan untuk merangkum informasi yang dihasilkan oleh suatu

convolution (mengurangi dimensi). Sedangkan vektor hasil dari beberapa

operasi convolution dan pooling pada multilayer perceptron dikenal sebagai

fully-connected layer yang digunakan untuk melakukan suatu pekerjaan

14
15

(misal klasifikasi). Struktur dari CNN dapat dilihat pada gambar di bawah

ini.

Gambar 2.7 Struktur CNN

Sumber: (https://adeshpande3.github.io/adeshpande3.github.io/A-Beginner%27s-
Guide-To-Understanding-Convolutional-Neural-Networks/)

3. HOG (Histogram of Oriented Gradients) Descriptor

Histogram of Oriented Gradients (Histogram Gradien Berorientasi)

juga dikenal sebagai HOG, adalah deskriptor fitur seperti Detektor Tepi

Canny, SIFT (Scale Invariant and Feature Transform). Ini digunakan dalam

computer vision dan pemrosesan gambar untuk tujuan deteksi objek. Teknik

menghitung kemunculan orientasi gradien di bagian gambar yang

dilokalkan. Metode ini sangat mirip dengan Edge Orientation Histograms

dan Scale Invariant Feature Transformation (SIFT). Deskriptor HOG

berfokus pada struktur atau bentuk suatu objek. Ini lebih baik daripada

deskriptor tepi mana pun karena menggunakan besaran serta sudut gradien

15
16

untuk menghitung fitur. Untuk wilayah gambar itu menghasilkan histogram

menggunakan besaran dan orientasi gradien.

Gambar 2.8 Fitur HOG pada wajah

Sumber: (https://www.eeweb.com/real-time-face-detection-and-

recognition-with-svm-and-hog-features/)

Semua gambar sampel wajah seseorang diumpankan ke algoritma

ekstraksi deskriptor fitur yaitu, HOG. Deskriptor adalah vektor gradien yang

dihasilkan per piksel gambar.

Ukuran jendela 128 x 144 digunakan untuk gambar wajah karena

cocok dengan rasio aspek umum wajah manusia. Deskriptor dihitung

melalui blok piksel dengan dimensi 8 x 8. Nilai deskriptor untuk setiap

piksel lebih dari 8 x 8 blok dikuantisasi menjadi 9 bin, di mana setiap bin

mewakili sudut arah gradien dan nilai dalam bin itu, yang merupakan

penjumlahan dari besaran semua piksel dengan sudut yang sama.

16
17

Selanjutnya, histogram kemudian dinormalisasi pada ukuran blok 16 x 16,

yang berarti empat blok berukuran 8 x 8 dinormalisasi bersama untuk

meminimalkan kondisi cahaya. Mekanisme ini mengurangi penurunan

akurasi karena perubahan cahaya. Model SVM dilatih menggunakan

sejumlah vektor HOG untuk banyak wajah.

Gambar 2.9 Hasil HOG sebuah gambar

Sumber: (https://www.analyticsvidhya.com/blog/2019/09/feature-

engineering-images-introduction-hog-feature-descriptor/)

H. NumPy

NumPy adalah paket dasar untuk komputasi ilmiyah dengan Bahasa

pemrograman python. NumPy merupakan pustaka Python yang menyediakan objek

array multidimensi, berbaagai objek turunan seperti array dan matriks, berbagai

macam rutinitas untuk operasi cepat pada array, termasuk matematika, logika,

17
18

manipulasi bentuk, pengurutan, pemilihan, I/O, transformasi fourier diskrit, aljabar

linier dasaram operasi statistic dasar, simulasi acak dan banyak lagi.

I. OpenCV

OpenCv (Open Source Computer Vision Library) adalah sebuah library open

source yang dikembangkan oleh intel yang fokus untuk menyederhanakan

programing terkait citra digital. Di dalam OpenCV sudah mempunyai banyak fitur,

antara lain : pengenalan wajah, pelacakan wajah, deteksi wajah, Kalman filtering,

dan berbagai jenis metode AI (Artificial Intellegence). Dan menyediakan berbagai

algoritma sederhana terkait computer vision untuk low level API.

OpenCV merupakan open source computer vision library untuk bahasa

pemrograman C/C++ dan telah dikembangkan ke python, java dan matlab. Intel

meluncurkan versi pertama dari OpenCV pada 1999, dan awalnya memerlukan

library dari Intel Image Processing Library. Kemudian dependecy tersebut

ahkirnya dihilangkan sehingga terciptalah OpenCV seperti yang sekarang sebagai

standalone library. OpenCV mendukung multiplatform, dapat mendukung baik

windows ataupun linux, dan sekarang telah mendukung MacOSX dan android.

J. Webcam

Webcam (Web Camera) adalah sebutan bagi kamera real-time (bermakna

keadaan pada saat ini juga) yang gambarnya bisa diakses atau dilihat melalui World

Wide Web, program instant messaging, atau aplikasi video call. Selama ini, aplikasi

webcam hanya digunakan untuk merekam dan menampilkan objek. (Julfikar Ali

Andre. 2016).

18
19

Fungsi dari webcam telah kita ketahui yaitu untuk memudahkan kita dalam

mengolah pesan cepat seperti chat melaui video atau bertatap muka melalui video

secara langsung. Webcam juga berfungsi sebagai alat untuk men-transfer sebuah

media secara langsung, namun perlu disadari kebanyakan pengguna menggunakan

piranti ini hanya untuk chat video.

Gambar yang didapat pun langsung dapat diolah secara digital dan

disebarluaskan melalui internet. Hanya saja, berbeda dengan kamera digital, sebuah

webcam tidak dilengkapi kartu memori atau flash memory card. Webcam dirancang

untuk tidak perlu “menyimpan” gambar karena fungsi utamanya hanya merekam

dan mengirimkan gambar yang diperoleh secara langsung.

K. Flowchart

Flowchart adalah adalah suatu bagan dengan simbol-simbol tertentu yang

menggambarkan urutan proses secara mendetail dan hubungan antara suatu proses

(instruksi) dengan proses lainnya dalam suatu program.

Dalam perancangan flowchart sebenarnya tidak ada rumus atau patokan yang

bersifat mutlak (pasti). Hal ini didasari oleh flowchart (bagan alir) adalah sebuah

gambaran dari hasil pemikiran dalam menganalisa suatu permasalahan dalam

komputer. Karena setiap analisa akan menghasilkan hasil yang bervariasi antara

satu dan lainnya. Kendati begitu secara garis besar setiap perancangan flowchart

selalu terdiri dari tiga bagian, yaitu input, proses dan output. (Ilham Aksanu Ridlo

2017)

19
20

Berikut ini adalah beberapa simbol yang digunakan dalam menggambar suatu

flowchart :

Tabel 2.1 Simbol flowchart

Simbol Nama Fungsi


Permulaan / akhir program
Terminator
Garis alir (flow line) Arah aliran program

Preparation Proses inisialisasi /


pemberian harga awal

Proses Proses perhitungan /


proses pengolahan data

Input / output data Proses input / output data,


parameter, informasi

Predefined process (sub Permulaan sub program /


program) proses menjalankan sub
program

Decision Perbandingan pernyataan,


penyeleksian data yang
memberikan pilihan untuk
langkah selanjutnya

Simbol Nama Fungsi


On page connector Penghubung bagian-bagian
flowchart yang berada pada
satu halaman

Off page connector Penghubung bagian-bagian


flowchart yang berada pada
halaman berbeda

20
21

L. Unified Modelling Language(UML)

Unified Modelling Language (UML), “Unified Modelling Language adalah

bahasa pemodelan untuk sistem atau perangkat lunak yang berpradigma

berorientasi objek”. Pemodelan (modeling) sesungguhnya digunakan untuk

penyederhanaan permasalahan-permasalahan yang kompleks sedemikian rupa

sehingga lebih mudah dipelajari dan dipahami.

Metode Unified Modelling Language (UML) menggunakan tiga bangunan

dasar untuk mendeskripsikan sistem atau perangkat lunak yang akan

dikembangkan, yaitu :

1. Sesuatu (things)

Ada empat things dalam Unified Modelling Language (UML):

a. Structural things

Merupakan bagian yang relatif statis dapat berupa elemen-elemen yang

bersifat fisik maupun konseptual.

b. Behavorial things

Merupakan bagian dinamis biasanya merupakan kata kerja dari model

UML yang mencerminkan perilaku sepanjang waktu.

c. Grouping things

Merupakan bagian pengorganisasian dalam UML. Dalam

penggambaran model UML yang rumit diperlukan penggambaran paket

yang menyederhanakan model. Paket-paket ini kemudian dapat

21
22

didekomposisi lebih lanjut. Paket berguna bagi pengelompokan sesuatu,

misalnya model-model serta subsitem-subsistem.

d. Annotational things

Merupakan bagian yang meperjelas model UML. Dapat berisi

komentar yang menjelaskan fungsi serta ciri-ciri tiap element dalam model

UML.

2. Relasi (reationship)

Ada empat relationship (hubungan) dalam Unified Modelling Language

(UML) :\

a. Ketergantungan (dependency)

Adalah hubungan dimana perubahan yang terjadipada suatu elemn

independent akan mempengaruhi elemen yang bergantung padanya.

b. Asosiasi

Adalah apa dan bagaimana yang mengubungkan antara objek satu

dengan yang lainnya. Suatu bentuk asosiasi adalah agregasi yang

menampilkan hubungan suatu objek dengan bagian-bagiannya.

22
23

c. Generalisasi

Adalah hubungan dimana objek anak berbagai perilaku dan struktur data

dari objek yang ada diatasnya (objek induk). Arah dari objek induk ke objek

anak dinamakan spesialisasi sedangkan arah sebaliknya dinamakan

generalisasi.

d. Realisasi

Adalah operasi yang benar-benar dilakukan oleh suatu objek.

3. Diagram

Unified Modelling Language (UML) menyediakan Sembilan jenis diagram

yang dapat dikelompokkan berdasarkan sifatnya (statis dan dinamis).

a. diagram use case

Diagram use case menyajikan interaksi antara use case dan aktor,

dimana aktor dapat berupa orang, peralatan, atau sistem lain yang

berinteraksi dengan sistem yang sedang di bangu. Use case

menggambarkan fungsionalitas sistem atau persyaratan-persyaratan

yang harus dipenuhi sistem dari pandangan pemakai (Nurokhim dan

Ratnasari Nur Rohmah. 2002).

Adapun simbol-simbol Use Case Diangram antara lain :

Tabel 2.2 Simbol use case diagram

NO GAMBAR NAMA KETERANGAN

Menspesifikasikan himpuan peran yang


1 Actor pengguna mainkan ketika berinteraksi
dengan use case.

23
24

NO GAMBAR NAMA KETERANGAN

Hubungan dimana perubahan yang


terjadi pada suatu elemen mandiri
(independent) akan mempengaruhi
2 Dependency
elemen yang bergantung padanya
elemen yang tidak mandiri
(independent).

Hubungan dimana objek anak


(descendent) berbagi perilaku dan
3 Generalization
struktur data dari objek yang ada di
atasnya objek induk (ancestor).

Menspesifikasikan bahwa use case


4 Include
sumber secara eksplisit.

Menspesifikasikan bahwa use case


target memperluas perilaku dari use
5 Extend
case sumber pada suatu titik yang
diberikan.

Apa yang menghubungkan antara


6 Association
objek satu dengan objek lainnya.

Menspesifikasikan paket yang


7 System menampilkan sistem secara terbatas.

Deskripsi dari urutan aksi-aksi yang


ditampilkan sistem yang menghasilkan
8 Use Case
suatu hasil yang terukur bagi suatu
aktor

Interaksi aturan-aturan dan elemen lain


yang bekerja sama untuk menyediakan
9 Collaboration
prilaku yang lebih besar dari jumlah
dan elemen-elemennya (sinergi).

24
25

NO GAMBAR NAMA KETERANGAN

Elemen fisik yang eksis saat aplikasi


10 Note dijalankan dan mencerminkan suatu
sumber daya komputasi

Tabel 2.3 Simbol class diagram

NO GAMBAR NAMA KETERANGAN

Hubungan dimana objek anak


1 Generalization (descendent) berbagi perilaku dan struktur
data dari objek yang ada di atasnya objek
induk (ancestor).
Upaya untuk menghindari asosiasi
2 Nary Association dengan lebih dari 2 objek.

3 Class Himpunan dari objek-objek yang berbagi


atribut serta operasi yang sama.

Deskripsi dari urutan aksi-aksi yang


4 Collaboration
ditampilkan sistem yang menghasilkan
suatu hasil yang terukur bagi suatu aktor

5 Realization Operasi yang benar-benar dilakukan oleh


suatu objek.

Hubungan dimana perubahan yang terjadi


pada suatu elemen mandiri (independent)
6 Dependency
akan mempegaruhi elemen yang
bergantung padanya elemen yang tidak
mandiri

7 Association Apa yang menghubungkan antara objek


satu dengan objek lainnya

25
26

Tabel 2.4 Simbol sequence diagram

NO GAMBAR NAMA KETERANGAN

1 LifeLine Objek entity, antarmuka yang saling


berinteraksi.

Spesifikasi dari komunikasi antar objek


2 Message
yang memuat informasi-informasi tentang
aktifitas yang terjadi

Spesifikasi dari komunikasi antar objek


3 Message
yang memuat informasi-informasi tentang
aktifitas yang terjadi

Tabel 2.5 Simbol statechart diagram

NO GAMBAR NAMA KETERANGAN

Nilai atribut dan nilai link pada suatu


1 State
waktu tertentu, yang dimiliki oleh suatu
objek.

Initial Pseudo
2
Bagaimana objek dibentuk atau diawali
State

3 Final State Bagaimana objek dibentuk dan


dihancurkan

Sebuah kejadian yang memicu sebuah


4 Transition
state objek dengan cara memperbaharui
satu atau lebih nilai atributnya

5 Association Apa yang menghubungkan antara objek


satu dengan objek lainnya.

26
27

NO GAMBAR NAMA KETERANGAN

Elemen fisik yang eksis saat aplikasi


6 Node
dijalankan dan mencerminkan suatu
sumber daya komputasi.

Tabel 2.6 Simbol activity diagram

NO GAMBAR NAMA KETERANGAN

Memperlihatkan bagaimana masing-masing


1 Actifity
kelas antarmuka saling berinteraksi satu
sama lain

2 Action State dari sistem yang mencerminkan


eksekusi dari suatu aksi

3 Initial Node
Bagaimana objek dibentuk atau diawali.

Actifity Final
4
Bagaimana objek dibentuk dan dihancurkan
Node

5 Fork Node Satu aliran yang pada tahap tertentu berubah


menjadi beberapa aliran

27
28

M. Kerangka Pikir

Sistem pengamanan suatu ruangan dapat dilakukan oleh manusia dengan


melakukan pengamatan, namun pengamatan wajah secara langsung oleh
manusia mempunyai kelemahan karena kelelahan dan kejenuhan yang
terjadi, sehingga dapat menyebabkan menurunnya ketelitian.

Membuat sistem yang dapat membatu pengamanan dengan


menggunakan metode yang dapat mengidentifikasi wajah secara real-
time.

Menggunakan library face_recognition dengan modul Dlib sebagai


toolkit dalam pemrosesan deep learning dalam Bahasa pemrograman
python untuk mendeteksi wajah.

Sebuah aplikasi desktop berbasis webcam yang dapat mengidentifikasi


wajah untuk ditampilkan pada layar

28
BAB III

METODE PENELITIAN

A. Jenis Penelitian

Dalam pembuatan proposal ini digunakan metode deskripsif yang

menggambarkan fakta-fakta dan informasi secara sistematis, faktual dan akurat.

Penelitian ini dilakukan melalui internet yang dapat memberikan sumber data dan

pengetahuan mengenai sistem yang diteliti, kemudian mencocokkan dengan

kemungkinan yang terjadi dalam usaha penyelesaian masalah.

B. Tempat dan Waktu Penelitian

Penelitian ini dilakukan di lingkup Universitas Muhammadiyah Parepare,

dengan waktu pelaksanaan penelitian adalah + 1 bulan.

C. Alat dan Bahan Penelitian

Untuk melakukan proses penelitian dalam pembuatan aplikasi, maka

diperlukan perangkat keras dan perangkat lunak guna mendukung kegiatan

penelitian tersebut. Berikut ini merupakan penjelasan dari hardware dan software

yang digunakan.

1. Perangkat keras

Perangkat keras yang digunakan untuk membuat aplikasi encoding dan

decoding gambar dapat dilihat pada table berikut :


30

Tabel 3.1 Spesifikasi perangkat keras


Spesifikasi

Merk laptop DELL Latitude E6440

Processor laptop Intel(R) Core(TM) i5-430M CPU @ 2.60 GHz

(4CPUs), ~2.6GHz

RAM laptop 8 (8192) GB

Webcam Xiaomi HD webcam USB 2.0

2. Perangkat lunak

Perangkat lunak yang digunakan untuk membuat aplikasi encode dan

decode gambar dapat dilihat sebagai berikut :

Tabel 3.2 Spesifikasi perangkat lunak


Spesifikasi

Sistem operasi Windows 10

Tool pemrograman PyCharm Community Edition

Bahasa pemrograman Python

D. Desain Sistem

Perancangan sistem adalah sebuah teknik pemecahan masalah yang saling

melengkapi (dengan analisis sistem) yang merangkai kembali bagian-bagian

komponen menjadi sebuah sistem yang lengkap (Whitten et al. 2004).

30
31

Perancangan sistem dilakukan untuk memberikan gambaran dan

mempermudah dalam melakukan implementasi ataupaun evaluasi terhadap sistem

yang akan dibangun. Pada perancangan sistem terdapat flowchart, use-case

diagram, activity diagram, perancangan antarmuka (interface), dan sistem yang

berjalan serta yang diusulkan.

1. Use case diagram

Use-case adalah urutan langkah – langkah yang secara tindakan saling

terkait (skenario), baik terotomatisasi maupun secara manual. Diagram use-case

adalah diagram yang menggambarkan interaksi antara sistem dengan sistem

eksternal dan pengguna. Dengan kata lain, secara grafis menggambarkan siapa yang

akan menggunakan sistem dan dengan cara apa pengguna mengharapkan untuk

berinteraksi dengan sistem (Whitten et al. 2004).

Use-case diagram membutuhkan identifikasi siapakah pengguna yang akan

menggunakan sistem tersebut. User tersebut dinamakan actor. Actor berperan

untuk melakukan komunikasi dengan sistem. Hubungan antar actor dengan use-

case dihubungkan dengan garis lurus. Use-case diagram pada sistem ini dapat

dilihat pada gambar 3.1.

31
32

Gambar 3.1 Use Case Diagram


Pada gambar 3.1 Admin melakukan inisialisasi dan menjalankan sistem

tersebut, kemudian sistem akan mendeteksi setiap user yang terjangkau kamera.

2. Flowchart

Flowchart adalah suatu bagan dengan simbol-simbol tertentu yang

menggambarkan urutan proses secara mendetail dan hubungan antara suatu proses

dengan proses lainnya dalam suatu program.

Perancangan sistem secara umum digambarkan dengan flowchart seperti

pada gambar 3.2

32
33

Gambar 3.2 Flowchart Sistem

E. Metode Pengumpulan Data

Pengumpulan data penelitian ini dilakukan dengan cara melakukan studi

pustaka yaitu mengumpulkan data dengan mempelajari masalah yang berhubungan

dengan objek yang diteliti, mengumpulkan data image yang akan ditraining dan

mempelajari kode-kode program dan literasi yang berkaitan dengan penelitian yang

bersumber dari buku-buku, jurnal-jurnal, literatur yang disusun oleh para ahli untuk

melengkapi data yang diperlukan dalam penelitian baik secara offline maupun

online.

33
34

F. Metode Pengujian

Pengujian sistem dilakukan secara uji kode program dan uji implementasi hasil

program dengan melakukan test-case pada lingkup tempat penelitian. Jika struktur

program sudah bagus, maka pengujian yang tak kalah pentingnya adalah pengujian

unit. Pengujian unit digunakan untuk menguji setiap modul untuk menjamin setiap

modul menjalankan fungsinya dengan baik. Ada 2 metode untuk melakukan unit

testing, yaitu :

1. White box testing

Coba white box testing merupakan metode perancangan test case yang

mengunakan struktural untuk mendapatkan test case, test ini digunakan untuk

meramal cara kerja perangkat lunak secara rinci kepada logic path ( jalur logika ),

perangkat lunak di tes dengan kondisi dan perulangan secara fisik.

Contoh pengujian white box testing ini merupakan peringatan ketika user

menginputkan password user yang salah, untuk kesalahan semacam ini akan

memberikan suatu informasi kepada user mengenai kesalahan yang di lakukan.

2. Black box testing

Berdasarkan hasil uji coba yang dilakukan, seluruh navigasi dan tombol

fasilitas program lainnya serta proses yang di jalankan tidak terjadi kesalahan, tetapi

aplikasi mempunyai aturan-aturan yang sudah di tetapkan dan harus di ikuti karena

apabila di hiraukan maka sistem akan menolak perintah yang tidak sesuai seperti

34
35

kesalahan ketika user belum menginput data yang harusnya di input sesuai

ketentuan sistem yang di jalankan dan sistem memberikan informasi kepada

userkarena data yang ingin diproses belum lengkap atau tidak memenuhi ketentuan

untuk proses selanjutnya.

35
36

DAFTAR PUSTAKA

Ageitgey. (2018, April 3). ageitgey:face_recognition. Retrieved from


github.com/ageitgey/face_recognition:
https://github.com/ageitgey/face_recognition

Ahmad, A. (2017). Mengenal Artificial Intelligence, Machine Learningm Neural Network,


dan Deep Learning. Yayasan Cahaya Islam, Jurnal Teknologi Indonesia, 4-5.

Al-Aidid, S., & Pamungkas, D. S. (2018). Sistem Pengenalan Wajah dengan Algoritma Haar
Cascade dan Local Binary Pattern Histogram. Jurnal Rekayasa Elektrika Vol.14,
No.1, 62.

algorit.ma. (2022, Februari 02). library-python:algorit.ma. Retrieved from algorit.ma:


https://algorit.ma/blog/library-
python/#:~:text=Library%20python%20adalah%20kumpulan%20modul,kali%20u
ntuk%20program%20yang%20berbeda.

Andre, J. A. (2016). SISTEM SECURITY WEBCAM DENGAN MENGGUNAKAN MICROSOFT


VISUAL BASIC(6.0). Jurnal Teknologi dan Sistem Informasi Univrab, 48-60.

Baburajan, A. (2020, February 19). Geeksforgeeks. Retrieved from Python | Multiple Face
Recognition using dlib: https://www.geeksforgeeks.org/python-multiple-face-
recognition-using-dlib/

Davis E. King. (2022, Januari 24). dlib.net. Retrieved from dlib.net: http://dlib.net/

Deshpande, A. (2016, Juli 20). A Beginner's Guide To Understanding Convolutional Neural


Networks. Retrieved from Adesh Pande:
https://adeshpande3.github.io/adeshpande3.github.io/A-Beginner%27s-Guide-
To-Understanding-Convolutional-Neural-Networks/

Hanugra Aulia Sidharta, S. M. (2017, Oktober 28). Intoduction to open cv. Retrieved from
binus.ac.id: https://binus.ac.id/malang/2017/10/introduction-to-open-cv/

Jetbrains.com. (2022, Maret 27). PyCharm Quick Start Guide: Jetbrains.com. Retrieved
from Jetbrains.com: https://www.jetbrains.com/help/pycharm/quick-start-
guide.html

Kaspersky. (n.d.). What Is Facial Recognition - Definition and Explanation. Retrieved from
Resouce-center:Kaspersky: https://www.kaspersky.com/resource-
center/definitions/what-is-facial-recognition

kdnuggets.com. (2014, 6). dlib-library-machine-learning:kdnuggets.com. Retrieved from


kdnuggets.com: https://www.kdnuggets.com/2014/06/dlib-library-machine-
learning.html

36
37

Rasman, A., Alam, S., & Marlina. (2021). DETEKSI IDENTITAS BERDASARKAN WAJAH.
JURNAL SINTAKS LOGIKA Vol. 1 No. 3, 1-7.

Santoso, A. (2018). IMPLEMENTASI DEEP LEARNING BERBASIS KERAS UNTUK


PENGENALAN WAJAH. Surakarta: Fakultas Komunikasi dan Informatika
Universitas Muhammadiyah Surakarta.

Singh, A. (2019, September 4). Feature Engineering for Images: A Valuable Introduction to
the HOG Feature Descriptor. Retrieved from Analiiitucs Vidya:
https://www.analyticsvidhya.com/blog/2019/09/feature-engineering-images-
introduction-hog-feature-descriptor/

Solegaonkaar, V. (2019, May 17). Introduction to Face Recognition: Medium.com.


Retrieved from Medium.com: https://medium.com/codex/face-recognition-
25f7421a2268

Solihah, N. (25, Juni 2018). Fully Connected Layer CNN dan Implementasinya. Retrieved
from Universitas Gadjah Mada Menara Machine Learning:
https://machinelearning.mipa.ugm.ac.id/2018/06/25/fully-connected-layer-cnn-
dan-implementasinya/

Statisticstimes.com. (2021, Desember 18). Top Computer Languages: Statisticstimes.com.


Retrieved from Statisticstimes.com: https://statisticstimes.com/tech/top-
computer-languages.php

Thaware, R. (2018, Mei 28). Real-Time Face Detection and Recognition with SVM and HOG
Features. Retrieved from EEWeb: https://www.eeweb.com/real-time-face-
detection-and-recognition-with-svm-and-hog-features/

Travis Oliphan. (2022, Maret 7). NumPy Documentation. Retrieved from Numpy.org:
https://numpy.org/doc/stable/

37

Anda mungkin juga menyukai