USB-CAM Serie Download

FAQ

FAQ

USB-CAM Serie

Wie können Kameras der PHYTEC-USB-CAM-Serie unter Linux verwendet werden?

Unter Linux können USB Kameras, die UVC (USB Video Capture) kompatibel sind, als V4L-Device angemeldet und verwendet werden.

Alle PHYTEC-USB-Kameras können wir auf Wunsch mit UVC-konformer Firmware zur Verfügung stellen. Die BSPs von vielen unserer Module enthalten bereits uvcvideo-Treiber sowie passende Demoscripte.

Von uns mit UVC-konformer Firmware ausgestattete Kameras liefern RAW-Daten im Bayer-Format. Falls Sie statt dessen einen RGB- oder YUV-Datenstrom benötigen, erfordert dies eine Umrechnung, beispielsweise mittels GStreamer.

Damit der UVC-Treiber mit RAW-Daten von Farbkameras arbeiten kann, sind zusätzliche Anpassungen erforderlich, damit er das Bayer-Format umrechnen kann. Hierzu gibt es auf unserem FTP-Server einen Patch:

ftp://ftp.phytec.de/pub/ImageProcessing/USBCAM/Linux/Patch_for_uvc_support/

Dieser Patch ist für einen 3.4er Kernel. Er wurde auf unseren Embedded Systemen sowie unter openSUSE 12.2 getestet.

Bei Verwendung einer monochromen Kamera ist die Anwendung des Patches nicht nötig.

Wenn Sie Gstreamer verwenden, dann können Sie dort alternativ zur Anwendung des Patches auch einfach das Bayer-Plugin in die Queue mit aufnehmen.

Fragen und Antworten zu ähnlichen Produkten

Was muß ich beachten, wenn ich bewegte - z.B. rotierende - Teile mittels eines Blitzlichts zu einem bestimmten Zeitpunkt aufnehmen will? Der Blitz würde ja zu einem beliebigen Zeitpunkt innerhalb der Kamera-Bildaufnahme auftreten.

Wenn der Blitz asynchron zur Vertikalfrequenz der Kamera ausgelöst wird, kann es vorkommen, daß er gelegentlich im Bereich des Bildwechsels gezündet wird. In diesem Fall kann es zu folgenden Effekten kommen:

(a) Während des Bildwechsels ist die Kamera einen kurzen Moment lang unempfindlich, da in diesem Moment ein Löschen der auf dem Chip befindlichen Ladungen (CCD) bzw. ein Auslesevorgang (CMOS) stattfindet. Zusätzlich wird in diesem Zeitraum die Belichtungszeit-Steuerung vorgenommen. D.h. je nach eingestellter - bzw. automatisch ermittelter - Belichtungszeit wird der Chip absichtlich lichtunempfindlich gehalten.
Trifft der Blitz in diesem Zeitraum ein, so wird seine Lichtenergie nicht oder nur zum Teil zur Belichtung des Bildes verwendet.
Durch Einstellung der Kamera auf die längste mögliche Belichtungzeit wird dieser Einfluß verringert. Manche Kameras (z.B. VCAM-020) bieten zusätzlich die Möglichleit, durch Abschalten des sog. XSUB-Impulses den lichtunempfindlichen Zeitraum auf ein Minimum zu reduzieren.

(b) Im Bereich des Bildwechsels kann es vorkommen, daß die Blitzleuchtdauer mit dem Bildwechsel überlappt. Also selbst wenn man den Effekt (a) vernachlässigt, kann es vorkommen, daß z.B. die Hälfte der Biltzleuchtdauer noch zum Ende eines Bildes eintrifft und die zweite Hälfte zu Beginn des folgenden Bildes. Das Ergebnis sind zwei Bilder, die nur halb so stark belichtet sind wie Sie es erwarten. (Die anteilige Verteilung ist natürlich willkürlich und kann jedes beliebige Teilerverhältnis haben, wobei 50:50 das ungünstigste Verhältnis wäre).

Da man das Timing freilaufender Videokameras nicht beinflussen kann, gibt es für die Handhabung in diesen Fall folgende Möglichkeiten:

- nachträgliche Helligkeitsangleichung der Aufnahme anhand einer Referenzmarke. Schlimmstenfalls muß die Aufnahme mit dem Faktor 2 helligkeits- (oder genaugenommen kontrastkorrigiert) werden.

- Verwerfen der unterbelichteten Aufnahme, wenn das Ereignis sich zyklisch wiederholt.

