ejercicio2 manipulacion basica imagenes
TRANSCRIPT
-
7/24/2019 Ejercicio2 Manipulacion Basica Imagenes
1/12
Taller: Manipulacin Bsicas de imgenes
Nombre: EDITH GARCE
Cdigo: !"#!"$
%ec&a: ''(''(!)'*
+b,e-i.o
El objetivo de este taller es explorar las tcnicas bsicas de manipulacin deimgenes utilizando MATLAB y !T"
+b,e-i.os
# Explora los di$erentes tipos de imagen compatibles con MATLAB y !T
# Aprenda a leer las imgenes en MATLAB# Explora conversin de la imagen"
# Aprenda cmo mostrar imgenes
# Aprenda a escribir imgenes en el disco"
/rocedimien-o
El !T es compatible con imgenes de tipo binario% indexado% intensidad y
color" Antes de &ue una imagen pueda ser procesada en MATLAB% primero sedebe cargar en la memoria" !ara leer una imagen% se utiliza la $uncinimread"
'" (argue la imagen coins0pngmediante la ejecucin de la siguientedeclaracin)
* imread +,coins"png,-.
Pregunta 1
Qu tipo de imagen es coins.png?
(olorType) grayscale
Pregunta 2
Por qu utilizamos el operador punto y coma (;) despus de la declaracin imread? Qu
sucede si lo omitimos?
/e utiliza para evitar &ue se muestre el resultado de la variable en elcommand 0indo0. si omitimos el punto y coma se mostrar la matrizcompleta de la imagen"
-
7/24/2019 Ejercicio2 Manipulacion Basica Imagenes
2/12
Imgenes inarias! de intensidad y color pueden ser le"das con la #uncinimreadcomo se $a
demostrado anteriormente. %l leer una imagen inde&ada! de'emos especi#icar las aria'les!
tanto para la imagen y su mapa de color. sto se ilustra en el siguiente paso*
1" (argue la imagen trees.tif"
23% mapa4 * imread +,trees"ti$,-.
Algunas operaciones pueden re&uerir convertir una imagen de un tipo aotro" !or ejemplo% la realizacin de los ajustes de imagen en una imagenindexada puede no dar los resultados buscados por&ue los clculos serealizan sobre los valores del 5ndice y no los valores 67B representativos"!ara 8acer esta tarea $cil% podemos convertir la imagen indexada a unaimagen 67B utilizando ind1rgb"
9" (onvertir la imagen indexada 3 con el mapa de colores mapa unaimagen 67B% 3:rgb"
3:rgb * ind1rgb +3% mapa-.
-
7/24/2019 Ejercicio2 Manipulacion Basica Imagenes
3/12
pregun-a 1
;(untas dimensiones tiene la variable 3:rgb y cules son sus tama
-
7/24/2019 Ejercicio2 Manipulacion Basica Imagenes
4/12
max +3:gray +)-- ans * 1??
min +3:gray +)-- ans *
pregun-a *
;!or &u estamos obligados a utilizar el operador dos puntos +)- alespeci>car la variable 3:gray= ;Cu sucede si lo omitimos=/i omitimos los dos puntos nos mostrar todos los valores mximos om5nimos en todas las columnas"
/e demostr en el paso anterior &ue la imagen 3:gray conten5a valores enel rango 2% 1??4 +en esta imagen en particular% pas a ser exactamente y1??% &ue es slo una coincidencia-" Damos a ver lo &ue sucede cuandoconvertimos la imagen a clase double"
" convierta la variable gris 3:gray a clase double"
3:gray:dbl * im1double+3:gray-.
pregun-a #
;(ul es el rango de valores para la nueva variable 3:gray:dbl=
max +3:gray:dbl +)-- ans * '
min +3:gray:dbl +)-- ans *
Fel mismo modo% puede convertir a otros tipos de clase utilizandoim2uint8y im2uint16% por ejemplo" Al convertir una imagen uint' auint@% 8ay &ue tener cuidado por&ue la conversin cuanti>ca los ?"?9valores posibles a 1? valores posibles"
MATLAB viene con $unciones integradas &ue presentan imgenes" La $uncinimagese puede utilizar para mostrar los datos de una imagen y la $uncin
-
7/24/2019 Ejercicio2 Manipulacion Basica Imagenes
5/12
imagescllevar a cabo la misma operacin pero adems escala los datosde la imagen a su rango completo de valores" El !T o$rece una $uncin deimagen &ue muestra una mayor optimizacin de ajustes sobre los ejes de laimagen para proporcionar una mejor visualizacin de los datos de laimagen) imshow"
G" Htilice la $uncinimshow+con la opcin impixelinfo- para mostrar laimagen coins.png&ue est cargada actualmente en la variable "
imshow(I), impixelinfo
mgenes Binarias% intensidad y color se pueden mostrar como se 8ademostrado anteriormente" !ara mostrar imgenes indexadas% debemosespeci>car el mapa de color junto con los datos de la imagen"
@" Muestre la imagen indexadatrees.tif" Los datos de imagen se
almacenan en la variable 3 y el mapa de color en el map" Tenga en cuenta&ue la opcin impixelin$o proporciona un indicio claro &ue esta es unaimagen de color indexado"
imshow(X, mapa), impixelinfo
pregun-a 2
(onsidere una imagen donde el rango de posibles valores para cada pixel no
-
7/24/2019 Ejercicio2 Manipulacion Basica Imagenes
6/12
es 2% 1??4% en cambio posee una gama no estndar de 2% II4" ;(mopodemos mostrar la imagen de modo &ue un valor de II representa elblanco y un valor de representa negro=
X = uint16([0 109 204; 68 10 70; 50 255 120])fmax = max(X(:));
fmin = min(X(:));Za = uint8(99.0*dou!"((X#fmin))$dou!"((fmax#fmin)))
X = 0 109 204 68 10 70 50 255 120
Za = 0 42 79 26 4 27 19 99 47
La $uncin impixelpermite la inspeccin de los contenidos de los p5xelesseleccionados de inters dentro de la imagen"
I" Htilice la $uncin impixelpara explorar de $orma interactiva loscontenidos de los p5xeles de los puntos seleccionados en la imagen" Htiliceel ratn para 8acer clic sobre los puntos de inters) clics normales seutilizan para seleccionar los p5xeles% al pulsar la tecla BacJspace o Feleteelimina el p5xel previamente seleccionado% un doble clic analy termina la seleccin% y pulsando 6eturn >naliza la seleccin sin la adicinde un p5xel >nal"
%&' = im"ad(""+.n,);
[- ] = imix"!(%&');
- =
245
=
196
=
255 220 75
pregunta +
,ul es el signi#icado de los alores almacenados en las aria'les r! c! p?
Kos devuelve los valores de los pixeles seleccionados"
-a #uncin improfilese puede utilizar para calcular y representar gr#icamente los alores de
intensidad a lo largo de una l"nea o un pat$ de arias l"neas en una imagen.
/. 0tilice la #uncin improfilepara e&plorar el contenido de una l"nea en la imagen coins.pngque est cargado actualmente en la aria'le I.
-
7/24/2019 Ejercicio2 Manipulacion Basica Imagenes
7/12
r' * 'G. c' * '@. r1 * 1'. c1 * 1@.
ims8o0+-
line+2c'% c14% 2r'% r14% ,(olor,% ,g,% ,Lineidt8,% 1-.
>gure
impro>le+% 2c'% c14% 2r'% r14-.
ylabel+,7ray level,-.
-a #uncin imtool es la 1ltima #uncin del IP2 para la isualizacin de imgenes. Proporciona
todas las capacidades de isualizacin de imgenes de imshow! as" como el acceso a otras
$erramientas para la naegacin y la e&ploracin de imgenes! como la $erramientaPixel
Region tool! laImage Information tool! yAdjust Constrast tool
''" Htilice la $uncin imtoolpara mostrar la imagen &ue est cargada en lavariable 3:rgb" Tenga en cuenta &ue una ventana secundaria +in$ormacingeneral- se abrir tambin" Explora la $uncionalidad adicional% incluyendo laposibilidad de medir distancias entre dos puntos dentro de la imagen"
imtool+3:rgb-
-
7/24/2019 Ejercicio2 Manipulacion Basica Imagenes
8/12
!odemos mostrar varias imgenes dentro de una >gura mediante la $uncinsubplot" Al utilizar esta $uncin% los dos primeros parmetros especi>can elnmero de >las y columnas para dividir la >gura" El tercer parmetroespeci>ca &ue ubicacin de la subdivisin se va a usar" En este caso elsubplot ser subplot(2,3,3),le estamos diciendo a MATLAB &ue divida la>gura en dos >las y tres columnas y establecer la tercera celda como activopara mostrar la >gura"
'1" (errar las >guras abiertas +close all-"
'9" Ejecute las siguientes instrucciones para crear un subplot con dosimgenes)
A * imread+,pout"ti$,-.
B * imread+,cameraman"ti$,-.
>gure
subplot+'%1%'-% ims8o0+A-
subplot+'%1%1-% ims8o0+B-
pregunta 3
,ul es el rango de alores para la imagen % y la imagen ?
n el paso anterior! se muestran dos imgenes! am'as eran imgenes de intensidad. % pesar de
que no $ay un mapa de color asociado con las imgenes de intensidad! 4%2-% utiliza un
mapa de color en escala de grises para mostrar una imagen de intensidad (esto sucede en el
#ondo y suele ser inisi'le para el usuario). ,onsideremos el caso en el que una imagen de
intensidad y una imagen inde&ada se muestran en una #igura! utilizando la #uncin su'plot.
'" (ierre todas las >guras abiertas"
-
7/24/2019 Ejercicio2 Manipulacion Basica Imagenes
9/12
'?" Disualice las imgenes coins.png+cargado en variable- y trees.tif+cargado en la variable 3 y su mapa de color en la variable map- en unsubplot" Ejecutar cada declaracin a la vez para ver el e$ecto en lasimgenes a medida &ue se muestran"
>gure
subplot+'%1%'-% ims8o0+-
subplot+'%1%1-% ims8o0+3% mapa-
pregun-a ')
;Cu pas con la imagen de la moneda justo despus se visualiza la imagende los rboles= Explica tu respuesta"
La imagen de las monedas cambio de color debido a &ue la imagen de losrboles es una imagen indexada"
!ara visualizar correctamente las imgenes con mapas de di$erentescolores% 8ay &ue utilizar la $uncin de subimage"
'" Htilice la $uncin de subimagepara mostrar varias imgenes condi$erentes mapas de color"
>gure
-
7/24/2019 Ejercicio2 Manipulacion Basica Imagenes
10/12
subplot+'%1%'-% subimage+-% axis oN
subplot+'%1%1-% subimage+3% mapa-% axis oN
La $uncin subimageconvierte la imagen a su e&uivalente imagen 67B yluego muestra esa imagen" !odemos 8acer esto $cilmente nosotrosmismos% pero no 8ay conversin directa de la intensidad a 67B% por lo &ueprimero debemos convertir de intensidad para un 5ndice% y luego desdeindexado a 67B"
'G" convertir manualmente la imagen intensidad de las monedas +cargadoen la variable - a una imagen indexada y luego a 67B" Tenga en cuenta &uela imagen rboles +cargada en la variable 3 con su mapa de color en lavariable map- ya se 8a convertido a 67B en el paso 9 +guardada en lavariable 3:rgb-"
2:ind% :mapa4 * gray1ind+%1?-.
:rgb * ind1rgb+:ind%:mapa-.
pregun-a ''
;Cu contienen las variables de :ind y :mapa=
-
7/24/2019 Ejercicio2 Manipulacion Basica Imagenes
11/12
'@" Muestre las imgenes a color utilizando la $uncin ims8o0"
>gure
subplot+'%1%'-% ims8o0+:rgb-
subplot+'%1%1-% ims8o0+3:rgb-
'I" Hse imwritepara guardar dos de las imgenes modi>cadas en estetaller estos arc8ivos sera usados a $uturo en el semestre" Htilice el $ormatoO!E7 para uno de ellos y la extensin !K7 para el otro" !or ejemplo%
im/it"(X, ,t""+.,);
im/it"(X,a ,at""+.n,);
-
7/24/2019 Ejercicio2 Manipulacion Basica Imagenes
12/12