基于OpenCV的人脸识别/人脸检测

本文介绍了基于OpenCV的人脸检测和人脸识别技术。首先,人脸检测通过识别图像中人脸的位置,接着,人脸识别用于辨析人脸属性。内容涉及图像基本概念如帧、分辨率和插值方法,并特别提到OpenCV的双线性和最邻近插值。此外,文章使用Haar级联分类器进行人脸检测,通过训练XML文件实现模型。最后,提供了GitHub资源链接供读者获取代码和进一步学习。
摘要由CSDN通过智能技术生成

1:简介
人脸检测指从现实环境中识别出人脸的位置

人脸识别基于人脸检测,下一步才能辨析人脸的属性,从而判别这个人是谁。

2:图像基本概念
:一张图
帧数:一秒钟刷新多少张图片
分辨率:单位大小所能承载的像素,能力为正相关
图像插值:提高图像分辨率
OpenCV提供了5种插值方法:最邻近双线性、基于像素区域、立方插值及兰索斯插值(加粗的两个时间复杂度低)
介绍:引用 图像插值
灰度图二值图像的拓展,在黑白两种颜色中取得灰色,黑,白,灰
人脸ROI
3:应用
Haar级联来做人脸检测。 Haar级联通过在多个尺度上从图像中提取大量的简单特征来实现。
简单特征主要指边、线、矩形特征等,这些特征都非常易于计算,
然后通过创建一系列简单的分类器来做训练。
这里需要一个cascade_files去训练model。

先去我的Github取到需要的模型训练的.xml文件即cascade_file,下载到python脚本的文件夹下,下面的人脸检测及五官检测代码就直接可以运行了。
如果想看其他方面的人脸识别源码,请移步我的Github。

https://github.com/shaojintian/Face_detection/tree/master

#face_nose&eyes_detection.py
import cv2
import numpy as np

#import Haar files to train face detection model 

face_cascade=cv2.CascadeClassifier('cascade_files/haarcascade_frontalface_alt.xml')
nose_cascade=cv2.CascadeClassifier('cascade_files/haarcascade_mcs_nose.xml')
eye_cascade=cv2.CascadeClassifier('cascade_files/haarcascade_eye.xml')
# check whether haar is done 
if face_cascade.empty():
	raise IOError('Unable to load haarcascade_frontalface_alt')
if nose_cascade
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值