A docker version to execute the Open Mesh Reconstructor algorithm or 3D object reconstruction.
1.2K
A docker version to execute the Open Mesh Reconstructor algorithm or 3D object reconstruction.
Described in: Coro, G., Palma, M., Ellenbroek, A., Panichi, G., Nair, T., & Pagano, P. (2019). Reconstructing 3D virtual environments within a collaborative e‐infrastructure. Concurrency and Computation: Practice and Experience, 31(11), e5028.
Usage notes (LINUX + NVIDIA graphic card):
docker run --runtime=nvidia --gpus all -i --rm -v ${PWD}:/home/docker/ --name omr_latest gianpaolocoro/open_mesh_reconstructor:latest /bin/sh -c "export PATH=/usr/local/cuda-10.0/bin/:$PATH&& nvidia-smi&& nvcc -V && cd /OMR/ && cp /home/docker/input.zip /OMR/ && java -cp ./omr2.jar org.gcube.dataanalysis.imageprocessing.mesh.OpenMeshReconstructorv2 /OMR/input.zip krun ULTRA false false /OMR/reco.zip && cp /OMR/reconstruction.zip /home/docker/reconstruction.zip && chmod 777 /home/docker/reconstruction.zip"
Get the reconstructed point cloud (in PLY format), the object (in .OBJ format), and the texture from reconstruction.zip in the same folder as the input.zip file. An output example can be downloaded here: https://data.d4science.net/omha
Usage notes (LINUX WITHOUT an NVIDIA graphic card):
docker run --rm -v ${PWD}:/home/docker/ --name omr_latest_nocuda_linux gianpaolocoro/open_mesh_reconstructor:nocuda /bin/sh -c "cd /OMR/ && cp /home/docker/input.zip /OMR/ && java -cp ./omr3.jar org.gcube.dataanalysis.imageprocessing.mesh.OpenMeshReconstructorv3 /OMR/input.zip ULTRA false && cp /OMR/reconstruction.zip /home/docker/reconstruction.zip && chmod 777 /home/docker/reconstruction.zip"
Get the reconstructed point cloud (in PLY format), the object (in .PLY format), and the texture from reconstruction.zip in the same folder as the input.zip file. An output example can be downloaded here: https://data.d4science.net/qpt6
Usage notes (WINDOWS WITHOUT an NVIDIA graphic card):
docker run --rm -v %cd%:/home/docker/ --name omr_latest_nocuda_win gianpaolocoro/open_mesh_reconstructor:nocuda_winOS /bin/sh -c "cd /OMR/ && cp /home/docker/input.zip /OMR/ && java -cp ./omr3.jar org.gcube.dataanalysis.imageprocessing.mesh.OpenMeshReconstructorv3 /OMR/input.zip ULTRA false && cp /OMR/reconstruction.zip /home/docker/reconstruction.zip && chmod 777 /home/docker/reconstruction.zip"
Get the reconstructed point cloud (in PLY format), the object (in .PLY format), and the texture from reconstruction.zip in the same folder as the input.zip file. An output example can be downloaded here: https://data.d4science.net/qpt6
There are only three parameters in the example call: "ULTRA false false"
The first is the ReconstructionAccuracy, which can be one among ULTRA, HIGH, or NORMAL. This is the level of reconstruction accuracy. This parameter has consequences on computational time. Typically, use ULTRA for small images or when object details are not clear. Use HIGH for large collections of medium-size images (100 photos). Use NORMAL for very large collections of high resolution images.
The second is BruteForceSearch, which can be set to false or true. This forces the use of brute force search, which enhances the number of matching points between images. This should be used when the algorithm cannot reconstruct the mesh with the default algorithm (FAST CASCADE HASHING L2). Brute forcing is used by default if ULTRA accuracy is selected.
The third (only available for the NVIDIA-enabled version) is PointCloudOnly, which can be set to false or true. This is an option to generate the point cloud only, without mesh reconstruction. It is useful for fast prototyping, to check the potential results of a set of parameters.
Content type
Image
Digest
sha256:c47ce87fb…
Size
11.6 GB
Last updated
about 2 years ago
docker pull gianpaolocoro/open_mesh_reconstructor