TSN-denseflow提光流和RGB帧

因为又重新处理别的数据集,需要在服务器上重新配置denseflow的环境。叫组里的师弟,倒腾了2周,也没弄好。我这个急性子的人实在是按耐不住了,干脆自己来吧(不吃饭不睡觉也得把它弄好,哈哈哈,然后并没有,也是倒腾了大半天)。记录一下,过程中遇到的问题,希望对你有所帮助!

首先,贴几个有用的流程可以参考。(1) build_all.sh这个是TSN给的安装opencv,denseflow和caffe的脚本文件。可以参考前面两个的流程。

(2) mmaction给出的安装opencv4.1.0及denseflow的回复

我基本是按照第二个流程操作的。

  1. 安装OpenCV 4.1.0
  • 下载opencv 4.1.0 和Opencv_contrib
wget -O OpenCV-4.1.0.zip wget https://github.com/opencv/opencv/archive/4.1.0.zip 
unzip OpenCV-4.1.0.zip
wget -O OpenCV_contrib-4.1.0.zip https://github.com/opencv/opencv_contrib/archive/4.1.0.zip
unzip OpenCV_contrib-4.1.0.zip
  • 安装OpenCV 4.1.0
cd opencv-4.1.0
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release -DWITH_CUDA=ON -DOPENCV_EXTRA_MODULES_PATH=../../opencv_contrib-4.1.0/modules/ -DWITH_TBB=ON -DBUILD_opencv_cnn_3dobj=OFF -DBUILD_opencv_dnn=OFF -DBUILD_opencv_dnn_modern=OFF -DBUILD_opencv_dnns_easily_fooled=OFF -DOPENCV_ENABLE_NONFREE=ON -DCUDA_GENERATION=Maxwell ..
make -j

cmake编译的时候,我遇到了几个问题:一是尝试第一个选项选择build,还有-D最后一个选择:根据自己的显卡选择合适的(eg, kepler, Fermi) https://en.wikipedia.org/wiki/CUDA#GPUs_supported。这里如果随便设置,可能呢过编译能通过,但是最终提光流的时候还是会遇到(-217 Gpu API call invalid device function in function "call" ).

https://www.mobibrw.com/2017/7479参考解决方案

其他的一些选项,可自己百度。

2. 安装denseflow

cd denseflow/
mkdir build && cd build
OpenCV_DIR=../../opencv-4.1.0/build/  cmake ..
make -j

建议还是直接用docker镜像来操作吧。省去配置环境的各种bug!!! github上面的tsn提供了docker镜像:

docker pull bitxiong/tsn

关于docker在Ubuntu16.04上面的安装可以参考我的下一篇文章。

你可能感兴趣的:(bug)