• 大小: 21.93MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-08-01
  • 语言: 其他
  • 标签: 双目标定  

资源简介

双目摄像头,根据成像得到物体离相机所在平面的距离。

资源截图

代码片段和文件信息

#pragma warning( disable: 4996 )

#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
//#include 
using namespace std;

//
// Given a list of chessboard images the number of corners (nx ny)
// on the chessboards and a flag: useCalibrated for calibrated (0) or
// uncalibrated (1: use cvStereoCalibrate() 2: compute fundamental
// matrix separately) stereo. Calibrate the cameras and display the
// rectified results along with the computed disparity images.
// reconstruct the 3dimage and show it in opengl.
//


///////////////////////////////////////////////////////////
//OpenGL---define data 
// Define a constant for the value of PI
#define GL_PI 3.1415f

// Rotation amounts
static GLfloat xRot = 0.0f;
static GLfloat yRot = 0.0f;
float imgdata[500][500][3];    // 存放三维坐标数据
float texture[500][500][3]; // 存放纹理数据
int width=0 height=0;
//static GLfloat rx = 0.0f ry = 0.0f;
int eyex = 115 eyez = 115 atx = 100 atz = 50;
float scalar=1;        //scalar of converting pixel color to float coordinates


//////////////////////////////////////////////////////////////
//OpenGL---功能键(方向键)响应函数
void SpecialKeys(int key int x int y)
{
if(key == GLUT_KEY_UP)
xRot-= 5.0f;

if(key == GLUT_KEY_DOWN)
xRot += 5.0f;

if(key == GLUT_KEY_LEFT)
yRot -= 5.0f;

if(key == GLUT_KEY_RIGHT)
yRot += 5.0f;

if(key > 356.0f)
xRot = 0.0f;

if(key < -1.0f)
xRot = 355.0f;

if(key > 356.0f)
yRot = 0.0f;

if(key < -1.0f)
yRot = 355.0f;

// Refresh the Window
glutPostRedisplay();
}
/*void special(int key int x int y)
{
    switch(key)
    {
    case GLUT_KEY_LEFT:
        ry-=5;
        glutPostRedisplay();
        break;
    case GLUT_KEY_RIGHT:
        ry+=5;
        glutPostRedisplay();
        break;
    case GLUT_KEY_UP:
        rx+=5;
        glutPostRedisplay();
        break;
    case GLUT_KEY_DOWN:
        rx-=5;
        glutPostRedisplay();
        break;
    }
}*/


//////////////////////////////////////////////////////////////////////////
// OpenGL---三维图像显示响应函数
void renderScene(void) {

    glClear (GL_COLOR_BUFFER_BIT);
    glLoadIdentity();// Reset the coordinate system before modifying 
    gluLookAt (eyex-100 0.0 eyez-100.0 atx-100.0 0.0 atz-100.0 0.0 1.0 0.0);    // 根据滑动块位置变换OpenGL摄像机视角
    glRotatef(xRot-180 1.0 0.0 0.0); //rotate about the z axis            // 根据键盘方向键按键消息变换摄像机视角
    glRotatef(yRot 0.0 1.0 0.0); //rotate about the y axis

    float xyz;

    glPointSize(1.0); 
    glBegin(GL_POINTS);//GL_POINTS
    for (int i=0;i        for (int j=0;j            glColor3f(texture[i][j][0]/255 texture[i][j][1]/255 texture[i][j][2]/255);    // 将图像纹理赋值到点云上
            x=-imgdata[i][j][0]/scalar;        // 添加负号

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2017-12-25 16:45  StereoCalib\
     文件       19805  2010-07-08 15:57  StereoCalib\20100709.cpp
     文件       19854  2017-12-25 16:45  StereoCalib\ch12_ex12_3.cpp
     目录           0  2018-01-03 19:05  StereoCalib\stereocalib\
     目录           0  2017-12-24 20:54  StereoCalib\stereocalib\.vs\
     目录           0  2017-12-24 20:54  StereoCalib\stereocalib\.vs\stereocalib\
     目录           0  2017-12-24 20:54  StereoCalib\stereocalib\.vs\stereocalib\v14\
     文件       39424  2018-01-03 19:05  StereoCalib\stereocalib\.vs\stereocalib\v14\.suo
     目录           0  2017-12-25 16:59  StereoCalib\stereocalib\Debug\
     文件       12518  2010-07-09 13:38  StereoCalib\stereocalib\Debug\BuildLog.htm
     文件     1030923  2017-12-25 16:53  StereoCalib\stereocalib\Debug\ch12_ex12_3.obj
     文件           0  2010-07-09 13:38  StereoCalib\stereocalib\Debug\ch12_ex12_3.sbr
     文件          69  2010-07-09 13:38  StereoCalib\stereocalib\Debug\mt.dep
     文件     3271680  2017-12-25 16:54  StereoCalib\stereocalib\Debug\stereocalib.bsc
     文件     1240064  2017-12-25 16:59  StereoCalib\stereocalib\Debug\stereocalib.exe
     文件         406  2010-07-09 13:38  StereoCalib\stereocalib\Debug\stereocalib.exe.embed.manifest
     文件         472  2010-07-09 13:38  StereoCalib\stereocalib\Debug\stereocalib.exe.embed.manifest.res
     文件         381  2010-07-09 13:38  StereoCalib\stereocalib\Debug\stereocalib.exe.intermediate.manifest
     文件     2984088  2017-12-25 16:59  StereoCalib\stereocalib\Debug\stereocalib.ilk
     文件     8196096  2017-12-25 16:59  StereoCalib\stereocalib\Debug\stereocalib.pdb
     文件      921600  2017-12-25 16:53  StereoCalib\stereocalib\Debug\vc140.pdb
     文件      609280  2010-07-09 13:38  StereoCalib\stereocalib\Debug\vc90.idb
     文件      708608  2010-07-09 13:38  StereoCalib\stereocalib\Debug\vc90.pdb
     文件       40046  2017-12-24 20:54  StereoCalib\stereocalib\UpgradeLog.htm
     文件         658  2017-12-25 19:09  StereoCalib\stereocalib\ch12_list.txt
     文件      308278  2018-01-03 18:42  StereoCalib\stereocalib\disparity.bmp
     目录           0  2017-12-24 20:52  StereoCalib\stereocalib\stereoData\
     文件        6148  2008-10-07 15:10  StereoCalib\stereocalib\stereoData\.DS_Store
     文件      136704  2010-06-05 09:23  StereoCalib\stereocalib\stereoData\Thumbs.db
     文件       27908  2008-10-07 10:00  StereoCalib\stereocalib\stereoData\left01.jpg
     文件       28611  2008-10-07 10:00  StereoCalib\stereocalib\stereoData\left02.jpg
............此处省略52个文件信息

评论

共有 条评论