コード例 #1
0
ファイル: appendText.py プロジェクト: cs210/Worldsight
class AppendText(desc.CommandLineNode):
    commandLine = 'cat {inputValue} > {outputValue} && echo {inputTextValue} >> {outputValue}'

    inputs = [
        desc.File(
            name='input',
            label='Input File',
            description='''''',
            value='',
            uid=[0],
        ),
        desc.File(
            name='inputText',
            label='Input Text',
            description='''''',
            value='',
            uid=[0],
        )
    ]

    outputs = [
        desc.File(
            name='output',
            label='Output',
            description='''''',
            value=desc.Node.internalFolder + 'appendText.txt',
            uid=[],
        ),
    ]
コード例 #2
0
class ExportColoredPointCloud(desc.CommandLineNode):
    commandLine = 'aliceVision_exportColoredPointCloud {allParams}'

    category = 'Export'

    inputs = [
        desc.File(
            name='input',
            label='Input SfMData',
            description='SfMData file containing a complete SfM.',
            value='',
            uid=[0],
        ),
        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='Output Point Cloud Filepath',
            description='Output point cloud with visibilities as SfMData file.',
            value="{cache}/{nodeType}/{uid0}/pointCloud.abc",
            uid=[],
        ),
    ]
コード例 #3
0
ファイル: FeatureExtraction.py プロジェクト: zkov96/meshroom
class FeatureExtraction(desc.CommandLineNode):
    commandLine = 'aliceVision_featureExtraction {allParams}'
    size = desc.DynamicNodeSize('input')
    parallelization = desc.Parallelization(blockSize=40)
    commandLineRange = '--rangeStart {rangeStart} --rangeSize {rangeBlockSize}'

    inputs = [
        desc.File(
            name='input',
            label='Input',
            description='SfMData file.',
            value='',
            uid=[0],
        ),
        desc.ChoiceParam(
            name='describerTypes',
            label='Describer Types',
            description='Describer types used to describe an image.',
            value=['sift'],
            values=['sift', 'sift_float', 'sift_upright', 'akaze', 'akaze_liop', 'akaze_mldb', 'cctag3', 'cctag4', 'sift_ocv', 'akaze_ocv'],
            exclusive=False,
            uid=[0],
            joinChar=',',
        ),
        desc.ChoiceParam(
            name='describerPreset',
            label='Describer Preset',
            description='Control the ImageDescriber configuration (low, medium, normal, high, ultra). Configuration "ultra" can take long time !',
            value='normal',
            values=['low', 'medium', 'normal', 'high', 'ultra'],
            exclusive=True,
            uid=[0],
        ),
        desc.BoolParam(
            name='forceCpuExtraction',
            label='Force CPU Extraction',
            description='Use only CPU feature extraction.',
            value=True,
            uid=[],
        ),
        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='Output Folder',
            description='Output path for the features and descriptors files (*.feat, *.desc).',
            value=desc.Node.internalFolder,
            uid=[],
        ),
    ]
コード例 #4
0
class MeshFix(desc.CommandLineNode):
    commandLine = 'MeshFix {inputValue} {outputValue} -j'

    cpu = desc.Level.NORMAL
    ram = desc.Level.NORMAL

    inputs = [
        desc.File(
            name="input",
            label='Input Mesh (OBJ file format).',
            description='',
            value='',
            uid=[0],
            ),
]

    outputs = [
        desc.File(
            name="output",
            label="Output mesh",
            description="Output mesh (OBJ file format).",
            value=desc.Node.internalFolder + 'mesh_fixed.stl',
            uid=[],
            ),
    ]
コード例 #5
0
class SampleNodeV2(desc.Node):
    """ Changes from V1:
        * 'input' has been renamed to 'in'
    """
    inputs = [
        desc.File(
            name='in',
            label='Input',
            description='',
            value='',
            uid=[0],
        ),
        desc.StringParam(name='paramA',
                         label='ParamA',
                         description='',
                         value='',
                         uid=[]),  # No impact on UID
    ]
    outputs = [
        desc.File(name='output',
                  label='Output',
                  description='',
                  value=desc.Node.internalFolder,
                  uid=[])
    ]
