首页
学习
活动
专区
工具
TVP
发布

某程序员居然用30行代码写出脸部识别系统躲避BOSS的查岗

GIF

前不久网络上爆红某公司,一人脸识别开发师用摄像头识别老板,当老板靠进自己的工位的时候,电脑自动切换到自己工作时的界面。

WTF?

你还在以为这个梗是网上造谣的?

还在以为人脸识别技术实现特别复杂、高大上?

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

项目地址:BossComming

项目目标:

识别特定人物,并通过手机信息的方式提示你:你的老板来啦!

项目环境介绍:

Python 3.3+或Python 2.7(本教程用6版本)

Windows 7或MacOS,以及Linux等系统

一个摄像头和IDLE集成系统(PyCharm)

下载完Python3.6,并配置相关的系统环境,按win键+R键输入cmd,

打开命令提示符,输入命令安装一下依赖:

pip3 install face_recognition

pip3install jpush

代码讲解:

video_capture = cv2.VideoCapture(0)

# Load a sample picture and learn how to recognize it.

obama_image = face_recognition.load_image_file("BOSS2.bmp")

obama_face_encoding = face_recognition.face_encodings(obama_image)[0]

whileTrue:

ret, frame = video_capture.read()

face_locations = face_recognition.face_locations(frame)

face_encodings = face_recognition.face_encodings(frame, face_locations)

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

face_recognition.face_encodings:对图片进行编码

while True:进入死循环

cv2.VideoCapture函数定义摄像头对象,0为第一个摄像头,一般为笔记本内置摄像头。

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

face_recognition.face_encodings(frame, face_locations):对视频流进行编码

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

第一个参数是bool型的ret,其值为True或False,代表有没有读到图片

第二个参数是frame,是当前截取一帧的图片。

文章到这里就结束了,还是要推荐一下我自己Java学习交流群:281818896,不管你是小白还是大牛, 小编我都挺欢迎,不定期分享干货,包括我自己整理的一份2018最新的Java资料和零基础入门教程, 送给大家,欢迎初学和进阶中的小伙伴。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180120A0Q2NE00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券