Spec-Zone.ru › PointCloudLibrary

Grabber для лазерного сканера высокой четкости Velodyne (HDL) Подробнее...

#include <pcl/io/hdl_grabber.h>

Inheritance graph
[легенда]
Collaboration graph
[легенда]

Классы

struct HDLDataPacket
struct HDLFiringData
struct HDLLaserCorrection
struct HDLLaserReturn

Публичные типы

using sig_cb_velodyne_hdl_scan_point_cloud_xyz = void(const pcl::PointCloud< pcl::PointXYZ >::ConstPtr &, float, float)
Сигнал для одного сектора. Представляет 1 скорректированный пакет от HDL Velodyne. Подробнее...
using sig_cb_velodyne_hdl_scan_point_cloud_xyzrgba = void(const pcl::PointCloud< pcl::PointXYZRGBA >::ConstPtr &, float, float)
Сигнал для одного сектора. Представляет 1 скорректированный пакет от HDL Velodyne. Подробнее...
using sig_cb_velodyne_hdl_scan_point_cloud_xyzi = void(const pcl::PointCloud< pcl::PointXYZI >::ConstPtr &, float, float)
Сигнал для одного сектора. Представляет 1 скорректированный пакет от HDL Velodyne с возвращённой интенсивностью. Подробнее...
using sig_cb_velodyne_hdl_sweep_point_cloud_xyz = void(const pcl::PointCloud< pcl::PointXYZ >::ConstPtr &)
Сигнал для кругового обзора на 360 градусов. Представляет несколько скорректированных пакетов от HDL Velodyne. Этот сигнал отправляется, когда Velodyne проходит угол «0». Подробнее...
using sig_cb_velodyne_hdl_sweep_point_cloud_xyzi = void(const pcl::PointCloud< pcl::PointXYZI >::ConstPtr &)
Сигнал для кругового обзора на 360 градусов. Представляет несколько скорректированных пакетов от HDL Velodyne с возвращённой интенсивностью. Этот сигнал отправляется, когда Velodyne проходит угол «0». Подробнее...
using sig_cb_velodyne_hdl_sweep_point_cloud_xyzrgba = void(const pcl::PointCloud< pcl::PointXYZRGBA >::ConstPtr &)
Сигнал для кругового обзора на 360 градусов. Представляет несколько скорректированных пакетов от HDL Velodyne. Этот сигнал отправляется, когда Velodyne проходит угол «0». Подробнее...

Общедоступные функции-члены

HDLGrabber (const std::string &correctionsFile="", const std::string &pcapFile="")
Конструктор с необязательным путем к файлу коррекций HDL. Подробнее...
HDLGrabber (const boost::asio::ip::address &ipAddress, const std::uint16_t port, const std::string &correctionsFile="")
Конструктор с указанными IP-адресом и портом, а также необязательным путем к файлу коррекций HDL. Подробнее...
~HDLGrabber () noexcept override
Виртуальный деструктор, унаследованный от интерфейса Grabber. Подробнее...
void start () override
Запускает обработку пакетов Velodyne, получаемых по сети или из файла PCAP. Подробнее...
void stop () override
Останавливает обработку пакетов Velodyne, получаемых по сети или из файла PCAP. Подробнее...
std::string getName () const override
Возвращает имя этого захватчика ввода-вывода Grabber. Подробнее...
bool isRunning () const override
Проверяет, продолжает ли работать захватчик. Подробнее...
float getFramesPerSecond () const override
Возвращает количество кадров в секунду. Подробнее...
void filterPackets (const boost::asio::ip::address &ipAddress, const std::uint16_t port=443)
Позволяет фильтровать пакеты по IP-адресу ИСТОЧНИКА и ПОРТУ. Это может быть полезно, например, если в одной сети находятся несколько HDL-лидаров. Подробнее...
void setLaserColorRGB (const pcl::RGB &color, const std::uint8_t laserNumber)
Позволяет настроить цвета, используемые каждым лазером. Подробнее...
template<typename IterT >
void setLaserColorRGB (const IterT &begin, const IterT &end)
Позволяет настроить цвета, используемые каждым из лазеров. Подробнее...
void setMinimumDistanceThreshold (float &minThreshold)
Все возвращаемые HDL значения с расстоянием меньше этого значения отбрасываются. Подробнее...
void setMaximumDistanceThreshold (float &maxThreshold)
Все возвращаемые HDL значения с расстоянием больше этого значения отбрасываются. Подробнее...
float getMinimumDistanceThreshold ()
Возвращает текущее минимальное пороговое расстояние в метрах. Подробнее...
float getMaximumDistanceThreshold ()
Возвращает текущее максимальное пороговое расстояние в метрах. Подробнее...
virtual std::uint8_t getMaximumNumberOfLasers () const
Возвращает максимальное количество лазеров. Подробнее...
- Общедоступные функции-члены, унаследованные от pcl::Grabber
Grabber ()=default
Конструктор по умолчанию. Подробнее...
Grabber (const Grabber &)=delete
Конструктор копирования отсутствует, поскольку Grabber нельзя копировать. Подробнее...
Grabber & operator= (const Grabber &)=delete
Оператор присваивания копированием отсутствует, поскольку Grabber нельзя копировать. Подробнее...
Grabber (Grabber &&)=default
Конструктор перемещения. Подробнее...
Grabber & operator= (Grabber &&)=default
Оператор присваивания перемещением. Подробнее...
virtual ~Grabber () noexcept=default
Виртуальный деструктор. Подробнее...
template<typename T >
boost::signals2::connection registerCallback (const std::function< T > &callback)
регистрирует функцию/метод обратного вызова для сигнала с соответствующей сигнатурой Подробнее...
template<typename T >
bool providesCallback () const noexcept
указывает, существует ли сигнал с заданным типом параметра Подробнее...
bool toggle ()
Для потоковых устройств: остановленные потоки запускаются, а работающие — останавливаются. Подробнее...