コード例 #6
0
class SampleNodeV4(desc.Node):
    """
    Changes from V3:
        * 'paramA' has been added
    """
    inputs = [
        desc.File(
            name='in',
            label='Input',
            description='',
            value='',
            uid=[0],
        ),
        desc.ListAttribute(name='paramA',
                           label='ParamA',
                           elementDesc=desc.GroupAttribute(
                               groupDesc=SampleGroupV1,
                               name='gA',
                               label='gA',
                               description=''),
                           description='')
    ]
    outputs = [
        desc.File(name='output',
                  label='Output',
                  description='',
                  value=desc.Node.internalFolder,
                  uid=[])
    ]
コード例 #7
0
class ExportMaya(desc.CommandLineNode):
    commandLine = 'aliceVision_exportMeshroomMaya {allParams}'

    category = 'Export'
    documentation = '''
Export a scene for Autodesk Maya, with an Alembic file describing the SfM: cameras and 3D points.
It will export half-size undistorted images to use as image planes for cameras and also export thumbnails.
Use the MeshroomMaya plugin, to load the ABC file. It will recognize the file structure and will setup the scene.
MeshroomMaya contains a user interface to browse all cameras.
'''

    inputs = [
        desc.File(
            name='input',
            label='Input SfMData',
            description='',
            value='',
            uid=[0],
        ),
    ]

    outputs = [
        desc.File(
            name='output',
            label='Output Folder',
            description=
            'Folder for MeshroomMaya outputs: undistorted images and thumbnails.',
            value=desc.Node.internalFolder,
            uid=[],
        ),
    ]
コード例 #8
0
class InstantMeshes(desc.CommandLineNode):
    commandLine = 'alicevision_InstantMeshes {inputValue} -S {smoothValue} --output {outputValue}'

    cpu = desc.Level.NORMAL
    ram = desc.Level.NORMAL

    inputs = [
        desc.File(
            name="input",
            label='Input Mesh (OBJ file format).',
            description='',
            value='',
            uid=[0],
            ),
        desc.IntParam(
            name='smooth',
            label='Number of smoothing',
            description='Number of smoothing & ray tracing reprojection steps (default: 2)',
            value=2,
            range=(0, 100, 1),
            uid=[0],
            )
    ]

    outputs = [
        desc.File(
            name="output",
            label="Output mesh",
            description="Output mesh (OBJ file format).",
            value=desc.Node.internalFolder + 'mesh.obj',
            uid=[],
            ),
    ]
コード例 #9
0
class ImageMasking(desc.CommandLineNode):
    commandLine = 'mogrify -format png -path {outputValue} -type Grayscale -negate -fill black -fuzz {fuzzValue}% +opaque "#ffffff" -blur {radiusValue}x{sigmaValue} -type Bilevel -depth 1 {inputValue}/*jpg'

    # Default node parameters demo:
    # mogrify -format png -path "path/to/output/dir" -type Grayscale -negate -fill black -fuzz 9% +opaque "#ffffff" -blur 0x6 -type Bilevel -depth 1 "path/to/input/dir"/*.jpg

    cpu = desc.Level.NORMAL
    ram = desc.Level.NORMAL

    #define node inputs, use PrepareDenseScene node to convert the input images to jpg

    inputs = [
        desc.File(
            name="input",
            label='Input Image Folder',
            description='',
            value='',
            uid=[0],
        ),

        # wip black/white/green/* background, background pattern
        desc.IntParam(
            name='fuzz',
            label='fuzz',
            description='',
            value=60,
            range=(0, 100, 1),
            uid=[0],
        ),

        # Documentation: http://www.imagemagick.org/Usage/blur/
        desc.IntParam(
            name='radius',
            label='Blur radius',
            description=
            'larger value=larger blur radius, 0=auto value (default)',
            value=0,
            range=(0, 100, 1),
            uid=[0],
        ),
        desc.FloatParam(
            name='sigma',
            label='Blur Sigma',
            description='blur intensity',
            value=6,
            range=(0.0, 100.0, 0.01),
            uid=[0],
        ),
    ]

    # define node outputs
    outputs = [
        desc.File(
            name="output",
            label="Output Masks",
            description="Output Masks folder (monochrome PNG)",
            value=desc.Node.internalFolder,
            uid=[],
        ),
    ]
