文章主要贡献:1> 一种输入image直接回归absolute pose的网络
2> 可支持dense和sparse的depth输入,增加pose的精度(depth只在train的时候使用,
test的时候only输入image)
3> 在indoor和outdoor上进行了实验,并且该网络可以很方便的嵌套到别的网络
-
test时候整体网络框架:
![](https://i-blog.csdnimg.cn/blog_migrate/225ad02aea076350f041b61e7a147a99.png)
核心思想:输入一张image,中间经过resnet50,然后增加pooling层,fc层分别回归translation和rotation得到最终的6dof的pose,
-
train的时候整体网络架构
![](https://i-blog.csdnimg.cn/blog_migrate/db9ea8290d08a54df86d5f02b18d8114.png)
2.1 输入的是两张图It和It-1(相邻的两张图),然后使用了三种loss去训练test的网络(蓝框内部网络同teset,就是要train的参数)。
2.2 Euclidean distant constraint :LD,分别是两张图的pose loss
(x表示t,q表示r)
![](https://i-blog.csdnimg.cn/blog_migrate/1cac9220126ce7d97693ecf41d61f6f8.png)
2.3 Photometric error constraint :
,就是slam中的像素误差(因此这里光照等等不能变化过大)
![](https://i-blog.csdnimg.cn/blog_migrate/58e6e034c86fefc79ba7dbb2dc299b08.png)
M是一个mask,只使用双方都是有depth的像素(没有depth没办法warped过来)
2.4 Structural similarity constraint定义结构相似性:
![](https://i-blog.csdnimg.cn/blog_migrate/474dadaf8ccc1a5c21ab6e38a9c59918.png)
![](https://i-blog.csdnimg.cn/blog_migrate/e2bca9ccb0612e233f56f1c3f5fc0498.png)
这里就是depth map那条线????这里不是太清楚,,是说类似photometric那样将depth warped过去?然后计算误差?
最终loss:
![](https://i-blog.csdnimg.cn/blog_migrate/a1daa760d8375edb6ed47e5f3b83e9df.png)
实验结果:
![](https://i-blog.csdnimg.cn/blog_migrate/b5feeec25af882099e349e4cbb08d6c9.png)
比较别的直接回归pose的网络要好很多。
分析:网络比别的网络好的原因应该是在train的时候使用了一些别的约束,这样防止posenet那样直接使用一个大的vector回归pose可能会过拟合。
而在本网络train的时候首先增加了relativate pose的约束,其次使用depth信息一定程度上说是学习structure信息。
备注:
-
相邻图像之间的像素映射关系:
![](https://i-blog.csdnimg.cn/blog_migrate/c4081a6fa3f8ef8f2b63624c44793353.png)