Awesome
This is a PCL grabber for DepthSense devices (e.g. Creative Senz3D, SoftKinetic DS325) that supports both Linux and Windows versions of the SDK.
Note: the grabber has been merged into upstream PCL and will be a part of the next release (1.8.0). This repository is kept only for historical reasons.
Requirements
-
Point Cloud Library 1.7.2
Installation
Linux
-
Clone the repository:
git clone https://github.com/taketwo/ds.git ds cd ds
-
Copy the contents of
third-party/compatibility
to thelib
directory of the SDK installation. For example, assuming that SDK was installed in/opt/softkinetic/DepthSenseSDK
(default), do:sudo cp third-party/compatibility/* /opt/softkinetic/DepthSenseSDK/lib/
-
Configure and build the project:
mkdir build cd build cmake -DBUILD_TYPE=Release .. make depth_sense_viewer
Windows
- Clone the repository.
- Configure this project using
cmake-gui
. - Open and build the created Visual Studio solution.
Depth Sense Viewer
Connect a DepthSense camera and run the depth_sense_viewer
executable.
Run with --help
option to see the usage guide:
****************************************************************************
* *
* DEPTH SENSE VIEWER - Usage Guide *
* *
****************************************************************************
Usage: ./depth_sense_viewer [Options] device_id
Options:
--help, -h : Show this help
--list, -l : List connected DepthSense devices
--xyz : View XYZ-only clouds
Keyboard commands:
When the focus is on the viewer window, the following keyboard commands
are available:
* t/T : increase or decrease depth data confidence threshold
* k : enable next temporal filtering method
* b : toggle bilateral filtering
* a/A : increase or decrease bilateral filter spatial sigma
* z/Z : increase or decrease bilateral filter range sigma
* s : save the last grabbed cloud to disk
* h : print the list of standard PCL viewer commands
Notes:
The device to grab data from is selected using device_id argument. It
could be either:
* serial number (e.g. YZVF0780239000261D)
* device index (e.g. #2 for the second connected device)
If device_id is not given, then the first available device will be used.