|
Point Cloud Library (PCL)
1.7.1
|
Base class for Image file grabber. More...
#include <pcl/io/image_grabber.h>
Inheritance diagram for pcl::ImageGrabberBase:
Collaboration diagram for pcl::ImageGrabberBase:Public Member Functions | |
| ImageGrabberBase (const std::string &directory, float frames_per_second, bool repeat, bool pclzf_mode) | |
| Constructor taking a folder of depth+[rgb] images. More... | |
| ImageGrabberBase (const std::string &depth_directory, const std::string &rgb_directory, float frames_per_second, bool repeat) | |
| ImageGrabberBase (const std::vector< std::string > &depth_image_files, float frames_per_second, bool repeat) | |
| Constructor taking a list of paths to PCD files, that are played in the order they appear in the list. More... | |
| ImageGrabberBase (const ImageGrabberBase &src) | |
| Copy constructor. More... | |
| ImageGrabberBase & | operator= (const ImageGrabberBase &src) |
| Copy operator. More... | |
| virtual | ~ImageGrabberBase () throw () |
| Virtual destructor. More... | |
| virtual void | start () |
| Starts playing the list of PCD files if frames_per_second is > 0. More... | |
| virtual void | stop () |
| Stops playing the list of PCD files if frames_per_second is > 0. More... | |
| virtual void | trigger () |
| Triggers a callback with new data. More... | |
| virtual bool | isRunning () const |
| whether the grabber is started (publishing) or not. More... | |
| virtual std::string | getName () const |
| virtual void | rewind () |
| Rewinds to the first PCD file in the list. More... | |
| virtual float | getFramesPerSecond () const |
| Returns the frames_per_second. More... | |
| bool | isRepeatOn () const |
| Returns whether the repeat flag is on. More... | |
| bool | atLastFrame () const |
| Returns if the last frame is reached. More... | |
| std::string | getCurrentDepthFileName () const |
| Returns the filename of the current indexed file. More... | |
| std::string | getPrevDepthFileName () const |
| Returns the filename of the previous indexed file SDM: adding this back in, but is this useful, or confusing? More... | |
| std::string | getDepthFileNameAtIndex (size_t idx) const |
| Get the depth filename at a particular index. More... | |
| bool | getTimestampAtIndex (size_t idx, uint64_t ×tamp) const |
| Query only the timestamp of an index, if it exists. More... | |
| void | setRGBImageFiles (const std::vector< std::string > &rgb_image_files) |
| Manually set RGB image files. More... | |
| virtual void | setCameraIntrinsics (const double focal_length_x, const double focal_length_y, const double principal_point_x, const double principal_point_y) |
| Define custom focal length and center pixel. More... | |
| virtual void | getCameraIntrinsics (double &focal_length_x, double &focal_length_y, double &principal_point_x, double &principal_point_y) const |
| Get the current focal length and center pixel. More... | |
| void | setDepthImageUnits (float units) |
| Define the units the depth data is stored in. More... | |
| void | setNumberOfThreads (unsigned int nr_threads=0) |
| Set the number of threads, if we wish to use OpenMP for quicker cloud population. More... | |
Public Member Functions inherited from pcl::Grabber | |
| 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... | |
Protected Member Functions | |
| size_t | numFrames () const |
| Convenience function to see how many frames this consists of. More... | |
| bool | getCloudAt (size_t idx, pcl::PCLPointCloud2 &blob, Eigen::Vector4f &origin, Eigen::Quaternionf &orientation) const |
| Gets the cloud in ROS form at location idx. More... | |
Protected Member Functions inherited from pcl::Grabber | |
| 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 () |
Additional Inherited Members | |
Protected Attributes inherited from pcl::Grabber | |
| 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_ |
Base class for Image file grabber.
Definition at line 58 of file image_grabber.h.
| pcl::ImageGrabberBase::ImageGrabberBase | ( | const std::string & | directory, |
| float | frames_per_second, | ||
| bool | repeat, | ||
| bool | pclzf_mode | ||
| ) |
Constructor taking a folder of depth+[rgb] images.
| [in] | directory | Directory which contains an ordered set of images corresponding to an [RGB]D video, stored as TIFF, PNG, JPG, or PPM files. The naming convention is: frame_[timestamp]_["depth"/"rgb"].[extension] |
| [in] | frames_per_second | frames per second. If 0, start() functions like a trigger, publishing the next PCD in the list. |
| [in] | repeat | whether to play PCD file in an endless loop or not. |
| pcl::ImageGrabberBase::ImageGrabberBase | ( | const std::string & | depth_directory, |
| const std::string & | rgb_directory, | ||
| float | frames_per_second, | ||
| bool | repeat | ||
| ) |
| pcl::ImageGrabberBase::ImageGrabberBase | ( | const std::vector< std::string > & | depth_image_files, |
| float | frames_per_second, | ||
| bool | repeat | ||
| ) |
Constructor taking a list of paths to PCD files, that are played in the order they appear in the list.
| [in] | depth_image_files | Path to the depth image files files. |
| [in] | frames_per_second | frames per second. If 0, start() functions like a trigger, publishing the next PCD in the list. |
| [in] | repeat | whether to play PCD file in an endless loop or not. |
|
inline |
Copy constructor.
| [in] | src | the Image Grabber base object to copy into this |
Definition at line 79 of file image_grabber.h.
|
virtual | |||||||||||||
Virtual destructor.
| bool pcl::ImageGrabberBase::atLastFrame | ( | ) | const |
Returns if the last frame is reached.
|
virtual |
Get the current focal length and center pixel.
If the intrinsics have been manually set with @, this will return those values. Else, if start () has been called and the grabber has found a frame_[timestamp].xml file, this will return the most recent values read. Else, returns factory defaults.
| [out] | focal_length_x | Horizontal focal length (fx) |
| [out] | focal_length_y | Vertical focal length (fy) |
| [out] | principal_point_x | Horizontal coordinates of the principal point (cx) |
| [out] | principal_point_y | Vertical coordinates of the principal point (cy) |
|
protected |
Gets the cloud in ROS form at location idx.
| std::string pcl::ImageGrabberBase::getCurrentDepthFileName | ( | ) | const |
Returns the filename of the current indexed file.
| std::string pcl::ImageGrabberBase::getDepthFileNameAtIndex | ( | size_t | idx | ) | const |
Get the depth filename at a particular index.
|
virtual |
|
virtual |
Implements pcl::Grabber.
| std::string pcl::ImageGrabberBase::getPrevDepthFileName | ( | ) | const |
Returns the filename of the previous indexed file SDM: adding this back in, but is this useful, or confusing?
| bool pcl::ImageGrabberBase::getTimestampAtIndex | ( | size_t | idx, |
| uint64_t & | timestamp | ||
| ) | const |
Query only the timestamp of an index, if it exists.
| bool pcl::ImageGrabberBase::isRepeatOn | ( | ) | const |
Returns whether the repeat flag is on.
|
virtual |
whether the grabber is started (publishing) or not.
Implements pcl::Grabber.
|
protected |
Convenience function to see how many frames this consists of.
|
inline |
Copy operator.
| [in] | src | the Image Grabber base object to copy into this |
Definition at line 88 of file image_grabber.h.
|
virtual |
Rewinds to the first PCD file in the list.
|
virtual |
Define custom focal length and center pixel.
This will override ANY other setting of parameters for the duration of the grabber's life, whether by factory defaults or explicitly read from a frame_[timestamp].xml file.
| [in] | focal_length_x | Horizontal focal length (fx) |
| [in] | focal_length_y | Vertical focal length (fy) |
| [in] | principal_point_x | Horizontal coordinates of the principal point (cx) |
| [in] | principal_point_y | Vertical coordinates of the principal point (cy) |
| void pcl::ImageGrabberBase::setDepthImageUnits | ( | float | units | ) |
Define the units the depth data is stored in.
Defaults to mm (0.001), meaning a brightness of 1000 corresponds to 1 m
| void pcl::ImageGrabberBase::setNumberOfThreads | ( | unsigned int | nr_threads = 0 | ) |
Set the number of threads, if we wish to use OpenMP for quicker cloud population.
Note that for a standard (< 4 core) machine this is unlikely to yield a drastic speedup.
| void pcl::ImageGrabberBase::setRGBImageFiles | ( | const std::vector< std::string > & | rgb_image_files | ) |
Manually set RGB image files.
| [in] | rgb_image_files | A vector of [tiff/png/jpg/ppm] files to use as input. There must be a 1-to-1 correspondence between these and the depth images you set |
|
virtual |
Starts playing the list of PCD files if frames_per_second is > 0.
Otherwise it works as a trigger: publishes only the next PCD file in the list.
Implements pcl::Grabber.
|
virtual |
Stops playing the list of PCD files if frames_per_second is > 0.
Otherwise the method has no effect.
Implements pcl::Grabber.
|
virtual |
Triggers a callback with new data.