Защищенные типы

enum HDLBlock { BLOCK_0_TO_31 = 0xeeff , BLOCK_32_TO_63 = 0xddff }

Защищённые функции-члены

void fireCurrentSweep ()
void fireCurrentScan (const std::uint16_t startAngle, const std::uint16_t endAngle)
void computeXYZI (pcl::PointXYZI &pointXYZI, std::uint16_t azimuth, HDLLaserReturn laserReturn, HDLLaserCorrection correction) const
- Защищённые функции-члены, унаследованные от pcl::Grabber
virtual void signalsChanged ()
template<typename T >
boost::signals2::signal< T > * find_signal () const noexcept
template<typename T >
int num_slots () const noexcept
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 ()

Защищённые атрибуты

HDLLaserCorrection laser_corrections_ [HDL_MAX_NUM_LASERS]
std::uint16_t last_azimuth_
pcl::PointCloud< pcl::PointXYZ >::Ptr current_scan_xyz_
pcl::PointCloud< pcl::PointXYZ >::Ptr current_sweep_xyz_
pcl::PointCloud< pcl::PointXYZI >::Ptr current_scan_xyzi_
pcl::PointCloud< pcl::PointXYZI >::Ptr current_sweep_xyzi_
pcl::PointCloud< pcl::PointXYZRGBA >::Ptr current_scan_xyzrgba_
pcl::PointCloud< pcl::PointXYZRGBA >::Ptr current_sweep_xyzrgba_
boost::signals2::signal< sig_cb_velodyne_hdl_sweep_point_cloud_xyz > * sweep_xyz_signal_
boost::signals2::signal< sig_cb_velodyne_hdl_sweep_point_cloud_xyzrgba > * sweep_xyzrgba_signal_
boost::signals2::signal< sig_cb_velodyne_hdl_sweep_point_cloud_xyzi > * sweep_xyzi_signal_
boost::signals2::signal< sig_cb_velodyne_hdl_scan_point_cloud_xyz > * scan_xyz_signal_
boost::signals2::signal< sig_cb_velodyne_hdl_scan_point_cloud_xyzrgba > * scan_xyzrgba_signal_
boost::signals2::signal< sig_cb_velodyne_hdl_scan_point_cloud_xyzi > * scan_xyzi_signal_
- Защищённые атрибуты, унаследованные от pcl::Grabber
std::map< std::string, std::unique_ptr< 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_

Статические защищённые атрибуты

static const std::uint16_t HDL_DATA_PORT = 2368
static const std::uint16_t HDL_NUM_ROT_ANGLES = 36001
static const std::uint8_t HDL_LASER_PER_FIRING = 32
static const std::uint8_t HDL_MAX_NUM_LASERS = 64
static const std::uint8_t HDL_FIRING_PER_PKT = 12

Подробное описание

Grabber для Velodyne High-Definition-Laser (HDL)

Автор
Keven Ring keven.nosp@m.@mit.nosp@m.re.or.nosp@m.g

