openalea.phenomenal.multi_view_reconstruction.multi_view_reconstruction.reconstruction_3d#

openalea.phenomenal.multi_view_reconstruction.multi_view_reconstruction.reconstruction_3d(image_views, voxels_size=4, error_tolerance=0, start=None, clear_outside=True)[source]#

Construct a list of voxel represented object with positive value on binary image in images of images_projections.

Parameters:
  • image_views ({name: ImageView, ...}) – Dict of phenomenal.object.ImageView objects gathering image, projection, where image is a binary image (numpy.ndarray) and projection a function projecting (x, y, z) -> (u, v) coordinate on image

  • voxels_size (float, optional) – Edge length of reconstructed voxels

  • error_tolerance (int, optional) – Control the degree of consistency of the reconstructed object with its projected views If not provided the reconstruction is fully consistent with all views (error_tolerance=0) If positive, the number of inconsistent views tolerated per voxel If negative, a composite 3d reconstruction is computed, iteratively aggregating reconstructions of different tolerance, from zero to abs(error_tolerance), discarding at each step voxels projecting on projections of already reconstructed

  • start (VoxelGrid | [Voxel,..], optional) – A voxel grid to be used as starting point. If None (default), a grid returned by defaults of openalea.phenomenal.multiview_reconstruction.reconstruction_grid

  • clear_outside (bool | str | [str,...], optional) – Should voxels projected outside image_views be kept ? True (default) or False set a unique rule for all views. if a list of name is provided, only image_views whose key starts with names are used to clear voxels

Returns:

out

Return type:

VoxelGrid