Tauben auf dem Edge

In diesem Artikel sprechen wir über den Einsatz modernster Computer-Vision-Objekterkennung auf stromsparenden und kostengünstigen Edge-Geräten. Zum Abschluss sehen wir ein Budget-Hardware-Setup, das Tauben nahezu in Echtzeit erkennen kann.
Der Stand der KI
In den letzten Jahren gab es enorme Fortschritte in der KI mit der Einführung von Large Language Models. Diese Methoden wurden auch von der Computer-Vision-Community übernommen, bei der Bilder in Tokens umgewandelt und an ein Sprachmodell zur Klassifizierung, Erkennung oder anderen Aufgaben übergeben werden – diese werden Vision Language Models genannt. Obwohl diese Methoden eine bessere Leistung in Bezug auf Genauigkeit oder Präzision zeigen, benötigen sie im Vergleich zu ihren älteren Verwandten – nennen wir sie die Convolutional Neural Network-basierten – weit mehr Rechenleistung. Der Bedarf an Rechenleistung wird noch problematischer, wenn ein Modell auf dem Edge eingesetzt wird.
- Large Language Model (LLM), z. B. ChatGPT, Llama2
- Vision Language Model (VLM), z. B. GPT-4V, Swin-L oder ViTL
- Convolutional Neural Network (CNN), z. B. YOLO oder EfficientNet
Objekterkennung
Objekterkennung ist eine Aufgabe in der Computer Vision, bei der wir ein Bild als Eingabe nehmen und Objekte innerhalb des Eingabebildes lokalisieren und klassifizieren. Die de-facto-Metrik zur Bewertung der Qualität eines Objektdetektors ist die mean Average Precision (mAP). Diese wird durch die Summe der Überschneidung zwischen der vorhergesagten und der annotierten Bounding Box berechnet.
Modell
mAP (50-95) COCO
Modellgröße (#Parameter)
Swin-L (DINO)
63,2
218M
ViT-L (Co-DETR)
65,9
304M
YOLOv8x
53,9
68,2M
YOLOv8s
44,9
11,2M
YOLOv8n
37,3
3,2M
YOLO (Ultralytics auf GitHub)
YOLO (You Only Look Once) ist die modernste CNN-basierte Methode zur Objekterkennung, aber die neueren YOLO-Versionen können auch andere Aufgaben wie Segmentierung, Pose-Schätzung oder Klassifizierung durchführen.

Wie aus der obigen Tabelle ersichtlich, übertreffen VLM-Methoden CNN-Methoden, benötigen aber eine höhere Anzahl trainierbarer Parameter. Die Anzahl der Parameter ist ein Indikator für sowohl Rechenleistung als auch Speichernutzung, aber mehrere Faktoren beeinflussen die Inferenzgeschwindigkeit. YOLO gibt es auch in verschiedenen Größen, die durch das letzte Zeichen im Namen angezeigt werden. Je kleiner ein Modell ist, desto schneller ist die Inferenz und desto geringer ist der Speicherverbrauch, aber auch die Genauigkeit nimmt ab.

Edge-Geräte
Edge-Geräte sind in ihrer Verarbeitungskapazität und ihrem Stromverbrauch begrenzt. Sie bieten KI-Fähigkeiten für IoT-Geräte, Sensoren, Kameras, Drohnen und Smartphones. Es gibt günstige Lösungen für 20 $, aber man kann auch aus High-End-System-on-Chip-Lösungen (SoC) über 1000 $ wählen. Als Faustregel gilt: Je mehr es kostet, desto höher ist die Rechenleistung und der Stromverbrauch. Bei der Wahl der Hardware wird es einen Kompromiss zwischen Preis und Leistung geben. Die folgenden Tabellen zeigen einige Beispiele von Geräten, Stand Februar 2024.
Low-End Edge:
Coral AI
NXP iMX8 Plus
Hailo8
Typ
Dedizierter Chip (NPU)
SoC (arm64) + GPU + NPU
Dedizierter Chip (NPU)
Befehlssatz SoC
N/A
FP, INT
N/A
Befehlssatz GPU
N/A
FP32
N/A
Befehlssatz NPU
INT8
INT8
INT8
Form
USB, PCIe, m.2, Chip
Board, Chip
PCIe, m.2, Chip
TOPS (INT)
4 TOPS
2,3 TOPS
26 TOPS
FLOPS (FP)
N/A
7,2 GFLOPS
N/A
Stromverbrauch
~2 Watt
~5–15 Watt
~2,5 Watt
Preis
~20 $
~60 $
~140 $
High-End Edge:
Intel Ultra
Qualcomm Snapdragon v3
Nvidia Jetson Orin
Typ
SoC (x64) + GPU + NPU
SoC (arm64) + GPU + NPU
SoC (arm64) + GPU + NPU
Befehlssatz SoC
FP, INT, BF16
TBA
FP, INT
Befehlssatz GPU
F16
TBA
FP32, FP16
Befehlssatz NPU
INT8
INT4, TBA
INT8
Form
Chip
Chip
Board, Chip
TOPS (INT)
max. 34 TOPS
TBA 75 TOPS
20–275 TOPS
FLOPS (FP)
max. 4,5 TFLOPS
TBA
max. 5,3 TFLOPS
Stromverbrauch
~18–64 Watt
TBA
~7–60 Watt
Preis
~375 $
~900 $ TBA
~400–1100 $
Deployment eines quantisierten YOLO
In diesem Beitrag gehen wir davon aus, dass wir bereits ein quantisiertes Modell haben. Kurz gesagt ist Quantisierung der Schritt, bei dem die Modellpräzision verringert wird, zum Beispiel statt FP32 auf INT8 quantisiert wird. Auf vielen Hardwareplattformen verbessert das zwar die Inferenzgeschwindigkeit, die Genauigkeit der Erkennung nimmt jedoch ab. Wir diskutieren Quantisierung im nächsten Kapitel, „Quantized YOLO for Edge Solutions”, ausführlicher.
Das Modell-Deployment auf Edge-Hardware ist für jedes Gerät unterschiedlich. Besprechen wir einige Fälle:
- Coral AI funktioniert nur mit INT8-Präzision. Das bedeutet, die Modellgewichte sind in INT8-Präzision und die Inferenz wird als Integer durchgeführt.
- NXP ist ebenfalls am effizientesten bei ausschließlicher Verwendung von INT8-Präzision.
- Intel kann die Inferenz auf verschiedene Weisen ausführen. Es hängt auch davon ab, welche CPU-Generation verwendet wird. Im Allgemeinen besteht es aus einer CPU, auf der FP32 oder eine Kombination aus FP32 und INT8 ausgeführt werden kann, einer iGPU, auf der FP16 ausgeführt werden kann, und einer NPU, auf der nur INT8 ausgeführt werden kann.
Testen wir nun die Inferenzgeschwindigkeit auf folgender Hardware:
*Intel i7-9750H
**Raspberry Pi4 + Coral AI Edge TPU
Modell
mAP50-95
Inferenz
Durchschn. Geschwindigkeit
yolov8n F32
37,4
Nicht quantisiert, Intel*
24,40 ms ~ 40 FPS
yolov8n INT8+FP32
37,1
Quantisiert, Intel*
15,18 ms ~ 66 FPS
yolov8n FULL INT8
32,9
Quantisiert, Coral**
61,00 ms ~ 16 FPS
Das Setup
Das ist ein selbst gebautes Setup, das Tauben nahezu in Echtzeit erkennen kann. Es handelt sich um einen Raspberry Pi4, der mit einem Akkupack und 2 Coral AI Edge TPUs verbunden ist. Eine für die Vogelerkennung und die andere für die Vogelklassifizierung. Nach dem Deployment dieses Setups, zusammen mit zwei Plastikkrähen, landete in den letzten 1,5 Jahren keine Taube mehr auf meinem Balkon. Schaut euch mein Repo an, um sicherzustellen, dass keine Tauben euren Balkon verschmutzen. GitHub Repository


Für weitere technische Details zur Quantisierung, lest weiter im nächsten Kapitel „Quantized YOLO for Edge Solutions”.
Agent Hub
Gehen Sie über vereinzelte AI-Piloten hinaus und schaffen Sie eine sichere, skalierbare Grundlage für Agentic AI in Ihrer gesamten Organisation.
Zur Demo




