原文链接:http://www.one2know.cn/python7/

案例一 导入图片

  • 思路: 1.导入库 2.加载图片 3.创建窗口 4.显示图片 5.暂停窗口 6.关闭窗口
# 1.导入库
import cv2 # 2.加载图片
img = cv2.imread('a.png') # 3.创建窗口
cv2.namedWindow('window 1 haha') # 4.显示图片
cv2.imshow('window 1',img) # 5.暂停窗口
cv2.waitKey(0) # 6.关闭窗口
cv2.destroyAllWindows()

案例二 在图片上添加人脸识别

  • 思路: 1.导入库 2.加载图片 3.加载人脸模型 4.调整图片灰度 5.检查人脸 6.标记人脸 7.创建窗口 8.显示图片 9.暂停窗口 10.关闭窗口
# 1.导入库
import cv2 # 2.加载图片
img = cv2.imread('a.png') # 3.加载人脸模型,opencv官网下载
face = cv2.CascadeClassifier('haarcascade_frontalface_default.xml') # 4.调整图片灰度:没必要识别颜色,灰度可以提高性能
gray = cv2.cvtColor(img,cv2.COLOR_RGB2GRAY) # 5.检查人脸
faces = face.detectMultiScale(gray) # 6.标记人脸for (x,y,w,h) in faces:   
# 里面有4个参数 1.写图片 2.坐标原点 3.识别大小 4.颜色 5.线宽   
cv2.rectangle(img,(x,y),(x+w,y+h),(0,255,0),4) # 7.创建窗口   
cv2.namedWindow('window 1 haha') # 8.显示图片
cv2.imshow('window 1', img) # 9.暂停窗口
cv2.waitKey(0) # 10.关闭窗口
cv2.destroyAllWindows()

案例三 调用摄像头

  • 思路: 1.导入库 2.打开摄像头 3.获取摄像头实时画面 4.释放资源 5.关闭窗口
# 1.导入库
import cv2 # 2.打开摄像头
capture = cv2.VideoCapture(0) # 3.获取摄像头实时画面
cv2.namedWindow('camera')
while True:   
#3.1 获取摄像头的帧画面   
ret,frame = capture.read()   
#3.2 显示图片(渲染画面)   
cv2.imshow('window 1',frame)   
#3.3 暂停窗口   
if cv2.waitKey(5) & 0xFF == ord('q'):
break # 4.释放资源
capture.release() # 5.关闭窗口
cv2.destroyAllWindows()

案例四 摄像头识别人脸

  • 思路: 1.导入库 2.加载人脸模型 3.打开摄像头 4.创建窗口 5.获取摄像头实时画面 6.释放资源 7.关闭窗口
# 1.导入库
import cv2 # 2.加载人脸模型
face = cv2.CascadeClassifier('haarcascade_frontalface_default.xml') # 3.打开摄像头
capture = cv2.VideoCapture(0) # 4.创建窗口cv2.namedWindow('window 1') # 5.获取摄像头实时画面
while True:   
# 5.1 获取摄像头的帧画面   
ret,frame = capture.read()   
# 5.2 图片灰度调整   
gray = cv2.cvtColor(frame,cv2.COLOR_RGB2GRAY)   
# 5.3 检查人脸   
faces = face.detectMultiScale(gray)   
# 5.4 标记人脸   
for (x, y, w, h) in faces:       
# 里面有4个参数 1.写图片 2.坐标原点 3.识别大小 4.颜色 5.线宽       
cv2.rectangle(frame, (x, y), (x + w, y + h), (0, 255, 0), 4)   
# 5.5 显示图片       
cv2.imshow('camera',frame)   
# 5.6 暂停窗口       
if cv2.waitKey(5) & 0xFF == ord('q'):           
break # 6.释放资源
capture.release() # 7.关闭窗口
cv2.destroyAllWindows()

