Zielerkennung und Verfolgung per Kamera

OP #4746860
Hallo Leute, ich habe da mal ein paar Fragen. Vielleicht könnt ihr mir 
mal helfen. Ich habe ein paar Ansätze, die ihr vielleicht korrigieren 
könnt.
Auf jeden Fall schonmal ein Dankeschön voraus.

Hier mein Vorhaben:
Ich möchte ein Gestell bauen, das per Kamera ein Ziel erkennt und 
Verfolgt.
Die Kamera wird dabei wie ein Zielvisier sein, sprich mit einem 
Fadenkreuz auf dem Bildschirm ausgestattet sein und das Ziel soll 
möglichst immer im Fadenkreuz bleiben, egal ob es sich bewegt oder 
nicht.
Die Kamera ist auf der X- und Y-Achse jeweils mit einem Schrittmotor 
ausgestattet. Die Zielerkennung sollte zunächst einmal kein Problem 
sein,
gehen wir mal davon aus, dass das Ziel erkannt wurde.
Jetzt hat die Kamera oder der PC die Daten, wo das Ziel im Sichtfeld der 
Kamera ist. Jetzt soll das Arduino in wenigen millisekunden und in 
kleinen Zeitabständen ständig die benötigte Entfernung für die X- und 
Y-Achse erhalten, die es zu bewegen hat.

Wie kann ich eine solche Sache realisieren?

Danke an jeden, der mir hierbei auf die Sprünge hilft
#4746905
Fang mal an mit die Bilderkennung : ein USB-camera und Open-CV reicht um 
die erster Schritten zu setzen. Einmal das object erkannt ist, kan man 
leicht die Position in bild seriell ausgeben nach einen Arduino. Da 
lauft dan einen sketch die immer die ist-pos mit die soll-pos vergleicht 
und entsprechend 2 Motoren ansteuert : eine für die X-achse, andere für 
die Y-achse. Nach meine Erfahrung ist die Bilderkennung das Schwierige 
Teil !
Gast #4746986
Jan H. schrieb:
> Da lauft dan einen sketch die immer die ist-pos mit die soll-pos
> vergleicht und entsprechend 2 Motoren ansteuert : eine für die X-achse,
> andere für die Y-achse.

In dem "entsprechend" steckt die nächste Hinterhältigkeit.

Wenn immer nur die X- und Y-Fehler die Motor zu Schritten veranlassen, 
wird die Kamera immer hinterher hinken. Es gilt also, auch die 
(Winkel-)Geschwindigkeit des Objektes zu schätzen, um die Kamera schon 
mal ungefähr richtig nachzuführen. Die Positionsfehler dienen dann zur 
Korrektur der Geschwindigkeit, z.B. weil das Objekt seine Geschindigkeit 
ändert.
Gast #4747033
Tolga Y. schrieb:
> wenn das ziel sich bewegt, wird die kamera ja sich weiter hinbewegen
> müssen als es vom fehler angegeben bekommt

...heisst was in deutscher Sprache? ...oh Mann, Tasten drücken kann 
jeder, aber sinnvolle Buchstabenfolgen produzieren, ist wohl, ohne 
eingeschaltetes Gehirn, doch etwas schwieriger...
#4747124
Tolga Y. schrieb:
> Die Zielerkennung sollte zunächst einmal kein Problem
> sein,
> gehen wir mal davon aus, dass das Ziel erkannt wurde.

Kein Problem ist gut. Wenn man erstmal weiß wohin die Kamera muss, dann 
ist das kein Problem sie dahin zu fahren. Zu wissen wohin sie Fahren 
muss ist bei deinem Projekt genau der Knackpunkt.
Fang einfach mal an mit deinem Algorithmus ein Objekt auf einem Bild zu 
erkennen und wenn das funktioniert gehst du zu bewegten Bildern über.
Gast #4747127
Tolga Y. schrieb:
> wenn das ziel sich bewegt, wird die kamera ja sich weiter hinbewegen
> müssen als es vom fehler angegeben bekommt

Ja, damit sie bei nächsten Kamerabild (weitgehend) an der richtigen 
Stelle ist und nicht schon wieder einen ähnlichen Fehler feststellen 
muss.
Das Kalman-Filter "weiß" wo sich das Objekt beim nächsten Bild ungefähr 
sein müßte, i.e. bestimmt z.B. nicht nur wo das Objekt ist, sondern auch 
wie schnell es sich bewegt und veranlaßt die Kamera "mitzuziehen". Das 
macht jeder Schütze, wenn er auf ein bewegtes Objekt zielt. Sonst würde 
er nie richtig treffen.
Gast #4747141
M. K. schrieb:
> Zu wissen wohin sie Fahren muss ist bei deinem Projekt genau der
> Knackpunkt.

So wie der TO schreibt, ist das für ihn Nasenwasser, der absolute Profi 
in sowas! Für ihn ist der Knackpunkt bei der Motoransteuerung!

Gruss Chregu

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 10 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.