Ubuntu16.04配置opencv3.1(已安装CUDA8.0)

基本是参考这篇博客的:https://blog.csdn.net/yhaolpz/article/details/71375762,感谢原博主,这里只是记录一下。

1、去官网http://opencv.org/releases.html,选择3.1.0版本的source下载。

2、解压opencv-3.1.0.zip到要安装的目录,然后进入目录,执行以下命令:

mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..

执行到第三句可能会卡住,要下载一个文件,可以先下载好ippicv_linux_20151201.tgz这个文件(可以百度一下);依次进入opencv-3.1.0/3rdparty/ippicv/downloads/linux-(一堆数字),先删除下载失败的文件,然后把下载好的ippicv文件放入该文件夹下。之后在进入build目录下,重新执行一次cmake那句命令。这次应该没问题了。接着执行:

make -j8
make命令执行到后期可能会报错
modules/cudalegacy/src/graphcuts.cpp:120:54: error: 
‘NppiGraphcutState’ has not been declared
typedef NppStatus (*init_func_t)(NppiSize oSize, 
NppiGraphcutState** ppState, Npp8u* pDeviceMem);

这是因为opencv3.1和CUDA8.0不兼容导致的。解决方法:

修改 /opencv-3.1.0/modules/cudalegacy/src/graphcuts.cpp 文件内容,如图:

Ubuntu16.04配置opencv3.1(已安装CUDA8.0)_第1张图片

修改后再执行一次make -j8

3、编译成功之后安装

sudo make install

可以通过查看opencv版本验证是否安装成功

pkg-config --modversion opencv 

你可能感兴趣的:(Linux,Ubuntu16.04)