zl程序教程

您现在的位置是:首页 >  数据库

当前栏目

OpenNi2 源码阅读(奥比相机版)

2023-03-20 15:41:54 时间

先说下关于我们的标定的事情,可能有的代码的注释是英文的:

对照在此

1、打印一张棋盘格,把它贴在一个平面上,作为标定物。
2、通过调整标定物或摄像机的方向,为标定物拍摄一些不同方向的照片。
3、从照片中提取棋盘格角点。
4、估算理想无畸变的情况下,五个内参和六个外参。
5、应用最小二乘法估算实际存在径向畸变下的畸变系数。
6、极大似然法,优化估计,提升估计精度。

计算参数的步骤。

https://www.smarttof.com/zh-hans/join

找到一个国内做深度相机的公司,感觉都快倒闭了都。。。

公司也在招人,可以看看这个职位的要求

https://github.com/smarttofsdk

他们的开发SDK在GT

https://github.com/smarttofsdk/3DWorld

微信阅读里面有本它公司出的书,我下午读了半本了

公司Logo,比奥比的好看。。。

这是他的SDK

pip install -U dmcam

它有个基于C接口封装的Python包,感兴趣

看来是封装了一些算法在里面,就依赖一个Numpy

https://pypi.org/project/dmcam/

pypi的位置

注意到这句话

C的头在这里

相机参数。后面是失真系数

日志等级

剩下的是TOF的东西了,总的来说感觉和结构光是完全不同的东西。

这是帧结构

帧数据格式

数据集名称

缩写

功能

链接

ModelNet

ModelNet

3D点云识别数据集

http://modelnet.cs.princeton.edu/

NYU Depth Dataset V2

NYU V2

RGBD物体识别数据集

https://cs.nyu.edu/~silberman/datasets/nyu_depth_v2.html

SUNRGB-D 3D Object Detection Dataset

SUNRGB-D

RGBD物体识别数据集

http://rgbd.cs.princeton.edu/challenge.html

Labeled Faces in the Wild Home

LFW

人脸识别数据集

http://vis-www.cs.umass.edu/lfw/

NTU RGB+D Dataset

NTU RGB+D

RGBD人体动作识别数据集

http://rose1.ntu.edu.sg/Datasets/actionRecognition.asp

Human 3.6M Dataset

Human 3.6M

RGBD人体姿态动作数据集

http://vision.imar.ro/human3.6m/description.php

3D ToF Top-view Human Detection Dataset

3D TTHD

3D人员检测与人数统计数据集

http://bat.sjtu.edu.cn/3d-tof-sjj/

这里插一些RGBD数据集的下载位置

以前的Openni2是这样的安装版本

安装的时候要安装驱动(被果子买了)

安装后的目录结构

C:Program FilesOpenNI2

在这里,后面就卸载了。

然后打开奥比的SDK

里面有个名字叫sample.old,我以为没用,就压缩了,没想到是有用的。

下面的东西是来自demo

深度和红外图像

数据类型定义

RGB的封装形式

还有YUV422格式

这里第一次见模板

template <class T>

作用是减少重复的工作。

T是参数的类型名字,class是类型参数

视频模式,像素格式,XY的分辨率和fps

输出的深度和RGB的格式

这是RGB888的格式

相机参数

pColor = (RGB888Pixel *)frame.getData();

获得当前帧的数据,其实就是获得了这些数据

传感器的种类,红外,颜色,深度

最后一个放时间戳

uint64_t timestamp;

你看这个getData的函数

通过一个结构体指针引回来了

里面常见的宏也有了

你看这个打印的时间戳,用括号做了一下强制的数据转换

int middleIndex = (frame.getHeight() + 1) * frame.getWidth() / 2;

都和255做了与运算

RGB888Pixel *pColor;

这里还是这个RGB的格式

这里的第一个100,应该是以1mm的分辨率获取

忘了写啥了。。。

出流的定义

宏定义