您的位置:首页 > 运维架构

opencv生成棋盘格

2014-05-09 15:09 141 查看
我们对摄像头进行标定时,常会用到棋盘格图像。下面就给出一个生成棋盘格图像的opencv代码。

编译环境为VC6.0与opencv1.0,代码如下:

#include <stdio.h>
#include <cv.h>
#include <highgui.h>
#include <cxcore.h>

void main()
{
//---生成标定图
IplImage *img;
int dx=80;		//棋盘格大小,像素为单位
int dy=5;		//棋盘格数目
img = cvCreateImage(cvSize(2*dx*dy, 2*dx*dy), IPL_DEPTH_8U, 1);
cvZero(img);
int flag=0;
for(int i=0;i<2*dy;i++)
for(int j=0;j<2*dy;j++)
{
flag = (i+j)%2;
if (flag == 0)
{
for (int m=i*dx; m<(i+1)*dx; m++)
for(int n=j*dx; n<(j+1)*dx; n++)
((uchar *)(img->imageData +  m * img->widthStep ))
= 255;
//*(img->imageData+m*img->widthStep+n)=255;
}

}
//---END生成标定图
cvSaveImage("棋盘格标定图.bmp",img);
cvNamedWindow("棋盘格", 1);
cvShowImage("棋盘格",img);
cvWaitKey(0);

cvReleaseImage(&img);
cvDestroyWindow("棋盘格");
}

生成的棋盘格图像如下:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: