El reconocimiento de imágenes es una aplicación de machine learning (ML) (o tecnología de machine learning) que permite al software y a los dispositivos identificar objetos, lugares, personas, escritos y acciones en imágenes o vídeos digitales.
Esta tecnología permite a los ordenadores identificar defectos en los productos, ayuda a los profesionales de la medicina a detectar anomalías y es esencial para el desarrollo de vehículos autónomos.
El reconocimiento de imágenes es una tarea fundamental de la visión artificial, el campo más amplio de la tecnología de inteligencia artificial (IA) que permite que el software y las máquinas comprendan y reaccionen a los datos visuales.
Los ingenieros utilizan modelos tradicionales de machine learning y deep learning en el reconocimiento de imágenes. Estos enfoques suelen ser independientes, y el hecho de combinarlos o utilizarlos por separado depende del problema concreto y de las necesidades de recursos.
El machine learning utiliza algoritmos que clasifican las imágenes en función de las características extraídas manualmente por ingenieros humanos. Los ingenieros preprocesan las imágenes y las analizan en función del objetivo o problema específico que intentan resolver mediante el reconocimiento de imágenes.
Tal vez se trate de identificar caras, detectar objetos o clasificar texturas. En cada caso, el ingeniero utiliza su conocimiento del dominio para preprocesar las imágenes y entrenar el algoritmo.
Los ingenieros preparan las imágenes para el análisis normalizándolas, lo que significa escalar los valores de los píxeles a un rango estándar, normalmente entre 0–1 o -1–1, para que los datos sean coherentes y más manejables para que los procesen los modelos de machine learning.
El preprocesamiento también incluye cambiar el tamaño de las imágenes, convertirlas a escala de grises para reducir la complejidad computacional o eliminar el ruido mediante técnicas de filtrado gaussiano. El "ruido" en el reconocimiento de imágenes se refiere a cualquier variación no deseada o aleatoria en píxeles, por ejemplo, una imagen moteada, granulada, borrosa o distorsionada.
A continuación, los ingenieros deben seleccionar las características que proporcionan la información más significativa. Pueden ser los bordes al detectar formas o la intensidad del color si el resultado es distinguir los objetos por matiz. Dado que los modelos de machine learning se basan en características extraídas manualmente, la anotación de datos etiqueta la información esencial.
Al anotar objetos de interés dentro de las imágenes, los modelos pueden reconocer y clasificar más fácilmente objetos específicos como "gato" o "perro". Los datos anotados con precisión permiten a los algoritmos de machine learning aprender las características visuales de cada categoría con precisión.
Los ingenieros extraen estas características y las formatean en vectores numéricos, lo que facilita que los modelos de machine learning procesen y comparen imágenes. Los ingenieros traducen cada imagen en un vector de características de longitud fija, una lista de números que resumen su importancia.
Por el contrario, los modelos de deep learning pueden aprender directamente de la imagen. El deep learning, un subconjunto del machine learning, utiliza redes neuronales para realizar tareas complejas de preprocesamiento y reconocimiento de imágenes, pero a costa de mayores requisitos computacionales y de datos.
Las redes neuronales convolucionales (CNN) son arquitecturas de deep learning con capas convolucionales que analizan y aprenden la naturaleza estructurada de los datos de imagen.
La red neuronal profunda de CNN detecta automáticamente el valor de píxel sin procesar de la imagen. La CNN pasa esa información a través de capas de la red profunda para extraer patrones y, en última instancia, hacer predicciones sobre la imagen.
Las capas de la red comienzan por la capa de entrada. La capa de entrada procesa los valores brutos de los píxeles de la imagen, tratándolos como una cuadrícula de intensidades numéricas, y los transmite a las capas siguientes para la extracción de patrones.
A continuación, la capa convolucional aplica pequeños filtros o kernels sobre la imagen para detectar patrones locales como bordes o textura. La convolución reduce la necesidad de extracción manual de características porque la red puede aprender los patrones directamente de los datos.
Después de cada convolución, una función de activación introduce no linealidad en el modelo, lo que permite a la red aprender patrones, formas y objetos complejos apilando varias capas.
La agrupación de capas reduce la muestra de la imagen para reducir su tamaño, al mismo tiempo que conserva características importantes para garantizar que el modelo sea computacionalmente eficiente en el manejo de variaciones como ligeras rotaciones o cambios en la imagen.
Una vez que la red extrae las características, aplana los datos en un vector unidimensional y los pasa a través de capas totalmente conectadas. Estas capas integran los patrones aprendidos en etapas anteriores para identificar relaciones complejas y refinar el proceso de clasificación.
Por último, los datos llegan a la capa de salida, que consolida las características extraídas y produce una predicción final. Esta predicción se compara con el conjunto de datos de entrenamiento anotado para calcular errores y ajustar las ponderaciones de la red para mejorar la precisión.
Por ejemplo, para entrenar a un modelo para que reconozca imágenes de gatos, los ingenieros pueden utilizar el aprendizaje supervisado, etiquetando miles de imágenes con etiquetas como "gato" o "no gato" para que el modelo pueda aprender características clave como la textura del pelaje, los bigotes y la forma de las orejas.
Alternativamente, en el aprendizaje no supervisado, el modelo funciona con datos no etiquetados para descubrir patrones de forma independiente. El modelo identifica relaciones sin categorías predefinidas agrupando imágenes en función de características compartidas (por ejemplo, formas o texturas similares).
Este enfoque es útil para tareas como la detección del fraude, el control de calidad y el análisis de patrones cuando los datos etiquetados no están disponibles. En el aprendizaje no supervisado, el modelo agruparía de forma independiente las imágenes basándose en patrones compartidos, agrupando todas las imágenes de gatos sin saber explícitamente que son gatos.
Un tercer enfoque, el aprendizaje autosupervisado, combina aspectos del aprendizaje no supervisado partiendo de datos no etiquetados pero generando pseudoetiquetas a partir de la estructura inherente a los datos, lo que permite a los modelos aprender representaciones significativas sin etiquetas tradicionales, haciéndolos potentes para tareas con conjuntos de datos etiquetados limitados.
Con el aprendizaje autosupervisado, el modelo podría analizar partes de una imagen, como la reconstrucción de una cara de gato parcialmente oscurecida, para identificar patrones y características. En última instancia, el modelo entrenado, ya sea mediante machine learning o deep learning, podría identificar y clasificar con precisión imágenes nuevas e invisibles de gatos, distinguiéndolas de otros animales u objetos.
Aunque las tecnologías de reconocimiento de imágenes han avanzado, todavía se enfrentan a retos que afectan a la precisión y la fiabilidad. Los ingenieros mitigan estos problemas combinando arquitecturas de modelos mejoradas, diversos conjuntos de datos de entrenamiento y técnicas de preprocesamiento.
El aprendizaje supervisado utiliza datos etiquetados, con cada imagen etiquetada con su categoría correcta para guiar el algoritmo a través de ejemplos claros. Por ejemplo, entrenar un sistema para reconocer coches implica un conjunto de datos etiquetado como "gato" y "no gato". A continuación, el modelo aprende a diferenciar basándose en patrones visuales dentro de estos ejemplos etiquetados.
En el aprendizaje no supervisado, el algoritmo utiliza datos sin etiquetar, descubriendo patrones de forma independiente. Es parecido a darle a un niño una caja de juguetes para que los clasifique por similitud; los algoritmos no supervisados agrupan imágenes basándose en características compartidas (por ejemplo, bigotes, pelaje, cuatro patas y cola) sin conocer las categorías explícitas.
Los cambios en la iluminación, como las sombras, las variaciones de brillo o los entornos con poca luz, pueden afectar al rendimiento de los sistemas de reconocimiento de imágenes. Los puntos brillantes pueden difuminar los detalles, mientras que las sombras pueden oscurecer las características críticas, lo que hace que el modelo malinterprete la forma o el color de un objeto.
Los métodos avanzados, como la ecualización adaptativa de histogramas o la incorporación de datos de entrenamiento con diferentes condiciones de iluminación, ayudan a los modelos a funcionar mejor en diferentes escenarios de iluminación.
El rendimiento de un modelo de reconocimiento de imágenes depende de la diversidad y la calidad de sus datos de entrenamiento. Los modelos entrenados en conjuntos de datos que presentan principalmente imágenes idealizadas de alta resolución pueden tener problemas cuando se enfrentan a variaciones de menor calidad o del mundo real.
Para mitigar esto, los ingenieros organizan diversos conjuntos de datos que representan las condiciones del mundo real. Técnicas como el aprendizaje por transferencia permiten a los modelos utilizar conocimientos previamente entrenados de conjuntos de datos grandes y sólidos y mejorar el rendimiento incluso con datos limitados.
El tamaño de un objeto en una imagen, influido por su proximidad a la cámara, puede afectar a la capacidad del modelo para identificarlo con precisión. Los objetos pequeños pueden no tener suficiente detalle para ser reconocidos, mientras que los objetos que están demasiado cerca pueden aparecer distorsionados o demasiado grandes para que el modelo los clasifique correctamente.
Los ingenieros entrenan modelos en conjuntos de datos que incluyen objetos de diferentes tamaños y distancias para gestionar esto. También se emplean técnicas de procesamiento de imágenes multiescala y pirámides de características para ayudar a garantizar que el modelo puede gestionar objetos de una amplia gama de tamaños.
La detección de objetos amplía el reconocimiento de imágenes mediante la identificación de objetos y la localización de sus ubicaciones dentro de una imagen. Esta técnica permite que el sistema responda a preguntas como: "¿Dónde está el gato en esta imagen?" o "¿Cuántos gatos hay en la escena?" La detección de objetos proporciona más contexto, ya que reconoce los objetos y sus posiciones, tamaños y orientaciones dentro del encuadre.
Por ejemplo, en lugar de identificar "un gato" en una imagen, la detección de objetos permite al ordenador especificar: "Hay un gato sentado en el sofá en la esquina izquierda de la imagen", lo que proporciona una comprensión espacial de la escena y las relaciones entre los objetos. .
Las tareas de reconocimiento de imágenes también pueden variar en complejidad. La categorización de imágenes o clasificación de imágenes, asigna una sola etiqueta a una imagen completa en función de su contenido, respondiendo a la pregunta: "¿Qué hay en esta imagen?"
Por ejemplo, un modelo entrenado en conjuntos de datos etiquetados de gatos y perros aprende a distinguir entre ambos identificando sus características únicas. Cuando se le presenta una nueva imagen, el modelo analiza estas características para predecir si muestra un gato o un perro.
Los modelos utilizan recuadros delimitadores para delinear estos objetos individuales, separarlos del fondo y marcar el principio y el final de cada objeto. Esta precisión es crítica para aplicaciones como la conducción autónoma, donde la detección precisa de objetos como vehículos, peatones y señales de tráfico es esencial para la seguridad.
El reconocimiento de imágenes avanza rápidamente, lo que allana el camino para aplicaciones más sofisticadas en numerosos sectores y casos de uso. Estas son algunas de las aplicaciones dominantes del reconocimiento de imágenes en el mundo real:
Muchos móviles cuentan con tecnología de reconocimiento facial que permite a los usuarios desbloquear sus dispositivos mirando la pantalla. Esta aplicación del reconocimiento de imágenes se ha hecho común, con sistemas que reconocen rasgos faciales individuales para verificar la identidad.
El reconocimiento facial también se utiliza ampliamente en seguridad y vigilancia para identificar a personas a partir de transmisiones de vídeo. Esta tecnología ayuda a las fuerzas del orden a rastrear a sospechosos en zonas públicas, mientras que las empresas la utilizan en la seguridad de edificios para controlar el acceso.
Las plataformas de medios sociales utilizan el reconocimiento de imágenes para sugerir etiquetas en las fotos, identificando y reconociendo los rostros de amigos y familiares. Las redes sociales también utilizan filtros de RA que detectan puntos de referencia faciales para colocar elementos virtuales, como gafas u orejas de animales, de forma que se alineen con los movimientos faciales.
Además, estas plataformas utilizan el reconocimiento de imágenes para moderar el contenido filtrando las imágenes inapropiadas, manteniendo la seguridad de la plataforma y mejorando la experiencia de usuario.
Basándose en las actuales aplicaciones de realidad aumentada (RA) en dispositivos móviles, las gafas inteligentes equipadas con software de reconocimiento de imágenes pueden ofrecer a los usuarios vistas aumentadas de su entorno, superponiendo información en tiempo real sobre objetos y ubicaciones.
La tecnología RA proporciona datos contextuales sobre cualquier cosa que el usuario mire, desde la identificación de puntos de referencia hasta la recuperación de detalles del producto en las tiendas.
El reconocimiento de imágenes en electrodomésticos permite funciones como el seguimiento de inventarios en frigoríficos inteligentes, la detección de obstáculos en aspiradoras robóticas y el reconocimiento de personas u objetos en cámaras de seguridad.
También alimenta funciones como la detección del tipo de tejido en lavadoras, el reconocimiento de alimentos en hornos inteligentes y el análisis facial en espejos inteligentes o monitores de bebés.
Los robots de reparto se basan en el reconocimiento de imágenes para navegar por entornos, detectar obstáculos e identificar ubicaciones de reparto para realizar entregas autónomas precisas y eficientes.
Por el contrario, los robots de almacenes y entornos industriales utilizan la misma tecnología para escanear y recuperar artículos, realizar controles de calidad, ensamblar piezas y clasificar materiales.
El análisis de imágenes médicas ayuda a los profesionales sanitarios a analizar radiografías, resonancias magnéticas y tomografías computarizadas. Estos sistemas pueden detectar anomalías que el ojo humano pasaría por alto, como signos precoces de cáncer de pulmón, derrames cerebrales o tumores, lo que permite realizar diagnósticos más oportunos.
Merative, anteriormente IBM watsonx Health, aplica el reconocimiento de imágenes para analizar datos de imágenes complejos, lo que ayuda a los radiólogos a identificar hallazgos críticos.
El reconocimiento de imágenes médicas avanza con diagnósticos con IA, por lo que los sistemas de reconocimiento de imágenes pueden ayudar a detectar enfermedades en estadio temprano con mayor precisión.
Esta tecnología, que ya está mejorando áreas como la detección de tumores, ayuda a los especialistas a disponer de un "segundo par de ojos" altamente cualificados para realizar diagnósticos avanzados, sobre todo en ámbitos en los que los detalles minuciosos son críticos.
La tecnología OCR digitaliza el texto impreso escaneando documentos, libros y recibos. Las aplicaciones utilizan el OCR para reconocer y convertir el texto impreso en formatos digitales que los usuarios pueden editar o buscar. El reconocimiento óptico de caracteres fue un caso de uso crítico del reconocimiento de imágenes, que ayudó a allanar el camino para la digitalización generalizada en cada sector.
Los bancos y las instituciones financieras utilizan el reconocimiento de imágenes para automatizar los controles de verificación, las identificaciones y otros documentos, lo que reduce el fraude y agiliza la incorporación de clientes. La tecnología escanea las imágenes de los documentos en busca de detalles cruciales, los autentica y marca cualquier anomalía para revisión.
Explore la biblioteca de modelos fundacionales de IBM en la plataforma watsonx y escale la IA generativa para su negocio con confianza.
IBM Maximo Visual Inspection es una plataforma no-code de visión artificial diseñada para automatizar los procesos de inspección visual (o visual inspection). Explore recursos, una demostración autoguiada, visitas a productos y resúmenes de soluciones.
IBM Consulting trabaja con clientes y partners de todo el mundo para cocrear el futuro de la IA. Nuestro equipo diverso y global de más de 20 000 expertos en IA puede ayudarle a diseñar y escalar con rapidez y confianza soluciones de IA de vanguardia y automatización en toda su empresa.