当前各种无人概念满天飞,而无人背后需要涉及到面部识别,而大多的面部识别技术是在opencv这个开源项目的基础上做出来的。这里在win7主机上也搭建了下简单的win7 + opencv + numpy+ scipy 。opencv是时下最流行的基于C++的开源计算机视觉库,从最基本的读写图片,到简单的图像处理(比如降噪滤波、边缘检测、图像变换、特征提取等),再到更加高级的行人检测、人脸识别、文本识别等,其等可以实现。numpy和scipy安装,这两个是python用到的矩阵运算库。

一、opencv的安装

linux平台上可以通过yum或apt-get直接通过源进行安装,在windows上面的安装要相对麻烦些。打开 官方链接 打到 windows相应的版本进行下载。运行exe文件后,其会提示extract到相应的目录。我这里解压到了D盘,对应的在主机上的配置的环境变量如下:

opencv
opencv

二、python与opencv的整合

python的安装这里略过,无法是下一步下一步。这里选择安装的是python2.7,因为默认opencv官方包里提供的只是针对python2.7的整合。如果你安装的是python3.X的也没关系。后面会介绍到如果是python3.x的如何进行整合。

1、官方整合方法

我里使用的是win6 64位系统,进入D:\opencv3\build\python\2.7\x64 目录,里面有一个cv2.pyd 文件,copy该文件到python lib库目录C:\Python27\Lib\site-packages —-安装的如果不在C盘,请自行更换目录。

2、直接整合

如果安装的是不是python2.7的版本,可以从网站 Unofficial Windows Binaries for Python Extension Packages 上找到相应的whl包,通过pip命令进行安装。

python-opencv-whl
python-opencv-whl

按照自己的环境下载相应的版本,然后还是用pip安装,命令如下:

1pip install 包名称

三、numpy和scipy模块的安装

numpy和scipy模块对应的主页为:https://www.scipy.org/scipylib/download.html ,可以通过官方下载,不过最好还是通过pip命令进行安装,如下:

1pip install numpy
2pip install scipy

安装异常的,可以去pypi官网或去pythonlibs 网站上下载相应的whl包进行安装。

四、测试

测试时可以使用D:\opencv3\sources\samples\python目录里的已有示例,也可以自行写段代码试下。这里我找了一段能过摄像头拍摄并保存为照片的代码,如下:

 1#!/usr/bin/env python
 2# -*- coding=utf-8 -*-
 3import cv2
 4cap = cv2.VideoCapture(0)
 5retval, image = cap.read()
 6# gray = cv2.cvtColor(image,cv2.COLOR_BGR2GRAY)
 7# cv2.imshow('image',gray)
 8cv2.imwrite('test.png',image)
 9cap.release()
10cv2.destroyAllWindows()

执行结果会在当前脚本目录保存一个test.png文件,打开就是我摄像头拍摄保存的照片,如下

opencv-saveimage
opencv-saveimage