Ir para conteúdo
Fórum Script Brasil
  • 0

Ajuda com script no MATLAB


Rafael De Pauli

Pergunta

Boa tarde Pessoal,

Estou fazendo um trabalho de Processamento de imagens e preciso entender um script criado no MATLAB para poder modifica-lo.

Se alguém puder me ajudar e fazer uma breve explicação do que o código está fazendo com a imagem, ficaria muito agradecido.

Segue o script:

clear all;
threshold = 90;
img1=imread('img1.bmp');
img1 = double(rgb2gray(img1));
for i=2:size(img1,1)-1
for j=2:size(img1,2)-1
sobel_x= (img1(i+1,j-1) + (2*img1(i+1,j)) + img1(i+1,j+1)) - (img1(i-1,j-1) + (2*img1(i-1,j)) + img1(i-1,j+1)) ;
sobel_y= (img1(i-1,j+1) + (2*img1(i,j+1)) + img1(i+1,j+1)) - (img1(i-1,j-1) + (2*img1(i,j-1)) + img1(i+1,j-1)) ;
sobel_final = sqrt(sobel_x.^2+sobel_y.^2);
if(sobel_final >= threshold)
img2(i-1,j-1) = 1;
else
img2(i-1,j-1) = 0;
end;
end;
end;
hipotenusa = round(sqrt( size(img2,1)^2 + size(img2,2)^2));
dominTranf = zeros(hipotenusa+1,361,'int8');
for idx_y=1:size(img2,1)
for idx_x=1:size(img2,2)
if (img2(idx_y,idx_x)>=1)
for theta=0:360
theta_r = ( theta*(pi/180) );
rho = round((idx_x*cos(theta_r))+(idx_y*sin(theta_r))) ;
if (rho>=0)
dominTranf((rho+1),(theta+1)) = dominTranf((rho+1),(theta+1)) + 1;
end;
end;
end;
end;
end;

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,8k
×
×
  • Criar Novo...