python计算机视觉应用:人脸识别、面部特征提取

文章介绍了如何使用Python结合OpenCV和DLib库进行面部识别,通过摄像头检测人脸并发送提醒。此外,还展示了Python在数据分析方面的应用,以漫威电影《雷神3》的豆瓣影评为例,抓取并分析用户评论,揭示观影趋势和电影受欢迎程度。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、面部识别

得益于大量前人的工作,如今利用Python做一些简单的计算机视觉工作已经变得非常非常简单了。像人脸识别、面部特征提取之类的工作,就可以直接拿来用,极少需要自己实现繁琐的算法。

就是一个这样的C++库,而同时它也提供了Python接口。

想必大家都有过在办公室遭遇boss探视的经历,而此时此刻你却在毫无自知地逛着淘宝/知乎/豆瓣,场面一度十分尴尬……

那我们就来尝试一下,用Python通过摄像头探测人脸。如果有人进入了摄像头范围,则让Python提出一个通知,告诉你——赶紧把不相关的东西关掉!

整个代码很短,无非几十行,为了能够使用,我们还需要安装一些包和库。这里需要用到的包括OpenCV和DLib。由于dlib需要boost-python,因此还需要安装boost和boost-python。(注意:boost-python默认情况下只编译python2依赖的库,如果使用python3,需要加编译开关;而dlib里是没有探测python版本的,所以可能还需要做一些小hack或者是直接改boost-python库里的文件名)

至于代码,可以简单地放出来:

import cv2

import dlib

from subprocess import call

from time import time

FREQ = 5

FACE_DETECTOR = dlib.get_frontal_face_detector

# macOS下可以使用AppleScript发送通知

def notify(text, title):

cmd = r'display notification "%s" with title "%s"'%(text, title)

call(["osascript", "-e", cmd])

if __name__ == '__main__':

# 初始化摄像头

cap = cv2.VideoCapture(0)

# 创建绘图窗口

# cv2.namedWindow('face')

notify_time = 0

while True:

# 获取一

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序猿小乙

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值