Imágenes - Parte IV. Taller de Informática I. 11 de noviembre de DC - FCEyN - UBA

Documentos relacionados
Taller de computación I Ruidos y Filtros Segmentación

M.C. ENRIQUE MARTÍNEZ PEÑA

Taller de Informática I. DC - FCEyN - UBA. 15 de mayo de 2017

TABLA DE CONTENIDOS. Dedicatoria. Agradecimientos. Tabla de Contenidos. Índice de Figuras. Índice de Tablas. Resumen

UNIVERSIDAD POLITÉCNICA DE MADRID

3 Fundamentos y algoritmos de visión artificial

Tema 4.3 Operaciones básicas con imágenes

Introducción al Procesamiento de

Nota: se pueden usar funciones de Matlab para filtrado de imágenes. Se dará importancia al tiempo de cómputo de los métodos.

Segmentación. Transformada de Hough.

Análisis de imágenes digitales

Tema 2: PROCESAMIENTO EN EL DOMINIO ESPACIAL (Parte 2)

Detección de bordes en una imagen.

CONVOLUCIÓN Y FUNCIONES DE TRANSFORMACIÓN

CAPITULO 5. Introducción al procesamiento de imágenes. Continuar

Procesamiento de imágenes con MATLAB

Procesamiento Digital de Imágenes. Pablo Roncagliolo B. Nº 18

Extracción de Regiones

Guía de Laboratorio. MatLab R2009b & Octave. Prof.: Ulises Román C FISI-UNMSM

06 Introducción al procesamiento de imágenes BMP con ANSI C

Marcas de agua (Watermarking) en imágenes, aplicadas en el dominio espacial basadas en Correlación

Definición de Modelo de Elevaciones. Tipos de Estructuras

Práctica 6. Tratamiento de imágenes mediante Matlab

Tema 5: SEGMENTACIÓN (II) I N G E N I E R Í A I N F O R M Á T I C A

Taller de Matlab: Codificación de canal. Introducción. Descripción. Consideraciones generales. Consideraciones sobre Matlab

Reconocimiento automático a través de visión artificial, correlación estadística y Matlab aplicado a las matrículas de vehículos

TAREA N 1 DETECTOR DE LETRAS L MEDIANTE CAMPO RECEPTIVO

M.D.T. y TOPOCAL. Técnicas de Representación Gráfica. Curso DIGTEG 2010

Laboratorio de Procesamiento Digital de Voz Practica 1. INTRODUCCION DE MATLAB Y MANEJO DE ARCHIVOS DE VOZ

Conceptos Básicos para el Procesamiento Digital de Imágenes

Aplicaciones de realidad aumentada en un ipad

Estructura de Datos Espaciales. por José Antonio Navarrete Pacheco INTRODUCCIÓN

Laboratorio de Visión para Robots. Práctica 2

SEGMENTADO DE HUELLAS EN FICHAS DECADACTILARES

Tema 10: Estructuras de control de entrada y salida

Procesamiento de Imágenes. Prof. Alexandra La Cruz, PhD

Tema 13: Manejo de archivos en lenguaje C

Introducción al Procesamiento de Imágenes Satelitales con Software Libre. Módulo 03

Apéndice A: Funciones del programa LightPAP

Fundamentos de Visión por Computador

Métodos Avanzados para Análisis y Representación de Imágenes

Máscaras binarias o Máscaras de bits

Análisis Bioseñales I

Realzado de Imagen. 11 de junio de El histograma de una imagen digital con niveles de gris en la amplitud de [0, L 1], es función discreta

MODELO FUNCIONAL DEL SISTEMA

Modelo de cuencas y subcuencas de escurrimiento superficial CARTA 3569-II SAN RAFAEL ESCALA 1:

Tutorial de ENVI Parte 1 Familiarización con el manejo de imágenes en el programa. Raúl Aguilera H.

Procesamiento Morfológico de Imágenes

5. Software desarrollado

Capítulo. Procedimiento de transformación de intensidad.

Píxel. Un píxel ( picture element ) es la menor unidad homogénea en color que forma parte de una. fotograma de video, gráfico)

8 PROCESAMIENTO DIGITAL DE IMÁGENES USANDO MATLAB & SIMULINK RA-MA

Durán Mendieta, J.L. 1. Centro de Estudios Geográficos México, Ciudad de Toluca.

Capítulo 4 Exploración del ambiente.

Tema 5: Morfología. Segunda parte

RECONOCIMIENTO DE MENSAJES EN CÓDIGO BRAILLE MEDIANTE TÉCNICAS DE PROCESADO DE IMÁGENES

Gráficos de Superficie y de Contorno

Procesamiento Digital de Imágenes. Pablo Roncagliolo B. Nº 07

