RealityCapture: Unable to export cameras.csv via CLI

Hi all,

I have a workflow that relies on running the RealityCapture CLI to automate photogrammetry tasks. My PowerShell script watches for new jobs and then calls the RC CLI to add images, import a flight log, align, merge, and then run -exportRegistration to generate a cameras.csv file with the internal/external camera parameters for each image.

This has worked perfectly with RC 1.5.0 and prior versions. The key CLI call looks like:

& 'C:\Program Files\Capturing Reality\RealityCapture\RealityCapture.exe' `
    -addFolder D:\VOLUME\repos\arctic_pipeline_gui\rails_tmp\pipeline_61\frames\ `
    -importFlightLog D:\VOLUME\repos\arctic_pipeline_gui\rails_tmp\pipeline_61\artifacts\flight_analysis\formatted_log.txt `
    -set sfmMergeOnlyComponents=true -align -align -mergeComponents `
    -exportRegistration D:\VOLUME\repos\arctic_pipeline_gui\rails_tmp\pipeline_61\components\cameras.csv

After upgrading to RC 1.5.1, this is now broken.

  • The generated cameras.csv contains only the following line:

    The files Cameras.txt, Images.txt and Points3D.txt are in the same folder.

  • Instead, three new files are created:

    • Cameras.txt

    • Images.txt

    • Points3D.txt

  • These have data, but the format and headers are different from what my pipeline expects.
    For example:

Cameras.txt:

# Camera list with one line of data per camera:
#   CAMERA_ID, MODEL, WIDTH, HEIGHT, PARAMS[]
# Number of cameras: 946
935 SIMPLE_RADIAL 3691 2064 2329.73544973545 1845.5 1032 0

Images.txt:

# Image list with two lines of data per image:
#   IMAGE_ID, QW, QX, QY, QZ, TX, TY, TZ, CAMERA_ID, NAME
#   POINTS2D[] as (X, Y, POINT3D_ID)
# Number of images: 946

Previously, cameras.csv contained lines like:

#name,x,y,alt,heading,pitch,roll,f,px,py,k1,k2,k3,k4,t1,t2
frame_00000.JPG,-3918.697704600167,421.8077992489561,21.41693212464452,93.28240698758604,33.25036050400774,-3.89519140236987,21.12159557587371,1.477210147918977e-003,6.68829115000761e-003,0.1957804261030924,-0.4048390490300829,0.2595367265382005,0,0,0

  • If I run the CLI command manually (as opposed to via the PS script), I get the same issue.

  • If I run the exact same steps in the GUI (by pointing and clicking), it still works and exports the correct classic cameras.csv.

  • I did not change any CLI templates, export settings, or project options.

  • I do not see any new options or warnings in the GUI.

  • The documentation is unclear and may be outdated.


Questions:

  • Did RC 1.5.1 change the default CLI export for -exportRegistration?

  • Is there a way to restore the previous camera parameter export (classic cameras.csv) from the CLI?

  • Is there a new template, export flag, or workflow I should use?

  • Or is this a bug in the new RC version?

Happy to share my script, logs, or test data as needed.

Any help appreciated!

Hello @J_e_t_t

As you are using the command without parameters, then the last exported format is used (in this case it is COLMAP export). You can try to use application reset or you need to use params.xml file in your script as in this post: How to export Registration (the camera) as an Internal/External type via the command line (CLI)

Thanks for the response @OndrejTrhan

This was the solution I was looking for. After exporting the format and using it in the command it worked exactly as expected.