Определение в строке 61 файла hdl_grabber.h.

Документация псевдонимов типов-членов

sig_cb_velodyne_hdl_scan_point_cloud_xyz

using pcl::HDLGrabber::sig_cb_velodyne_hdl_scan_point_cloud_xyz = void (const pcl::PointCloud<pcl::PointXYZ>::ConstPtr &, float, float)

Сигнал для отдельного сектора. Представляет один скорректированный пакет HDL Velodyne.

Определение в строке 67 файла hdl_grabber.h.

sig_cb_velodyne_hdl_scan_point_cloud_xyzi

using pcl::HDLGrabber::sig_cb_velodyne_hdl_scan_point_cloud_xyzi = void (const pcl::PointCloud<pcl::PointXYZI>::ConstPtr &, float, float)

Сигнал для отдельного сектора. Представляет один скорректированный пакет HDL Velodyne с возвращённой интенсивностью.

Определение в строке 77 файла hdl_grabber.h.

sig_cb_velodyne_hdl_scan_point_cloud_xyzrgba

using pcl::HDLGrabber::sig_cb_velodyne_hdl_scan_point_cloud_xyzrgba = void (const pcl::PointCloud<pcl::PointXYZRGBA>::ConstPtr &, float, float)

Сигнал для отдельного сектора. Представляет один скорректированный пакет HDL Velodyne.

Для каждого лазера используется свой цвет RGB

Определение в строке 72 файла hdl_grabber.h.

sig_cb_velodyne_hdl_sweep_point_cloud_xyz

using pcl::HDLGrabber::sig_cb_velodyne_hdl_sweep_point_cloud_xyz = void (const pcl::PointCloud<pcl::PointXYZ>::ConstPtr &)

Сигнал для полного оборота на 360 градусов. Представляет несколько скорректированных пакетов HDL Velodyne. Этот сигнал отправляется, когда Velodyne проходит угол «0».

Определение в строке 83 файла hdl_grabber.h.

sig_cb_velodyne_hdl_sweep_point_cloud_xyzi

using pcl::HDLGrabber::sig_cb_velodyne_hdl_sweep_point_cloud_xyzi = void (const pcl::PointCloud<pcl::PointXYZI>::ConstPtr &)

Сигнал для полного оборота на 360 градусов. Представляет несколько скорректированных пакетов HDL Velodyne с возвращённой интенсивностью. Этот сигнал отправляется, когда Velodyne проходит угол «0».

Определение в строке 89 файла hdl_grabber.h.

sig_cb_velodyne_hdl_sweep_point_cloud_xyzrgba

using pcl::HDLGrabber::sig_cb_velodyne_hdl_sweep_point_cloud_xyzrgba = void (const pcl::PointCloud<pcl::PointXYZRGBA>::ConstPtr &)

Сигнал для полного оборота на 360 градусов. Представляет несколько скорректированных пакетов HDL Velodyne. Этот сигнал отправляется, когда Velodyne проходит угол «0».

Каждый лазер имеет собственный цвет RGB

Определение в строке 95 файла hdl_grabber.h.

Описание перечисления элементов класса

HDLBlock

enum pcl::HDLGrabber::HDLBlock
protected
Элемент перечисления
BLOCK_0_TO_31
BLOCK_32_TO_63

Определение в строке 204 файла hdl_grabber.h.

Описание конструктора и деструктора

HDLGrabber() [1/2]

pcl::HDLGrabber::HDLGrabber ( const std::string & correctionsFile = "",
const std::string & pcapFile = ""
)

Конструктор с необязательным путём к файлу коррекций HDL.

Grabber будет прослушивать данные на IP-адресе и порту по умолчанию [192.168.3.255/2368]

Параметры
[in] correctionsFile Путь к файлу, содержащему параметры коррекции для HDL. Этот параметр обязателен для HDL-64 и необязателен для HDL-32
[in] pcapFile Путь к файлу, содержащему ранее захваченные пакеты данных. Этот параметр необязателен

HDLGrabber() [2/2]

pcl::HDLGrabber::HDLGrabber ( const boost::asio::ip::address & ipAddress,
const std::uint16_t port,
const std::string & correctionsFile = ""
)

Конструктор с указанными IP-адресом и портом, а также необязательным путём к файлу коррекций HDL.

