0% encontró este documento útil (0 votos)
7 vistas3 páginas

Segmentación Semántica de Imágenes

Este documento describe técnicas de segmentación semántica de imágenes. La segmentación semántica asigna un único color a cada tipo de objeto en una imagen. Aunque actualmente se realiza principalmente con aprendizaje profundo, también se puede hacer con técnicas clásicas como umbralización e histograma. El objetivo es diseñar un algoritmo que asigne automáticamente un color a cada píxel de un objeto como vegetación o carretera.

Cargado por

Nicolas Viuche
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
7 vistas3 páginas

Segmentación Semántica de Imágenes

Este documento describe técnicas de segmentación semántica de imágenes. La segmentación semántica asigna un único color a cada tipo de objeto en una imagen. Aunque actualmente se realiza principalmente con aprendizaje profundo, también se puede hacer con técnicas clásicas como umbralización e histograma. El objetivo es diseñar un algoritmo que asigne automáticamente un color a cada píxel de un objeto como vegetación o carretera.

Cargado por

Nicolas Viuche
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Universidad Militar Nueva Granada, Procesamiento Digital de Señales

Segmentación Semántica de Imagenes


Oscar Diaz, Santiago Viuche
Facultad de Ingeniería, Universidad Militar Nueva Granda
UMNG
Bogotá, Colombia
[Link]@[Link], [Link]@[Link]

Resumen— La segmentación semántica es una técnica de


