安装VTK后重新编译opencv遇到的问题

1.安装VTK的时候用ccmake修改了一些参数,其实不用,直接cmake即可。

ccmake配置VTK参数的时候,修改了BUILD_TESTING = ON,并且也要修改VTK_FORBID_DOWNLOADS = ON

但是make的时候报错,网上说是make没有开启openssl支持,无法用http协议下载。直接不要修改上面两个参数即可(默认都是off)。

2.重新编译opencv的时候

cmake的参数:(开启VTK,增加opencv_contrib)

出现的问题:

(1)支持c++11

(2)-D CUDA_NVCC_FLAGS="-std=c++11 --expt-relaxed-constexpr"

(3)-D WITH_NVCUVID=ON -D BUILD_opencv_cudacodec=OFF(error:Cuda 10.0 fatal error: dynlink_nvcuvid.h: No such file or directory)

原因:cuda10以上没有dynlink_nvcuvid.h和nvcuvid.h,所以要将BUILD_opencv_cudacodec=OFF

最终的cmake:

cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local –D WITH_VTK=ON -D OPENCV_EXTRA_MODULES_PATH=/home/alisa/Documents/package/opencv-3.4.0/opencv_contrib-3.4.0/modules/ -D CUDA_NVCC_FLAGS="-std=c++11 --expt-relaxed-constexpr" -D WITH_NVCUVID=ON -D BUILD_opencv_cudacodec=OFF -D ENABLE_CXX11=YES ..

make的时候特别慢,要用指令

sudo make -j16

开启多线程加快速度!

参考资料:

https://blog.csdn.net/chentianting/article/details/85677166

猜你喜欢

转载自blog.csdn.net/u012370185/article/details/86364091