コード例 #10
0
class PrepareDenseScene(desc.CommandLineNode):
    commandLine = 'aliceVision_prepareDenseScene {allParams}'
    size = desc.DynamicNodeSize('input')
    parallelization = desc.Parallelization(blockSize=40)
    commandLineRange = '--rangeStart {rangeStart} --rangeSize {rangeBlockSize}'

    inputs = [
        desc.File(
            name='input',
            label='Input',
            description='''SfMData file.''',
            value='',
            uid=[0],
        ),
        desc.ChoiceParam(
            name='outputFileType',
            label='Output File Type',
            description='Output file type for the undistorted images.',
            value='exr',
            values=['jpg', 'png', 'tif', 'exr'],
            exclusive=True,
            uid=[0],
        ),
        desc.BoolParam(
            name='saveMetadata',
            label='Save Metadata',
            description='Save projections and intrinsics informations in images metadata (only for .exr images).',
            value=True,
            uid=[0],
        ),
        desc.BoolParam(
            name='saveMatricesTxtFiles',
            label='Save Matrices Text Files',
            description='Save projections and intrinsics informations in text files.',
            value=False,
            uid=[0],
        ),
        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='Output',
            description='''Output folder.''',
            value=desc.Node.internalFolder,
            uid=[],
        )
    ]
コード例 #11
0
class SampleNodeV1(desc.Node):
    """ Version 1 Sample Node """
    inputs = [
        desc.File(name='input', label='Input', description='', value='', uid=[0],),
        desc.StringParam(name='paramA', label='ParamA', description='', value='', uid=[])  # No impact on UID
    ]
    outputs = [
        desc.File(name='output', label='Output', description='', value=desc.Node.internalFolder, uid=[])
    ]
コード例 #12
0
class InstantMeshes(desc.CommandLineNode):
    commandLine = 'alicevision_InstantMeshes {inputValue} -S {smoothValue} -c {creaseValue} -r {rosyValue} -p {posyValue} --output {outputValue}'

    cpu = desc.Level.NORMAL
    ram = desc.Level.NORMAL

    inputs = [
        desc.File(
            name="input",
            label='Input Mesh (OBJ file format).',
            description='',
            value='',
            uid=[0],
            ),
        desc.IntParam(
            name='smooth',
            label='Number of smoothing',
            description='Number of smoothing & ray tracing reprojection steps (default: 2)',
            value=2,
            range=(0, 100, 1),
            uid=[0],
            ),
		desc.IntParam(
            name='crease',
            label='Dihedral angle threshold for creases',
            description='Dihedral angle threshold for creases in degrees',
            value=0,
            range=(0, 360, 1),
            uid=[0],
            ),
		desc.IntParam(
            name='rosy',
            label='Orientation symmetry',
            description='Specifies the orientation symmetry type',
            value=2,
            range=(2, 6, 2),
            uid=[0],
            ),
		desc.IntParam(
            name='posy',
            label='Position symmetry',
            description='Specifies the position symmetry type',
            value=4,
            range=(4, 6, 2),
            uid=[0],
            ),
    ]

    outputs = [
        desc.File(
            name="output",
            label="Output mesh",
            description="Output mesh (OBJ file format).",
            value=desc.Node.internalFolder + 'mesh.obj',
            uid=[],
            ),
    ]
コード例 #13
0
class Publish(desc.Node):
    size = desc.DynamicNodeSize('inputFiles')
    inputs = [
        desc.ListAttribute(
            elementDesc=desc.File(
                name="input",
                label="Input",
                description="",
                value="",
                uid=[0],
            ),
            name="inputFiles",
            label="Input Files",
            description="Input Files to publish.",
            group="",
        ),
        desc.File(
            name="output",
            label="Output Folder",
            description="",
            value="",
            uid=[0],
        ),
    ]

    def resolvedPaths(self, inputFiles, outDir):
        paths = {}
        for inputFile in inputFiles:
            for f in glob.glob(inputFile.value):
                paths[f] = os.path.join(outDir, os.path.basename(f))
        return paths

    def processChunk(self, chunk):
        print("Publish")
        if not chunk.node.inputFiles:
            print("Nothing to publish")
            return
        if not chunk.node.output.value:
            return

        outFiles = self.resolvedPaths(chunk.node.inputFiles.value,
                                      chunk.node.output.value)

        if not outFiles:
            raise RuntimeError(
                "Publish: input files listed, but nothing to publish. "
                "Listed input files: {}".format(chunk.node.inputFiles.value))

        if not os.path.exists(chunk.node.output.value):
            os.mkdir(chunk.node.output.value)

        for iFile, oFile in outFiles.items():
            print('Publish file', iFile, 'into', oFile)
            shutil.copyfile(iFile, oFile)
        print('Publish end')
