Bij Tryolabs zijn we gepassioneerd over het bouwen van computer vision-oplossingen die impact hebben op de echte wereld . Heel vaak betekent dit de integratie ervan om op edge-apparaten te draaien. In onze reis om AI on the edge onder de knie te krijgen, hebben we de afgelopen jaren verschillende projecten ontwikkeld, variërend van hackaton-robots tot community-aware zoals MaskCam, een open-source slimme camera rond Jetson Nano. Deze projecten zijn degenen die ons ertoe aanzetten om diep in de nieuwste technologieën te duiken en beter te begrijpen hoe we complexe oplossingen kunnen bouwen met hoge prestatievereisten.

Samenwerkingsprojecten hebben altijd onze prioriteit. We werken graag samen met geweldige organisaties om geweldige oplossingen te bouwen. Deze keer zijn we een partnerschap aangegaan met Seeed, een hardware-innovatieplatform dat nauw samenwerkt met technologieleveranciers van alle soorten en maten en hoogwaardige en betaalbare hardware levert. Ze bieden bijvoorbeeld een breed scala aan NVIDIA-producten op hun Jetson Platform.

Het doel was om gebruik te maken van de hardware van Seeed, met name met behulp van hun reComputer edge-apparaten die zijn gebouwd met de Jetson Xavier NX 8GB-module, en een computervisieanalyse te ontwikkelen oplossing die een uitdagende taak op zich neemt in het huidige industrie 4.0-veld. Meer specifiek kozen we voor de uitdaging het detecteren van veiligheidshelmen in realtime.

Introductie van Industrie 4.0

Industrie 1, 2, 3… 4? De een na de ander hebben industriële revoluties onze recente geschiedenis opnieuw gedefinieerd. Eerst was de komst van mechanisatie, gevolgd door elektrificatie, en automatisering kwam op de derde plaats. Elk van deze revoluties was gebaseerd op de prestaties van degenen die eraan voorafgingen en bracht een aantal nieuwe technologische vooruitgang met zich mee, waardoor ze het label revolutie verdienden. Combinatie van hyperconnectiviteit, automatisering, kunstmatige intelligentie en realtime gegevens, deze vierde revolutie — Industrie 4.0 — brengt fysieke en digitale technologieën samen, waardoor een holistisch en beter verbonden ecosysteem voor organisaties ontstaat. Dankzij de ondersteuning van machines die steeds slimmer worden naarmate ze toegang krijgen tot meer gegevens, wordt de industrie efficiënter, productiever en minder verspillend.

Ongetwijfeld hebben plaatsen zoals fabrieken en bouwplaatsen voldoende ruimte om Industrie 4.0 te omarmen en kunnen ze profiteren van de adoptie ervan. Overvloedige mogelijkheden variëren van het optimaliseren van de logistiek binnen een fabriek tot het heroverwegen van de toeleveringsketen tot het benutten van realtime informatie. Maar niet alle bedrijfstakken staan ​​te springen om grote veranderingen door te voeren. Hoewel Construction 4.0 de volgende grote stap in de bouwsector zal zijn, staan ​​bouwplaatsen nog steeds achter met adoptie. De grote belofte van de Construction 4.0-revolutie ligt in de bijna volledige automatisering van de gehele projectlevenscyclus. Deze automatisering omvat het gebruik van digitale tweelingen bij elke stap, van planning tot exploitatie, inclusief ontwerp en constructie.

Bij het bespreken van de bouw moet men erkennen dat het een van de gevaarlijkste industrieën in de VS is. Door de jaren heen hebben persoonlijke beschermingsmiddelen (PBM) hun weg gevonden naar de verplichte vereisten van bouwplaatsen vanwege het belang ervan voor de veiligheid van werknemers. PBM kunnen items bevatten zoals een veiligheidsbril, oordopjes, handschoenen of helmen. Industrie 4.0 heeft ook alles te maken met de integratie van persoonlijke beschermingsmiddelen via het Internet of Things (IoT) om beter te begrijpen hoe de apparatuur wordt gebruikt en om zelfs actie te ondernemen wanneer dat nodig is, zoals een waarschuwing wanneer een werknemer een verboden zone betreedt om mogelijke gevaren te voorkomen.

Niet alleen IoT is op dit gebied van toepassing, ook AI is een mooie match. Gezien de vooruitgang in deep learning-algoritmen en de enorme hoeveelheid beschikbare gegevens die elke dag wordt gecreëerd, zijn AI-technieken enorm uitgebreid naar diverse taken en omgevingen, en talloze industrieën zijn deze technologieën gaan toepassen. Het gebied van computervisie heeft de afgelopen jaren enorme vooruitgang geboekt, het ontwikkelen van geweldige oplossingen voor het begrijpen van scènes en bouwplaatsen zijn absoluut een geweldige plek om ze te omarmen. Deze technologie kan bijvoorbeeld een bijdrage leveren door inzicht te geven in PBM-compliance. Persoonlijke beschermingsmiddelen zijn essentieel voor werknemers, het gebruik ervan is in verschillende situaties verplicht, dus controle over de toepassing ervan is essentieel om de risico's voor zowel de gezondheid van werknemers als de verantwoordelijkheid van werkgevers te minimaliseren.

Computervisie op het randje

Het lijkt lang geleden dat embedded apparaten alleen taken konden uitvoeren met lage rekenkosten. Het gebruik van klassieke computervisietechnieken en het schrijven van software met programmeertalen op laag niveau was vroeger het enige alternatief voor ontwikkelaars. Maar zelfs toen werd de kwaliteit van de resultaten beperkt door wat die technieken konden bereiken. Door de jaren heen zijn er verbeteringen aangebracht met betrekking tot zowel de beschikbare software als hardware. Tegenwoordig zijn deze apparaten veel krachtiger en betaalbaarder. State-of-the-art deep learning-modellen hebben hun weg gevonden naar deze apparaten, waardoor een geweldige detectiekwaliteit mogelijk is met weinig tot geen fijnafstemming. Ja, je leest goed. Machine learning op edge-apparaten is al een tijdje een ding. Door de constante verbetering van de verwerkingscapaciteit kunnen ontwikkelaars hun software sneller schrijven, omdat ze nu programmeertalen op hoog niveau (zoals Python) kunnen gebruiken.

De uitdaging

Veiligheidshelmen helpen verwondingen op bouwplaatsen en in fabrieken te voorkomen en te minimaliseren. Daarom is het gebruik ervan in het grootste deel van de wereld verplicht. Er zijn echter nog steeds tekortkomingen in de continue monitoring van het gebruik ervan. In de meeste gevallen is dit proces handmatig, waardoor het erg duur en inefficiënt is. De huidige technologie plant het zaad van nieuwsgierigheid om betere alternatieven te zoeken en te verkennen, gezien onze huidige mogelijkheden en middelen.

Door samen te werken met technologieleveranciers van hardware tot de cloud, biedt Seeed een breed scala aan hardwareplatforms en sensormodules die klaar zijn om te worden geïntegreerd met bestaande IoT-platforms. Het voorgestelde plan bestaat uit het creëren van een end-to-end oplossing om het gebruik van veiligheidshelmen in realtime te monitoren en deze te implementeren op een Jetson Xavier NX-module geleverd door Seeed.

Hardwarecomponenten

De Jetson Xavier NXis een kleine maar krachtige module die geschikt is voor AI-toepassingen in embedded en edge-apparaten. Het is uitgerust met een 384-core NVIDIA Volta GPU, een 6-core Carmel ARM CPU en twee NVIDIA Deep Learning Accelerators (NVDLA). Het kan een AI-prestatie van 21 TOPS bereiken met een stroomverbruik van 20 W (of 14 TOPS in een energiezuinige modus met een stroomverbruik van slechts 10 W). Deze specificaties in combinatie met het 8 GB LPDDR4x-geheugen met meer dan 59,7 GB/s bandbreedte, maken deze module tot een ideaal platform voor het uitvoeren van AI-netwerken met versnelde bibliotheken voor diepgaand leren en computervisie. Samen met de Jetson Xavier NX gebruikten we een Logitech C922USB-webcam om de uiteindelijke oplossing in realtime te testen.