- Auswertung des VSYNC-Impulses der Kamera und Verzögerung der Blitzauslösung, wenn diese im Bereich der Vertikalaustastung liegt. Dies führt bei schnell bewegten Objekten zu einer mehr oder weniger starken Verschiebung des aufgenommenen Objekts im Bild.


Weitere Informationen finden Sie in dem PDF-Dokument "Blitzen mit VCAM und pcGrabbern", das wir Ihnen bei Bedarf gerne zusenden.

Bei den Kameras mit C-Mount-Objektiven kann ich das Bild nicht scharfstellen.

Die Kameras sind für C-Mount oder CS-Mount-Objektive geeignet. C- und CS-Mount unterscheiden sich durch das Auflagemaß. Das ist grob gesagt der Abstand zwischen Objektiv und Sensor.
Für C-Mount-Objektive muss ein 5mm-Zwischenring eingesetzt werden. Dieser Ring liegt den Kameras bei.
Schrauben Sie zuerst den Zwischenring auf die Kamera und dann das Objektiv auf den Zwischenring.
CS-Mount-Objektive benötigen keinen Zwischenring und werden direkt aufgeschraubt.
Welchen Objektivtyp Sie besitzen, können Sie im Katalog ersehen bzw. einfach ausprobieren.

Weitere Information: Handbuch L-549d-2 Quick Cog Einsteiger-Kit, S.27

Wie kann ich das Auflösungsvermögen einer Kamera bestimmen bzw. wie genau kann ich mit einer Kamera messen?

Hier muß der Zusammenhang Kamera - Objektiv - Bildgeometrie betrachtet werden. Alles zusammengenommen geht dies im aufgenommenen Bildausschnitt ein. Bestimmen Sie also zunächst die sichtbare Bildbreite und-höhe (z.B. durch Ausmessen). Entnehmen Sie aus den Kameradaten die Anzahl der Pixel des Sensors. Die maximal mögliche Auflösung können Sie jetzt bestimmen, indem Sie den sichtbaren Bildausschnitt durch die Anzahl der Pixel (jeweils in X- und Y-Richtung getrennt) teilen.

Beispiel:

sichtbare Bildbreite : B = 40 mm
sichtbare Bildhöhe: H = 30 mm

Kamera: VCAM-110-1
Pixelanzahl: 752 x 582

maximal mögliche Auflösung:

(a) horizontal
40mm : 752 Pixel = 0,053 mm/Pixel

(b) vertikal
30 mm : 582 Pixel = 0,052 mm/Pixel

Welche Fehlerquellen und Ungenauigkeiten müssen nun zusätzlich berücksichtigt werden?

- Geometrie (schräge Montierung außerhalb der optischen Achse)
- Beleuchtungseinflüsse (Schattenwurf)
- Objektiv (Abbildungsfehler, Randverzeichnungen)
- Kamera (Bandbreitenbegrenzung, v.a. in X-Richtung, Verzerrungen)
- Framegrabber (Abtastraten-Abweichung)

Je nach Genauigkeits-Anforderung sollte man in X-Richtung die theoretisch erreichbare Genauigkeit mit einem Faktor 0,5 ... 0,7 bewerten, in Y-Richtung kann mit 0,7 gerechnet werden.

Betrieb mehrerer FireWire-Kameras unter Windows

Der Windows-Treiber der PHYTEC-FireWire-Kameras unterstützt den Betrieb von mehreren Kameras an einem System. Mit dem PHYTEC-Demoprogramm (nur in Deutsch) ist das auch testbar, nicht jedoch mit der Version 1.0 des englischsprachigen AMCap, das auf unserer CD mit drauf ist. Erfolgreich arbeitet hingegen z.B. dessen Version 9.20 von Noël Danjou, erhältlich unter noeld.com

Wie können Kameras der PHYTEC-FireWire-CAM-Serie unter Linux verwendet werden?

Die FireWire-Kameras basieren auf dem DCAM/IIDC - Standard (dem Standard für Digitale Video-Kameras auf dem FireWire-Bus).


Um die Kameras unter Linux anzusprechen, wird die Library libdc1394 verwendet.

Diese Library kann hier heruntergeladen werden:

Bitte beachten Sie, daß der Treiber nicht von PHYTEC entwickelt wurde und PHYTEC deswegen auch keinen Support und keine Gewährleistung hierfür übernimmt.


http://sourceforge.net/projects/libdc1394

