Bildverarbeitung für Eimer

Der Einsatz der Bildverarbeitung in der Robotik

Der Eimer ist die klassische Verpackung für viele schüttfähige, flüssige oder pastöse Produkte. Obwohl sich der Roboter für die Automation der Eimerpalettierung geradezu anbietet und in diesem Bereich auch schon häufig zum Einsatz kommt, gibt es hier noch viele Optimierungsmöglichkeiten. In allen Roboterzellen muss das einlaufende Packstück hinsichtlich Position und Orientierung ausgerichtet sein, oder alternativ dem Roboter Position und Orientierung mitgeteilt werden. Die zweite Möglichkeit erlaubt eine einfache Zuführtechnik, verlangt aber im Gegenzug den Einsatz sensorischen Verfahren.

Für die Eimerpalettierung ist neben der Position des Objektes auch die Lage des Bügels- oder Henkels von entscheidender Bedeutung. Bei einer nicht korrekten Positionierung auf der Palette neigen die Eimerhenkel dazu, sich ineinander zu verhaken. Dies hat zur Folge, dass die anschließenden Lagen nicht korrekt in die bereits palettierten Produkte einnisten. Es kommt zwangsläufig zu einer Destabilisierung des Packschemas. Sollten zusätzlich die Eimerhenkel bei einer ungenauen Positionierung über die  Paletten seitlich hinausragen, so können die palettierten Produkte bei Ein-/Auslagerung bzw. Verladung der Palette beschädigt werden. Auch dies ist bei der Palettierung zu vermeiden.

Da die Ausrichtung der Eimerbügel durch Geländer oder Anschläge nicht oder nur sehr aufwendig möglich ist, bieten sich für diese Aufgaben innovative sensorische Verfahren wie z.B. die Bildverarbeitung geradezu an.

Mit den deutlich gefallenen Kosten für die notwendigen Kamerasysteme wird die Bildverarbeitung für die Bügelerkennung immer interessanter. Gerade die Roboterhersteller mit PC basierten Steuerungen  wie bei dem System PARO aus dem Hause roTeg haben hier den Vorteil, dass für die Bildverarbeitung keine weitere Hardware erforderlich ist.

Im Folgenden wird ein Verfahren beschrieben, mit dem die Lage (Position und die Orientierung) eines Eimers im Zulauf einer Roboterzelle mithilfe der Bildverarbeitung ermittelt werden kann.
Bildverarbeitung bedeutet hierbei die Signalverarbeitung von zweidimensionalen, digitalen Fotografien. Mithilfe des Verfahrens der Hough-Transformation für Kreise lässt sich die Position kreisförmiger Objekte, wie zum Beispiel Eimer, Fässer oder Hobbocks bestimmen und in das Koordinatensystem des Roboters transferieren. Mit diesen Informationen ist der Roboter in der Lage, das Objekt Eimer positions- und orientierungsexakt von der einlaufenden Fördertechnik aufzunehmen und zu handhaben.

Hough-Transformation

Die Hough-Transformation ist ein sehr robustes jedoch auch ein rechenintensives Verfahren mit dem kreisförmige Objekte detektiert werden können. Um den Rechenaufwand zu vermindern und gleichzeitig die Genauigkeit der Objektdetektion zu erhöhen, werden daher nur relevante Informationen von einem Objekt für die Berechnung zur Verfügung gestellt. Aufgrund dessen wird im ersten Schritt eine weitere Bildvorverarbeitung durchgeführt in der die Kanten des zu untersuchenden Objekts detektiert werden. Als Kante wird der Übergang von einer dunklen zur einer hellen bzw. von einer hellen zu einer dunklen Bildregion bezeichnet. Für diesen Zweck können zahlreiche Operatoren aus der Bildverarbeitung wie z. B. Sobel, Laplace, Canny etc. eingesetzt werden.

Der nächste Schritt befasst sich mit der Erzeugung eines Akkumulators.  Für die Transformation und die anschließende Auswertung wird eine mehrdimensionale Datenstruktur benötigt. Ihre Anzahl wird in Abhängigkeit der Anzahl der zu ermittelnden Radien gewählt. Sollen im Bild Kreise mit einem einzigen festgelegten Radius detektiert werden, fällt die Datenstruktur 2-Dimensional ansonsten 3-Dimensional aus.

Grundsätzlich können mit der Hough-Transformation Kreise mit einem beliebigen Radius detektiert werden. Dennoch beschränkt man sich in der Praxis auf eine möglichst geringe Anzahl von Radien. Die Gründe dafür liegen in der vereinfachten Auswertung und der Verringerung der Rechenzeit. Für die weitere Betrachtung wird angenommen, dass Kreise von nur einer Größe detektiert werden sollen.

