Hallo,
ich möchte ein Objekt sehr genau tracken. Deshalb suche ich eine USB
Kamera mit hoher Auflösung 1024x768 oder besser noch 1280x1024 und
30fps.
Ich möchte die Bildverarbeitung auf einem Linux Rechner durchführen.
1280x1024 und 30fps klingt viel. Isses auch. Da ich aber ein Objekt
tracke, brauche ich nur einen sehr kleinen Bildausschnitt. Vielleicht
128x128 Pixel. Es wäre also ideal, wenn ich der Kamera mitteilen könnte,
welchen Ausschnitt ich will und sie liefert dann nur diese Daten.
Gibt es sowas (bezahlbar, da Hobby-Projekt) ?
schau mal nach ob deine Digitalkamera dies kann.
Dafuer gibt es spezielle Linuxprogramme, Gphoto ist das erste, was mir
einfaellt, aber es gibt weitere.
RPI Camera (5MPixel) sollte dies auch koennen, wenn du einen eh so ein
RPI rumliegen hast.
Tach,
bin recht skeptisch, dass das mit dem Omnivision-Sensor klappt, die
haben
a) meist nur rolling shutter
b) kriegt man die Register-Specs oft nicht komplett
c) sind sie für framesynchrones Tracking nicht designt
Die Frage ist auch, wie schnell du das ROI (Tracking-Fenster) auslesen
willst. Bisher sind mir so einige Linux-Treiber untergekommen, die bei
hohen Raten Frames verlieren, weil sie keine sauberen "Buffer queues"
implementieren. Richtig zuverlässig hat das schlussendlich nur mit einem
proprietären System geklappt, kann also eine Menge Arbeit werden. Oder
ziemlich teuer (spezielle Industriekameras nötig). Der v4l2-Standard
deckt Tracking nicht ab.
Grüsse,
- Strubi
P.S. Ich glaube was Chris mit "Tracking" bzgl gphoto meint, ist was ganz
anderes...(GPS)
Nein, ich meinte schon das richtige.
Gphoto ist ein guter Ausgangspunkt:
http://www.gphoto.org/proj/
Die Liste der Kameras, welche funktionieren ist hier:
http://www.gphoto.org/proj/libgphoto2/support.php
Überall wo Liveview steht, diese Kamera könnte funktionieren.
Nicht bei jeder Kamera kann man ein ROI für die Liveview Funktion
setzen,
jedoch bei den Kameras, welche dies unterstützen, funktioniert es
problemlos.
Und die fps geht dann hoch.
Um es klarzustelle, ich empfehle ein vorheriges Testen der
Funktionalität
und kein ev. blindes kaufen nach der Liste und dann funktioniert es
nicht.
Ev. hat ein bekannter eine Kamera welche funktioniert, oder man kann sie
in einem Geschäft mit einem Laptop ausprobieren.
Ich habe mit der Raspi-Kamera gespielt. Ein ROI habe ich nicht gefunden.
Und Parameter einstellen ging auch nicht besonders gut.
(Belichtungszeit,Auslösung...)
Ein Objektiv für Schärfe gibt es gar nicht.
Wenn man was richtiges machen möchte, sollte man über dem Niveau der
Raspi-Kamera anfangen.
Im Prinzip gibt es Industriekameras dafür, die dies alles beherrschen.
Der Preis geht aber erst bei 4stellig los.
http://www.alliedvisiontec.com/de/produkte/kameras/gigabit-ethernet/manta/g-201bc.html
>Nicht bei jeder Kamera kann man ein ROI für die Liveview Funktion>setzen,
Finde leider keine Infos, welche Kamera eine Auswahl der ROI
unterstützt. Meine 3 Kameras (Nikon P7700, EasyShare V1003 und s601)
unterstüten kein LiveView und kein ROI.
Wäre aber schon Spitze, wenn ich eine Fotokamera dafür verwenden könnte.
Beim Rumspielen mit gphoto Mir ist allerdings noch eine andere Idee als
Fallback gekommen:
Wenn ich eine Fotokamera mit gutem Bild und Auflösung im Liveview Modus
benutzen kann, aber sagen wir mal nur etwa 1fps hätte, dann würde das
vielleicht auch gehen. Ich kann zwischen den Bildern mit anderen
Sensoren interpollieren. Ich müsste aber nur wissen, zu welchem
Zeitpunkt das Bild aufgenommen wurde: Ein Zeitstempel als Digitaluhr mit
1ms Auflösung im Bild. Vielleicht eine Binäruhr. Und per
Bildverarbeitung könnte ich den Zeitstempel dann ja wieder
interprätieren.
PittyJ schrieb:> Wenn man was richtiges machen möchte, sollte man über dem Niveau der> Raspi-Kamera anfangen.>
Hast Du da auf v4l2-Level mit den Parametern gearbeitet, oder die
Registertabelle des OV-Sensors in die Finger bekommen?
> Im Prinzip gibt es Industriekameras dafür, die dies alles beherrschen.> Der Preis geht aber erst bei 4stellig los.>> http://www.alliedvisiontec.com/de/produkte/kameras/gigabit-ethernet/manta/g-201bc.html
Es gibt einige günstige Module von Aptina, die ROI beherrschen. Habe
damit schon Single-ROI-Tracking bei knapp 500 fps hinbekommen. Das
poor-man-tracking geht schon mit den günstigen
Rolling-Shutter-Handysensoren, aber leider nicht so ganz 100%
fehlerfrei.
Das mit gphoto wusste ich nicht, ist ja interessant.
Grüsse,
- Strubi
Du könntest ein Spartan Atlys Board nehmen. Das hat zwei HDMI-Eingänge
und -ausgänge und dort eine handelsübliche Consumer-Kamera von EBAY
dranhängen. Dann könntest Du die ROI-Wanderung mit ausgeben und
beobachten, während der andere Kanal nur das ROI selber ausgibt - gfs
mit geringerer Bandbreite.
BRAMS für ein 128x128x8x1 (8 Bit monochrom) hätte der 45 Spartan 6
genug.
Ein Beispiel eines Liveviews:
http://breezesys.com/DSLRRemotePro/liveviewfinder.htm
und Liveview heisst >20 fps.
Dann schau dir mal ptpcam an und teste was deine Camera unterstuetzt.
Teste auch gphoto2, vielleicht geht es ja ueber ptp.