前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >人工智能实现程序员“防”BOSS?刷脸就发短信,8行代码人脸报警

人工智能实现程序员“防”BOSS?刷脸就发短信,8行代码人脸报警

原创
作者头像
用户1769637
发布2018-04-30 11:38:18
1.4K5
发布2018-04-30 11:38:18
举报
文章被收录于专栏:Python区块链Python区块链

如今一个攻城狮就能搞定人脸的深度进修算法,这要多感激打动国外开源框架,虽然达不到旷世face++和诸多人脸公司的深度,可是实际应用已经没有太大压力。下图就是tensorflow写的人脸5点定位加情感测试。

人工智能实现程序员“防”BOSS?刷脸就发短信,8行代码人脸报警
人工智能实现程序员“防”BOSS?刷脸就发短信,8行代码人脸报警

人脸识别应用

前不久搜集上爆红某公司,一人脸识别开发师用摄像头识别老板,当老板靠进本身的工位的时辰,电脑主动切换到本身工作时的界面。

人工智能实现程序员“防”BOSS?刷脸就发短信,8行代码人脸报警
人工智能实现程序员“防”BOSS?刷脸就发短信,8行代码人脸报警

WTF?

你还在觉得这个梗是网上辟谣的?

还在觉得人脸识别手艺实现特别复杂、高峻上?

NO!你OUT了,今天小编用最最简单易懂的代码讲解,给大师带来这款防火、防盗、防老板的终极利器——

项目地点:BossComming

人工智能实现程序员“防”BOSS?刷脸就发短信,8行代码人脸报警
人工智能实现程序员“防”BOSS?刷脸就发短信,8行代码人脸报警

项目方针:

  • 识别特定人物,并经由过程手机信息的编制提示你:你的老板来啦!

项目情形引见:

  • Python 3.3+或Python 2.7(本教程用6版本)
  • Windows 7或MacOS,以及Linux等体系
  • 一个摄像头和IDLE集成体系(PyCharm)

下载完Python3.6,并设置装备安排相干的体系情形,按win键+R键输入cmd,

人工智能实现程序员“防”BOSS?刷脸就发短信,8行代码人脸报警
人工智能实现程序员“防”BOSS?刷脸就发短信,8行代码人脸报警

翻开呼吁提示符,输入呼吁安装一下依靠:

  • pip3 install face_recognition
  • pip3install jpush

代码讲解:

下载本教程的项目,我们起头逐条代码的讲解人脸识别代码,保证在列位吃瓜群众“深切”到人工智能规模的教程傍边。video_capture = cv2.VideoCapture(0)

  1. # Load a sample picture and learn how to recognize it.
  2. obama_image = face_recognition.load_image_file("BOSS2.bmp")
  3. obama_face_encoding = face_recognition.face_encodings(obama_image)[0]
  4. whileTrue:
  5. ret, frame = video_capture.read()
  6. face_locations = face_recognition.face_locations(frame)
  7. face_encodings = face_recognition.face_encodings(frame, face_locations)

其中cv2.VideoCapture函数界说摄像头工具,0为第一个摄像头,一样平常为笔记本内置摄像头。

face_recognition.load_image_file:读取项目下的图片文件

face_recognition.face_encodings:对图片停止编码

while True:进入死轮回

video_capture.read:是一个前往当前帧的函数,它能前往两个参数,ret和frame

  • 第一个参数是bool型的ret,其值为True或False,代表有没有读到图片
  • 第二个参数是frame,是当前截取一帧的图片。

face_recognition.face_locations(frame):获取视频流帧,识别人脸

face_recognition.face_encodings(frame, face_locations):对视频流停止编码

本章根基讲解了bosscoming这个成心思项目的团体框架和实现。更多细节请关注我们,将在后面文章出现。

下面分享分享Python正则表达式的知识:

(1). 正则表达式语法

1.1 字符与字符类

1 特殊字符:.^$?+*{}[]()|

以上特殊字符要想使用字面值,必须使用进行转义

2 字符类

1. 包含在[]中的一个或者多个字符被称为字符类,字符类在匹配时如果没有指定量词则只会匹配其中的一个。

2. 字符类内可以指定范围,比如[a-zA-Z0-9]表示a到z,A到Z,0到9之间的任何一个字符

3. 左方括号后跟随一个^,表示否定一个字符类,比如[^0-9]表示可以匹配一个任意非数字的字符。

4. 字符类内部,除了之外,其他特殊字符不再具备特殊意义,都表示字面值。^放在第一个位置表示否定,放在其他位置表示^本身,-放在中间表示范围,放在字符类中的第一个字符,则表示-本身。

5. 字符类内部可以使用速记法,比如d s w

3 速记法

. 可以匹配除换行符之外的任何字符,如果有re.DOTALL标志,则匹配任意字符包括换行

d匹配一个Unicode数字,如果带re.ASCII,则匹配0-9

D 匹配Unicode非数字

s匹配Unicode空白,如果带有re.ASCII,则匹配 中的一个

S 匹配Unicode非空白

w匹配Unicode单词字符,如果带有re.ascii,则匹配[a-zA-Z0-9_]中的一个

W 匹配Unicode非单子字符

(2) 组与捕获

    1 ()的作用:

      1. 捕获()中正则表达式的内容以备进一步利用处理,可以通过在左括号后面跟随?:来关闭这个括号的捕获功能

      2. 将正则表达式的一部分内容进行组合,以便使用量词或者|

    2 反响引用前面()内捕获的内容:

      1. 通过组号反向引用

        每一个没有使用?:的小括号都会分配一个组好,从1开始,从左到右递增,可以通过i引用前面()内表达式捕获的内容

      2. 通过组名反向引用前面小括号内捕获的内容

        可以通过在左括号后面跟随?P<name>,尖括号中放入组名来为一个组起一个别名,后面通过(?P=name)来引用 前面捕获的内容。如(? P<word>w+)s+(?P=word)来匹配重复的单词。

    3 注意点:

      反向引用不能放在字符类[]中使用。

2. Python正则表达式模块

 2.1 正则表达式处理字符串主要有四大功能

    1. 匹配 查看一个字符串是否符合正则表达式的语法,一般返回true或者false

    2. 获取正则表达式来提取字符串中符合要求的文本

    3. 替换查找字符串中符合正则表达式的文本,并用相应的字符串替换

    4. 分割使用正则表达式对字符串进行分割。

2.2 Python中re模块使用正则表达式的两种方法

    1. 使用re.compile(r, f)方法生成正则表达式对象,然后调用正则表达式对象的相应方法。这种做法的好处是生成正则对象之后可以多次使用。

    2. re模块中对正则表达式对象的每个对象方法都有一个对应的模块方法,唯一不同的是传入的第一个参数是正则表达式字符串。此种方法适合于只使用一次的正则表达式

大家喜欢的话,想学习的可以评论Python,小编给大家分享一个直播学习平台

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
人脸识别
腾讯云神图·人脸识别(Face Recognition)基于腾讯优图强大的面部分析技术,提供包括人脸检测与分析、比对、搜索、验证、五官定位、活体检测等多种功能,为开发者和企业提供高性能高可用的人脸识别服务。 可应用于在线娱乐、在线身份认证等多种应用场景,充分满足各行业客户的人脸属性识别及用户身份确认等需求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档