visión por computador que consiste en segmentar la imagen entre
sus objetos, asignando un único color a cada tipo de objeto de la
imagen. En la actualidad esta técnica es muy útil en aplicaciones
biomédicas (ej. localización de tumores) y de navegación
autónoma. Aunque hoy en día la segmentación semántica se Fig. 1. Imagen y pixeles etiquetados [1]
realiza principalmente con aprendizaje profundo (Deep
Un ejemplo sencillo de Segmentación Semántica, puede
Learning), se puede también realizar con técnicas “clásicas” de
procesamiento de imágenes, basadas, por ejemplo, en ser puede el presente en Figura 1, donde los pixeles de la
umbralización, histogramas, detección de bordes y máscaras. imagen se dividen en dos categorías, la persona y el fondo. A
esta misma imagen se le pueden añadir más categorías, como
Abstract— Semantic segmentation is a computer vision pueden ser persona, cielo, fondo y agua, por lo que podemos
technique that consists of segmenting the image between its entender que la segmentación semántica no tiene límite de
objects, assigning a single color to each type of object in the image. categorías
At present, this technique is very useful in biomedical applications La llegada de las técnicas fundamentadas en Deep
(ex. tumor localization) and autonomous navigation. Although Learning, en específico las redes neuronales convolucionales,
today semantic segmentation is mainly done with deep learning, it
ofrecen probabilidad de obtener propiedades apropiadas para
can also be done with “classic” image processing techniques,
based, for example, on thresholding, histograms, edge detection el reconocimiento de patrones de forma autónoma. En estas
and masks. redes neuronales se encentran redes capaces de clasificar una
imagen en un numero bastante extenso de escenarios
OBJETIVOS probables [2] u otras que permiten la detección de objetos [3].
Diseñar un algoritmo que asigne de forma automática un “La segmentación semántica puede ser una útil alternativa
único color a cada píxel de un mismo tipo de objeto (vegetación, a la detección de objetos, pues permite que el objeto de interés
carretera, cielo), de la imagen proporcionada por el docente. abarque diferentes áreas de la imagen en el nivel de píxel. Esta
técnica detecta claramente objetos que tienen una forma
INTRODUCCION irregular, al contrario que la detección de objetos, en donde los
El fin de este documento es lograr crear un algoritmo de objetos deben encajar en un bounding box” [1]
segmentación semántica, asignando un único color a cada
pixel de un mismo objeto de la imagen suministrada por el
docente, así mismo, aplicando los colores expuestos en la guía
para la configuración correspondiente a la segmentación.
El desarrollo de este proyecto se llevó a cabo por la
plataforma de Google, Colaboratory, donde se trabajó con el
lenguaje de programación orientado a Python, haciendo uso de
distintas librerías para el procedimiento requerido y aplicado
sobre la imagen dada por el docente.
La segmentación semántica corresponde a un algoritmo de
Deep Learning que asocia diferentes categorías dentro de una Fig. 2. Detección de objetos con cuadros delimitadores para identificar
imagen a cada pixel dentro de esta. Ejemplificando, un objetos [1]
transporte de conducción autónoma requiere detectar
vehículos, peatones, señales de tráfico, aceras y otros recursos TECNICAS DE PROCESAMEINTO
de la carretera. La segmentación semántica se usa en varias A. Segmentacion de Imágenes
aplicaciones, como la conducción autónoma, la generación de
imágenes médicas y la inspección industrial.[1] La segmentación subdivide una imagen en sus piezas
constituyentes u objetos, con el propósito de dividir las
piezas de interés del resto de la imagen, por consiguiente,
el del problema a solucionar. En el proceso de identificar
las piezas en una imagen se identifican bordes de la
imagen, o se segmenta está en zonas, líneas o curvas, etc.
Universidad Militar Nueva Granada, Procesamiento Digital de Señales
Otra definición estima a la segmentación como la 𝜕2 𝜕2
categorización de los aspectos de la imagen, indicando las ∆2 = +
𝜕𝑥 2 𝜕𝑦 2
clases a la que pertenecen los diferentes pixeles. Los
c) En lazado de bordes y deteccion de limites
atributos básicos de segmentación de una imagen son: la
luminancia en imágenes monocromáticas, los elementos de La detección de la discontinuidad se basa en dividir una
color en imágenes en color, textura forma, etc. [4] imagen basándose en los cambios bruscos del nivel de gris.
Los algoritmos de segmentación de imágenes Aunque la detección de punto y línea son recursos de
monocromáticas principalmente se fundamentan en una de cualquier presentación de la segmentación de imágenes, la
ambas características simples de los valores del grado de detección de bordes es la técnica más común para detectar
gris: discontinuidad y similaridad. En la discontinuidad el discontinuidades significativas en el nivel de gris, debido a
procedimiento se basa en dividir una imagen basándose en que son más frecuentes en las aplicaciones prácticas.[4]
los cambios bruscos del grado de gris. En la similaridad, se d) Umbralizacion
muestra la regularidad en los valores del grado de gris, los La umbralización es uno de los métodos más importantes de la
primordiales procedimientos permanecen basados en [4]: segmentación de imágenes. Se define el umbral como una
1) Umbralizacion función que convierte una imagen con diferentes tonalidades
2) Incremento de zona en una imagen en blanco y negro. Si la imagen original es f(x,
3) Separacion y fusion de regiones y), la imagen umbralizada g(x, y) y se fija un umbral U (0 <
La segmentación de una imagen con base en la U< 255), definiéndose en:
discontinuidad o en la similaridad de los valores del grado
de gris de sus pixeles es aplicable tanto a las imágenes fijas 𝑔(𝑥, 𝑦) = 255 𝑠𝑖 𝑓(𝑥, 𝑦) > 𝑈𝑚𝑏𝑟𝑎𝑙
como a las dinámicas (variantes en el tiempo). 𝑔(𝑥, 𝑦) = 0 𝑠𝑖 𝑓(𝑥, 𝑦) ≤ 𝑈𝑚𝑏𝑟𝑎𝑙
Otra corriente aspira, mediante filtros de mediana
adaptados al objeto de inspección, la estimación de una Se selecciona un umbral que posibilite agrupar los pixels de
imagen independiente de fallas desde la imagen captada una imagen originarios de los múltiples objetos de la misma
del objeto mismo. Por medio de sencilla comparación entre imagen diferenciándolos del fondo. Tal cual la segmentación
la imagen real y la imagen independiente de fallas querida basada en el histograma se fundamenta en la votación de uno o
se segmentan las fallas. Típicamente, para el estudio de diversos umbrales [4] que permiten agrupar los aspectos de la
una imagen se necesita dividirla a priori en centenares de imagen en zonas de propiedades semejantes en funcionalidad
sub imágenes. [5] de sus niveles de gris. Se da por la ecuación:
B. Deteccion de Bordes 𝑇 = 𝑇 [𝑥, 𝑦, 𝑝(𝑥, 𝑦), 𝑓(𝑥, 𝑦)]
la detección de la discontinuidad se apoya en dividir
una imagen basándose en los cambios bruscos del grado de ALGORITMO
gris. Es especialmente fundamental pues da información de Se comenzó convirtiendo la imagen a escala de grises
los objetos de la imagen a otras labores del procesamiento
de imágenes como reconocimiento e interpretación.
img_gray = [Link](img, cv2.COLOR_
1) Deteccion de puntos aislados RGB2GRAY)
2) Deteccion de lineas cv2_imshow(img_gray)
3) Deteccion de bordes ocontronos de una imagen

