34 #ifndef MULTISENSE_ROS_CAMERA_H 35 #define MULTISENSE_ROS_CAMERA_H 37 #include <boost/shared_ptr.hpp> 38 #include <boost/thread.hpp> 40 #include <multisense_ros/RawCamData.h> 41 #include <sensor_msgs/PointCloud2.h> 42 #include <stereo_msgs/DisparityImage.h> 49 #include <multisense_lib/MultiSenseChannel.hh> 56 const std::string& tf_prefix);
109 void generateBorderClip(
int borderClipType,
double borderClipValue, uint32_t width, uint32_t height);
ros::Publisher left_rgb_cam_info_pub_
image_transport::Publisher right_disparity_pub_
ros::Publisher luma_organized_point_cloud_pub_
void pointCloudCallback(const crl::multisense::image::Header &header)
void rawCamDataCallback(const crl::multisense::image::Header &header)
image_transport::ImageTransport disparity_cost_transport_
image_transport::Publisher left_mono_cam_pub_
sensor_msgs::Image right_rect_image_
void disparityImageCallback(const crl::multisense::image::Header &header)
ros::NodeHandle device_nh_
uint8_t luma_color_depth_
crl::multisense::image::Calibration image_calibration_
ros::Publisher right_stereo_disparity_pub_
ros::Publisher right_rect_cam_info_pub_
bool pc_color_frame_sync_
void colorImageCallback(const crl::multisense::image::Header &header)
image_transport::ImageTransport left_rect_transport_
sensor_msgs::Image ni_depth_image_
sensor_msgs::PointCloud2 luma_organized_point_cloud_
sensor_msgs::PointCloud2 luma_point_cloud_
void monoCallback(const crl::multisense::image::Header &header)
image_transport::Publisher left_disparity_cost_pub_
sensor_msgs::CameraInfo left_mono_cam_info_
sensor_msgs::PointCloud2 color_point_cloud_
ros::Publisher left_stereo_disparity_pub_
ros::Publisher luma_point_cloud_pub_
ros::Publisher depth_cam_info_pub_
boost::mutex border_clip_lock_
ros::Publisher histogram_pub_
ros::Publisher left_mono_cam_info_pub_
Camera(crl::multisense::Channel *driver, const std::string &tf_prefix)
sensor_msgs::Image right_disparity_image_
void borderClipChanged(int borderClipType, double borderClipValue)
double border_clip_value_
sensor_msgs::Image depth_image_
void disconnectStream(crl::multisense::DataSource disableMask)
std::string frame_id_right_
void depthCallback(const crl::multisense::image::Header &header)
void connectStream(crl::multisense::DataSource enableMask)
ros::Publisher raw_cam_config_pub_
sensor_msgs::Image left_disparity_cost_image_
sensor_msgs::CameraInfo right_rect_cam_info_
int64_t left_luma_frame_id_
image_transport::ImageTransport right_mono_transport_
image_transport::ImageTransport left_rgb_transport_
std::vector< cv::Vec3f > points_buff_
sensor_msgs::CameraInfo left_cost_cam_info_
ros::Publisher right_mono_cam_info_pub_
stereo_msgs::DisparityImage left_stereo_disparity_
std::string frame_id_left_
image_transport::Publisher right_mono_cam_pub_
StreamMapType stream_map_
crl::multisense::system::DeviceInfo device_info_
int64_t luma_point_cloud_frame_id_
void generateBorderClip(int borderClipType, double borderClipValue, uint32_t width, uint32_t height)
sensor_msgs::Image left_mono_image_
image_transport::Publisher ni_depth_cam_pub_
void rectCallback(const crl::multisense::image::Header &header)
image_transport::Publisher left_disparity_pub_
ros::Publisher raw_cam_data_pub_
image_transport::CameraPublisher left_rgb_rect_cam_pub_
ros::Publisher left_disp_cam_info_pub_
image_transport::Publisher depth_cam_pub_
crl::multisense::image::Config image_config_
std::map< crl::multisense::DataSource, int32_t > StreamMapType
std::vector< float > disparity_buff_
ros::NodeHandle right_nh_
image_transport::CameraPublisher right_rect_cam_pub_
image_transport::ImageTransport left_mono_transport_
ros::Publisher raw_cam_cal_pub_
sensor_msgs::CameraInfo depth_cam_info_
image_transport::CameraPublisher left_rect_cam_pub_
sensor_msgs::Image left_rect_image_
ros::Publisher right_disp_cam_info_pub_
crl::multisense::Channel * driver_
sensor_msgs::Image left_luma_image_
ros::Publisher device_info_pub_
image_transport::Publisher left_rgb_cam_pub_
image_transport::ImageTransport left_rgb_rect_transport_
sensor_msgs::CameraInfo left_rect_cam_info_
bool write_pc_color_packed_
int64_t color_organized_point_cloud_frame_id_
sensor_msgs::Image left_rgb_image_
sensor_msgs::Image right_mono_image_
image_transport::ImageTransport depth_transport_
ros::Publisher left_rgb_rect_cam_info_pub_
void histogramCallback(const crl::multisense::image::Header &header)
stereo_msgs::DisparityImage right_stereo_disparity_
CvMat * calibration_map_left_2_
int64_t points_buff_frame_id_
sensor_msgs::CameraInfo left_disp_cam_info_
int64_t color_point_cloud_frame_id_
image_transport::ImageTransport right_rect_transport_
ros::Publisher left_cost_cam_info_pub_
sensor_msgs::CameraInfo right_disp_cam_info_
boost::mutex stream_lock_
int64_t left_rect_frame_id_
int64_t luma_organized_point_cloud_frame_id_
CvMat * calibration_map_left_1_
sensor_msgs::CameraInfo left_rgb_cam_info_
image_transport::ImageTransport ni_depth_transport_
image_transport::ImageTransport disparity_right_transport_
ros::Publisher left_rect_cam_info_pub_
sensor_msgs::CameraInfo right_mono_cam_info_
void jpegImageCallback(const crl::multisense::image::Header &header)
sensor_msgs::Image left_disparity_image_
ros::Publisher color_organized_point_cloud_pub_
image_transport::ImageTransport disparity_left_transport_
sensor_msgs::PointCloud2 color_organized_point_cloud_
crl::multisense::system::VersionInfo version_info_
cv::Mat_< double > q_matrix_
sensor_msgs::CameraInfo left_rgb_rect_cam_info_
int64_t left_rgb_rect_frame_id_
sensor_msgs::Image left_rgb_rect_image_
void publishAllCameraInfo()
multisense_ros::RawCamData raw_cam_data_
ros::Publisher color_point_cloud_pub_
cv::Mat_< uint8_t > border_clip_mask_
void updateCameraInfo(sensor_msgs::CameraInfo &cameraInfo, const float M[3][3], const float R[3][3], const float P[3][4], const float D[8], double xScale=1, double yScale=1)