Het model

YOLOv5 is een van de meest gebruikte algoritmen voor objectdetectie. Het is niet alleen in staat om uiterst nauwkeurige detecties te berekenen, maar het werkt ook razendsnel, waardoor gebruikers realtime objectdetectietoepassingen kunnen maken. Sinds het begin in 2016 met de publicatie van Joseph Redmond, staat het YOLO-algoritme bekend om zijn prestaties. Het ongelooflijk kleine formaat maakte meteen de weg vrij voor mobiele apparaten. Het gewicht van een getraind YOLOv5-model is aanzienlijk kleiner dan dat van YOLOv4, waardoor het gemakkelijker is om YOLOv5-modellen te implementeren op embedded apparaten. YOLOv5 is ongeveer 88% kleiner dan YOLOv4. Wanneer YOLOv5 op een NVIDIA Tesla P100 GPU wordt uitgevoerd, kan het objecten detecteren met 140 FPS, vergeleken met de maximale capaciteit van 50 FPS van zijn voorganger.

Een YOLOv5 Medium-architectuur is getraind om continu het gebruik van veiligheidshelmen op de bouw te controleren locaties en fabrieken. De detector kan de gezichten van de mensen op een frame lokaliseren en ze classificeren in de categorieën “helm” en “geen helm”.Aangezien voor een specifieke persoon in een video deze categorie sterk gecorreleerd moet zijn door opeenvolgende videoframes. De open-source trackingbibliotheek van Tryolabs Norfair stelt ons in staat om robuustere en minder luidruchtige criteria voor deze classificatie te krijgen. Door gebruik te maken van videotracking, hebben we een stemsysteem geïmplementeerd met behulp van het label dat is gekoppeld aan verschillende opeenvolgende detecties om met meer vertrouwen te beslissen of een persoon een helm draagt ​​of niet. Daarom is er bewijs voor meerdere frames nodig om elke persoon te classificeren. Een enkele verkeerd geclassificeerde detectie is niet genoeg om de categorie waarin een persoon wordt geplaatst te veranderen.

De dataset

Elke dag worden er quintiljoenen bytes aan gegevens gecreëerd en AI-modellen profiteren van dit feit. Het aantal afbeeldingen dat dagelijks naar internet wordt geüpload, heeft het bestaan ​​van openbare datasets voor een breed scala aan toepassingen mogelijk gemaakt. Het hebben van toegang tot deze afbeeldingen is natuurlijk niet de enige vereiste voor het maken van een dataset. Wanneer u werkt met leren onder toezicht, kost het ook tijd en menselijke inspanning om elke afbeelding te labelen met de juiste annotaties, zodat onze computers de patronen kunnen herkennen die we nodig hebben. leren. Om een ​​detector te maken die goed werkt voor de verschillende omgevingen, moeten de afbeeldingen van deze dataset van veel verschillende locaties en onder verschillende lichtomstandigheden worden genomen. Ons model kan op zijn beurt patronen leren die goed generaliseren, in tegenstelling tot kenmerken die uniek zijn voor een bepaalde scène.

Gelukkig voor ons zijn er al openbare datasets beschikbaar om gezichten met en zonder helm te onderscheiden, zoals de dataset GDUT-Hardhat Wearing Detection, die we voor dit project hebben geselecteerd. Deze dataset bevat 3869 afbeeldingen, waarvan een subset van 2916 afbeeldingen is geselecteerd voor de trainingsset, nog eens 635 afbeeldingen zijn gekozen voor validatie en de overige 318 afbeeldingen zijn apart gezet voor testdoeleinden.

