Funciones > Procesamiento de imágenes > Extracción de función > Ejemplo: rotulación de componentes conectados
Ejemplo: rotulación de componentes conectados
Utilice la función concomp para realizar la rotulación de componentes conectados de una imagen. Dos píxeles están conectados si tienen el mismo valor y la conectividad se puede clasificar como 4 (solo vecinos horizontales o verticales) u 8 (vecinos horizontales, verticales y diagonales). Los componentes conectados son útiles para automatizar el reconocimiento de funcionalidades de imagen, al limitar las áreas similares y los huecos de la imagen.
Para obtener información sobre el uso de este ejemplo, consulte Acerca de los ejemplos de procesamiento de imágenes
1. Defina una matriz de entrada.
Pulse aquí para copiar esta expresión
2. Defina un valor de intensidad de primer plano de destino.
Pulse aquí para copiar esta expresión
3. Lleve a cabo la rotulación de componentes conectados mediante el primer tipo de conectividad.
Pulse aquí para copiar esta expresión
Pulse aquí para copiar esta expresión
En este caso, hay dos componentes de conectividad tipo 4 con un valor de píxel igual a 100.
4. Lleve a cabo la rotulación de componentes conectados mediante el segundo tipo de conectividad.
Pulse aquí para copiar esta expresión
Pulse aquí para copiar esta expresión
En este caso, hay un componente con 8 conexiones con un valor de píxel igual a 100.
5. Examine el efecto de la rotulación de componentes conectados en una imagen binaria, definida por una función sinc de dos dimensiones.
Pulse aquí para copiar esta expresión
6. Defina las variables de rango.
Pulse aquí para copiar esta expresión
Pulse aquí para copiar esta expresión
Pulse aquí para copiar esta expresión
7. Defina un rango de valores.
Pulse aquí para copiar esta expresión
8. Defina una matriz de imagen.
Pulse aquí para copiar esta expresión
9. Defina un umbral, utilice la función binarize para binarizar la matriz de imagen y, a continuación, utilice la función WRITEBMP para grabar la imagen en un fichero.
Pulse aquí para copiar esta expresión
Pulse aquí para copiar esta expresión
Pulse aquí para copiar esta expresión
(cc_binarized.bmp)
10. Defina un valor de intensidad de primer plano y el tipo de conectividad; a continuación, aplique el algoritmo de rotulación de componentes conectados a esta imagen.
Pulse aquí para copiar esta expresión
Pulse aquí para copiar esta expresión
Pulse aquí para copiar esta expresión
Contando las distintas regiones de la imagen, el algoritmo debe identificar 9 componentes conectados exclusivos en esta imagen.
11. Calcule el número de componentes detectados por el algoritmo.
Pulse aquí para copiar esta expresión
12. Defina una matriz de paleta de colores y, a continuación, utilice la función gray_to_rgb para convertir la matriz de escala de grises a color. Así podrá ver la imagen de componentes conectados con un color falso que resalte los componentes.
Pulse aquí para copiar esta expresión
Pulse aquí para copiar esta expresión
Pulse aquí para copiar esta expresión
(color_d.bmp)
La matriz de 4 columnas colormap especifica la intensidad de la escala de grises en la primera columna y los valores RGB en las columnas segunda, tercera y cuarta, respectivamente.
13. Utilice la función norm1 para calcular el tamaño de los 9 componentes.
Pulse aquí para copiar esta expresión
Pulse aquí para copiar esta expresión
Pulse aquí para copiar esta expresión
14. Extraiga el componente más grande (índice: 3, tamaño: 35 píxeles) de esta imagen y visualícelo con un color falso.
Pulse aquí para copiar esta expresión
Pulse aquí para copiar esta expresión
15. Utilice la función WRITERGB para grabar la imagen en un fichero.
Pulse aquí para copiar esta expresión
(cimg_3.bmp)
La matriz comp es una matriz de 101 x 101 de ceros, excepto para los elementos correspondientes al componente más grande. Los píxeles de comp se multiplican por 3 para preservar el color del componente.
¿Fue esto útil?