Conocimientos previos del procesamiento de imágenes
¿Qué es una cámara?
Todos hemos visto varias cámaras, como

¿Qué es una cámara? En última instancia, es un dispositivo que convierte señales ópticas en señales eléctricas. En visión por computadora, el modelo de cámara más simple es el modelo de cámara estenopeica (pinhole):

El modelo estenopeico es un modelo de cámara ideal que no considera la curvatura de campo, la distorsión y otros problemas que existen en las cámaras reales. Sin embargo, en el uso real, estos problemas se pueden resolver introduciendo parámetros de distorsión durante el proceso de calibración, por lo que el modelo estenopeico sigue siendo el modelo de cámara más utilizado.
La imagen pasa a través del lente y se proyecta sobre un chip fotosensible. El chip fotosensible puede convertir información como la longitud de onda y la intensidad de la luz en una señal digital que puede ser reconocida por la computadora (circuito digital). El elemento fotosensible se ve así:

(El elemento cuadrado en el centro es el elemento fotosensible)
¿Qué son los píxeles y la resolución?
El elemento fotosensible está compuesto por muchos puntos fotosensibles, por ejemplo 640480 puntos; cada punto es un píxel, y los píxeles de cada punto se recopilan y ordenan para formar una imagen, por lo que la resolución de esta imagen es 640480:

¿Qué es la tasa de fotogramas?
La tasa de fotogramas (FPS) es el número de imágenes procesadas por segundo. Si supera los 20 fotogramas, el ojo humano apenas puede distinguir el parpadeo. Por supuesto, si se usa en una máquina, cuanto mayor sea la tasa de fotogramas, mejor. Comparación de la tasa de fotogramas máxima de OpenMV:\ Nota: Sin marca significa que la imagen no se transmite al IDE, porque este proceso consume mucho tiempo.
¿Qué es el color?
Físicamente, el color son ondas electromagnéticas de diferentes longitudes de
onda.\
\

Sin embargo, según el efecto visual del ojo humano, el color de la luz visible se puede describir mediante los espacios de color RGB, CMYK, HSB y LAB.
Colores primarios RGB
El principio de los tres colores primarios no se debe a razones físicas, sino a razones fisiológicas humanas. Hay varios fotorreceptores de cono en el ojo humano que distinguen los colores, los cuales son más sensibles a la luz amarillo-verde, verde y azul-violeta (o violeta) (longitudes de onda de 564, 534 y 420 nanómetros, respectivamente).
Por eso el RGB se usa a menudo en monitores para mostrar imágenes.

Brillo-contraste LAB
En el espacio de color Lab, L es el brillo; un número positivo de a representa rojo, el extremo negativo representa verde; un número positivo de b representa amarillo, el extremo negativo representa azul. A diferencia de los espacios de color RGB y CMYK, el color Lab está diseñado para acercarse a la visión humana.
Por lo tanto, el componente L puede ajustar el par de brillo y modificar los niveles de color de salida de los componentes a y b para lograr un balance de color preciso.
Nota: ¡En el algoritmo para encontrar bloques de color en OpenMV, se utiliza
este modo LAB!
Elección de la fuente de luz
Si tu máquina está en un entorno industrial, o es un dispositivo que funciona 24 horas, es vital mantener una fuente de luz estable, especialmente en los algoritmos de color. En cuanto cambia el brillo, ¡el valor de todo el color cambiará mucho!
Por añadir
Distancia focal del lente
Debido a que la imagen se refracta a través del lente y se proyecta sobre el elemento fotosensible. Luego el lente determina el tamaño y la distancia de toda la imagen. Uno de los parámetros más importantes es la distancia focal.
Distancia focal del lente: se refiere a la distancia desde el punto principal
del lente hasta el foco después de la óptica, que es un indicador de
rendimiento importante del lente. La longitud de la distancia focal del lente
determina el tamaño de la imagen, el tamaño del campo de visión, el tamaño de
la profundidad de campo y la perspectiva de la imagen. Al fotografiar el mismo
sujeto a la misma distancia, la imagen formada por un lente con una distancia
focal larga es grande, y la imagen formada por un lente con una distancia
focal corta es pequeña. Nótese que cuanto mayor sea la distancia focal, menor
será el ángulo de visión.\

Otro punto es la distorsión del lente. Debido al principio de la óptica, diferentes posiciones en el chip fotosensible tienen diferentes distancias con respecto al lente. En pocas palabras, cuanto más cerca está la imagen, más pequeña es. Por lo tanto, aparecerá un efecto de ojo de pez (distorsión de barril) en los bordes. Para resolver este problema, se puede usar un algoritmo para corregir la distorsión en el código. Nota: OpenMV usa image.lens_corr(1.8) para corregir un lente con una distancia focal de 2.8mm. También se puede usar directamente un lente sin distorsión. El lente sin distorsión tiene una lente de corrección adicional, por lo que el precio será naturalmente mucho más alto.
A continuación se muestra una comparación de lentes con diferentes distancias
focales cuando el OpenMV está a unos 20cm de distancia del escritorio\

Filtro del lente
Normalmente hay un filtro en el lente.

¿Qué hace este filtro?
Sabemos que diferentes colores de luz tienen diferentes longitudes de onda. En un entorno normal, además de la luz visible, también hay mucha luz infrarroja. En la visión nocturna, se utiliza luz infrarroja.
Sin embargo, en las aplicaciones de color normales, no se necesita luz infrarroja, porque la luz infrarroja también reaccionará con el elemento fotosensible, haciendo que toda la imagen se vea blanca. Por eso colocamos un filtro en el lente que solo permite el paso de longitudes de onda dentro de 650nm para cortar la luz infrarroja.