La visión por computadora es el área de la inteligencia artificial y del procesamiento digital de imágenes que busca que una máquina pueda capturar, analizar, interpretar y comprender información visual. En términos simples, intenta responder una pregunta ambiciosa: ¿cómo hacemos para que una computadora "vea" una imagen o un video y tome decisiones útiles a partir de ellos?
Cuando una persona observa una fotografía puede reconocer casi de inmediato si hay una cara, un automóvil, una fruta o un semáforo. También puede estimar distancias, identificar colores, detectar movimiento y comprender el contexto general de la escena. Para una computadora, en cambio, una imagen no es más que una matriz de números. La visión por computadora se ocupa precisamente de transformar esa matriz numérica en significado.
Este campo combina ideas de matemáticas, álgebra lineal, probabilidad, inteligencia artificial, aprendizaje automático y Deep Learning. En aplicaciones modernas, la visión por computadora se ha convertido en una tecnología central en medicina, seguridad, industria, agricultura, comercio electrónico, vehículos autónomos, robótica y dispositivos móviles.
Podemos entender la visión por computadora como el conjunto de técnicas que permiten que un sistema procese contenido visual y responda preguntas sobre ese contenido.
Algunas de esas preguntas pueden ser:
En consecuencia, la visión por computadora no consiste solo en "mostrar imágenes" en pantalla. Su objetivo es extraer información útil y convertir lo visual en datos interpretables para automatizar decisiones.
Decimos que una máquina "ve" de forma figurada. No ve como un ser humano, porque no posee percepción consciente ni comprensión natural del mundo. Lo que realmente hace es procesar datos visuales siguiendo algoritmos.
Ese procesamiento puede incluir:
Por ejemplo, si una cámara capta una calle, un sistema de visión por computadora puede localizar autos, detectar carriles, reconocer semáforos y calcular riesgos. Todo eso ocurre a partir de operaciones matemáticas sobre imágenes y video.
La visión por computadora suele formar parte de un pipeline o flujo de trabajo más amplio. Una imagen por sí sola no resuelve nada. Lo importante es cómo se procesa y qué decisión permite tomar.
| Etapa | Qué ocurre | Ejemplo |
|---|---|---|
| Captura | Se obtiene la imagen desde cámara, video, sensor o archivo. | Una cámara industrial fotografía una pieza. |
| Procesamiento | Se limpian, transforman o analizan los píxeles. | Se mejora contraste y se detectan bordes. |
| Interpretación | Un algoritmo o modelo infiere significado. | Se determina si la pieza tiene una fisura. |
| Acción | El sistema usa el resultado para decidir. | La pieza defectuosa se retira de la línea. |
Esto muestra que la visión por computadora no es un fin en sí mismo. Es una tecnología que permite pasar de datos visuales a decisiones automatizadas.
Para un humano, reconocer un objeto suele parecer trivial. Sin embargo, desde el punto de vista computacional es un problema complejo. Una misma persona puede verse distinta según la iluminación, el ángulo, la distancia, la resolución o el fondo. Un objeto puede estar parcialmente oculto, deformado o rotado. El entorno puede tener ruido, sombras o reflejos.
Eso significa que dos imágenes del mismo objeto pueden tener valores de píxel muy diferentes. Y, al mismo tiempo, dos objetos distintos pueden compartir patrones visuales parecidos. El reto principal consiste en diseñar sistemas capaces de distinguir lo relevante de lo irrelevante.
La visión por computadora debe lidiar con factores como:
Durante muchos años, la visión por computadora se apoyó en técnicas clásicas diseñadas manualmente. Un especialista definía reglas y descriptores para detectar bordes, esquinas, texturas, contornos o regiones de interés. Esos métodos siguen siendo útiles y en este curso también los estudiaremos.
Sin embargo, en la última década el Deep Learning cambió profundamente el campo. En lugar de diseñar a mano todas las características visuales, se entrenan modelos capaces de aprender automáticamente representaciones útiles a partir de grandes cantidades de imágenes.
| Enfoque | Idea principal | Fortaleza |
|---|---|---|
| Visión clásica | El programador define filtros, reglas y descriptores. | Control preciso y bajo costo en problemas acotados. |
| Visión con Deep Learning | El modelo aprende características visuales desde datos. | Gran capacidad en tareas complejas y datos variados. |
La práctica profesional moderna combina ambos mundos. OpenCV, por ejemplo, es muy útil para el procesamiento clásico, mientras que PyTorch permite construir y entrenar modelos profundos para tareas avanzadas.
Este campo abarca muchos tipos de problemas. Algunas tareas fundamentales son:
Cada una de estas tareas requiere técnicas y modelos distintos, pero todas comparten la misma base: convertir información visual en conocimiento accionable.
Muchas personas usan visión por computadora sin advertirlo. Algunos ejemplos habituales son:
Estos casos muestran que la visión por computadora dejó de ser una tecnología de laboratorio. Hoy está integrada en productos comerciales, procesos industriales y servicios cotidianos.
Supongamos que queremos construir un sistema que determine si una imagen contiene un perro o un gato.
Este ejemplo parece simple, pero resume la lógica de muchísimos sistemas reales de visión por computadora: datos visuales, preprocesamiento, aprendizaje y decisión.
Para una computadora, una imagen es una estructura numérica. Normalmente se representa como una matriz bidimensional de píxeles si es una imagen en escala de grises, o como una estructura tridimensional si tiene varios canales de color.
Por ejemplo:
alto x ancho.alto x ancho x 3.Cuando un programa procesa una imagen, en realidad opera sobre esos números. Cambiar brillo, rotar, recortar, suavizar, detectar bordes o alimentar una red neuronal significa hacer transformaciones matemáticas sobre matrices.
Antes de aplicar un algoritmo avanzado, muchas veces es necesario preparar las imágenes. Este paso se llama preprocesamiento y puede influir enormemente en la calidad del resultado.
Algunas operaciones frecuentes son:
En proyectos reales, un mal preprocesamiento puede degradar el rendimiento incluso si el modelo es bueno. Por eso la visión por computadora no es solo elegir una red neuronal: también requiere entender cómo se adquieren y preparan las imágenes.
OpenCV es una de las bibliotecas más importantes en visión por computadora. Permite cargar imágenes, capturar video, aplicar transformaciones, detectar bordes, trabajar con filtros, extraer características y realizar muchas operaciones clásicas del área.
Es una herramienta fundamental porque:
En este curso usaremos OpenCV como base práctica para manipular imágenes antes de pasar a modelos más complejos.
Cuando el problema requiere aprendizaje profundo, entra en escena PyTorch. Esta biblioteca permite crear modelos de Deep Learning y entrenarlos con imágenes, tensores y grandes volúmenes de datos.
En visión por computadora, PyTorch se usa para:
Podemos pensar OpenCV y PyTorch como dos piezas complementarias. OpenCV ayuda a manipular y procesar imágenes. PyTorch ayuda a aprender patrones complejos a partir de ellas.
La visión por computadora tiene aplicaciones en muchísimos sectores:
Lo importante es notar que no se trata solo de reconocer objetos. En muchos casos el objetivo es reducir errores, acelerar procesos o permitir decisiones que antes dependían completamente de la intervención humana.
Aunque los avances han sido enormes, la visión por computadora sigue enfrentando dificultades importantes:
Por eso no alcanza con entrenar un modelo y medir su exactitud en laboratorio. También hay que evaluar robustez, eficiencia, sesgo, mantenibilidad y comportamiento en escenarios reales.
Un punto importante es que no toda tarea visual implica comprensión completa de la escena. Un sistema puede detectar la presencia de un peatón sin comprender el contexto urbano del modo en que lo haría una persona. Puede clasificar una fruta sin "entender" qué es comer o cultivar.
Esto nos recuerda una idea fundamental: la visión por computadora trabaja con patrones estadísticos y estructuras visuales, no con conciencia ni sentido común humano. Aun así, sus resultados pueden ser extremadamente útiles y precisos en tareas bien definidas.
El recorrido del curso está diseñado para avanzar desde los fundamentos hasta aplicaciones modernas:
La idea es que no solo entiendas definiciones, sino que puedas desarrollar una base sólida para construir sistemas reales de visión artificial.
La visión por computadora es uno de los campos más influyentes y prácticos de la inteligencia artificial moderna. Su objetivo central es convertir información visual en decisiones automáticas útiles. Para lograrlo, combina procesamiento de imágenes, modelado matemático y técnicas de aprendizaje profundo.
Como punto de partida, lo más importante es comprender esta idea: la computadora no ve imágenes como las vemos nosotros; procesa matrices de datos y aprende a reconocer patrones en ellas. A partir de esa base construiremos todo el curso.
En el próximo tema analizaremos la historia y la evolución de la visión artificial para entender cómo llegamos desde técnicas clásicas hasta los sistemas modernos basados en redes neuronales profundas.