MENDETEKSI OBJEK DENGAN OpenCV MENGGUNAKAN RASPBERRY Pi 4
LABORATORIUM
SISTEM TERBENAM
MENDETEKSI OBJEK DENGAN OpenCV MENGGUNAKAN RASPBERRY
Pi 4
Dosen
Pengampu:
Dr. Samuel Beta K., Ing.Tech, M.T.
Disusun Oleh :
Kelompok 5
1. Gerry Alghifary |
RE-3A |
(4.34.22.0.10) |
2. Keisya Djenar Dinda L. |
RE-3A |
(4.34.22.0.13) |
3. Marshanda Aprilian N. |
RE-3A |
(4.34.22.0.14) |
4. Raka Ramadhana |
RE-3A |
(4.34.22.0.19) |
PROGRAM STUDI TEKNOLOGI REKAYASA ELEKTRONIKA
JURUSAN TEKNIK ELEKTRO
POLITEKNIK NEGERI SEMARANG
2025
BAB I
PENDAHULUAN
1.1. Latar Belakang
Perkembangan teknologi pengolahan citra (image
processing) semakinpesat dan telah banyak diterapkan dalam berbagai bidang,
seperti keamanan, kesehatan, dan otomasi industry. Raspberry Pi 4, sebagai
sebuah komputer mini yang hemat daya dan portabel, memiliki kemampuan untuk
menjalankan pemrosesan citra secara real-time. Salah satu pustaka yang paling popular
yang digunakan dalam pemrosesan citra adalah OpenCV, yang mampu mendeteksi
objek, wajah, serta berbagai fitur lain dari gambar atau video. Praktikum ini
bertujuan untuk menggambungkan kemampuan Raspberry Pi 4 dan OpenCV dalam
mendeteksi objek sederhana, khususnya wajah manusia, sebagai langkah awal dalam
memahami implementasi sistem penglihatan komputer (computer vision) berbasis
perangkat embedded.
1.2.
Tujuan
Tujuan dari tutorial ini, yaitu:
1.
Mengimplementasikan
OpenCV di Raspberry Pi 4 untuk mendeteksi wajah.
2.
Mempelajari cara
pengambilan video dari kamera dan mengolahnya .
3.
Mengintegrasikan
hasil klasifikasi tingkat kematangan dengan lengan robot agar dapat melakukan
pemindahan buah secara otomatis dan tepat.
BAB II
TINJAUAN PUSTAKA
2.1. Raspberry Pi 4
Raspberry Pi 4 adalah komputer mini berukuran kartu
kredit yang dikembangkan oleh Raspberry Pi Foundation, dengan peningkatan
signifikan dibanding generasi sebelumnya. Board ini dilengkapi prosesor
Quad-Core ARM Cortex-A72 1.5 GHz, pilihan RAM mulai dari 2 GB hingga 8 GB,
serta port USB 3.0, Gigabit Ethernet, dan dual output micro-HDMI yang mendukung
resolusi hingga 4K. Raspberry Pi 4 mendukung berbagai sistem operasi, terutama
Raspberry Pi OS (berbasis Linux), dan dapat digunakan untuk beragam keperluan
seperti pemrograman, otomasi, IoT, media center, hingga sebagai pengganti komputer
desktop ringan.
2.2. Pengolahan Citra Digital
Pengolahan citra digital adalah proses analisis gambar
melalui perangkat komputer untuk mengekstraksi informasi visual seperti warna,
bentuk, dan tekstur. Dalam aplikasi sortir tomat, pengolahan citra digunakan
untuk menganalisis warna kulit tomat secara otomatis dan menentukan tingkat
kematangannya. Gambar yang ditangkap oleh kamera akan dikonversi menjadi nilai
RGB (Red, Green, Blue) dan kemudian diklasifikasikan ke dalam kategori
tertentu, seperti “matang” atau “belum matang”.
Saputra dan Riza (2021) menjelaskan bahwa metode
pengolahan citra digital berbasis Raspberry Pi dan Python dengan pustaka OpenCV
dapat digunakan untuk klasifikasi tingkat kematangan tomat dengan hasil yang
cukup akurat dan efisien. Sistem ini bekerja secara real-time, menjadikannya
cocok untuk aplikasi otomatisasi.
2.3. Web Camera
2.4. Open CV
OpenCV
(Open Source Computer Vision Library) adalah pustaka sumber terbuka yang
dirancang khusus untuk aplikasi pengolahan citra dan visi komputer.
Dikembangkan pertama kali oleh Intel, OpenCV ditulis dalam bahasa C/C++ dan
kini mendukung berbagai bahasa pemrograman seperti Python dan Java. Pustaka ini
menyediakan ratusan fungsi untuk melakukan operasi dasar maupun lanjutan
seperti deteksi tepi, pelacakan objek, pengenalan wajah, segmentasi gambar,
serta pemrosesan video secara real-time. Karena kecepatan dan fleksibilitasnya,
OpenCV banyak digunakan dalam riset akademik, robotika, sistem keamanan, serta
berbagai proyek berbasis AI dan machine learning.
2.5. Python versi 3
Python versi 3 adalah versi terbaru dari bahasa pemrograman
Python yang dirancang untuk menggantikan Python 2 dengan berbagai peningkatan
pada sintaks, performa, dan manajemen memori. Versi ini diperkenalkan pertama
kali pada tahun 2008, dengan pembaruan signifikan seperti penggunaan fungsi
print() dengan tanda kurung, pembagian bilangan yang lebih konsisten (/ untuk
float, // untuk integer), serta dukungan penuh terhadap Unicode untuk
pemrosesan teks global. Python 3 juga memperkenalkan pustaka standar (standard
library) yang lebih terstruktur, serta mempermudah penggunaan paradigma
pemrograman berorientasi objek maupun fungsional.
BAB III
PERANCANGAN ALAT
3.1. Alat dan Bahan
Alat dan
Bahan yang digunakan, yaitu:
1.
Raspberry
Pi 4
2.
Web
Camera
3.
Kabel
power Raspberry Pi
4.
OpenCV
(terinstal di Raspberry Pi)
5.
Python
(versi 3)
3.2. Kode Program
# ==============================================================
# Pemrogram : Kelompok RE-3A/5
# 1. 10-Gery Algifari NIM: 4.34.22.0.10
# 2. 13-Keisya Djenar Dinda L NIM: 4.34.22.0.13
# 3. 14-Marshanda Aprilian N NIM: 4.34.22.0.14
# 4. 19-Raka Ramadhana NIM: 4.34.22.0.19
# Tgl.Praktikum : Senin, 30 Juni 2025
# =================================================================
# face_detection.py
# - Program untuk mendeteksi wajah secara real-time menggunakan webcam
# - Menggunakan metode Haar Cascade dari OpenCV
# - Menampilkan bounding box di sekitar wajah yang terdeteksi
# -----------------------------------------------------------------
# Materi yang digunakan:
# - Deteksi objek dengan Haar Cascade Classifier
# - Pemrosesan frame video secara real-time
# - Konversi warna gambar (BGR ke Grayscale)
# - Penggunaan webcam dengan OpenCV
# -----------------------------------------------------------------
# Komponen yang dibutuhkan:
# - 1x Komputer/Raspberry Pi 4
# - Kamera/webcam yang terhubung
# - Library OpenCV yang terinstall
# =================================================================
import cv2
# Load classifier wajah Haar Cascade
face_cascade = cv2.CascadeClassifier(cv2.data.haarcascades + 'haarcascade_frontalface_default.xml')
# Inisialisasi webcam (device 0 biasanya webcam utama)
cap = cv2.VideoCapture(0)
# Periksa apakah kamera berhasil dibuka
if not cap.isOpened():
print("Tidak bisa membuka kamera")
exit()
# Loop utama untuk menangkap frame dari kamera
while True:
# Baca frame dari kamera
ret, frame = cap.read()
# Periksa jika frame tidak berhasil diambil
if not ret:
print("Gagal mengambil frame")
break
# Konversi frame ke grayscale untuk deteksi wajah
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
# Deteksi wajah dalam frame menggunakan Haar Cascade
faces = face_cascade.detectMultiScale(gray, scaleFactor=1.1, minNeighbors=4)
# Gambar bounding box di sekitar setiap wajah yang terdeteksi
for (x, y, w, h) in faces:
cv2.rectangle(frame, (x, y), (x+w, y+h), (0, 255, 0), 2)
# Tampilkan frame hasil deteksi
cv2.imshow('Deteksi Wajah - Raspberry Pi 4', frame)
# Keluar dari loop jika tombol 'q' ditekan
if cv2.waitKey(1) & 0xFF == ord('q'):
break
# Lepaskan resource kamera dan tutup semua window
cap.release()
cv2.destroyAllWindows()
3.3.
Diagram
Blok
3.4. Diagram
Alir
BAB IV
PENUTUP
4.1 Kesimpulan
1.
Program
berhasil mendeteksi wajah menggunakan OpenCV di Raspberry Pi.
2.
Deteksi
dilakukan dengan cepat dan cukup akurat dalam kondisi pencahayaan baik.
3.
Praktikum
ini menunjukan potensi Raspberry Pi dalam aplikasi Computer Vision sederhana.
4.
Program
ini dapat dikembangkan lebih lanjut untuk sistem keamanan, absensi wajah, atau
pengenalan identitas.
4.2 Analisis Data
·
Data
yang diolah adalah frame gambar dari kamera.
·
Deteksi
dilakukan secara terus-menerus (real-time), frame-by-frame.
·
Output
berupa tampilan video dengan kotak hijau di area wajah
·
Keakuratan
deteksi tergantung pencahayaan dan posisi wajah.
·
Jika
tidak ada wajah è tidak ada kotak yang Digambar.
Untuk demo alat dapat diakses melalui link di bawah ini :
https://youtu.be/tfOp_k0cUhs?feature=shared
Komentar
Posting Komentar