Параметры
[in] ipAddress IP-адрес, который следует использовать для прослушивания пакетов HDL
[in] port UDP-порт, который следует использовать для прослушивания пакетов HDL
[in] correctionsFile Путь к файлу, содержащему параметры коррекции для HDL. Это поле обязательно для HDL-64 и необязательно для HDL-32

~HDLGrabber()

pcl::HDLGrabber::~HDLGrabber ( )
overridenoexcept

Виртуальный деструктор, унаследованный от интерфейса Grabber.

Не генерирует исключений.

Описание методов класса

computeXYZI()

void pcl::HDLGrabber::computeXYZI ( pcl::PointXYZI & pointXYZI,
std::uint16_t azimuth,
HDLLaserReturn laserReturn,
HDLLaserCorrection correction
) const
protected

filterPackets()

void pcl::HDLGrabber::filterPackets ( const boost::asio::ip::address & ipAddress,
const std::uint16_t port = 443
)

Позволяет фильтровать пакеты по исходному IP-адресу и порту. Это может быть полезно, например, если несколько HDL LIDAR подключены к одной сети.

fireCurrentScan()

void pcl::HDLGrabber::fireCurrentScan ( const std::uint16_t startAngle,
const std::uint16_t endAngle
)
protected

fireCurrentSweep()

void pcl::HDLGrabber::fireCurrentSweep ( )
protected

getFramesPerSecond()

float pcl::HDLGrabber::getFramesPerSecond ( ) const
overridevirtual

Возвращает количество кадров в секунду.

Реализует pcl::Grabber.

getMaximumDistanceThreshold()

float pcl::HDLGrabber::getMaximumDistanceThreshold ( )

Возвращает текущее максимальное пороговое расстояние в метрах.

getMaximumNumberOfLasers()

virtual std::uint8_t pcl::HDLGrabber::getMaximumNumberOfLasers ( ) const
virtual

Возвращает максимальное количество лазеров.

Переопределён в pcl::VLPGrabber.

getMinimumDistanceThreshold()

float pcl::HDLGrabber::getMinimumDistanceThreshold ( )

Возвращает текущее минимальное пороговое расстояние в метрах.

getName()

std::string pcl::HDLGrabber::getName ( ) const
overridevirtual
overridevirtual

Возвращает имя этого средства ввода-вывода захватчика.

Возвращает
Имя захватчика

Реализует pcl::Grabber.

Переопределён в pcl::VLPGrabber.

isRunning()

bool pcl::HDLGrabber::isRunning ( ) const
overridevirtual

Проверяет, продолжает ли работать захватчик.

Возвращает
TRUE, если захватчик работает, в противном случае FALSE

Реализует pcl::Grabber.

setLaserColorRGB() [1/2]

template<typename IterT >
void pcl::HDLGrabber::setLaserColorRGB ( const IterT & begin,
const IterT & end
)
inline

Позволяет настроить цвета, используемые для каждого лазера.

Параметры
[in] begin Итератор начала массива цветов RGB
[in] end Итератор конца массива цветов RGB

Определение в строке 162 файла hdl_grabber.h.

setLaserColorRGB() [2/2]

void pcl::HDLGrabber::setLaserColorRGB ( const pcl::RGB & color,
const std::uint8_t laserNumber
)

Позволяет настроить цвета, используемые каждым лазером.

Параметры
[in] color RGB — задаваемый цвет
[in] laserNumber Номер лазера, для которого задаётся цвет

setMaximumDistanceThreshold()

void pcl::HDLGrabber::setMaximumDistanceThreshold ( float & maxThreshold )

Все данные, полученные от HDL, с расстоянием, превышающим это значение, отбрасываются.

Значение задаётся в метрах. По умолчанию: 10000.0

setMinimumDistanceThreshold()

void pcl::HDLGrabber::setMinimumDistanceThreshold ( float & minThreshold )

Все данные, полученные от HDL, с расстоянием, меньшим этого значения, отбрасываются.

Значение задаётся в метрах. По умолчанию: 0.0

start()

void pcl::HDLGrabber::start ( )
overridevirtual

Запускает обработку пакетов Velodyne, получаемых по сети или из файла PCAP.

Реализует интерфейс pcl::Grabber.

stop()

void pcl::HDLGrabber::stop ( )
overridevirtual

Останавливает обработку пакетов Velodyne, получаемых по сети или из файла PCAP.

Реализует интерфейс pcl::Grabber.

Документация данных-членов

current_scan_xyz_

pcl::PointCloud<pcl::PointXYZ>::Ptr pcl::HDLGrabber::current_scan_xyz_
protected

