Point Cloud Library (PCL)
1.8.1
|
Grabber for DepthSense devices (e.g. More...
#include <pcl/io/depth_sense_grabber.h>
Public Types | |
enum | Mode { DepthSense_QVGA_30Hz = 0 } |
enum | TemporalFilteringType { DepthSense_None = 0, DepthSense_Median = 1, DepthSense_Average = 2 } |
typedef void() | sig_cb_depth_sense_point_cloud(const pcl::PointCloud< pcl::PointXYZ >::ConstPtr &) |
typedef void() | sig_cb_depth_sense_point_cloud_rgba(const pcl::PointCloud< pcl::PointXYZRGBA >::ConstPtr &) |
Public Member Functions | |
DepthSenseGrabber (const std::string &device_id="") | |
Create a grabber for a DepthSense device. More... | |
virtual | ~DepthSenseGrabber () throw () |
virtual void | start () |
For devices that are streaming, the streams are started by calling this method. More... | |
virtual void | stop () |
For devices that are streaming, the streams are stopped. More... | |
virtual bool | isRunning () const |
Indicates whether the grabber is streaming or not. More... | |
virtual std::string | getName () const |
returns the name of the concrete subclass. More... | |
virtual float | getFramesPerSecond () const |
returns fps. More... | |
void | setConfidenceThreshold (int threshold) |
Set the confidence threshold for depth data. More... | |
void | enableTemporalFiltering (TemporalFilteringType type, size_t window_size=1) |
Enable temporal filtering of the depth data received from the device. More... | |
void | disableTemporalFiltering () |
Disable temporal filtering. More... | |
std::string | getDeviceSerialNumber () const |
Get the serial number of device captured by the grabber. More... | |
![]() | |
Grabber () | |
Constructor. More... | |
virtual | ~Grabber () throw () |
virtual desctructor. More... | |
template<typename T > | |
boost::signals2::connection | registerCallback (const boost::function< T > &callback) |
registers a callback function/method to a signal with the corresponding signature More... | |
template<typename T > | |
bool | providesCallback () const |
indicates whether a signal with given parameter-type exists or not More... | |
Friends | |
struct | pcl::io::depth_sense::DepthSenseGrabberImpl |
Additional Inherited Members | |
![]() | |
virtual void | signalsChanged () |
template<typename T > | |
boost::signals2::signal< T > * | find_signal () const |
template<typename T > | |
int | num_slots () const |
template<typename T > | |
void | disconnect_all_slots () |
template<typename T > | |
void | block_signal () |
template<typename T > | |
void | unblock_signal () |
void | block_signals () |
void | unblock_signals () |
template<typename T > | |
boost::signals2::signal< T > * | createSignal () |
![]() | |
std::map< std::string, boost::signals2::signal_base * > | signals_ |
std::map< std::string, std::vector< boost::signals2::connection > > | connections_ |
std::map< std::string, std::vector< boost::signals2::shared_connection_block > > | shared_connections_ |
Grabber for DepthSense devices (e.g.
Creative Senz3D, SoftKinetic DS325).
Requires SoftKinetic DepthSense SDK.
Definition at line 57 of file depth_sense_grabber.h.
typedef void() pcl::DepthSenseGrabber::sig_cb_depth_sense_point_cloud(const pcl::PointCloud< pcl::PointXYZ >::ConstPtr &) |
Definition at line 64 of file depth_sense_grabber.h.
typedef void() pcl::DepthSenseGrabber::sig_cb_depth_sense_point_cloud_rgba(const pcl::PointCloud< pcl::PointXYZRGBA >::ConstPtr &) |
Definition at line 68 of file depth_sense_grabber.h.
Enumerator | |
---|---|
DepthSense_QVGA_30Hz |
Definition at line 70 of file depth_sense_grabber.h.
Enumerator | |
---|---|
DepthSense_None | |
DepthSense_Median | |
DepthSense_Average |
Definition at line 75 of file depth_sense_grabber.h.
pcl::DepthSenseGrabber::DepthSenseGrabber | ( | const std::string & | device_id = "" | ) |
Create a grabber for a DepthSense device.
The grabber "captures" the device, making it impossible for other grabbers to interact with it. The device is "released" when the grabber is destructed.
This will throw pcl::IOException if there are no free devices that match the supplied device_id.
[in] | device_id | device identifier, which might be a serial number, an index (with '#' prefix), or an empty string (to select the first available device) |
|
virtual |
void pcl::DepthSenseGrabber::disableTemporalFiltering | ( | ) |
Disable temporal filtering.
void pcl::DepthSenseGrabber::enableTemporalFiltering | ( | TemporalFilteringType | type, |
size_t | window_size = 1 |
||
) |
Enable temporal filtering of the depth data received from the device.
The window size parameter is not relevant for DepthSense_None
filtering type.
std::string pcl::DepthSenseGrabber::getDeviceSerialNumber | ( | ) | const |
Get the serial number of device captured by the grabber.
|
virtual |
|
inlinevirtual |
returns the name of the concrete subclass.
Implements pcl::Grabber.
Definition at line 110 of file depth_sense_grabber.h.
|
virtual |
Indicates whether the grabber is streaming or not.
This value is not defined for triggered devices.
Implements pcl::Grabber.
void pcl::DepthSenseGrabber::setConfidenceThreshold | ( | int | threshold | ) |
Set the confidence threshold for depth data.
Each pixel in a depth image output by the device has an associated confidence value. The higher this value is, the more reliable the datum is.
The depth pixels (and their associated 3D points) are filtered based on the confidence value. Those that are below the threshold are discarded (i.e. their coordinates are set to NaN).
|
virtual |
For devices that are streaming, the streams are started by calling this method.
Trigger-based devices, just trigger the device once for each call of start.
Implements pcl::Grabber.
|
virtual |
For devices that are streaming, the streams are stopped.
This method has no effect for triggered devices.
Implements pcl::Grabber.
|
friend |
Definition at line 148 of file depth_sense_grabber.h.