Bei der entwickelten Datenaufzeichnungs-Pipeline handelt es sich um eine beispielhafte Umsetzung zur Datenaufzeichnung und Annotation von Bilddaten, um künstliche neuronale Netze für die Objektdetektion damit zu trainieren. Ziel ist es, ein vortrainiertes Convolutional Neural Network (CNN) mit den aufgezeichneten und teilautomatisiert annotierten Daten nachzutrainieren und entsprechend eines Transfer-Learning Ansatzes auf das Zielsystem anzupassen. Dabei wird der Annotationsaufwand für einen menschlichen Annotierer minimiert, um auf diese Weise Kosten auch Zeit einzusparen.
Um Daten aufzeichnen zu können wird vorausgesetzt, dass es einen ROS-basierten Sensortreiber gibt. Das Open Source Framework ROS bietet dabei eine Vielzahl vorgefertigter Treiber für gängige Hardware-Komponenten aus dem Bereich der Robotik und des automatisierten Fahrens. Weiterhin existiert eine starke Open Source Community für den Fall, dass eine Eigenentwicklung eines Treibers umgesetzt werden muss. Innerhalb des ROS-Frameworks wurde eine Softwarekomponente entwickelt, welche die vom Sensor empfangenen Bilddaten in einem Datensatzformat auf eine Festplatte speichert. Außerdem können die Bilddaten vor der Speicherung mit klassischen Bildverarbeitungsalgorithmen aufbereitet werden. Die Umsetzung kann mit den Programmiersprachen C++ oder Python erfolgen.
Von der Festplatte können die Daten mit dem Annotationstool CVAT eingelesen werden. Besonders hervorzuheben ist, dass CVAT eine Pre-Labeling Funktion bietet, bei der ein vortrainiertes CNN zum Pre-Labeling der aufgezeichneten Daten verwendet werden kann. Dadurch reduziert sich der Annotationsaufwand wesentlich, da die vorgelabelten Bounding Boxes nur noch korrigiert und nicht komplett durch einen Menschen neu erstellt werden müssen. Weiterhin bietet CVAT die Möglichkeit, ein Label (=Klasseninformation für eine Bounding Box) von einem Prelabeling-Netz auf ein neues Label im vorzulabelnden Datensatz zu mappen. Der Export der annotierten Daten kann in Form verschiedener, gängiger Datenformate für die Objektdetektion durchgeführt werden. Dadurch wird es möglich, bestehende KI-Modelle mit verhältnismäßig geringem Aufwand mit den aufgezeichneten und annotierten Daten nachzutrainieren.
Nach dem Datenexport können die annotierten Daten von einem Data-Reader an ein CNN-Modell übergeben werden, welches damit entsprechend des Transfer-Learning Ansatzes nachtrainiert und so auf den Zielanwendungsfall angepasst wird.