Определение в строке 247 файла hdl_grabber.h.

current_scan_xyzi_

pcl::PointCloud<pcl::PointXYZI>::Ptr pcl::HDLGrabber::current_scan_xyzi_
protected

Определение в строке 248 файла hdl_grabber.h.

current_scan_xyzrgba_

pcl::PointCloud<pcl::PointXYZRGBA>::Ptr pcl::HDLGrabber::current_scan_xyzrgba_
protected

Определение в строке 249 файла hdl_grabber.h.

current_sweep_xyz_

pcl::PointCloud<pcl::PointXYZ>::Ptr pcl::HDLGrabber::current_sweep_xyz_
защищенный

Определение в строке 247 файла hdl_grabber.h.

current_sweep_xyzi_

pcl::PointCloud<pcl::PointXYZI>::Ptr pcl::HDLGrabber::current_sweep_xyzi_
защищенный

Определение в строке 248 файла hdl_grabber.h.

current_sweep_xyzrgba_

pcl::PointCloud<pcl::PointXYZRGBA>::Ptr pcl::HDLGrabber::current_sweep_xyzrgba_
защищенный

Определение в строке 249 файла hdl_grabber.h.

HDL_DATA_PORT

const std::uint16_t pcl::HDLGrabber::HDL_DATA_PORT = 2368
статическийзащищенный

Определение в строке 198 файла hdl_grabber.h.

HDL_FIRING_PER_PKT

const std::uint8_t pcl::HDLGrabber::HDL_FIRING_PER_PKT = 12
статическийзащищенный

Определение в строке 202 файла hdl_grabber.h.

HDL_LASER_PER_FIRING

const std::uint8_t pcl::HDLGrabber::HDL_LASER_PER_FIRING = 32
статическийзащищенный

Определение в строке 200 файла hdl_grabber.h.

HDL_MAX_NUM_LASERS

const std::uint8_t pcl::HDLGrabber::HDL_MAX_NUM_LASERS = 64
статическийзащищенный

Определение в строке 201 файла hdl_grabber.h.

HDL_NUM_ROT_ANGLES

const std::uint16_t pcl::HDLGrabber::HDL_NUM_ROT_ANGLES = 36001
статическийзащищенный

Определение в строке 199 файла hdl_grabber.h.

laser_corrections_

HDLLaserCorrection pcl::HDLGrabber::laser_corrections_[HDL_MAX_NUM_LASERS]
защищенный

Определение в строке 245 файла hdl_grabber.h.

last_azimuth_

std::uint16_t pcl::HDLGrabber::last_azimuth_
защищённый

Определение в строке 246 файла hdl_grabber.h.

scan_xyz_signal_

boost::signals2::signal<sig_cb_velodyne_hdl_scan_point_cloud_xyz>* pcl::HDLGrabber::scan_xyz_signal_
защищённый

Определение в строке 253 файла hdl_grabber.h.

scan_xyzi_signal_

boost::signals2::signal<sig_cb_velodyne_hdl_scan_point_cloud_xyzi>* pcl::HDLGrabber::scan_xyzi_signal_
защищённый

Определение в строке 255 файла hdl_grabber.h.

scan_xyzrgba_signal_

boost::signals2::signal<sig_cb_velodyne_hdl_scan_point_cloud_xyzrgba>* pcl::HDLGrabber::scan_xyzrgba_signal_
защищённый

Определение в строке 254 файла hdl_grabber.h.

sweep_xyz_signal_

boost::signals2::signal<sig_cb_velodyne_hdl_sweep_point_cloud_xyz>* pcl::HDLGrabber::sweep_xyz_signal_
защищённый

Определение в строке 250 файла hdl_grabber.h.

sweep_xyzi_signal_

boost::signals2::signal<sig_cb_velodyne_hdl_sweep_point_cloud_xyzi>* pcl::HDLGrabber::sweep_xyzi_signal_
защищённый

Определение в строке 252 файла hdl_grabber.h.

sweep_xyzrgba_signal_

boost::signals2::signal<sig_cb_velodyne_hdl_sweep_point_cloud_xyzrgba>* pcl::HDLGrabber::sweep_xyzrgba_signal_
защищённый

Определение в строке 251 файла hdl_grabber.h.


Документация этого класса создана на основе следующего файла:
  • pcl/io/hdl_grabber.h

© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/classpcl_1_1_h_d_l_grabber.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API