Die Transformation erfolgt in mehreren Durchgängen. Zunächst wird jedes Pixel, das nicht zum Hintergrund des Originalbildes gehört wird, als ein Kreismittelpunkt im Akkumulator angesehen. Weiterhin wird für jeden Kreismittelpunkt ein Kreis mit den Formeln (1) und (2) pixelweise berechnet. Somit repräsentiert jedes Pixel im Originalbild einen Kreis im Akkumulator.

X = Radius const ∗ cos α                               (1)

Y  = Radius const ∗ sin α                               (2)

Abschließend wird für jede berechnete Position der Inhalt der Zelle im Akkumulator inkrementiert (Abbildung 1).

Prinzip der Houghtransformation für Kreise

Abbildung 1: Prinzip der Houghtransformation für Kreise

Die Auswertung erfolgt indem der Akkumulator nach dem höchsten Eintrag durchsucht wird. Dessen Position im Akkumulator entspricht der Position des gesuchten Kreismittelpunkts im Originalbild, wenn die Größe des Originalbilds mit der Größe des Akkumulators übereinstimmt.

Zentrum des Eimers nach Anwendung der Hough-Transformation

Abbildung 2: Zentrum des Eimers nach Anwendung der Hough-Transformation

Die Abbildung 2 zeigt das Ergebnis nach der Anwendung des beschriebenen Verfahrens auf einen Eimer.

Bestimmung der Eimerorientierung

Die Orientierung des Eimers wird anhand der Henkelausrichtung definiert.

In der Abbildung 2 ist der Henkel teilweise von dem Eimerdeckel verdeckt, dadurch wird die Erkennung erschwert. Aus diesem Grund wird an dieser Stelle ein Ansatz verfolgt, der zuerst die Henkelbefestigung detektiert und anschließend aus den ermittelnden Informationen die Henkelausrichtung bestimmt. Im folgendem wird ein Verfahren beschrieben mit dem die Henkelbefestigung ermittelt werden kann.

Im ersten Schritt wird mittels eines Radius die Größe eines Kreises angegeben die sich flächenhaft mit der Befestigung des Henkels überdeckt.

Anschließend werden zwei dieser Flächen, ausgesehen von dem bereits bestimmten Mittelpunkt in einem Abstand, der sich aus dem Radius des Eimers und dem Radius einer Fläche ergibt, so platziert, dass eine Gerade zwischen dem Mittelpunkt der beiden Flächen und dem Mittelpunkt des Eimers entsteht.
Im nächsten Schritt werden die beiden Flächen gleichzeitig auf dem berechneten Radius solange um den Eimer gedreht, bis sie eine maximale Übereinstimmung mit dem Objekt erreichen. Die maximale Übereinstimmung entspricht der Positionen der Befestigung (Abbildung 3).

Abbildung 3: Position der Henkelbefestigung

Abbildung 3: Position der Henkelbefestigung

Des Weiteren werden im Bezug des Eimermittelpunkts die Winkel der gefundenen Befestigung berechnet (Abbildung 4).

Abbildung 4: Winkelposition der Befestigung

Abbildung 4: Winkelposition der Befestigung

Für die Ermittlung der Ausrichtung des Henkels wird der Eimer um einen der berechneten Winkel im Bild rotiert. Das hat zu Folge, dass der Henkel des Eimers sich entweder über dem Mittelpunkt des Eimers bzw. unter dem Mittelpunkt befindet. Des Weiteren werden zwei gleichgroße Bereiche auf die Anzahl der vorhandenen Pixel untersucht. Der Bereich mit der größeren Anzahl der Pixel beinhaltet den Henkel (Abbildung 5).

Abbildung 5: Definition der Bereiche für die Pixelzählung

Abbildung 5: Definition der Bereiche für die Pixelzählung

Anschließend wird ein Vektor in Richtung des Henkels berechnet und in die Ausgangsposition rotiert. Der Vektor zeigt nun in die Richtung des Henkels im aufgenommenen Bild (Abbildung 6).

Abbildung 6: Ausrichtung und Position des Eimers

Abbildung 6: Ausrichtung und Position des Eimers

Die ermittelte Position wird nach der Transformation in Roboterkoordinatensystem als Aufnahmeposition verwendet.

Durch Greifer- und Roboterentwicklungen wie diese können Roboteranlagen zukünftig technisch komfortabler gestaltet werden. Umstellarbeiten für Formatwechsel und Größenanpassungen entfallen, da alle notwendigen Informationen für sich ändernde Palettierprogramme von der Bildverarbeitung geliefert werden können.