linux下让自己的程序调用caffe库
来源:互联网 发布:php网站密码破解 编辑:程序博客网 时间:2024/05/17 02:31
简单的说,caffe并不像opencv那样。有个官方的例程,可以让小伙伴们方便的入手。正因为如此,本文将详细讲解如何在linux下在自己写的工程中调用caffe库。
本文测试平台Ubuntu14.04+corei7+TitanX
方式1:
如果自己的caffe是用CMakeLists编译安装的,那么就会在/usr/local/lib/cmake/下方生成相应的.cmake的配置文件,这样在其他程序调用CMakeLists的时候就可以,就可以根据这些.cmake文件来找到需要调用的库。
这样的话,可以运行如下的CMakeLists来编译自己的调用了caffe库的程序
cmake_minimum_required(VERSION 2.8)find_package(Caffe)include_directories(${Caffe_INCLUDE_DIRS})add_definitions(${Caffe_DEFINITIONS}) add_executable(caffeinated_application main.cpp)target_link_libraries(caffeinated_application ${Caffe_LIBRARIES})
只调用opencv的CMakeLists
cmake_minimum_required (VERSION 2.8) PROJECT(main)# Requires OpenCV v2.4.1 or laterFIND_PACKAGE( OpenCV REQUIRED )IF (${OpenCV_VERSION} VERSION_LESS 2.4.1) MESSAGE(FATAL_ERROR "OpenCV version is not compatible : ${OpenCV_VERSION}. requires atleast OpenCV v2.4.1")ENDIF()SET(SRC main.cpp)ADD_EXECUTABLE( ${PROJECT_NAME} ${SRC} )TARGET_LINK_LIBRARIES( ${PROJECT_NAME} ${OpenCV_LIBS} )
方式2:
很不巧,自己的caffe是根据Makefile.config编译的,那么这时候就需要自己指定相应的库的路径了,CMakeLists如下,其中opencv调用的库根据自己的需要添加,将cafferoot替换为自己的caffe根目录,opencvroot替换为自己的opencv根目录cmake_minimum_required (VERSION 2.8)project (classification)add_executable(classification classification.cpp)include_directories ( /cafferoot/include /usr/local/include /usr/local/cuda/include )target_link_libraries(classification / cafferoot /build/lib/libcaffe.so /opencvroot /build/lib/libopencv_highgui.so / opencvroot /build/lib/libopencv_core.so / opencvroot /build/lib/libopencv_imgproc.so /usr/local/lib/libglog.so/usr/lib/x86_64-linux-gnu/libboost_system.so )
实验测试:
为了测试刚才的CMakeLists的可行性,本文对caffe自带的cafferoot/examples/cpp_classification/(cafferoot为自己电脑的caffe安装的根目录)下面的classification.cpp进行编译,生成相应的exe。
cd cafferoot/examples/cpp_classification/mkdir buildcd buildcmake ..makels
1 0
- linux下让自己的程序调用caffe库
- 【caffe】windows下让自己的程序调用caffe库
- windows下让自己的程序调用caffe库
- windows下让自己的程序调用caffe库(属性页+dll文件)
- 如何让自己的动态链接库文件能够在linux下被调用
- caffe框架下添加自己的MFC程序(下)
- 自己写程序调用caffe库(classify例子)
- 如何让自己的程序调用其他的Activity?
- Linux下如何让自己的程序在开机时自动启动
- Caffe学习笔记1:linux下建立自己的数据库训练和测试caffe中已有网络
- caffe框架下添加自己的MFC程序(下)(2016-08-04 )
- caffe下跑自己的数据
- Windows下caffe训练自己的数据
- caffe下构建自己的项目文件夹
- VS下建立自己的caffe工程项目
- caffe下训练自己的图片
- linux下将程序中用到的第三方库编译到自己的程序中
- Linux下caffe的安装
- X的第0篇CSDN博客
- 根据SQLite3.def文件生成SQLite3.LIB文件
- Poj 3253 Fence Repair【优先队列+贪心】
- is not allowed to connect to this MySQL server
- html5移动端知识点总结(一)
- linux下让自己的程序调用caffe库
- 实现客户姓名的添加显示
- 计算机网络链路层
- css3通话效果的例子
- Hadoop源码学习之-----Mapreduce输入流:InputFormat,InputSplit,RecordReader
- AngularJs 基础教程 —— 简介(10)
- 计算UIWebView加载网页的内容高度
- JAVA解析RTF 文件
- 最大似然估计,最大后验估计和贝叶斯估计