Quantcast
Channel: Sam的技术Blog
Viewing all articles
Browse latest Browse all 158

ROS 公用包学习解析 vision_opencv

$
0
0
作者: Sam  (甄峰)  sam_code@hotmail.com

0.vision_opencv简介:
这个stack是ROS的OpenCV Interface。这个stack包含两个Package。cv_bridge, image_geometry.
主要用来将sensor::Image (ROS)和cv::Mat(OpenCV)之间数据转换。


cv_bridge: ROS Message和OpenCV之间的桥接。
image_geometry: Collection of methods for dealing with image and pixel geometry

为了在ROS中使用OpenCV,主要使用cv_bridge Package. 



在Indigo和Jade,OpenCV2 作为官方版本存在。要使用它,必须增加dependency on opencv2并使用find_package() 在CMakeLists.txt. 


 find_package(OpenCV)
   include_directories(${OpenCV_INCLUDE_DIRS})
   target_link_libraries(my_awesome_library ${OpenCV_LIBRARIES})
也可以使用openCV3. 




1. 概念:
ROS中,image使用sensor_msga/Image Message 格式。CvBridge是一个ROS库,它提供一个接口在ROS和OpenCV之间 。

稍后研究。



class CvImage
{
public:
  std_msgs::Header header; //!< ROS header
  std::string encoding;    //!< Image encoding ("mono8", "bgr8", etc.)
  cv::Mat image;           //!< Image data for use with OpenCV

  typedef boost::shared_ptr Ptr;
  typedef boost::shared_ptr ConstPtr;















 

Viewing all articles
Browse latest Browse all 158

Trending Articles