cvsba 编译与bundle adjustment 测试

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_15642411/article/details/88015297

sba 是M. Lourakistih提出的稀疏光束法平差,其配置比较麻烦,而cvsba是在opencv上的跨平台,与opencv有很好的接口。

一、下载源码

https://sourceforge.net/projects/cvsba/files/

二、编译

sudo apt-get install liblapack-dev libf2c2-dev 
tar -zxvf cvsba-1.0.0.tgz 
mkdir cvsba-1.0.0.tgz/build
cd cvsba-1.0.0.tgz/build
cmake ..
make
sudo make install

三、bundle adjustment 测试

1、cmakeLists

cmake_minimum_required(VERSION 3.5)
project(cvsba_simple_test)
SET(CMAKE_MODULE_PATH ${CMAKE_INSTALL_PREFIX}/lib/cmake/ /usr/lib/cmake )
#SET(CMAKE_MODULE_PATH ${CMAKE_INSTALL_PREFIX}/lib/cmake/ /usr/local/opencv3.4.3/lib/cmake )
#set(OpenCV_DIR /usr/local/opencv3.4.3/share/OpenCV)
#set(OpenCV_DIR /home/yuancaimaiyi/anaconda3/pkgs/opencv-3.4.1-py36_blas_openblas_200/share/OpenCV)
find_package(OpenCV REQUIRED )
include_directories( ${OpenCV_INCLUDE_DIRS} )
#include_directories( ${OpenCV_INCLUDE_DIRS} )
find_package(cvsba REQUIRED )
#include_directories( ${cvsba_INCLUDE_DIRS} )
#include_directories( ${cvsba_INCLUDE_DIRS} "/usr/local/lib/libcvsba.so" )
add_executable(cvsba_simple_test cvsba_simple_test.cpp)
target_link_libraries(cvsba_simple_test ${OpenCV_LIBS} ${cvsba_LIBS})

这里编译的时候很奇怪,当我设置我安装opencv的位置(opencv3.4.3 /usr/local/opencv3.4.3),make 后始终报错 ,如下
在这里插入图片描述想了很多办法也没有解决。
于是我取消set(OpenCV_DIR /usr/local/opencv3.4.3/share/OpenCV),用find_package直接找,make 后如下
在这里插入图片描述可以看见opencv 出现的位置在anaconda 中(python 安装的位置,版本3.4.1py 安装的opencv 版本)
但是如何调到opencv3.4.3路径下,没有解决,难道opencv 没有安装完整?
2、测试代码如下
github
在这里插入图片描述
这里数据格式

#数据格式
camNumID  mapPointsID visibility  imagePoints  
1              1          1        [1][1]        
2              1          1        [2][1]        
3              1          1        [3][1]       
1              2          1           .
2              2          1           .
3              2          1           .
1              3          1
2              3          1
3              3          0
# 3Dpoints(GCP)
GCPId    gcpcoordinate
1         x ,y,z
2
3
4


参考:cvsba: an OpenCV wrapper for sba library http://www.uco.es/investiga/grupos/ava/node/39/ sba在opencv上的跨平台

猜你喜欢

转载自blog.csdn.net/qq_15642411/article/details/88015297