mirror of
https://github.com/alicevision/Meshroom.git
synced 2025-04-28 17:57:16 +02:00
New tracking experimental pipelines
This commit is contained in:
parent
910736b3d7
commit
176e2a8c4c
2 changed files with 1115 additions and 0 deletions
572
meshroom/pipelines/cameraTrackingExperimental.mg
Normal file
572
meshroom/pipelines/cameraTrackingExperimental.mg
Normal file
|
@ -0,0 +1,572 @@
|
||||||
|
{
|
||||||
|
"header": {
|
||||||
|
"releaseVersion": "2025.1.0-develop",
|
||||||
|
"fileVersion": "2.0",
|
||||||
|
"template": true,
|
||||||
|
"nodesVersions": {
|
||||||
|
"ApplyCalibration": "1.0",
|
||||||
|
"CameraInit": "12.0",
|
||||||
|
"CheckerboardDetection": "1.0",
|
||||||
|
"ConvertSfMFormat": "2.0",
|
||||||
|
"DepthMap": "5.0",
|
||||||
|
"DepthMapFilter": "4.0",
|
||||||
|
"DistortionCalibration": "5.0",
|
||||||
|
"ExportAnimatedCamera": "2.0",
|
||||||
|
"ExportDistortion": "2.0",
|
||||||
|
"FeatureExtraction": "1.3",
|
||||||
|
"FeatureMatching": "2.0",
|
||||||
|
"ImageDetectionPrompt": "0.1",
|
||||||
|
"ImageMatching": "2.0",
|
||||||
|
"ImageMatchingMultiSfM": "1.0",
|
||||||
|
"ImageSegmentationBox": "0.1",
|
||||||
|
"KeyframeSelection": "5.0",
|
||||||
|
"MeshDecimate": "1.0",
|
||||||
|
"MeshFiltering": "3.0",
|
||||||
|
"Meshing": "7.0",
|
||||||
|
"PrepareDenseScene": "3.1",
|
||||||
|
"Publish": "1.3",
|
||||||
|
"RelativePoseEstimating": "3.0",
|
||||||
|
"ScenePreview": "2.0",
|
||||||
|
"SfMBootStraping": "3.0",
|
||||||
|
"SfMExpanding": "2.0",
|
||||||
|
"SfMTransfer": "2.1",
|
||||||
|
"SfMTriangulation": "1.0",
|
||||||
|
"Texturing": "6.0",
|
||||||
|
"TracksBuilding": "1.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": [
|
||||||
|
4140,
|
||||||
|
58
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{ExportAnimatedCamera_1.input}",
|
||||||
|
"fileExt": "json",
|
||||||
|
"describerTypes": "{TracksBuilding_2.describerTypes}",
|
||||||
|
"structure": false,
|
||||||
|
"observations": false
|
||||||
|
},
|
||||||
|
"internalInputs": {
|
||||||
|
"color": "#4c594c"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"DepthMapFilter_1": {
|
||||||
|
"nodeType": "DepthMapFilter",
|
||||||
|
"position": [
|
||||||
|
3536,
|
||||||
|
-181
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{DepthMap_1.input}",
|
||||||
|
"depthMapsFolder": "{DepthMap_1.output}"
|
||||||
|
},
|
||||||
|
"internalInputs": {
|
||||||
|
"color": "#3f3138"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"DepthMap_1": {
|
||||||
|
"nodeType": "DepthMap",
|
||||||
|
"position": [
|
||||||
|
3336,
|
||||||
|
-181
|
||||||
|
],
|
||||||
|
"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": [
|
||||||
|
2748,
|
||||||
|
22
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{SfMExpanding_2.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": [
|
||||||
|
400,
|
||||||
|
200
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{ApplyCalibration_1.output}",
|
||||||
|
"masksFolder": "{ImageSegmentationBox_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": [
|
||||||
|
1987,
|
||||||
|
186
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{ImageMatching_2.input}",
|
||||||
|
"featuresFolders": "{ImageMatching_2.featuresFolders}",
|
||||||
|
"imagePairsList": "{ImageMatching_2.output}"
|
||||||
|
},
|
||||||
|
"internalInputs": {
|
||||||
|
"label": "FeatureMatchingAllFrames",
|
||||||
|
"color": "#80766f"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"FeatureMatching_3": {
|
||||||
|
"nodeType": "FeatureMatching",
|
||||||
|
"position": [
|
||||||
|
1987,
|
||||||
|
26
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{ImageMatchingMultiSfM_1.outputCombinedSfM}",
|
||||||
|
"featuresFolders": "{ImageMatchingMultiSfM_1.featuresFolders}",
|
||||||
|
"imagePairsList": "{ImageMatchingMultiSfM_1.output}",
|
||||||
|
"describerTypes": "{FeatureExtraction_1.describerTypes}"
|
||||||
|
},
|
||||||
|
"internalInputs": {
|
||||||
|
"label": "FeatureMatchingFramesToKeyframes",
|
||||||
|
"color": "#80766f"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"ImageDetectionPrompt_1": {
|
||||||
|
"nodeType": "ImageDetectionPrompt",
|
||||||
|
"position": [
|
||||||
|
0,
|
||||||
|
200
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{CameraInit_1.output}"
|
||||||
|
},
|
||||||
|
"internalInputs": {
|
||||||
|
"color": "#575963"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"ImageMatchingMultiSfM_1": {
|
||||||
|
"nodeType": "ImageMatchingMultiSfM",
|
||||||
|
"position": [
|
||||||
|
1787,
|
||||||
|
26
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{KeyframeSelection_1.outputSfMDataFrames}",
|
||||||
|
"inputB": "{SfMExpanding_1.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": [
|
||||||
|
1787,
|
||||||
|
186
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{ApplyCalibration_1.output}",
|
||||||
|
"featuresFolders": [
|
||||||
|
"{FeatureExtraction_1.output}"
|
||||||
|
],
|
||||||
|
"method": "Sequential",
|
||||||
|
"nbNeighbors": 20
|
||||||
|
},
|
||||||
|
"internalInputs": {
|
||||||
|
"color": "#80766f"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"ImageSegmentationBox_1": {
|
||||||
|
"nodeType": "ImageSegmentationBox",
|
||||||
|
"position": [
|
||||||
|
200,
|
||||||
|
200
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{ImageDetectionPrompt_1.input}",
|
||||||
|
"bboxFolder": "{ImageDetectionPrompt_1.output}",
|
||||||
|
"maskInvert": true,
|
||||||
|
"keepFilename": true
|
||||||
|
},
|
||||||
|
"internalInputs": {
|
||||||
|
"color": "#575963"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"KeyframeSelection_1": {
|
||||||
|
"nodeType": "KeyframeSelection",
|
||||||
|
"position": [
|
||||||
|
200,
|
||||||
|
0
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"inputPaths": [
|
||||||
|
"{ApplyCalibration_1.output}"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"internalInputs": {
|
||||||
|
"color": "#575963"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"MeshDecimate_1": {
|
||||||
|
"nodeType": "MeshDecimate",
|
||||||
|
"position": [
|
||||||
|
4136,
|
||||||
|
-181
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{MeshFiltering_1.outputMesh}",
|
||||||
|
"simplificationFactor": 0.05
|
||||||
|
},
|
||||||
|
"internalInputs": {
|
||||||
|
"color": "#3f3138"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"MeshFiltering_1": {
|
||||||
|
"nodeType": "MeshFiltering",
|
||||||
|
"position": [
|
||||||
|
3936,
|
||||||
|
-181
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"inputMesh": "{Meshing_1.outputMesh}",
|
||||||
|
"filterLargeTrianglesFactor": 10.0
|
||||||
|
},
|
||||||
|
"internalInputs": {
|
||||||
|
"color": "#3f3138"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Meshing_1": {
|
||||||
|
"nodeType": "Meshing",
|
||||||
|
"position": [
|
||||||
|
3736,
|
||||||
|
-181
|
||||||
|
],
|
||||||
|
"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": [
|
||||||
|
3136,
|
||||||
|
-181
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{SfMTriangulation_1.output}",
|
||||||
|
"maskExtension": "exr"
|
||||||
|
},
|
||||||
|
"internalInputs": {
|
||||||
|
"color": "#3f3138"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Publish_1": {
|
||||||
|
"nodeType": "Publish",
|
||||||
|
"position": [
|
||||||
|
4736,
|
||||||
|
-81
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"inputFiles": [
|
||||||
|
"{ExportAnimatedCamera_1.output}",
|
||||||
|
"{Texturing_1.output}",
|
||||||
|
"{ScenePreview_1.output}",
|
||||||
|
"{ExportDistortion_1.output}"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"RelativePoseEstimating_1": {
|
||||||
|
"nodeType": "RelativePoseEstimating",
|
||||||
|
"position": [
|
||||||
|
1012,
|
||||||
|
-1
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{TracksBuilding_1.input}",
|
||||||
|
"tracksFilename": "{TracksBuilding_1.output}",
|
||||||
|
"countIterations": 50000,
|
||||||
|
"minInliers": 100
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"ScenePreview_1": {
|
||||||
|
"nodeType": "ScenePreview",
|
||||||
|
"position": [
|
||||||
|
4357,
|
||||||
|
8
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"cameras": "{ConvertSfMFormat_1.output}",
|
||||||
|
"model": "{MeshDecimate_1.output}",
|
||||||
|
"undistortedImages": "{ExportAnimatedCamera_1.outputUndistorted}",
|
||||||
|
"masks": "{ImageSegmentationBox_1.output}"
|
||||||
|
},
|
||||||
|
"internalInputs": {
|
||||||
|
"color": "#4c594c"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"SfMBootStraping_1": {
|
||||||
|
"nodeType": "SfMBootStraping",
|
||||||
|
"position": [
|
||||||
|
1215,
|
||||||
|
-7
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{RelativePoseEstimating_1.input}",
|
||||||
|
"tracksFilename": "{RelativePoseEstimating_1.tracksFilename}",
|
||||||
|
"pairs": "{RelativePoseEstimating_1.output}"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"SfMExpanding_1": {
|
||||||
|
"nodeType": "SfMExpanding",
|
||||||
|
"position": [
|
||||||
|
1412,
|
||||||
|
-10
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{SfMBootStraping_1.output}",
|
||||||
|
"tracksFilename": "{SfMBootStraping_1.tracksFilename}",
|
||||||
|
"minAngleForTriangulation": 1.0,
|
||||||
|
"minAngleForLandmark": 0.5
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"SfMExpanding_2": {
|
||||||
|
"nodeType": "SfMExpanding",
|
||||||
|
"position": [
|
||||||
|
2469,
|
||||||
|
52
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{TracksBuilding_2.input}",
|
||||||
|
"tracksFilename": "{TracksBuilding_2.output}",
|
||||||
|
"nbFirstUnstableCameras": 0,
|
||||||
|
"maxImagesPerGroup": 0,
|
||||||
|
"bundleAdjustmentMaxOutliers": 5000000,
|
||||||
|
"minNumberOfObservationsForTriangulation": 3,
|
||||||
|
"minAngleForTriangulation": 1.0,
|
||||||
|
"minAngleForLandmark": 0.5
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"SfMTransfer_1": {
|
||||||
|
"nodeType": "SfMTransfer",
|
||||||
|
"position": [
|
||||||
|
2736,
|
||||||
|
-181
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{KeyframeSelection_1.outputSfMDataKeyframes}",
|
||||||
|
"reference": "{SfMExpanding_2.output}",
|
||||||
|
"transferLandmarks": false
|
||||||
|
},
|
||||||
|
"internalInputs": {
|
||||||
|
"comment": "Transfer pose from final camera tracking into the keyframes-only scene.",
|
||||||
|
"color": "#3f3138"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"SfMTriangulation_1": {
|
||||||
|
"nodeType": "SfMTriangulation",
|
||||||
|
"position": [
|
||||||
|
2936,
|
||||||
|
-181
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{SfMTransfer_1.output}",
|
||||||
|
"featuresFolders": "{TracksBuilding_1.featuresFolders}",
|
||||||
|
"matchesFolders": "{TracksBuilding_1.matchesFolders}",
|
||||||
|
"minAngleForTriangulation": 1.0,
|
||||||
|
"minAngleForLandmark": 0.5
|
||||||
|
},
|
||||||
|
"internalInputs": {
|
||||||
|
"color": "#3f3138"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Texturing_1": {
|
||||||
|
"nodeType": "Texturing",
|
||||||
|
"position": [
|
||||||
|
4389,
|
||||||
|
-245
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{Meshing_1.output}",
|
||||||
|
"imagesFolder": "{PrepareDenseScene_1.output}",
|
||||||
|
"inputMesh": "{MeshDecimate_1.output}"
|
||||||
|
},
|
||||||
|
"internalInputs": {
|
||||||
|
"color": "#3f3138"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"TracksBuilding_1": {
|
||||||
|
"nodeType": "TracksBuilding",
|
||||||
|
"position": [
|
||||||
|
826,
|
||||||
|
-2
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{FeatureMatching_1.input}",
|
||||||
|
"featuresFolders": "{FeatureMatching_1.featuresFolders}",
|
||||||
|
"matchesFolders": [
|
||||||
|
"{FeatureMatching_1.output}"
|
||||||
|
],
|
||||||
|
"describerTypes": "{FeatureMatching_1.describerTypes}",
|
||||||
|
"filterTrackForks": true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"TracksBuilding_2": {
|
||||||
|
"nodeType": "TracksBuilding",
|
||||||
|
"position": [
|
||||||
|
2280,
|
||||||
|
34
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{FeatureMatching_3.input}",
|
||||||
|
"featuresFolders": "{FeatureMatching_3.featuresFolders}",
|
||||||
|
"matchesFolders": [
|
||||||
|
"{FeatureMatching_2.output}",
|
||||||
|
"{FeatureMatching_3.output}"
|
||||||
|
],
|
||||||
|
"describerTypes": "{FeatureMatching_3.describerTypes}",
|
||||||
|
"minInputTrackLength": 5,
|
||||||
|
"filterTrackForks": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,543 @@
|
||||||
|
{
|
||||||
|
"header": {
|
||||||
|
"releaseVersion": "2025.1.0-develop",
|
||||||
|
"fileVersion": "2.0",
|
||||||
|
"template": true,
|
||||||
|
"nodesVersions": {
|
||||||
|
"ApplyCalibration": "1.0",
|
||||||
|
"CameraInit": "12.0",
|
||||||
|
"ConvertDistortion": "1.0",
|
||||||
|
"ConvertSfMFormat": "2.0",
|
||||||
|
"DepthMap": "5.0",
|
||||||
|
"DepthMapFilter": "4.0",
|
||||||
|
"ExportAnimatedCamera": "2.0",
|
||||||
|
"ExportDistortion": "2.0",
|
||||||
|
"FeatureExtraction": "1.3",
|
||||||
|
"FeatureMatching": "2.0",
|
||||||
|
"ImageDetectionPrompt": "0.1",
|
||||||
|
"ImageMatching": "2.0",
|
||||||
|
"ImageMatchingMultiSfM": "1.0",
|
||||||
|
"ImageSegmentationBox": "0.1",
|
||||||
|
"KeyframeSelection": "5.0",
|
||||||
|
"MeshDecimate": "1.0",
|
||||||
|
"MeshFiltering": "3.0",
|
||||||
|
"Meshing": "7.0",
|
||||||
|
"PrepareDenseScene": "3.1",
|
||||||
|
"Publish": "1.3",
|
||||||
|
"RelativePoseEstimating": "3.0",
|
||||||
|
"ScenePreview": "2.0",
|
||||||
|
"SfMBootStraping": "3.0",
|
||||||
|
"SfMExpanding": "2.0",
|
||||||
|
"SfMTransfer": "2.1",
|
||||||
|
"SfMTriangulation": "1.0",
|
||||||
|
"Texturing": "6.0",
|
||||||
|
"TracksBuilding": "1.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"graph": {
|
||||||
|
"ApplyCalibration_1": {
|
||||||
|
"nodeType": "ApplyCalibration",
|
||||||
|
"position": [
|
||||||
|
0,
|
||||||
|
0
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{CameraInit_1.output}"
|
||||||
|
},
|
||||||
|
"internalInputs": {
|
||||||
|
"color": "#575963"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"CameraInit_1": {
|
||||||
|
"nodeType": "CameraInit",
|
||||||
|
"position": [
|
||||||
|
-200,
|
||||||
|
0
|
||||||
|
],
|
||||||
|
"inputs": {},
|
||||||
|
"internalInputs": {
|
||||||
|
"color": "#575963"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"ConvertDistortion_1": {
|
||||||
|
"nodeType": "ConvertDistortion",
|
||||||
|
"position": [
|
||||||
|
2561,
|
||||||
|
222
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{SfMExpanding_2.output}"
|
||||||
|
},
|
||||||
|
"internalInputs": {
|
||||||
|
"color": "#80766f"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"ConvertSfMFormat_1": {
|
||||||
|
"nodeType": "ConvertSfMFormat",
|
||||||
|
"position": [
|
||||||
|
3674,
|
||||||
|
23
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{ExportAnimatedCamera_1.input}",
|
||||||
|
"fileExt": "json",
|
||||||
|
"describerTypes": "{TracksBuilding_2.describerTypes}",
|
||||||
|
"structure": false,
|
||||||
|
"observations": false
|
||||||
|
},
|
||||||
|
"internalInputs": {
|
||||||
|
"color": "#4c594c"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"DepthMapFilter_1": {
|
||||||
|
"nodeType": "DepthMapFilter",
|
||||||
|
"position": [
|
||||||
|
3074,
|
||||||
|
-177
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{DepthMap_1.input}",
|
||||||
|
"depthMapsFolder": "{DepthMap_1.output}"
|
||||||
|
},
|
||||||
|
"internalInputs": {
|
||||||
|
"color": "#3f3138"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"DepthMap_1": {
|
||||||
|
"nodeType": "DepthMap",
|
||||||
|
"position": [
|
||||||
|
2874,
|
||||||
|
-177
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{PrepareDenseScene_1.input}",
|
||||||
|
"imagesFolder": "{PrepareDenseScene_1.output}",
|
||||||
|
"downscale": 1
|
||||||
|
},
|
||||||
|
"internalInputs": {
|
||||||
|
"color": "#3f3138"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"ExportAnimatedCamera_1": {
|
||||||
|
"nodeType": "ExportAnimatedCamera",
|
||||||
|
"position": [
|
||||||
|
2754,
|
||||||
|
37
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{SfMExpanding_2.output}",
|
||||||
|
"exportUndistortedImages": true
|
||||||
|
},
|
||||||
|
"internalInputs": {
|
||||||
|
"color": "#80766f"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"ExportDistortion_1": {
|
||||||
|
"nodeType": "ExportDistortion",
|
||||||
|
"position": [
|
||||||
|
2761,
|
||||||
|
222
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{ConvertDistortion_1.output}",
|
||||||
|
"exportLensGridsUndistorted": false
|
||||||
|
},
|
||||||
|
"internalInputs": {
|
||||||
|
"color": "#80766f"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"FeatureExtraction_1": {
|
||||||
|
"nodeType": "FeatureExtraction",
|
||||||
|
"position": [
|
||||||
|
400,
|
||||||
|
200
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{ApplyCalibration_1.output}",
|
||||||
|
"masksFolder": "{ImageSegmentationBox_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": [
|
||||||
|
1874,
|
||||||
|
183
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{ImageMatching_2.input}",
|
||||||
|
"featuresFolders": "{ImageMatching_2.featuresFolders}",
|
||||||
|
"imagePairsList": "{ImageMatching_2.output}"
|
||||||
|
},
|
||||||
|
"internalInputs": {
|
||||||
|
"label": "FeatureMatchingAllFrames",
|
||||||
|
"color": "#80766f"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"FeatureMatching_3": {
|
||||||
|
"nodeType": "FeatureMatching",
|
||||||
|
"position": [
|
||||||
|
1874,
|
||||||
|
23
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{ImageMatchingMultiSfM_1.outputCombinedSfM}",
|
||||||
|
"featuresFolders": "{ImageMatchingMultiSfM_1.featuresFolders}",
|
||||||
|
"imagePairsList": "{ImageMatchingMultiSfM_1.output}",
|
||||||
|
"describerTypes": "{FeatureExtraction_1.describerTypes}"
|
||||||
|
},
|
||||||
|
"internalInputs": {
|
||||||
|
"label": "FeatureMatchingFramesToKeyframes",
|
||||||
|
"color": "#80766f"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"ImageDetectionPrompt_1": {
|
||||||
|
"nodeType": "ImageDetectionPrompt",
|
||||||
|
"position": [
|
||||||
|
0,
|
||||||
|
200
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{CameraInit_1.output}"
|
||||||
|
},
|
||||||
|
"internalInputs": {
|
||||||
|
"color": "#575963"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"ImageMatchingMultiSfM_1": {
|
||||||
|
"nodeType": "ImageMatchingMultiSfM",
|
||||||
|
"position": [
|
||||||
|
1674,
|
||||||
|
23
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{KeyframeSelection_1.outputSfMDataFrames}",
|
||||||
|
"inputB": "{SfMExpanding_1.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": [
|
||||||
|
1674,
|
||||||
|
183
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{ApplyCalibration_1.output}",
|
||||||
|
"featuresFolders": [
|
||||||
|
"{FeatureExtraction_1.output}"
|
||||||
|
],
|
||||||
|
"method": "Sequential",
|
||||||
|
"nbNeighbors": 20
|
||||||
|
},
|
||||||
|
"internalInputs": {
|
||||||
|
"color": "#80766f"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"ImageSegmentationBox_1": {
|
||||||
|
"nodeType": "ImageSegmentationBox",
|
||||||
|
"position": [
|
||||||
|
200,
|
||||||
|
200
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{ImageDetectionPrompt_1.input}",
|
||||||
|
"bboxFolder": "{ImageDetectionPrompt_1.output}",
|
||||||
|
"maskInvert": true,
|
||||||
|
"keepFilename": true
|
||||||
|
},
|
||||||
|
"internalInputs": {
|
||||||
|
"color": "#575963"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"KeyframeSelection_1": {
|
||||||
|
"nodeType": "KeyframeSelection",
|
||||||
|
"position": [
|
||||||
|
200,
|
||||||
|
0
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"inputPaths": [
|
||||||
|
"{ApplyCalibration_1.output}"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"internalInputs": {
|
||||||
|
"color": "#575963"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"MeshDecimate_1": {
|
||||||
|
"nodeType": "MeshDecimate",
|
||||||
|
"position": [
|
||||||
|
3674,
|
||||||
|
-177
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{MeshFiltering_1.outputMesh}",
|
||||||
|
"simplificationFactor": 0.05
|
||||||
|
},
|
||||||
|
"internalInputs": {
|
||||||
|
"color": "#3f3138"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"MeshFiltering_1": {
|
||||||
|
"nodeType": "MeshFiltering",
|
||||||
|
"position": [
|
||||||
|
3474,
|
||||||
|
-177
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"inputMesh": "{Meshing_1.outputMesh}",
|
||||||
|
"filterLargeTrianglesFactor": 10.0
|
||||||
|
},
|
||||||
|
"internalInputs": {
|
||||||
|
"color": "#3f3138"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Meshing_1": {
|
||||||
|
"nodeType": "Meshing",
|
||||||
|
"position": [
|
||||||
|
3274,
|
||||||
|
-177
|
||||||
|
],
|
||||||
|
"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": [
|
||||||
|
2674,
|
||||||
|
-177
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{SfMTriangulation_1.output}",
|
||||||
|
"maskExtension": "exr"
|
||||||
|
},
|
||||||
|
"internalInputs": {
|
||||||
|
"color": "#3f3138"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Publish_1": {
|
||||||
|
"nodeType": "Publish",
|
||||||
|
"position": [
|
||||||
|
4274,
|
||||||
|
-77
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"inputFiles": [
|
||||||
|
"{ExportAnimatedCamera_1.output}",
|
||||||
|
"{Texturing_1.output}",
|
||||||
|
"{ScenePreview_1.output}",
|
||||||
|
"{ExportDistortion_1.output}"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"RelativePoseEstimating_1": {
|
||||||
|
"nodeType": "RelativePoseEstimating",
|
||||||
|
"position": [
|
||||||
|
1013,
|
||||||
|
4
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{TracksBuilding_1.input}",
|
||||||
|
"tracksFilename": "{TracksBuilding_1.output}",
|
||||||
|
"countIterations": 50000,
|
||||||
|
"minInliers": 100
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"ScenePreview_1": {
|
||||||
|
"nodeType": "ScenePreview",
|
||||||
|
"position": [
|
||||||
|
3874,
|
||||||
|
23
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"cameras": "{ConvertSfMFormat_1.output}",
|
||||||
|
"model": "{MeshDecimate_1.output}",
|
||||||
|
"undistortedImages": "{ExportAnimatedCamera_1.outputUndistorted}",
|
||||||
|
"masks": "{ImageSegmentationBox_1.output}"
|
||||||
|
},
|
||||||
|
"internalInputs": {
|
||||||
|
"color": "#4c594c"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"SfMBootStraping_1": {
|
||||||
|
"nodeType": "SfMBootStraping",
|
||||||
|
"position": [
|
||||||
|
1216,
|
||||||
|
-2
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{RelativePoseEstimating_1.input}",
|
||||||
|
"tracksFilename": "{RelativePoseEstimating_1.tracksFilename}",
|
||||||
|
"pairs": "{RelativePoseEstimating_1.output}"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"SfMExpanding_1": {
|
||||||
|
"nodeType": "SfMExpanding",
|
||||||
|
"position": [
|
||||||
|
1413,
|
||||||
|
-5
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{SfMBootStraping_1.output}",
|
||||||
|
"tracksFilename": "{SfMBootStraping_1.tracksFilename}",
|
||||||
|
"minAngleForTriangulation": 1.0,
|
||||||
|
"minAngleForLandmark": 0.5
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"SfMExpanding_2": {
|
||||||
|
"nodeType": "SfMExpanding",
|
||||||
|
"position": [
|
||||||
|
2309.5,
|
||||||
|
27.0
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{TracksBuilding_2.input}",
|
||||||
|
"tracksFilename": "{TracksBuilding_2.output}",
|
||||||
|
"nbFirstUnstableCameras": 0,
|
||||||
|
"maxImagesPerGroup": 0,
|
||||||
|
"bundleAdjustmentMaxOutliers": 5000000,
|
||||||
|
"minNumberOfObservationsForTriangulation": 3,
|
||||||
|
"minAngleForTriangulation": 1.0,
|
||||||
|
"minAngleForLandmark": 0.5
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"SfMTransfer_1": {
|
||||||
|
"nodeType": "SfMTransfer",
|
||||||
|
"position": [
|
||||||
|
2274,
|
||||||
|
-177
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{KeyframeSelection_1.outputSfMDataKeyframes}",
|
||||||
|
"reference": "{SfMExpanding_2.output}",
|
||||||
|
"transferLandmarks": false
|
||||||
|
},
|
||||||
|
"internalInputs": {
|
||||||
|
"comment": "Transfer pose from final camera tracking into the keyframes-only scene.",
|
||||||
|
"color": "#3f3138"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"SfMTriangulation_1": {
|
||||||
|
"nodeType": "SfMTriangulation",
|
||||||
|
"position": [
|
||||||
|
2474,
|
||||||
|
-177
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{SfMTransfer_1.output}",
|
||||||
|
"featuresFolders": "{TracksBuilding_1.featuresFolders}",
|
||||||
|
"matchesFolders": "{TracksBuilding_1.matchesFolders}",
|
||||||
|
"minAngleForTriangulation": 1.0,
|
||||||
|
"minAngleForLandmark": 0.5
|
||||||
|
},
|
||||||
|
"internalInputs": {
|
||||||
|
"color": "#3f3138"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Texturing_1": {
|
||||||
|
"nodeType": "Texturing",
|
||||||
|
"position": [
|
||||||
|
3874,
|
||||||
|
-177
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{Meshing_1.output}",
|
||||||
|
"imagesFolder": "{PrepareDenseScene_1.output}",
|
||||||
|
"inputMesh": "{MeshDecimate_1.output}"
|
||||||
|
},
|
||||||
|
"internalInputs": {
|
||||||
|
"color": "#3f3138"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"TracksBuilding_1": {
|
||||||
|
"nodeType": "TracksBuilding",
|
||||||
|
"position": [
|
||||||
|
827,
|
||||||
|
3
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{FeatureMatching_1.input}",
|
||||||
|
"featuresFolders": "{FeatureMatching_1.featuresFolders}",
|
||||||
|
"matchesFolders": [
|
||||||
|
"{FeatureMatching_1.output}"
|
||||||
|
],
|
||||||
|
"describerTypes": "{FeatureMatching_1.describerTypes}",
|
||||||
|
"filterTrackForks": true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"TracksBuilding_2": {
|
||||||
|
"nodeType": "TracksBuilding",
|
||||||
|
"position": [
|
||||||
|
2103.5,
|
||||||
|
24.0
|
||||||
|
],
|
||||||
|
"inputs": {
|
||||||
|
"input": "{FeatureMatching_3.input}",
|
||||||
|
"featuresFolders": "{FeatureMatching_3.featuresFolders}",
|
||||||
|
"matchesFolders": [
|
||||||
|
"{FeatureMatching_2.output}",
|
||||||
|
"{FeatureMatching_3.output}"
|
||||||
|
],
|
||||||
|
"describerTypes": "{FeatureMatching_3.describerTypes}",
|
||||||
|
"minInputTrackLength": 5,
|
||||||
|
"filterTrackForks": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
Loading…
Add table
Reference in a new issue