Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/nandite/pclwalkerviewer
PclWalkerViewer is a C++20 utility executable that walk (recursively on demand) a directory and sequentially display the point clouds its contains into a PCL 3D viewer. It supports PCD and PLY format. The viewer is controlled by keyboard inputs.
https://github.com/nandite/pclwalkerviewer
3d-viewer 3d-visualization cpp cpp20 lidar lidar-point-cloud pcd pcl pcl-library perception ply point-cloud pointcloud robotics stl vizualisation
Last synced: about 16 hours ago
JSON representation
PclWalkerViewer is a C++20 utility executable that walk (recursively on demand) a directory and sequentially display the point clouds its contains into a PCL 3D viewer. It supports PCD and PLY format. The viewer is controlled by keyboard inputs.
- Host: GitHub
- URL: https://github.com/nandite/pclwalkerviewer
- Owner: Nandite
- License: other
- Created: 2022-10-20T15:55:15.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2022-11-01T17:32:35.000Z (about 2 years ago)
- Last Synced: 2024-11-28T02:11:15.911Z (2 months ago)
- Topics: 3d-viewer, 3d-visualization, cpp, cpp20, lidar, lidar-point-cloud, pcd, pcl, pcl-library, perception, ply, point-cloud, pointcloud, robotics, stl, vizualisation
- Language: C++
- Homepage:
- Size: 3.96 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
PclWalkerViewer
===============[![][license-image]][license]
![][platform-image][license-image]: https://img.shields.io/badge/license-MIT-green.svg?style=flat-square
[license]: https://github.com/Nandite/PclWalkerViewer/blob/master/LICENSE[platform-image]: https://img.shields.io/badge/platorms-linux64%20%7C%20osx-lightgrey?style=flat-square
PclWalkerViewer is a C++20 utility executable that walk (recursively on demand) a directory and sequentially display
the point clouds its contains into a PCL 3D viewer. It supports PCD and PLY format.
The viewer is controlled by keyboard inputs.![](res/PclWalkerViewer.gif)
## Build and install
```sh
mkdir build && cd build &&\
cmake -DCMAKE_BUILD_TYPE=Release .. &&\
make &&\
sudo make install
```
## UsageUpon call, you need to provide the directory to walk into and search clouds:
```sh
pcl_walker_viewer -d /directory/to/walk
```By default, the walker will only search for clouds into the provided directory. However, using the _**-r**_ option, the walker
will recursively descend into subdirectories and search for clouds into them:```sh
pcl_walker_viewer -r -d /directory/to/walk
```
or (using long options)
```sh
pcl_walker_viewer --recursive --directory /directory/to/walk
```### Keymap
You can control the viewer using the following inputs of the keyboard:
- [<-] [->] (Left or Right arrow) to display the previous/next cloud
- [d] to change the color of the cloud
- [t] to toggle the display of origin coordinate system
- [Up] to increase the size of the origin coordinate system
- [Down] to decrease the size of the origin coordinate system### Load strategy
Two strategies for the loading the clouds are supported:
- **Immediate**: Using this strategy, the walker will load into memory all the found clouds. This strategy offer quicker reaction
time from the viewer when displaying the next or previous cloud, especially for large clouds. It comes however at
the cost of more memory consumption.
- **Just in time**: This strategy will load the clouds in memory only when the viewer need to display them. It is better when using
very large clouds on a system with limited memory. It comes however with more latency when requesting to display the next or previous
cloud as the system has to first load the cloud into memory.By default, the system operates with the **Just in time** strategy. The strategy can be selected using the _**-s**_ option:
```sh
pcl_walker_viewer -r -d /directory/to/walk -s immediate
```
or```sh
pcl_walker_viewer -r -d /directory/to/walk -s jit
```### Auto focus
Using the option _**--auto-focus**_, the camera will automatically focus on a cloud when
loaded. This functionality is disabled by default.```sh
pcl_walker_viewer -r -d /directory/to/walk --auto-focus
```## Dependencies
- At least [Point Cloud Libary](https://www.pointclouds.org/) 1.9.
- At least [Boost](https://www.boost.org/) 1.71.0.
- A compiler supporting [C++20](https://en.cppreference.com/w/cpp/compiler_support/20) (concepts and range libraries are required).## Feedback
Don't hesitate if you have any suggestions for improving this project, or if you find any error. I will be glad to
hear from you. Contributions are welcomed :)## License
Distributed under the MIT Software License (X11 license).
See accompanying file LICENSE.