Compresión de Vídeo. Juan A. Michell Mar=n Gustavo A. Ruiz Robredo. Tema 1.1. Imagen digital. Departamento de Electrónica y Computadores

Introducción a procesamiento digital de imágenes con Matlab

Continental Cubierta de altimetría e hidrografía a partir de los Modelos Digitales de Elevación LIDAR de tipo Terreno Introducción

Taller 2 Representación 3D

PROCESAMIENTO DIGITAL DE IMÁGENES

Introducción a Matlab. Ing. Laura López López

Segmentación de Imágenes Parte 2

Procesamiento de imágenes

UNIVERSIDAD TECNOLÓGICA DE PEREIRA Programa de Tecnología Eléctrica

Procesamiento Digital de Imágenes

Segmentación de imágenes. Procesamiento de imágenes biomédicas Curso 2011

Sistema de filtrado espacial de imágenes en sistemas embebidos

II.3. Retoque (enhancement) de imágenes médicas (Bankman I. N. (Ed.), Handbook of medical imaging, Academic Press, 2000)

Procesamiento Digital de Imágenes. Pablo Roncagliolo B. Nº 14

Universidad de Costa Rica Escuela de Ingeniería Eléctrica. Emmanuel Vargas Blanco (A55895) Jose Pablo Apú Picado (B10407) Modulación Digital

Aprendé a encontrar objetos en videos. Docentes: Franco Ronchetti Facundo Quiroga

Extensión de la Morfología Matemática a imágenes en Color

Calendario de actividades y programa

Capítulo 4. Detección del Objeto Conocido, Medición de su Tamaño Virtual y Cálculo de la Distancia

DISEÑO GRÁFICO DIGITAL

Análisis de imágenes médicas usando matlab

MANEJO BÁSICO DE IMÁGENES EN MATLAB

1. Manipulación simple de imágenes

MAPAS DE PENDIENTE DE TERRENO A PARTIR DE DATOS SATELITALES ASTER

TEMA 2. CODIFICACIÓN DE LA INFORMACIÓN

Procesamiento de Imágenes Biomédicas. Curso 2012 Clase 1

SECCIÓN 1. Identificación del conjunto de datos espaciales o producto:

Práctica 3. Paso de parámetros entre subrutinas. 3. Consideraciones sobre el paso de parámetros

Herramienta de Apoyo para Cursos de Procesamiento Digital de Imagen

El modelo de datos VECTORIAL

Computación archivos

IDEGEO: Infraestructura de datos Geoespaciales

Procesamiento de Imágenes Médicas

Procesamiento Digital de imágenes: Procesamiento morfológico de imágenes

Visión por Computador: Introducción

Tema 8. Análisis morfológico en imágenes

Trabajo: DEMO: 3-D plots. Informática aplicada á problemas químicos.

Superficies en AutoCAD Civil 3D

para la ELABORACION de

ESCUELA TÉCNICA SUPERIOR DE INGENIEROS INDUSTRIALES Y DE TELECOMUNICACIÓN

Algoritmos glotones 2 (código de Huffman) mat-151

Estructuras de datos

Transcripción:

Imágenes - Parte IV Taller de Informática I DC - FCEyN - UBA 11 de noviembre de 2015

Segmentación Segmentar es subdivir una imagen en sus regiones u objetos de interés Los algoritmos de segmentación están basados en una de las dos propiedades básicas de los valores de intensidad de la imágenes: los bordes dentro de una imagen(prewitt, Sobel, Roberts) similaridad de acuerdo a un criterio predefinido.

Segmentación básica: Umbralización o Thresholding Observando el histograma y tomando como umbral donde haya una separación entre dos grupos de intensidad

Segmentación básica: Umbralización o Thresholding Encontrando un algoritmo que determine el mejor umbral para cada imagen. Matlab tiene implementado el algoritmo de Otsu, su función umbral=graythresh(m)

Segmentar usando morfología Matemática Utiliza elementos estructurantes (se) para analizar imagenes binarias. Un se es una máscara pequeña centrada en cada pixel Matlab crea un se con la función strel.

Operaciones fundamentales Las operaciones fundamentales son erosion y dilation. erosion contrae objetos dilation expande objectos.

Erosión A B = {a b : a A b B} Ejemplo: A={(1,1),(1,2),(1,3),(1,4),(1,5),(2,1),(3,1),(4,1),(5,1)} B={(0,0),(0,1)} A-B ={(1,1),(1,2),(1,3),(1,4)}

Dilatación A B = {a + b : a A b B} Ejemplo: A={(0,1),(1,1),(2,1),(2,2),(3,0)} B={(0,0),(0,1)} A \oplus B={(0,1),(1,1),(2,1),(2,2),(3,0), (0,2),(1,2),(2,2),(2,3),(3,1)}

