for(int j = 0;j < boardSize.height;j++) { for(int i = 0;i < boardSize.width;i++) { flag = (i+j) % 2; if(flag == 0) { for(int n = j * perBoardPixel;n < (j+1) * perBoardPixel;n++) for(int m = i * perBoardPixel;m < (i+1) * perBoardPixel;m++) image.at<uchar>(n + basisHeight,m + basisWidth) = 0; } } }
对每个像素进行读写就OK!
boardSize:棋盘格大小(8,6)
perBoardPixel:每个小方块的像素大小
basisHeight和basisWidth是将棋盘格放置到所需像素分辨率图像的正中央basis
代码托管:https://github.com/zhanxiage1994/chessboardImage.git
来张效果图