Registriert seit: 18. Dez 2018
29 Beiträge
Delphi XE3 Professional
|
AW: Objekte zu ihrer Längsachse vertikal ausrichten
23. Mär 2019, 18:54
Erst mal vielen Dank für das Feedback.
Es fallen kontinuierlich mehrere Objekte gleichzeitig an der Kamera(USB 3.0) vorbei.
Der Abstand zur Kamera ist immer gleich, auch die Beleuchtung und der 'Hintergrund' sind immer gleich.
Es ist ein permanenter Produktstrom von Objekten im Bereich von ca. 0.1 mm bis 15 mm mit ca. 50 bis 100 Objekten pro Sekunde.
Die Form ist meistens Oval.
Eine 'mechanische' Ausrichtung der Objekte,
z.B. mit einem Rillenblech ist aus Platzgründen nicht machbar und leider auch nicht sicher.
Mit meiner Routine wird das Objekt quasi in jeder Himmelsrichtung gescannt.
Die 'längste Pixelreihe', die der 'Längsachse' bei einem ovalen oder länglichen Objekt entsprechen müsste,
wird gefunden und der erforderliche Drehwinkel wird ausgegeben.
Die längs ausgerichteten (gedrehten) Objekte werden dann anhand ihrer Merkmale (z.B. Farbe, Farbvorkommen,
Vergleich mit bekannten Mustern aus der Datenbank(z.B. Patternmatching) etc.) klassifiziert und deren Anteile Prozentual ausgegeben.
Da die Erkennung schon viel Rechenpower benötigt, ist jede Geschwindigkeits-Optimierung sinnvoll.
Die von mir vorgestellte Routine funktioniert, aber vielleicht gibt es, wie so oft, oder beim Programmieren immer, eine andere Möglichkeit.
Ich habe trotz langer und häufiger Recherche nichts vergleichbares gefunden.
Wer meine Routine nutzen möchte, muss die Winkel an seine Rotate-Procedure anpassen.
|