专栏首页有三AI【杂谈】手把手带你配置深度学习环境

【杂谈】手把手带你配置深度学习环境

要想AI学的好,那就得linux系统用的好。放弃windows系统,只用linux系统是你学习AI,或者说做一个合格程序猿的基础。今天就手把手教大家如何在linux系统上配置OpenCV和Caffe,这也是大家在学习过程中,最让人头疼的两个环境。

作者&编辑 | 汤兴旺

在配置之前,我先带大家看下目前大众对深度学习环境配置的需求情况。下图是某个购物平台的信息。

从上图我们可以看出,许多想进入人工智能领域或者深度学习领域的朋友,对深度学习环境配置都很头疼,我旁边有许多朋友,编译OpenCV或者caffe少则一周多则一个月,这样的时间消耗无疑打击了学习的信心,也就真成为了从入门到放弃。

介于大家很苦恼环境配置,今天就手把手带大家配置下环境,我这里只说OpenCV和caffe,其他的环境配置比较简单,若有疑问,欢迎联系我。

1 安装OpenCV

1.1、安装必要的依赖

sudo apt-get install cmake

sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg-dev libswscale-dev libtiff5-dev

1.2、OpenCV安装包

对于OpenCV安装包你可以去官网下载,官网链接如下:

https://opencv.org/releases/

或者在公众号后台回复深度学习环境配置即可得到安装包。

下载好后将它复制到home目录下,安装包如下:

然后将zip文件解压到home目录下,文件名为opencv-4.0.0

接下来打开终端,进入解压后的文件

cd opencv-4.0.0/

创建一个编译文件夹build,并进入

$ mkdir build

$ cd build/

完成上面的准备工作后,就可以cmake了,这里我修改了安装路径为/usr/local/opencv4,可以自己修改到自己需要的位置,如果该命令中不加-D CMAKE_INSTALL_PREFIX=/usr/local/opencv4,则默认各部分分别安装在/usr/local/目录的include/ bin/ lib/3个文件夹下。

cmake -D CMAKE_BUILD_TYPE=Release -D OPENCV_GENERATE_PKGCONFIG=YES -D CMAKE_INSTALL_PREFIX=/usr/local/opencv4 ..

注意最后面..前面有个空格

这里cmake命令执行后会下载ippicv,需要等待比较长时间才能下载完成。

cmake完成后如下所示:

接下来进行make,如下:

make完成后的信息如下:

执行完make后,就可以就行make install了,命令如下:

sudo make install

make install完成后的信息如下:

1.3、OpenCV配置环境

1.3.1 找到opencv4.pc文件:

sudo find / -iname opencv4.pc

1.3.2 将/usr/local/opencv4/lib/pkgconfig/路径加入PKG_CONFIG_PATH

首先用vim打开pkgconfig文件,命令如下:

sudo vim /etc/profile.d/pkgconfig.sh

在pkgconfig文件中加入下面一行:

export PKG_CONFIG_PATH=/usr/local/opencv4/lib/pkgconfig:$PKG_CONFIG_PATH

然后在终端输入下面命令进行激活:

source /etc/profile

验证是否配置成功,在终端输入下面命令:

pkg-config --libs opencv4

配置OpenCV编译环境——加载动态库so库的路径:

sudo vim /etc/ld.so.conf.d/opencv4.conf

在该文件(可能是空文件)末尾加上:

/usr/local/opencv4/lib

再执行以下命令使刚才配置的路径生效:

sudo ldconfig

1.4、测试OpenCV

环境配置完成,对我们安装的OpenCV进行测试,因为我们更改了OpenCV的安装路径(/usr/local/opencv4),所以测试前我们需要在CMakeLists.txt文件的14行find_package(OpenCV REQUIRED)前面加上:

set(OpenCV_DIR /usr/local/opencv4/lib/cmake/opencv4)

注意:这里的CMakeLists.txt是指在/opencv-4.0.0/samples/cpp/example_cmake目录下的CMakeLists.txt文件。

修改后,执行命令:

mkdir build && cd build

cmake ..

make

./opencv_example

当出现镜头则代表编译成功了。

2 安装Caffe

2.1、安装包

首先我们需要去下载Caffe,链接如下:

