SlideShare una empresa de Scribd logo
PRÁCTICA 1
Grupo de Visión Artificial David García Pérez
MANEJO BÁSICO
DE IMÁGENES
CON MATLAB
MANEJO BÁSICO DE IMÁGENES CON MATLAB
Grupo de Visión Artificial David García Pérez
● Imagen tamaño NxM píxeles
● En Matlab: Imagen = Matriz/es
● Cada elemento de la matriz el
tono de gris para imágenes en B/N
● Si la imagen es en color, existen
3 matrices, cada una representa el
valor de un tono de color
● Los índices de la matriz son (r,c),
donde r representa la fila (row) y c
la columna (column)
1
1
2
3
4
N
2
M
3
3 4
MANEJO BÁSICO DE IMÁGENES CON MATLAB
Grupo de Visión Artificial David García Pérez
f(1,1) f(1,2) ... f(1,N)
f(2,1) f(2,2) ... f(2,N)
f(M,1) f(M,2) ... f(M,N)
Leyendo imágenes de disco:
>> f = imread('chestxray.jpg')
>> f = imread('D:imageneschestxray.jpg')
>> f = imread('/home/user/chestxray.jpg')
Esto lo que hace es que para una imagen en blanco y
negro, nos crea una matriz f, donde cada elemento tendrá un
valor de nivel de gris:
f =
MANEJO BÁSICO DE IMÁGENES CON MATLAB
Grupo de Visión Artificial David García Pérez
Obteniendo información de f:
Para determinar el tamaño de la imagen:
>>size(f)
ans =
1024 1024
Si lo queremos almacenar en una variable:
>>[M, N] = size(f)
Si lo que queremos es obtener información más detallada
de la imagen:
>>whos f
Name Size Bytes Class
f 249x500 373500 uint8 array
Grand total is 373500 elements using 373500 bytes
MANEJO BÁSICO DE IMÁGENES CON MATLAB
Grupo de Visión Artificial David García Pérez
Mostrando Imágenes:
imshow(f,G)
donde f es la imagen a mostrar y G es el número de niveles
de intensidad a mostrar. Si G se omite, se usa 256. La sintáxis
es la siguiente
imshow(f,[low high])
imshow(f,[0 50])imshow(f)
MANEJO BÁSICO DE IMÁGENES CON MATLAB
Grupo de Visión Artificial David García Pérez
Una utilidad interesante de imshow es:
imshow(f,[])
esto lo que hace es expandir el rango dinámico de la imagen,
pone como límite inferior, el valor mínimo de intensidad de la
imagen y como límite superior su valor máximo
imshow(f) imshow(f,[])
MANEJO BÁSICO DE IMÁGENES CON MATLAB
Grupo de Visión Artificial David García Pérez
Dos apuntes más sobre imshow(f):
pixval: Si se ejecuta pixval en la consola de Matlab, en la
última figura abierta, se podrá ver el valor de intensidad
cuando el ratón pasa sobre un píxel concreto. Y también se
puede medir la distancia euclídea entre dos puntos.
Matlab usualmente cuando dibuja una nueva figura,
sobreescribe la ventana de la figura anteriormente mostrada.
Para mostrar la segunda figura en una ventana independiente,
ejecutar lo siguiente
>> figure, imshow(f)
MANEJO BÁSICO DE IMÁGENES CON MATLAB
Grupo de Visión Artificial David García Pérez
Guardando imágenes en disco:
>> imwrite(f, 'nombre_fichero')
donde f es la matriz que almacena la imagen y filename es
el nombre de fichero donde vamos a guardar la imagen.
filename tiene que tener una extensión que reconozca
Matlab, o usar este otro formato:
>> imwrite(f, 'nombre_fichero', 'tif)
En estas prácticas trabajaremos con formato tiff y/o jpeg. En
el caso de jpeg también se puede especificar la calidad de
la imagen:
>> imwrite(f, 'nombre.jpg', 'quality', q)
MANEJO BÁSICO DE IMÁGENES CON MATLAB
Grupo de Visión Artificial David García Pérez
donde q es un numero de 0 a 100 que especifica la calidad de
la imagen:
mayor compresión
menor calidad
menor compresión
mayor calidad
0 50 100......
Obteniendo información de un fichero imagen almacenado en
disco:
>> imfinfo nombre_fichero
MANEJO BÁSICO DE IMÁGENES CON MATLAB
Grupo de Visión Artificial David García Pérez
>> imfinfo prueba.jpg
ans =
Filename: 'prueba.jpg'
FileModDate: '08-feb-2005
17:18:13'
FileSize: 6125
Format: 'jpg'
FormatVersion: ''
Width: 600
Height: 494
BitDepth: 8
ColorType: 'grayscale'
FormatSignature: ''
NumberOfSamples: 1
CodingMethod: 'Huffman'
CodingProcess: 'Sequential'
Comment: {}
MANEJO BÁSICO DE IMÁGENES CON MATLAB
Grupo de Visión Artificial David García Pérez
Clases de imágenes:
double
uint8
uint16
uint32
int8
int16
int32
single
char
logical
Doble precisión, números en punto flotante que varían en un rango aproximado de
-10 a 10 (8 bytes por elemento)
Enteros de 8 bits en el rango de [0,255] (1 byte por elemento)
Enteros de 16 bits en el rango de [0, 65535] (2 bytes por elemento)
Enteros de 32 bits en el rango de [0, 4294967295] (4 bytes por elemento)
Enteros de 8 bits en el rango de [-128, 127] (1 byte por elemento)
Enteros de 16 bits en el rango de [-32768, 32767] (2 bytes por elemento)
Enteros de 32 bits en el rango de [-2147483648,2147483647] (4 bytes por elemento)
Número en punto flotante de precisió simple, con valores aproximadamente en el
rango de -10 a 10 (4 bytes por elemento)
Carácteres (2 byte por elemento)
Los valores son 0 ó 1 (1 byte por elemento)
308 308
3838
MANEJO BÁSICO DE IMÁGENES CON MATLAB
Grupo de Visión Artificial David García Pérez
Tipos de Imágenes:
Imágenes de intensidad: Una matriz cuyos valores han
sido escalados para representar intensidad. Pueden ser uint8 ó
uint16. Si son double, los valores están escalados entre [0, 1]
Imágenes binarias: Imágenes que solamente tienen valor
0 ó 1. Se representan en Matlab a partir de arrays lógicos. Para
convertir en Matlab un array de 0's y 1's en array lógico:
>>B = logical(A)
Para comprobar si un array es lógico:
>>isLogical(A)
devuelve un 1 si es lógica y un 0 si no lo es.
Imágenes indexadas.
Imágenes RGB: Se verán más adelante
MANEJO BÁSICO DE IMÁGENES CON MATLAB
Grupo de Visión Artificial David García Pérez
Convirtiendo tipos y clases de imágenes:
Comando: Convirte a: Tipo válido de entrada:
im2uint8 uint8 logical, uint8, uint16 y double
im2uint16 uint16 logical, uint8, uint16 y double
mat2gray double ([0,1]) double
im2double double logical, uint8, uint16 y double
im2bw logical uint8, uint16 y double
>> f = [0 0.5; 0.75 1.5]
f =
0 0.5000
0.7500 1.5000
>> g = im2uint8(f)
g =
0 128
191 255
>> g = [0 0.3; 0.7 0.9]
g =
0 0.3000
0.7000 0.9000
>> gb = im2bw(g, 0.6)
gb =
0 0
1 1

Más contenido relacionado

La actualidad más candente

Utp va_sl1 introduccion al procesamiento de imagenes con mat_lab
 Utp va_sl1 introduccion al procesamiento de imagenes con  mat_lab Utp va_sl1 introduccion al procesamiento de imagenes con  mat_lab
Utp va_sl1 introduccion al procesamiento de imagenes con mat_lab
jcbenitezp
 
Imagen Filtrado Espacial
Imagen Filtrado EspacialImagen Filtrado Espacial
Imagen Filtrado Espacial
Omar Sanchez
 
Segmentación de imagenes
Segmentación de imagenesSegmentación de imagenes
Segmentación de imagenes
Omar Sanchez
 
Introduccion al procesamiento de imagenes con matlab
Introduccion al procesamiento de imagenes con matlabIntroduccion al procesamiento de imagenes con matlab
Introduccion al procesamiento de imagenes con matlab
F Lliuya
 
Imagen Morfologicas
Imagen MorfologicasImagen Morfologicas
Imagen Morfologicas
Omar Sanchez
 
Utp va_sl4_procesamiento digital de imagenes con matlab iii
 Utp va_sl4_procesamiento digital de imagenes con matlab iii Utp va_sl4_procesamiento digital de imagenes con matlab iii
Utp va_sl4_procesamiento digital de imagenes con matlab iii
jcbenitezp
 
Utp pdi_2014-2 lab2
 Utp pdi_2014-2 lab2 Utp pdi_2014-2 lab2
Utp pdi_2014-2 lab2
jcbp_peru
 
Clase 4
Clase 4Clase 4
Clase 4
esvin Rey
 
Utp pdi_2015-2_ea9 filtrado espacial
 Utp pdi_2015-2_ea9 filtrado espacial Utp pdi_2015-2_ea9 filtrado espacial
Utp pdi_2015-2_ea9 filtrado espacial
jcbp_peru
 
Matlab sesion3
Matlab sesion3Matlab sesion3
Matlab sesion3
José Caraguay
 
Java modografico
Java modograficoJava modografico
Java modografico
Abigail Ahumada Hernandez
 
Vb Ii, Unidad Iv MéTodos Graficos
Vb Ii, Unidad Iv MéTodos GraficosVb Ii, Unidad Iv MéTodos Graficos
Vb Ii, Unidad Iv MéTodos Graficos
UTP, TA
 
Imagenes
ImagenesImagenes
Lienzo.java
Lienzo.javaLienzo.java
Lienzo.java
miguel_negro
 
Presentación1
Presentación1Presentación1
Presentación1
CSILVAPEREZ
 
Imagen Filtrado Frecuencial
Imagen Filtrado FrecuencialImagen Filtrado Frecuencial
Imagen Filtrado Frecuencial
Omar Sanchez
 
Introducción a Matlab
Introducción a MatlabIntroducción a Matlab
Introducción a Matlab
Adiel Castaño
 
C05
C05C05

La actualidad más candente (18)

Utp va_sl1 introduccion al procesamiento de imagenes con mat_lab
 Utp va_sl1 introduccion al procesamiento de imagenes con  mat_lab Utp va_sl1 introduccion al procesamiento de imagenes con  mat_lab
Utp va_sl1 introduccion al procesamiento de imagenes con mat_lab
 
Imagen Filtrado Espacial
Imagen Filtrado EspacialImagen Filtrado Espacial
Imagen Filtrado Espacial
 
Segmentación de imagenes
Segmentación de imagenesSegmentación de imagenes
Segmentación de imagenes
 
Introduccion al procesamiento de imagenes con matlab
Introduccion al procesamiento de imagenes con matlabIntroduccion al procesamiento de imagenes con matlab
Introduccion al procesamiento de imagenes con matlab
 
Imagen Morfologicas
Imagen MorfologicasImagen Morfologicas
Imagen Morfologicas
 
Utp va_sl4_procesamiento digital de imagenes con matlab iii
 Utp va_sl4_procesamiento digital de imagenes con matlab iii Utp va_sl4_procesamiento digital de imagenes con matlab iii
Utp va_sl4_procesamiento digital de imagenes con matlab iii
 
Utp pdi_2014-2 lab2
 Utp pdi_2014-2 lab2 Utp pdi_2014-2 lab2
Utp pdi_2014-2 lab2
 
Clase 4
Clase 4Clase 4
Clase 4
 
Utp pdi_2015-2_ea9 filtrado espacial
 Utp pdi_2015-2_ea9 filtrado espacial Utp pdi_2015-2_ea9 filtrado espacial
Utp pdi_2015-2_ea9 filtrado espacial
 
Matlab sesion3
Matlab sesion3Matlab sesion3
Matlab sesion3
 
Java modografico
Java modograficoJava modografico
Java modografico
 
Vb Ii, Unidad Iv MéTodos Graficos
Vb Ii, Unidad Iv MéTodos GraficosVb Ii, Unidad Iv MéTodos Graficos
Vb Ii, Unidad Iv MéTodos Graficos
 
Imagenes
ImagenesImagenes
Imagenes
 
Lienzo.java
Lienzo.javaLienzo.java
Lienzo.java
 
Presentación1
Presentación1Presentación1
Presentación1
 
Imagen Filtrado Frecuencial
Imagen Filtrado FrecuencialImagen Filtrado Frecuencial
Imagen Filtrado Frecuencial
 
Introducción a Matlab
Introducción a MatlabIntroducción a Matlab
Introducción a Matlab
 
C05
C05C05
C05
 

Similar a Manejo basico de imagenes matlab

Imagenes
ImagenesImagenes
2437215 procesamiento-de-imagenes-con-matrices
2437215 procesamiento-de-imagenes-con-matrices2437215 procesamiento-de-imagenes-con-matrices
2437215 procesamiento-de-imagenes-con-matrices
Cindy Adriana Bohórquez Santana
 
Procesamiento de imagenes
Procesamiento de imagenesProcesamiento de imagenes
Procesamiento de imagenes
Dayana Guzman
 
Procesador de imágenes toolbox Matlab
Procesador de imágenes toolbox MatlabProcesador de imágenes toolbox Matlab
Procesador de imágenes toolbox Matlab
dave
 
Pds laboratorio 2
Pds   laboratorio 2Pds   laboratorio 2
Pds laboratorio 2
Gustavo Caceres
 
Clase 4
Clase 4Clase 4
Clase 4
EsvinRol
 
Utp 2015-2_pdi_lab2
 Utp 2015-2_pdi_lab2 Utp 2015-2_pdi_lab2
Utp 2015-2_pdi_lab2
jcbp_peru
 
Desarrollo de ejercicios básicos en matlab
Desarrollo de ejercicios básicos en matlabDesarrollo de ejercicios básicos en matlab
Desarrollo de ejercicios básicos en matlab
Adalberto C
 
Graficas en 2 d y 3d matlab
Graficas en 2 d y 3d matlabGraficas en 2 d y 3d matlab
Graficas en 2 d y 3d matlab
Juan Ete
 
Correciones radiometricas
Correciones radiometricasCorreciones radiometricas
Correciones radiometricas
EDIER AVILA
 
Trabajo de computacion
Trabajo de computacionTrabajo de computacion
Trabajo de computacion
luis_xD
 
Archivos apuntes-comandos comunes de matlab para el procesamiento de imágen
Archivos apuntes-comandos comunes de matlab para el procesamiento de imágenArchivos apuntes-comandos comunes de matlab para el procesamiento de imágen
Archivos apuntes-comandos comunes de matlab para el procesamiento de imágen
Job Isaias Cach Cach
 
Semana 03 software libre maxima
Semana 03 software libre maximaSemana 03 software libre maxima
Semana 03 software libre maxima
Juan Carlos Broncanotorres
 
APO1 - Presentacion nivel 6
APO1 - Presentacion nivel 6APO1 - Presentacion nivel 6
APO1 - Presentacion nivel 6
Mario Jose Villamizar Cano
 
matlab
matlabmatlab
matlab
Jessy AG
 
Logica difusautilizandomatlab
Logica difusautilizandomatlabLogica difusautilizandomatlab
Logica difusautilizandomatlab
rubi18
 
Computacion aplicada
Computacion aplicadaComputacion aplicada
Computacion aplicada
Carobrigit
 
Tutorial graficos en_matlab
Tutorial graficos en_matlabTutorial graficos en_matlab
Tutorial graficos en_matlab
Julio César Millán Díaz
 
Plots
PlotsPlots
Matlab graficos
Matlab graficosMatlab graficos
Matlab graficos
Erick2202
 

Similar a Manejo basico de imagenes matlab (20)

Imagenes
ImagenesImagenes
Imagenes
 
2437215 procesamiento-de-imagenes-con-matrices
2437215 procesamiento-de-imagenes-con-matrices2437215 procesamiento-de-imagenes-con-matrices
2437215 procesamiento-de-imagenes-con-matrices
 
Procesamiento de imagenes
Procesamiento de imagenesProcesamiento de imagenes
Procesamiento de imagenes
 
Procesador de imágenes toolbox Matlab
Procesador de imágenes toolbox MatlabProcesador de imágenes toolbox Matlab
Procesador de imágenes toolbox Matlab
 
Pds laboratorio 2
Pds   laboratorio 2Pds   laboratorio 2
Pds laboratorio 2
 
Clase 4
Clase 4Clase 4
Clase 4
 
Utp 2015-2_pdi_lab2
 Utp 2015-2_pdi_lab2 Utp 2015-2_pdi_lab2
Utp 2015-2_pdi_lab2
 
Desarrollo de ejercicios básicos en matlab
Desarrollo de ejercicios básicos en matlabDesarrollo de ejercicios básicos en matlab
Desarrollo de ejercicios básicos en matlab
 
Graficas en 2 d y 3d matlab
Graficas en 2 d y 3d matlabGraficas en 2 d y 3d matlab
Graficas en 2 d y 3d matlab
 
Correciones radiometricas
Correciones radiometricasCorreciones radiometricas
Correciones radiometricas
 
Trabajo de computacion
Trabajo de computacionTrabajo de computacion
Trabajo de computacion
 
Archivos apuntes-comandos comunes de matlab para el procesamiento de imágen
Archivos apuntes-comandos comunes de matlab para el procesamiento de imágenArchivos apuntes-comandos comunes de matlab para el procesamiento de imágen
Archivos apuntes-comandos comunes de matlab para el procesamiento de imágen
 
Semana 03 software libre maxima
Semana 03 software libre maximaSemana 03 software libre maxima
Semana 03 software libre maxima
 
APO1 - Presentacion nivel 6
APO1 - Presentacion nivel 6APO1 - Presentacion nivel 6
APO1 - Presentacion nivel 6
 
matlab
matlabmatlab
matlab
 
Logica difusautilizandomatlab
Logica difusautilizandomatlabLogica difusautilizandomatlab
Logica difusautilizandomatlab
 
Computacion aplicada
Computacion aplicadaComputacion aplicada
Computacion aplicada
 
Tutorial graficos en_matlab
Tutorial graficos en_matlabTutorial graficos en_matlab
Tutorial graficos en_matlab
 
Plots
PlotsPlots
Plots
 
Matlab graficos
Matlab graficosMatlab graficos
Matlab graficos
 

Último

SLIDEHARE.docx..........................
SLIDEHARE.docx..........................SLIDEHARE.docx..........................
SLIDEHARE.docx..........................
azulsarase
 
AE 34 Serie de sobrecargas aisladas_240429_172040.pdf
AE  34 Serie de sobrecargas aisladas_240429_172040.pdfAE  34 Serie de sobrecargas aisladas_240429_172040.pdf
AE 34 Serie de sobrecargas aisladas_240429_172040.pdf
sebastianpech108
 
S09 PBM-HEMORRAGIAS 2021-I Grabada 1.pptx
S09 PBM-HEMORRAGIAS 2021-I Grabada 1.pptxS09 PBM-HEMORRAGIAS 2021-I Grabada 1.pptx
S09 PBM-HEMORRAGIAS 2021-I Grabada 1.pptx
yamilbailonw
 
Sesión 03 universidad cesar vallejo 2024
Sesión 03 universidad cesar vallejo 2024Sesión 03 universidad cesar vallejo 2024
Sesión 03 universidad cesar vallejo 2024
FantasticVideo1
 
tipos de energias: la Energía Radiante.pdf
tipos de energias: la Energía Radiante.pdftipos de energias: la Energía Radiante.pdf
tipos de energias: la Energía Radiante.pdf
munozvanessa878
 
PRES 3. METROLOGÍA DE GASES Y RADIACIONES IONIZANTES.pptx
PRES 3. METROLOGÍA DE GASES Y RADIACIONES IONIZANTES.pptxPRES 3. METROLOGÍA DE GASES Y RADIACIONES IONIZANTES.pptx
PRES 3. METROLOGÍA DE GASES Y RADIACIONES IONIZANTES.pptx
brandonsinael
 
simbologia y normas de soldadura para su inspección
simbologia y normas de soldadura para su inspecciónsimbologia y normas de soldadura para su inspección
simbologia y normas de soldadura para su inspección
HarofHaro
 
Ducto Barras para instalaciones electricas
Ducto Barras para instalaciones electricasDucto Barras para instalaciones electricas
Ducto Barras para instalaciones electricas
Edgar Najera
 
COMPARACION DE PRECIOS TENIENDO COMO REFERENTE LA OSCE
COMPARACION DE PRECIOS TENIENDO COMO REFERENTE LA OSCECOMPARACION DE PRECIOS TENIENDO COMO REFERENTE LA OSCE
COMPARACION DE PRECIOS TENIENDO COMO REFERENTE LA OSCE
jhunior lopez rodriguez
 
OPERACIONES BÁSICAS (INFOGRAFIA) DOCUMENTO
OPERACIONES BÁSICAS (INFOGRAFIA) DOCUMENTOOPERACIONES BÁSICAS (INFOGRAFIA) DOCUMENTO
OPERACIONES BÁSICAS (INFOGRAFIA) DOCUMENTO
GERARDO GONZALEZ
 
INVENTARIO CEROO Y DINAMICAA FABRIL.pptx
INVENTARIO CEROO Y DINAMICAA FABRIL.pptxINVENTARIO CEROO Y DINAMICAA FABRIL.pptx
INVENTARIO CEROO Y DINAMICAA FABRIL.pptx
FernandoRodrigoEscal
 
Aletas de transferencia de calor o superficies extendidas dylan.pdf
Aletas de transferencia de calor o superficies extendidas dylan.pdfAletas de transferencia de calor o superficies extendidas dylan.pdf
Aletas de transferencia de calor o superficies extendidas dylan.pdf
elsanti003
 
1. Introduccion a las excavaciones subterraneas (1).pdf
1. Introduccion a las excavaciones subterraneas (1).pdf1. Introduccion a las excavaciones subterraneas (1).pdf
1. Introduccion a las excavaciones subterraneas (1).pdf
raulnilton2018
 
DIAGRAMA ELECTRICOS y circuito electrónicos
DIAGRAMA ELECTRICOS y circuito electrónicosDIAGRAMA ELECTRICOS y circuito electrónicos
DIAGRAMA ELECTRICOS y circuito electrónicos
LuisAngelGuarnizoBet
 
INGLES_LISTA_DE_VOCABULARIO una lista completa
INGLES_LISTA_DE_VOCABULARIO una lista completaINGLES_LISTA_DE_VOCABULARIO una lista completa
INGLES_LISTA_DE_VOCABULARIO una lista completa
JaimmsArthur
 
Las operaciones básicas en la construcción.
Las operaciones básicas en la construcción.Las operaciones básicas en la construcción.
Las operaciones básicas en la construcción.
MaraManuelaUrribarri
 
Dosificacion de hormigon NCH 170 actualizada
Dosificacion de hormigon NCH 170 actualizadaDosificacion de hormigon NCH 170 actualizada
Dosificacion de hormigon NCH 170 actualizada
pipex55
 
Infografía operaciones básicas construcción .pdf
Infografía operaciones básicas construcción .pdfInfografía operaciones básicas construcción .pdf
Infografía operaciones básicas construcción .pdf
Carlos Pulido
 
INFORME DE LABORATORIO MECANICA DE FLUIDOS (1).docx
INFORME DE LABORATORIO MECANICA DE FLUIDOS (1).docxINFORME DE LABORATORIO MECANICA DE FLUIDOS (1).docx
INFORME DE LABORATORIO MECANICA DE FLUIDOS (1).docx
LuzdeFatimaCarranzaG
 
diagrama de flujo. en el área de ingeniería
diagrama de flujo. en el área de ingenieríadiagrama de flujo. en el área de ingeniería
diagrama de flujo. en el área de ingeniería
karenperalta62
 

Último (20)

SLIDEHARE.docx..........................
SLIDEHARE.docx..........................SLIDEHARE.docx..........................
SLIDEHARE.docx..........................
 
AE 34 Serie de sobrecargas aisladas_240429_172040.pdf
AE  34 Serie de sobrecargas aisladas_240429_172040.pdfAE  34 Serie de sobrecargas aisladas_240429_172040.pdf
AE 34 Serie de sobrecargas aisladas_240429_172040.pdf
 
S09 PBM-HEMORRAGIAS 2021-I Grabada 1.pptx
S09 PBM-HEMORRAGIAS 2021-I Grabada 1.pptxS09 PBM-HEMORRAGIAS 2021-I Grabada 1.pptx
S09 PBM-HEMORRAGIAS 2021-I Grabada 1.pptx
 
Sesión 03 universidad cesar vallejo 2024
Sesión 03 universidad cesar vallejo 2024Sesión 03 universidad cesar vallejo 2024
Sesión 03 universidad cesar vallejo 2024
 
tipos de energias: la Energía Radiante.pdf
tipos de energias: la Energía Radiante.pdftipos de energias: la Energía Radiante.pdf
tipos de energias: la Energía Radiante.pdf
 
PRES 3. METROLOGÍA DE GASES Y RADIACIONES IONIZANTES.pptx
PRES 3. METROLOGÍA DE GASES Y RADIACIONES IONIZANTES.pptxPRES 3. METROLOGÍA DE GASES Y RADIACIONES IONIZANTES.pptx
PRES 3. METROLOGÍA DE GASES Y RADIACIONES IONIZANTES.pptx
 
simbologia y normas de soldadura para su inspección
simbologia y normas de soldadura para su inspecciónsimbologia y normas de soldadura para su inspección
simbologia y normas de soldadura para su inspección
 
Ducto Barras para instalaciones electricas
Ducto Barras para instalaciones electricasDucto Barras para instalaciones electricas
Ducto Barras para instalaciones electricas
 
COMPARACION DE PRECIOS TENIENDO COMO REFERENTE LA OSCE
COMPARACION DE PRECIOS TENIENDO COMO REFERENTE LA OSCECOMPARACION DE PRECIOS TENIENDO COMO REFERENTE LA OSCE
COMPARACION DE PRECIOS TENIENDO COMO REFERENTE LA OSCE
 
OPERACIONES BÁSICAS (INFOGRAFIA) DOCUMENTO
OPERACIONES BÁSICAS (INFOGRAFIA) DOCUMENTOOPERACIONES BÁSICAS (INFOGRAFIA) DOCUMENTO
OPERACIONES BÁSICAS (INFOGRAFIA) DOCUMENTO
 
INVENTARIO CEROO Y DINAMICAA FABRIL.pptx
INVENTARIO CEROO Y DINAMICAA FABRIL.pptxINVENTARIO CEROO Y DINAMICAA FABRIL.pptx
INVENTARIO CEROO Y DINAMICAA FABRIL.pptx
 
Aletas de transferencia de calor o superficies extendidas dylan.pdf
Aletas de transferencia de calor o superficies extendidas dylan.pdfAletas de transferencia de calor o superficies extendidas dylan.pdf
Aletas de transferencia de calor o superficies extendidas dylan.pdf
 
1. Introduccion a las excavaciones subterraneas (1).pdf
1. Introduccion a las excavaciones subterraneas (1).pdf1. Introduccion a las excavaciones subterraneas (1).pdf
1. Introduccion a las excavaciones subterraneas (1).pdf
 
DIAGRAMA ELECTRICOS y circuito electrónicos
DIAGRAMA ELECTRICOS y circuito electrónicosDIAGRAMA ELECTRICOS y circuito electrónicos
DIAGRAMA ELECTRICOS y circuito electrónicos
 
INGLES_LISTA_DE_VOCABULARIO una lista completa
INGLES_LISTA_DE_VOCABULARIO una lista completaINGLES_LISTA_DE_VOCABULARIO una lista completa
INGLES_LISTA_DE_VOCABULARIO una lista completa
 
Las operaciones básicas en la construcción.
Las operaciones básicas en la construcción.Las operaciones básicas en la construcción.
Las operaciones básicas en la construcción.
 
Dosificacion de hormigon NCH 170 actualizada
Dosificacion de hormigon NCH 170 actualizadaDosificacion de hormigon NCH 170 actualizada
Dosificacion de hormigon NCH 170 actualizada
 
Infografía operaciones básicas construcción .pdf
Infografía operaciones básicas construcción .pdfInfografía operaciones básicas construcción .pdf
Infografía operaciones básicas construcción .pdf
 
INFORME DE LABORATORIO MECANICA DE FLUIDOS (1).docx
INFORME DE LABORATORIO MECANICA DE FLUIDOS (1).docxINFORME DE LABORATORIO MECANICA DE FLUIDOS (1).docx
INFORME DE LABORATORIO MECANICA DE FLUIDOS (1).docx
 
diagrama de flujo. en el área de ingeniería
diagrama de flujo. en el área de ingenieríadiagrama de flujo. en el área de ingeniería
diagrama de flujo. en el área de ingeniería
 

Manejo basico de imagenes matlab

  • 1. PRÁCTICA 1 Grupo de Visión Artificial David García Pérez MANEJO BÁSICO DE IMÁGENES CON MATLAB
  • 2. MANEJO BÁSICO DE IMÁGENES CON MATLAB Grupo de Visión Artificial David García Pérez ● Imagen tamaño NxM píxeles ● En Matlab: Imagen = Matriz/es ● Cada elemento de la matriz el tono de gris para imágenes en B/N ● Si la imagen es en color, existen 3 matrices, cada una representa el valor de un tono de color ● Los índices de la matriz son (r,c), donde r representa la fila (row) y c la columna (column) 1 1 2 3 4 N 2 M 3 3 4
  • 3. MANEJO BÁSICO DE IMÁGENES CON MATLAB Grupo de Visión Artificial David García Pérez f(1,1) f(1,2) ... f(1,N) f(2,1) f(2,2) ... f(2,N) f(M,1) f(M,2) ... f(M,N) Leyendo imágenes de disco: >> f = imread('chestxray.jpg') >> f = imread('D:imageneschestxray.jpg') >> f = imread('/home/user/chestxray.jpg') Esto lo que hace es que para una imagen en blanco y negro, nos crea una matriz f, donde cada elemento tendrá un valor de nivel de gris: f =
  • 4. MANEJO BÁSICO DE IMÁGENES CON MATLAB Grupo de Visión Artificial David García Pérez Obteniendo información de f: Para determinar el tamaño de la imagen: >>size(f) ans = 1024 1024 Si lo queremos almacenar en una variable: >>[M, N] = size(f) Si lo que queremos es obtener información más detallada de la imagen: >>whos f Name Size Bytes Class f 249x500 373500 uint8 array Grand total is 373500 elements using 373500 bytes
  • 5. MANEJO BÁSICO DE IMÁGENES CON MATLAB Grupo de Visión Artificial David García Pérez Mostrando Imágenes: imshow(f,G) donde f es la imagen a mostrar y G es el número de niveles de intensidad a mostrar. Si G se omite, se usa 256. La sintáxis es la siguiente imshow(f,[low high]) imshow(f,[0 50])imshow(f)
  • 6. MANEJO BÁSICO DE IMÁGENES CON MATLAB Grupo de Visión Artificial David García Pérez Una utilidad interesante de imshow es: imshow(f,[]) esto lo que hace es expandir el rango dinámico de la imagen, pone como límite inferior, el valor mínimo de intensidad de la imagen y como límite superior su valor máximo imshow(f) imshow(f,[])
  • 7. MANEJO BÁSICO DE IMÁGENES CON MATLAB Grupo de Visión Artificial David García Pérez Dos apuntes más sobre imshow(f): pixval: Si se ejecuta pixval en la consola de Matlab, en la última figura abierta, se podrá ver el valor de intensidad cuando el ratón pasa sobre un píxel concreto. Y también se puede medir la distancia euclídea entre dos puntos. Matlab usualmente cuando dibuja una nueva figura, sobreescribe la ventana de la figura anteriormente mostrada. Para mostrar la segunda figura en una ventana independiente, ejecutar lo siguiente >> figure, imshow(f)
  • 8. MANEJO BÁSICO DE IMÁGENES CON MATLAB Grupo de Visión Artificial David García Pérez Guardando imágenes en disco: >> imwrite(f, 'nombre_fichero') donde f es la matriz que almacena la imagen y filename es el nombre de fichero donde vamos a guardar la imagen. filename tiene que tener una extensión que reconozca Matlab, o usar este otro formato: >> imwrite(f, 'nombre_fichero', 'tif) En estas prácticas trabajaremos con formato tiff y/o jpeg. En el caso de jpeg también se puede especificar la calidad de la imagen: >> imwrite(f, 'nombre.jpg', 'quality', q)
  • 9. MANEJO BÁSICO DE IMÁGENES CON MATLAB Grupo de Visión Artificial David García Pérez donde q es un numero de 0 a 100 que especifica la calidad de la imagen: mayor compresión menor calidad menor compresión mayor calidad 0 50 100...... Obteniendo información de un fichero imagen almacenado en disco: >> imfinfo nombre_fichero
  • 10. MANEJO BÁSICO DE IMÁGENES CON MATLAB Grupo de Visión Artificial David García Pérez >> imfinfo prueba.jpg ans = Filename: 'prueba.jpg' FileModDate: '08-feb-2005 17:18:13' FileSize: 6125 Format: 'jpg' FormatVersion: '' Width: 600 Height: 494 BitDepth: 8 ColorType: 'grayscale' FormatSignature: '' NumberOfSamples: 1 CodingMethod: 'Huffman' CodingProcess: 'Sequential' Comment: {}
  • 11. MANEJO BÁSICO DE IMÁGENES CON MATLAB Grupo de Visión Artificial David García Pérez Clases de imágenes: double uint8 uint16 uint32 int8 int16 int32 single char logical Doble precisión, números en punto flotante que varían en un rango aproximado de -10 a 10 (8 bytes por elemento) Enteros de 8 bits en el rango de [0,255] (1 byte por elemento) Enteros de 16 bits en el rango de [0, 65535] (2 bytes por elemento) Enteros de 32 bits en el rango de [0, 4294967295] (4 bytes por elemento) Enteros de 8 bits en el rango de [-128, 127] (1 byte por elemento) Enteros de 16 bits en el rango de [-32768, 32767] (2 bytes por elemento) Enteros de 32 bits en el rango de [-2147483648,2147483647] (4 bytes por elemento) Número en punto flotante de precisió simple, con valores aproximadamente en el rango de -10 a 10 (4 bytes por elemento) Carácteres (2 byte por elemento) Los valores son 0 ó 1 (1 byte por elemento) 308 308 3838
  • 12. MANEJO BÁSICO DE IMÁGENES CON MATLAB Grupo de Visión Artificial David García Pérez Tipos de Imágenes: Imágenes de intensidad: Una matriz cuyos valores han sido escalados para representar intensidad. Pueden ser uint8 ó uint16. Si son double, los valores están escalados entre [0, 1] Imágenes binarias: Imágenes que solamente tienen valor 0 ó 1. Se representan en Matlab a partir de arrays lógicos. Para convertir en Matlab un array de 0's y 1's en array lógico: >>B = logical(A) Para comprobar si un array es lógico: >>isLogical(A) devuelve un 1 si es lógica y un 0 si no lo es. Imágenes indexadas. Imágenes RGB: Se verán más adelante
  • 13. MANEJO BÁSICO DE IMÁGENES CON MATLAB Grupo de Visión Artificial David García Pérez Convirtiendo tipos y clases de imágenes: Comando: Convirte a: Tipo válido de entrada: im2uint8 uint8 logical, uint8, uint16 y double im2uint16 uint16 logical, uint8, uint16 y double mat2gray double ([0,1]) double im2double double logical, uint8, uint16 y double im2bw logical uint8, uint16 y double >> f = [0 0.5; 0.75 1.5] f = 0 0.5000 0.7500 1.5000 >> g = im2uint8(f) g = 0 128 191 255 >> g = [0 0.3; 0.7 0.9] g = 0 0.3000 0.7000 0.9000 >> gb = im2bw(g, 0.6) gb = 0 0 1 1