Create a Slanted Linspace Matrix

Hi All, I am trying to generate noise in an image, and need a matrix of the form:
1 2 3 4
2 3 4 5
3 4 5 6
4 5 6 7
up to 1024x1024. Is there an east way to create this?

 Accepted Answer

hankel(1:4,4:7)
ans = 4×4
1 2 3 4 2 3 4 5 3 4 5 6 4 5 6 7

More Answers (1)

If you have the signal processing toolbox, the buffer command will do exactly what you want.
If not, something like
x = linspace(xmin, xmax, numx);
matrix = zeros(numx, numx);
for ii = 1:numx
matrix(:, ii) = x + ii - 1;
end
should do the trick.

Community Treasure Hunt

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

Start Hunting!