Hallo, ich habe kürzlich einen Proxxon-Bohrständer um eine Videokamera im Sockel erweitert, um beim Bohren von doppelseitigen Platinen eine visuelle Navigationshilfe zu haben. Dabei wird die Platine beim Bohren von unten mit der Kamera betrachtet und das Bild dann auf einem Bildschirm wiedergegeben. Das klappt soweit sehr gut. Mein Problem ist nun, dass das aufgenommene Bild 1. vertikal gespiegelt werden muss und 2. ich gerne eine Zielhilfe in Form eines Kreuzes, eines Kreises o.ä. hätte. Diese Zielhilfe soll auf die Bohrerspitze zentiert werden können und fortan zum anpeilen der Bohrstellen dienen. Als einfachste Lösung würde ich gerne zunächst die Videodaten im PC bearbeiten lassen, nur leider finde ich kein Tool, mit dem die Videodaten direkt von der Kamera aufgenommen und in Echtzeit mit der Spiegelung und dem Overlay versehen werden können. Das Programm VirtualDub bietet diese Funktion mit den Filtern flip vertically und Logo. Daher würde ich dieses Programm sehr gerne verwenden. Leider lassen sich die Filter jedoch nicht während der Bildvorschau anwenden sondern offenbar erst auf bereits erstellte Aufnahmen. Hat einer von Euch hier einen Tipp für mich oder ein alternatives Programm unter Windows oder Linux? Mit Gruß und Dank vorweg Mike
Mike schrieb: > Hat einer von Euch hier einen Tipp für mich oder ein alternatives > Programm unter Windows oder Linux? Nicht direkt - aber im Webcam-Bereich sind solche Funktionen doch recht üblich? Evtl. da mal suchen?
Hallo, im Roboternetz hat mal jemand soetwas ähnliches gebaut, allerdings ist keine Spiegelfunktion drin und der Sourcecode ist verschollen: http://www.roboternetz.de/community/threads/36999-Zu-programmierendes-Softwaretool-zum-Platinenbohren-gesucht!?highlight=webcam+bohren
Hallo Helferlein, vlc kann sowas? Wie genau geht das? Ich habe derzeit eine Grabberkarte mit FBAS-Eingang verbaut, die das Kamerabild digitalisiert. Mit Gruß Mike
Sowas kann man eigentlich mit wenig Mühe klassisch "ausprogrammieren", z.B. in VB, Delphi oder RealBasic ...
Frank schrieb: > Sowas kann man eigentlich mit wenig Mühe klassisch "ausprogrammieren", > z.B. in VB, Delphi oder RealBasic ... Und wie stehts mit der Totzeit? Es ist nicht sonderlich brauchbar, wenn das Schirmbild der Realität um eine Sekunde, oder so hinterher hinkt.
Hallo, der Tipp mit VLC war sehr hilfreich. Das Programm weist in der Tat ein paar sehr nützliche Echtzeiteffekte auf, die direkt auf das Kamerabild angewendet werden können. Ich habe VLC 1.1.9 unter Linux mit zwei Grabberkarten getestet. Geometrische Bildtransformationen sind möglich sowie das Einblenden eines Logos inkl. Transparenz des Logo-Hintergrundes. Die Latenz konnte nach einigen Versuchen gut reduziert werden, so dass nur noch ein minimaler zeitlicher Versatz existiert, der zwar merklich, aber kaum störend ist. Somit ist das Problem mit dieser Kombination durchaus lösbar. Vielen Dank! Mike
Frank schrieb: > Sowas kann man eigentlich mit wenig Mühe klassisch "ausprogrammieren", > z.B. in VB, Delphi oder RealBasic ... Hallo, habe eben kurz ein OpenCV-Code-Beispiel angepasst (deshalb in C) ohne Anspruch auf Perfektion. Meine Webcam taucht einfach als /dev/video0 auf, damit funktioniert es einfach so. Grüße Tom
Nachtrag: Latenz ist bei meinem System spürbar, aber nicht störend.
Hallo Tom, vielen Dank für dein Code-Beispiel. Ein eigenes Programm, welches das Device direkt auf die Ausgabe schreibt und dabei über OpenCV noch Tranformation und Overlay realisiert... das wäre natürlich das Optimum. Besonders, wenn es noch eine rudimentäre GUI für die Koordinateneingabe des Zielkreuzes gäbe. Ich habe mit OpenCV noch gar nichts gemacht, aber ich werde deinen Code nochmal eingehend betrachten und versuchen, das auf meinem Rechner zum Laufen zu bekommen. Mit C, GUI und Linux in Kombination habe ich noch wenig Erfahrungen. Wäre also eine Motivation zur Einarbeitung :) Mit welcher GUI-Bibliothek arbeitest du? QT oder GTK? Vielen Dank für deine Mühe. Ich bin für weitere Anregungen sehr dankbar. Mit Gruß Mike
Hallo mike, als GUI-Bibliothek habe ich die integrierte Highgui von OpenCV benutzt, für sowas einfaches wie oben reicht das, Knöpfe und Schieberegler gäbe es sogar auch ;). Mit ernsthafter GUI-Programmierung habe ich mich nie beschäftigt. In dem Beispiel wird das Kreuz einfach per Mausklick ins Bild geklickt. Wenn Du komplett neu einsteigst, ist es vielleicht einfacher, OpenCV mit Python zu benutzen, anstatt in C mit Zeigern rumzufuhrwerken. Ich habe das ganze (aus eigenem Interesse) mal (gepfuscht) nach Python portiert (jetzt unter 50 Zeilen). Python müsste unter jedem Linux schon dabei sein, bei Ubuntu muss nur noch python-opencv nachinstalliert werden. Grüße und viel Spaß Tom (jetzt eingeloggt)
Hallo Tom, ich habe gerade mal versucht deinen Code in den Python-Interpreter zu laden. die OpenCV-Bibliothek für Python ist installiert. Leider bekommt Python jedoch offenbar OpenCV nicht eingebunden. root@xubuntu:/home/xubuntu/Downloads# python bohrhilfe.py ImportError: numpy.core.multiarray failed to import Traceback (most recent call last): File "bohrhilfe.py", line 5, in <module> import cv File "/usr/lib/pymodules/python2.7/cv.py", line 1, in <module> from cv2.cv import * ImportError: numpy.core.multiarray failed to import Hast du da einen Tipp für mich? Mit Gruß Mike
... das Betriebssystem ist übrigens XUbuntu 12.04. Also recht aktuell.
Moin. Wurde numpy bei python-opencv schon mitinstalliert? Wenn nein, muss das evtl. noch nachinstalliert werden. Bug: In der Zeile mit cv.Flip muss die 0 zu 1 geändert werden.
OpenCV wird das beste sein. Die Beispiele kann man sich sehr schnell hinbiegen so wie mans braucht.
Ich hätte da auch noch was programmiert. Braucht QT, und soweit ich mich erinnere, nur die video4linux-libs. Im Wesentlichen ist das Programm ein Abklatsch aus irgendeinem Howto und auf das Wesentliche reduziert. Dafür hat's praktisch keine Latenzen und ist recht kompakt geraten :-)
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.