originalbw = imread( text.png ); se = strel( line,11,90); erodedbw = imerode(originalbw,se); figure, imshow(originalbw) figure, imshow(erodedbw)

% con imgenes de grises originali = imread( cameraman.tif ); se = strel( ball,5,5); erodedi = imerode(originali,se); figure, imshow(originali), figure, imshow(erodedi)

originalbw = imread( text.png ); se = strel( line,11,90); dilatedbw = imdilate(originalbw,se); figure, imshow(originalbw), figure, imshow(dilatedbw)

%con imagen grayscale con mscara rolling ball: originali = imread( cameraman.tif ); se = strel( ball,5,5); dilatedi = imdilate(originali,se); figure, imshow(originali), figure, imshow(dilatedi)

Ejemplo de Segmentación I = imread( rice.png ); I2 = imclearborder(i); figure(1) subplot(1,2,1),imshow(i) subplot(1,2,2), imshow(i2)

Ejemplo de Segmentación umbral=graythresh(i) BW = im2bw(i); %busco un umbral a mano mayor a u y menor a u me quedo con 0.2 BW2 = im2bw(i2,0.3); BW2 = im2bw(i2,0.6); BW2 = im2bw(i2,0.4); %umbral=0.2 BW2 = im2bw(i2,0.2); figure(2),subplot(1,2,1),imshow(bw),subplot(1,2,2), imshow(bw2)

Ejemplo de Segmentación [L n] = bwlabeln(bw2); figure(3),imshow(l)

Ejemplo de Segmentación %selcciono una subimagen donde conozco cuantas regiones hay con ginput(2 imshow(bw2(15:84,200:244)); A=BW2(15:84,200:244); [L n] = bwlabeln(a); %binariza seg\ un umbral automatico y reconoce n re figure(4), imshow(l)

Ejemplo de Segmentación RGB = label2rgb(l, jet, k );%colorea figure(5), imshow(rgb)

Ejemplo de Segmentación P = bwperim(l,8);% toma como regiones los que tienen figure(6),imshow(p) desde 8 conectados

f u n c t i o n [ Hero n1 n2 ] = b a c t e r i a s ( ) %UNTITLED2 Summary o f t h i s f u n c t i o n goes h e r e % D e t a i l e d e x p l a n a t i o n goes h e r e H = imread ( h e l a. j p g ) ; f i g u r e, imshow (H), t i t l e ( o r i g i n a l ) Haux = H; Haux ( :, :, 2) = 0 ; f i g u r e, imshow ( Haux ), t i t l e ( o r i g i n a l, banda 2 = 0 ) Haux ( :, :, 3) = 0 ; f i g u r e, imshow ( Haux ), t i t l e ( o r i g i n a l, Banda 2 = 0, Banda 3 =0 ) f i g u r e, i m h i s t ( Haux ( :, :, 1 ) ), t i t l e ( p l o t Histograma Banda 1 ) Hbin = ones ( s i z e ( Haux ) ) ; Hbin ( f i n d ( Haux < 100) ) = 0 ; f i g u r e, imshow ( Hbin ) ; Z = edge ( Hbin ( :, :, 1 ), s o b e l ) ; f i g u r e, imshow (Z), t i t l e ( edge s o b e l ) [ L1 n1 ] = b w l a b e l n (Z) ; f i g u r e, imshow ( L1 ), t i t l e ( B i n a r i a ) Hero=e r o s i o n a r ( Haux ( :, :, 1 ) ) ; [ L2 n2 ] = b w l a b e l n ( Hero ) ; t i t l e ( e r o s i o n a d a ) f i g u r e, imshow ( L1 ) end

Modelo de Elevación Digital

Modelos digitales de Elevación- Introducción Importancia Los Modelos de Elevación Digital o DEM alcanzan importancia debido a que son datos topográgicos digitales de gran interés por su origen y el conocimiento que representan. La precisión de DEM en la simulación de los verdaderos parámetros terrestres de elevación, pendiente y aspecto mejora significativamente la calidad y calibre del conocimiento en numerosas aplicaciones en la tierra, ambiental y ciencias de la ingeniería.

Qué es un DEM? Definiciones de DEM Un DEM proporciona una representación digital de una porción de la terreno superficie de la tierra sobre una superficie de dos dimensiones (UNEP/GRID) http://www.grid.unep.ch. Un DEM es una matriz ordenada de números que representa la la distribución espacial de las elevaciones por encima de algún arbitraria datums en el paisaje ( Meijerink et al.,1994 ) Un DEM es un archivo digital que consiste en elevaciones del terreno para posiciones suelo a intervalos regularmente espaciados horizontales (USGS )

DEM vs DTM Diferencias Digital Terrain Model (DTM) representa información del terreno usando muestreo de valores dicretos como pendiente, por ej. DEM representa los datos de elevación.

Estructura del DEM Líneas Describen la elevación del terreno por los contornos (almacenada en forma de gráficos digitales de ĺınea, DGLS), los pares x,y a lo largo de cada uno contornos de elevación especificada

Estructura del DEM GRID Las elevaciones se almacenan en una serie de cuadrículas.

Estructura del DEM tin Net Triangular Irregular, es una red de interconexión tringulos con nodos espaciados irregularmente o puntos de observación con coordenadas x, y, z valores. Ventaja sobre GRID es su capacidad para generar ms información en reas de relieve complejo.

Procesamiento DEM Remover hendiduras (Sinks) Cálculo de pendientes (Slopes) Dirección de pendiente (Aspect) GRID Acumulation (Flow Accumulation) Stream Order

Ejemplo Matlab http://dds.cr.usgs.gov/srtm/version2 1/SRTM3/South America/ Archivo: S43W065.hgt indica 43o de latitud sur y 65o longitud oeste

Ejemplo Matlab [ f i d 1, mess ]= fopen ( S35W059. hgt, rb, b ) ; fopen: Abre un archive y obtiene información acerca de él. La información la guarda en fid1 junto a mensaje en mess. fid1: es un número entero que identifica el archivo. mess: mensaje de error si el archivo no puede ser abierto. Argumentos: Nombre del archivo: entre comillas se coloca el nombre del archivo a abrir Permisos: Tipo de archivo En fid1 tengo un identificador de archivo.

Ahora tenemos que recuperar los datos: fread: Lee los datos de un archivo cuyo identificador se obtuvo con fopen. [ A, count ]= f r e a d ( f i d 1, [ 1 2 0 1, 1 2 0 1 ], b i t 1 6 ) ; A: matriz donde se guardan los datos obtenidos count: cantidad de elementos leídos en A Argumentos: fid1: obtenido con fopen [MxN]: tamaño de A bit16 : formato en 16 bits Con fclose cerramos el archivo utilizando el identificador obtenido con fopen: f c l o s e ( f i d 1 ) ;

Procesar la Matriz A 1) Trasponemos para que esté en igual posición que el mapa. A=A ; A=f l i p u d (A) ; 2) Muchas veces los datos de un archivo.htg contienen errores que estn dados por números negativos. Por lo tanto, recorrer la matriz y corregir estos problemas: f o r i =1: s i z e (A, 1 ) f o r j =1: s i z e (A, 2 ) i f ( A( i, j ) < 10000 ) A( i, j ) = A( i 1, j ) ; end ; end ; end ;

