Registration export: Allowing exporting rcinfo companion especially for `Shifted Project Output`

Thanks for the great RC 1.5 release, really impressive so huge congrats to the team!
The colmap export is a great addition. When exporting colmap registration, on top of Grid Plane and Same as XMP options available for Coordinate System, georef’ed projects can also be exported with CRS Shifted Project Output and Project Output.

Unfortunately, like for all registration methods, it is not possible to export the companion rcinfo when exporting Registration - to replicate how one can export an rcinfo xml when exporting Models. It would be great to add these rcinfo registration exports.

This is especially useful since there is no easy way to get transform from Project Grid Plane to Project Coordinate System. The Shifted Project Output workflow + all the information contained in the rcinfo xml -> Model -> transformToModel is the only possible link to transform from shifted project output to georeferenced. Potential workaround is to select Project Output with a user-defined, known, shift, but makes the flow less automatic or requires an additional step to guess the best (eg rcbox/scene center) shift to avoid floating-point precision errors due to large coordinate.

Example rcinfo:


<Model globalCoordinateSystem="+proj=utm +zone=33 +datum=WGS84 +units=m +no_defs"
    globalCoordinateSystemName="epsg:32633 - WGS 84 / UTM zone 33N" exportCoordinateSystemType="2">
    <globalCoordinateSystemWkt>
        PROJCS["WGS_1984_UTM_Zone_33N",GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137.0,298.257223563]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",15.0],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0.0],UNIT["Meter",1.0]]</globalCoordinateSystemWkt>
    <transformToModel>1 0 0 288782.457882275 0 1 0 4642050.09440441 0 0 1 72.2633672384545 0 0 0 1</transformToModel>
    <Header magic="5786959" version="1" />
</Model>
<ModelExport exportBinary="1" exportInfoFile="1" exportVertices="1" exportVertexColors="2"
    exportVertexNormals="1" exportTriangles="1" exportTriangleStrips="0"
    meshColor="4294967295" tileType="1" exportTextureAlpha="0" exportToOneTexture="0"
    embedTextures="0" shrinkTextures="0" oneTextureMaxSide="8192" oneTextureUsePow2TexSide="1"
    exportCoordinateSystemType="2" settingsAnchor="0 0 0" settingsRotation="0 0 0"
    settingsScalex="1" settingsScaley="1" settingsScalez="1" normalSpace="2"
    normalRange="0" normalFlip="0 0 0" formatAndVersionUID="glb 000 "
    exportModelByParts="0" exportRandomPartColor="0" exportCameras="0"
    exportCamerasAsModelPart="0" exportMaterials="0" numberAsciiFormatting="5"
    authorComment="" exportedLayerCount="1">
    <Header magic="5786949" version="5" />
    <Layer0 type="1" textureLayerIndex="0"
        textureWicContainerFormat="{19E4A5AA-5662-4FC5-A0C0-1758028E1057}"
        textureWicPixelFormat="{6FDDC324-4E03-4BFE-B185-3D77768DC90C}" textureExtension="jpeg" />
</ModelExport>
<CalibrationExportSettings undistortImagesWicFormat="{1B7CFAF4-713F-473C-BBCD-6137425FAEAF}"
    undistortImagesWicPixlFormat="{6FDDC324-4E03-4BFE-B185-3D77768DC90F}"
    undistortDownscaleFactor="0" undistortNamingConvention="0" undistFitMode="0"
    undistResMode="0" undistPrincipalMode="0" undistCutOut="0" undistMaxPixels="0"
    undistBackColor="0" undistortCustomWidth="0" undistortCustomHeight="0"
    undistortCalibration="0" undistortImagesExtension="png" undistortImageNameSuffix=""
    undistortImageLayerType="0" exportUndistorted="0" exportImages="0"
    exportDisabled="0" />

Hello Jo,
thank you for your positive feedback.
I am not sure if this will be implemented, as none of the registration exports doesn’t have such option. The RCINFO file is basically a support file to import the exported model back into RealityCapture properly.
But I will create a feature request. Thank you for your ideas.

1 Like

Thanks for getting back. At least the XML Model children and attributes is useful information that could accompany a registration export via a companion file, namely CRS proj4 string and transformToModel matrix4. The export options can also store valuable information when parsing automatically exported registration, but this is less important than the transform, since this would be the only way to detect georeferencing transform from shifted project output to world coords.