Wetenschap
Drone met stereocamera. De kleine witte doos bevat het embedded systeem, die de enigszins verschoven beelden van de twee camera's in realtime evalueert om obstakels te detecteren. Krediet:Fraunhofer IOSB
Of het nu voor de auto of de drone is:het ontwikkelen van beeldverwerkingssoftware voor embedded systemen kost veel tijd en is daarom erg duur. Nu maakt het Tulipp-platform het mogelijk om sneller en goedkoper energiezuinige embedded beeldverwerkingssystemen te ontwikkelen, met een drastische verkorting van de time-to-market. Het Fraunhofer Instituut voor Optronica, Systeemtechnologieën en beeldexploitatie IOSB is lid van het EU-consortium dat het proces vereenvoudigde.
Op het eerste gezicht drones, rijhulpsystemen en mobiele medische diagnoseapparatuur lijken niet veel met elkaar gemeen te hebben. Maar in werkelijkheid doen ze dat wel:ze maken allemaal steeds meer gebruik van beeldverwerkingscomponenten, bijvoorbeeld voor het detecteren van obstakels en voetgangers. Beeldverwerking kan ook worden gebruikt met mobiele röntgenapparatuur om een adequate beeldkwaliteit te garanderen bij verminderde stralingsniveaus, waardoor de radioactieve blootstelling aanzienlijk wordt verminderd.
In tegenstelling tot een werkcomputer, waar afmetingen en energieverbruik niet bijzonder kritische factoren zijn, toepassingen zoals deze vereisen kleine, lichtgewicht, energiezuinige beeldverwerkingscomponenten die toch realtime in staat zijn. Hardwareplatforms die zijn gebaseerd op conventionele computerarchitecturen en processors kunnen niet goed aan deze vereisten voldoen. Daarom worden vaak embedded systemen gebruikt die gebruikmaken van field-programmable gate arrays (FPGA's).
Veldprogrammeerbare poortarrays zijn logische componenten waarvan de circuitstructuur vrij kan worden geconfigureerd met behulp van een speciaal type programmering, meestal met betrekking tot de taal op laag niveau VHDL. Er is een probleem, echter:de meeste beeldverwerkingstoepassingen zijn geschreven in programmeertalen van een hoger niveau, zoals C/C++, en hun migratie naar de ingebedde systemen is zeer gecompliceerd. Niet alleen verschilt VHDL sterk van andere programmeertalen, maar de code moet ook aangepast worden aan de specifieke hardware. Dit betekent dat zelfs bestaande VHDL-programma's niet kunnen worden overgedragen naar andere hardware. Softwareontwikkelaars moeten bij elk nieuw systeem vrijwel helemaal opnieuw beginnen.
Starterkit voor het snel implementeren van bijzonder energiezuinige embedded systemen
De stereocamera en het embedded systeem dat op de drone is geïnstalleerd. Krediet:Fraunhofer IOSB
Een consortium van acht partners uit zes landen, waaronder het Fraunhofer Instituut voor Optronics, Systeemtechnologieën en beeldexploitatie IOSB in Karlsruhe, heeft deze procedure nu aanzienlijk vereenvoudigd in het Tulipp-project. "Het resultaat is een ontwikkelplatform dat bestaat uit ontwerprichtlijnen, een configureerbaar hardwareplatform en een realtime-compatibel besturingssysteem dat multicore-processors ondersteunt, evenals een programmeertoolketen, " zegt Dr.-Ing. Igor Tchouchenkov, groepsmanager bij Fraunhofer IOSB. "Een starterkit die door een van onze partners in Tulipp op de markt is gebracht, zorgt voor extra ondersteuning. De starterkit maakt het ontwikkelen van dergelijke applicaties veel sneller en eenvoudiger. Het overzetten van C++ programma's naar FPGA, wat vaak enkele maanden werk betekent voor de ontwikkelaar, met de Tulipp starterkit binnen enkele weken te verwerken."
Dit betekent dat de ontwikkelaar eerst moet overwegen, gebaseerd op de software geprogrammeerd in C++, welke code-elementen naar welke hardwarecomponenten moeten worden gedistribueerd en welke programmastappen kunnen worden geoptimaliseerd of geparallelliseerd. De geformuleerde ontwerprichtlijnen helpen bij deze taak. Dan komt het starterspakket om de hoek kijken. Het bevat de configureerbare hardware waarop de benodigde sensoren en uitvoerapparaten kunnen worden aangesloten, het multiprocessor-compatibele real-time besturingssysteem, en wat de STHEM-toolchain wordt genoemd. De applicaties in de toolchain maken het mogelijk om het C++ programma zo te optimaliseren dat het zo makkelijk en snel mogelijk overgezet kan worden naar de FPGA. "Een speciale focus van de toolchain ligt op energieoptimalisatie:het doel is om beeldverwerkingssystemen te ontwerpen die zoveel mogelijk kunnen worden gevoed door een kleine batterij, ", zegt Tchouchenkov. "De toolchain maakt het mogelijk om het energieverbruik voor elke codefunctie afzonderlijk weer te geven en te optimaliseren."
Honderd keer sneller dan een high-end pc
Videobeeld van een van de twee camera's van de drone. Krediet:Fraunhofer IOSB
Het consortium werkte drie specifieke gebruiksscenario's uit om het Tulipp-platform te ontwikkelen en te testen:Het Fraunhofer IOSB-onderzoeksteam richtte zich op stereocamera-gebaseerde obstakeldetectie voor drones, terwijl andere projectpartners werkten aan voetgangersdetectie in de buurt van een auto en aan verbetering van de livekwaliteit van röntgenfoto's gemaakt door mobiele C-Arms tijdens chirurgische ingrepen. In Tulipp porteerden ze de bijbehorende beeldverwerkingssoftware van C++ naar FPGA.
De resultaten zijn indrukwekkend:de verwerking, die oorspronkelijk enkele seconden duurde om een enkel beeld op een geavanceerde pc te analyseren, kan nu in realtime op de drone rennen, dat wil zeggen dat er nu ongeveer 30 beelden per seconde worden geanalyseerd. "De snelheid van het voetgangersdetectiealgoritme zou met een factor 100 kunnen worden verhoogd:nu kan het systeem 14 beelden per seconde analyseren in vergelijking met één beeld elke zeven seconden. Verbetering van de röntgenbeeldkwaliteit door ruisonderdrukkende beeldfilters toe te passen, maakte het mogelijk om de stralingsintensiteit tijdens chirurgische ingrepen tot een vierde van het vorige niveau.Tegelijkertijd kon het energieverbruik voor alle drie de toepassingen aanzienlijk worden verminderd.
Hetzelfde beeld met overlappende diepte-informatie van de stereobeeldanalyse, dichtbij obstakels in rood markeren. De pijl geeft het resulterende aanbevolen uitwijkpad aan. Krediet:Fraunhofer IOSB
Wetenschap © https://nl.scienceaq.com