Forum

Author Topic: Can you position cameras according to their positions in physical (real) world?  (Read 7869 times)

smihic

  • Newbie
  • *
  • Posts: 31
    • View Profile
Hi,
 company for we are working uses a fairly standard scanning solution consisting of several camera attached to several pods forming a circle around the subject (a human). They are using PhotoScan 0.9 version at their facilities.

We are trying to automate the whole workflow of PhotoScan using its scripting API.

Is it possible to use dimensions from the physical world (camera position, pod positions etc.) for camera positioning in PhotoScan (using python scripting) so we can enhance alignment phase? Does this can speed up the alignment process and result in better alignment quality?

We do not have geographic information from photos (cameras are without GPS) that are used for 3D model generation.

Thanks for your help and comments.

Alexey Pasumansky

  • Agisoft Technical Support
  • Hero Member
  • *****
  • Posts: 15173
    • View Profile
Hello smihic,

In principle, it is possible to input camera center positions, camera orientations and intrinsic parameters using Python (similar to Import Cameras option), but in case this data is not precise you will get alignment problems.
Best regards,
Alexey Pasumansky,
Agisoft LLC

smihic

  • Newbie
  • *
  • Posts: 31
    • View Profile
Thank you very much, Alexey.

Then what would you recommend to get accurate alignments in our case? We need to be able to check if cameras are aligned well (and our idea was to use that we know their positions in real world) to make the script work in automated manner.

In addition, if I understood correctly, camera coordinates are in local chunk coordinate system. This coordinate system is logical and has no relation with the real world? I have found in forums that local coordinate system code (I think for exporting of a model):

crs = PhotoScan.CoordinateSystem('LOCAL_CS["Local CS",LOCAL_DATUM["Local Datum",0],UNIT["metre",1]]')

Does this mean that local coordinate system can be set in units of meters?

Alexey Pasumansky

  • Agisoft Technical Support
  • Hero Member
  • *****
  • Posts: 15173
    • View Profile
Hello smihic,

You can use good object for the first alignment, then export cameras to .xml format and use it to process next projects (using import cameras option), providing that camera relative positions do not change as well as intrinsic orientation.
Best regards,
Alexey Pasumansky,
Agisoft LLC

smihic

  • Newbie
  • *
  • Posts: 31
    • View Profile
Thank you so much.

Could you be little specific what do you mean by "good" object? I presume that we need object with rich texture of some standard dimensions?

Alexey Pasumansky

  • Agisoft Technical Support
  • Hero Member
  • *****
  • Posts: 15173
    • View Profile
Yes, something that have dimensions similar to the common objects of interest (person?) and has irregular texture pattern. In principle it could be a mannequin that is randomly painted or colored using color sprays. But you need to make sure at first, that PhotoScan really finds a lot of feature points on it.
Best regards,
Alexey Pasumansky,
Agisoft LLC

smihic

  • Newbie
  • *
  • Posts: 31
    • View Profile
Thank you. We will try out your suggestion

Alexey Pasumansky

  • Agisoft Technical Support
  • Hero Member
  • *****
  • Posts: 15173
    • View Profile
In principle, it could be even another person, dressed in jeans or cloths of similar "good" material.
Best regards,
Alexey Pasumansky,
Agisoft LLC