Caffe + ROS + OpenCV + Qt creator
来源:互联网 发布:sqlserver时间格式化 编辑:程序博客网 时间:2024/05/08 05:25
最近开始学习caffe的使用,断断续续的终于算是把相关的环境配置的合乎自己的心意了。期间遇到了很多问题,现在来总结一下希望能帮到大家。由于我并没有系统的学习过Cmake这种管理工程的方式,很多的名词来源于自己看各种博客和教程,免不了有很多基本的错误,请大家见谅。
基本介绍:
Caffe:一个开源的深度学习的框架,利用它我们可以很方便的设计,训练,使用自己或他人的模型。
ROS:机器人操作系统,在ROS框架下可以同时运行多个节点,并且各个节点之间能够互相通信。
OpenCV:开源的计算机视觉库。
Qt creator:我把它当成一个集成开发环境在使用。
我是需要在ROS框架下编写程序,程序中会调用caffe和opencv这两个库,同时ubuntu下我习惯使用的IDE是qt creator。
实现方法:
建立工作空间
ros使用的catkin_make命令本质和cmake命令是相同的,能用catkin_make编译的ros包也能用cmake编译。所以整个组织结构按ros的习惯进行:
- 建立工作空间
- 创建相应的功能包
编辑cmakelist.txt:
- 添加OpenCV库:
set(OpenCV_DIR /usr/share/OpenCV)find_package(catkin REQUIREDOpenCV)
这里,应该是我在安装OpenCV和ROS的时候把它们关联起来了,这样执行catkin_make的时候ROS是在自己的路径下找的。同样的方法是无法找到caffe相应的头文件,库文件的。
2. 添加caffe
set(Caffe_DIR /home/gph/Desktop/caffe_cmake/caffe-master) find_package(Caffe)include_directories(${Caffe_INCLUDE_DIRS})
整个cmakelist.txt如下:
cmake_minimum_required(VERSION 2.8.3)project(usecaffe)set(Caffe_DIR /home/gph/Desktop/caffe_cmake/caffe-master)set(OpenCV_DIR /usr/share/OpenCV)find_package(Caffe)include_directories(${Caffe_INCLUDE_DIRS})find_package(catkin REQUIREDOpenCV)catkin_package()include_directories(include ${catkin_INCLUDE_DIRS} ${Caffe_INCLUDE_DIRS})set(CPP_SOURCES src/usecaffe.cpp)add_executable(usecaffe ${CPP_SOURCES})target_link_libraries(usecaffe ${catkin_LIBRARIES} ${Caffe_LIBRARIES})
注意:添加caffe的语句一定要在添加OpenCV的语句之前。也就是说,find_package(Caffe)要在find_package(catkin REQUIRED)之前,否则虽然能够编译,但是qt打开时仍然显示找不到caffe的头文件。
利用QT打开:
为了使qt能找到ros相关命令,应该再能够使用ros相关命令的终端里打开qt。我的是直接打开终端,输入qtcreator &
即可;之后选择open project打开编辑过的CMakelist.txt,选择相应的路径保存qt生成的文件;再run cmake,之后点击finish即可。
可以看到,caffe的头文件,opencv的头文件都找到了,同时也能使用caffe的命名空间caffe是不是很方便呢!
- Caffe + ROS + OpenCV + Qt creator
- 树莓派运行opencv和caffe 配置Qt creator
- ros 安装 qt creator plugin
- OpenCV QT creator
- ROS开发环境之Qt Creator
- ros下qt creator环境搭建
- Qt creator 开发ROS程序配置
- ROS开发环境之Qt Creator
- 图像处理软件 Qt creator + opencv
- [OpenCV]OpenCV+QT Creator环境配置
- Ubuntu下借助Qt Creator 调试Caffe
- QT+QT creator+OpenCV图像灰度化
- linux平台 QT Creator 配置 OpenCV
- 在Qt Creator中使用Opencv 2.3
- 在Qt Creator中使用OpenCV库
- 在Qt Creator中使用OpenCV库
- QT creator使用OpenCV问题集
- win7+QT creator+openCV配置和使用
- 位运算复习(1)
- 设计模式(七)抽象工厂模式
- 第五周—raptor之斐波那契数列
- Unicode下CString和char *之间的互相转换
- 【树链剖分】目录
- Caffe + ROS + OpenCV + Qt creator
- 以太网,IP、TCP、UDP数据包解析
- 水题
- 最小二乘法推到过程
- iOS 第三方优质库\框架\项目介绍
- CodeCombat-是个陷阱吗?
- 关于DevExpress GridControl 和TreeList在窗体被继承后无法设计问题
- Codeforces Round #358 (Div. 2) D. Alyona and Strings dp
- JavaOne 2016——观众得以一睹JShell的威力