树莓派(八)——用摄像头拍照识别人脸并保存到指定位置

在第五部分《SimpleCV库的安装和简单使用》中,我们介绍了如何安装和调试SimpleCV库,并进入simplecv的shell进行了拍照和展示,后面还简单的介绍了如何编写Python脚本来完成同样的效果。

但是,要实现我们物联网应用的效果,还需要一些更强大的函数来帮助我们完成我们想要的功能,我们现在并不需要完全理解其函数的实现原理,只需要学会合理地使用函数即可。同学们如果有兴趣也可以找找源码看一下,这样更能提高我们的代码能力。

下面开始介绍本文的重点:

 

人脸识别

SimpleCV有一个很强大的函数——findHaarFeatures,这是一个在图像中搜索匹配某一种特定模式(或称cascade)的算法,在SimpleCV中自带了几种模式,包括脸、鼻子、眼睛、嘴和身体。如果必要,你也可以下载或生成你自己的模式文件。findHaarFeatures可以分析图像并从中匹配出对应的模式,然后返回匹配到的部分在图像中的位置。这就意味着,你可以从像文件或摄像头捕获的图像中匹配汽车、动物或人。

下面以人脸识别为例,实验一下findHaarFeatures的功能。

#coding:utf-8      //指定编码格式为utf8
from SimpleCV import *            //导入SimpleCV所有的库
from time import sleep 


cam = Camera()    //初始化摄像头

disp = Display()    //定义一个窗口对象

while disp.isNotDone():   
    frame = cam.getImage()    //拍摄一张照片

    segment = HaarCascade("face.xml")    //导入face.xml文件并赋给segment

    autoface = frame.findHaarFeatures(segment)    //检测刚才拍到的照片中有没有人脸

    if ( autoface is not None ):
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值