mirror of
https://github.com/alicevision/Meshroom.git
synced 2025-04-29 10:17:27 +02:00
128 lines
4.5 KiB
Python
128 lines
4.5 KiB
Python
__version__ = "1.0"
|
|
|
|
from meshroom.core import desc
|
|
|
|
|
|
class LDRToHDR(desc.CommandLineNode):
|
|
commandLine = 'aliceVision_convertLDRToHDR {allParams}'
|
|
|
|
inputs = [
|
|
desc.ListAttribute(
|
|
elementDesc=desc.File(
|
|
name='inputFolder',
|
|
label='Input File/Folder',
|
|
description="Folder containing LDR images",
|
|
value='',
|
|
uid=[0],
|
|
),
|
|
name="input",
|
|
label="Input Files or Folders",
|
|
description='Folders containing LDR images.',
|
|
),
|
|
desc.BoolParam(
|
|
name='fisheyeLens',
|
|
label='Fisheye Lens',
|
|
description="Enable if a fisheye lens has been used.\n "
|
|
"This will improve the estimation of the Camera's Response Function by considering only the pixels in the center of the image\n"
|
|
"and thus ignore undefined/noisy pixels outside the circle defined by the fisheye lens.",
|
|
value=True,
|
|
uid=[0],
|
|
),
|
|
desc.ChoiceParam(
|
|
name='calibrationMethod',
|
|
label='Calibration Method',
|
|
description="Method used for camera calibration \n"
|
|
" * linear \n"
|
|
" * robertson \n"
|
|
" * debevec \n"
|
|
" * grossberg",
|
|
values=['linear', 'robertson', 'debevec', 'grossberg'],
|
|
value='linear',
|
|
exclusive=True,
|
|
uid=[0],
|
|
),
|
|
desc.File(
|
|
name='inputResponse',
|
|
label='Input Response',
|
|
description="external camera response file path to fuse all LDR images together.",
|
|
value='',
|
|
uid=[0],
|
|
),
|
|
desc.StringParam(
|
|
name='targetExposureImage',
|
|
label='Target Exposure Image',
|
|
description="LDR image(s) name(s) at the target exposure for the output HDR image(s) to be centered.",
|
|
value='',
|
|
uid=[0],
|
|
),
|
|
desc.ChoiceParam(
|
|
name='calibrationWeight',
|
|
label='Calibration Weight',
|
|
description="Weight function used to calibrate camera response \n"
|
|
" * default (automatically selected according to the calibrationMethod) \n"
|
|
" * gaussian \n"
|
|
" * triangle \n"
|
|
" * plateau",
|
|
value='default',
|
|
values=['default', 'gaussian', 'triangle', 'plateau'],
|
|
exclusive=True,
|
|
uid=[0],
|
|
),
|
|
desc.ChoiceParam(
|
|
name='fusionWeight',
|
|
label='Fusion Weight',
|
|
description="Weight function used to fuse all LDR images together \n"
|
|
" * gaussian \n"
|
|
" * triangle \n"
|
|
" * plateau",
|
|
value='gaussian',
|
|
values=['gaussian', 'triangle', 'plateau'],
|
|
exclusive=True,
|
|
uid=[0],
|
|
),
|
|
desc.FloatParam(
|
|
name='expandDynamicRange',
|
|
label='Expand Dynamic Range',
|
|
description="Correction of clamped high values in dynamic range: \n"
|
|
" - use 0 for no correction \n"
|
|
" - use 0.5 for interior lighting \n"
|
|
" - use 1 for outdoor lighting",
|
|
value=1,
|
|
range=(0, 1, 0.1),
|
|
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=[],
|
|
),
|
|
desc.File(
|
|
name='recoverPath',
|
|
label='Output Recovered Files',
|
|
description="(debug) Folder for recovered LDR images at target exposures.",
|
|
advanced=True,
|
|
value='',
|
|
uid=[],
|
|
),
|
|
]
|
|
|
|
outputs = [
|
|
desc.File(
|
|
name='output',
|
|
label='Output Folder',
|
|
description="Output folder for HDR images",
|
|
value=desc.Node.internalFolder,
|
|
uid=[],
|
|
),
|
|
desc.File(
|
|
name='outputResponse',
|
|
label='Output Response',
|
|
description="Output response function path.",
|
|
value=desc.Node.internalFolder + 'response.csv',
|
|
uid=[],
|
|
),
|
|
]
|