De resultaten: een kijkje onder de motorkap

We vergeleken de YOLOv5- en de Faster R-CNN-architecturen op een trainingstaak met behulp van deze dataset, met de meeste standaardinstellingen. De training bestond uit 26 tijdperken met multiprocessing en twee NVIDIA GeForce RTX 2080 Ti GPU's. YOLOv5 presteerde aanzienlijk beter dan Faster R-CNN en behaalde betere statistieken in veel kortere tijd. Wat de inferentietijd betreft, presteerden beide modellen op dezelfde manier, met ongeveer 0,08 seconden voor elke afbeelding op het edge-apparaat (12,5 FPS). Het verschil tussen deze modellen zit in de trainingstijd en de uiteindelijke metrics die de kwaliteit van de detecties aangeven. YOLOv5 duurde ongeveer een halve minuut per trainingsperiode, terwijl Faster R-CNN meer dan 3 minuten nodig had om een ​​epoch af te maken. Daarom kon een YOLOv5-trainingstaak in 14 minuten worden voltooid, terwijl het ongeveer een uur en 20 minuten duurde voordat de Faster R-CNN-trainingstaak was voltooid. Bovendien leverde de mAP (Mean Average Precision) gemeten met het YOLOv5-model iets betere resultaten op dan de resultaten die werden behaald met Faster R-CNN (met een absoluut verschil van ongeveer 4%). Deze waarden werden in aanzienlijk minder tijd bereikt.

Prestatievergelijking

33s
YOLOv5 Sneller R-CNN
Trainingstijd 14m 12s (10m 2 GPU's) 1h 19m 27s
Epoch-tijd 3m 10s
Max mAP50 0.9402 0.9065
Max mAP50:95 0.6220 0.5865
Tijd tot mAP50=0.88 2m 16s (epoch 4) 9m 30s (epoch 3)
Tijd tot mAP50:95=0.58 7m 54s (epoch 14) 50m 49s (epoch 16)

De inferentiepijplijn optimaliseren met NVIDIA DeepStream

NVIDIA is al een tijdje een van de belangrijkste spelers in de branche, niet alleen omdat het de toonaangevende fabrikant van GPU's is, maar ook omdat het een breed scala aan tools biedt waarmee snelle, complexe en schaalbare AI-oplossingen kunnen worden gebouwd. Zo stellen het NVIDIA Metropolis-framework en meer bepaald de DeepStream SDK-toolkit de ontwikkelaars in staat om pijplijnen te bouwen voor op AI gebaseerde video-analyse, terwijl ze ook de ontwikkelingstijd verhogen en een uitstekende doorvoer realiseren voor verschillende toepassingen, zoals objectdetectie, segmentatie en beeld. classificatie.

Door gebruik te maken van DeepStream SDK werd de inferentietijd verhoogd tot maar liefst 0,012 seconden voor elke afbeelding (82,8 FPS) op dezelfde NVIDIA Jetson Xavier NX.

Eindelijk de demo's!

Conclusies

Het monitoren van helmgebruik in verschillende scenario's leidt tot nuttige inzichten om preventieve acties te ondernemen, waardoor tijd en middelen worden bespaard. Het is mogelijk om het gebruik van veiligheidshelmen in verschillende omgevingen te monitoren vanaf een edge-apparaat met behulp van ultramoderne detectoren, waardoor een efficiënter en betaalbaarder alternatief ontstaat dan het meer gewone en ruwe handmatige proces. We werken al een tijdje aan projecten voor voorspellend onderhoud en duiken graag in uitdagende projecten die AI-oplossingen tot het uiterste brengen. Als u een zakelijke behoefte heeft waarvan u denkt dat deze baat kan hebben bij AI on the edge, aarzel dan niet en neem contact met ons op.

Facundo Lezama
Machine Learning Engineer, Tryolabs

Agustín Castro
Ingenieur machine learning, Tryolabs

0

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *