Forum

Author Topic: The meaning of accuracy of rotation and translation on referencing cameras  (Read 1543 times)

Adsh

  • Newbie
  • *
  • Posts: 9
    • View Profile
I am use the following part of code for adding the reference for camera alignment. What I am not sure is the definition of the location_accuracy and the rotation_accuracy. Does it mean the feasible range of the solution should be within the giving reference location (+- 0.1) for example? If so then what is the unit of it? it means percentage or millimeter?


for cam in chunk.cameras:
            ref = cam.reference
            ref.location = cam.transform.translation()
            ref.location_accuracy = (0.1, 0.1, 0.1)
            ref.location_enabled = True
            ref.rotation = Metashape.Utils.mat2ypr(cam.transform.rotation())
            ref.rotation_accuracy = (5, 5, 5)
            ref.rotation_enabled = True

Thanks a lot !  :)

Paulo

  • Hero Member
  • *****
  • Posts: 1319
    • View Profile
Adsh,

the reference location accuracy will give the estimated accuracy for each camera. The higher the accuracy, then the more tightly constrained will be camera position  during adjustment. For example a camera with accuracy 0.1 will have a weight in adjustment 100 times higher than camera with accuracy 1.

By the way, I think that location_accuracy units are in meters and rotation_accuracy in degrees....
« Last Edit: June 10, 2022, 08:30:01 PM by Paulo »
Best Regards,
Paul Pelletier,
Surveyor

Adsh

  • Newbie
  • *
  • Posts: 9
    • View Profile
Paulo,

Thanks very much! So basically the accuracy serves as an inverse weighting on the position constraint during the bundle adjustment? The unit don't really matters. For a specified system, the best way is to do experiments for finding the suitable number? Or could you share more information on how to define the such accuracy?

Thanks in advance! :)

Paulo

  • Hero Member
  • *****
  • Posts: 1319
    • View Profile
No problem Adsh,

for camera reference location accuracy. it depends on what type of on board GNSS positioning system you have on your image capture platform. If it is just normal code GNSS then accuracy is at the meter level (default is 10 m). If it is a survey level GNSS with PPK or RTK corrections then it is at the cm level like for example
Code: [Select]
ref.location.accuracy = Metashape.Vector((0.05,0.05,0.1))here the camera reference location accuracy is set at 0.05 m in XY and 0.10 m in Z
« Last Edit: June 10, 2022, 09:17:56 PM by Paulo »
Best Regards,
Paul Pelletier,
Surveyor