コード例 #14
0
class PanoramaExternalInfo(desc.CommandLineNode):
    commandLine = 'aliceVision_panoramaExternalInfo {allParams}'
    size = desc.DynamicNodeSize('input')

    inputs = [
        desc.File(
            name='input',
            label='Input',
            description="SfM Data File",
            value='',
            uid=[0],
        ),
        desc.File(
            name='config',
            label='Xml Config',
            description="XML Data File",
            value='',
            uid=[0],
        ),
        desc.ListAttribute(
            elementDesc=desc.File(
                name='matchesFolder',
                label='Matches Folder',
                description="",
                value='',
                uid=[0],
            ),
            name='matchesFolders',
            label='Matches Folders',
            description=
            "Folder(s) in which computed matches are stored. (WORKAROUND for valid Tractor graph submission)",
            group='forDependencyOnly',
        ),
        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='outSfMDataFilename',
            label='Output SfMData File',
            description='Path to the output sfmdata file',
            value=desc.Node.internalFolder + 'sfmData.abc',
            uid=[],
        )
    ]
コード例 #15
0
class SampleNodeV3(desc.Node):
    """
    Changes from V3:
        * 'paramA' has been removed'
    """
    inputs = [
        desc.File(name='in', label='Input', description='', value='', uid=[0], ),
    ]
    outputs = [
        desc.File(name='output', label='Output', description='', value=desc.Node.internalFolder, uid=[])
    ]
コード例 #16
0
class PanoramaCompositing(desc.CommandLineNode):
    commandLine = 'aliceVision_panoramaCompositing {allParams}'
    size = desc.DynamicNodeSize('input')

    inputs = [
        desc.File(
            name='input',
            label='Input',
            description="Panorama Warping result",
            value='',
            uid=[0],
        ),
        desc.ChoiceParam(
            name='outputFileType',
            label='Output File Type',
            description='Output file type for the undistorted images.',
            value='exr',
            values=['jpg', 'png', 'tif', 'exr'],
            exclusive=True,
            uid=[0],
            group=
            '',  # not part of allParams, as this is not a parameter for the command line
        ),
        desc.ChoiceParam(
            name='compositerType',
            label='Compositer Type',
            description='Which compositer should be used to blend images',
            value='multiband',
            values=['replace', 'alpha', 'multiband'],
            exclusive=True,
            uid=[0]),
        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='Output Panorama',
            description='',
            value=desc.Node.internalFolder + 'panorama.{outputFileTypeValue}',
            uid=[],
        ),
    ]
コード例 #17
0
class ConvertMesh(desc.CommandLineNode):
    commandLine = 'aliceVision_convertMesh {allParams}'

    category = 'Utils'
    documentation = '''This node allows to convert a mesh to another format.'''

    inputs = [
        desc.File(
            name='inputMesh',
            label='Input Mesh',
            description=
            'Input Mesh (*.obj, *.mesh, *.meshb, *.ply, *.off, *.stl).',
            value='',
            uid=[0],
        ),
        desc.ChoiceParam(
            name='outputMeshFormat',
            label='Output Mesh Format',
            description=
            '''Output Mesh Format (*.obj, *.mesh, *.meshb, *.ply, *.off, *.stl).''',
            value='obj',
            values=['obj', 'mesh', 'meshb', 'ply', 'off', 'stl'],
            exclusive=True,
            uid=[0],
            group='',
        ),
        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='Output Mesh',
            description=
            '''Output mesh (*.obj, *.mesh, *.meshb, *.ply, *.off, *.stl).''',
            value=desc.Node.internalFolder + 'mesh.' +
            '{outputMeshFormatValue}',
            uid=[],
        ),
    ]
コード例 #18
0
class SampleNodeV5(desc.Node):
    """
    Changes from V4:
        * 'paramA' elementDesc has changed from SampleGroupV1 to SampleGroupV2
    """
    inputs = [
        desc.File(name='in', label='Input', description='', value='', uid=[0]),
        desc.ListAttribute(name='paramA', label='ParamA',
                           elementDesc=desc.GroupAttribute(
                               groupDesc=SampleGroupV2, name='gA', label='gA', description=''),
                           description='')
    ]
    outputs = [
        desc.File(name='output', label='Output', description='', value=desc.Node.internalFolder, uid=[])
    ]
