Como son los Sistemas de vision, Dominio espacial
Enviado por Sara • 13 de Diciembre de 2018 • 1.270 Palabras (6 Páginas) • 430 Visitas
...
Ib(5,mm)=(I(5,mm)+I(5,mm-1)+I(5-1,mm+1)+I(5-1,mm)+I(5-1,mm+1)+I(5,mm+1))/6; % Saca el promedio para cada elemento de la fila 5
end
%Centros
% En esta sección se resuelven el resto de los elementos faltanes
for ii = 2:1:4; % Se asigna un valor para ii de 2 a 4 con saltos de 1
for mm=2:1:4; % Se asigna un valor para mm de 2 a 4 con saltos de 1
Ib(ii,mm)=(I(ii,mm)+I(ii-1,mm-1)+I(ii-1,mm)+I(ii-1,mm+1)+I(ii,mm+1)+I(ii+1,mm+1)+I(ii+1,mm)+I(ii+1,mm-1)+I(ii,mm-1))/9; % Saca el promedio para el resto de los elementos
end % Declara el fin de la sentencia del ciclo for
end % Declara el fin de la sentencia del ciclo for
Ib=round(Ib); % Redondea cada elemento de la matriz Ib
figure(3) % Muestra la figura 3
imagesc(Ib) % Grafica la matriz Ib
caxis([0 255]);
colormap(gray)
axis equal
% Inciso c) Procesamiento de cuadros
It = I'; % Se almacena la matriz transpuesta de I en It
Ic = zeros(5,5); % Se declara una matriz de ceros de 5x5
for ii=1:1:5; % Se asigna un valor para ii de 1 a 5 con saltos de 1
for mm=1:1:5; % Se asigna un valor para mm de 1 a 5 con saltos de 1
if It(ii,mm)% Función para encontrar si el elemento de It es menor que el de I
Ic(ii,mm)=It(ii,mm); % Si es menor entonces almacena el elemento menor en Ic
else
Ic(ii,mm)=I(ii,mm); % De lo contario almacena el elemento de la matriz I
end % Declara el fin de la sentencia del condicional if
end % Declara el fin de la sentencia del ciclo for
end % Declara el fin de la sentencia del ciclo for
figure(4) % Muestra la figura 4
imagesc(Ic) % Grafica la matriz Ic
caxis ([0, 255]);
colormap(gray)
axis equal
% Inciso d) Procesamiento geométrico
Ita = Ia'; % Se almacena la matriz transpuesta de Ia en Ita
Itb = Ib'; % Se almacena la matriz transpuesta de Ib en Itb
Itc = Ic'; % Se almacena la matriz transpuesta de Ic en Itc
figure(5) % Muestra la figura 5
imagesc(Ita) % Grafica la matriz Ita
caxis([0 255]);
colormap(gray)
axis equal
figure(6) % Muestra la figura 6
imagesc(Itb) % Grafica la matriz Itb
caxis([0 255]);
colormap(gray)
axis equal
figure(7) % Muestra la figura 7
imagesc(Itc) % Grafica la matriz Itc
caxis([0 255]);
colormap(gray)
axis equal
% Inciso e) Negativos
Ie = 255-I; % Se almacena en Ie el valor “negativo” de cada elemento
figure(8) % Muestra la figura 8
imagesc(Ie) % Grafica la matriz Ie
caxis([0 255]);
colormap(gray)
axis equal
Resultados
Los resultados del script anterior se muestran a continuación.
[pic 1]
Fig. 1 Muestra la gráfica de la matriz original I.
[pic 2]
Fig. 2 Muestra la gráfica de procesamiento de pinto de la matriz resultante de a*i(x,y) , donde a=1/2.
[pic 3]
Fig. 3 Muestra la gráfica de procesamiento de área.
[pic 4]
Fig. 4 Muestra la gráfica de procesamiento de cuadros.
[pic 5]
Fig. 5 Muestra la gráfica de procesamiento geométrico del inciso a).
[pic 6]
Fig. 6 Muestra la gráfica de procesamiento geométrico del inciso b).
[pic 7]
Fig. 7 Muestra la gráfica de procesamiento geométrico del inciso c).
[pic 8]
Fig. 8 Muestra la gráfica con los valores negativos de la matriz original.
Conclusiones
Para esta actividad fueron necesarios los conocimientos básicos de MATLAB. Se crearon 6 diferentes scripts para cada tipo de imagen a mostrar. Aunque todos se pudieron haber hecho en un solo código y correrse al mismo tiempo. La incógnita de saber si visualizar la imagen resultante de la operación [I(:,:,1) + I(:,:,2) + I(:,:,3)]/3 sería igual a la imagen que se obtuvo en escala de grises fue clara. Ya que no se puede obtener el mismo resultado debido a que, como el nombre de la escala lo dice, ésta es una escala que posee valores equivalentes
...