You are on page 1of 31

Ejemplos Matlab

Image Processing
Toolbox
Ejemplos bsicos
imgenes

Image Processing
Toolbox
% Lista de todos los comandos del toolbox
help images
% Lista de todas las imgenes disponibles del
toolbox
help imdemos
% Lista la informacin de una imagen
imfinfo('onion.png')

Modelo de Imagen
Imagen = funcin de la intensidad de la luz

Resolucin: Nmero de filas y columnas


nxm

Definicin (profundidad): Nmero de bits


usados para codificar la intensidad de un
pxel. Ej 8 bits: 0-255

Formatos de imgenes

Lectura de imgenes imread


img = imread ('filename')
Formatos soportados por imread:
Tif, tiff, jpg, jpeg, gif, bmp, png, xwd
% Lectura de imagen de un archivo
I = imread('onion.png');

Despliegue de imgenes imshow


imshow (img)
% Desplegar una imagen desde un archivo
imshow('onion.png')
% Desplegar una imagen almacenada en el
workspace
I = imread('cameraman.tif');
figure, imshow(I)
title('Imagen original')
% Para desplegar la imagen al 150%
figure, imshow(img, 'InitialMagnification', 150)

Despliegue de imgenes imshow


imshow(I,[low high])

Despliegue de una imagen ajustando la escala de


grises a los valores indicados como LOW y HIGH. El
valor LOW y los menores que LOW se despliegan
como negros, el valor HIGH y mayores se despliega
como blanco. Los valores intermedios se despliegan
como niveles de grises.
figure, imshow(I,[0 80]);

Imagen Tool
%

Imagen Tool - opciones de llamado

moon = imread('moon.tif');
imtool(moon)
% otra opcin de llamado
imtool('moon.tif');

Lectura de mltiples
imgenes

Los archivos TIFF pueden almacenar mltiples


imgenes independientes.

El archivo mri.tif contiene 27 imgenes.

% Lectura de la imagen numero 11,


img11 = imread('mri.tif', 'Index', 11);
imshow(img11)
% Lectura de todas las imgenes,
for frame = 1:27
[mri(:,:,:,frame), map] = imread('mri.tif',frame);
end

Montage - Implay
% Despliega todas las imgenes en una misma
figura, construye un multimarco.
montage(mri)
% Convirtiendo un multimarco en vdeo
mov = immovie(mri, map);
implay(mov)
% Reproduce secuencias de imgenes
implay(mri)
% Reproduce videos
implay('rhinos.avi');

Lectura de parte de una


imagen

Para imgenes muy grandes, se puede leer


solo una regin de ella (tif y jpeg).

% Lectura de las filas 50-100 y las columnas


150-200
I = imread('board.tif', 'PixelRegion', {[10
100], [150 250]});
imshow(I)

Recorte de una imagen


%Recortar una imagen
I

= imread('board.tif');

recorte = imcrop(I, [0 0 80,80]);


imshow(recorte)

Escribir un archivo de
imagen
imwrite(img, FileName, Format)
%Lectura de la imagen desde un archivo
I = imread('cameraman.tif');
% Escritura de una imagen en un archivo
imwrite(I, 'cameraman.jpg','jpg')
imwrite(I, 'cameraman.jpg')

Ejemplos Simulink
Computer Vision System
Toolbox
Ejemplos bsicos
imgenes

Configuracin simulink

Seleccionar el menu Simulation / Configuration


Parameters.

Type: Fixed-step

Solver: discrete (no continuous states)

Lectura de una imagen

Sources: Image From File

Sinks: To Video Display

DespliegueenformaseparadalosplanosdecolorRGB

Leer un video y
desplegarlo

Sources: From Multimedia File

Sinks: To Video Display

Probar Video Viewer

Demos

Desplegar una secuencia de imgenes


ex_display_sequence_of_images

Partition Video Frames to Multiple Image


Files
ex_vision_partition_video_frames_to_multiple_
files

Ejemplos Matlab
Image Processing
Toolbox

Modelos de Color

Patrn de bayer: bggr

RAW es un formato de archivo


digital de imgenes que
contiene la totalidad de los
datos de la imagen tal y como
ha sido captada por el sensor
digital de la cmara fotogrfica.

Formato
RAW

Formato
RGB

Demosaic
demosaic(I, sensorAlignment)
Convierte un patrn bayer codificado a una imagen
en color verdadero, utilizando el algoritmo de
interpolacin basada en el gradiente.
I = imread('mandi.tif');
imshow(I);
J = demosaic(I,'bggr');
figure, imshow(J);
% Probar: 'gbrg', 'grbg', 'rggb'

Planos RGB
% Lectura de una imagen en RGB
I = imread('onion.png');
% Extraccin de los canales R - G - B
Ired
= I(:,:,1);
Igreen = I(:,:,2);
Iblue = I(:,:,3);
% Grafica
subplot(2,2,1);
subplot(2,2,2);
subplot(2,2,3);
subplot(2,2,4);

imshow(I); title('Original image');


imshow(Ired); title('red');
imshow(Igreen); title('green');
imshow(Iblue); title('blue');

Conversin de RGB a YIQ


% Lectura de la imagen
RGB = imread('peppers.png');
imshow(RGB);
title('Original image');
% Conversin RGB a YIQ
YIQ = rgb2ntsc(RGB);
% Despliegue de la imagen de luminancia
I = YIQ(:,:,1);
figure, imshow(I)

Conversin RGB a HSV


%

Conversin RGB a HSV

RGB = imread('football.jpg');
HSV = rgb2hsv(RGB);
H

= HSV(:,:,1);

= HSV(:,:,2);

= HSV(:,:,3);

subplot(2,2,1), imshow(RGB), title('Original image')


subplot(2,2,2), imshow(H),

title('H image')

subplot(2,2,3), imshow(S),

title('S image')

subplot(2,2,4), imshow(V),

title('V image')

Conversin a escala de
grises
I = rgb2gray(RGB)
Convierte la imagen RGB de color verdadero a
escala de intensidad de grises, al eliminar la
informacin
de
color
manteniendo
solo
la
componente de luminancia.

Conversin a escala de
grises
% Lectura de la imagen
RGB = imread('peppers.png');
% Convertir la imagen a escala de grises
I = rgb2gray(RGB);
% Despliegue de la imagen a escala de
grises
imshow(I)

Conversin a Blanco y
Negro

BW = im2bw(I, level)

Si

level entonces

Si

level entonces

Valor por defecto de level = 0.5.

Conversin a Blanco y
Negro
% Convertir la imagen a B/N mediante un umbral
I

= imread('coins.png');

level

= 0.6;

bw

= im2bw(I, level);

imshow(bw)

% Aplicar un umbral variable de cero a uno


for i = 0:0.1:1
bw = im2bw(I, i);
imshow(bw)
imagen
pause(1)
end

% imshow(~bw) Negativo de la

Umbral global Mtodo


de Otsu
level = graythresh(I)
Calcula un umbral global (level) que puede
ser utilizado para convertir una imagen de
intensidades a una imagen binaria.
El valor est normalizado en el rango [0, 1].

Umbral global Mtodo


de Otsu
%Convertir la imagen a B/N mediante un
umbral global
I

= imread(' 'coins.png');

level

= graythresh(I);

bw

= im2bw(I, level);

imshow(bw)

Simulink - Conversiones
En la librera Conversions utilice los
siguientes bloques para obtener la
transformacin correspondiente, utilice como
entrada una seal de video.
Ej: vipmosaicking.avi

Color Space Conversion

Image Complement

Autothreshold

You might also like