https://github.com/BVLC/caffe

下载好后将它复制到home目录下,然后对其进行解压,并命名为caffe:

2.2、安装依赖

sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-devlibhdf5-serial-dev protobuf-compiler

sudo apt-get install --no-install-recommends libboost-all-dev

sudo apt-get install libopenblas-dev liblapack-dev libatlas-base-dev

sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev

2.3、修改配置文件

cd caffe

sudo cp Makefile.config.example Makefile.config

sudo gedit Makefile.config

配置文件修改如下:

2.4、修改Makefile文件

sudo gedit Makefile

将下图中的框起来的部分改成LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_serial_hl hdf5_serial

2.5、编译

(1) make all

(2) make test

(3) make runtest

(4) make pycaffe -j8

(5) 测试是否安装成功

2.6、安装过程中遇到的问题

将Makefile.config中CUDA_ARCH的内容改成下面的就行。

对于我配置好的Makefile和config文件,若有需要请加入我的知识星球获取。

总结

以上就是OpenCV和Caffe的环境配置过程,也是我这两天在机器上配置环境的时候完全再现,只要大家按照上面的做,基本不会出现问题,如有问题,欢迎留言!

有三AI编程与开源框架知识星球由我亲自维护,内设Caffe实战,Python实战,Python每日一练,Pytorch实战、C++每一一练等板块。近期我重点更新Caffe的实战教程,包括模型定义、数据处理、源码解读、定制自己的Caffe等等,欢迎大家了解加入,我们一起攻破编程与开源框架。

转载文章请后台联系

侵权必究

本文分享自微信公众号 - 有三AI(yanyousan_ai),作者:汤兴旺

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-08-03

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 【NLP】自然语言处理专栏上线,带你一步一步走进“人工智能技术皇冠上的明珠”。

    每次与行外之人谈起自然语言处理(Natural Language Process,NLP),对方往往都是一片茫然。因此,常常感到很苦恼,如何跟一个从未接触过NL...

    用户1508658
  • 【每周NLP论文推荐】 生成式聊天机器人论文介绍

    欢迎来到《每周NLP论文推荐》。在这个专栏里,还是本着有三AI一贯的原则,专注于让大家能够系统性完成学习,所以我们推荐的文章也必定是同一主题的。

    用户1508658
  • 【杂谈】为什么你在有三AI看不到最新论文的解读,其实一直都有的

    有许多朋友都问过我这个问题,有三兄为什么你不解读最新的论文呢?今天来给大家说道说道。

    用户1508658
  • 关于状态管理模式

    因此,如果把组件的共享状态抽取出来,以一个全局单例模式管理,在这种模式下,组件树构成一个巨大的“视图”,不管在树的哪个位置,任何组件都能获取状态或触发行为,而且...

    Leophen
  • 高赞新书《可解释的机器学习》出版:理解黑盒必备,免费资源

    最近,这本名为《可解释性的机器学习》书在推特火了起来,两天内2千多人点赞,将近700人转发。

    量子位
  • Linux文件系统和vim命令

    FunTester
  • 腾讯云网站备案咨询解答:网站能否备案?

    不能。一个腾讯云账号只能备案一个主体,不同公司属于不同主体。如果您有两个不同的主体,请使用两个账号提交备案,两个不同主体的备案是可以同时提交的。

    魏艾斯博客www.vpsss.net
  • Python递归函数,二分查找算法

    正如你们刚刚看到的,递归函数如果不受到外力的阻止会一直执行下去。但是我们之前已经说过关于函数调用的问题,每一次函数调用都会产生一个属于它自己的名称空间,如果一直...

    changxin7
  • ZooKeeper学习第四期---构建ZooKeeper应用

    配置服务是分布式应用所需要的基本服务之一,它使集群中的机器可以共享配置信息中那些公共的部分。简单地说,ZooKeeper可以作为一个具有高可用性的配置存储器,允...

    用户5640963
  • 异步精髓

    异步通信是一种广泛应用于不同进程和系统之间的通信方法,在异步通信中,客户机向服务器发送一个请求(这需要长时间的处理),并立即收到一个传递确认。与同步通信不同,此...

    用户6969969

扫码关注云+社区

领取腾讯云代金券