一、TX2(jetpack4.3)+ubuntu18.04使用cmake-gui安装Opencv(4.5.0)操作步骤
使用刷机自带的opencv,用cmake安装了多次的opencv,都有这样那样的问题,最后用cmake-gui对源码进行编译,安装成功!
1. 如果系统已经安装了其他版本的opencv,建议先卸载,依次执行命令:
sudo apt-get purge libopencv*
sudo apt autoremove
sudo apt-get update
2. 安装依赖包
sudo apt-get -y install build-essential cmake libgtk-3-dev libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev python3-dev python3-numpy python-dev python-numpy libpython3.6-dev libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff5-dev libjasper-dev libdc1394-22-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev liblapacke-dev libopenexr-dev libxvidcore-dev libx264-dev libatlas-base-dev gfortran ffmpeg
上述依赖项也可以单独指令安装,我是怕有些装不上,先单独安装,最后用上面一条指令重新执行了一遍。
在安装过程中,有些会提示安装不上,比如libjasper-dev,我的解决办法是换软件源, 在百度搜索 “”TX2 软件源“”,我用的清华的源,替换后安装成功,我是安装成功后,又把源换了回来。
3.安装cmake-gui
sudo apt-get install cmake-gui
4.将下载好的opencv_4.5.0+opencv_contrib_4.5.0解压到一个文件夹,如myopencv
#tar.gz压缩包:
tar -zxvf 压缩包名(opencv_4.5.0)
zip压缩包:
unzip ***.zip
#压缩包:
unrar x ***.rar
两个文件的解压包分别解压到myopencv目录下,作为两个单独的子目录,不要合并,在myopencv下创建build目录
cd myopencv
mkdir build
cd build
5.运行cmake-gui
cmake-gui ../opencv-4.5.0
../opencv-4.5.0 是我解压缩的opencv_4.5.0的路径。,这个步骤很关键:
打开交互界面后,按照顺序执行,然后 finish,此时 Configure 按钮变为 Stop ,表示配置进行中,执行完第一次会出现红色区域,再执行一次Configure,结束时就好了。
红色区域没了之后,进行下一步的配置
(1)在 CMAKE_BUILD_TYPE 值处选择 Release
(2)CMAKE_INSTALL_PREFIX 选择安装的路径,如/usr/local/opencv4
(3)在 OPENCV_EXTRA_MODULES_PATH 处,为其设置 opencv_contrib-4.5.0 的路径,定位到 /modules 目录
(4)选中OPENCV_PYTHON3_VERSION
(5)添加 python 的路径
(6) 一定要勾选 OPENCV_GENERATE_PKGCONFIG
配置时也可以在搜索栏输入关键字,查找到进行修改配置,按此方法我还做了其他配置
(1)搜索cuda, 选中OPENCV-DNN-CUDA ;WITH-CUDA
(2)搜索example, 选中INSTALL-PYTHON-EXAMPLES; INSTALL-C-EXAMPLES; BUILD-EXAMPLES
(3)搜索NON, 选中OPENCV-ENABLE-NONFREE
(4)搜索 cublas, 选中 WITH-CUBLAS
(5)搜索fast,选中 CUDA-FAST-MATH;ENABLE-FAST-MATH
(6)搜索type, CMAKE-CONFIGUTATION-TYPES --->Release
这一步我主要是参考 https://blog.csdn.net/u011897411/article/details/89743448#22_33,很详细。
6.第5步执行完,在make之前,保证系统的工作模式为最高功耗模式,我觉得这样下面的过程能快一点儿。
#查看当前工作模式
sudo nvpmodel -q verbose
#开启最高功耗的模式,即Max-N:
sudo nvpmodel -m 0
再查看,如果提示风扇没有开启,下面是开启小风扇的方法,需要注意的是进入root模才能执行后面的命令
cd /usr/bin/
sudo su
./jetson_cloks
然后再make
Sudo make -j6
make过程很顺利,一次成功。
7. 安装
sudo make install
这一步要比上一步快许多。
8.如果成功就可以接下来进行环境配置了。
我用Python,环境配置如下:
1)opencv.pc的生成和放置,如果前面已经选了,就会生成opencv4.pc,先查找到该文件的位置,我是把所有的文件名包含opecnv的文件都找出来保存到桌面,以备需要时查找
sudo find / -iname "*opencv*" > /home/l×××/Desktop/opencv2—find.txt
打开该文件拷贝其中的内容
sudo gedit /usr/local/opencv4/lib/pkgconfig/opencv4.pc
不保存关闭该文件
sudo gedit /usr/lib/pkgconfig/opencv.pc
在指定的目录下生成打开opencv.pc文件,该文件是空白的,将拷贝的opencv4.pc的内容黏贴到该文件,保存退出。
2)加入到环境变量
sudo gedit /etc/ld.so.conf.d/opencv.conf
#在弹出文件的末尾加入/usr/local/opencv4/lib (因为我的opencv安装位置在cmake过程中选择的是/usr/local/opencv4,所以添加该内容要根据实际安装位置修改)
sudo ldconfig
使配置生效
sudo gedit /etc/bash.bashrc
打开/etc/bash.bashrc,在打开的文件最后加入
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/opencv4/lib/pkgconfig
export PKG_CONFIG_PATH
保存退出。
更新database
sudo apt-get install mlocate
sudo updatedb
3)测试
在终端输入
python3
import cv2
如果没有出错提示表示可以使用了,如果还不行
$ python3
>>> import sys
>>> sys.path
['', '/usr/lib/python36.zip', '/usr/lib/python3.6', '/usr/lib/python3.6/lib-dynload', '/usr/local/lib/python3.6/dist-packages', '/usr/lib/python3/dist-packages']
我选择 /usr/local/lib/python3.6/dist-packages,因为我进去看过里面什么都没有,干净
1.在该目录下新建一个 opencv.pth 文件
cd /usr/local/lib/python3.6/dist-packages
sudo gedit opencv.pth
在打开的文件中添加以下内容,修改成你自己的路径
/usr/local/opencv4/lib/python3.6/dist-packages
2.保存退出
再次测试
python3
import cv2
cv2.__version__
输出
’4.5.0‘
安装配置结束,接下来安装Pycharm开发平台。
二、pycharm的安装
由于没有anaconda,而且在windows下用pycharm比较顺手,所以决定直接安装pycharm。pycharm不能直接安装,需要jdk的支持
1.jdk的安装,我注册并下载了oracle的java的jdk,先后下载安装了1.8.0_281 版本和jdk11,都不管用,最后安装openjdk可以。
apt-cache search openjdk
sudo apt-get install openjdk-11-jdk
安装结束后查看安装结果
java -version
进行环境配置
which javac
#javac可执行文件
file /usr/bin/javac
#查看链接目标
file /etc/alternatives/javac
# 查看链接目标
file /usr/lib/jvm/java-11-openjdk-arm64/bin/javac
sudo gedit ~/.bashrc
将下面的代码粘贴到最后
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-arm64
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
保存退出。
source ~/.bashrc
刷新配置。
2.安装pycharm。到https://www.jetbrains.com/pycharm/download/#section=windows下载。
点击Other versions会有许多版本,根据需要选择即可。按照步骤安装后,会到启动界面,直接新建一个项目,就可以使用了。
为了使用方便,不用每次到bin目录下写代码执行,在新建的第一个项目中点击菜单tools---->create desktop entry,进行设置即可。需要注意的是需要在root 用户下进行设置,所以可以切换到root用户下再设置。设置好后退出。在搜索处输入py就可以找到Pycharm图标,单击图标右键,选择将其固定到左侧收藏夹,下次就可以从左侧点击图标进行打卡操作了。
三、python虚拟环境安装与配置
sudo pip3 install virtualenv virtualenvwrapper
如果无法使用pip3命令安装,要先安装升级
sudo apt install python3-pip
创建虚拟环境目录来存放所有虚拟环境
mkdir ~/.virtualenvs
添加环境变量
sudo gedit ~/.bashrc
在文档末尾添加
export VIRTUALENVWRAPPER_PYTHON=/usr/local/bin/python3.6
export WORKON_HOME=$HOME/.virtualenvs
source /usr/local/bin/virtualenvwrapper.sh
刷新 bashrc
source ~/.bashrc
创建虚拟环境
mkvirtualenv -p /usr/bin/python3 newvirtualenv
在虚拟环境下安装必须的库,在pycharm中配置使用该虚拟环境。
关于虚拟环境的其他操作指令
mkvirtualenv
#创建环境
workon
#切换到环境
deactivate
#注销当前环境
lsvirtualenv
#列出所有环境
rmvirtualenv
#删除环境
cpvirtualenv
#复制环境
wipeenv
#清除环境内所有第三方包
cdsitepackages
cd到当前环境的site-packages目录
lssitepackages
列出当前环境中site-packages内容
setvirtualenvproject
#绑定现存的项目和环境