简单的python识别的代码_python+opencv实现的简单人脸识别代码示例

#

源码如下:

#!/usr/bin/env python

#coding=utf-8

import os

from PIL import Image, ImageDraw

import cv

def detect_object(image):

'''检测图片,获取人脸在图片中的坐标'''

grayscale = cv.CreateImage((image.width, image.height), 8, 1)

cv.CvtColor(image, grayscale, cv.CV_BGR2GRAY)

cascade = cv.Load("/opt/local/share/OpenCV/haarcascades/haarcascade_frontalface_alt_tree.xml")

rect = cv.HaarDetectObjects(grayscale, cascade, cv.CreateMemStorage(), 1.1, 2,

cv.CV_HAAR_DO_CANNY_PRUNING, (20,20))

result = []

for r in rect:

result.append((r[0][0], r[0][1], r[0][0]+r[0][2], r[0][1]+r[0][3]))

return result

def process(infile):

'''在原图上框出头像并且截取每个头像到单独文件夹'''

image = cv.LoadImage(infile);

if image:

faces = detect_object(image)

im = Image.open(infile)

path = os.path.abspath(infile)

save_path = os.path.splitext(path)[0]+"_face"

try:

os.mkdir(save_path)

except:

pass

if faces:

draw = ImageDraw.Draw(im)

count = 0

for f in faces:

count += 1

draw.rectangle(f, outline=(255, 0, 0))

drow_save_path = os.path.join(save_path,"out.jpg")

im.save(drow_save_path, "JPEG", quality=80)

else:

print "Error: cannot detect faces on %s" % infile

if __name__ == "__main__":

process("/Users/zhangdebin/Documents/checkFace2.jpg")

示例图片1:

可以看出,对于比较干净的人脸头像,使用opencv库haarcascade_frontalface_alt_tree.xml的识别精度很高(这张达到了100%),同时,对于表情变化的人脸也有很强的鲁棒性。

示例图片2:

但是,对于上传的比较随意的头像照片,比如示例图片2这些有帽子、眼镜遮挡的人脸图片,识别效果就会很差,本组只有唯一一个没有帽子遮挡的人脸被识别成功

本次只是简单的测试了下,python使用opencv库的人脸特征进行人脸识别的效果,仅供初学参考。

总结

以上就是本文关于python+opencv实现的简单人脸识别代码示例的全部内容,希望对大家有所帮助,感兴趣的朋友可以参阅本站:

python图像常规操作

在Python web中实现验证码图片代码分享

Python生成数字图片代码分享

如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/488282.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2020 最新自动驾驶技术报告出炉:Waymo、特斯拉、沃尔沃技术方案大起底

来源:《2020 自动驾驶技术报告》进入 2020 年,自动驾驶技术的跨越式路线与渐进式路线之间的阵营划分已经十分明显。但最终自动驾驶要完全实现无人化,其技术还需要进行不断的迭代和发展。对于自动驾驶的技术进展,WEVOLVER 发布的《…

PC_excel完毕一列英文小写变大写

原创作品,出自 “深蓝的blog” 博客。欢迎转载,转载时请务必注明出处。否则追究版权法律责任。深蓝的blog:http://blog.csdn.net/huangyanlong/article/details/44493869 使用excel中的UPPER函数就可以实现这个目标。介绍例如以下&#xff1a…

c语言if的作用,c语言中if 语句的作用范围示例代码

c语言中if 语句的作用范围示例代码复制代码 代码如下:# include int main(void){if (1 > 2)printf("第一条表达式");printf("第二条表达式");}/*输出结果第二条表达式*/说明if语句的作用范围只有紧跟if的第一条表达式时间: 2013-09-06在高中…

几何画板画椭圆_几何画板条件下椭圆的26种绘制方法(二)——代数法

“几何画板是一种常用的数学软件,具有强大的绘图功能,也为我们探究椭圆的不同绘制方法提供了平台.在探究过程中,我们遇到了一些麻烦和困难,但也获得了很多意想不到的惊喜和收获!我们将椭圆的绘制方法分为七类&#xff…

python迭代器两个基本方法可供参考_[南开大学]20秋学期[1709-2009]《Python编程基础》在线作业答案...

[南开大学]20秋学期《Python编程基础》在线作业特别提醒:本试卷为南开课程辅导资料,请确认是否是您需要的资料在下载!!一、单选题(共20道试题,共40分)1.下面选项中,描述错误的是( )。[A.]如果要创建的目录已经存在,则o…

c语言编程求连续几日的温差最大 最小值,数控维修理论题库(含答案)X2份..doc

数控维修理论题库(含答案)X2份.数控装调维修工中级理论复习题库(含答案)(一)单项选择 (选择一个正确的答案,将相应的字母填入题内的括号中。)1.伺服系统是数控系统的执行部分,它包括伺服驱动单元和( B )。A.NC装置 B.伺服电机C.可编程控制器…

中国抗疫十大黑科技盘点!