Aunque la detección de punto y línea son recursos de Se hizo el procesamiento para el formato HSV y así
cualquier presentación de la segmentación de imágenes, la elegir las mascaras bajo los parámetros pre establecidos por la
detección de bordes es la técnica más común para identificar docente, aplicando RGB2HSV_FULL para mejor resolución.
discontinuidades significativas en el grado de gris, ya que
son más comunes en las aplicaciones prácticas. [6]
img_HSV = [Link](img, cv2.COLOR_R
a) Derivada de primer orden
GB2HSV_FULL)
Las derivadas de primer orden son una de las técnicas mas
comunes para detectar un borde en 2D, funciona mediante el cv2_imshow(img_HSV)
operador gradiente en función f(x,y).
Esta función mencionada, corresponde al vector bidimensional Se inicio obteniéndola mascara para el parámetro
𝐺𝑥 [0,150,2500] en formato RGB
𝑑𝐹/𝑑𝑥
𝐺(𝐹(𝑥, 𝑦)) = [𝐺 ] = [ ]
𝑦 𝑑𝐹/𝑑𝑦
bajo_C = [Link]([10, 128, 128])
b) Derivada de segundo orden alto_C = [Link]([45, 255, 255])
Se define con:
Universidad Militar Nueva Granada, Procesamiento Digital de Señales
cielo = [Link](img_HSV,bajo_C,alto RESULTADO
_C)
cv2_imshow(cielo)

La anterior línea de código selecciona las variaciones


de tonalidades amarrillas, debido al resultado dado el formato
HSV, esta “selección” se reemplaza con el valor
preestablecido por la docente, dando el código

cielo=cv2.bitwise_and(img_HSV,img_HSV,
mask=cielo)
cielo=[Link](cielo>0,[250,150,0],0)
cv2_imshow(cielo)

Este mismo procedimiento se aplicó para “mostaza”


Fig. 1. Segmentación Semántica Proyecto PSD
y “vegetación”, con las siguientes líneas, donde se muestra la
aplicación de los valores pre establecidos REFERENCIAS
Mostaza (200,180,80)
Vegetación (0,150,0) [1] "Segmentación semántica Tres cosas que es necesario saber",
MathWorks, 2021. [Online]. Available:
[Link]
carretera = cv2.bitwise_and(img_HSV,img [Link]. [Accessed: 22- Nov- 2021].
[2] A. Krizhevsky, I. Sutskever y G. E. Hinton, “Imagenet classification with
_HSV, mask=carretera) deep convolutinal neural networks”, in Avances in neural information
carretera = [Link](carretera>0,[80,18 processing system, 2012, pp. 1097-1105
0,200],0) [3] S. Ren, K. He, R. Girshick, y J. Sun, “Faster R-CNN: Towards real-time
object detection with region proposal networks”, in advances in Neural
cv2_imshow(carretera) Information Processing Systems, 2015, pp. 91-99
[4] Gonzalez RC, Woods RE 1996. Tratamiento digital de imágenes,
Addison-Wesley Publishing Co, Reading, Washington.
vegetacion1 = cv2.bitwise_and(img_HSV,i [5] Mazo, Q. M. & Boquete, V.L. & Barea N.R. 1996. Visión Artificial.
mg_HSV, mask=vegetacion1) Publicaciones UAH. ISBN 84 8138 101 2, DL. M 1321
[6] N. Palomino and U. Roman Concha, Técnicas de Segmentación en
vegetacion1 = [Link](vegetacion1>0,[0 Procesamiento Digital de Imágenes. San Marcos, 2007, pp. 11-15.
,150,0],0)
cv2_imshow(vegetacion1)

Estas imágenes finales, se sumaron para dar como


resultado la Segmentación semántica:

segmentacion = cielo+vegetacion1+carret
era
cv2_imshow(segmentacion)

También podría gustarte