Hello Ceres,
I'm wandering inside openMVG's bundle adjustment code and looking for advice how to add information about ground control point accuracy for the adjustment weighting.
At the moment openMVG calculates 2d pixel residuals from observed image coordinates and projected GCPs on the image plane and weights them with an arbitrary value of 20.
I know that my GCPs' tachymeter measurement standard deviations for XYZ are ~3mm. I was thinking if I could transform my 3d variance information to 2d pixel values and weight the residuals with this information. But then I need the block's Jacobian for this calculation (
https://stackoverflow.com/questions/49239473/how-to-project-3d-covariance-matrix-to-a-given-image-plane-pose)? Is this possible to obtain some how from auto-differentiated cost function?
I was also thinking that maybe I need to change the whole cost function from dealing with pixels residuals to 3d by calculating the difference between GCPs and triangulated GCPs' image observations and then weighting them. Would this make more sense?
Sincerelly,
Niko