Consejos y trucos#
Modo demostración#
El modo demostración le permite demostrar la CMUcam4 sin un procesador maestro. En el modo demostración, la CMUcam4 ejecuta el comando «TW» (Track Window) y luego mueve dos servos de aficionado estándar hacia el objeto que se está rastreando, mostrando al mismo tiempo el objeto rastreado en un televisor estándar. Una vez que la CMUcam4 entra en el modo demostración, no saldrá de él hasta que se reinicie. Siga los pasos a continuación para entrar en el modo demostración:
Mantenga presionado el botón de reinicio de la CMUcam4
Mantenga presionado el botón de usuario de la CMUcam4
Suelte el botón de reinicio (no suelte el botón de usuario)
Espere hasta que el LED auxiliar rojo se encienda (2 segundos)
Espere hasta que el LED auxiliar rojo comience a parpadear a 10 Hz y luego suelte el botón de usuario
El televisor debería encenderse (debería ver una pantalla de bienvenida mostrada en el televisor) si la CMUcam4 está conectada a un televisor
La CMUcam4 ahora se ajustará a las condiciones de iluminación durante los siguientes 5 segundos
No coloque el objeto que desea rastrear frente a la CMUcam4 durante los siguientes 5 segundos
Espere hasta que el LED auxiliar rojo deje de parpadear a 10 Hz
La CMUcam4 ya ha terminado de ajustarse a las condiciones de iluminación
Los pines del servo de panorámica e inclinación deberían emitir pulsos de 1500 μs a 50 Hz
Coloque el objeto que desea rastrear frente a la CMUcam4 y presione el botón de usuario
Si el LED auxiliar rojo comienza a parpadear a 10 Hz, examine la conexión del módulo de cámara OV9665
El módulo de cámara OV9665 puede estar dañado y lo más probable es que necesite ser reemplazado
Ahora debería ver el objeto rastreado (o similar) mostrado en el televisor si la CMUcam4 está conectada a un televisor
Los servos de panorámica e inclinación, si están conectados, también intentarán dirigir la cámara hacia el objeto rastreado
Pruebe este procedimiento con diferentes objetos en diferentes entornos para ver qué funciona mejor
La CMUcam4 ahora se está ejecutando en modo demostración
Presione el botón de reinicio para salir del modo demostración.
Para el funcionamiento no invertido del servo de panorámica, las longitudes de pulso inferiores a 1500 µs deben mover la posición X del módulo de cámara hacia la derecha (desde el punto de vista del módulo de cámara) y las longitudes de pulso superiores a 1500 µs deben mover la posición X del módulo de cámara hacia la izquierda (desde el punto de vista del módulo de cámara).
Para el funcionamiento no invertido del servo de inclinación, las longitudes de pulso inferiores a 1500 µs deben mover la posición Y del módulo de cámara hacia abajo (desde el punto de vista del módulo de cámara) y las longitudes de pulso superiores a 1500 µs deben mover la posición Y del módulo de cámara hacia arriba (desde el punto de vista del módulo de cámara).
Modo de detención#
El modo de detención le permite detener la CMUcam4 mientras sigue conectada a un Arduino. En el modo de detención, la CMUcam4 consume muy poca energía y no impide que un Arduino sea programado bloqueando el puerto serie del Arduino. El modo de detención solo es necesario si la CMUcam4 interfiere con el proceso de programación del Arduino. Si no lo hace, entonces el modo de detención es innecesario; este suele ser el caso. Una vez que la CMUcam4 entra en el modo de detención, no saldrá de él hasta que se reinicie. Siga los pasos a continuación para entrar en el modo de detención:
Mantenga presionado el botón de reinicio de la CMUcam4
Mantenga presionado el botón de usuario de la CMUcam4
Suelte el botón de reinicio (no suelte el botón de usuario)
Espere hasta que el LED auxiliar rojo se encienda (2 segundos)
Suelte el botón de usuario
La CMUcam4 ahora está detenida indefinidamente
Presione el botón de reinicio para salir del modo de detención.
Notas sobre un mejor seguimiento#
Mejor seguimiento con ganancia automática y balance de blancos#
La ganancia automática es un control interno que ajusta el nivel de brillo de la imagen para adaptarse mejor al entorno. Intenta normalizar las luces y las sombras de la imagen de modo que se aproximen al brillo general de una imagen ajustada a mano. Este proceso itera a lo largo de muchos fotogramas a medida que la cámara ajusta automáticamente sus niveles de brillo. Si, por ejemplo, se enciende una luz y el entorno se vuelve más brillante, la cámara intentará ajustar el brillo para atenuar la imagen general.
El balance de blancos, por otro lado, intenta corregir las ganancias de color de la cámara. La luz ambiental de su imagen puede no ser blanco puro. En este caso, la cámara verá los colores de manera diferente. La cámara comienza con una estimación inicial de cuánta ganancia dar a cada canal de color. Si está activo, el balance de blancos ajustará estas ganancias fotograma a fotograma de modo que el color promedio de la imagen se aproxime a un color gris. Empíricamente, se ha comprobado que este método de «mundo gris» funciona relativamente bien. El problema con el balance de blancos de mundo gris es que si un color sólido llena la vista de la cámara, el balance de blancos establecerá lentamente las ganancias de modo que el color parezca ser gris y no su color verdadero. Luego, cuando se quita el color sólido, la imagen tendrá ganancias de color no deseadas hasta que restablezca su promedio gris.
Al rastrear colores, como en el modo demostración, quizás desee permitir que la ganancia automática y el balance de blancos se ejecuten durante un breve período y luego apagarlos. Mientras están activados durante un período de unos 5 segundos, la cámara puede ajustar su ganancia de brillo y sus ganancias de color a lo que ve como adecuado. Luego, apagarlos evitará que la cámara cambie innecesariamente su configuración debido a un objeto sostenido cerca del objetivo, sombras, etc. Si la ganancia automática y el balance de blancos no se deshabilitaran y la cámara cambiara su configuración para los valores RGB o YCbCr, entonces los nuevos valores medidos podrían caer fuera de los umbrales de seguimiento de color originalmente seleccionados.
El módulo de cámara requiere que la ganancia automática esté habilitada para utilizar el balance de blancos.
Espacio de color YUV (YCbCr)#
YCbCr es una definición de espacio de color diferente del espacio RGB más comúnmente conocido. En YCbCr los datos de iluminación se almacenan en un canal separado. Debido a esta propiedad, en modo YCbCr la cámara puede ser más resistente a los cambios de iluminación. Debido a que es un espacio de color diferente, las imágenes en YCbCr no se ven como las imágenes RGB estándar cuando se mapean directamente mediante un programa de volcado de fotogramas. Los canales RGB se mapean a CrYCb. Así que en modo YCbCr, el valor devuelto como el parámetro rojo es en realidad Cr, el parámetro verde es Y, y el parámetro azul es Cb. Así que si desea rastrear un objeto rojo, necesita mirar un fotograma volcado para ver a qué se mapean los colores de ese objeto en YCbCr. Debería entonces ser posible encontrar los límites de Cb y Cr dando a la vez un límite de Y muy relajado, mostrando que la iluminación no es muy importante. Al usar YCbCr, asegúrese de tener en cuenta que en términos de toda la E/S de la CMUcam4, Rojo se mapea a Cr, Verde a Y y Azul a Cb.
Observe que los canales RGB se mapean para darle CrYCb, no YCbCr.
Acerca del módulo de cámara#
Desde el encendido, la cámara puede tardar hasta 5 segundos en ajustarse automáticamente a la luz. Los cambios drásticos en el entorno, como encender y apagar las luces, pueden inducir un tiempo de reajuste similar. Al usar la cámara en exteriores, debido a las potentes emisiones de IR del sol, incluso en días relativamente nublados, probablemente será necesario usar un filtro IR o un filtro de densidad neutra en la cámara para disminuir el nivel de luz ambiental.
Las funciones proporcionadas por la placa de la cámara están pensadas para dar al usuario una caja de herramientas de funciones de visión de color. Las aplicaciones reales pueden variar enormemente y quedan a la imaginación del usuario. La capacidad de cambiar la ventana visible, capturar estadísticas de color y luz y rastrear colores puede entrelazarse en el procesador anfitrión para crear funcionalidad de nivel superior.