[nodes] add node categories

This commit is contained in:
ChemicalXandco 2021-02-14 17:03:42 +00:00
parent 3d33134ca9
commit e18f815af9
47 changed files with 58 additions and 10 deletions

View file

@ -6,6 +6,8 @@ from meshroom.core import desc
class CameraCalibration(desc.CommandLineNode): class CameraCalibration(desc.CommandLineNode):
commandLine = 'aliceVision_cameraCalibration {allParams}' commandLine = 'aliceVision_cameraCalibration {allParams}'
category = 'Utils'
inputs = [ inputs = [
desc.File( desc.File(
name='input', name='input',

View file

@ -116,6 +116,7 @@ class CameraInit(desc.CommandLineNode):
size = desc.DynamicNodeSize('viewpoints') size = desc.DynamicNodeSize('viewpoints')
category = 'Sparse Reconstruction'
documentation = ''' documentation = '''
This node describes your dataset. It lists the Viewpoints candidates, the guess about the type of optic, the initial focal length This node describes your dataset. It lists the Viewpoints candidates, the guess about the type of optic, the initial focal length
and which images are sharing the same internal camera parameters, as well as potential cameras rigs. and which images are sharing the same internal camera parameters, as well as potential cameras rigs.

View file

@ -7,6 +7,8 @@ from meshroom.core import desc
class CameraLocalization(desc.CommandLineNode): class CameraLocalization(desc.CommandLineNode):
commandLine = 'aliceVision_cameraLocalization {allParams}' commandLine = 'aliceVision_cameraLocalization {allParams}'
category = 'Utils'
inputs = [ inputs = [
desc.File( desc.File(
name='sfmdata', name='sfmdata',

View file

@ -7,6 +7,8 @@ from meshroom.core import desc
class CameraRigCalibration(desc.CommandLineNode): class CameraRigCalibration(desc.CommandLineNode):
commandLine = 'aliceVision_rigCalibration {allParams}' commandLine = 'aliceVision_rigCalibration {allParams}'
category = 'Utils'
inputs = [ inputs = [
desc.File( desc.File(
name='sfmdata', name='sfmdata',

View file

@ -7,6 +7,8 @@ from meshroom.core import desc
class CameraRigLocalization(desc.CommandLineNode): class CameraRigLocalization(desc.CommandLineNode):
commandLine = 'aliceVision_rigLocalization {allParams}' commandLine = 'aliceVision_rigLocalization {allParams}'
category = 'Utils'
inputs = [ inputs = [
desc.File( desc.File(
name='sfmdata', name='sfmdata',

View file

@ -5,6 +5,8 @@ from meshroom.core import desc
class ConvertMesh(desc.CommandLineNode): class ConvertMesh(desc.CommandLineNode):
commandLine = 'aliceVision_convertMesh {allParams}' commandLine = 'aliceVision_convertMesh {allParams}'
category = 'Utils'
documentation = '''This node allows to convert a mesh to another format.''' documentation = '''This node allows to convert a mesh to another format.'''
inputs = [ inputs = [

View file

@ -7,6 +7,7 @@ class ConvertSfMFormat(desc.CommandLineNode):
commandLine = 'aliceVision_convertSfMFormat {allParams}' commandLine = 'aliceVision_convertSfMFormat {allParams}'
size = desc.DynamicNodeSize('input') size = desc.DynamicNodeSize('input')
category = 'Utils'
documentation = ''' documentation = '''
Convert an SfM scene from one file format to another. Convert an SfM scene from one file format to another.
It can also be used to remove specific parts of from an SfM scene (like filter all 3D landmarks or filter 2D observations). It can also be used to remove specific parts of from an SfM scene (like filter all 3D landmarks or filter 2D observations).

View file

@ -10,6 +10,7 @@ class DepthMap(desc.CommandLineNode):
parallelization = desc.Parallelization(blockSize=3) parallelization = desc.Parallelization(blockSize=3)
commandLineRange = '--rangeStart {rangeStart} --rangeSize {rangeBlockSize}' commandLineRange = '--rangeStart {rangeStart} --rangeSize {rangeBlockSize}'
category = 'Dense Reconstruction'
documentation = ''' documentation = '''
For each camera that have been estimated by the Structure-From-Motion, it estimates the depth value per pixel. For each camera that have been estimated by the Structure-From-Motion, it estimates the depth value per pixel.

View file

@ -10,6 +10,7 @@ class DepthMapFilter(desc.CommandLineNode):
parallelization = desc.Parallelization(blockSize=10) parallelization = desc.Parallelization(blockSize=10)
commandLineRange = '--rangeStart {rangeStart} --rangeSize {rangeBlockSize}' commandLineRange = '--rangeStart {rangeStart} --rangeSize {rangeBlockSize}'
category = 'Dense Reconstruction'
documentation = ''' documentation = '''
Filter depth map values that are not coherent in multiple depth maps. Filter depth map values that are not coherent in multiple depth maps.
This allows to filter unstable points before starting the fusion of all depth maps in the Meshing node. This allows to filter unstable points before starting the fusion of all depth maps in the Meshing node.

View file

@ -6,6 +6,7 @@ from meshroom.core import desc
class ExportAnimatedCamera(desc.CommandLineNode): class ExportAnimatedCamera(desc.CommandLineNode):
commandLine = 'aliceVision_exportAnimatedCamera {allParams}' commandLine = 'aliceVision_exportAnimatedCamera {allParams}'
category = 'Export'
documentation = ''' documentation = '''
Convert cameras from an SfM scene into an animated cameras in Alembic file format. Convert cameras from an SfM scene into an animated cameras in Alembic file format.
Based on the input image filenames, it will recognize the input video sequence to create an animated camera. Based on the input image filenames, it will recognize the input video sequence to create an animated camera.

View file

@ -6,6 +6,8 @@ from meshroom.core import desc
class ExportColoredPointCloud(desc.CommandLineNode): class ExportColoredPointCloud(desc.CommandLineNode):
commandLine = 'aliceVision_exportColoredPointCloud {allParams}' commandLine = 'aliceVision_exportColoredPointCloud {allParams}'
category = 'Export'
inputs = [ inputs = [
desc.File( desc.File(
name='input', name='input',

View file

@ -7,6 +7,8 @@ class ExportMatches(desc.CommandLineNode):
commandLine = 'aliceVision_exportMatches {allParams}' commandLine = 'aliceVision_exportMatches {allParams}'
size = desc.DynamicNodeSize('input') size = desc.DynamicNodeSize('input')
category = 'Export'
inputs = [ inputs = [
desc.File( desc.File(
name='input', name='input',

View file

@ -6,6 +6,7 @@ from meshroom.core import desc
class ExportMaya(desc.CommandLineNode): class ExportMaya(desc.CommandLineNode):
commandLine = 'aliceVision_exportMeshroomMaya {allParams}' commandLine = 'aliceVision_exportMeshroomMaya {allParams}'
category = 'Export'
documentation = ''' documentation = '''
Export a scene for Autodesk Maya, with an Alembic file describing the SfM: cameras and 3D points. 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. It will export half-size undistorted images to use as image planes for cameras and also export thumbnails.

View file

@ -9,6 +9,7 @@ class FeatureExtraction(desc.CommandLineNode):
parallelization = desc.Parallelization(blockSize=40) parallelization = desc.Parallelization(blockSize=40)
commandLineRange = '--rangeStart {rangeStart} --rangeSize {rangeBlockSize}' commandLineRange = '--rangeStart {rangeStart} --rangeSize {rangeBlockSize}'
category = 'Sparse Reconstruction'
documentation = ''' documentation = '''
This node extracts distinctive groups of pixels that are, to some extent, invariant to changing camera viewpoints during image acquisition. This node extracts distinctive groups of pixels that are, to some extent, invariant to changing camera viewpoints during image acquisition.
Hence, a feature in the scene should have similar feature descriptions in all images. Hence, a feature in the scene should have similar feature descriptions in all images.

View file

@ -9,6 +9,7 @@ class FeatureMatching(desc.CommandLineNode):
parallelization = desc.Parallelization(blockSize=20) parallelization = desc.Parallelization(blockSize=20)
commandLineRange = '--rangeStart {rangeStart} --rangeSize {rangeBlockSize}' commandLineRange = '--rangeStart {rangeStart} --rangeSize {rangeBlockSize}'
category = 'Sparse Reconstruction'
documentation = ''' documentation = '''
This node performs the matching of all features between the candidate image pairs. This node performs the matching of all features between the candidate image pairs.

View file

@ -9,7 +9,9 @@ class FeatureRepeatability(desc.CommandLineNode):
# parallelization = desc.Parallelization(blockSize=40) # parallelization = desc.Parallelization(blockSize=40)
# commandLineRange = '--rangeStart {rangeStart} --rangeSize {rangeBlockSize}' # commandLineRange = '--rangeStart {rangeStart} --rangeSize {rangeBlockSize}'
category = 'Utils'
documentation = ''' documentation = '''
Compare feature/descriptor matching repeatability on some dataset with known homography motions.
''' '''
inputs = [ inputs = [

View file

@ -10,6 +10,7 @@ class GlobalSfM(desc.CommandLineNode):
commandLine = 'aliceVision_globalSfM {allParams}' commandLine = 'aliceVision_globalSfM {allParams}'
size = desc.DynamicNodeSize('input') size = desc.DynamicNodeSize('input')
category = 'Sparse Reconstruction'
documentation = ''' documentation = '''
Performs the Structure-From-Motion with a global approach. Performs the Structure-From-Motion with a global approach.
It is known to be faster but less robust to challenging datasets than the Incremental approach. It is known to be faster but less robust to challenging datasets than the Incremental approach.

View file

@ -8,6 +8,7 @@ class ImageMatching(desc.CommandLineNode):
commandLine = 'aliceVision_imageMatching {allParams}' commandLine = 'aliceVision_imageMatching {allParams}'
size = desc.DynamicNodeSize('input') size = desc.DynamicNodeSize('input')
category = 'Sparse Reconstruction'
documentation = ''' documentation = '''
The goal of this node is to select the image pairs to match. The ambition is to find the images that are looking to the same areas of the scene. The goal of this node is to select the image pairs to match. The ambition is to find the images that are looking to the same areas of the scene.
Thanks to this node, the FeatureMatching node will only compute the matches between the selected image pairs. Thanks to this node, the FeatureMatching node will only compute the matches between the selected image pairs.

View file

@ -9,6 +9,7 @@ class ImageMatchingMultiSfM(desc.CommandLineNode):
# use both SfM inputs to define Node's size # use both SfM inputs to define Node's size
size = desc.MultiDynamicNodeSize(['input', 'inputB']) size = desc.MultiDynamicNodeSize(['input', 'inputB'])
category = 'Sparse Reconstruction'
documentation = ''' documentation = '''
The goal of this node is to select the image pairs to match in the context of an SfM augmentation. The goal of this node is to select the image pairs to match in the context of an SfM augmentation.
The ambition is to find the images that are looking to the same areas of the scene. The ambition is to find the images that are looking to the same areas of the scene.

View file

@ -34,6 +34,7 @@ class ImageProcessing(desc.CommandLineNode):
# parallelization = desc.Parallelization(blockSize=40) # parallelization = desc.Parallelization(blockSize=40)
# commandLineRange = '--rangeStart {rangeStart} --rangeSize {rangeBlockSize}' # commandLineRange = '--rangeStart {rangeStart} --rangeSize {rangeBlockSize}'
category = 'Utils'
documentation = ''' documentation = '''
Convert or apply filtering to the input images. Convert or apply filtering to the input images.
''' '''

View file

@ -7,6 +7,7 @@ from meshroom.core import desc
class KeyframeSelection(desc.CommandLineNode): class KeyframeSelection(desc.CommandLineNode):
commandLine = 'aliceVision_utils_keyframeSelection {allParams}' commandLine = 'aliceVision_utils_keyframeSelection {allParams}'
category = 'Utils'
documentation = ''' documentation = '''
Allows to extract keyframes from a video and insert metadata. Allows to extract keyframes from a video and insert metadata.
It can extract frames from a synchronized multi-cameras rig. It can extract frames from a synchronized multi-cameras rig.

View file

@ -26,10 +26,10 @@ def findMetadata(d, keys, defaultValue):
class LdrToHdrCalibration(desc.CommandLineNode): class LdrToHdrCalibration(desc.CommandLineNode):
commandLine = 'aliceVision_LdrToHdrCalibration {allParams}' commandLine = 'aliceVision_LdrToHdrCalibration {allParams}'
size = desc.DynamicNodeSize('input') size = desc.DynamicNodeSize('input')
cpu = desc.Level.INTENSIVE cpu = desc.Level.INTENSIVE
ram = desc.Level.NORMAL ram = desc.Level.NORMAL
category = 'Panorama HDR'
documentation = ''' documentation = '''
Calibrate LDR to HDR response curve from samples Calibrate LDR to HDR response curve from samples
''' '''

View file

@ -28,6 +28,7 @@ class LdrToHdrMerge(desc.CommandLineNode):
parallelization = desc.Parallelization(blockSize=2) parallelization = desc.Parallelization(blockSize=2)
commandLineRange = '--rangeStart {rangeStart} --rangeSize {rangeBlockSize}' commandLineRange = '--rangeStart {rangeStart} --rangeSize {rangeBlockSize}'
category = 'Panorama HDR'
documentation = ''' documentation = '''
Calibrate LDR to HDR response curve from samples Calibrate LDR to HDR response curve from samples
''' '''

View file

@ -45,6 +45,7 @@ class LdrToHdrSampling(desc.CommandLineNode):
parallelization = desc.Parallelization(blockSize=2) parallelization = desc.Parallelization(blockSize=2)
commandLineRange = '--rangeStart {rangeStart} --rangeSize {rangeBlockSize}' commandLineRange = '--rangeStart {rangeStart} --rangeSize {rangeBlockSize}'
category = 'Panorama HDR'
documentation = ''' documentation = '''
Sample pixels from Low range images for HDR creation Sample pixels from Low range images for HDR creation
''' '''

View file

@ -6,6 +6,8 @@ from meshroom.core import desc
class LightingEstimation(desc.CommandLineNode): class LightingEstimation(desc.CommandLineNode):
commandLine = 'aliceVision_utils_lightingEstimation {allParams}' commandLine = 'aliceVision_utils_lightingEstimation {allParams}'
category = 'Utils'
inputs = [ inputs = [
desc.File( desc.File(
name='input', name='input',

View file

@ -5,6 +5,8 @@ from meshroom.core import desc
class MergeMeshes(desc.CommandLineNode): class MergeMeshes(desc.CommandLineNode):
commandLine = 'aliceVision_utils_mergeMeshes {allParams}' commandLine = 'aliceVision_utils_mergeMeshes {allParams}'
category = 'Utils'
documentation = ''' documentation = '''
This node allows to merge two meshes in one. This node allows to merge two meshes in one.

View file

@ -5,10 +5,10 @@ from meshroom.core import desc
class MeshDecimate(desc.CommandLineNode): class MeshDecimate(desc.CommandLineNode):
commandLine = 'aliceVision_meshDecimate {allParams}' commandLine = 'aliceVision_meshDecimate {allParams}'
cpu = desc.Level.NORMAL cpu = desc.Level.NORMAL
ram = desc.Level.NORMAL ram = desc.Level.NORMAL
category = 'Mesh Post-Processing'
documentation = ''' documentation = '''
This node allows to reduce the density of the Mesh. This node allows to reduce the density of the Mesh.
''' '''

View file

@ -6,6 +6,7 @@ from meshroom.core import desc
class MeshDenoising(desc.CommandLineNode): class MeshDenoising(desc.CommandLineNode):
commandLine = 'aliceVision_meshDenoising {allParams}' commandLine = 'aliceVision_meshDenoising {allParams}'
category = 'Mesh Post-Processing'
documentation = ''' documentation = '''
This experimental node allows to reduce noise from a Mesh. This experimental node allows to reduce noise from a Mesh.
for now, the parameters are difficult to control and vary a lot from one dataset to another. for now, the parameters are difficult to control and vary a lot from one dataset to another.

View file

@ -5,6 +5,8 @@ from meshroom.core import desc
class MeshFiltering(desc.CommandLineNode): class MeshFiltering(desc.CommandLineNode):
commandLine = 'aliceVision_meshFiltering {allParams}' commandLine = 'aliceVision_meshFiltering {allParams}'
category = 'Dense Reconstruction'
documentation = ''' documentation = '''
This node applies a Laplacian filtering to remove local defects from the raw Meshing cut. This node applies a Laplacian filtering to remove local defects from the raw Meshing cut.
''' '''

View file

@ -5,10 +5,10 @@ from meshroom.core import desc
class MeshResampling(desc.CommandLineNode): class MeshResampling(desc.CommandLineNode):
commandLine = 'aliceVision_meshResampling {allParams}' commandLine = 'aliceVision_meshResampling {allParams}'
cpu = desc.Level.NORMAL cpu = desc.Level.NORMAL
ram = desc.Level.NORMAL ram = desc.Level.NORMAL
category = 'Mesh Post-Processing'
documentation = ''' documentation = '''
This node allows to recompute the mesh surface with a new topology and uniform density. This node allows to recompute the mesh surface with a new topology and uniform density.
''' '''

View file

@ -9,6 +9,7 @@ class Meshing(desc.CommandLineNode):
cpu = desc.Level.INTENSIVE cpu = desc.Level.INTENSIVE
ram = desc.Level.INTENSIVE ram = desc.Level.INTENSIVE
category = 'Dense Reconstruction'
documentation = ''' documentation = '''
This node creates a dense geometric surface representation of the scene. This node creates a dense geometric surface representation of the scene.

View file

@ -9,13 +9,12 @@ from meshroom.core import desc
class PanoramaCompositing(desc.CommandLineNode): class PanoramaCompositing(desc.CommandLineNode):
commandLine = 'aliceVision_panoramaCompositing {allParams}' commandLine = 'aliceVision_panoramaCompositing {allParams}'
size = desc.DynamicNodeSize('input') size = desc.DynamicNodeSize('input')
parallelization = desc.Parallelization(blockSize=5) parallelization = desc.Parallelization(blockSize=5)
commandLineRange = '--rangeIteration {rangeIteration} --rangeSize {rangeBlockSize}' commandLineRange = '--rangeIteration {rangeIteration} --rangeSize {rangeBlockSize}'
cpu = desc.Level.INTENSIVE cpu = desc.Level.INTENSIVE
ram = desc.Level.INTENSIVE ram = desc.Level.INTENSIVE
category = 'Panorama HDR'
documentation = ''' documentation = '''
Once the images have been transformed geometrically (in PanoramaWarping), Once the images have been transformed geometrically (in PanoramaWarping),
they have to be fused together in a single panorama image which looks like a single photography. they have to be fused together in a single panorama image which looks like a single photography.

View file

@ -10,6 +10,7 @@ class PanoramaEstimation(desc.CommandLineNode):
commandLine = 'aliceVision_panoramaEstimation {allParams}' commandLine = 'aliceVision_panoramaEstimation {allParams}'
size = desc.DynamicNodeSize('input') size = desc.DynamicNodeSize('input')
category = 'Panorama HDR'
documentation = ''' documentation = '''
Estimate relative camera rotations between input images. Estimate relative camera rotations between input images.
''' '''

View file

@ -7,6 +7,7 @@ class PanoramaInit(desc.CommandLineNode):
commandLine = 'aliceVision_panoramaInit {allParams}' commandLine = 'aliceVision_panoramaInit {allParams}'
size = desc.DynamicNodeSize('input') size = desc.DynamicNodeSize('input')
category = 'Panorama HDR'
documentation = ''' documentation = '''
This node allows to setup the Panorama: This node allows to setup the Panorama:

View file

@ -9,11 +9,10 @@ from meshroom.core import desc
class PanoramaMerging(desc.CommandLineNode): class PanoramaMerging(desc.CommandLineNode):
commandLine = 'aliceVision_panoramaMerging {allParams}' commandLine = 'aliceVision_panoramaMerging {allParams}'
size = desc.DynamicNodeSize('input') size = desc.DynamicNodeSize('input')
cpu = desc.Level.NORMAL cpu = desc.Level.NORMAL
ram = desc.Level.INTENSIVE ram = desc.Level.INTENSIVE
category = 'Panorama HDR'
documentation = ''' documentation = '''
Merge all inputs coming from PanoramaComposiring Merge all inputs coming from PanoramaComposiring
''' '''

View file

@ -9,6 +9,7 @@ class PanoramaPrepareImages(desc.CommandLineNode):
commandLine = 'aliceVision_panoramaPrepareImages {allParams}' commandLine = 'aliceVision_panoramaPrepareImages {allParams}'
size = desc.DynamicNodeSize('input') size = desc.DynamicNodeSize('input')
category = 'Panorama HDR'
documentation = ''' documentation = '''
Prepare images for Panorama pipeline: ensures that images orientations are coherent. Prepare images for Panorama pipeline: ensures that images orientations are coherent.
''' '''

View file

@ -9,10 +9,10 @@ from meshroom.core import desc
class PanoramaSeams(desc.CommandLineNode): class PanoramaSeams(desc.CommandLineNode):
commandLine = 'aliceVision_panoramaSeams {allParams}' commandLine = 'aliceVision_panoramaSeams {allParams}'
size = desc.DynamicNodeSize('input') size = desc.DynamicNodeSize('input')
cpu = desc.Level.INTENSIVE cpu = desc.Level.INTENSIVE
ram = desc.Level.INTENSIVE ram = desc.Level.INTENSIVE
category = 'Panorama HDR'
documentation = ''' documentation = '''
Estimate the seams lines between the inputs to provide an optimal compositing in a further node Estimate the seams lines between the inputs to provide an optimal compositing in a further node
''' '''

View file

@ -9,10 +9,10 @@ from meshroom.core import desc
class PanoramaWarping(desc.CommandLineNode): class PanoramaWarping(desc.CommandLineNode):
commandLine = 'aliceVision_panoramaWarping {allParams}' commandLine = 'aliceVision_panoramaWarping {allParams}'
size = desc.DynamicNodeSize('input') size = desc.DynamicNodeSize('input')
parallelization = desc.Parallelization(blockSize=5) parallelization = desc.Parallelization(blockSize=5)
commandLineRange = '--rangeStart {rangeStart} --rangeSize {rangeBlockSize}' commandLineRange = '--rangeStart {rangeStart} --rangeSize {rangeBlockSize}'
category = 'Panorama HDR'
documentation = ''' documentation = '''
Compute the image warping for each input image in the panorama coordinate system. Compute the image warping for each input image in the panorama coordinate system.
''' '''

View file

@ -9,6 +9,7 @@ class PrepareDenseScene(desc.CommandLineNode):
parallelization = desc.Parallelization(blockSize=40) parallelization = desc.Parallelization(blockSize=40)
commandLineRange = '--rangeStart {rangeStart} --rangeSize {rangeBlockSize}' commandLineRange = '--rangeStart {rangeStart} --rangeSize {rangeBlockSize}'
category = 'Dense Reconstruction'
documentation = ''' documentation = '''
This node export undistorted images so the depth map and texturing can be computed on Pinhole images without distortion. This node export undistorted images so the depth map and texturing can be computed on Pinhole images without distortion.
''' '''

View file

@ -11,6 +11,7 @@ import os
class Publish(desc.Node): class Publish(desc.Node):
size = desc.DynamicNodeSize('inputFiles') size = desc.DynamicNodeSize('inputFiles')
category = 'Export'
documentation = ''' documentation = '''
This node allows to copy files into a specific folder. This node allows to copy files into a specific folder.
''' '''

View file

@ -9,6 +9,7 @@ class SfMAlignment(desc.CommandLineNode):
commandLine = 'aliceVision_utils_sfmAlignment {allParams}' commandLine = 'aliceVision_utils_sfmAlignment {allParams}'
size = desc.DynamicNodeSize('input') size = desc.DynamicNodeSize('input')
category = 'Utils'
documentation = ''' documentation = '''
This node allows to change the coordinate system of one SfM scene to align it on another one. This node allows to change the coordinate system of one SfM scene to align it on another one.

View file

@ -9,6 +9,7 @@ class SfMTransfer(desc.CommandLineNode):
commandLine = 'aliceVision_utils_sfmTransfer {allParams}' commandLine = 'aliceVision_utils_sfmTransfer {allParams}'
size = desc.DynamicNodeSize('input') size = desc.DynamicNodeSize('input')
category = 'Utils'
documentation = ''' documentation = '''
This node allows to transfer poses and/or intrinsics form one SfM scene onto another one. This node allows to transfer poses and/or intrinsics form one SfM scene onto another one.
''' '''

View file

@ -9,6 +9,7 @@ class SfMTransform(desc.CommandLineNode):
commandLine = 'aliceVision_utils_sfmTransform {allParams}' commandLine = 'aliceVision_utils_sfmTransform {allParams}'
size = desc.DynamicNodeSize('input') size = desc.DynamicNodeSize('input')
category = 'Utils'
documentation = ''' documentation = '''
This node allows to change the coordinate system of one SfM scene. This node allows to change the coordinate system of one SfM scene.

View file

@ -52,6 +52,7 @@ def progressUpdate(size=None, progress=None, logManager=None):
class SketchfabUpload(desc.Node): class SketchfabUpload(desc.Node):
size = desc.DynamicNodeSize('inputFiles') size = desc.DynamicNodeSize('inputFiles')
category = 'Export'
documentation = ''' documentation = '''
Upload a textured mesh on Sketchfab. Upload a textured mesh on Sketchfab.
''' '''

View file

@ -7,6 +7,7 @@ class StructureFromMotion(desc.CommandLineNode):
commandLine = 'aliceVision_incrementalSfM {allParams}' commandLine = 'aliceVision_incrementalSfM {allParams}'
size = desc.DynamicNodeSize('input') size = desc.DynamicNodeSize('input')
category = 'Sparse Reconstruction'
documentation = ''' documentation = '''
This node will analyze feature matches to understand the geometric relationship behind all the 2D observations, This node will analyze feature matches to understand the geometric relationship behind all the 2D observations,
and infer the rigid scene structure (3D points) with the pose (position and orientation) and internal calibration of all cameras. and infer the rigid scene structure (3D points) with the pose (position and orientation) and internal calibration of all cameras.

View file

@ -8,6 +8,7 @@ class Texturing(desc.CommandLineNode):
cpu = desc.Level.INTENSIVE cpu = desc.Level.INTENSIVE
ram = desc.Level.INTENSIVE ram = desc.Level.INTENSIVE
category = 'Dense Reconstruction'
documentation = ''' documentation = '''
This node computes the texturing on the mesh. This node computes the texturing on the mesh.

View file

@ -228,7 +228,7 @@ Item {
// Dynamically add the menu categories // Dynamically add the menu categories
Instantiator { Instantiator {
model: !(searchBar.text != "") ? Object.keys(newNodeMenu.parseCategories()) : undefined model: !(searchBar.text != "") ? Object.keys(newNodeMenu.parseCategories()).sort() : undefined
onObjectAdded: newNodeMenu.insertMenu(index+1, object ) // add sub-menu under the search bar onObjectAdded: newNodeMenu.insertMenu(index+1, object ) // add sub-menu under the search bar
onObjectRemoved: newNodeMenu.removeMenu(object) onObjectRemoved: newNodeMenu.removeMenu(object)