Semantische Objekterkennung mit Methoden des Maschinel- len ...
Semantische Objekterkennung mit Methoden des Maschinel- len ...
Semantische Objekterkennung mit Methoden des Maschinel- len ...
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
19. Workshop Computer-Bildanalyse in der Landwirtschaft und<br />
2. Workshop Unbemannte autonom fliegende Systeme in der Landwirtschaft<br />
179<br />
<strong>Semantische</strong> <strong>Objekterkennung</strong> <strong>mit</strong> <strong>Methoden</strong> <strong>des</strong> <strong>Maschinel</strong><strong>len</strong><br />
Lernens<br />
Falk Schmidsberger, Frieder Stolzenburg<br />
Hochschule Harz, Fachbereich Automatisierung und Informatik, Friedrichstr. 57-59,<br />
38855 Wernigerode<br />
Email: fschmidsberger@hs-harz.de, fstolzenburg@hs-harz.de<br />
Zusammenfassung: Mobile Datenerfassung <strong>mit</strong> unbemannten, autonom fliegenden Systemen<br />
(UAS) ist eine preiswerte Alternative zu konventioneller Luftbildfotografie. Derartige<br />
Flugroboter sind häufig <strong>mit</strong> vie<strong>len</strong> Sensoren ausgestattet. Um Piloten die Kontrolle über<br />
das Gesamtsystem zu erleichtern, scheint es daher sinnvoll, bekannte Objekte automatisch<br />
im Flug zu erkennen und daraufhin die Umgebung und diese Objekte zu erkunden.<br />
Hier bietet sich die semantische <strong>Objekterkennung</strong> an, die den Roboter autonomer agieren<br />
lässt. Um ein Objekt zu erkennen, ist es notwendig, herauszufinden, welche Segmente im<br />
Bild typisch für das Objekt sind und in welcher Umgebung anderer Segmente diese auftauchen.<br />
Aus den Segmenten werden normierte Eigenschaftsvektoren berechnet, die <strong>mit</strong><br />
<strong>Methoden</strong> <strong>des</strong> <strong>Maschinel</strong><strong>len</strong> Lernens in ihrer Anzahl reduziert und zu Model<strong>len</strong> der zu erkennenden<br />
Objekte verarbeitet werden. Mit Hilfe dieser Modelle sind die Objekte auch in<br />
unbekannten digita<strong>len</strong> Bildern identifizierbar. Unser Ansatz verwendet <strong>Methoden</strong> <strong>des</strong> <strong>Maschinel</strong><strong>len</strong><br />
Lernens (Entscheidungsbäume, Clustering) und der Bildverarbeitung (Segmentierung,<br />
Kontursignaturen). Die Sensorik der Multikopter kann dabei durch Stereo-<br />
Kameras, die u.a. zur Entfernungsmessung benutzt werden können, und Infrarot-<br />
Kameras, die z.B. landwirtschaftliche Flächen oder archäologische Fundstätten genauer<br />
zu analysieren erlauben, ergänzt werden.<br />
Deskriptoren: Multikopter, <strong>Semantische</strong> <strong>Objekterkennung</strong>, <strong>Maschinel</strong>les Lernen, Computer<br />
Vision, Bildverarbeitung, Anwendungen<br />
Summary: Data acquisition with semi-autonomous flying robots, e.g. multicopters, which<br />
are often equipped with multiple sensors, has several advantages over conventional inspections<br />
or aerial photographs. However, in order to facilitate the handling of the flying<br />
robot for the pilot, it seems to be appropriate to employ semantic object recognition, making<br />
the robot more autonomous. In this paper, we therefore report ongoing work on semantic<br />
object recognition, where the image recognition procedure works as follows: Each<br />
object in an image is composed of segments with different shapes and colors. In order to<br />
recognize an object, e.g. a plane, it is necessary to find out which segments are typical for<br />
this object and in which neighborhood of other segments they occur. Typical adjacent<br />
segments for a certain object define the whole object in the image. A hierarchical composition<br />
of segment clusters enables model building, taking into account the spatial relations of<br />
the segments in the image. The procedure employs methods from machine learning,<br />
Bornimer Agrartechnische Berichte Heft 81<br />
ISSN 0947-7314<br />
Leibniz-Institut für Agrartechnik Potsdam-Bornim e.V. (ATB)
180<br />
Schmidsberger, Stolzenburg<br />
namely clustering and decision trees, and from computer vision, e.g. image pyramid segmentation<br />
and contour signatures. The overall capability of multicopters can be enhanced<br />
by stereo cameras, which are among others useful for measuring distances, and infrared<br />
cameras, which e.g. allow to analyze agricultural areas or archaeological places more precisely.<br />
Keywords: multicopters, semantic object recognition, machine learning, computer vision,<br />
applications.<br />
1 Einleitung<br />
Mobile Datenerfassung <strong>mit</strong> unbemannten, autonom fliegenden Systemen (UAS) ist eine<br />
preiswerte Alternative zu konventioneller Luftbildfotografie. Die Datenerfassung <strong>mit</strong> Multikoptern,<br />
d.h. Flugrobotern <strong>mit</strong> i.d.R. 4 oder 8 horizontal angeordneten Propellern (Bild 1),<br />
bietet verschiedene Vorteile gegenüber konventionel<strong>len</strong> Erkundungen oder Luftbildfotografien.<br />
Im Labor Mobile Systeme an der Hochschule Harz stehen mehrere Multikopter<br />
zur Verfügung. Da<strong>mit</strong> werden hochwertige Luftaufnahmen erstellt (Bild 2) und Forschungsprojekte<br />
zusammen <strong>mit</strong> Unternehmen durchgeführt. Derzeit laufen im Labor Mobile<br />
Systeme an der Hochschule Harz zwei geförderte Projekte zum Einsatz von Multikoptern.<br />
Dabei geht es einmal um die Entwicklung einer Sensorplattform zur Erfassung von<br />
Bild- und Umweltdaten sowie eines Flugassistenzsystems für semi-autonome ferngesteuerte<br />
fliegende Systeme und einmal um die Entwicklung von Verfahren zur mehrdimensiona<strong>len</strong><br />
Objektmodellierung aus der Zusammenführung von <strong>mit</strong> Multikoptern aus niedrigen<br />
Höhen aufgenommenen Infrarotbildern. Die Projekte werden zusammen <strong>mit</strong> regiona<strong>len</strong><br />
Unternehmen durchgeführt und im Zentra<strong>len</strong> Innovationsprogramm Mittelstand (ZIM)<br />
durch das Bun<strong>des</strong>ministerium für Wirtschaft und Technologie gefördert.<br />
Bild 1: Ein Oktokopter der Hochschule Harz<br />
Bornimer Agrartechnische Berichte Heft 81<br />
ISSN 0947-7314<br />
Leibniz-Institut für Agrartechnik Potsdam-Bornim e.V. (ATB)
19. Workshop Computer-Bildanalyse in der Landwirtschaft und<br />
2. Workshop Unbemannte autonom fliegende Systeme in der Landwirtschaft<br />
181<br />
Bild 2: Multikopter-Aufnahme der Hochschule Harz, Haus 2 bis 5<br />
Flugroboter sind häufig <strong>mit</strong> vie<strong>len</strong> Sensoren ausgestattet. Daher erscheint es sinnvoll, die<br />
Selbstständigkeit solcher Flugroboter zu verbessern, da sonst Piloten nur schwer das gesamte<br />
Robotersystem steuern können. Zudem ist es nicht immer möglich, während <strong>des</strong><br />
Fluges die Funkverbindung aufrecht zu halten. Darum ist es wichtig, bekannte Objekte<br />
automatisch im Flug zu erkennen und daraufhin die Umgebung und diese Objekte zu erkunden.<br />
Hier bietet sich die semantische <strong>Objekterkennung</strong> an, die den Roboter autonomer<br />
agieren lässt. Im Folgenden wol<strong>len</strong> wir dieses Verfahren etwas näher vorstel<strong>len</strong> (siehe<br />
auch SCHMIDSBERGER & STOLZENBURG 2011). Dabei werden <strong>Methoden</strong> <strong>des</strong> maschinel<strong>len</strong><br />
Lernens und der grafischen Datenverarbeitung angewendet.<br />
2 <strong>Semantische</strong> <strong>Objekterkennung</strong><br />
Bei der semantischen <strong>Objekterkennung</strong> in digita<strong>len</strong> Bildern werden die Eigenschaften der<br />
zu erkennenden Objekte zunächst aus einer Reihe von Beispielbildern gelernt, denen die<br />
darin enthaltenen Objekte zugeordnet sind. Um die Objekteigenschaften zu bestimmen,<br />
wird je<strong>des</strong> Bild in seine Segmente zerlegt. Ein Segment ist hierbei eine zusammenhängende<br />
Fläche benachbarter Pixel, die einem bestimmten Homogenitätskriterium entsprechen,<br />
z.B. dieselbe Farbe. Je<strong>des</strong> Objekt in einem digita<strong>len</strong> Bild ist aus Segmenten unterschiedlicher<br />
Form und Farbe zusammengesetzt. Um ein Objekt zu erkennen, ist es notwendig<br />
herauszufinden, welche Segmente typisch für das Objekt sind und in welcher<br />
Nachbarschaft anderer Segmente diese auftauchen. Aus den Segmenten werden nor-<br />
Bornimer Agrartechnische Berichte Heft 81<br />
ISSN 0947-7314<br />
Leibniz-Institut für Agrartechnik Potsdam-Bornim e.V. (ATB)
182<br />
Schmidsberger, Stolzenburg<br />
mierte Eigenschaftsvektoren berechnet, die <strong>mit</strong> <strong>Methoden</strong> <strong>des</strong> <strong>Maschinel</strong><strong>len</strong> Lernens in<br />
ihrer Anzahl reduziert und zu Model<strong>len</strong> der zu erkennenden Objekte verarbeitet werden.<br />
Mit Hilfe dieser Modelle sind die Objekte dann auch in unbekannten digita<strong>len</strong> Bildern identifizierbar.<br />
3 Bildsegmentierung<br />
In unserem Ansatz werden die Bilder in zwei Schritten in Segmente <strong>mit</strong> homogener Farbe<br />
zerlegt. Im ersten Schritt wird das Bild <strong>mit</strong> einem Flood-Fill-Algorithmus aufbereitet. Für<br />
je<strong>des</strong> Pixel im Bild werden benachbarte Pixel <strong>mit</strong> ähnlichen Eigenschaften einheitlich eingefärbt.<br />
Im zweiten Schritt werden die Segmente im Bild <strong>mit</strong> einem Image-Pyramiden-<br />
Algorithmus anhand ihrer Färbung er<strong>mit</strong>telt. Für beide Schritte können Routinen der Software-Bibliothek<br />
OpenCV verwendet werden (BRADSKI & KAEHLER 2008).<br />
3.1 Kontursignaturen der Segmente<br />
Die Eigenschaften eines Segments werden in unserem Ansatz durch verschiedene Kontursignaturen<br />
bestimmt. Eine Kontursignatur bildet Eigenschaften der Kontur eines Segments<br />
auf einen eindimensiona<strong>len</strong> Vektor ab (GONZALES & WOODS 2008). Wir verwenden<br />
hierfür vier <strong>Methoden</strong> zur Distanzmessung in der Segmentkontur (Bild 3), die jeweils einen<br />
Vektor fester Länge erzeugen, welche nach einer Normierung zu einem Segmenteigenschaftsvektor<br />
V zusammengesetzt werden. Im Folgenden beschreiben wir nun diese<br />
<strong>Methoden</strong> kurz:<br />
Maximale polare Distanz: In festen Winkelschritten wird die Distanz vom Schwerpunkt<br />
<strong>des</strong> Segments zum entferntesten Pixel in der Segmentkontur bestimmt (Bild 3, Methode<br />
2). Für eine Schrittweite von z.B. 3,6°ergeben sich 100 Messpunkte.<br />
Minimale und Maximale Tangentendistanz: In festen Winkelschritten werden die vom<br />
Schwerpunkt <strong>des</strong> Segments entferntesten Pixel in der Segmentkontur bestimmt. Durch<br />
diese Pixel wird jeweils eine Tangente an die Segmentkontur angelegt. Jeweils senkrecht<br />
zur Tangente wird die minimale und die maximale Entfernung vom Berührungspunkt der<br />
Tangente zur gegenüberliegenden Segmentkontur gemessen (Bild 3, <strong>Methoden</strong> 1 und 4).<br />
Strah<strong>len</strong>methode: In festen Winkelschritten werden die vom Schwerpunkt <strong>des</strong> Segments<br />
entferntesten Pixel in der Segmentkontur bestimmt. Durch diese Pixel und den Segmentschwerpunkt<br />
werden jeweils Geraden gelegt und die Distanzen der jeweils voneinander<br />
entferntesten Konturpixel auf den Geraden gemessen (vgl. Bild 3, Methode 3).<br />
Bornimer Agrartechnische Berichte Heft 81<br />
ISSN 0947-7314<br />
Leibniz-Institut für Agrartechnik Potsdam-Bornim e.V. (ATB)
19. Workshop Computer-Bildanalyse in der Landwirtschaft und<br />
2. Workshop Unbemannte autonom fliegende Systeme in der Landwirtschaft<br />
183<br />
1<br />
2<br />
3<br />
4<br />
1 – Minimale Tangentendistanz<br />
2 – Maximale polare Distanz<br />
3 – Strah<strong>len</strong>methode<br />
4 – Maximale Tangentendistanz<br />
Bild 3: Kontursignaturmethoden<br />
3.2 Normierte Segmenteigenschaftsvektoren<br />
Da die Distanzvektoren aus der Vermessung der Segmentkontur gewonnen wurden, sind<br />
sie invariant gegenüber der Translation <strong>des</strong> Segments. Durch das Verschieben der Elemente<br />
der Distanzvektoren werden diese invariant gegenüber der Rotation. Hierzu wird<br />
einfach das Element <strong>mit</strong> der größten Wertausprägung und dem größten Winkel zur<br />
nächstgrößten Wertausprägung als erstes Element im jeweiligen Distanzvektor genommen.<br />
Die Wertausprägungen selbst werden <strong>mit</strong> der jeweiligen maxima<strong>len</strong> Ausprägung auf<br />
den Bereich [0.0, 1.0] normalisiert. Die vier Distanzvektoren werden nach ihrer Normierung<br />
zu einem Segmenteigenschaftsvektor V zusammengeführt. Dieser ist nun gegenüber<br />
Translation, Rotation und Skalierung <strong>des</strong> jeweiligen Segments invariant.<br />
4 <strong>Maschinel</strong>les Lernen<br />
Zum Lernen der Objekteigenschaften kommen die Data Mining-<strong>Methoden</strong> Clustering, Entscheidungsbäume<br />
und Boosting zum Einsatz (BERRY & LINOFF 2011, BREIMAN et al. 1983,<br />
HASTIE et al. 2011). Für je<strong>des</strong> zu erkennende Objekt werden aus einer Menge schon klassifizierter<br />
Beispielbilder Objektmodelle generiert. Mit diesen Model<strong>len</strong> können die Objekte<br />
später in unklassifizierten Bildern detektiert werden.<br />
Bornimer Agrartechnische Berichte Heft 81<br />
ISSN 0947-7314<br />
Leibniz-Institut für Agrartechnik Potsdam-Bornim e.V. (ATB)
184<br />
Schmidsberger, Stolzenburg<br />
4.1 Clustering<br />
Um die Anzahl der Eigenschaftsvektoren zu reduzieren, werden Clustering-Algorithmen<br />
(k-Means und agglomerative Verfahren) angewandt (BERRY & LINOFF 2011, HAN & KAMBER<br />
2006). Die Segmenteigenschaftsvektoren aller Bilder für jede Objektkategorie werden in<br />
Clustern zusammengefasst. Jeder Cluster repräsentiert dabei eine Menge einander ähnlicher<br />
Vektoren. Mit dem entstandenen Cluster-Modell für jede Kategorie werden für alle<br />
Segmente eines Bil<strong>des</strong> die Cluster-Zugehörigkeiten er<strong>mit</strong>telt.<br />
4.2 Segment-Cluster Bäume<br />
Aus den Cluster-Zugehörigkeiten und aus den Lagebeziehungen der Segmente im Bild<br />
können Bildeigenschaftsvektoren erstellt werden, <strong>mit</strong> denen durch <strong>Maschinel</strong>les Lernen<br />
Klassifikationsmodelle trainiert werden können. In unserem Ansatz werden die Cluster-<br />
Zugehörigkeiten der Segmente eines Bil<strong>des</strong> berechnet und in einen Segment-Cluster-<br />
Baum, je nach Lage im Bild, eingefügt (Bild 5). Die Wurzel <strong>des</strong> Baumes ist das Bild selbst.<br />
Ein Kind-Knoten repräsentiert ein Segment, das un<strong>mit</strong>telbar in dem Segment enthalten ist,<br />
welches durch den Vater-Knoten repräsentiert wird. Knoten auf einer Ebene im Baum sind<br />
<strong>mit</strong> einer gepunkteten Linie als Nachbarn gekennzeichnet, falls die betreffenden Segmente<br />
im Bild benachbart sind. Die verschiedenen Farben in der Visualisierung der Segment-<br />
Cluster-Zuordnung symbolisieren die verschiedenen Ebenen in der Segment-Hierarchie<br />
(Bild 4).<br />
C4<br />
C2<br />
C7<br />
C3<br />
C4<br />
C4<br />
C4<br />
C6<br />
C5<br />
C5<br />
C7<br />
C5<br />
C5<br />
C7<br />
C1<br />
C8<br />
Bild 4: Segment-Cluster Zuordnungen<br />
Bild 5: Segment-Cluster Baum<br />
4.3 Entscheidungsbäume und Boosting<br />
Aus dem Segment-Cluster Baum eines Bil<strong>des</strong> werden nun fünf verschiedene Typen von<br />
Bildeigenschaftsvektoren ausgelesen. Typ 1 enthält jeweils einen Pfad von einem Blattknoten<br />
zur Wurzel. Typ 2 enthält jeweils alle direkten Kindknoten eines Knotens im Baum.<br />
Typ 3 enthält jeweils alle direkten Kindknoten eines Knotens, die als benachbart gekennzeichnet<br />
sind. Typ 4 enthält jeweils die Anzahl der jeweiligen Cluster-Zugehörigkeiten aller<br />
Unterbäume und Typ 5 die Anzahl der jeweiligen Cluster-Zugehörigkeiten aller gefunde-<br />
Bornimer Agrartechnische Berichte Heft 81<br />
ISSN 0947-7314<br />
Leibniz-Institut für Agrartechnik Potsdam-Bornim e.V. (ATB)
19. Workshop Computer-Bildanalyse in der Landwirtschaft und<br />
2. Workshop Unbemannte autonom fliegende Systeme in der Landwirtschaft<br />
185<br />
nen Segmente im Bild. Mit diesen fünf verschiedenen Typen von Bildeigenschaftsvektoren<br />
werden zehn Entscheidungsbaum-Modelle <strong>mit</strong> Boosting gelernt (BREIMAN et al. 1983, HASTIE<br />
et al. 2011). Die erstellten Modelle werden dann in Kombination benutzt, um unbekannte<br />
Bilder zu klassifizieren. Wenn von den zu lernenden Objekten Beispielbilder aus verschiedenen<br />
Perspektiven zum Lernen zur Verfügung stehen, sind die Modelle bis zu einem gewissen<br />
Grad auch gegenüber einer perspektivischen Verzerrung invariant. Hier bietet es<br />
sich an, zusätzlich die Vektor-Repräsentation selbst stärker invariant gegenüber perspektivischen<br />
Verzerrungen zu machen. Dies wird Gegenstand zukünftiger Arbeit sein.<br />
5 Ergebnisse<br />
Die implementierten Algorithmen wurden u.a. zur Klassifikation von Bildern einer Bilddatenbank<br />
<strong>mit</strong> Schmetterlingsfotos (SCHMID et al. 2004) eingesetzt. Sieben Bildkategorien<br />
(Schmetterlingsarten) wurden gelernt. Die Erfolgsrate bei der Klassifikation der Bilder lag<br />
bei 99.5%, wenn das Bild in der ursprünglichen Trainigsmenge enthalten war, und bei<br />
27.14% sonst (Bild 6). Eine zufällige Zuordnung läge hier nur bei 1/7 = 14.28%. In einer<br />
weiteren Testreihe wurden Fotos <strong>mit</strong> der Kamera <strong>des</strong> Oktokopters <strong>mit</strong> fünf verschiedenen<br />
Kategorien aufgenommen. Die Erfolgsrate lag hier bei 100.00% bzw. 46.00%. Eine zufällige<br />
Zuordnung läge hier nur bei 1/5 = 20%. Die nächsten vergleichenden Tests werden <strong>mit</strong><br />
der Bilddatenbank <strong>des</strong> Bildklassifikationswettbewerbs The Pascal Visual Object Classes<br />
(VOC) Chal<strong>len</strong>ge (EVERINGHAM et al. 2010) durchgeführt werden. Auf unserer aktuel<strong>len</strong> Oktokopter-Hardware<br />
benötigt die Klassifikation eines Bil<strong>des</strong> zirka 0.7Sekunden.<br />
Bild 6: Bildklassifikationsraten<br />
6 Schlussbemerkungen und Ausblick<br />
Die Resultate zeigen bereits jetzt gute Erkennungsraten. Ziel ist es, unseren Ansatz zur<br />
Echtzeit-<strong>Objekterkennung</strong> auf autonomen Multikoptern einzusetzen. Für diese Anwendung<br />
sollten die Algorithmen jedoch noch effizienter implementiert werden. Hierzu zählt<br />
Bornimer Agrartechnische Berichte Heft 81<br />
ISSN 0947-7314<br />
Leibniz-Institut für Agrartechnik Potsdam-Bornim e.V. (ATB)
186<br />
Schmidsberger, Stolzenburg<br />
eine Parallelisierung der Implementierung für eine bessere Nutzung moderner Computertechnik,<br />
da<strong>mit</strong> eine Geschwindigkeitserhöhung bei der Bilderkennung erreicht wird. Die<br />
Berücksichtigung weiterer räumlicher Beziehungen zwischen den Segmenten sowie eine<br />
verbesserte Segmentierung der Bilder sollte die Erkennungsrate noch weiter verbessern.<br />
Die <strong>Objekterkennung</strong> wird in die Gesamt-Sensorik <strong>des</strong> Oktokopters integriert und um Stereo-Kameras,<br />
die u.a. zur Entfernungsmessung benutzt werden können, und Infrarot-<br />
Kameras, die z.B. landwirtschaftliche Flächen oder archäologische Fundstätten genauer<br />
zu analysieren erlauben, ergänzt werden.<br />
Literaturverzeichnis<br />
BERRY M.J.A., LINOFF G. (2011): Data Mining Techniques: For Marketing, Sales, and Customer<br />
Relationship Management. John Wiley & Sons Inc., 3rd edition<br />
BRADSKI G.R., KAEHLER A. (2008): Learning OpenCV - computer vision with the OpenCV library:<br />
software that sees. O’Reilly<br />
BREIMAN L., FRIEDMAN J.H., OLSHEN R.A., STONE C.J. (1983): Classification and Regression Trees<br />
(The Wadsworth Statistics/Probability Series). Wadsworth Publishing<br />
EVERINGHAM M., VAN GOOL L., WILLIAMS C.K.I., WINN J., ZISSERMAN A. (2010): The pascal visual<br />
object classes (voc) chal<strong>len</strong>ge. International Journal of Computer Vision 88:303–338<br />
GONZALES R.C., WOODS R.E. (2008): Digital Image Processing, Third Edition. Pearson Education,<br />
Inc.<br />
HAN J., KAMBER M. (2006): Data Mining: Concepts and Techniques. Morgan Kaufman Publishers,<br />
2nd edition<br />
HASTIE T., TIBSHIRANI R., FRIEDMAN J. (2011): The Elements of Statistical Learning: Data Mining,<br />
Inference, and Prediction. Springer Series in Statistics. Springer, New York, 5 th edition<br />
SCHMID C., LAZEBNIK S., PONCE J. (2004): Semi-local affine parts for object recognition. In<br />
Proceedings of the British Machine Vision Conference, volume 2: 959–968<br />
SCHMIDSBERGER F., STOLZENBURG F. (2011): Semantic object recognition using clustering and<br />
decision trees. In Joaquim Filipe and Ana Fred, editors, Proceedings of 3rd International<br />
Conference on Agents and Artificial Intelligence, volume 1: 670–673<br />
Bornimer Agrartechnische Berichte Heft 81<br />
ISSN 0947-7314<br />
Leibniz-Institut für Agrartechnik Potsdam-Bornim e.V. (ATB)