Auswirkungen der Verwendung vieler USB-Webkameras

2692
Martin

Es werden mehrere USB-Webcams mit niedriger Auflösung an einen einzelnen Computer angeschlossen. Welche Auswirkungen könnte dies auf die Leistung haben? Wie können sich beispielsweise vier 320x240-Kameras mit einer einzelnen 640x480-Kamera messen? Ich bin nicht mit der Architektur der USB-Schnittstelle vertraut. Was sind die Leistungshindernisse? Mit Leistung meine ich, wie sich die Zeit beim Lesen der Bilddaten von mehreren Kameras im Vergleich zu einer einzelnen Kamera auswirken würde.

5
gute Frage... studiohack vor 14 Jahren 0

2 Antworten auf die Frage

2
NickG

Im Allgemeinen bedeuten Skaleneffekte eine einzelne hochauflösende Kamera. Ihr System beeinflusst weniger als 4 kleinere Kameras mit einem Viertel der Auflösung. Die einfachste Methode zum Messen der Leistung besteht darin, im Task-Manager mit einer oder zwei angeschlossenen Kameras nachzuschauen und die CPU-Belastung für diese Kamera zu überprüfen. Stellen Sie sicher, dass es einige Prozent nicht überschreitet, sonst könnten Sie langsam langsamer werden. Ich würde empfehlen, dass Sie identische Kameras verwenden, um die Anzahl der geladenen Gerätetreiber zu reduzieren.

Es gibt jedoch möglicherweise viel bessere Möglichkeiten, Ihr Problem zu lösen, als mit 4 USB-Kameras (je nachdem, was Sie versuchen). Sie können beispielsweise dedizierte PCI-Karten erhalten, die 4-16 Kameras aufnehmen können, und alle harte Arbeit wird in Hardware erledigt. Dies bedeutet, dass das Laden der CPU vernachlässigbar ist. Die meisten nehmen normale Composite-Eingänge an, was die Kameras deutlich günstiger macht. Sie können wahrscheinlich 4 Kameras plus Karte für den gleichen Preis wie ein paar anständige Webcams bei eBay kaufen - einschließlich Sicherheitssoftware.

Danke für den Tipp. Die Lösung, die ich suche, umfasst viele (vorzugsweise) IR-Kameras / Sensoren mit niedriger Latenz und niedriger Auflösung. Und hoffentlich nicht zu teuer. Nachtsicht ist mir egal, aber ich möchte nur Reflexstreifen "sehen" können, der Rest ist mir egal, RGB usw. Martin vor 14 Jahren 0
Und ich muss in der Lage sein, die Frames mithilfe einer API in Echtzeit zu erfassen. Ja, ich frage nach einer Menge :) Martin vor 14 Jahren 0
Wenn Sie nach einer kostengünstigen Lösung suchen, würde ich mich für eine PCI-Capture-Karte und analoge Kameras entscheiden. Sie können auf alle 4 Cams auf dieselbe Weise zugreifen und die Tatsache nutzen, dass die harte Arbeit von der Karte erledigt wird. Um zu sehen, was ich meine, suchen Sie in eBay nach Artikelnummern, 260477912704 (PCI) oder 290417512411 nach USB (sie sind nur die ersten beiden, die ich gefunden habe). NickG vor 14 Jahren 0
1
Mark Booth

Denken Sie daran, dass ein QVGA nur eine geringe Bandbreite benötigt, viele billige Webcams jedoch nur mit 'Full Speed' (12 MBit / s) laufen, auch wenn sie "USB 2.0" -Geräte nennen (nur USB 2.0). Hi-Speed-Geräte laufen mit 480Mbit / s.

Nicht nur das, aber wenn Sie mehrere Full-Speed-Geräte an einen standardmäßigen USB-Hub mit nur einem TT-Anschluss anschließen (was die meisten von ihnen sind), müssen alle 4 die 12 MBit / s einer einzigen Full-Speed-Verbindung gemeinsam nutzen .

Wenn Sie also mehrere Full-Speed-Geräte so schnell wie möglich ausführen möchten, sollten Sie einen Multi-TT-Hub kaufen. Am einfachsten zu finden ist der Tetra-Hub von Belkin, aber Sie werden diese wahrscheinlich aus dem Netz holen müssen. Sie werden wahrscheinlich nicht von Ihrem Computerladen vor Ort bestückt.

Ein 4-Port-Multi-TT-Hub sollte jedoch in der Lage sein, 4 Full-Speed-Geräte mit 12 MBit / s für jede Kamera auszuführen.

Im Jahr 2003 gab es in Tom's Hardware Guide einen schönen Artikel über Multi-TT .

Beachten Sie auch, dass dieses Problem nicht auftritt, wenn Sie echte Hi-Speed ​​USB 2.0-Webcams erhalten. 480 MBit / s sollten für viele QVGA-Kameras ausreichen, die alle gleichzeitig streamen, sofern die mitgelieferte Software dies unterstützt.

Bearbeiten: Wenn es sich um eine Bildverarbeitungsanwendung handelt, kann die Auswahl der Schnittstelle von der verwendeten Bildbibliothek abhängen. Für Heimanwendungen ist USB in Ordnung, für den industriellen Einsatz würde ich immer Firewire über USB wählen. Die Steuerung der Bandbreite ist sehr viel feiner und Sie können genau entscheiden, welche Kameras welche Bandbreite erhalten, indem Sie ihre Auflösungen und Frameraten festlegen. Das Firewire-DCAM-Protokoll bietet Ihnen eine große Flexibilität bei der Erfassung des Sensors (Auswahl einer Teilmenge des zu übertragenden Bildes, wodurch Sie bei einer gegebenen Bandbreite möglicherweise viel höhere Frameraten erhalten). Wenn Sie nicht die zusätzliche Flexibilität benötigen, ist der zusätzliche Aufwand natürlich nicht garantiert, aber wenn Sie keine engen Budgetanforderungen haben, haben Sie viele weitere Konstruktionsoptionen.