Meshroom/meshroom/pipelines/cameraTracking.mg
2024-09-25 18:43:17 +02:00

522 lines
No EOL
16 KiB
Text

{
"header": {
"releaseVersion": "2024.1.0-develop",
"fileVersion": "2.0",
"template": true,
"nodesVersions": {
"ApplyCalibration": "1.0",
"CameraInit": "11.0",
"CheckerboardDetection": "1.0",
"ConvertSfMFormat": "2.0",
"DepthMap": "5.0",
"DepthMapFilter": "4.0",
"DistortionCalibration": "5.0",
"ExportAnimatedCamera": "2.0",
"ExportDistortion": "1.0",
"FeatureExtraction": "1.3",
"FeatureMatching": "2.0",
"ImageMatching": "2.0",
"ImageMatchingMultiSfM": "1.0",
"ImageSegmentationPrompt": "0.1",
"KeyframeSelection": "5.0",
"MeshDecimate": "1.0",
"MeshFiltering": "3.0",
"Meshing": "7.0",
"PrepareDenseScene": "3.1",
"Publish": "1.3",
"ScenePreview": "2.0",
"SfMTransfer": "2.1",
"SfMTriangulation": "1.0",
"StructureFromMotion": "3.3",
"Texturing": "6.0"
}
},
"graph": {
"ApplyCalibration_1": {
"nodeType": "ApplyCalibration",
"position": [
0,
0
],
"inputs": {
"input": "{CameraInit_1.output}",
"calibration": "{DistortionCalibration_1.output}"
},
"internalInputs": {
"color": "#575963"
}
},
"CameraInit_1": {
"nodeType": "CameraInit",
"position": [
-200,
0
],
"inputs": {},
"internalInputs": {
"color": "#575963"
}
},
"CameraInit_2": {
"nodeType": "CameraInit",
"position": [
-600,
-160
],
"inputs": {},
"internalInputs": {
"label": "CameraInitLensGrid",
"color": "#302e2e"
}
},
"CheckerboardDetection_1": {
"nodeType": "CheckerboardDetection",
"position": [
-400,
-160
],
"inputs": {
"input": "{CameraInit_2.output}",
"useNestedGrids": true,
"exportDebugImages": true
},
"internalInputs": {
"color": "#302e2e"
}
},
"ConvertSfMFormat_1": {
"nodeType": "ConvertSfMFormat",
"position": [
3000,
200
],
"inputs": {
"input": "{ExportAnimatedCamera_1.input}",
"fileExt": "json",
"describerTypes": "{StructureFromMotion_1.describerTypes}",
"structure": false,
"observations": false
},
"internalInputs": {
"color": "#4c594c"
}
},
"DepthMapFilter_1": {
"nodeType": "DepthMapFilter",
"position": [
2400,
0
],
"inputs": {
"input": "{DepthMap_1.input}",
"depthMapsFolder": "{DepthMap_1.output}"
},
"internalInputs": {
"color": "#3f3138"
}
},
"DepthMap_1": {
"nodeType": "DepthMap",
"position": [
2200,
0
],
"inputs": {
"input": "{PrepareDenseScene_1.input}",
"imagesFolder": "{PrepareDenseScene_1.output}",
"downscale": 1
},
"internalInputs": {
"color": "#3f3138"
}
},
"DistortionCalibration_1": {
"nodeType": "DistortionCalibration",
"position": [
-200,
-160
],
"inputs": {
"input": "{CheckerboardDetection_1.input}",
"checkerboards": "{CheckerboardDetection_1.output}"
},
"internalInputs": {
"color": "#302e2e"
}
},
"ExportAnimatedCamera_1": {
"nodeType": "ExportAnimatedCamera",
"position": [
1600,
200
],
"inputs": {
"input": "{StructureFromMotion_1.output}",
"exportUndistortedImages": true
},
"internalInputs": {
"color": "#80766f"
}
},
"ExportDistortion_1": {
"nodeType": "ExportDistortion",
"position": [
0,
-160
],
"inputs": {
"input": "{DistortionCalibration_1.output}"
},
"internalInputs": {
"color": "#302e2e"
}
},
"FeatureExtraction_1": {
"nodeType": "FeatureExtraction",
"position": [
200,
200
],
"inputs": {
"input": "{ApplyCalibration_1.output}",
"masksFolder": "{ImageSegmentationPrompt_1.output}",
"maskExtension": "exr"
},
"internalInputs": {
"color": "#575963"
}
},
"FeatureMatching_1": {
"nodeType": "FeatureMatching",
"position": [
600,
0
],
"inputs": {
"input": "{ImageMatching_1.input}",
"featuresFolders": "{ImageMatching_1.featuresFolders}",
"imagePairsList": "{ImageMatching_1.output}",
"describerTypes": "{FeatureExtraction_1.describerTypes}"
},
"internalInputs": {
"label": "FeatureMatchingKeyframes",
"color": "#575963"
}
},
"FeatureMatching_2": {
"nodeType": "FeatureMatching",
"position": [
1200,
360
],
"inputs": {
"input": "{ImageMatching_2.input}",
"featuresFolders": "{ImageMatching_2.featuresFolders}",
"imagePairsList": "{ImageMatching_2.output}"
},
"internalInputs": {
"label": "FeatureMatchingAllFrames",
"color": "#80766f"
}
},
"FeatureMatching_3": {
"nodeType": "FeatureMatching",
"position": [
1200,
200
],
"inputs": {
"input": "{ImageMatchingMultiSfM_1.outputCombinedSfM}",
"featuresFolders": "{ImageMatchingMultiSfM_1.featuresFolders}",
"imagePairsList": "{ImageMatchingMultiSfM_1.output}",
"describerTypes": "{FeatureExtraction_1.describerTypes}"
},
"internalInputs": {
"label": "FeatureMatchingFramesToKeyframes",
"color": "#80766f"
}
},
"ImageMatchingMultiSfM_1": {
"nodeType": "ImageMatchingMultiSfM",
"position": [
1000,
200
],
"inputs": {
"input": "{KeyframeSelection_1.outputSfMDataFrames}",
"inputB": "{StructureFromMotion_2.output}",
"featuresFolders": [
"{FeatureExtraction_1.output}"
],
"method": "VocabularyTree",
"matchingMode": "a/b",
"nbMatches": 20
},
"internalInputs": {
"color": "#80766f"
}
},
"ImageMatching_1": {
"nodeType": "ImageMatching",
"position": [
400,
0
],
"inputs": {
"input": "{KeyframeSelection_1.outputSfMDataKeyframes}",
"featuresFolders": [
"{FeatureExtraction_1.output}"
],
"method": "Exhaustive"
},
"internalInputs": {
"label": "ImageMatchingKeyframes",
"color": "#575963"
}
},
"ImageMatching_2": {
"nodeType": "ImageMatching",
"position": [
1000,
360
],
"inputs": {
"input": "{ApplyCalibration_1.output}",
"featuresFolders": [
"{FeatureExtraction_1.output}"
],
"method": "Sequential",
"nbNeighbors": 20
},
"internalInputs": {
"color": "#80766f"
}
},
"ImageSegmentationPrompt_1": {
"nodeType": "ImageSegmentationPrompt",
"position": [
0,
200
],
"inputs": {
"input": "{CameraInit_1.output}",
"maskInvert": true,
"keepFilename": true
},
"internalInputs": {
"color": "#575963"
}
},
"KeyframeSelection_1": {
"nodeType": "KeyframeSelection",
"position": [
200,
0
],
"inputs": {
"inputPaths": [
"{ApplyCalibration_1.output}"
],
"maskPaths": [
"{ImageSegmentationPrompt_1.output}"
]
},
"internalInputs": {
"color": "#575963"
}
},
"MeshDecimate_1": {
"nodeType": "MeshDecimate",
"position": [
3000,
0
],
"inputs": {
"input": "{MeshFiltering_1.outputMesh}",
"simplificationFactor": 0.05
},
"internalInputs": {
"color": "#3f3138"
}
},
"MeshFiltering_1": {
"nodeType": "MeshFiltering",
"position": [
2800,
0
],
"inputs": {
"inputMesh": "{Meshing_1.outputMesh}",
"filterLargeTrianglesFactor": 10.0
},
"internalInputs": {
"color": "#3f3138"
}
},
"Meshing_1": {
"nodeType": "Meshing",
"position": [
2600,
0
],
"inputs": {
"input": "{DepthMapFilter_1.input}",
"depthMapsFolder": "{DepthMapFilter_1.output}",
"estimateSpaceFromSfM": false,
"minStep": 1,
"fullWeight": 10.0,
"saveRawDensePointCloud": true
},
"internalInputs": {
"color": "#3f3138"
}
},
"PrepareDenseScene_1": {
"nodeType": "PrepareDenseScene",
"position": [
2000,
0
],
"inputs": {
"input": "{SfMTriangulation_1.output}",
"masksFolders": [
"{ImageSegmentationPrompt_1.output}"
],
"maskExtension": "exr"
},
"internalInputs": {
"color": "#3f3138"
}
},
"Publish_1": {
"nodeType": "Publish",
"position": [
3574,
166
],
"inputs": {
"inputFiles": [
"{ExportAnimatedCamera_1.output}",
"{Texturing_1.output}",
"{ScenePreview_1.output}",
"{ExportDistortion_1.output}"
]
}
},
"ScenePreview_1": {
"nodeType": "ScenePreview",
"position": [
3200,
200
],
"inputs": {
"cameras": "{ConvertSfMFormat_1.output}",
"model": "{MeshDecimate_1.output}",
"undistortedImages": "{ExportAnimatedCamera_1.outputUndistorted}",
"masks": "{ImageSegmentationPrompt_1.output}"
},
"internalInputs": {
"color": "#4c594c"
}
},
"SfMTransfer_1": {
"nodeType": "SfMTransfer",
"position": [
1600,
0
],
"inputs": {
"input": "{KeyframeSelection_1.outputSfMDataKeyframes}",
"reference": "{StructureFromMotion_1.output}",
"transferLandmarks": false
},
"internalInputs": {
"comment": "Transfer pose from final camera tracking into the keyframes-only scene.",
"color": "#3f3138"
}
},
"SfMTriangulation_1": {
"nodeType": "SfMTriangulation",
"position": [
1800,
0
],
"inputs": {
"input": "{SfMTransfer_1.output}",
"featuresFolders": "{StructureFromMotion_2.featuresFolders}",
"matchesFolders": "{StructureFromMotion_2.matchesFolders}",
"minAngleForTriangulation": 1.0,
"minAngleForLandmark": 0.5
},
"internalInputs": {
"color": "#3f3138"
}
},
"StructureFromMotion_1": {
"nodeType": "StructureFromMotion",
"position": [
1400,
200
],
"inputs": {
"input": "{FeatureMatching_3.input}",
"featuresFolders": "{FeatureMatching_3.featuresFolders}",
"matchesFolders": [
"{FeatureMatching_3.output}",
"{FeatureMatching_2.output}"
],
"describerTypes": "{FeatureMatching_3.describerTypes}",
"nbFirstUnstableCameras": 0,
"maxImagesPerGroup": 0,
"bundleAdjustmentMaxOutliers": -1,
"minInputTrackLength": 5,
"minNumberOfObservationsForTriangulation": 3,
"minAngleForTriangulation": 1.0,
"minAngleForLandmark": 0.5,
"filterTrackForks": true
},
"internalInputs": {
"comment": "Estimate cameras parameters for the complete camera tracking sequence.",
"color": "#80766f"
}
},
"StructureFromMotion_2": {
"nodeType": "StructureFromMotion",
"position": [
800,
0
],
"inputs": {
"input": "{FeatureMatching_1.input}",
"featuresFolders": "{FeatureMatching_1.featuresFolders}",
"matchesFolders": [
"{FeatureMatching_1.output}"
],
"describerTypes": "{FeatureMatching_1.describerTypes}",
"minAngleForTriangulation": 1.0,
"minAngleForLandmark": 0.5,
"filterTrackForks": true
},
"internalInputs": {
"comment": "Solve all keyframes first.",
"label": "StructureFromMotionKeyframes",
"color": "#575963"
}
},
"Texturing_1": {
"nodeType": "Texturing",
"position": [
3200,
0
],
"inputs": {
"input": "{Meshing_1.output}",
"imagesFolder": "{PrepareDenseScene_1.output}",
"inputMesh": "{MeshDecimate_1.output}"
},
"internalInputs": {
"color": "#3f3138"
}
}
}
}