No se puede capturar la imagen desde la cámara FireWire usando OpenCV
windows-xp (1)
Estoy tratando de capturar imágenes desde una cámara Claron MicronTracker (FireWire) usando OpenCV 2.3.1 en Windows XP. La función cvCaptureFromCAM
no funciona. Leí que OpenCV no puede obtener datos de cámaras digitales que no sean USB en plataformas de Windows. ¿Es cierto? ¿No hay una solución para obtener datos de una cámara FireWire usando OpenCV en Windows?
Por favor, ayúdame.
Ciertamente puede usar OpenCV con cámaras Firewire en Windows. He hecho esto con varios proveedores diferentes de cámaras Firewire (Point Gray, Imaging Source, etc.). Desafortunadamente, no podrá usar la clase OpenCV VideoCapture
para hacer esto.
Sus opciones son utilizar el controlador CMU1394 (suponiendo que su cámara mencionada anteriormente es compatible), o el controlador de la cámara del proveedor para capturar los marcos y el lugar de esos búfers de datos en el a cv::Mat
. Si necesita un control específico de los parámetros de la cámara, su mejor opción será usar el controlador del proveedor. Esto te dará el mayor control, pero te unirás estrechamente a su cámara. Podría VideoCapture
e implementar el controlador del proveedor bajo la misma interfaz para mitigar un poco ese acoplamiento.
Aquí hay un breve ejemplo de cómo hacer esto con el controlador CMU.
EDITAR: descubrí hoy que OpenCV ha incorporado soporte para cámaras compatibles con CMU desde mayo de 2010. La clase que implementa esto está aquí . No creo que esto esté compilado en las bibliotecas por defecto. Por lo tanto, tendrá que construir OpenCV desde la fuente usted mismo. Deberá descomentar la línea //#define HAVE_CMU1394 1
para que funcione. Espero que sea útil!