Block Bundle Adjustment Flow
Asked Answered
C

1

8

I am working on bundle block adjustment for finding

  • X,Y,Z values of image points
  • Corrected values of camera characteristics(extrinsic parameters etc..)
  • Corrected values of measurements

In my opinion BB Adjustment process is done by following these steps(camera intrinsics are given):

  1. Gather tie points( x,y for each image pair ) and ground control points( x,y and related X,Y,Z positions for each image )
  2. Calculate initial extrinsic parameters( camera pose ) for each view
  3. Calculate each tie point's initial real world position by using camera pose
  4. Execute sparse bundle adjustment step by using all these initial values and other parameters as inputs
  5. Use output of sparse bundle adjustment as accurate results of real world position, extrinsic characteristics and measurements.

One thing i want to ask is if that flow is correct. There are lots of methods for structure and motion estimation from views so i can not be so sure about that.

As i search through various resources i found that there are libraries that does each part of the block bundle adjustment operation. For each step:

  1. Image processing libraries like OpenCV may be used for automatic tie point collection
  2. cvFindExtrinsicCameraParams2 may be used for space resection ( but it requires 4 points, for block bundle adjustment it is mentioned that 3 Ground control points are enough for each view. Should i use another method like pose estimation from stereo views? )
  3. By using triangulation and projection methods of OpenCV, real world positions may be calculated
  4. SBA or SSBA is suitable for this operation
  5. N/A

One another question is that, if previously mentioned flow is right, is matched libraries are enough for implementing entire flow?( May be better advises for each part )

I am newbie in this field, so i appreciate any help in this subject, Thanks...

Curie answered 7/3, 2012 at 11:53 Comment(5)
You say you are newbie in this field ?Stowaway
Yes, IMHO i am newbie in this fieldCurie
Quite interesting ,there is no answer...Curie
It's a research level question. It will be hard to find an answer until someone has already worked on what you are asking. As you narrow down the scope of the question, harder it will become to find an answer.Stowaway
You are right, but actually it is something that can be answered. I need to wait for the answer i think...Curie
P
3

You have described the default approach to stereo photogrammetry. Rather than using computer vision terms (extrinsic, intrinsic) I suggest you search using the terms interior- and exterior-orientation. This is a good approach if you have finite numbers of overlapping images and it has the benefit of some well defined error estimation methods.
Here is some basic math:

http://itee.uq.edu.au/~elec4600/elec4600_lectures/1perpage/uq1.pdf http://itee.uq.edu.au/~elec4600/elec4600_lectures/1perpage/uq2.pdf

.2. cvFindExtrinsicCameraParams2 may be used for space resection ( but it requires 4 points, for block bundle adjustment it is mentioned that 3 Ground control points are enough for each view.

The reason four control points are required by cvFindExtrinsicCameraParams2 is that the equations are under-determined with only three. If you don't have enough control, you might have to use an alternate approach (or sensor) to estimate the initial camera pose vector.

Paynter answered 27/3, 2013 at 22:56 Comment(2)
Thanks for the info and the slides. This is the one and the most closest answer to my question.Curie
The slides are not longer available. Can I find them anywhere else?Drusilladrusus

© 2022 - 2024 — McMap. All rights reserved.