-
http://www.i-do-more.de/mine-robo/do...deoCapture.zip
bevor ich das programieren anfange erst mal gucken ob es überhaupt geht.
das Zip runter laden und mal gucken ob du ein bild bekommst.
Wichtig ist das du den Video Capture Pin auf RGB stellst sonst kann man das bitmap hinter nicht lesen. (Ist ne macke im Programm)
Dann soltest du mit dem Pick Frame Button einzel bilder machen können.
wenn das soweit Funktioniert machen wir weiter ok ?
Vielleicht könnte mir einer von euch zweien mal genau er klären wie der Ablauf ist ich kenne die lib bzw. Scilab überhaupt nicht. Aber die ergebnisse sehen toll aus.
Gruß
-
Hallo NumberFive,
hab gerade dein Programm getestet. Es funktioniert einwandfrei. =D> Aber bis jetzt speichert es immer wieder ein neues Einzelbild ab, wenn ich auf den Button klicke. Es müsste dann so sein das es das neu gemachte Bild immer unter dem selben Namen abspeichert. Damit man dann das immer wieder aktualisierte Bild in Scilab einlesen kann.
Und wegen dem genauer erklären brauchst du doch nur die ganzen Threads zum Thema lesen? Wenn dir das aber noch nicht reicht musst du Stochri fragen.
MfG Mike
-
Sicher wie das Programm Funktioniert ist hier erklärt.
Aber nicht wie der Programm ablauf ist.
Also wa machst du nach dem das Bild auf der platte ist ?
Fürst du dann ein dos/cmd comando aus oder guck das
Andere program Cyclisch ob da ein neues Bild ist ?
Gruß
-
Zuerst lädt das Programm das Bild mit "x=imshow('Pfad\Bildname.jpg')" hoch. Dann wird die Position bestimmt. Und der Asuoro dementsprechend angesteuert. Danach beginnt das ganze wieder von vorn, also wird das gleiche Bild wieder hochgeladen etc......
Praktisch immer wenn die Funktion gopos durchgelaufen ist beginnt sie wieder von Vorne bis Asuro die Position ereicht hat.( man könnte also sagen es guckt cyclisch nach einem neuen Bild)
Hoffe ich habe es richtig erklärt und deine frage beantwortet.
MfG Mike
-
Nun kannst du es noch mal runter laden jetzt hast du ein Button mehr
und kannst in der Ini einstellen ob die Bilder nummeriet werden oder nicht.
Hatte eigenlich gehofft das man dem Scilab von aussen sagen könnte das es jetzt neu versuchen soll.
Ohne das ist das für mich nicht verwendbar
Gruß
-
Hallo Number5,
mit einem kleinen Trick könnte man Scilab schon von außen sagen, dass ein neues Bild da ist.
Bis jetzt funktioniert der ganze Scilab-Algorithmus so ( zumindest bei meiner Linux-Version ):
1. scilab triggert per Kommandozeilenbefehl die Bildaufnahem ( Aufruf des Kommandozeilenprogramms "webcam" )
2. Scilab liest das Bild von der Platte
3. Scilab bestimmt die Position des Asuro, zusammen mit der letzten Position berechnet Scilab auch den aktuellen Winkel des ASURO
4. Scilab dreht den ASURO und fährt eine konstante Strecke ( die Ansteuerung erfolgt wieder über Kommondozeilenaufrufe, dort befinden sich die Batch-Dateien Turn und Go, welche die serielle Schnittstelle ansteuern )
Ich habe das ganze Projekt in der Weihnachtszeit in 4 Tagen realisiert. Deshalb auch die etwas umständliche Ansteuerung über die Kommandozeile. Eigentlich gibt es bei Scilab die möglichkeit C-Code in die Funktionsaufrufe einzubinden.
In welcher Programmiersprache hast Du denn dein Programm geschrieben ?
Gruss,
stochri
-
Jo das geht wunderbar. Danke Danke Danke,
aber wie stell ich denn ein das die Bilder nicht nummeriert werden?
MfG Mike
-
Hallo Mike,
irgendeinen Haken hat doch alles, oder =P~
Gruss,
stochri
-
@stochri
das Program ist in VC6 geschrieben da habe ich noch Delphi VB 6 java.
C und Delphi mag ich vb wenn es sein muss und schnell gehen java habe ich erst 5 Ziele oder so geschrieben.
@Mike1
Inder ini ändern
[Bitmap]
Laufend=0
dann sollte das bil nicht mehr nummerit werden
-
Wie schon weiter oben beschrieben, könnte man C-Routinen direkt in Scilab einhängen, dazu gibt es irgendwo ein HowTo.
Der Trick Scilab von außen zu triggern wäre folgender: Scilab schaut in einer Routine immer auf die Platte, ob eine Datei mit bestimmtem Namen existiert. Falls die Datei existiert, wird sie geladen und danach von Scilab gelöscht. Super schnell ist das Verfahren natürlich nicht, aber vielleicht ausreichend.
Falls Du den Code für das Bildaufnahmeprogramm Open Source machen willst, könnte ich Dir auch helfen, den ASURO-Steuerungsalgorithmus direkt in Visual C zu realisieren ( ich will nicht selber in VC programmieren, da ich Linux benutze ).
Der Algorithmus wäre aber relativ schnell in VC zu implementieren.
Mich würde das Projekt interessieren, das Du mit der Bildverarbeitung realisieren möchtest.
Gruss,
stochri