事件相机的标定

 

标定过程

  1. 事件相机由于其独特性,故而使用棋盘格进行标定的传统方式不在适用。 所以,首先需要准备事件相机专用的标定板,这是一个由5x5个LED组成的阵列,其间隔为5x5cm,以500Hz的频率闪烁。如下图: 智科特标定板
  2. 接下来调节相机的镜头,启动dv-gui,根据自己的实际需要,调节镜头的光圈和焦距,使得标定板上每一个LED清晰可见(调节完毕后,记得固定住光圈和焦距),如下图所示: 运行截图
  3. 然后启动标定程序:
    roslaunch dvs_calibration davis_intrinsic.launch
    
  4. 移动标定板,采集图像: 运行截图

  5. 采集到一定数量的图像后,点击Start Calibration开始校正,这个过程会持续一段时间(取决于采集的数量和计算机性能),待计算完成后,点击Save Calibration保存,标定文件会自动保存在~/.ros/camera_info下,待下次在ros下启动相机驱动时,便会自动加载: 运行截图

  6. 如果你的标定板的参数和上面的不一样,你需要修改/dvs_calibration/launch/davis_intrinsic.launch文件中的一些参数,如下:
<param name="blinking_time_us" value="1000"/> <!-- LED闪烁的时长,单位为微秒(us),我们的标定板频率为500Hz,LED亮1毫秒(ms)灭1毫秒,所以这个值为1毫秒也就是1000微秒 -->
<param name="blinking_time_tolerance_us" value="100"/> <!-- 计数过程中允许的误差,单位为微秒(us) -->
<param name="minimum_led_mass" value="50"/> <!-- LED斑点的最小“面积” -->
<param name="dots_w" value="5"/> <!-- 标定板上LED的列数 -->
<param name="dots_h" value="5"/> <!-- 标定板上LED的行数 -->
<param name="dot_distance" value="0.05"/> <!-- 标定板上相邻LED间的距离 -->