Core Image es una tecnología de procesamiento y análisis de imágenes diseñada para procesar imágenes fijas y de vídeo casi en tiempo real. Opera sobre los tipos de datos de imagen del Core Graphics, Core Video, y los frameworks Image I/O, utilizando una GPU o la ruta de la CPU de procesamiento. Core Image oculta los detalles de procesamiento de gráficos de bajo nivel, proporcionando una interfaz de programación de aplicaciones de fácil uso (API). No es necesario conocer los detalles de OpenGL o OpenGL ES para aprovechar la potencia de la GPU, ni tampoco se necesita saber nada sobre Grand Central Dispatch (GCD) para obtener el beneficio de procesamiento multinúcleo. Core Image se encarga de los detalles por tí.

core image que es, imagenes core

El framework de Core Image proporciona:

  • Acceso a los filtros de procesamiento predeterminados de imágenes
  • Capacidad de detección de  «features», por ejemplo, detección de caras o códigos QR
  • Apoyo para la mejora automática de las imágenes
  • La capacidad de encadenar múltiples efectos para creas efectos personalizados
  • El apoyo a la creación de filtros personalizados que se ejecutan en una GPU
  • Capacidad de procesamiento de imágenes basado en feedback
  • En OS X, Core Image también proporciona un medio para la agrupación de filtros personalizados para su uso por otras aplicaciones.

Core Image es eficaz y sencillo de utilizar para el procesamiento y análisis de imágenes

Core Image ofrece más de 90 filtros incorporados en iOS y más de 120 en OS X. Permite configurar filtros mediante el suministro de pares de clave-valor para los parámetros de entrada de un filtro. La salida de un filtro puede ser la entrada de otro, por lo que es posible encadenar numerosos filtros para crear efectos sorprendentes. Si creas un efecto compuesto que quieres volver a utilizar, puedes crear una subclase CIFilter para capturar el efecto «receta».

Hay más de una docena de categorías de filtros. Algunos están diseñados para lograr resultados artísticos, como por ejemplo estilizar, ajustes de tono y color…

Core Image puede analizar la calidad de una imagen y proporcionar un conjunto de filtros con los ajustes óptimos para modificar parámetros como el tono, contraste y saturación. También se pueden realizar otras correcciones como «ojos rojos». Todo esto lo hace con una llamada al método.

Core Image también puede detectar rasgos faciales humanos de las imágenes fijas (sonrisa, ojos, boca…) y hacer un seguimiento en el tiempo de las imágenes de vídeo. Saber dónde están las caras puede ayudar a determinar dónde colocar una viñeta o aplicar otros filtros especiales.

face-detection-core-image

 

Consulta Core Image para obtener una lista de filtros y sus atributos

Core Image tiene integrada  la documentación en sus filtros. Puedes consultar el sistema para saber qué filtros están disponibles. Luego, para cada uno de los filtros, puedes recuperar un diccionario que contiene sus atributos, tales como parámetros de entrada, valores de los parámetros por defecto, los valores mínimos y máximos, nombre para mostrar, y mucho más.

Core Image saca rendimiento a tus vídeos en tiempo real

Si tu aplicación requiere procesar vídeo en tiempo real, hay varias cosas que puedes hacer con Core Image para optimizar su rendimiento. En iOs y Os X contiene diversas opciones para crear imágenes, contextos y renderizar contenidos. Puedes consultar toda la información en el siguiente enlace.

Crear y distribuir los núcleos y los filtros personalizados

Si ninguno de los filtros predeterminados se adapta a tus necesidades, incluso con la posibilidad de que estén encadenados, tienes la posibilidad de crear un filtro personalizado. Para ello, tendrás que entender los kernels – programas que operan a nivel de píxel porque están en el corazón de cada filtro.

En OS X, puedes empaquetar  uno o más filtros en uno de forma que otras aplicaciones puedan cargarlos y utilizarlos.

Formación tech en abierto >

Bootcamps online de Expecialización >