【Computer Vision学习】一、在Ubuntu16.04上的OpenCV环境搭建(基于python3)
一、前言
安装OpenCV一般有两种选择:
- 基于python的包管理工具pip安装,该方法是安装OpenCV最快,最简单的方法,对初学者非常友好!【推荐】
- 从源代码编译OpenCV,该方法可以获得对其他软件包、模块的访问权限,以及针对特定体系结构优化安装。当然啦,从源代码安装将使您最大程度地控制自己的OpenCV配置,但它也是最困难,最耗时的。【需要时再来填坑】
故本文主要针对上述第一种pip方法来搭建OpenCV环境。
诸君,且听我吟。
二、虚拟环境安装
virtualenv
和virtualenvwrapper
是两个比较老的工具了,当然可以用,但是pyenv的虚拟环境管理也是不错的,可以参考这里安装。
接下来安装虚拟环境,首先安装 virtualenv
和 virtualenvwrapper
这两个工具,命令如下:
sudo -H pip install virtualenv virtualenvwrapper
接下来添加环境变量,打开~/.bashrc
文件,命令如下:
sudo vim ~/.bashrc
接着在最底部(vim的一般模式下按G
定位到最底部),添加如下代码:
# virtualenv and virtualenvwrapper
export WORKON_HOME=$HOME/.virtualenvs
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
source /usr/local/bin/virtualenvwrapper.sh
而后保存退出,输入以下命令生效环境变量:
source ~/.bashrc
接着看到终端的一些输出,用于设置virtualenvwrapper
。
virtualenvwrapper.user_scripts creating /home/clay/.virtualenvs/initialize
virtualenvwrapper.user_scripts creating /home/clay/.virtualenvs/premkvirtualenv
virtualenvwrapper.user_scripts creating /home/clay/.virtualenvs/postmkvirtualenv
virtualenvwrapper.user_scripts creating /home/clay/.virtualenvs/prermvirtualenv
virtualenvwrapper.user_scripts creating /home/clay/.virtualenvs/postrmvirtualenv
virtualenvwrapper.user_scripts creating /home/clay/.virtualenvs/predeactivate
virtualenvwrapper.user_scripts creating /home/clay/.virtualenvs/postdeactivate
virtualenvwrapper.user_scripts creating /home/clay/.virtualenvs/preactivate
virtualenvwrapper.user_scripts creating /home/clay/.virtualenvs/postactivate
virtualenvwrapper.user_scripts creating /home/clay/.virtualenvs/get_env_details
virtualenvwrapper.user_scripts creating /home/clay/.virtualenvs/premkproject
virtualenvwrapper.user_scripts creating /home/clay/.virtualenvs/postmkproject
现在,可以访问新的终端命令,虚拟环境常用命令如下:
mkvirtualenv
:创建一个虚拟环境workon
:激活环境(或切换到其他环境)deactivate
:停用环境rmvirtualenv
:移除环境
virtualenvwrapper
更多介绍参考这里…
三、基于虚拟环境的OpenCV安装
3.1、OpenCV安装前奏
毫无疑问,Linux下安装任何东西之前最后更新一下,命令如下:
sudo apt-get update
sudo apt-get upgrade
Ubuntu16.04默认会安装两个版本的python,分别是Python 2.7.12
和3.5.2
,但是不会默认安装pip
,所以我们首先需要安装pip
,命令如下:
wget https://bootstrap.pypa.io/get-pip.py
sudo -H python3 get-pip.py
使用pip安装OpenCV通常有两种选择:
- 安装到系统的
site-packages
中 - 安装到虚拟环境的
site-packages
中【推荐】- 该方法的主要好处是,可以使用隔离的软件包(许多具有版本依赖性)在系统上开发多个项目,而不必弄混系统的麻烦。也可以随时添加和删除虚拟环境。
另外,OpenCV通常有两个包:
opencv-python
:包含的是main modules package
opencv-contrib-python
:包含的是main modules and contrib/extra modules
(contrib/extra
模块列表查阅网址)
我们待会安装opencv-contrib-python
这一个就可以了,毕竟它里面是包含了opencv-python
内容的!
3.2、创建虚拟环境安装OpenCV
这里为OpenCV创建一个称为cv的Python 3虚拟环境,输入以下命令:
mkvirtualenv cv -p python3
可以发现进入到虚拟环境cv后,会在用户名前面加上(cv)
的标识。
输入以下命令,安装opencv:
pip install opencv-contrib-python
输入以下命令,更新pip:
pip install --upgrade pip
虚拟环境安装package时,有两点注意:
1、不要使用apt-get
,而是使用pip
2、不要使用sudo
,因为不是在全局安装请求。
四、验证OpenCV虚拟环境
确保在程序所在目录,放置一张名为foto1A.jpg
的任意图片,然后新建一个名为test.py
的python文件,输入以下内容:
import numpy as np
import cv2
img = cv2.imread('./foto1A.jpg')
gray= cv2.cvtColor(img,cv2.COLOR_RGB2GRAY)
sift = cv2.SIFT_create()
kp = sift.detect(gray,None)
# img=cv2.drawKeypoints(gray,kp,img)
img=cv2.drawKeypoints(gray,kp,img,flags=cv2.DRAW_MATCHES_FLAGS_DRAW_RICH_KEYPOINTS)
cv2.imshow('sift_keypoints.jpg',img)
cv2.waitKey(0)
接着,输入以下命令进入到虚拟环境中,并运行该文件:
workon cv
python test.py
运行结果,如下图所示,按任意键即可退出。
参考
- OpenCV Tutorials, Resources, and Guides
- pip install opencv
- How to install OpenCV 4 on Ubuntu
- opencv-python 4.4.0.44 Project description
- Python Virtual Environments: A Primer
- Accessing RPi.GPIO and GPIO Zero with OpenCV + Python
- A non-magical introduction to Pip and Virtualenv for Python beginners
文章来源: recclay.blog.csdn.net,作者:ReCclay,版权归原作者所有,如需转载,请联系作者。
原文链接:recclay.blog.csdn.net/article/details/109058113
- 点赞
- 收藏
- 关注作者
评论(0)