当前位置:   article > 正文

记录:编译opencv-4.1.0、opencv_contrib-4.1.0、dense_flow过程_opencv_contrib4.1.0

opencv_contrib4.1.0

系统环境:Ubnutu20.04

opencv_contrib是opencv4.1的扩展库,支持CNN物体识别和姿态估计-生物视觉等功能

1.解压opencv-4.1.0、opencv_contrib-4.1.0、dense_flow

  1. unzip opencv-4.1.0.zip
  2. unzip opencv_contrib-4.1.0.zip
  3. unzip dense_flow.zip

2.在你的opencv目录下创建build目录

  1. cd opencv-4.1.0
  2. mkdir build

3.cmake构建Makefile文件

cmake -DCMAKE_BUILD_TYPE=Release -DWITH_CUDA=ON -DOPENCV_EXTRA_MODULES_PATH=/home/win/PycharmProjects/OpenCV_contrib-4.1.0/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_EXTRA_MODULES_PATH=/home/win/PycharmProjects/OpenCV_contrib-4.1.0/opencv_contrib-4.1.0/modules

改为

-DOPENCV_EXTRA_MODULES_PATH=这里写上你的opencv_contrib-4.1.0/modules的路径

构建完成之后开始编译:

make -j4

后面的j几根据你电脑性能来选择,这里make -j4是以4个线程并行编译。

出现的问题:

问题1:

丢失:boostdesc_bgm.i等类似文件

解决方案:

这里我把依赖文件上传到这里了,免费积分下载:https://download.csdn.net/download/bjbz_cxy/16153740

下载完成之后解压

解压之后有两个文件

这里在解压boostdesc_bgm.i等.zip这个文件

可以看到如下内容

将这些文件copy到opencv_contrib/modules/xfeatures2d/src/ 目录下就可以了

问题2:

找不到nvcuvid.h文件

解决方案

在刚刚下载的文件里解压Video_Codec_SDK_9.1.23.zip文件

把include目录下的nvcuvid.h文件copy到/usr/local/include目录下就可以了

然后继续make,一路顺畅,顺利完成编译。

然后在进入到dense_flow目录下,创建一个build文件夹

  1. cd dense_flow
  2. mkdir build

然后输入如下命令:

OpenCV_DIR=你的opencv路径/build cmake ..

在输入make

make

可能会出现这个问题:

这个可以忽略,这个不会影响生成,这个可能是make写法的bug。

你会发现会生成可执行文件:

这就代表成功了

我们测试一下看看

先创建几个存储目录,用来存储数据结果

  1. mkdir tmp
  2. mkdir tmp/flow_x
  3. mkdir tmp/flow_y
  4. mkdir tmp/image

在试试GPU效果:

./extract_gpu -f=test.avi -x=tmp/flow_x -y=tmp/flow_y -i=tmp/image -b=20 -t=1 -d=0 -s=1 -o=dir

然后执行完成之后就可以看到tmp下的生成数据了

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/119898
推荐阅读
相关标签
  

闽ICP备14008679号