简单的 Python 人脸识别实例的更多相关文章

  1. 总结几个简单好用的Python人脸识别算法

    原文连接:https://mp.weixin.qq.com/s/3BgDld9hILPLCIlyysZs6Q 哈喽,大家好. 今天给大家总结几个简单.好用的人脸识别算法. 人脸识别是计算机视觉中比较常 ...

  2. OpenCV+python 人脸识别

    首先给大家推荐一本书:机器学习算法原理与编程实践 本文内容全部转载于书中,相当于一个读书笔记了吧 绪论 1992年麻省理工学院通过实验对比了基于结构特征的方法与基于模版匹配的方法,发现模版匹配的方法要 ...

  3. Python人脸识别最佳教材典范,40行代码搭建人脸识别系统!

    Face Id是一款高端的人脸解锁软件,官方称:"在一百万张脸中识别出你的脸."百度.谷歌.腾讯等各大企业都花费数亿来鞭策人工智能的崛起,而实际的人脸识别技术是否有那么神奇? 绿帽 ...

  4. python人脸识别

    需要掌握知识python,opencv和机器学习一类的基础 过一段时间代码上传github,本人菜j一个,虽然是我自己谢的,也有好多不懂,或者我这就是错误方向 链接:https://pan.baidu ...

  5. 【python人脸识别】使用opencv识别图片中的人脸

    概述: OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库 为什么有OpenCV? 计算机视觉市场巨大而且持续增长,且这方面没有标准API,如今的计算机视觉软件大概有以下三种: 1.研究 ...

  6. Python人脸识别 + 手机推送,老板来了你就会收到短信提示

  7. python人脸识别项目face-recognition

    该项目基于Github上面的开源项目人脸识别face-recognition,主要是对图像和视频中的人脸进行识别,在开源项目给出的例子基础上对视频人脸识别的KNN算法进行了实现. 0x1 工程项目结构 ...

  8. python 人脸识别试水(一)

    1.安装python,在这里我的版本是python 3.6 2.安装pycharm,我的版本是pycharm 2017 3.安装pip  pip 版本10 4.安装 numpy    :pip ins ...

  9. python 人脸识别

    """Performs face alignment and calculates L2 distance between the embeddings of image ...

随机推荐

  1. 15款好用超赞的chrome插件, 开发者们的必备~

    今天推荐一波Chrome插件干货.这些插件带给我开发效率上的提升.所以在这里整理一下,分享给朋友们. 作为一名程序开发者,推荐一波常用的chrome插件,用了就舍不得丢,包括免费FQ工具,github ...

  2. 使用Java实现数据库编程 项目(宠物商店)

    创建数据库代码: DROP DATABASE IF EXISTS petShop; CREATE DATABASE petShop; USE petShop; /*创建表*/ CREATE TABLE ...

  3. Mysql Atm取款机系统模拟案例

    #创建ATM数据库 CREATE DATABASE ATM; #创建用户CREATE USER `ATMMaster` IDENTIFIED BY '1234';GRANT ALL ON ATM.* ...

  4. Angular JS 中的内置方法之表单验证

    angular js 结合html5 可以实现强大的表单验证功能 关闭html5自带的表单验证功能可以用

  5. Java编程基础阶段笔记 day04 Java基础语法(下)

    day04 Java基础语法 (下) 笔记Notes要点 switch-case语句注意 switch-case题目(switchTest5) 循环执行顺序 if-else 实现3个整数排序 Stri ...

  6. 一个项目中:只能存在一个 WebMvcConfigurationSupport (静态文件失效之坑)

    一个项目中:只能存在一个 WebMvcConfigurationSupport 在一个项目中WebMvcConfigurationSupport只能存在一个,多个的时候,只有一个会生效. 静态文件访问 ...

  7. Apache之——多虚拟主机多站点配置的两种实现方案

    Apache中配置多主机多站点,可以通过两种方式实现: 将同一个域名的不同端口映射到不同的虚拟主机,不同端口映射到不同的站点: 将同一个端口映射成不同的域名,不同的域名映射到不同的站点. 我们只需要修 ...

  8. html的一些基本语法学习与实战

    其实在学校前端开始之前,问过自己为什么要学,因为自己学的比较杂,直到现在刚刚毕业出来工作了,才明确了方向了,要往嵌入式方向走,但是随着时代的发展,在编程和智能硬件结合的越来越紧密,特别是物联网这一块, ...

  9. LR有的JMeter也有之一“参数化”

    酝酿了几天,一直想写点JMeter的东西,算是对学习东西的一个整理.:) 恩,一直觉得自己领悟能力不强,别人写的东西总要看老半天也不懂.好吧!一惯的傻瓜的方式(大量的截图+参数说明)嘻嘻. 参数化:简 ...

  10. TI MSP430工程配置及2019年电赛A题编程示例(使用430 F5529)

    配置 第一步:右击工程,选择Options 第二步:在General Options的Target选项卡里选择对应的器件Device,这里是MSP430G2231 第三步:在Debugger里选择FE ...