ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Python爬虫能当副业吗?到了哪个层次能接单?解析能挣钱的方式

2021-12-14 19:01:05  阅读:235  来源: 互联网

标签:plt 能当 Python 检测 cv2 cascade 人脸 图像 接单


Python到底有多强大?只需 15 行代码即可进行人脸检测

无论你是最近开始探索OpenCV还是已经使用它很长一段时间,在任何一种情况下,您都一定遇到过“人脸检测”这个词。随着机器变得越来越智能,它们模仿人类行为的能力似乎也在增加,而人脸检测就是人工智能的进步之一。

私信小编01即可获取大量python学习资源

所以今天,我们将快速了解一下面部检测是什么,为什么它很有用,以及如何禁用 15 行代码就可以在您的系统上实现面部检测!

让我们从了解面部检测开始。

什么是人脸检测?

人脸检测是一种基于人工智能的计算机技术,能够识别和定位数码照片和视频中人脸的存在。简而言之,机器检测图像或视频中人脸的能力。

由于人工智能的重大进步,现在可以检测图像或视频中的人脸,无论光照条件、肤色、头部姿势和背景如何。

人脸检测是几个人脸相关应用程序的起点,例如人脸识别或人脸验证。如今,大多数数码设备中的摄像头都利用人脸检测技术来检测人脸所在的位置并相应地调整焦距。最后,如果你的时间不是很紧张,并且又想快速的python提高,最重要的是不怕吃苦,建议你可以架群:【832357663】 ,那个真的很不错,很多人进步都很快,需要你不怕吃苦哦!大家可以去添加上看一下~

那么人脸检测是如何工作的呢?

很高兴你问了!任何人脸检测应用程序的主干都是一种算法(机器遵循的简单分步指南),可帮助确定图像是正图像(有脸的图像)还是负图像(没有人脸的图像)。

为了准确地做到这一点,算法在包含数十万张人脸图像和非人脸图像的海量数据集上进行了训练。这种经过训练的机器学习算法可以检测图像中是否有人脸,如果检测到人脸,还会放置一个边界框。

Python到底有多强大?只需 15 行代码即可进行人脸检测

使用 OpenCV 进行人脸检测

计算机视觉是人工智能中最令人兴奋和最具挑战性的任务之一,有几个软件包可用于解决与计算机视觉相关的问题。OpenCV 是迄今为止最流行的用于解决基于计算机视觉的问题的开源库。

OpenCV 库的下载量超过1800 万次,活跃的用户社区拥有 47000 名成员。它拥有 2500 种优化算法,包括一整套经典和最先进的计算机视觉和机器学习算法,使其成为机器学习领域最重要的库之一。

图像中的人脸检测是一个简单的 3 步过程:

第一步:安装并导入open-cv模块:

pip install opencv-python
import cv2import matplotlib.pyplot as plt 
# 用于绘制图像

第 2 步:将 XML 文件加载到系统中

下载 Haar-cascade Classifier XML 文件并将其加载到系统中:

Haar-cascade Classifier 是一种机器学习算法,我们用大量图像训练级联函数。根据不同的目标对象有不同类型的级联分类器,这里我们将使用考虑人脸的分类器将其识别为目标对象。

您可以点击此处找到用于人脸检测的经过训练的分类器 XML 文件

https://github.com/wanghao221/Face-Detection/blob/main/haarcascade_frontalface_default.xml

# 加载级联face_cascade = cv2.CascadeClassifier('haarcascade_frontalface_default.xml')

第 3 步:检测人脸并在其周围绘制边界框

使用Haar-cascade 分类器中的detectMultiScale()函数检测人脸并在其周围绘制边界框:

# 读取输入图像img = cv2.imread('test.png')
# 检测人脸faces = face_cascade.detectMultiScale(image = img, scaleFactor = 1.1, minNeighbors = 5)
# 在人脸周围绘制边界框for (x, y, w, h) in faces:      
cv2.rectangle(img, (x, y), (x+w, y+h), (255, 0, 0), 2)
# 显示图像中检测到的人脸数量
print(len(faces),"faces detected!")
# 绘制检测到人脸的图像finalimg = cv2.cvtColor(img, cv2.COLOR_RGB2BGR)
plt.figure(figsize=(12,12))
plt.imshow(finalimg) 
plt.axis("off")
plt.show()

detectMultiScale() 参数:

image: CV_8U 类型的矩阵,其中包含检测到对象的图像。

scaleFactor:指定在每个图像比例下图像尺寸减小多少的参数。

minNeighbors:参数指定每个候选矩形应该保留多少邻居。

可能需要调整一下这些值来获取最佳结果。

Python到底有多强大?只需 15 行代码即可进行人脸检测

就像这样,你可以实现计算机视觉最独特的应用程序之一。可以在下面的GitHub找到整个人脸检测实现的详细代码模板。

标签:plt,能当,Python,检测,cv2,cascade,人脸,图像,接单
来源: https://blog.csdn.net/kj7762/article/details/121937164

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有