Blog

Aprende visión por computadora ejecutándola: explicaciones, demos interactivas, código ejecutable y benchmarks honestos.

Los artículos traducidos al español hasta ahora, del más reciente al más antiguo. Todos los artículos, en inglés →

Fundamentos
·9 min de lectura Principiante

Encontrar todas las bolas de una mesa de billar con OpenCV

El segundo proyecto de OpenCV en la Práctica: encontrar las bolas de una mesa de billar por el único color que no tienen, el del paño, y evaluar el resultado bola por bola contra un conteo a mano en tres fotos. 29 de 41 encontradas con 2 falsas alarmas; 9 de las 12 que se escapan están tocando otra bola.

opencvimage-processing
Leer →
Fundamentos
·7 min de lectura Principiante

Corregir una foto mal expuesta con OpenCV

El primer proyecto de OpenCV en la Práctica: abrir una foto tomada dos pasos demasiado oscura, leer su histograma, probar cinco formas de corregirla y medir cada una contra una toma más larga y bien expuesta de la misma escena (el objetivo). Multiplicar es lo que más se acerca; las correcciones automáticas, lo que más se aleja.

opencvimage-processing
Leer →
Fundamentos
·4 min de lectura Principiante

Brillo y contraste en OpenCV

Aclara una foto subexpuesta de dos maneras, sumando una constante con cv2.add o multiplicando con cv2.convertScaleAbs, y mide cuál queda más cerca de la exposición objetivo: 18,0 contra 9,1.

opencvimage-processing
Leer →
Fundamentos
·7 min de lectura Principiante

Dónde falla la detección por color en OpenCV

Compara un pipeline de máscara de color con un conteo hecho a mano en tres fotos de mesa de billar, corrige las troneras y las sombras y ve lo que el color no puede arreglar: 27 de 41 bolas encontradas al principio, 29 tras las correcciones, 9 de las 12 perdidas tocando otra bola.

opencvimage-processing
Leer →
Fundamentos
·3 min de lectura Principiante

Recortar, redimensionar y guardar una imagen en OpenCV

Termina la corrección: recorta la carta de colores con slicing de arrays, reduce la foto con cv2.resize e INTER_AREA y guárdala con cv2.imwrite, donde la misma imagen pesa 54 KB como JPEG y 276 KB como PNG.

opencvimage-processing
Leer →
Fundamentos
·5 min de lectura Principiante

Encontrar, medir y filtrar contornos en OpenCV

Encuentra el contorno de cada blob de una máscara con cv2.findContours, mide su área y su redondez y quédate con los que tienen forma de bola. En la mesa de billar pasan 11 de 14 blobs y el taco se rechaza con redondez 0,12.

opencvimage-processing
Leer →
Fundamentos
·5 min de lectura Principiante

Encontrar el rango HSV de un objeto en OpenCV

Lee los píxeles de una mesa de billar en HSV con cv2.cvtColor y encuentra el rango que ocupa el paño: su valor de verde cae casi diez veces entre el extremo iluminado y una sombra, mientras su tono se queda entre 86 y 90.

opencvimage-processing
Leer →
Fundamentos
·4 min de lectura Principiante

Corrección gamma en OpenCV con una tabla de consulta

Construye una tabla de consulta de 256 entradas y aplícala con cv2.LUT para aclarar más los tonos oscuros que los claros. Con dos pasos de menos, multiplicar gana (9,1 contra 10,7); con tres, gana la gamma (13,9 contra 15,1).

opencvimage-processing
Leer →
Fundamentos
·4 min de lectura Principiante

Ecualización de histograma y CLAHE en OpenCV

Prueba las correcciones automáticas de contraste de OpenCV, cv2.equalizeHist y CLAHE, en una foto oscura con una lámpara encendida, y mide por qué quedan más lejos de la exposición objetivo (30,6 y 35,5) que un simple multiplicador (9,1).

opencvimage-processing
Leer →
Fundamentos
·4 min de lectura Principiante

Histogramas de imagen en OpenCV

Cuenta cuántos píxeles hay en cada brillo con cv2.calcHist, dibuja el histograma y lee en él que la foto oscura tiene el 79,3% de sus píxeles en el cuarto inferior y el 7,8% quemado.

opencvimage-processing
Leer →
Fundamentos
·4 min de lectura Principiante

Crear una máscara de color con cv2.inRange en OpenCV

Convierte un rango HSV en una máscara en blanco y negro con cv2.inRange, inviértela con bitwise_not y aplícala con bitwise_and. En la mesa de billar una llamada marca el 79,3% de la foto como paño.

opencvimage-processing
Leer →
Fundamentos
·5 min de lectura Principiante

Erosión, dilatación, apertura y cierre de una máscara en OpenCV

Limpia una máscara de color con morfología: la erosión encoge las áreas blancas, la dilatación las agranda, la apertura quita puntitos y el cierre rellena huecos. En la mesa de billar la máscara pasa de 59 blobs a 14.

opencvimage-processing
Leer →
Fundamentos
·4 min de lectura Principiante

Abrir una imagen y leer sus píxeles en OpenCV

Carga una foto con cv2.imread, comprueba que es una rejilla de números con forma y tipo, y lee un píxel y el brillo medio de una foto tomada dos pasos demasiado oscura.

opencvimage-processing
Leer →