天天看點

matlab畫棋盤格程式

意義

在錄影機标定過程中經常須要列印棋盤格程式,還有就是在投影儀标定其中經常須要投射和投影儀同樣分辨率的pattern

matlab源碼

close all;
clear all;
clc;
width=1024  ;      %pattern的寬
height=768     ;          %pattern的高
img_final=zeros(height,width);
reinforceconner=0       ;%是否加強角點 
row=10;                 %pattern中棋盤格的行數
col=13 ;              %pattern中棋盤格的列數
length=45;           %pattern中棋盤格的大小
org_X=(height-row*length)/2;        %pattern關于縱軸方向的位置,預設放在中間
org_Y=(width-col*length)/2;             %pattern關于橫軸方向的位置,預設放在中間
  color1=1;
     color2=color1;
img=zeros(row*length,col*length);
for i=0:(row-1)
    color2=color1;
    for j=0:(col-1)
        if color2==1
        img(i*length+1:(i+1)*length-1,j*length+1:(j+1)*length-1)=color2;
        end
        %不加的話。能夠凝視掉
        %
        color2=~color2;
    end
    color1=~color1;
end
img_final(org_X:org_X+row*length-1,org_Y:org_Y+col*length-1)=img;
   img_final=~img_final;
     figure;imshow(img_final);   
     imwrite(img_final, 'cheesBoard.bmp','bmp');      

生成示範樣例

matlab畫棋盤格程式

繼續閱讀