2008-09-22 6 views
24

Ich möchte eine Verbindung zu einer USB-Webcam in .NET, insbesondere mit C#. Neu bei .NET Ich weiß nicht, welche Art von Unterstützung es in den Standardbibliotheken dafür gibt. Ich habe ein Beispiel im Internet gefunden, das Bitmaps durch die Zwischenablage kopiert, aber das scheint sehr hacky (und wahrscheinlich langsam). Gibt es einen besseren Weg?Wie verbinde ich mich mit einer USB-Webcam in .NET?

Antwort

18

Sie müssen Windows Image Acquisition (WIA) verwenden, um eine Webcam mit Ihrer Anwendung zu integrieren. Es gibt viele Beispiele dafür. Hier ist ein C# Webcam User Control mit Quelle.

Hier sind einige weitere Artikel und Blog-Posts von Menschen auf der Suche das gleiche Problem Sie sind zu lösen:

+0

Hallo. Ist das noch aktuell? Microsoft kommentiert, dass WIA ab Vista kein Video unterstützt - ich denke, sie meinen, dass sie nur Scanner unterstützen? Auch Ihre zweite Verbindung, die zum WIA-Beispiel ist, wenn Sie zu dem Artikel gelangen, der sagt, verwendet Direkt-Erscheinen * und erwähnt nicht WIA *. Bedeutet das, dass wir heutzutage eigentlich Direct-Show benutzen sollten? – noelicus

2

Es hängt wirklich davon ab, was Sie tun möchten. WIA dient hauptsächlich zum Aufnehmen von Standbildern von Bildverarbeitungsgeräten, und DirectShow (entweder über directshow.net oder Managed DirectX) ermöglicht den Zugriff auf umfangreichere Videofunktionen.

Die andere Option besteht darin, eine WPF-Anwendung zu erstellen. Es hat eine riesige Menge an eingebauter Unterstützung für Video (in dem Ausmaß, dass ein Looping-Videoclip als Knopf ziemlich trivial ist) und sollte schnell und einfach zu entwickeln sein.

9

Interessante Randnotiz, WIA wird von Vista nicht mehr unterstützt, um Captures von Webcams zu machen. Sie zielen hauptsächlich auf Scanner und ziehen Standbilder von Kameras.

Auch größere Hersteller wie Logitech haben WIA zugunsten von DirectShow aufgegeben.

+2

+1, aber können Sie irgendwelche Links hinzufügen, um dies detaillierter zu bestätigen? – DuckMaestro

5

Theres ein Paket mit Funktionen mit vielen Dingen mit Computer Vision Systemen namens AForge zu tun. Und sie haben eine einfache Möglichkeit, Webcam-Bilder von einer USB-Kamera zu bekommen, wenn Sie noch suchen.

Schauen Sie sich einfach den Beispielcode für Beispielcode für den Computer Vision Bewegungssensor an. Ich bin sicher, dass Sie die Funktionsaufrufe, die Sie benötigen, wie ich herausnehmen können.

[tut mir leid, NECRO, aber das könnte für jemanden in der Zukunft von Nutzen sein]

+0

Nichts daran falsch, später nützliche Informationen hinzuzufügen - das ist nicht Usenet :) – egrunin

Verwandte Themen