diff --git a/meshroom/core/attribute.py b/meshroom/core/attribute.py index 5c341886..1bc105a2 100644 --- a/meshroom/core/attribute.py +++ b/meshroom/core/attribute.py @@ -414,7 +414,9 @@ class GroupAttribute(Attribute): return {name: attr.getPrimitiveValue(exportDefault=exportDefault) for name, attr in self._value.items() if not attr.isDefault} def getValueStr(self): - return self.attributeDesc.joinChar.join([v.getValueStr() for v in self._value.objects.values()]) + # sort values based on child attributes group description order + sortedSubValues = [self._value.get(attr.name).getValueStr() for attr in self.attributeDesc.groupDesc] + return self.attributeDesc.joinChar.join(sortedSubValues) # Override value property value = Property(Variant, Attribute._get_value, _set_value, notify=Attribute.valueChanged) diff --git a/meshroom/nodes/aliceVision/Texturing.py b/meshroom/nodes/aliceVision/Texturing.py index 7256495c..4bc94fcc 100644 --- a/meshroom/nodes/aliceVision/Texturing.py +++ b/meshroom/nodes/aliceVision/Texturing.py @@ -86,23 +86,45 @@ class Texturing(desc.CommandLineNode): name='padding', label='Padding', description='''Texture edge padding size in pixel''', - value=15, - range=(0, 100, 1), + value=5, + range=(0, 20, 1), uid=[0], + advanced=True, + ), + desc.BoolParam( + name='useScore', + label='Use Score', + description='Use triangles scores for multiband blending.', + value=True, + uid=[0], + advanced=True, ), desc.IntParam( - name='maxNbImagesForFusion', - label='Max Number of Images For Fusion', - description='''Max number of images to combine to create the final texture''', - value=3, - range=(0, 10, 1), + name='multiBandDownscale', + label='Multi Band Downscale', + description='''Width of frequency bands for multiband blending''', + value=4, + range=(0, 8, 2), uid=[0], + advanced=True, + ), + desc.GroupAttribute( + name="multiBandNbContrib", + label="MultiBand contributions", + groupDesc=[ + desc.IntParam(name="high", label="High Freq", description="High Frequency Band", value=1, uid=[0], range=None), + desc.IntParam(name="midHigh", label="Mid-High Freq", description="Mid-High Frequency Band", value=5, uid=[0], range=None), + desc.IntParam(name="midLow", label="Mid-Low Freq", description="Mid-Low Frequency Band", value=10, uid=[0], range=None), + desc.IntParam(name="low", label="Low Freq", description="Low Frequency Band", value=0, uid=[0], range=None), + ], + description='''Number of contributions per frequency band for multiband blending (each frequency band also contributes to lower bands)''', + advanced=True, ), desc.FloatParam( name='bestScoreThreshold', label='Best Score Threshold', description='''(0.0 to disable filtering based on threshold to relative best score)''', - value=0.0, + value=0.1, range=(0.0, 1.0, 0.01), uid=[0], advanced=True,