Semua Tentang Belajar Teknologi Digital Dalam Kehidupan Sehari - Hari

Senin, 15 Juli 2024

[raspi - yolo] Menguji Kemampuan Raspberry pi 3B Untuk Pengolahan Gambar Yolo V5

 


Setelah memanfaatkan kekuatan cloud computing untuk pengolahan gambar yolo v3, karena raspberry pi zero w resource nya terbatas (baca dulu disini), maka kini saatnya melakukan upgrade ke seri raspberry pi yang lebih tinggi yaitu raspi 3B yang memang support komputasi 64bit. Jadi berdasarkan bantuan chatGPT disarankan untuk mencoba yolo v5 dimana berbasis engine TORCH sehingga pas dijalankan di arm 64 bit. Jadi jangan lupa instal versi raspbbery pi melalui imagernya yaitu OS lite legacy (bullseye) 64 bit tanpa desktop. Jadi jangan sampai salah install OS karena memang sangat terbatas resource raspi 3B yang quad core CPU 64bit 1.2 Ghz dengan ram 1GB saja.

Jika sudah sukses instalasi OS maka bisa lanjut menghubungkan ke wifi dan gunakan putty untuk ssh ke ip raspi kamu dan jalankan urutan perintah berikut :


1. Update raspi kamu

sudo apt-get update
sudo apt-get upgrade

2. Install python, pip dan git

sudo apt-get install python3
sudo apt-get install python3-pip

sudo apt-get install git

3. Install yolo v5 beserta script requirements-nya

git clone https://github.com/ultralytics/yolov5
cd yolov5

pip3 install -r requirements.txt


4. Install pytorch beserta turunannya

sudo apt-get install libopenblas-dev libblas-dev m4 cmake cython python3-yaml

wget https://github.com/nmilosev/pytorch-arm-builds/releases/download/v1.4/pytorch-1.4.0a0+6bfc3e0-cp37-cp37m-linux_armv7l.whl
pip3 install torch-1.4.0a0+6bfc3e0-cp37-cp37m-linux_armv7l.whl


Kemudian jika instalasi selesai maka dapat menjalankan script contoh detect.py dan usahakan ukuran gambarnya tidak besar.

python detect.py --source nolkm.jpg


Hasilnya sebagai berikut, sangat memuaskan :



Hasil diatas mungkin bisa berbeda jika ada dependencies atau library yang gagal instal atau bahkan salah instal. Saya sangat mengandalkan chatGPT setiap ada kesalahan yang saya temukan dan agak lupa apa saja error yg muncul itu. Dan yang paling penting adalah menggunakan CPU untuk pengolahan gambar karena raspberry pi tidak punya GPU sekelas Nvidia untuk menjalankan torch.

Salah satu error yang saya ingat adalah, karena OS saya tanpa desktop maka runtime QT untuk menampilkan gambar akan selalu dianggap error :


qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "/home/lampuku/.local/lib/python3.9/site-packages/cv2/qt/plugins" even though it was found. This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.


Jadi hal ini disolusikan oleh chatGPT dengan melakukan instalasi manual "headless" sebagai berikut :


1. Install QT dan Xwindows environment. Ini mungkin tidak di perlukan jika kamu menggunakan desktop pada raspberry pi 3 kamu


sudo apt-get update
sudo apt-get install libgl1-mesa-glx libxcb-xinerama0
2. Jangan lupa menambahkan ini jika ingin menjalankan yolov5 pada script python


export QT_QPA_PLATFORM_PLUGIN_PATH=/usr/lib/x86_64-linux-gnu/qt5/plugins  # Adjust path as necessary

3. Jika diperlukan install open cv dengan headless environment


pip install opencv-python-headless

4. Lakukan pengecekan instalasi dengan script testing dibawah ini :


import torch
from PIL import Image

# Load YOLOv5 model
model = torch.hub.load('ultralytics/yolov5', 'yolov5s', pretrained=True)

# Set image path
image_path = 'path/to/your/image.jpg'

# Perform inference
results = model(image_path)

# Display results
results.show()  # Displays the image with bounding boxes

# Optionally, save the results
results.save(save_dir='results/')  # Saves results in the 'results' directory

Dan jika hasilnya muncul seperti dibawah ini berarti instalasi sudah benar

Fusing layers...
YOLOv5s summary: 213 layers, 7225885 parameters, 0 gradients, 16.4 GFLOPs
Adding AutoShape...

Selanjutnya kita akan mendeteksi orang pada kamera cctv pada tulisan berikutnya disini.

Share:

0 komentar:

Posting Komentar

Kontak Penulis



12179018.png (60×60)
+628155737755

Mail : ahocool@gmail.com

Site View

Categories

555 (8) 7 segmen (3) adc (4) amplifier (2) analog (19) android (14) antares (11) arduino (27) artikel (11) attiny (3) attiny2313 (19) audio (5) baterai (5) blog (1) bluetooth (1) chatgpt (2) cmos (2) crypto (2) dasar (46) digital (11) dimmer (5) display (3) esp8266 (26) euro2020 (13) gcc (1) gsm (1) iklan (1) infrared (2) Input Output (3) iot (75) jam (7) jualan (12) kereta api (1) keyboard (1) keypad (3) kios pulsa (2) kit (6) komponen (17) komputer (3) komunikasi (1) kontrol (8) lain-lain (8) lcd (2) led (14) led matrix (6) line tracer (1) lm35 (1) lora (11) lorawan (2) MATV (1) memory (1) metal detector (4) microcontroller (70) micropython (6) mikrokontroler (2) mikrokontroller (14) mikrotik (5) modbus (9) mqtt (3) ninmedia (5) ntp (1) paket belajar (19) palang pintu otomatis (1) parabola (88) pcb (2) power (1) praktek (2) project (33) proyek (1) python (8) radio (28) raspberry pi (9) remote (1) revisi (1) rfid (1) robot (1) rpm (2) rs232 (1) script break down (3) sdcard (3) sensor (2) sharing (3) signage (1) sinyal (1) sms (6) software (18) solar (1) solusi (1) tachometer (2) technology (1) teknologi (2) telegram (2) telepon (9) televisi (167) television (28) telkomiot (5) transistor (2) troubleshoot (3) tulisan (94) tutorial (108) tv digital (6) tvri (2) vu meter (2) vumeter (2) wav player (3) wayang (1) wifi (3) yolo (7)

Arsip Blog

Diskusi


kaskus
Forum Hobby Elektronika