How to create a chessboard?
Afficher commentaires plus anciens
I have created a chessboard function that goes from values 1 to -1, where its parameters are M (width of the image), N (height), F (rows), C (columns).
My problem is that for certain values of F and C, the function does not respond to me as it should, resulting in something similar to bands instead of squares. I have reviewed the Matlab documentation and have only seen the checkerboard function, which in my case is not worth it. The code of my function is shown below:
function [a] = chessboard3(N,M,C,F)
L1 = floor(M/C);
L2 = floor(N/F);
k = 1;
for m=1:L1:M
for n=1:L2:N
a(m:m+L1-1,n:n+L2-1)=ones(L1,L2)*(cos(k*pi));
k=k+1;
end
k=k+1;
end
end
The resolutions that I must prove are:
8k = 7680x4320
4k = 3840x2160
1080p = 1920x1080
Thank you very much in advance.
1 commentaire
You don't need loops to generate that chessboard, e.g.:
I = 1-2*kron(toeplitz(mod(1:C,2),mod(1:F,2)),ones(fix(M/C),fix(N/F)))
or use repelem instead of kron.
Réponse acceptée
Plus de réponses (0)
Catégories
En savoir plus sur Get Started with Statistics and Machine Learning Toolbox dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!