Extraer imágenes de una cámara en tiempo real

3

Yo y un grupo de estudiantes estamos construyendo un UAV y queremos poner una cámara de alta calidad (es decir, una lente decente de ~ 100 mm) e interconecta las imágenes con el procesamiento a bordo. Busqué una cámara con interfaz USB o cualquier otra conexión que sea compatible con un Pandaboard o a DE0 , pero no he podido encontrar ninguno que cumpla con las especificaciones (sin ser demasiado caro).

Tenemos un Casio Exilim EX-Z1050 que tiene una grieta en la pantalla, y Así perfecto para integrarse con el UAV. La pregunta es, ¿cuál es la mejor manera de obtener un video o al menos 2 fotos por segundo en tiempo real?

Estaba pensando en usar algo como this para capturar videos o fotos mientras se graban en una tarjeta SD . ¿Cuál es la viabilidad de utilizar tal vez un FPGA para realizar esto? Si alguien sabe dónde puedo encontrar una especificación para el protocolo SD (el de 1/4 bit, no el SPI lento), o quizás una especificación de ingeniería inversa suficientemente útil, un enlace sería muy útil.

¿Alguna otra idea?

¡Muchas gracias!

    
pregunta Madcowswe

2 respuestas

1

La mayoría de las cámaras de la serie A de Canon son capaces de ejecutar el CHDK - Canon Hack Development Kit y también aquí .

  • CHDK le permite comunicarse a través de USB, controlar todas las funciones conocidas de la cámara y agregar funciones adicionales. por ejemplo, puede configurar la detección de movimiento de un área seleccionada con la acción que desee seguir, aunque esta instalación probablemente esté disponible como estándar en ninguna de las cámaras en cuestión.

CHDK se instala en una tarjeta SD insertada en la cámara, la cámara se carga y la ejecuta junto con cualquier archivo de "programa" en el encendido. La cámara no está alterada. Entiendo que la última cámara de la serie A de Canon no es compatible, pero el proyecto es continuo y capaz.

Descripción general aquí

Dicen:

Captura de imagen mejorada: CHDK es compatible con el formato RAW para imágenes (además de JPEG), mayor tiempo de grabación y duración para videos (hasta 1 hora o 2 GB) y varias nuevas opciones de compresión.

Información adicional en pantalla: con CHDK, puede personalizar su presentación en pantalla según el contenido de su corazón, incluida información valiosa como la vida restante de la batería, el histograma, la profundidad de enfoque y más.

Configuración fotográfica adicional: CHDK toma muchas de las funciones ya disponibles en su cámara y le brinda muchas más opciones, incluidos tiempos de exposición más largos (hasta 65 segundos), velocidades de obturación más rápidas (1 / 25,000 seg. o más rápidas), horquillado automático de tus fotos, y más.

Compatibilidad con pequeños programas / secuencias de comandos: CHDK puede ejecutar secuencias de comandos pequeñas que le permitirán a su cámara realizar un conjunto de acciones según las condiciones de la secuencia de comandos. Hay toneladas de secuencias de comandos disponibles, que brindan una funcionalidad como la fotografía con detección de movimiento (que, según se informa, funciona para rayos) y la fotografía de intervalo de tiempo de intervalo ilimitado (vea el video a continuación). Haga clic para ver

Aún mejor, CHDK se está desarrollando activamente, lo que significa que las nuevas características están siempre en el horizonte. En realidad, hay varias versiones de CHDK en desarrollo, pero la versión en la que nos centraremos se llama Allbest build, una compilación que incorpora muchas de las mejores funciones disponibles en otras compilaciones (¿entendido?).

Lo que necesitarás

Para usar CHDK, todo lo que necesita es una cámara digital Canon compatible y una tarjeta de memoria SD. Si ya tienes una cámara compatible, solo se deduce que tienes la tarjeta de memoria, por lo que ya estás en camino.

    
respondido por el Russell McMahon
0

Puedes usar un DSP para hacer esto. Algunos de los DSP tienen codificadores MPEG / JPEG incorporados que aumentarán la tasa de cuadros que necesita. Por ejemplo, puede consultar Gstreamer para los DSP de TI . Aquí, Gstreamer es un paquete de software que se utiliza en varias placas DSP para el procesamiento de video en tiempo real.

    
respondido por el Neel Mehta

Lea otras preguntas en las etiquetas