Advertisement
Guest User

Untitled

a guest
Jul 7th, 2015
228
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.11 KB | None | 0 0
  1. sigma = 0.5;
  2. gauss = fspecial('gaussian', [5 5], sigma);
  3. blur1 = imfilter(img, gauss, 'replicate');
  4. dog1 = img - blur1;
  5. %Next level
  6. blur2 = imfilter(blur1, gauss, 'replicate');
  7. dog2 = blur1 - blur2;
  8.  
  9. sigma = 0.5;
  10. gauss1 = fspecial('gaussian', round([10*sigma 10*sigma]), sigma);
  11. sigma = 1;
  12. gauss2 = fspecial('gaussian', round([10*sigma 10*sigma]), sigma);
  13. blur1 = imfilter(img, gauss1, 'replicate', 'same');
  14. blur2 = imfilter(img, gauss2, 'replicate', 'same');
  15. dog2 = blur1 - blur2;
  16.  
  17. %% Filter using DoG
  18. stepsPerOctave = 5;
  19. octaves = 4;
  20. mult = nthroot(2,stepsPerOctave);
  21.  
  22. % Create blurry images
  23. sigma = 0.5;
  24. kernelSize = [10*sigma*2^(octaves),10*sigma*2^(octaves)]
  25. for k = 1:octaves*stepsPerOctave+1
  26. disp(['Sigma is ' num2str(sigma)]);
  27. gauss = fspecial('gaussian', kernelSize, sigma);
  28. blur(:,:,k) = imfilter(I, gauss, 'replicate', 'same');
  29. imagesc(blur(:,:,k)); colorbar; title(['Gaussian ' num2str(k)]); pause;
  30. sigma = sigma * mult;
  31. end
  32.  
  33. % Create DoG
  34. for k = 1:octaves*stepsPerOctave
  35. dog(:,:,k) = blur(:,:,k+1) - blur(:,:,k);
  36. imagesc(dog(:,:,k)); colorbar; title(['DoG ' num2str(k)]); pause;
  37. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement