
- 一级目录
- 二级目录
- 三级目录
- 下载cvbridge
- 编译
- 编译问题
- 使用
mkdir -p cv_bridge_ws/src
cd cv_bridge_ws/src
git clone https://gitee.com/bingobinlw/cv_bridge //此链接适用于18.04
cd ..
编译
- 然后将自己安装的opencv编译生成的build文件路径加入到克隆下来的这个包里的CMakeLists.txt,修改添加下列语句(详见此文件目录下的CMakeLists.txt文件)
set(OpenCV_DIR "your-path/opencv-x.x.x/build")
catkin_make
编译问题
https://github.com/ros-perception/vision_opencv/issues/272
高赞回答
-
Add
set (CMAKE_CXX_STANDARD 11)to your top level cmake -
In cv_bridge/src CMakeLists.txt line 35 change to
if (OpenCV_VERSION_MAJOR VERSION_EQUAL 4) -
In cv_bridge/src/module_opencv3.cpp change signature of two functions
💡 `UMatData* allocate(int dims0, const int* sizes, int type, void* data, size_t* step, int flags, UMatUsageFlags usageFlags) const`TO
💡 `UMatData* allocate(int dims0, const int* sizes, int type, void* data, size_t* step, AccessFlag flags, UMatUsageFlags usageFlags) const`
TO
💡 `bool allocate(UMatData* u, AccessFlag accessFlags, UMatUsageFlags usageFlags) const`- 然后以可以重新编译
最后在所需要使用cv_bridge的ros包里的CMakeLists.txt文件中添加opencv路径以及cv_bridge路径
set(OpenCV_DIR "your-path/opencv-x.x.x/build")
set(cv_bridge_DIR your-path/cv_bridge_ws/devel/share/cv_bridge/cmake)
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)