如何使用sba(稀疏束调整)

时间:2016-04-27 08:14:13

标签: c++ computer-vision

我想用sba做束调整任务,我想使用sba-1.6(http://users.ics.forth.gr/~lourakis/sba/)。但是用户手册并未准确说明如何使用它。而且我有点困惑。 例如,我想使用这个函数sba_mot_levmar,它有一个参数p我不明白它是什么。这里的问题是所提供的例子使得p中的旋转部分为0.所以这是p? 在调用此函数后,p?

中的内容是什么
int sba_mot_levmar(
const int n,   /* number of points */
const int m,   /* number of images */
const int mcon,
char *vmask,  
double *p,    /* initial parameter vector p0: (a1, ..., am).
               * aj are the image j parameters, size m*cnp */
const int cnp,/* number of parameters for ONE camera; e.g. 6 for Euclidean cameras */
double *x,    
double *covx, 
const int mnp,
void (*proj)(int j, int i, double *aj, double *xij, void *adata),

void (*projac)(int j, int i, double *aj, double *Aij, void *adata),

void *adata,      

const int itmax,   
const double opts[SBA_OPTSSZ]
double info[SBA_INFOSZ]
)

1 个答案:

答案 0 :(得分:1)

有关如何使用 sba Ros 的好教程,但我不确定它是否是Lourakis实现:

- http://wiki.ros.org/sba/Tutorials/IntroductionToSBA

它解释了一个例子,最近我在python中找到了它的包装器(如果你不关心所使用的语言):

- https://pypi.org/project/sba/

我相信这些比你提到的直接方式更容易使用和运行