Spec-Zone.ru › PointCloudLibrary
Захват для устройств DINAST (например, IPA-1002, IPA-1110, IPA-2001) Подробнее...
#include <pcl/io/dinast_grabber.h >
bool
toggle ()
Для устройств, которые ведут потоковую передачу, остановленные потоки запускаются, а работающие останавливаются. Подробнее...
Grabber для устройств DINAST (например, IPA-1002, IPA-1110, IPA-2001)
Автор
Marco A. Gutierrez marco.nosp@m. g@un.nosp@m. ex.es
Определение в строке 59 файла dinast_grabber.h .
анонимное перечисление
Значения команд устройства.
Перечисление
CMD_READ_START
CMD_READ_STOP
CMD_GET_VERSION
CMD_SEND_DATA
Определение в строке 203 файла dinast_grabber.h .
pixel_size
Размер пикселя.
Перечисление
RAW8
RGB16
RGB24
RGB32
Определение в строке 183 файла dinast_grabber.h .
DinastGrabber() pcl::DinastGrabber::DinastGrabber ( const int
device_position = 1
)
Конструктор, настраивающий константы захвата.
Параметры
[in]
device_position
Номер устройства для захвата
~DinastGrabber() pcl::DinastGrabber::~DinastGrabber (
)
override noexcept
Деструктор.
Никогда не выбрасывает исключения.
captureThreadFunction() void pcl::DinastGrabber::captureThreadFunction (
)
protected
Функция, отвечающая за получение данных с камеры.
checkHeader() int pcl::DinastGrabber::checkHeader (
)
protected
Проверяет, есть ли заголовок в глобальном буфере, и возвращает позицию следующего допустимого изображения.
Примечание
Если изображение в буфере частичное, возвращает -1, так как необходимо дождаться добавления дополнительных данных.
Возвращает
позицию следующего допустимого изображения (т.е., непосредственно после допустимого заголовка) или -1 в случае, если в буфере нет изображения или изображение частичное
getDeviceVersion() std::string pcl::DinastGrabber::getDeviceVersion (
)
Получает номер версии текущего открытого устройства.
getFramesPerSecond() float pcl::DinastGrabber::getFramesPerSecond (
) const
override virtual
Получение количества кадров в секунду (FPS).
Реализует pcl::Grabber .
getName() std::string pcl::DinastGrabber::getName (
) const
inline override virtual
getXYZIPointCloud()
Получение облака точек XYZI из изображения камеры.
Возвращает
облако точек из данных изображения
isRunning() bool pcl::DinastGrabber::isRunning (
) const
override virtual
Проверка, запущен ли захватчик.
Возвращает
true, если захватчик запущен/потоковый. Иначе false.
Реализует pcl::Grabber .
onInit() void pcl::DinastGrabber::onInit ( const int device_id
)
protected
Обработка при инициализации.
readImage() void pcl::DinastGrabber::readImage (
)
protected
Чтение данных изображения и сохранение их в image_.
setupDevice() void pcl::DinastGrabber::setupDevice ( int
device_position , const int
id_vendor = 0x18d1, const int
id_product = 0x1402 )
protected
Настройка устройства камеры Dinast 3D.
Параметры
[вход]
device_position
Номер устройства для захвата данных
[вход]
id_vendor
Идентификатор производителя камеры (должно быть 0x18d1)
[вход]
id_product
Идентификатор продукта (должно быть 0x1402)
start() void pcl::DinastGrabber::start (
)
override virtual
stop() void pcl::DinastGrabber::stop (
)
override virtual
USBRxControlData() bool pcl::DinastGrabber::USBRxControlData ( const unsigned char
req_code , unsigned char *
buffer , int
length )
protected
Отправка запроса на пакет данных RX.
Параметры
[вход]
req_code
Запрос на отправку (поле запроса для пакета setup)
buffer
[вход]
length
Поле длины для пакета setup. Буфер данных должен быть как минимум такого размера.
USBTxControlData() bool pcl::DinastGrabber::USBTxControlData ( const unsigned char
req_code , unsigned char *
buffer , int
length )
protected
Отправка запроса на пакет данных TX.
Параметры
[вход]
req_code
Запрос на отправку (поле запроса для пакета setup)
buffer
[вход]
length
Поле длины для пакета setup. Буфер данных должен быть как минимум такого размера.
bulk_ep_ unsigned char pcl::DinastGrabber::bulk_ep_
protected
capture_mutex_ std::mutex pcl::DinastGrabber::capture_mutex_
mutable protected
capture_thread_ std::thread pcl::DinastGrabber::capture_thread_
protected
context_ libusb_context* pcl::DinastGrabber::context_
protected
device_handle_ struct libusb_device_handle* pcl::DinastGrabber::device_handle_
protected
dist_max_2d_ double pcl::DinastGrabber::dist_max_2d_
protected
fov_ double pcl::DinastGrabber::fov_
protected
g_buffer_ boost::circular_buffer<unsigned char> pcl::DinastGrabber::g_buffer_
protected
image_
END_OF_DOCUMENT_MARKER unsigned char* pcl::DinastGrabber::image_
protected
image_height_ int pcl::DinastGrabber::image_height_
protected
image_size_ int pcl::DinastGrabber::image_size_
protected
image_width_ int pcl::DinastGrabber::image_width_
protected
point_cloud_signal_ boost::signals2::signal<sig_cb_dinast_point_cloud>* pcl::DinastGrabber::point_cloud_signal_
protected
raw_buffer_ unsigned char* pcl::DinastGrabber::raw_buffer_
protected
Временный буфер чтения USB, так как мы читаем два изображения RGB16 за раз, размер удвоен по сравнению с двумя изображениями плюс пакет синхронизации.
Определение в строке 194 файла dinast_grabber.h .
running_ bool pcl::DinastGrabber::running_
protected
second_image_ bool pcl::DinastGrabber::second_image_
protected
Так как за первым изображением нет заголовка, нам нужно сохранить состояние.
Определение в строке 208 файла dinast_grabber.h .
sync_packet_size_ int pcl::DinastGrabber::sync_packet_size_
protected
Документация для этого класса сгенерирована из следующего файла: