BAL数据集格式解读
在学习BA时用到BAL数据集, 这里记录一下我学习笔记。

<num_cameras> <num_points> <num_observations> <camera_index_1> <point_index_1> <x_1> <y_1> ... <camera_index_num_observations> <point_index_num_observations> <x_num_observations> <y_num_observations> <camera_1> ... <camera_num_cameras> <point_1> ... <point_num_points>
讯享网
这里<camera_1>表示第1个相机的参数,相机的参数共有9个,包括* R,t,f,k1 and k2*
其中R采用旋转向量( R 3 R^3 R3)表示,因此实际<camera_1>共占9行
同样的<point_1>为3D点的坐标( R 3 R^3 R3),共占3行,
翻译过来就是:
讯享网<相机数量> <3D点数量> <观测2D点数量> <相机索引_1> <3D点索引_1> <观测2D点_x_1> <观测2D点_y_1> ... <相机索引_1> <3D点索引_1> <观测2D点_x_1> <观测2D点_y_1> <相机参数_1--1> <相机参数_1--2> ... <相机参数_1--8> <相机参数_1--9> ... ... <相机参数_n--1> <相机参数_n--2> ... <相机参数_n--8> <相机参数_n--9> <3D点_1_x> <3D点_1_y> <3D点_1_z> ... <3D点_m_x> <3D点_m_y> <3D点_m_z>
那么上面的解释到底对不对呢,我们找一个数据集验证一下!
这里找了一个叫problem-16-22106-pre.txt的文件作为验证。
文件内容如下:

图片中的1 2 3 4 是行编号,可以看出这个数据集有16个相机,22106个3D点,观测点有83718个。第2行表示:第0个相机(索引从0开始)观测第0个3D点时得到的两个像素坐标值。
下面两张为参数部分,红框标注的表示行编号。


从上面两图可以看出,参数起始在第83720行,结束在行,故共有66462行
按照上面的解释,16个相机共有参数9*16=144个
22106个3D点共有参数22106*3=66318个
相加得到144+66318=66462,与行数相等。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/74949.html