[bin][photogrammetry] initialize CameraInit node using 'buildIntrinsics'

* build the complete image files list in meshroom_photogrammetry from input arguments
* initialize CameraInit with input sfm data (views/intrinsics) if any
* call buildIntrinsics with the resolved input images list
This commit is contained in:
Yann Lanthony 2019-01-29 15:06:58 +01:00
parent c6a3f0d587
commit 44371211d5
2 changed files with 25 additions and 21 deletions

View file

@ -27,12 +27,11 @@ def findImageFiles(folder):
return [os.path.join(folder, filename) for filename in os.listdir(folder) if isImageFile(filename)]
def photogrammetry(inputFolder='', inputImages=(), inputViewpoints=(), inputIntrinsics=(), output=''):
def photogrammetry(inputImages=list(), inputViewpoints=list(), inputIntrinsics=list(), output=''):
"""
Create a new Graph with a complete photogrammetry pipeline.
Args:
inputFolder (str, optional): folder containing image files
inputImages (list of str, optional): list of image file paths
inputViewpoints (list of Viewpoint, optional): list of Viewpoints
output (str, optional): the path to export reconstructed model to
@ -44,15 +43,9 @@ def photogrammetry(inputFolder='', inputImages=(), inputViewpoints=(), inputIntr
with GraphModification(graph):
sfmNodes, mvsNodes = photogrammetryPipeline(graph)
cameraInit = sfmNodes[0]
if inputFolder:
images = findImageFiles(inputFolder)
cameraInit.viewpoints.extend([{'path': image} for image in images])
if inputImages:
cameraInit.viewpoints.extend([{'path': image} for image in inputImages])
if inputViewpoints:
cameraInit.viewpoints.extend(inputViewpoints)
if inputIntrinsics:
cameraInit.intrinsics.extend(inputIntrinsics)
cameraInit.viewpoints.extend([{'path': image} for image in inputImages])
cameraInit.viewpoints.extend(inputViewpoints)
cameraInit.intrinsics.extend(inputIntrinsics)
if output:
texturing = mvsNodes[-1]