今天,我看见我一同学在用photoshop画棋盘格,用于相机标定的。然后我就不淡定了,决定给他写个程序完成这个工作。写了1个多小时,终于整完了。把代码放在这,希望能帮到别人。malab的代码,下面是主函数。
主函数:
function M = writeChessBoard( width, height, size, xnum, ynum, position, background)% This function writes a chessboard on image.% 该方程创建一个棋盘格图像。%参数解释:% width: 宽度% height:高度% size:单个小方块的大小% xum:x方向上的个数(每4个小方块一组)% xum:x方向上的个数(每4个小方块一组)% position:起始位置的坐标(为了留出边,便于打印)% background:背景亮度, 0<=background<=1, 0表示纯黑,1表示纯白 M=ones(width,height); M(:)=background; block=size*2; for i=1:xnum, for j=1:ynum, pos=[position(1)+block*(i-1), position(2)+block*(j-1)]; M=ChessBoard(M,size,pos); end end end
生成的棋盘样图:
完工!