Python scripts to denoise point clouds and evaluate results.
This package provides implementations of two algorithms from recent literature. The Non Iterative Feature Preserving method has been enhanced with the inclusion of different probability distributions for weighting of the point shifts.
Download the repository as a zip file. Extract the package and go into the project directory. From there, perform the following to install all necessary python packages:
pip install -r requirements.txt
To run an automated test that will check if everything is working:
python3 auto_test.py
When prompted to select your system, make sure to choose the right one. Currently only Linux and MacOS are supported. The prompt will list the available systems.
When prompted to make any selection out of a numbered list of options, type the number as your response.
To clean up all the extra files created by the test:
python3 test_cleanup.py
To run denoising with user input:
python3 denoise.py
To run ICP on two .xyz files:
python3 run_icp.py
When prompted for a filename, always include the extension (it will either be .xyz or .gts, the prompt will tell you).
The package includes two .xyz files for testing.
- bunny.xyz is the base point cloud of a bunny
- bunny_noisy.xyz is the same point cloud with artificial noise
bunny_noisy.xyz serves for input, and bunny.xyz serves as a base for running ICP.
- Write file conversion (.xyz to .gts)
- Choose / Implement ICP
- Write overall execution script
- Compile the smoother.c to MacOS
- Compile the smoother.c to Windows