コード例 #19
0
ファイル: appendFiles.py プロジェクト: cs210/Worldsight
class AppendFiles(desc.CommandLineNode):
    commandLine = 'cat {inputValue} {input2Value} {input3Value} {input4Value} > {outputValue}'

    inputs = [
        desc.File(
            name='input',
            label='Input File',
            description='''''',
            value='',
            uid=[0],
        ),
        desc.File(
            name='input2',
            label='Input File 2',
            description='''''',
            value='',
            uid=[0],
        ),
        desc.File(
            name='input3',
            label='Input File 3',
            description='''''',
            value='',
            uid=[0],
        ),
        desc.File(
            name='input4',
            label='Input File 4',
            description='''''',
            value='',
            uid=[0],
        ),
    ]

    outputs = [
        desc.File(
            name='output',
            label='Output',
            description='''''',
            value=desc.Node.internalFolder + 'appendText.txt',
            uid=[],
        )
    ]
コード例 #20
0
    def attributeDescFromValue(attrName, value, isOutput):
        """
        Generate an attribute description (desc.Attribute) that best matches 'value'.

        Args:
            attrName (str): the name of the attribute
            value: the value of the attribute
            isOutput (bool): whether the attribute is an output

        Returns:
            desc.Attribute: the generated attribute description
        """
        params = {
            "name": attrName,
            "label": attrName,
            "description": "Incompatible parameter",
            "value": value,
            "uid": (),
            "group": "incompatible"
        }
        if isinstance(value, bool):
            return desc.BoolParam(**params)
        if isinstance(value, int):
            return desc.IntParam(range=None, **params)
        elif isinstance(value, float):
            return desc.FloatParam(range=None, **params)
        elif isinstance(value, pyCompatibility.basestring):
            if isOutput or os.path.isabs(value) or Attribute.isLinkExpression(
                    value):
                return desc.File(**params)
            else:
                return desc.StringParam(**params)
        # List/GroupAttribute: recursively build descriptions
        elif isinstance(value, (list, dict)):
            del params["value"]
            del params["uid"]
            attrDesc = None
            if isinstance(value, list):
                elt = value[
                    0] if value else ""  # fallback: empty string value if list is empty
                eltDesc = CompatibilityNode.attributeDescFromValue(
                    "element", elt, isOutput)
                attrDesc = desc.ListAttribute(elementDesc=eltDesc, **params)
            elif isinstance(value, dict):
                groupDesc = []
                for key, value in value.items():
                    eltDesc = CompatibilityNode.attributeDescFromValue(
                        key, value, isOutput)
                    groupDesc.append(eltDesc)
                attrDesc = desc.GroupAttribute(groupDesc=groupDesc, **params)
            # override empty default value with
            attrDesc._value = value
            return attrDesc
        # handle any other type of parameters as Strings
        return desc.StringParam(**params)
コード例 #21
0
class CameraDownscale(desc.CommandLineNode):
    commandLine = 'aliceVision_cameraDownscale {allParams}'
    size = desc.DynamicNodeSize('input')

    inputs = [
        desc.File(
            name='input',
            label='Input',
            description="SfM Data File",
            value='',
            uid=[0],
        ),
        desc.FloatParam(
            name='rescalefactor',
            label='RescaleFactor',
            description='Newsize = rescalefactor * oldsize',
            value=0.5,
            range=(0.0, 1.0, 0.1),
            uid=[0],
            advanced=True,
        ),
        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='outSfMDataFilename',
            label='Output SfMData File',
            description='Path to the output sfmdata file',
            value=desc.Node.internalFolder + 'sfmData.abc',
            uid=[],
        )
    ]
コード例 #22
0
class SfMAlignment(desc.CommandLineNode):
    commandLine = 'aliceVision_utils_sfmAlignment {allParams}'
    size = desc.DynamicNodeSize('input')

    inputs = [
        desc.File(
            name='input',
            label='Input',
            description='''SfMData file .''',
            value='',
            uid=[0],
        ),
        desc.File(
            name='reference',
            label='Reference',
            description=
            '''Path to the scene used as the reference coordinate system.''',
            value='',
            uid=[0],
        ),
        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='Output',
            description='''Aligned SfMData file .''',
            value=desc.Node.internalFolder + 'alignedSfM.abc',
            uid=[],
        ),
    ]
コード例 #23
0
class ExportUndistortedImages(desc.CommandLineNode):
    commandLine = 'aliceVision_exportUndistortedImages {allParams}'

    inputs = [
        desc.File(
            name='input',
            label='Input SfMData',
            description='SfMData file containing a complete SfM.',
            value='',
            uid=[0],
        ),
        desc.ChoiceParam(
            name='outputFileType',
            label='Output File Type',
            description='Output file type for the undistorted images.',
            value='exr',
            values=['jpg', 'png', 'tif', 'exr'],
            exclusive=True,
            uid=[0],
        ),
        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='Output Folder',
            description='Output folder for the undistorted images.',
            value=desc.Node.internalFolder,
            uid=[],
        ),
    ]
