Tijdens eerdere projecten maakten leerlingen en cursisten kennis met supervised learning (Machine Learning) en hoe je het kan toepassen om aan objectclassificatie te doen. We maakten met bovenstaande aanpak reeds een Slimme Vuilnisbak en eigen projecten.
Bovenstaande aanpak is uitstekend als inleiding in objectclassificatie door te werken met bv. een Teachable Machine. Deze aanpak kent echter ook beperkingen, omdat het slechts één klasse per keer detecteert / aantoont. Die aanpak kan dus moeilijk overweg met meer gecompliceerde scenes zoals een drukke straat, een koelkast met meerdere items ... Door gebruik te maken van een YOLO-framewerk kunnen we deze beperking oplossen. YOLOv6 is een éénfasig framework voor objectdetectie, speciaal voor industriële toepassingen, met een hardware-vriendelijk efficiënt ontwerp en hoge prestaties.
Deze aanpak is gebaseerd op aangepaste code van Meituan YOLOv6. Ook de COCO-dataset werd aangepast voor gebruik in het Nederlandstalig onderwijs.
- Lesmateriaal zoals boekjes, slides ...
- Materiaal ontwerpen om eigen datasets te trainen en toe te voegen aan de Notebook ...
- Eindresultaten uit de klaspraktijk ...
- Beter gestructureerde Colab Notebook.
Dit materiaal behoort tot de lessenreeks 'Objectclassificatie v2 met YOLOv6' op het Sint-Lievenscollege Gent. Met dit lesmateriaal is het mogelijk aan objectdetectie te doen met de standaard COCO-dataset, of met een zelfgemaakte dataset. Objectdetectie is mogelijk op drie bronnen, namelijk:
- een afbeelding
- een video
- de webcam-feed
Afbeeldingen en video's kunnen ingeladen worden via de GitHub of vanaf de computer van de leerling. Hierbij kan ook geteld worden hoeveel objecten uit elke klasse uit de dataset er werd gedetecteerd. Bij de webcam kan live objectdetectie worden toegepast, zonder teller-functie.
Standaard maakt de Notebook gebruik van YOLOv6 met de Nano en Small modellen. Deze maken gebruik van de COCO-dataset. Deze werd getraind op circa 120.000 afbeeldingen kan een flink aantal items detecteren; namelijk:
COCO Datasetpersoon | fiets | auto | motor | vliegtuig |
bus | trein | vrachtwagen | boot | verkeerslicht |
brandkraan | stopbord | parkeermeter | bank | vogel |
kat | hond | paard | schaap | koe |
olifant | beer | zebra | giraf | rugzak |
paraplu | handtas | das | koffer | frisbee |
ski | snowboard | sportbal | vlieger | basebalknupel |
basebalhandschoen | skateboard | surfbord | tennisracket | fles |
wijnglas | tas | vork | mes | lepel |
kom | banana | appel | sandwich | sinaasappel |
broccoli | wortel | hot dog | pizza | donut |
cake | stoel | zetel | plant in een pot | bed |
eettafel | toilet | tv | laptop | muis |
afstandsbediening | toetsenbord | GSM/Smartphone | microgolfoven | oven |
broodrooster | lavabo | koelkast | boek | klok |
vaas | schaar | teddybeer | haardroger | tandenborstel |
Voor vragen over deze lessenreeks kan je terecht bij jouw leerkracht over mailen naar: robbe.wulgaert@sintlievenscollege.be
Bedacht en uitgewerkt met educatief doeleinde door Robbe Wulgaert, Sint-Lievenscollege Gent.