初探Mac环境下的python版本OpenCV

一、OpenCV小简介

    OpenCV全称是Open Source Computer Vision Library,顾名思义就是处理计算机视觉的开源函数库,里面的函数是由一系列C函数和少量的C++类构成的,同时提供Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。

    由于近排需要接触学习3D重构的相关知识,于是开始接触计算机视觉,了解得不多,因此只是写下了这个小简介,而且除了cv2这个库,python还有PIL库,也是可以处理图像的,但是功能肯定要比cv2要少了。

二、Mac下python版本的OpenCV的安装

    由于本人C以及C++能力有限,使用的是Python环境下的OpenCV库,叫cv2。本人电脑环境是Mac系统,与Linux系统比较像,但自己平时对Windows更为熟悉,因此在Mac下安装python下的cv2时折腾得比较久(其实流程比较简单,感谢其他博主的安装分享),特记录下来,希望能帮助到需要的各位童鞋。

    在Windows系统下,安装cv2非常简单方便

pip install --upgrade setuptools #更新setuptools
pip install numpy Matplotlib #安装依赖,如果已安装,需要upgrade到所需版本
pip install opencv-python #安装python版本下的opencv

    在Mac系统下,之前可以利用brew install homebrew/science/opencv来进行安装就可以了,但不幸的是homebrew/science已经被舍弃了。

    brew命令其实就是Mac系统上的软件管理工具,全称为Homebrew,在Mac终端可以通过brew安装、更新、卸载软件。


    因此,为了安装,通过查找资料发现,可以通过brew install opencv来进行安装;而在安装过程中,会提示安装错误,按照英语翻译过来应该就是权限不足,文件不能安装在对应文件夹中,但是,不要尝试sudo brew install语句,不然会出现以下错误信息。此时我只会通过不断重复执行brew install opencv来完成opencv的安装。


    一段时间后,opencv会被安装好,此时我们需要把opencv下的python软连接(其实个人认为也可以把下面的文件复制粘贴到对应文件目录下,但是软连接更好,因为软连接会保持每一处链接文件的同步性,而且只会在你选定的位置上生成一个文件的镜像,不会占用磁盘空间)到python的site-pickages中。

    对应的opencv目录为/usr/local/Cellar/opencv/3.4.1_4/lib/python3.6/site-packages/cv2.cpython-36m-darwin.so(opencv版本不同可能导致对应目录名字不同,但大体保持以上结构),注意如果需要访问该目录,需要使用command + shift +G来进行目录索引,不能直接点进去,对应的python目录根据个人本地查找,我的是anaconda3.6版本的,因此直接在用户(users)文件下个人用户下寻找anaconda/lib/python3.6/site-packages即可,再利用命令控制台cd到对应的python的site-packages目录,利用下面的软连接代码即可。

ln -s /usr/local/Cellar/opencv/3.4.1_4/lib/python3.6/site-packages/cv2.cpython-36m-darwin.so

    然后重启python环境,调用import cv2,有可能还会报错,内容基本是说某些库(numpy, matplotlib)版本不符合,因此还需要更新对应的库。

pip install -U numpy

    此时python版本的opencv在Mac下就配置好了,Congratulation!

三、cv2库简单测试

    在python中运行一下测试代码。

#导入cv模块
import cv2 as cv
#读取图像,支持 bmp、jpg、png、tiff 等常用格式
img = cv.imread("/Users/***/Downloads/huaweipho.jpg")
#创建窗口并显示图像
cv.namedWindow("Image")
cv.imshow("Image",img)
cv.waitKey(0)
#释放窗口
cv2.destroyAllWindows()

    得到以下图像后需要在当前窗口下在键盘输入任意值退出图片,测试完毕。

初探Mac环境下的python版本OpenCV_第1张图片

    


你可能感兴趣的:(初探Mac环境下的python版本OpenCV)