Debe comenzar calculando cuántos fotogramas por segundo necesita y cuánta resolución de cámara puede procesar a esa velocidad de fotogramas. Por lo menos, eso evitará que gaste demasiado o que compre una cámara que no satisfaga sus necesidades.
Más allá de eso, hay una variedad de características que hacen que la elección sea más difícil / interesante. Las diferentes cámaras (especialmente las cámaras de red como Axis) le permiten alterar la calidad de la imagen o especificar una tasa de bits máxima para la transmisión de imágenes. Algunas cámaras también le permiten elegir la velocidad de obturación, lo que le permite favorecer un tiempo de exposición constante o una iluminación promedio constante en la imagen. Algunas cámaras son más sensibles que otras (la última vez que trabajé con esto fue en 2009, y notamos que la PS3 Eye funcionó muy bien en condiciones de poca luz).
Probablemente lo mejor que pueda hacer sería ejecutar sus algoritmos de procesamiento de imágenes en algunas imágenes estáticas que tome con una DSLR, luego intentar reducir el tamaño y la calidad del cuadro para ver dónde comienzan a descomponerse las cosas.
Ese es un tema interesante, y no es muy fácil acertar en el primer intento. Por experiencia con esto, aquí están las cosas más importantes.
Sincronización . La cámara debe estar 100% sincronizada. Por ejemplo, supongamos que el UGV está conduciendo a una velocidad modesta de 36 km / h (10 m / s) y graba cuadros a 30 cuadros por segundo. Es decir, en cada cuadro el UGV cubriría 3m. Ahora, digamos que su sincronización está apagada en 1 ms, una de las cámaras estará apagada en ~ 0.3 m, lo cual es malo [justo en la parte superior de mi cabeza]. Los problemas de sincronización son muy difíciles de detectar.
Solapamiento . Desea superponer las cámaras para obtener estéreo. Por lo tanto, debe elegir una combinación de distancia focal del lente (campo de visión) y línea de base para que tenga una superposición suficiente para la aplicación. Básicamente, la trigonometría funciona en el tablero, o un script rápido de matlab / python.
Para UGV, hay dos usos para estéreo.
Navegación y estimación de pose En este caso, lo más probable es que necesite una línea de base grande + una distancia focal larga. Esto permite que el estéreo vea y resuelva mejor la profundidad y alcance más largo.
Detección y evitación de obstáculos Probablemente necesitará una línea de base más corta y una lente más ancha (menor distancia focal) para poder enfocarse en cosas muy cercanas a usted.
Algunos UGV pueden tener ambas configuraciones estéreo, el campo de visión estrecho de la línea de base grande para la navegación y otro o dos para evitar obstáculos.
Ten mucho cuidado con lo que compras. Algunas compañías ofrecen configuraciones estéreo ya construidas. Esos son excelentes en el lado de la robustez de las cosas, no pierden la calibración fácilmente y siempre están sincronizados. El problema es que los disponibles comercialmente tienen una línea de base pequeña. Si quieres construir el tuyo. Supongo que terminarás haciéndolo, asegúrate de que la cámara sea sincronizable . Firewire es excelente para esto, ¡dos cámaras en el mismo bus se sincronizarán con una precisión de 125 microsegundos fuera de la caja! Las cámaras USB y Gige son dolorosas de sincronizar. Cuando reúne todo, debe asegurarse de que las lentes no se muevan en absoluto y que la línea base sea rígida, muy rígida para la aplicación.
También tenga cuidado en la selección de lentes. No todas las lentes funcionan con todas las cámaras. Las lentes también tienen una resolución. Este es otro tema, aquí hay un breve artículo sobre este http://www.qualitymag.com/articles/90642-qa--selecting-lenses-for-machine-vision-systems
fuente