【杂谈】手把手带你配置深度学习环境
要想AI學(xué)的好,那就得linux系統(tǒng)用的好。放棄windows系統(tǒng),只用linux系統(tǒng)是你學(xué)習(xí)AI,或者說(shuō)做一個(gè)合格程序猿的基礎(chǔ)。今天就手把手教大家如何在linux系統(tǒng)上配置OpenCV和Caffe,這也是大家在學(xué)習(xí)過(guò)程中,最讓人頭疼的兩個(gè)環(huán)境。
作者&編輯 | 湯興旺
在配置之前,我先帶大家看下目前大眾對(duì)深度學(xué)習(xí)環(huán)境配置的需求情況。下圖是某個(gè)購(gòu)物平臺(tái)的信息。
從上圖我們可以看出,許多想進(jìn)入人工智能領(lǐng)域或者深度學(xué)習(xí)領(lǐng)域的朋友,對(duì)深度學(xué)習(xí)環(huán)境配置都很頭疼,我旁邊有許多朋友,編譯OpenCV或者caffe少則一周多則一個(gè)月,這樣的時(shí)間消耗無(wú)疑打擊了學(xué)習(xí)的信心,也就真成為了從入門(mén)到放棄。
介于大家很苦惱環(huán)境配置,今天就手把手帶大家配置下環(huán)境,我這里只說(shuō)OpenCV和caffe,其他的環(huán)境配置比較簡(jiǎn)單,若有疑問(wèn),歡迎聯(lián)系我。
1 安裝OpenCV
1.1、安裝必要的依賴(lài)
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安裝包
對(duì)于OpenCV安裝包你可以去官網(wǎng)下載,官網(wǎng)鏈接如下:
https://opencv.org/releases/
或者在公眾號(hào)后臺(tái)回復(fù)深度學(xué)習(xí)環(huán)境配置即可得到安裝包。
下載好后將它復(fù)制到home目錄下,安裝包如下:
然后將zip文件解壓到home目錄下,文件名為opencv-4.0.0
接下來(lái)打開(kāi)終端,進(jìn)入解壓后的文件
cd opencv-4.0.0/
創(chuàng)建一個(gè)編譯文件夾build,并進(jìn)入
$ mkdir build
$ cd build/
完成上面的準(zhǔn)備工作后,就可以cmake了,這里我修改了安裝路徑為/usr/local/opencv4,可以自己修改到自己需要的位置,如果該命令中不加-D CMAKE_INSTALL_PREFIX=/usr/local/opencv4,則默認(rèn)各部分分別安裝在/usr/local/目錄的include/ bin/ lib/3個(gè)文件夾下。
cmake -D CMAKE_BUILD_TYPE=Release -D OPENCV_GENERATE_PKGCONFIG=YES -D CMAKE_INSTALL_PREFIX=/usr/local/opencv4 ..
注意最后面..前面有個(gè)空格。
這里cmake命令執(zhí)行后會(huì)下載ippicv,需要等待比較長(zhǎng)時(shí)間才能下載完成。
cmake完成后如下所示:
接下來(lái)進(jìn)行make,如下:
make完成后的信息如下:
執(zhí)行完make后,就可以就行make install了,命令如下:
sudo make install
make install完成后的信息如下:
1.3、OpenCV配置環(huán)境
1.3.1?找到opencv4.pc文件:
sudo find / -iname opencv4.pc
1.3.2 將/usr/local/opencv4/lib/pkgconfig/路徑加入PKG_CONFIG_PATH
首先用vim打開(kāi)pkgconfig文件,命令如下:
sudo vim /etc/profile.d/pkgconfig.sh
在pkgconfig文件中加入下面一行:
export PKG_CONFIG_PATH=/usr/local/opencv4/lib/pkgconfig:$PKG_CONFIG_PATH
然后在終端輸入下面命令進(jìn)行激活:
source /etc/profile
驗(yàn)證是否配置成功,在終端輸入下面命令:
pkg-config --libs opencv4
配置OpenCV編譯環(huán)境——加載動(dòng)態(tài)庫(kù)so庫(kù)的路徑:
sudo vim /etc/ld.so.conf.d/opencv4.conf
在該文件(可能是空文件)末尾加上:
/usr/local/opencv4/lib
再執(zhí)行以下命令使剛才配置的路徑生效:
sudo ldconfig
1.4、測(cè)試OpenCV
環(huán)境配置完成,對(duì)我們安裝的OpenCV進(jìn)行測(cè)試,因?yàn)槲覀兏牧薕penCV的安裝路徑(/usr/local/opencv4),所以測(cè)試前我們需要在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文件。
修改后,執(zhí)行命令:
mkdir build && cd build
cmake ..
make
./opencv_example
當(dāng)出現(xiàn)鏡頭則代表編譯成功了。
2?安裝Caffe
2.1、安裝包
首先我們需要去下載Caffe,鏈接如下:
https://github.com/BVLC/caffe
下載好后將它復(fù)制到home目錄下,然后對(duì)其進(jìn)行解壓,并命名為caffe:
2.2、安裝依賴(lài)
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
將下圖中的框起來(lái)的部分改成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) 測(cè)試是否安裝成功
2.6、安裝過(guò)程中遇到的問(wèn)題
將Makefile.config中CUDA_ARCH的內(nèi)容改成下面的就行。
對(duì)于我配置好的Makefile和config文件,若有需要請(qǐng)加入我的知識(shí)星球獲取。
總結(jié)
以上就是OpenCV和Caffe的環(huán)境配置過(guò)程,也是我這兩天在機(jī)器上配置環(huán)境的時(shí)候完全再現(xiàn),只要大家按照上面的做,基本不會(huì)出現(xiàn)問(wèn)題,如有問(wèn)題,歡迎留言!
知識(shí)星球推薦
有三AI編程與開(kāi)源框架知識(shí)星球由我親自維護(hù),內(nèi)設(shè)Caffe實(shí)戰(zhàn),Python實(shí)戰(zhàn),Python每日一練,Pytorch實(shí)戰(zhàn)、C++每一一練等板塊。近期我重點(diǎn)更新Caffe的實(shí)戰(zhàn)教程,包括模型定義、數(shù)據(jù)處理、源碼解讀、定制自己的Caffe等等,歡迎大家了解加入,我們一起攻破編程與開(kāi)源框架。
轉(zhuǎn)載文章請(qǐng)后臺(tái)聯(lián)系
侵權(quán)必究
往期精選
【Python進(jìn)階】Python進(jìn)階專(zhuān)欄、編程與開(kāi)源框架知識(shí)星球上線,等你來(lái)follow
【Python進(jìn)階】實(shí)戰(zhàn)Python圖像文件操作基本編程
【雜談】菜鳥(niǎo)誤入linux會(huì)有哪些慘痛的經(jīng)歷
【Python進(jìn)階】你的真的明白NumPy中的ndarray嗎?
【TensorFlow2.0】以后我們?cè)僖搽x不開(kāi)Keras了?
【TensorFlow2.0】數(shù)據(jù)讀取與使用方式
【TensorFlow2.0】如何搭建網(wǎng)絡(luò)模
總結(jié)
以上是生活随笔為你收集整理的【杂谈】手把手带你配置深度学习环境的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 【Python进阶】带你使用Matplo
- 下一篇: 【知识星球】从SVM对偶问题,到疲劳驾驶