Procesar la Matriz A 3) Por último, trataremos de bajar un poco la resolución de la imagen que tenemos para que no tarde tanto al mostrar y usamos la función surf para mostrar la imagen en 3d: B = A( 5 0 0 : 8 0 0, 2 0 0 : 5 0 0 ) ; a x i s ( [ 0, 1 2 0, 0, 1 2 0 ] ) ; s u r f (B)

4) Por último agregamos color a la imagen usando la función shading. Esta función posee 3 maneras de ejecución: a) shading flat: cada segmento de la malla del grfico posee un color constante s u b p l o t ( 3, 1, 1 ) s p h e r e ( 1 6 ) a x i s s q u a r e s h a d i n g f l a t t i t l e ( F l a t Shading )

b) shading faceted: se muestran las ĺıneas negras de la malla. Es la forma default s u b p l o t ( 3, 1, 2 ) s p h e r e ( 1 6 ) a x i s s q u a r e s h a d i n g f a c e t e d t i t l e ( Faceted Shading )

c) shading interp: varía el color de cada segmento interpolando los colores a lo largo de la linea s u b p l o t ( 3, 1, 3 ) s p h e r e ( 1 6 ) a x i s s q u a r e s h a d i n g i n t e r p t i t l e ( I n t e r p o l a t e d S h a d i n g )

Código Completo [ f i d 1, mess ]= fopen ( S35W059. hgt, rb, b ) ; [ A, count ]= f r e a d ( f i d 1, [ 1 2 0 1, 1 2 0 1 ], b i t 1 6 ) ; f c l o s e ( f i d 1 ) ; A=A ; A=f l i p u d (A) ; f o r i =1: s i z e (A, 1 ) f o r j =1: s i z e (A, 2 ) i f ( A( i, j ) < 10000 ) A( i, j ) = A( i 1, j ) ; end ; end ; end ; B = A( 5 0 0 : 8 0 0, 2 0 0 : 5 0 0 ) ; a x i s ( [ 0, 1 2 0, 0, 1 2 0 ] ) ; s u r f (B), s h a d i n g i n t e r p, view ( 0, 9 0 )