Bouw een offline AI-model dat diabetische retinopathie-stadia detecteert met Edge Impulse
Een draagbaar medisch apparaat dat nauwkeurig diabetische retinopathie-stadia kan identificeren zonder internetverbinding, zou blindheid wereldwijd drastisch kunnen verminderen. Met embedded machine learning, zijn algoritmen die direct op batterij-aangedreven hardware draaien, nu haalbaar. Dit artikel loopt door de stappen om zo'n model te trainen met het Edge Impulse-platform.
Diabetische retinopathie beschadigt de bloedvaten aan de achterkant van het oog, en loopt vaak uit tot blindheid als onbehandeld. Meer dan twee-op-de-vijf Amerikanen met diabetes hebben een vorm van de ziekte, wat vroege detectie kritiek maakt. In landelijke gebieden waar oogzorg schaars is, worden zelfs milde gevallen vaak gemist tot ze ernstig worden.
Om dit aan te pakken, hebben we een publiek beschikbare dataset gebruikt om een model te trainen dat DR-ernst kan beoordelen vanuit retinale camera-afbeeldingen. De dataset is verdeeld in vijf klassen:
- Geen DR
- Milde DR
- Matige DR
- Ernstige DR
- Proliferatieve DR
Patiënt-identifiers zijn vervangen door id_code en een diagnostische score van 0 (Geen DR) tot 5 (Proliferatieve DR). Dataset-link.

Omdat de afbeeldingen in een platte structuur opgeslagen waren, schreef ik een VBA-script om de Excel-lijst met id_code-waarden te lezen, elke afbeelding te lokaliseren, en deze te verplaatsen naar de bijbehorende klasmap. Het script is beschikbaar hier. Als u Python of een andere taal prefereert, is vergelijkbare automatisering eenvoudig.

Edge Impulse vereenvoudigt ingestie via de data-upload-interface. Ik voerde vijf afzonderlijke uploads uit – één per klasse – en labelde elke map passend. Het platform biedt ook cloud-bucket-integratie en device-collectie, maar handmatige upload werkte het beste voor onze dataset.

Edge Impulse splitst data automatisch 80/20 in training- en testsets, maar ik voegde ~500 afbeeldingen handmatig toe aan de testset om de klassen beter te balanceren.
Voor het model, selecteerde ik de image-block en paste een transfer-learning-architectuur toe om de vijf DR-stadia te classificeren. Initiële training leverde een beste nauwkeurigheid van ongeveer 74%, wat respectabel is maar misclassificaties benadrukt – vooral tussen ernstige en milde DR. De verwarringsmatrix (hieronder getoond) illustreert deze uitdaging.

In een real-world deployment, zou een draagbare retinale camera een afbeelding vastleggen, het model lokaal draaien, en de clinicijn onmiddellijk notificeren of de patiënt follow-up vereist. De prioriteit is om alle DR-stadia te detecteren, dus de huidige nauwkeurigheid is acceptabel voor een screening-tool.
Mogelijke verbeteringen zijn:
- Meer gelabelde data verwerven om variantie te reduceren.
- Aangrenzende klassen combineren (bijv. milde-matige, ernstige-proliferatieve) om de beslissingsgrens te vereenvoudigen.
- Fine-tunen van het aantal neurale-netwerk-lagen en dropout-rates.

Het finale model inneemt 306 kB flash en 236 kB RAM. Op een Cortex-M4 op 80 MHz varieert de inferentietijd van 0.8s tot 6s, terwijl een Cortex-M7 op 216 MHz sneller is – wat het geschikt maakt voor handheld-apparaten die afbeeldingen on-the-fly vastleggen.
Samenvattend, we hebben gedemonstreerd dat een open-source-dataset een effectief edge-model kan trainen voor diabetische retinopathie-detectie. Het deployen van dergelijke modellen op embedded-microcontrollers of lichtgewicht Linux-apparaten kan betrouwbare screening naar afgelegen of ondergediende gemeenschappen brengen, wat connectiviteitsbarrières overkomt.

Verder details en toekomstig werk zijn beschikbaar hier.
Ingebed
- Voorkomen van Veelvoorkomende Defecten aan Zware Machines: Essentiële Onderhoudstips
- Vier typen cyberaanvallen — Bewezen preventiestrategieën
- Lasporositeit begrijpen: oorzaken, detectie en preventietechnieken
- Belangrijkste oorzaken van machinefaling identificeren en strategieën om downtime te voorkomen
- Interoperabiliteit uitgelegd: hoe uw bedrijf naadloze integratie bereikt
- Machinebeveiliging: Veelvoorkomende Valkuilen, Veiligheidstips en Preventiestrategieën
- Effectieve lekdetectie en reparatie voor industriële luchtsystemen
- Moderne Documentatiepraktijken voor Geïntegreerde PCB en Mechanisch Ontwerp
- De Cloud Revolutie: Hoe Cloud Computing IT, Beveiliging en Carrières Transformeert
- Titanium: van 18e-eeuwse ontdekking tot hedendaagse hoogpresterende toepassingen
- De complete gids tot roestvorming: oorzaken, effecten en preventie