Red de conocimiento de recetas - Industria de la restauración - Programa: Imagen en escala de grises matlab con ruido de sal y pimienta

Programa: Imagen en escala de grises matlab con ruido de sal y pimienta

Enviar filtro promedio. Este programa fue escrito por mí para la detección de bordes. Al principio, utilicé un filtro gaussiano para el filtrado promedio y LZ puede aprender de él. Enviar el programa ~ ~ ~ ~

Centro de control cromático

Cerrar todo

Borrar todo

%%% generar plantilla de filtro de suavizado gaussiano %%%

%%%%%%%%%%%%%%%%%%%%%%%

hg = cero (3, 3 ); Establezca el tamaño de la plantilla de filtro de suavizado gaussiano en 3*3.

δ= 0.5;

Porque x=1:1:3

Porque y=1:1:3

u = x-2;

v = y-2;

hg(x,y)=exp(-(u^2+v^2)/(2*pi*delta ^2));

Fin

Fin

h = Hg/suma(Hg(:));

%%% %%%%%%%%%%

%%%%%%%%%%%%%Leer la imagen%%%%%%%%%%

%%%%%%%%%%%%%

f = imread(' 1111 . TIF '); %Leer archivo de imagen

f = RGB 2 gris(im 2) double(f));

imshow(f)

Título ("imagen original");

[m, n]=size(f) ;

ftemp=zeros(m,n);

fila alta = m-1;

col alta = n-1;

%%%Filtro gaussiano%%%

Para x=2:1:rowhigh-1

Para y=2:1:colhigh-1

mod=[f(x-1,y-1) f(x-1,y) f(x-1,y+1);f(x,y-1) f(x,y) f(x , y+1); f(x+1, y-1) f(x+1, y) f(x+1, y+1)];

A = h. p>

ftemp(x, y)= suma(A(:);

Fin

Fin

f=ftemp

Figura, imshow(f)

Título ('Imagen después del filtro gaussiano');

% %%%%%%%%%%%%%% %%% %%%%%%%%%%%%

%%%%Utilice el operador de Roberts para la detección de bordes%%%

% %%%%% %%%% %%%%%%%%%%%%%%%%%%%%

sx =[-1-2-1;0 0 0;1 2 1 ];

sy =[-1 0 1;-2 0 2;-1 0 1];

Para x=2:1:rowhigh-1

Para y=2 :1:colhigh-1

mod=[f(x-1,y-1) f(x-1,y) f(x-1,y+1) ;f(x,y -1) f(x,y) f(x,y+1);f(x+1,y-1) f(x+1,y) f(x+1,y+ 1)];

fsx=sx. *mod

fsy=sy.

* mod

ftemp(x,y)=sqrt((sum(fsx(:)))^2+(sum(fsy(:)))^2);

Fin

Fin

fr = im 2 uint 8(ft EMP);

Figura, imshow(Francia)

Título(" La imagen original detectada por la detección de bordes del operador de Roberts");

%%% división del valor del dominio%%%

th 1 = 60; % umbral establecido

for x=2:1:rowhigh-1

Para y=2:1:colhigh-1

if (fr(x, y)>= th 1)& amp; ((fr(x,y-1)<= fr(x,y))&(fr(x,y)>fr(x,y+1)))

fr (x ,y)= 200;

elseif(fr(x,y)>= th 1)&((fr(x-1,y)<=fr(x,y ))& (fr(x,y)>fr(x+1,y)))

fr(x,y)= 200;

si no fr(x , y)= 50 ;

Fin

Fin

Fin

Figura, imshow (Francia)

Título("Imagen después detección de bordes y adelgazamiento usando el operador de Roberts");