Introducción
La utilización de herramientas como Matlab® y Simulink® permiten implementar los algoritmos de procesamiento de imágenes en tiempo real, ayudan a realizar cambios en la programación y ver sus resultados casi de manera instantánea. Por esta razón, es indispensable tener un computador y el software instalado para realizar las diferentes actividades y proyectos que se van a proponer en la asignatura.
Las imágenes una vez capturadas necesitan tener un preprocesamiento para seleccionar las más adecuadas o mejorar las que se han obtenido, por ejemplo, para la industria alimenticia en donde se deben seleccionar los productos en buen estado y separar los que están deteriorados, empacarlos en embalajes apropiados, despacharlos e identificarlos.
El anterior proceso se hace en bandas móviles y sin la presencia de operarios utilizando sistemas mecatrónicos asociados, se necesita, entonces, sistemas informáticos robustos que realicen estas tareas eficientemente y que permitan detectar los bordes, regiones, patrones, códigos de barras y demás características de las imágenes que se adquieran en las plantas de producción.
El diseñador de estas soluciones, aparte de entender el negocio del cliente, debe utilizar los dispositivos de captura, la iluminación adecuada y los sistemas de cómputo que generen confianza en la operación para realizar las aplicaciones informáticas que permitan el control de los procesos, al generar datos para utilizarlos en estadísticas, medición de tiempos y hacer trazabilidad de los artículos. Es importante que la información que se obtiene de las imágenes debe ser tratada para obtener los mejores paquetes de datos que permitan ser procesados.
![]() |
Le invitamos a conocer algunos de los comandos de Matlab® que le ayudarán en el desarrollo de las actividades planteadas en esta unidad. |
Propósitos de aprendizaje
Propósito general
Apropiar los conceptos necesarios para la solución de problemas en ingeniería, apoyado en los fundamentos y herramientas de software como Matlab® y Simulink®, con el fin de mejorar los resultados de los datos de las imágenes de interés.
Propósitos específicos
- Utilizar comandos y funciones de las herramientas Matlab® y Simulink® aplicadas al procesamientode imágenes para experimentar sus resultados y consecuencias de su utilización.
- Describir los histogramas en sus propiedades y usos para el análisis de imágenes.
- Diferenciar la operación de los filtros en donde la nueva matriz que representa la imagen original depende de otras matrices que son seleccionadas adecuadamente, según las necesidades de procesamiento.
- Extraer de las imágenes los bordes, umbrales, regiones y patrones que permitan utilizar la información de manera apropiada.
- Distinguir en dónde utilizar las transformadas de Fourier, del coseno, Wavelets y Hough para el procesamiento de imágenes.
Preprocesamiento de imágenes
Actualmente, existen herramientas y aplicaciones que realizan operaciones complejas con las imágenes, estas aplicaciones pueden ser la base para diseñar, mejorar y obtener imágenes de mayor calidad y más sofisticadas, por esta razón, es conveniente conocerlas y operarlas para realizar ingeniería inversa que permita hacer aplicaciones que impacten a los usuarios, por su facilidad de uso y por la amplia información que entregan.
Por ejemplo, la herramienta Wavelet Toolbox™ proporciona funciones y algoritmos para analizar y sintetizar señales, imágenes y datos que muestran el detalle de la transformación en Wavelet. Esta herramienta permite experimentar con los datos de las imágenes en un entorno amigable y tener un laboratorio real que ayuda a escudriñar los efectos de los cambios que se realizan en las mismas, por ejemplo, muestra inmediatamente la fusión de dos imágenes y los efectos que se generan en la imagen resultante. La experimentación permite desarrollar la creatividad para realizar las aplicaciones con ingredientes novedosos y de vanguardia.
![]() |
Para continuar con el procesamiento de imágenes se recomienda realizar, en este punto, una lista de chequeo. |
Ya se ha cumplido con la primera fase de la secuencia del procesamiento de imágenes que es la captura de imágenes, esta involucra los dispositivos y el software que los fabricantes ponen a disposición para manipular la información de los archivos que se generan en los diferentes formatos.
![]() |
Ahora necesitamos analizar y modelar los datos obtenidos. |
Actividad de aprendizaje
![]() |
Le invitamos a realizar la siguiente actividad para reforzar los comandos y funciones del lenguaje de programación. |
Preprocesamiento de imágenes
Operaciones de imágenes
Para preprocesar las imágenes se necesita capturarlas y entregar los datos en formatos adecuados, en el siguiente recurso se propone un algoritmo y ejemplo para capturar las imágenes y videos que se van a manipular al realizar este tipo de aplicaciones. El algoritmo se puede implementar en diferentes plataformas, en esta sección se utilizarán Simulink, Matlab y Guide, utilizadas por Matlab para realizar aplicaciones en ambiente gráfico para usuarios finales.
Tenga presente que las matemáticas permiten manipular los datos de las imágenes de forma predecible y sistemática, como lo hace la corrección Gamma. La representación matemática de las imágenes son matrices y vectores que tienen bastante información que sería dispendioso manipularla con sistemas computacionales básicos. Para aplicaciones que estén en producción se necesitan recursos de hardware y software robustos para procesar la información eficientemente. Compruebe los efectos de la corrección gamma en las imágenes utilizando Simulink.
![]() |
Revise el siguiente programa que aplica el algoritmo para realizar diferentes operaciones con las imágenes. |
Los algoritmos usados se pueden utilizar para programas en diferentes lenguajes, a continuación podrá ver otra aplicación en donde el usuario es un estudiante de bachillerato al cual se le explicará por medio de una interface gráfica los efectos que tienen sobre las imágenes las operaciones de transponer, eliminar, sumar, restar, multiplicar y dividir por una constante.
Actividad de aprendizaje
![]() |
Le invitamos a realizar cuatro actividades de aprendizaje donde podrá aplicar los conceptos vistos en operaciones con las imágenes. |
Preprocesamiento de imágenes
Histogramas imagen RGB y gris
Los histogramas o medición de luz son gráficos en coordenadas cartesianas que representan las distribuciones de los pixeles, en el eje ”y” se representan los pixeles, en el eje “x” la cantidad de veces que se repite el tono en la imagen que se está analizando.
En las imágenes se extrapola su interpretación al contenido de los pixeles que contienen los valores tonales que la componen. Al simplificar la imagen en tonos de grises se encuentra que los pixeles van de color blanco al negro pasando por tonalidades de grises. En fotografía, una exposición correcta es cuando contiene la mayor cantidad de información tonal en los tonos medios, evitando la presencia de tonos negros y blancos absolutos.
![]() |
Una imagen con toda la información tonal de los pixeles negros es subexpuesta, si tiene toda la información tonal en los blancos es sobrexpuesta. |
Veamos cómo se calcula el histograma de una figura en tono de grises y conozca un ejemplo de un histograma en el seguimiento de colores y objetos en un video.
En el histograma se encuentra mucha información que no es útil o es redundante, esta información se puede descartar utilizando métodos numéricos que compriman la información hacia las que es relevante. La opción que presentan los lenguajes de programación son los histogramas ecualizados.
Actividad de aprendizaje
![]() |
Le invitamos a realizar tres actividades donde podrá aplicar los conceptos vistos en histogramas. |
Preprocesamiento de imágenes
Umbral, detección de bordes, regiones y patrones
La binarización de imágenes permite transformar los valores de las marices tridimensionales o bidimensionales en escala de unos y ceros, los algoritmos para realizar estas transformaciones son variados y dependen del programador. El parámetro a tener en cuenta es el umbral que permite modificar el valor del pixel con la lógica de si este valor es mayor al umbral, el valor del nuevo pixel toma uno de los valores binarios de lo contrario el valor del nuevo pixel tiene el valor opuesto.
![]() |
Para la binarización es recomendable normalizar la matriz para que los valores de los pixeles estén entre el cero y el uno, de esta forma el umbral no se sale del rango y simplifica el cálculo. Conozca un ejemplo de matriz binarizada. |
Los filtros de realce se utilizan para realzar los detalles de una imagen que esta borrosa, se asocia esta clase de filtros a las aplicaciones de detección de bordes. La debilidad de estos filtros es que son susceptibles al ruido ya que este también se amplifica.
En los filtros se utiliza la binarización de las imágenes. Es la conversión de una imagen en escala de grises a una imagen lógica que contiene valores de 0 para color negro y 1 para el blanco. Para el efecto, se utiliza el umbral que determina el valor de corte para definir qué colores se asumen como negros o blancos, este valor depende del lenguaje, programador y de los datos que entregue el dispositivo de captura.
![]() |
Haga clic aquí para ver el algoritmo y el ejemplo de la binarización y umbralización de imágenes. |
Detección de bordes en imágenes digitales
Son transiciones entre dos regiones de niveles de grises significativamente distintos. Estos entregan información sobre los límites de los objetos y se utilizan para segmentar la imagen, reconocer objetos, regiones y patrones. La detección de bordes es utilizada en el procesamiento de imágenes, la visión e inteligencia artificial.
Actividad de aprendizaje
![]() |
Le invitamos a realizar dos actividades donde podrá aplicar los conceptos vistos en umbral, detección de bordes, regiones y patrones. |
Filtrado de imágenes
Filtrar es permitir que se seleccione la información, en las imágenes es procesar los datos para seleccionar las que se necesitan según las aplicaciones, los filtros son operaciones matemáticas que se aplican a las matrices para obtener otra que contenga las características que se desean. Se afectan los pixeles con diferentes procedimientos que tienden a suavizar o resaltar las características de los entornos.
A menudo, la imagen tiene un alto contenido de ruido que será necesario eliminar para que el tratamiento posterior sea más efectivo. En otros procesos será pertinente considerar la estructura de la imagen como los bordes para su posterior extracción. Estas operaciones se realizan utilizando filtros en el dominio del espacio como los filtros de suavizado y de realce.
Los filtros de suavizado se usan para eliminar pequeños detalles antes de realizar segmentación de la imagen para ubicar objetos de interés, es útil para rellenar espacios y eliminar el ruido. Los filtros que se van a utilizar en esta sección son: Filtro de la mediana (Median Filter), Filtro promedio (Average Filter) y Filtro Gaussiano (Gaussian Filter).
![]() |
Haga clic en el enlace para conocer sobre los filtros de realce. |
Filtrado de imágenes
Filtro de la mediana (Median Filter)
La explicación del cálculo del filtro de la mediana se realiza utilizando tablas numéricas, este aprendizaje se enfoca hacia la construcción integral del conocimiento: conceptos, procedimientos y se describen de forma gráfica. El propósito es el de desarrollar capacidades para la elaboración de marcos conceptuales, la construcción y apropiación de los saberes inherentes a las competencias específicas, la construcción de algoritmos procedimentales y la implementación de la práctica, (saber hacer).
El filtro de la mediana es una clase de filtro no lineal, el cual genera una nueva imagen que se obtiene calculando la mediana del conjunto de pixeles del entorno cercano del pixel que se va a modificar en la imagen de origen. La operación logra homogeneizar los pixeles de intensidad diferente al compararlos con los pixeles vecinos, este filtro se utiliza cuando hay ruido de forma aleatoria en una imagen. Los filtros vecinos se definen con el tamaño de la máscara que se utilice.
![]() |
Haga clic aquí para conocer la explicación del cálculo del filtro de la mediana y un ejemplo de aplicación. |
Actividad de aprendizaje
![]() |
Le invitamos a realizar una actividad del filtro de mediana, que le permitirá aplicar este concepto. |
Filtrado de imágenes
Filtro promedio (Average Filter)
Este filtro genera una nueva imagen en donde cada pixel de origen se remplaza por el promedio de los valores de los pixeles contenidos en la máscara que se va a utilizar.
![]() |
Haga clic aquí para conocer la explicación del cálculo del filtro promedio y un ejemplo de aplicación. |
Actividad de aprendizaje
![]() |
Le invitamos a realizar una actividad del filtro promedio, que le permitirá aplicar este concepto. |
Filtrado de imágenes
Filtro Gaussiano
Su nombre es debido a que utiliza la función gaussiana o una aproximación de ella como la campana de Gussiana. Este filtro se usa comúnmente en la detección de bordes de las imágenes.
La mayoría de los algoritmos de detección de bordes son sensibles al ruido que tenga la imagen, el ruido puede ser desenfoque, partículas indeseables o ajenas a la imagen original y variación del brillo o el color que generan los dispositivos de captura. Este filtro se usa antes de detectar los bordes por los algoritmos de detección de bordes, esto mejora sus resultados.
Actividad de aprendizaje
![]() |
Le invitamos a conocer el código para implementar el filtro gaussiano y a realizar una actividad que le permitirá analizar los efectos del filtro gaussiano sobre las imágenes y las posibles aplicaciones en donde se emplea. |
Transformación del dominio aplicado al procesamiento de imágenes
Las trasformadas de señales en el dominio del tiempo tienen componentes como la frecuencia, amplitud, fase, longitud de onda. En las imágenes, las “señales” corresponden a los niveles de gris o intensidad de las diferentes filas y columnas de las matrices de la imagen. El eje del tiempo que ayuda a determinar la frecuencia de las señales en las imágenes se cambian por los ejes X-Y, entonces, ¿cómo se entiende el concepto de frecuencia en las imágenes?
En las imágenes con frecuencias bajas el cambio de los niveles de grises ocurre gradualmente de una posición a otra de la imagen. En las imágenes con alta frecuencia cambia periódicamente el valor de los niveles de grises en un intervalo espacial pequeño o, mejor, en distancias pequeñas de la imagen, por tanto, los niveles de grises cambian abruptamente de un nivel de gris a otro. Cuando no se presenta ningún cambio en el nivel de gris, en toda la imagen, esta tiene frecuencia nula.
![]() |
En los apartados anteriores se han tratado las imágenes con transformaciones en el espacio, con filtros que afectan a los pixeles en sus posiciones sin percatarnos de los cambios de intensidades, ahora, nos referiremos a las transformadas en el dominio de la frecuencia. Las más usuales son: transformada de Fourier, transformada del coseno, transformada de Wavelets y Hough. |
Transformación del dominio aplicado al procesamiento de imágenes
Transformada de Fourier
La empleabilidad de la transformada de Fourier, en el procesamiento de imágenes, lleva al diseñador de aplicaciones un paso más allá de ver figuras y patrones fáciles de interpretar por el ojo humano, la información que se recopila y se filtra ya no es entendible de manera visual, se necesita interpretarla y, para esto, están los algoritmos que permiten a las máquinas procesar los datos y entregar información que es útil y aplicable en diferentes áreas.
![]() |
En esta asignatura no se realizará el estudio a prufundidad de la teoría matemática de la transformada, no obstante, una idea de la misma, aplicada a las imágenes, resulta en cualquier caso ilustrativo para consultas y desarrollos más profundos. Le invitamos a que profundice sobre la transformada de Fourier. |
Actividad de aprendizaje
![]() |
Le invitamos a realizar dos actividades donde podrá aplicar la transformada de Fourier en una dimensión y en 2D. |
Transformación del dominio aplicado al procesamiento de imágenes
Transformada discreta del coseno - TDC
A diferencia de la transformada de Fourier en donde la base de las señales es sinusoidal, que generan componentes reales e imaginarios, la transformada del coseno solo utiliza señales coseno, esto genera que la parte compleja de la transformada no esté presente.
La ventaja es, entonces, que la aritmética que se utiliza para su cálculo es real y no hay presencia de datos imaginarios. Esta transformada se utiliza en la compresión de imágenes, especialmente, en el formato JPEG.
![]() |
Haga clic aquí para conocer el algoritmo de la transformada discreta del coseno - TDC y un ejemplo de aplicación. |
Actividad de aprendizaje
![]() |
Le invitamos a realizar una actividad de la transformada discreta del coseno, que le permitirá aplicar este concepto. |
Transformación del dominio aplicado al procesamiento de imágenes
Transformada de Wavelets
La compresión de imágenes es una de las necesidades que se tienen actualmente para transmitir y almacenar grandes cantidades de información, la transformada Wavelets es uno de los métodos utilizados en el estándar JPEG 2000 de compresión. Esta transformada conserva la energía de la imagen en solo unos pocos coeficientes de transformación y, además, no están correlacionados.
La transformada discreta de Wavelets se utiliza para filtrar, eliminar ruido, realzar, entre otras aplicaciones. Las Wavelets son formas de onda con duración finita y valor promedio igual a cero, comparando ondas del coseno que son regulares e infinitas, las ondas Wavelets son irregulares. La duración finita de estas ondas sirve para que una señal sea expresada con la suma de versiones escaldas de ellas.
![]() |
Hay varios tipos de ondas las cuales se clasifican en familias porque tienen características similares. Le invitamos a profundizar sobre la transformada de Wavelets. |
Actividad de aprendizaje
![]() |
Le invitamos a realizar una actividad de la transformada de Wavelets, que le permitirá aplicar este concepto. |
Transformación del dominio aplicado al procesamiento de imágenes
Transformada de Hough
Paul Hough propuso la forma de encontrar la ecuación de una línea recta que pasa por un conjunto de puntos en el plano de coordenadas xy. La ecuación de la línea recta es y = ax +b. El método permite evaluar los parámetros a que es la pendiente y b la altura en donde la recta corta el eje de coordenadas xy.
La línea recta también se describe utilizando la forma polar representada en coordenadas polares en donde los parámetros a calcular son r y 𝜽 la ecuación es
r = x cos(𝜽) + y sin(𝜽).
Las aplicaciones de la trasformada de Hough - TH en el procesamiento de imágenes están enfocadas en localizar formas paramétricas a partir de una distribución de puntos presentes en una imagen. Las formas paramétricas son líneas, círculos o elipses, los cuales pueden ser descritas utilizando pocos parámetros y la TH es adecuada para ubicarlas de forma automática en las imágenes.
Para utilizar la TH el primer paso es convertir las imágenes en formato digital, luego utilizar un filtro para detectar los bordes y obtener los puntos de la imagen que pertenecen a la frontera de la imagen deseada.
El siguiente paso y debido a las imperfecciones ya sea de la imagen, ruido o del filtro detector de bordes, se presenta dificultades para encontrar puntos que pertenecen a la recta o que están separados, se utiliza la TH que ayuda a resolver esta clase de problemas, haciendo posible realizar agrupaciones de los puntos que pertenecen a los bordes de potenciales figuras a través de un procedimiento de umbralización sobre un conjunto de las figuras paramétricas. Depende del programador y de las necesidades de las aplicaciones establecer adecuadamente los umbrales para considerar que una línea existe en una imagen.
![]() |
Le invitamos a ver un ejemplo de la transformada de Hough. |
Actividad de aprendizaje
![]() |
Le invitamos a realizar una actividad de la transformada de Hough, que le permitirá aplicar este concepto. |
Resumen
En el preprocesamiento hay varios subprocesos que se deben integrar para obtener datos para analizar y modelar la información, utilizando los conocimientos de matemáticas especiales que ayudan a obtener resultados coherentes y previsibles como las transformadas de Fourier, Coseno, Hough y Wavelet. En la asignatura se utilizan sus postulados y aplicaciones, no se realizan las demostraciones para obtenerlas puesto que el enfoque de la asignatura es saber en dónde y para qué utilizar estas herramientas matemáticas.
Ya se pueden vislumbrar las áreas en donde se aplica el procesamiento de imágenes como, por ejemplo, en la identificación de las placas de los vehículos o en la inteligencia artificial. En esta unidad se presentaron varios artilugios para tratar los datos que llegan de los dispositivos de captura y mejorarlos utilizando algoritmos, transformadas, aplicaciones como el toolbox wavelet, histogramas, filtro de la mediana, filtro promedio, detección de bordes, regiones y patrones en las imágenes. Lo anterior, para que los desarrolladores de aplicaciones que dan respuestas a problemas de la industria, la academia y la ciencia tengan la información adecuada y de buena calidad.
![]() |
En la próxima unidad revisaremos algunas aplicaciones utilizadas en teléfonos móviles, en donde las cámaras que son más sofisticadas y de mayor cantidad de megapíxeles están asociadas a aplicaciones sencillas que permiten editar fotografías, colocarles filtros, hacer collage de fotos, modificarlas y un sinnúmero de alternativas que hacen el tratamiento de las imágenes un arte y una ciencia que avanza para automatizar a las máquinas. |
Bibliografía ()
- Cuevas, E. (2010). Procesamiento digital de imágenes usando Matlab y Simulink. México: Alfaomega. Pág. 93-97.
- Cuevas, E. (2010). Procesamiento digital de imágenes usando Matlab y Simulink. México: Alfaomega. Pág. 284 a 300.
- Martínez, T. (2018). Transformada de Hough, Detección de líneas y círculos.
- Martinsanz, G. P., Pajares, G., García, J. M., & de la Cruz García, J. M. (2008). Visión por computador. Imágenes Digitales y Aplicaciones. 2a Edición. Alianza Editorial.
Referencias Web
- Benavides, G. B. (2011, junio). Sistema de control vehicular utilizando reconocimiento óptico de caracteres. Dialnet. Recuperado de:https://dialnet.unirioja.es/descarga/articulo/5113298.pdf.
- MathWorks. (2020). Documentación. Recuperado de:https://la.mathworks.com/help.
- MathWorks. (2020). Documentación: medfilt2. Recuperado de:https://www.mathworks.com/help/images/ref/medfilt2.html?searchHighlight=medfilt2&s_tid=doc_srchtitle.
- MathWorks. (2020). Documentación: waveletfamilies. Recuperado de:https://www.mathworks.com/help/wavelet/ref/waveletfamilies.html.
- MathWorks. (2020). GUI de Matlab. Recuperado de:https://la.mathworks.com/discovery/matlab-gui.html.

