コード例 #24
0
ファイル: PrepareDenseScene.py プロジェクト: zkov96/meshroom
class PrepareDenseScene(desc.CommandLineNode):
    commandLine = 'aliceVision_prepareDenseScene {allParams}'
    size = desc.DynamicNodeSize('input')

    inputs = [
        desc.File(
            name='input',
            label='Input',
            description='''SfMData file.''',
            value='',
            uid=[0],
        ),
        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='ini',
            label='MVS Configuration file',
            description='',
            value=desc.Node.internalFolder + 'mvs.ini',
            uid=[],
            group='',  # not a command line arg
        ),
        desc.File(
            name='output',
            label='Output',
            description='''Output folder.''',
            value=desc.Node.internalFolder,
            uid=[],
        )
    ]
コード例 #25
0
class Meshsimplify(desc.CommandLineNode):
    commandLine = 'alicevision_simplify {inputValue} {outputValue} {ratioValue} {agressValue}'

    cpu = desc.Level.NORMAL
    ram = desc.Level.NORMAL

    inputs = [
        desc.File(
            name="input",
            label='Input Mesh (OBJ file format).',
            description='',
            value='',
            uid=[0],
            ),
        desc.FloatParam(
            name='ratio',
            label='Ratio for Decimation',
            description='A ratio of 0.2 will decimate 80% of triangles',
            value=0.5,
            range=(0.0, 1.0, 0.01),
            uid=[0],
        ),
		desc.FloatParam(
            name='agress',
            label='Agressiveness',
            description='faster or better decimation, more iterations yield higher quality',
            value=7.0,
            range=(0.0, 100.0, 0.1),
            uid=[0],
        ),
    ]

    outputs = [
        desc.File(
            name="output",
            label="Output mesh",
            description="Output mesh (OBJ file format).",
            value=desc.Node.internalFolder + 'mesh.obj',
            uid=[],
            ),
    ]
コード例 #26
0
class Ls(desc.CommandLineNode):
    commandLine = 'ls {inputValue} > {outputValue}'
    inputs = [
        desc.File(
            name='input',
            label='Input',
            description='''''',
            value='',
            uid=[0],
        )
    ]

    outputs = [
        desc.File(
            name='output',
            label='Output',
            description='''''',
            value=desc.Node.internalFolder + 'ls.txt',
            uid=[],
        )
    ]
コード例 #27
0
class MVEDepthMap(desc.CommandLineNode):
    commandLine = 'dmrecon {outputValue}'

    inputs = [
        desc.File(
            name="input",
            label="Input",
            description="MVE project folder",
            value="",
            uid=[0],
        )
    ]
コード例 #28
0
class PanoramaWarping(desc.CommandLineNode):
    commandLine = 'aliceVision_panoramaWarping {allParams}'
    size = desc.DynamicNodeSize('input')

    inputs = [
        desc.File(
            name='input',
            label='Input',
            description="SfM Data File",
            value='',
            uid=[0],
        ),
        desc.IntParam(
            name='panoramaWidth',
            label='Panorama Width',
            description='Panorama width (pixels). 0 For automatic size',
            value=10000,
            range=(0, 50000, 1000),
            uid=[0]),
        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='Output directory',
            description='',
            value=desc.Node.internalFolder,
            uid=[],
        ),
    ]
コード例 #29
0
class ExportMaya(desc.CommandLineNode):
    commandLine = 'aliceVision_exportMeshroomMaya {allParams}'

    inputs = [
        desc.File(
            name='input',
            label='Input SfMData',
            description='',
            value='',
            uid=[0],
        ),
    ]
    
    outputs = [
        desc.File(
            name='output',
            label='Output Folder',
            description='Folder for MeshroomMaya outputs: undistorted images and thumbnails.',
            value=desc.Node.internalFolder,
            uid=[],
        ),
    ]
コード例 #30
0
class Convert2MVE(desc.CommandLineNode):
    commandLine = 'aliceVision_exportMVE2 {allParams}'

    inputs = [
        desc.File(
            name="input",
            label="Input",
            description="SFM input",
            value="",
            uid=[0],
        )
    ]

    outputs = [
        desc.File(
            name="output",
            label="Output Folder",
            description="Output in MVE format",
            value=desc.Node.internalFolder,
            uid=[0],
        )
    ]