From 11f3805f16634438ee3b722f492476fee8b23ef3 Mon Sep 17 00:00:00 2001 From: Fabien SERVANT Date: Thu, 21 Sep 2023 17:54:44 +0200 Subject: [PATCH] NodalSfm new node --- meshroom/nodes/aliceVision/NodalSfM.py | 77 +++++++++++++++++++ .../aliceVision/RelativePoseEstimating.py | 7 ++ 2 files changed, 84 insertions(+) create mode 100644 meshroom/nodes/aliceVision/NodalSfM.py diff --git a/meshroom/nodes/aliceVision/NodalSfM.py b/meshroom/nodes/aliceVision/NodalSfM.py new file mode 100644 index 0000000000..88bb093b8c --- /dev/null +++ b/meshroom/nodes/aliceVision/NodalSfM.py @@ -0,0 +1,77 @@ +__version__ = "1.0" + +from meshroom.core import desc + + +class NodalSfM(desc.AVCommandLineNode): + commandLine = 'aliceVision_nodalSfM {allParams}' + size = desc.DynamicNodeSize('input') + + category = 'Sparse Reconstruction' + documentation = ''' +''' + + inputs = [ + desc.File( + name='input', + label='SfMData', + description='SfMData file.', + value='', + uid=[0], + ), + desc.ListAttribute( + elementDesc=desc.File( + name="featuresFolder", + label="Features Folder", + description="", + value="", + uid=[0], + ), + name="featuresFolders", + label="Features Folders", + description="Folder(s) containing the extracted features and descriptors." + ), + desc.File( + name='tracksFilename', + label='Tracks file', + description='Tracks file.', + value='', + uid=[0], + ), + desc.File( + name='pairs', + label='Pairs file', + description='Information on pairs.', + value='', + uid=[0], + ), + desc.ChoiceParam( + name='describerTypes', + label='Describer Types', + description='Describer types used to describe an image.', + value=['dspsift'], + values=['sift', 'sift_float', 'sift_upright', 'dspsift', 'akaze', 'akaze_liop', 'akaze_mldb', 'cctag3', 'cctag4', 'sift_ocv', 'akaze_ocv', 'tag16h5'], + exclusive=False, + uid=[0], + joinChar=',', + ), + desc.ChoiceParam( + name='verboseLevel', + label='Verbose Level', + description='Verbosity level (fatal, error, warning, info, debug, trace).', + value='info', + values=['fatal', 'error', 'warning', 'info', 'debug', 'trace'], + exclusive=True, + uid=[], + ) + ] + + outputs = [ + desc.File( + name='output', + label='SfMData', + description='Path to the output sfmdata file', + value=desc.Node.internalFolder + 'sfm.abc', + uid=[], + ) + ] diff --git a/meshroom/nodes/aliceVision/RelativePoseEstimating.py b/meshroom/nodes/aliceVision/RelativePoseEstimating.py index 22c805f3c0..01b7ddbbaa 100644 --- a/meshroom/nodes/aliceVision/RelativePoseEstimating.py +++ b/meshroom/nodes/aliceVision/RelativePoseEstimating.py @@ -50,6 +50,13 @@ class RelativePoseEstimating(desc.AVCommandLineNode): uid=[0], joinChar=",", ), + desc.BoolParam( + name="enforcePureRotation", + label="Enforce pure rotation", + description="Enforce pure rotation as a model", + value=False, + uid=[0], + ), desc.ChoiceParam( name="verboseLevel", label="Verbose Level",