Documentos de Académico
Documentos de Profesional
Documentos de Cultura
1098808905
1057547066
GRUPO: E151
BUCARAMANGA, 2020
NOTA: Se utilizó el número de cédula de Juan Miguel Blanco Medina
1) Desarrolle un script en Matlab que dada la imagen ‘trailer.jpg’, recorte la región del trailer,
y guarde el canal azul con su color respectivo de la imagen resultante en formato ‘png’. (1.0)
%% Punto 1:
clc,clear variables, close all
Im = imread('trailer.jpg');
Im(:,:,1) = 0;
Im(:,:,2) = 0;
ImRec = Im(296:590,192:850,:); % Imagen recortada.
imwrite(ImRec, 'soloTrailer.png');
figure()
imshow(ImRec)
title('SoloTrailer.png')
Figura 1
2) Dada la imagen resultante del punto anterior y utilizando Matlab, realice un submuestreo
con factor de muestreo: a) igual al segundo número de su cédula. b) igual al último número
de su cédula. (si es cero use el número que lo antecede) (0.6)
%% Punto 2:
% Segundo numero de la cedula 0, lo antecede un 1.
% La imagen queda igual a la original.
facMuestA = 1;
imSubA = ImRec( 1:facMuestA:end, 1:facMuestA:end, : );
% Ultimo numero de la cedula es 6
facMuestB = 6;
imSubB = ImRec( 1:facMuestB:end, 1:facMuestB:end, : );
figure()
imshow(ImRec)
title('Imagen punto 1.')
figure()
imshow(imSubA)
title(['Imagen submuestrada a ' num2str(facMuestA)])
figure()
imshow(imSubB)
title(['Imagen submuestrada a ' num2str(facMuestB)])
Figura 2
Figura 3
Figura 4
3) Dada la imagen R, obtenga una nueva imagen realizando la operación de intervalo de
umbral, con umbral p1=penúltimo número de su cédula multiplicado por 10 (si es cero use
el número que lo antecede). b) Obtenga una nueva imagen realizando la inversa. (0.7)
%% Punto 3:
R = [ 210 255 17 24;
77 112 190 161;
110 19 159 40;
14 48 25 221];
R = uint8(R);
% Seccion A, binarizar a 60
RBin = R;
menor60 = find (R < 60);
mayor60 = find (R >= 60);
RBin(menor60) = 0;
RBin(mayor60) = 255;
% Seccion B, matriz inversa a B.
Rinv = 255 - R;
figure()
subplot(3,1,1)
imshow(R)
title('Imagen R')
subplot(3,1,2)
imshow(RBin)
title('Imagen R Binarizada a 60')
subplot(3,1,3)
imshow(Rinv)
title('Imagen Inversa de R')
4) Escriba un código en Matlab que mediante una función que es ejecutada desde un script
principal, realice la operación de OR entre dos imágenes, incluso si son de diferente
resolución espacial. (1.3)
%% Punto 4:
ImSal = operacionOr(Im,ImRec);
Im1 = rgb2gray(Im1);
Im1 = imbinarize(Im1); % Binariza la imagen por defecto.
Im2 = rgb2gray(Im2);
Im2 = imbinarize(Im2); % Binariza la imagen por defecto.
tam1 = size(Im1);
tam2 = size(Im2);
Comentario: Las dos imagenes mostradas son de diferentes tamaños, la imagen 1 se le cambia el
tamaño y se hace la operación or ya que las dos tienen el mismo tamaño.
5) Escriba un código en Matlab que mediante manipulación de pixeles construya una imagen:
a) fondo amarillo y un objeto centrado lo más parecido a una estrella fugaz. b) Resolución
espacial de R40xP20. (R tercer número de su cédula y P el último número, si es cero use el
número que lo antecede). c) Calcule su histograma y explique por qué se tiene esa
distribución. (1.4)
%% Punto 5:
filas = 540;
colum = 620;
canales = 3;
h = -10 : 10;
estrella = zeros([filas,colum,canales],'uint8');
estrella(:,:,1) = 255;
estrella(:,:,2) = 255;
HISTOGRAMA:
filas = 540;
colum = 620;
canales = 3;
h = -10 : 10;
estrella = zeros([filas,colum,canales],'uint8');
estrella(:,:,1) = 255;
estrella(:,:,2) = 255;
figure()
subplot(2,2,1)
imshow(estrella)
title('Imagen inicial')
subplot(2,2,2)
imhist(ImR)
title('Canal Rojo')
subplot(2,2,3)
imhist(ImG)
title('Canal Verde')
subplot(2,2,4)
imhist(ImB)
title('Canal Azul')
Justificación:
Porque se mantiene números pares y conserva una figura equilátera aproximada.