Info

This question is locked. Reopen it to edit or answer.

the 2d convolution result dosen't match my expectation

37 views (last 30 days)
%i
x = 1:317;
y = 1:317;
[xx,yy] = meshgrid(x,y);
z = (xx-158.5).^2+(yy-158.5).^2;
circle = zeros(317,317);
for i = 1:317
for j = 1: 317
if z(j,i) < 158.5^2
circle(j,i) = 1;
end
end
end
c = conv2(circle,circle);
c = c./max(c);
imshow(c)
I use simple code, simple object. However the result isn't correct.
Why did this result come out?
p.s. The second image is square and square case.
  1 Comment
Rena Berman
Rena Berman on 23 Oct 2025 at 18:33
(Answers Dev) Restored question with images as attachments

Accepted Answer

Bruno Luong
Bruno Luong on 26 Oct 2018
Edited: Bruno Luong on 26 Oct 2018
Not sure what is your expectation, and intention but shooting on the dark, try to replace
c = c./max(c);
with
c = c./max(c(:));

More Answers (0)

This question is locked.

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!