Un procesador de imágenes , también conocido como motor de procesamiento de imágenes , unidad de procesamiento de imágenes ( IPU ) o procesador de señales de imagen ( ISP ), es un tipo de procesador de medios o procesador de señales digitales (DSP) especializado que se utiliza para el procesamiento de imágenes , en cámaras digitales u otros dispositivos. [1] [2] Los procesadores de imágenes a menudo emplean computación paralela incluso con tecnologías SIMD o MIMD para aumentar la velocidad y la eficiencia. El motor de procesamiento de imágenes digitales puede realizar una variedad de tareas. Para aumentar la integración del sistema en dispositivos integrados , a menudo se trata de un sistema en un chip con arquitectura de procesador de múltiples núcleos .
Los fotodiodos que se utilizan en un sensor de imagen son daltónicos por naturaleza: sólo pueden registrar tonos de gris . Para que la imagen tenga color , se cubren con diferentes filtros de color: rojo , verde y azul ( RGB ) según el patrón designado por el filtro Bayer , llamado así en honor a su inventor. Como cada fotodiodo registra la información de color de exactamente un píxel de la imagen, sin un procesador de imágenes habría un píxel verde junto a cada píxel rojo y azul.
Sin embargo, este proceso es bastante complejo e implica varias operaciones diferentes. Su calidad depende en gran medida de la eficacia de los algoritmos aplicados a los datos brutos que provienen del sensor. Los datos manipulados matemáticamente se convierten en el archivo fotográfico grabado.
Como se indicó anteriormente, el procesador de imágenes evalúa los datos de color y brillo de un píxel determinado, los compara con los datos de los píxeles vecinos y luego utiliza un algoritmo de desmosaico para producir un valor de color y brillo apropiado para el píxel. El procesador de imágenes también evalúa la imagen completa para adivinar la distribución correcta del contraste . Al ajustar el valor gamma (aumentando o disminuyendo el rango de contraste de los tonos medios de una imagen), las gradaciones tonales sutiles, como las de la piel humana o el azul del cielo , se vuelven mucho más realistas.
El ruido es un fenómeno que se encuentra en cualquier circuito electrónico . En la fotografía digital, su efecto suele ser visible en forma de puntos aleatorios de un color obviamente incorrecto en un área que, de otro modo, tendría un color uniforme. El ruido aumenta con la temperatura y los tiempos de exposición . Cuando se eligen valores ISO más altos , la señal electrónica en el sensor de imagen se amplifica, lo que al mismo tiempo aumenta el nivel de ruido, lo que conduce a una menor relación señal-ruido . El procesador de imágenes intenta separar el ruido de la información de la imagen y eliminarlo. Esto puede ser todo un desafío, ya que la imagen puede contener áreas con texturas finas que, si se tratan como ruido, pueden perder parte de su definición.
A medida que se interpolan los valores de color y brillo de cada píxel, se aplica cierta nitidez a la imagen para igualar cualquier borrosidad que se haya producido. Para preservar la impresión de profundidad , claridad y detalles finos, el procesador de imágenes debe agudizar los bordes y los contornos. Por lo tanto, debe detectar los bordes correctamente y reproducirlos de manera uniforme y sin sobreafilarlos.
Los usuarios de procesadores de imagen utilizan productos estándar de la industria, productos estándar específicos de la aplicación (ASSP) o incluso circuitos integrados específicos de la aplicación (ASIC) con nombres comerciales: el de Canon se llama DIGIC , el de Nikon Expeed , el de Olympus TruePic, el de Panasonic Venus Engine y el de Sony Bionz . Se sabe que algunos procesadores de imagen/vídeo se basan en Fujitsu Milbeaut , Texas Instruments OMAP , Panasonic MN103 , Zoran Coach, Altek Sunny o Sanyo .
Los procesadores de arquitectura ARM con sus motores de procesamiento de medios (MPE) NEON SIMD se utilizan a menudo en teléfonos móviles .
Con el aumento de píxeles en los sensores de imagen, la velocidad del procesador de imagen se vuelve más crítica: los fotógrafos no quieren esperar a que el procesador de imagen de la cámara complete su trabajo antes de poder seguir disparando; ni siquiera quieren notar que se está realizando algún procesamiento dentro de la cámara. Por lo tanto, los procesadores de imagen deben optimizarse para procesar más datos en el mismo período de tiempo o incluso en un período más corto.
libcamera es una biblioteca de software que admite el uso de procesadores de señales de imagen para la captura de imágenes.