diff --git a/meshroom/aliceVision/ExportImages.py b/meshroom/aliceVision/ExportImages.py index e299a28a91..67f6f2816c 100644 --- a/meshroom/aliceVision/ExportImages.py +++ b/meshroom/aliceVision/ExportImages.py @@ -100,7 +100,7 @@ class ExportImages(desc.AVCommandLineNode): label="Undistorted Images", description="List of undistorted images.", semantic="image", - value="{nodeCacheFolder}/.{outputFileTypeValue}", + value=lambda attr: getUndistortedPath(attr.node.namingMode.value), group="", advanced=True, ), @@ -111,3 +111,14 @@ class ExportImages(desc.AVCommandLineNode): value="{nodeCacheFolder}/sfm.abc", ), ] + +def getUndistortedPath(namingMode): + + replacement = "" + if (namingMode == "viewid"): + replacement = "" + elif (namingMode == "frameid"): + replacement = "" + + return "{nodeCacheFolder}/" + replacement + ".{outputFileTypeValue}" + \ No newline at end of file diff --git a/meshroom/cameraTrackingExperimental.mg b/meshroom/cameraTrackingExperimental.mg index 9a259579ef..0b82f35c85 100644 --- a/meshroom/cameraTrackingExperimental.mg +++ b/meshroom/cameraTrackingExperimental.mg @@ -1,6 +1,6 @@ { "header": { - "releaseVersion": "2025.1.0", + "releaseVersion": "2026.1.0+develop", "fileVersion": "2.0", "nodesVersions": { "ApplyCalibration": "1.0", @@ -11,27 +11,27 @@ "DepthMap": "5.0", "DepthMapFilter": "4.0", "DistortionCalibration": "6.0", - "ExportAnimatedCamera": "2.0", + "ExportAlembic": "1.0", "ExportDistortion": "2.0", - "ExportImages": "1.0", + "ExportImages": "1.1", "FeatureExtraction": "1.3", "FeatureMatching": "2.0", "ImageDetectionPrompt": "0.2", "ImageMatching": "2.0", "ImageMatchingMultiSfM": "1.0", "ImageSegmentationBox": "0.3", - "IntrinsicsTransforming": "1.0", + "IntrinsicsTransforming": "1.1", "KeyframeSelection": "5.0", "MeshDecimate": "1.0", "MeshFiltering": "3.0", "Meshing": "7.0", - "RelativePoseEstimating": "3.0", + "RelativePoseEstimating": "3.1", "ScenePreview": "2.0", "SfMBootStrapping": "4.1", "SfMColorizing": "1.0", - "SfMExpanding": "2.1", + "SfMExpanding": "2.2", "SfMTransfer": "2.1", - "SfMTransform": "3.1", + "SfMTransform": "3.2", "SfMTriangulation": "1.0", "Texturing": "6.0", "TracksBuilding": "1.0", @@ -99,7 +99,7 @@ 219 ], "inputs": { - "input": "{ExportAnimatedCamera_1.input}", + "input": "{SfMColorizing_2.output}", "fileExt": "json", "describerTypes": "{TracksBuilding_2.describerTypes}", "structure": false, @@ -109,6 +109,22 @@ "color": "#4c594c" } }, + "CopyFiles_1": { + "nodeType": "CopyFiles", + "position": [ + 5079, + 119 + ], + "inputs": { + "inputFiles": [ + "{Texturing_1.output}", + "{ScenePreview_1.output}", + "{ExportDistortion_1.output}", + "{ExportAlembic_1.output}", + "{ExportImages_2.output}" + ] + } + }, "DepthMapFilter_1": { "nodeType": "DepthMapFilter", "position": [ @@ -152,15 +168,14 @@ "color": "#302e2e" } }, - "ExportAnimatedCamera_1": { - "nodeType": "ExportAnimatedCamera", + "ExportAlembic_1": { + "nodeType": "ExportAlembic", "position": [ - 3083, - 203 + 3456, + 206 ], "inputs": { - "input": "{SfMColorizing_2.output}", - "exportUndistortedImages": true + "input": "{ExportImages_2.outputSfMData}" }, "internalInputs": { "color": "#80766f" @@ -197,6 +212,21 @@ "color": "#3f3138" } }, + "ExportImages_2": { + "nodeType": "ExportImages", + "position": [ + 3250, + 194 + ], + "inputs": { + "input": "{IntrinsicsTransforming_2.input}", + "target": "{IntrinsicsTransforming_2.output}", + "namingMode": "keep" + }, + "internalInputs": { + "color": "#80766f" + } + }, "FeatureExtraction_1": { "nodeType": "FeatureExtraction", "position": [ @@ -360,6 +390,19 @@ "color": "#3f3138" } }, + "IntrinsicsTransforming_2": { + "nodeType": "IntrinsicsTransforming", + "position": [ + 3050, + 194 + ], + "inputs": { + "input": "{SfMColorizing_2.output}" + }, + "internalInputs": { + "color": "#80766f" + } + }, "KeyframeSelection_1": { "nodeType": "KeyframeSelection", "position": [ @@ -421,21 +464,6 @@ "color": "#3f3138" } }, - "CopyFiles_1": { - "nodeType": "CopyFiles", - "position": [ - 5079, - 119 - ], - "inputs": { - "inputFiles": [ - "{ExportAnimatedCamera_1.output}", - "{Texturing_1.output}", - "{ScenePreview_1.output}", - "{ExportDistortion_1.output}" - ] - } - }, "RelativePoseEstimating_1": { "nodeType": "RelativePoseEstimating", "position": [ @@ -462,7 +490,7 @@ "inputs": { "cameras": "{ConvertSfMFormat_1.output}", "model": "{MeshDecimate_1.output}", - "undistortedImages": "{ExportAnimatedCamera_1.outputUndistorted}", + "undistortedImages": "{ExportImages_2.output}", "masks": "{ImageSegmentationBox_1.output}" }, "internalInputs": { diff --git a/meshroom/cameraTrackingWithoutCalibrationExperimental.mg b/meshroom/cameraTrackingWithoutCalibrationExperimental.mg index 038450b492..4eb6be67b1 100644 --- a/meshroom/cameraTrackingWithoutCalibrationExperimental.mg +++ b/meshroom/cameraTrackingWithoutCalibrationExperimental.mg @@ -1,6 +1,6 @@ { "header": { - "releaseVersion": "2025.1.0", + "releaseVersion": "2026.1.0+develop", "fileVersion": "2.0", "nodesVersions": { "ApplyCalibration": "1.0", @@ -10,27 +10,27 @@ "CopyFiles": "1.3", "DepthMap": "5.0", "DepthMapFilter": "4.0", - "ExportAnimatedCamera": "2.0", + "ExportAlembic": "1.0", "ExportDistortion": "2.0", - "ExportImages": "1.0", + "ExportImages": "1.1", "FeatureExtraction": "1.3", "FeatureMatching": "2.0", "ImageDetectionPrompt": "0.2", "ImageMatching": "2.0", "ImageMatchingMultiSfM": "1.0", "ImageSegmentationBox": "0.3", - "IntrinsicsTransforming": "1.0", + "IntrinsicsTransforming": "1.1", "KeyframeSelection": "5.0", "MeshDecimate": "1.0", "MeshFiltering": "3.0", "Meshing": "7.0", - "RelativePoseEstimating": "3.0", + "RelativePoseEstimating": "3.1", "ScenePreview": "2.0", "SfMBootStrapping": "4.1", "SfMColorizing": "1.0", - "SfMExpanding": "2.1", + "SfMExpanding": "2.2", "SfMTransfer": "2.1", - "SfMTransform": "3.1", + "SfMTransform": "3.2", "SfMTriangulation": "1.0", "Texturing": "6.0", "TracksBuilding": "1.0", @@ -79,11 +79,11 @@ "ConvertSfMFormat_1": { "nodeType": "ConvertSfMFormat", "position": [ - 4245, + 4585, 200 ], "inputs": { - "input": "{ExportAnimatedCamera_1.input}", + "input": "{SfMColorizing_2.output}", "fileExt": "json", "describerTypes": "{TracksBuilding_2.describerTypes}", "structure": false, @@ -93,6 +93,22 @@ "color": "#4c594c" } }, + "CopyFiles_1": { + "nodeType": "CopyFiles", + "position": [ + 5228, + 100 + ], + "inputs": { + "inputFiles": [ + "{Texturing_1.output}", + "{ScenePreview_1.output}", + "{ExportDistortion_1.output}", + "{ExportAlembic_1.output}", + "{ExportImages_2.output}" + ] + } + }, "DepthMapFilter_1": { "nodeType": "DepthMapFilter", "position": [ @@ -122,15 +138,14 @@ "color": "#3f3138" } }, - "ExportAnimatedCamera_1": { - "nodeType": "ExportAnimatedCamera", + "ExportAlembic_1": { + "nodeType": "ExportAlembic", "position": [ - 3216, - 198 + 3465.0, + 191.0 ], "inputs": { - "input": "{SfMColorizing_2.output}", - "exportUndistortedImages": true + "input": "{ExportImages_2.outputSfMData}" }, "internalInputs": { "color": "#80766f" @@ -165,6 +180,21 @@ "color": "#3f3138" } }, + "ExportImages_2": { + "nodeType": "ExportImages", + "position": [ + 3259.0, + 179.0 + ], + "inputs": { + "input": "{IntrinsicsTransforming_2.input}", + "target": "{IntrinsicsTransforming_2.output}", + "namingMode": "keep" + }, + "internalInputs": { + "color": "#80766f" + } + }, "FeatureExtraction_1": { "nodeType": "FeatureExtraction", "position": [ @@ -328,6 +358,19 @@ "color": "#3f3138" } }, + "IntrinsicsTransforming_2": { + "nodeType": "IntrinsicsTransforming", + "position": [ + 3059.0, + 179.0 + ], + "inputs": { + "input": "{SfMColorizing_2.output}" + }, + "internalInputs": { + "color": "#80766f" + } + }, "KeyframeSelection_1": { "nodeType": "KeyframeSelection", "position": [ @@ -389,21 +432,6 @@ "color": "#3f3138" } }, - "CopyFiles_1": { - "nodeType": "CopyFiles", - "position": [ - 5228, - 100 - ], - "inputs": { - "inputFiles": [ - "{ExportAnimatedCamera_1.output}", - "{Texturing_1.output}", - "{ScenePreview_1.output}", - "{ExportDistortion_1.output}" - ] - } - }, "RelativePoseEstimating_1": { "nodeType": "RelativePoseEstimating", "position": [ @@ -430,7 +458,7 @@ "inputs": { "cameras": "{ConvertSfMFormat_1.output}", "model": "{MeshDecimate_1.output}", - "undistortedImages": "{ExportAnimatedCamera_1.outputUndistorted}", + "undistortedImages": "{ExportImages_2.output}", "masks": "{ImageSegmentationBox_1.output}" }, "internalInputs": { diff --git a/meshroom/photogrammetryAndCameraTrackingExperimental.mg b/meshroom/photogrammetryAndCameraTrackingExperimental.mg index 73b45b2bd9..4fa78b7528 100644 --- a/meshroom/photogrammetryAndCameraTrackingExperimental.mg +++ b/meshroom/photogrammetryAndCameraTrackingExperimental.mg @@ -1,6 +1,6 @@ { "header": { - "releaseVersion": "2025.1.0", + "releaseVersion": "2026.1.0+develop", "fileVersion": "2.0", "nodesVersions": { "ApplyCalibration": "1.0", @@ -11,27 +11,27 @@ "DepthMap": "5.0", "DepthMapFilter": "4.0", "DistortionCalibration": "6.0", - "ExportAnimatedCamera": "2.0", + "ExportAlembic": "1.0", "ExportDistortion": "2.0", - "ExportImages": "1.0", + "ExportImages": "1.1", "FeatureExtraction": "1.3", "FeatureMatching": "2.0", "ImageDetectionPrompt": "0.2", "ImageMatching": "2.0", "ImageMatchingMultiSfM": "1.0", "ImageSegmentationBox": "0.3", - "IntrinsicsTransforming": "1.0", + "IntrinsicsTransforming": "1.1", "KeyframeSelection": "5.0", "MeshDecimate": "1.0", "MeshFiltering": "3.0", "Meshing": "7.0", - "RelativePoseEstimating": "3.0", + "RelativePoseEstimating": "3.1", "ScenePreview": "2.0", "SfMBootStrapping": "4.1", "SfMColorizing": "1.0", - "SfMExpanding": "2.1", + "SfMExpanding": "2.2", "SfMTransfer": "2.1", - "SfMTransform": "3.1", + "SfMTransform": "3.2", "Texturing": "6.0", "TracksBuilding": "1.0", "TracksMerging": "3.0" @@ -107,11 +107,11 @@ "ConvertSfMFormat_1": { "nodeType": "ConvertSfMFormat", "position": [ - 4333, - 201 + 4802, + 171 ], "inputs": { - "input": "{ExportAnimatedCamera_1.input}", + "input": "{SfMTransfer_1.output}", "fileExt": "sfm", "describerTypes": "{TracksBuilding_3.describerTypes}", "structure": false, @@ -121,6 +121,22 @@ "color": "#4c594c" } }, + "CopyFiles_1": { + "nodeType": "CopyFiles", + "position": [ + 5368, + -145 + ], + "inputs": { + "inputFiles": [ + "{ScenePreview_1.output}", + "{ExportDistortion_1.output}", + "{Texturing_2.output}", + "{ExportImages_2.output}", + "{ExportAlembic_1.output}" + ] + } + }, "DepthMapFilter_2": { "nodeType": "DepthMapFilter", "position": [ @@ -163,15 +179,14 @@ "color": "#302e2e" } }, - "ExportAnimatedCamera_1": { - "nodeType": "ExportAnimatedCamera", + "ExportAlembic_1": { + "nodeType": "ExportAlembic", "position": [ - 4126, - 158 + 4522.0, + 218.0 ], "inputs": { - "input": "{SfMTransfer_1.output}", - "exportUndistortedImages": true + "input": "{ExportImages_2.outputSfMData}" }, "internalInputs": { "color": "#80766f" @@ -205,6 +220,21 @@ "color": "#384a55" } }, + "ExportImages_2": { + "nodeType": "ExportImages", + "position": [ + 4316.0, + 206.0 + ], + "inputs": { + "input": "{IntrinsicsTransforming_2.input}", + "target": "{IntrinsicsTransforming_2.output}", + "namingMode": "keep" + }, + "internalInputs": { + "color": "#80766f" + } + }, "FeatureExtraction_1": { "nodeType": "FeatureExtraction", "position": [ @@ -447,6 +477,19 @@ "color": "#384a55" } }, + "IntrinsicsTransforming_2": { + "nodeType": "IntrinsicsTransforming", + "position": [ + 4116.0, + 206.0 + ], + "inputs": { + "input": "{SfMTransfer_1.output}" + }, + "internalInputs": { + "color": "#80766f" + } + }, "KeyframeSelection_1": { "nodeType": "KeyframeSelection", "position": [ @@ -503,21 +546,6 @@ "color": "#384a55" } }, - "CopyFiles_1": { - "nodeType": "CopyFiles", - "position": [ - 4725, - -186 - ], - "inputs": { - "inputFiles": [ - "{ExportAnimatedCamera_1.output}", - "{ScenePreview_1.output}", - "{ExportDistortion_1.output}", - "{Texturing_2.output}" - ] - } - }, "RelativePoseEstimating_1": { "nodeType": "RelativePoseEstimating", "position": [ @@ -537,13 +565,13 @@ "ScenePreview_1": { "nodeType": "ScenePreview", "position": [ - 4526, - 158 + 4991, + 150 ], "inputs": { "cameras": "{ConvertSfMFormat_1.output}", "model": "{MeshDecimate_1.output}", - "undistortedImages": "{ExportAnimatedCamera_1.outputUndistorted}", + "undistortedImages": "{ExportImages_2.output}", "masks": "{ImageSegmentationBox_2.output}" }, "internalInputs": {