Eine Beispiel-Applikation, mit der die Kamera über die libdc1394-Library angesprochen werden kann, ist Coriander:

http://www.sourceforge.net/projects/coriander

In Coriander kann unter Services-V4L das benötigte Video-4-Linux - Gerät konfiguriert werden.
Wenn kein Video-4-Linux - Support benötigt wird, stellt das Unicap-Projekt eine einfach anzuwendende API für Capture Devices zur Verfügung:

http://sourceforge.net/projects/unicap

Für die USB-Kameras finden Sie unter Sourceforge ebenfalls entsprechende Kameratreiber.

 

FireWire-CAM-Serie: Lizenzierung des SDKs

Die PHYTEC FireWire-Kameras werden mit einem kostenlosen SDK zur Erstellung eigener Software  ausgeliefert.

Dieses SDK wird in unserem Haus weiterentwickelt und dem Kunden in aktueller Version zur Verfügung gestellt. Bei dieser Aktualisierung muß der Lizenz-Schlüssel erneuert werden.

Der im Handbuch aufgeführte Lizenzschlüssel kann in diesem Fall veraltet sein.


Bitte verwenden Sie immer den aktuellen Lizenzschlüssel. Diesen finden Sie auf der mitgelieferten CD in dem SDK Verzeichnis.

.../FireWireCAMFireWire_SDK/License_V3.0.txt

Wie können Seriennummer und Modellname bei Kameras der FireWire-CAM-Serie unter LabView abgefragt werden?

Verwenden Sie die für das PHYTEC FireWire-SDK bereit gestellte LabView-Extension:

ftp://ftp.phytec.de/pub/ImageProcessing/FireWireCAM/LabView/

Es gibt ein Beispielprogramm im Lieferumfang der LabView-Extension namens serials.vi, das zeigt, wie man Modellbezeichnung und Seriennummer der Kamera anzeigen kann und auch, wie man Geräte anhand dieser Kombination öffnet.

Die Funktionen, die dabei verwendet werden, sind:
IAT_GetDeviceSerial
IAT_GetDeviceModelName
IAT_OpenDeviceByID

Wie können die PHYTEC - FireWire - Kameras von der Software angesprochen werden?

Die PHYTEC FireWire-Kameras arbeiten mit dem standardisierten DCAM-Protokoll und können unter Windows 2000 / XP über den mitgelieferten WDM-Stream-Class-Treiber durch das DirectX - Interface angesprochen werden.
Damit ist eine einfache und komfortable Anbindung an die Anwendungssoftware möglich:

  • Anwendungssoftware, die über eine DirectX- Softwareschnittstelle für Kameras verfügt, kann direkt mit den FireWire-CAMs arbeiten.

  • Eigene Applikationssoftware kann die Möglichkeiten der standardisierten DirectX-Schnittstelle nutzen, um die Kameras einzustellen und Bilddaten zu empfangen.

  • Alternativ kann das mitgelieferte PHYTEC-SDK (DirectX-Wrapper) verwendet  werden. Es ermöglicht einen sehr komfortablen Zugriff auf alle Funktionen der FireWire-CAMs, ohne daß sich der Programmierer in die Komplexität von DirectX einarbeiten muß. Die Programmierung entspricht in etwa der einer Framegrabber-Karte.
    Das SDK beinhaltet Anbindungen an verschiedene Programmierschnittstellen:

    .NET Komponente: für Microsoft Visual Basic .NET und C# .NET

    ActiveX Control: für Microsoft Visual Basic 6

    C++ Class Library:
    für Microsoft Visual C++ 6 und Visual C++ .NET
    Für jede dieser Schnittstellen stellt das SDK
    alle benötigten Binaries, Header und Libraries, eine ausführliche Hilfe sowie Beispielprojekte und Demoprogramme mit Quellcodes zur Verfügung.
Wie können die Kameras der FireWire-CAM-Serie unter LabView verwendet werden?

Die PHYTEC Kameras der FireWire-Serie basieren auf dem DCAM/IIDC - Standard (dem Standard für Digitale Video-Kameras auf dem FireWire-Bus).

Unter LabView gibt es zwei Möglichkeiten die Kameras zu verwenden:

(1) Sie nutzen einen Standart VI welches direkt das DCAM Protokoll verwendet.

(2) Sie Verwenden die für das PHYTEC FireWire-SDK zur Verfügung gestellte LabView-Extension.

ftp://ftp.phytec.de/pub/ImageProcessing/FireWireCAM/LabView/