【NVIDIA Xavier NX入坑记录4】安装OpenCV3.2.0记录

文章目录

  • 前言
    • 1. OpenCV3.2下载
    • 2. 安装依赖
    • 3. 编译安装
    • 4. 错误1:
    • 5. 错误2:
    • 6. 继续编译
    • 7. 错误3:
    • 7. 最后安装
  • 总结
  • Reference


前言

嗯,我闲着没事又在装东西。我本以为装个OpenCV3挺简单的,没想到比4还难装,特此记录。

因为CSDN@worthsen在文章中表示:Nvidia Jetson TX2安装contrib包在调用摄像头调整分辨率时可能会失败,加上自己目前也没有需求,所以没有安装contrib包。


1. OpenCV3.2下载

官方github:https://github.com/opencv/opencv/releases/tag/3.2.0

2. 安装依赖

$ sudo apt-get install build-essential
$ sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
$ sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev # 处理图像所需的包
$ sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev liblapacke-dev
$ sudo apt-get install libxvidcore-dev libx264-dev # 处理视频所需的包
$ sudo apt-get install libatlas-base-dev gfortran # 优化opencv功能
$ sudo apt-get install ffmpeg

3. 编译安装

进入OpenCV3.2.0,创建build文件夹,进入build文件夹,直接最简单的命令

cmake -DCMAKE_BUILD_TYPE=RELEASE -DCMAKE_INSTALL_PREFIX=/usr/install_M/OpenCV3.2.0/ ..

CMAKE_INSTALL_PREFIX=...这里是指定自己的安装路径。

4. 错误1:

报错:
CMake Error at cmake/OpenCVCompilerOptions.cmake:21 (else):
A duplicate ELSE command was found inside an IF block.

原因:
代码冗余。

解决方法:
找到OpenCVCompilerOptions.cmake文件,进入,定位到21行,直接注释掉

【NVIDIA Xavier NX入坑记录4】安装OpenCV3.2.0记录_第1张图片

重新cmake。

5. 错误2:

报错(此处错误信息是摘抄别人的,非本人路径,错误一致):
CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the CMake files:
CUDA_nppi_LIBRARY (ADVANCED)
linked by target “opencv_cudev” in directory D:/Cproject/opencv/opencv/sources/modules/cudev
linked by target “opencv_cudev” in directory D:/Cproject/opencv/opencv/sources/modules/cudev
linked by target “opencv_test_cudev” in directory D:/Cproject/opencv/opencv/sources/modules/cudev/test
…(还有很多类似的报错语句)

原因:cuda高版本不支持2.0架构

解决方法:
见dalao文章

  1. https://blog.csdn.net/u014613745/article/details/78310916
  2. https://blog.csdn.net/qq_60225495/article/details/120473250

然后重新编译cmake -DCMAKE_BUILD_TYPE=RELEASE -DCMAKE_INSTALL_PREFIX=/usr/install_M/OpenCV3.2.0/ ..

6. 继续编译

cmake成功后(成功标志如下图所示),继续make -j4(j后面的数字是核数,根据自己的系统更改),这个过程要挺久的。

【NVIDIA Xavier NX入坑记录4】安装OpenCV3.2.0记录_第2张图片

7. 错误3:

报错:
fatal error: LAPACKE_H_PATH-NOTFOUND/lapacke.h: No such file or directory #include “LAPACKE_H_PATH-NOTFOUND/lapacke.h”

【NVIDIA Xavier NX入坑记录4】安装OpenCV3.2.0记录_第3张图片

原因:
没找到lapacke.h头文件。

解决方法:
step1:sudo apt-get install liblapacke-dev checkinstall
step2:进入opencv_lapack.h文件,修改
将原来的:#include "LAPACKE_H_PATH-NOTFOUND/lapacke.h"
修改成:#include"lapacke.h"

重新make -j4(此处若又重头cmake的话,还是相当于没修改)。

【NVIDIA Xavier NX入坑记录4】安装OpenCV3.2.0记录_第4张图片

7. 最后安装

直接sudo make install


总结

因为我原本就有OpenCV,这个只是为了共存,所以没有进行环境配置,有需要的xdm麻烦自己搜一下或者看我之前的文章哈。

加油,科研人。

Reference

  1. https://worthsen.blog.csdn.net/article/details/77893866(@worthsen,Ubuntu16.04下安装OpenCV3.2.0)
  2. https://blog.csdn.net/u014613745/article/details/78310916(解决一堆linked问题1.0)
  3. https://blog.csdn.net/qq_60225495/article/details/120473250(解决一堆linked问题2.0)
  4. https://blog.csdn.net/Dead_Rabbit6_0/article/details/78044754(错误3)

你可能感兴趣的:(NVIDIA,opencv,计算机视觉)