Reduction of code lines

1 view (last 30 days)
Ayesha
Ayesha on 21 Jan 2014
Edited: Walter Roberson on 21 Jan 2014
Alright, so I've written this particular thing to blur an image and I've been wondering if I could reduce the number of lines or perhaps cut down the redundancies within this code especially the last line which copies one matrix to an other. Any over the top ideas would also be appreciated!
a=512;
b = a^2/16;
c=(sqrt(b)-1)/2;
ft11 = fftshift(fft2(myImage));
width = size(myImage,1);
F1 = zeros(width);
d = width/2;
e = (d-c:d+c)+1;
ft11(e,e)=F1(e,e);

Accepted Answer

Walter Roberson
Walter Roberson on 21 Jan 2014
Edited: Walter Roberson on 21 Jan 2014
a = 512;
B = a/4;
c = (B-1)/2;
ft11 = fftshift(fft2(myImage));
width = size(myImage,1);
d = width/2;
e = (d-c:d+c)+1;
ft11(e,e) = 0;

More Answers (1)

Amit
Amit on 21 Jan 2014
Its a good code. The only place I think there is a chance is
a=512;
b = a^2/16;
c=(sqrt(b)-1)/2;
ft11 = fftshift(fft2(myImage));
width = size(myImage,1);
%F1 = zeros(width); % You dont need to store these zeros
d = width/2;
e = (d-c:d+c)+1;
ft11(e,e)=zeros(e);
  1 Comment
Amit
Amit on 21 Jan 2014
Edited: Amit on 21 Jan 2014
you might think of putting (d-c:d+c)+1 directly. However this might create more overhead, due to temporary storing those values (3 times). (I might be wrong about this)

Sign in to comment.

Categories

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

Tags

Community Treasure Hunt

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

Start Hunting!