[multiview] Add 2 new nodes to the HDRI pipeline: SfMTransform and ImageProcessing

This commit is contained in:
Fabien Castan 2020-06-28 15:58:26 +02:00
parent 6e6bb6f491
commit 05a93c28a2

View file

@ -146,8 +146,9 @@ def hdriPipeline(graph):
input=cameraInit.output) input=cameraInit.output)
featureExtraction = graph.addNewNode('FeatureExtraction', featureExtraction = graph.addNewNode('FeatureExtraction',
input=ldr2hdr.outSfMDataFilename) input=ldr2hdr.outSfMDataFilename,
featureExtraction.describerPreset.value = 'high' describerPreset='high')
panoramaInit = graph.addNewNode('PanoramaInit', panoramaInit = graph.addNewNode('PanoramaInit',
input=featureExtraction.input, input=featureExtraction.input,
dependency=[featureExtraction.output] # Workaround for tractor submission with a fake dependency dependency=[featureExtraction.output] # Workaround for tractor submission with a fake dependency
@ -157,6 +158,7 @@ def hdriPipeline(graph):
input=panoramaInit.outSfMDataFilename, input=panoramaInit.outSfMDataFilename,
featuresFolders=[featureExtraction.output], featuresFolders=[featureExtraction.output],
method='FrustumOrVocabularyTree') method='FrustumOrVocabularyTree')
featureMatching = graph.addNewNode('FeatureMatching', featureMatching = graph.addNewNode('FeatureMatching',
input=imageMatching.input, input=imageMatching.input,
featuresFolders=imageMatching.featuresFolders, featuresFolders=imageMatching.featuresFolders,
@ -167,11 +169,20 @@ def hdriPipeline(graph):
featuresFolders=featureMatching.featuresFolders, featuresFolders=featureMatching.featuresFolders,
matchesFolders=[featureMatching.output]) matchesFolders=[featureMatching.output])
panoramaOrientation = graph.addNewNode('SfMTransform',
input=panoramaEstimation.output,
method='from_single_camera')
panoramaWarping = graph.addNewNode('PanoramaWarping', panoramaWarping = graph.addNewNode('PanoramaWarping',
input=panoramaEstimation.output) input=panoramaOrientation.output)
panoramaCompositing = graph.addNewNode('PanoramaCompositing', panoramaCompositing = graph.addNewNode('PanoramaCompositing',
input=panoramaWarping.output) input=panoramaWarping.output)
imageProcessing = graph.addNewNode('ImageProcessing',
input=panoramaCompositing.output,
fillHoles=True,
extension='exr')
return [ return [
cameraInit, cameraInit,
@ -180,8 +191,10 @@ def hdriPipeline(graph):
imageMatching, imageMatching,
featureMatching, featureMatching,
panoramaEstimation, panoramaEstimation,
panoramaOrientation,
panoramaWarping, panoramaWarping,
panoramaCompositing, panoramaCompositing,
imageProcessing,
] ]