来源:工业机器人新冠肺炎来势汹汹,为了阻止疫情的扩散,不少人没来及过春节就投入到了抗疫第一线。不过如今已是2020年,除了人力以外,设计与科技也在积极参与这场抗疫战。你知道吗?不论是“火神山”“雷神山…

JavaScript(js)/上

JavaScript(js) ECMA-----定义的基础语法 DOM------document object model BOM------Browser object model Javasript 基于对象的,也是面向对象 ECMAScript描述了以下内容: 语法 类型 语句 关键字 保留字 运算符 对象(封装 继承 多态&…

cv rgb2gray python_实施mat2gray OpenCV中与Python

我和他有同样的问题,我有一个彩色的画面,我用MATLAB读取图片:Input imread(input1.jpg);,和格式的图像是612x612x3 UINT8,我打印5x5x1像素在画面如下:Input(1:5,1:5,1)201 201 201 201 201201 201 201 201…

ap6212 Linux 蓝牙,替代正基AP6212、AP6330的SDIO WiFi+UART蓝牙组合

原标题:替代正基AP6212、AP6330的SDIO WiFiUART蓝牙组合SKYLAB推出的SDIO wifi串口蓝牙二合一模块WG221,可完全替代正基的WiFi蓝牙二合一模块AP6212和AP6330两个型号。WG221是WiFi和蓝牙二合一的组合解决方案模块,支持1 x 1 802.11 a/b/g/n W…

2020十大最具创新性的AR/VR开发与应用公司

来源: 资本实验室 在经历过去几年的热情高涨与资本蜂拥之后,AR与VR技术正在进入波澜不惊的发展时期,多家曾经风光一时的AR与VR初创企业都已成为昨日黄花。例如,昔日的独角兽,最受瞩目的AR公司Magic Leap一直受裁员、高…

关于直播学习笔记-005-nginx-rtmp-win32在Win10上使用

在Win10上使用nginx-rtmp-win32会提示文件路径问题。 可以将nginx-rtmp-win32拷贝到用户目录文件夹之中。 在命令行中执行nginx.exe程序 转载于:https://www.cnblogs.com/defineconst/p/6899720.html

连筋字体在线生成_四个超实用的字体网站,PPT和海报就靠它,收藏来一波

今天分享四个一键生成艺术字体的网站给你们,非常适合用到各种活动海报设计和PPT设计中。1、手写在线字体生成器这是一个专门生成手写字体的网站,比如毛笔字体、硬笔等手写字体。字体生成后也可以编辑文字的大小、颜色和背景。2、篆书在线生成器这是一个专…

c语言最简单的程序编写,C语言简单程序编写.doc

C语言简单程序编写项目一 C语言简单程序编写1.1学习目标本项目达到的目标为:掌握程序设计的基本思路掌握C语言的基本结构了解流程图的符号含义掌握C语言的关键字会设计和编写简单的C应用程序掌握C语言程序的上机调试过程1.2 开发一个程序1.2.1程序设计应用程序开发的…

用物理学突破深度学习理论瓶颈? Google-斯坦福发布《深度学习统计力学》综述论文,30页pdf阐述深度学习成功机制...

来源:专知【导读】深度学习革新了很多应用,但是背后的理论作用机制一直没有得到统一的解释。最近来自谷歌大脑和斯坦福的学者共同在Annual Review of Condensed Matter Physics 发布了深度学习统计力学的综述论文《Statistical Mechanics of Deep Learni…

软件工程——团队作业2

组长: 马海花 1500802002 组员:王莉娟 1500802028 安梨雅 1500802039 马晓燕 1500802046 马菊瑞 1500802066 马继娴 1500802081 NABCD模型: (1)N(Need 需求) 1.学生可以通过网络,随…

c语言中 字符串常量的界定符,c语言题库2

分源程序给出如下。请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。------------------------------------------------*/#include "stdio.h"int fun(int n){/**********Program**********/int gw,sw,bw ,qw,sum;…

【智能驾驶】数字钥匙打开汽车安全潘多拉磨盒,2019年智能网联汽车发生“十大安全事件”...

来源:AutoR智驾【导读】3月24日,360举办了一场线上发布会,正式发布了《2019智能网联汽车信息安全年度报告》,从智能网联汽车网络安全发展趋势、新兴攻击手段、汽车安全攻击事件、汽车安全风险总结和安全建设建议等方面对2019年智能…

浏览器驱动放python哪里_Python+Firefox驱动自动化打开浏览器

前言好久没用最简单的打开浏览器方式,这里记录一下,需要的可以看看。安装Python环境这里太简单了,不再重复编写。下载Firefox驱动image解压放到指定目录$ tar zxf geckodriver-v0.27.0-macos.tar.gz$ pwd$ /2020/tools/firefoxdriver/geckodr…

stm32按键输入实验c语言,stm32f103学习笔记(三)按键输入(IO口输入)

学stm32第三天了,才学到按键输入,这进度也是醉了。。。谁叫俺c语言基础不行,还没有学过模数电呢。。开发板上有4个按键:key0,key1,key2和wk_up,分别接在PE4,PE3,PE2和PA0…