2008-09-22 28 views
24

Quiero conectarme a una cámara web USB en .NET, específicamente usando C#. Siendo nuevo en .NET, no sé qué tipo de soporte hay en las bibliotecas estándar para hacerlo. Encontré un ejemplo en la web que copia bitmaps a través del portapapeles, pero parece muy raro (y probablemente lento). ¿Hay una mejor manera?¿Cómo me conecto a una cámara web USB en .NET?

Respuesta

18

Deberá usar Windows Image Acquisition (WIA) para integrar una cámara web con su aplicación. Hay muchos ejemplos de esto disponible. Aquí hay un C# Webcam User Control con la fuente.

Aquí están algunos artículos más y blogs de las personas que buscan resolver el mismo problema son:

+0

Hola. ¿Esto todavía está actualizado? Microsoft comenta que WIA en Vista en adelante no es compatible con video, creo que quieren decir que solo admiten escáneres. Además, su segundo enlace, que corresponde al ejemplo de WIA cuando llega al artículo, dice que usa direct-show * y no menciona WIA *. ¿Esto significa que realmente deberíamos usar show directo hoy en día? – noelicus

2

Realmente depende de lo que quieras hacer. WIA es principalmente para capturar imágenes fijas de dispositivos de imágenes, y DirectShow (utilizado a través de directshow.net o DirectX administrado) es para acceder a funciones de video más completas.

La otra opción es crear una aplicación WPF. Tiene una gran cantidad de soporte integrado para video (en la medida en que tener un video clip en bucle como un botón es bastante trivial), y debe ser rápido y fácil de desarrollar.

9

Nota interesante, WIA ya no es compatible con Vista para realizar Capturas de Webcams. Principalmente lo enfocaron hacia Escáneres y tirando imágenes fijas de las cámaras.

Además, los fabricantes más grandes como logitech han abandonado WIA y están a favor de DirectShow.

+2

+1, aunque ¿puede incluir algún enlace para respaldar esto con más detalle? – DuckMaestro

5

Hay un paquete con funciones con muchas cosas que hacer con los sistemas de visión por computadora llamado AForge. Y tienen una manera fácil de obtener imágenes de cámara web desde una cámara USB si todavía estás buscando.

Solo echa un vistazo al código de ejemplo para el código de ejemplo del sensor de movimiento de visión por computadora. Estoy seguro de que puede sacar las llamadas de función que necesita de él como lo hice.

[Lamento necro, pero esto podría ser de utilidad a alguien en el futuro]

+0

No hay nada de malo en agregar información útil más tarde; esto no es Usenet :) – egrunin

Cuestiones relacionadas