CV_Bridge | Image的ROS數據類型與opencv數據類型之間的轉換
阿新 • • 發佈:2018-05-08
pen als HA idg waitkey .com err 技術 esp
ros官網的介紹
http://wiki.ros.org/cv_bridge/Tutorials/UsingCvBridgeToConvertBetweenROSImagesAndOpenCVImages
官網存在錯誤:
深度圖的編碼方式,官網使用的是mono16,估計是版本更新的問題,該編碼方式會報錯。
[ERROR] [1525783791.845026210]: Could not convert from ‘16UC1‘ to ‘mono16‘.
糾正代碼
namespace enc = sensor_msgs::image_encodings; void depth_Callback(constsensor_msgs::ImageConstPtr& depth_msg) { try { cv::imshow("depth_view", cv_bridge::toCvShare(depth_msg, enc::TYPE_16UC1)->image); cv::waitKey(10); } catch (cv_bridge::Exception& e) { ROS_ERROR("Could not convert from ‘%s‘ to ‘mono16‘.", depth_msg->encoding.c_str()); }
使用 TYPE_16UC1 !!
CV_Bridge | Image的ROS數據類型與opencv數據類型之間的轉換