冰球突破九五至尊(官方)下载网站IOS/安卓版/手机版APP下载
你的位置:冰球突破九五至尊(官方)下载网站IOS/安卓版/手机版APP下载 > 新闻 >
发布日期:2024-07-19 07:46 点击次数:104
在本节中冰球突破九五至尊app(中国)官方网站,咱们将学习使用 OpenCV 和 Python 运用一种名为 Haar Cascade 的流行东谈主脸检测门径进行东谈主脸检测。
Haar 级联分类器简介
该门径最早在Paul Viola 和 Michael Jones 撰写的论文《使用增强级联浅易特征进行快速对象检测》中冷落。
该时刻背后的理念是使用级联分类器来检测图像中的不同特征。然后将这些分类器组合成一个强分类器,不错准确分手包含东谈主脸的样本和不包含东谈主脸的样本。
OpenCV 内置的 Haar Cascade 分类器已在大王人东谈主脸数据集上进行过熟练,因此无需进一步熟练。咱们只需从库中加载分类器并使用它对输入图像践诺东谈主脸检测即可。
安设 Python 版 OpenCV
要安设 OpenCV 库,只需掀开号令指示符或末端窗口并运行以下号令:
pip install opencv-python
仅当您的拓荒上已安设 pip 时,此号令才有用。
OpenCV 用于图像中东谈主脸检测
咱们将构建一个检测器来识别 Unsplash相片中的东谈主脸。input_image在运转编码之前,请确保将图片保存到您的责任目次并将其重定名为。
技艺 1:导入 OpenCV 包
当今,让咱们导入OpenCV并使用以下代码行输入输入图像旅途:
import cv2imagePath = 'input_image.jpg'
第 2 步:读取图像
然后,咱们需要用OpenCV的imread()函数读取图像:
img = cv2.imread(imagePath)
技艺 3:将图像调换为灰度
为了提高打算恶果,咱们最先需要将此图像调换为灰度,然后再对其进行东谈主脸检测:
gray_image = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
技艺 4:加载分类器
让咱们加载OpenCV内置的预熟练的Haar Cascade分类器:
face_classifier = cv2.CascadeClassifier( cv2.data.haarcascades + "haarcascade_frontalface_default.xml")
请慎重,咱们正在使用一个名为的文献haarcascade_frontalface_default.xml。此分类器挑升用于检测视觉输入中的正面。
OpenCV 还提供了其他预熟练模子来检测图像中的不同物体 - 举例东谈主的眼睛、含笑、上半身,以至是车辆的派司。您不错通过查验库的GitHub 存储库来了解商量 OpenCV 内置的不同分类器的更多信息。
技艺 5:践诺东谈主脸检测
咱们当今不错使用刚刚加载的分类器对灰度图像践诺东谈主脸检测:
face = face_classifier.detectMultiScale( gray_image, scaleFactor=1.1, minNeighbors=5, minSize=(40, 40))
让咱们明白一下上述代码中指定的门径和参数:
detectMultiScale():
detectMultiScale() 门径用于识别输入图像中不同大小的东谈主脸。
grey_image:
这个门径中第一个参数叫作念grey_image,即是咱们之前创建的灰度图像。
scaleFactor:
此参数用于削弱输入图像的尺寸,以便算法更容易检测较大的东谈主脸。在本例中,咱们指定了比例因子 1.1,暗示咱们但愿将图像尺寸削弱 10%。
minNeighbors:
级联分类器在图像中运用滑动窗口来检测其中的东谈主脸。您不错将这些窗口视为矩形。
最先,分类器会拿获大王人误报。这些误报可通过参数摈斥minNeighbors,该参数指定了需要识别的相邻矩形的数目,才智将对象视为有用检测。
一言以蔽之,将 0 或 1 这么的小值传递给此参数会导致大王人的误报,而大王人的误报可能会导致失去很多委果报。
这里的决窍是找到一种衡量,让咱们约略摈斥假阳性,同期还能准确识别真阳性。
minSize:
终末,该minSize参数树立要检测的物体的最小尺寸。模子将忽略小于指定最小尺寸的东谈主脸。
技艺6:画图范畴框
当今模子也曾检测到图像中的东谈主脸,让咱们运行以下代码行来围绕这些东谈主脸创建一个范畴框:
for (x, y, w, h) in face: cv2.rectangle(img, (x, y), (x + w, y + h), (0, 255, 0), 4)
该face变量是一个包含四个值的数组:检测到东谈主脸的 x 轴和 y 轴,以及它们的宽度和高度。上述代码对已识别的东谈主脸进行迭代,并创建一个逾越这些测量值的范畴框。
该参数0,255,0暗示范畴框的神采,为绿色,并4暗示其厚度。
技艺7:透露图像
为了透露检测到的东谈主脸图像,咱们最先需要将图像从 BGR 体式调换为 RGB:
img_rgb = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)
当今,让咱们使用 Matplotlib 库来透露图像:
import matplotlib.pyplot as pltplt.figure(figsize=(20,10))plt.imshow(img_rgb)plt.axis('off')
上述代码应生成以下输出:
伟大的!
该模子已告捷检测出该图像中的东谈主脸并在其周围创建了一个范畴框。
使用 OpenCV 进行及时东谈主脸检测
当今咱们也曾告捷地使用 OpenCV 在静态图像上践诺了东谈主脸检测,让咱们望望如安在及时视频流上践诺相同的操作。
技艺 1:先决条款
最先,让咱们接续导入 OpenCV 库并加载 Haar Cascade 模子,就像咱们在上一节中所作念的那样。若是您之前也曾运行过此代码块,则不错跳过它:
import cv2face_classifier = cv2.CascadeClassifier( cv2.data.haarcascades + "haarcascade_frontalface_default.xml")
第 2 步:看望收集录像头
当今,咱们需要看望拓荒的录像头来读取及时视频数据流。不错使用以下代码完成此操作:
video_capture = cv2.VideoCapture(0)
请慎重,咱们已将参数传递给 VideoCapture() 函数。这告诉 OpenCV 使用咱们拓荒上的默许录像头。若是您的拓荒连气儿了多个录像头,则不错相应地改换此参数值。
技艺 3:识别视频流中的东谈主脸
当今,让咱们创建一个函数来检测视频流中的东谈主脸并在它们周围画图一个范畴框:
def detect_bounding_box(vid): gray_image = cv2.cvtColor(vid, cv2.COLOR_BGR2GRAY) faces = face_classifier.detectMultiScale(gray_image, 1.1, 5, minSize=(40, 40)) for (x, y, w, h) in faces: cv2.rectangle(vid, (x, y), (x + w, y + h), (0, 255, 0), 4) return faces
该detect_bounding_box函数以视频帧手脚输入。
在这个函数中,咱们使用与之前相同的代码,在践诺东谈主脸检测之前将帧调换为灰度。
然后,咱们还使用与之前相同的scaleFactor、minNeighbors和的参数值来检测该图像中的东谈主脸。minSize
4终末,咱们在框架周围画图一个厚度相宜的绿色范畴框。
技艺 4:创建及时东谈主脸检测轮回
当今,咱们需要创建一个无穷的 while 轮回,它将从咱们的收集录像头拿获视频帧并将东谈主脸检测功能运用于它:
whileTrue: result, video_frame = video_capture.read() # read frames from the videoif result isFalse:break# terminate the loop if the frame is not read successfully faces = detect_bounding_box( video_frame ) # apply the function we created to the video frame cv2.imshow("My Face Detection Project", video_frame ) # display the processed frame in a window named "My Face Detection Project"if cv2.waitKey(1) & 0xFF == ord("q"):breakvideo_capture.release()cv2.destroyAllWindows()
运行上述代码后,您应该会看到My Face Detection Project屏幕上出现一个名为的窗口:
无论您在框架内迁徙到何处,算法王人会追踪您的脸部并在其周围创建一个绿色范畴框。
在上头的框架中,模子识别了我的脸和我手中的驾照上的相片。
您还不错通过举起多张相片或让不同的东谈主站在相机背面的不同角度来测试此模子的有用性。该模子应该约略在不同的配景或照明树立下识别扫数东谈主的脸。
若是您思退出程序,不错按键盘上的“q”键退出轮回。
使用 OpenCV 进行东谈主脸检测 - 下一步
当今您也曾学会了如何使用 OpenCV 库告捷检测图像和及时视频中的东谈主脸,底下是您不错聘任的一些技艺,将您的常识提高到一个新的水平:
创建我方的阵势
您不错使用本教程中提供的代码手脚您我方的东谈主脸检测阵势标最先。
推广该阵势标一种门径是识别不同类型的输入数据(举例 PDF 文献或监控图像)中的东谈主脸。您以至不错树立我方的安全录像头,并及时对其拿获的数据进行东谈主脸检测。
此外,您还不错在大型数据集上创建东谈主脸检测模子,或者更进一步践诺诸如在图像数据蚁集检测一个东谈主是否戴着口罩之类的任务。
Kaggle 上的图像中的东谈主脸检测和东谈主脸口罩检测数据集是该鸿沟投资组合阵势标高超最先。
设立面部识别模子
天然东谈主脸检测可用于在视觉输入中检测东谈主脸,但东谈主脸识别更进一步。该时刻用于通过将东谈主脸与现存数据库进行匹配来考据一个东谈主的身份。
您不错尝试设立一个面部识别模子,在东谈主群中识别特定的面部(以至可能是您的面部)。
这项任务比东谈主脸检测稍许具有挑战性,因为模子必须在很多数据样本上进行熟练,然后才智分手东谈主。
在设立东谈主脸识别模子之前,您可能还需要践诺预处置时刻,举例降噪和图像变换。
若是这些成见对您来说很生分,请不要驰念!您不错通过参加咱们的Python 图像处置课程了解商量图像处置的扫数常识。
得回鸿沟专科常识
图像和视频处置鄙俚运用于安全、零卖、医疗保健和制造业等各个鸿沟。
若是你思成为别称打算机视觉巨匠,你最先需要了解这些行业使用的数据类型。鸿沟专科常识将使你更容易在本质场景中象征、调换和熟练数据集。
最先,您不错参加咱们的Python 生物医学图像分析课程。该课程将教您如何处置 CT 扫描图像、分割腹黑 MRI 时刻序列以及笃定阿尔茨海默病是否会改变大脑结构。
这些成见将使您具备插足生物医学成像鸿沟所需的手段冰球突破九五至尊app(中国)官方网站。
Powered by 冰球突破九五至尊(官方)下载网站IOS/安卓版/手机版APP下载 @2013-2022 RSS地图 HTML地图