環境:ubuntu20.04+cuda10.1+opencv4.10+cmake3.16+libzip1.18 +ffmpeg
推薦Ubuntu18.04+opencv4.1.0+dense_flow
1、安裝cuda
這里建議使用cuda10.0cuda10.0下載,cuda9的版本會出現Unsupported gpu architecture 'compute_75'的報錯,這是由于cuda9版本不支持compute_75,Unsupported gpu architecture 'compute_75’報錯原因,記得在自己的環境變數中添加cuda10.0安裝不同的cuda版本
export CUDA_HOME=/usr/local/cuda-10.0
export PATH=/usr/local/cuda-10.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-10.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
cuda10.0要注意Decode 模塊已經被廢棄,該模塊和 Encode 模塊將作為 NVIDIA VIDEO CODEC SDK 模塊獨立發行,
- 第一種解決方法
下載Video_Codec_SDK_9.0.20,復制nvcuvid.h和cuviddec.h到cuda.10.0的相應位置,
cp Video_Codec_SDK_9.0.20/include/nvcuvid.h /usr/local/cuda-10.0/include/
cp Video_Codec_SDK_9.0.20/include/cuviddec.h /usr/local/cuda-10.0/include/
- 第二種解決方法
將兩個頭檔案添加到編譯是的搜索路徑下,下載Video_Codec_SDK_10.0.26,在自己的環境中添加
export C_INCLUDE_PATH=/yourpath/Video_Codec_SDK_10.0.26/Interface:$C_INCLUDE_PATH
export CPLUS_INCLUDE_PATH=/yourpath/Video_Codec_SDK_10.0.26/Interface:$CPLUS_INCLUDE_PATH
2、gcc選擇
我這里選擇的是gcc-5和g+±5,ubuntu20.04下安裝和選擇合適的gcc和g++參考ubuntu20.04+gcc降級和指定版本gcc和g++,不然可以會出現這樣的錯誤gcc導致opencv出錯
3、安裝cmake3.16
版本低的cmake不能編譯opencv4.1.0,好像是3.3以上的cmake版本才可以安裝cmake3.16
參考:cmake安裝
4、安裝libzip
libzip的github下載libzip下載,安裝程序
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=你自己的路徑 ..
make -j4
make install
安裝完成后記得添加到自己的環境變數中
export PATH=yourpath/libzip/lib/pkgconfig/:$PATH
5、安裝ffmpeg
參考ffmpeg安裝,注意最后添加到自己的環境變數中,例如
export PKG_CONFIG_PATH=yourpath/ffmpeg/lib/pkgconfig:$PKG_CONFIG_PATH
6、安裝boost及各種依賴包
很多教程上沒有寫要安裝boost,導致在編譯時候找不到boost,后來才知道boost是要自己安裝,輸入sudo apt-get install libboost-all-dev
安裝各種依賴,參考安裝依賴
sudo apt-get install libjpeg8-dev libtiff5-dev libjasper-dev libpng12-dev
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev
sudo apt-get install libxvidcore-dev libx264-dev
編譯OpenCV以及openc_contrib會提示缺少boostdesc_bgm.i檔案出錯,報錯為~/opencv_contrib/modules/xfeatures2d/src/boostdesc.cpp:673:20: fatal error: boostdesc_bgm.i: No such file or directory以下檔案需要重新拷貝放opencv_contrib/modules/xfeatures2d/src/ 路徑下,
百度云鏈接:https://pan.baidu.com/s/1BeYF8kqEZLAJYQj-MvxpmA
提取碼:e1wc
參考:安裝opencv時,xfeatures2d模塊缺失boostdesc_bgm.i檔案
7、開始編譯
按照上面1-6步驟進行,接下來參考opencv4.1.0 + dense_flow安裝與使用和opencv4.1.0 dense_flow配置程序記錄進行就ok,
一些問題的解決方法:運行dense_flow遇到的問題,denseflow視頻截幀提取光流工具,dense_flow的編譯與安裝程序很麻煩,每次快要成功的時候都會有問題,但堅持下來會識訓很多,有問題就百度,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/293446.html
標籤:其他
上一篇:Paper翻譯:《MobileNet Based Apple Leaf Diseases Identification》
