流行人脸检测与模糊算法,王者究竟是谁?实战揭秘( 二 )

YOLOv5算法

流行人脸检测与模糊算法,王者究竟是谁?实战揭秘

文章插图
图3:YOLO目标检测过程(来源——原始论文)
YOLO(You Only Look Once)算法是一种用于检测包括人脸在内的大量对象的算法 。与前代产品不同,YOLO通过神经网络进行单次检测,使其更快、更适合实时应用程序和视频场景 。总体来看,使用YOLO检测媒体中人脸的过程可以分为四个部分:
  • 图像网格划分:输入图像被划分为单元格网格 。每个单元负责预测位于其边界内的对象 。对于每个单元,YOLO算法预测边界框、对象概率和类概率 。
  • 边界框预测:在每个单元格中,YOLO算法预测一个或多个边界框及其相应的概率 。这些边界框表示潜在的对象位置 。每个边界框由其中心坐标、宽度、高度以及对象存在于该边界框内的概率来定义 。
  • 类别预测:对于每个边界框 , YOLO预测对象可能属于的各种类别(例如 , “脸”、“车”、“狗”)的概率 。
  • 非极大值抑制(NMS):为了消除重复的边界框,YOLO应用了NMS子算法 。该过程通过评估冗余边界框的概率来丢弃冗余边界框 , 并与其他框重叠 , 只保留最可靠和不重叠的边界框 。
YOLO算法的主要优势在于它的速度 。由于它通过神经网络在一次前向传递中处理整个图像,因此它比涉及滑动窗口或区域建议的算法快得多 。然而,这种速度可能会与精度略有权衡,尤其是对于较小的对象或拥挤的场景 。
YOLO算法可以通过在人脸特定数据上对其进行训练并修改其输出类别以便仅包括一个类别(“脸”)来适应人脸检测 。为此,我使用了基于YOLOv5算法构建的一个名叫“yoloface”的开源库 。关键实现代码如下所示:
import cv2from yoloface import face_analysisface=face_analysis()def yolo_face_detection(image):img,box,conf=face.face_detection(image, model='tiny')print(len(box) + " total faces detected.")for i in range(len(box)):x, y, h, w = box[i]print(f"Face detected in the box {x} {y} {x+w} {y+h}")面部模糊(Face blurring)在识别出图像中潜在人脸周围的边界框后,下一步是对其进行模糊处理以删除这些边界标识 。对于这个任务,我开发了两个实现版本 。用于演示这个任务的参考图像如图4所示 。
流行人脸检测与模糊算法,王者究竟是谁?实战揭秘

文章插图
图4:参考图片(Ethan Hoover引自提供免费高清图片素材资源的Unsplash网站)
高斯模糊(Gaussian Blur)
流行人脸检测与模糊算法,王者究竟是谁?实战揭秘

文章插图
图5:具有高斯模糊的模糊参考图像
高斯模糊是一种用于减少图像噪声和污迹细节的图像处理技术 。这在人脸模糊领域尤其有用 , 因为它可以从图像的这一部分中删除细节 。这种算法计算每个像素附近的像素值的平均值 。该平均值以被模糊的像素为中心,并使用高斯分布进行计算,从而为附近的像素赋予更多权重,而为远处的像素赋予更少权重 。其结果是生成一个减少高频噪声和精细细节的软化图像 。应用高斯模糊的结果如前面图5所示 。
高斯模糊采用三个参数:
1. 要模糊的图像部分 。
2. 内核大?。河糜谀:?僮鞯木卣?。较大的内核大小会导致更强的模糊 。
3. 标准偏差:值越高,模糊效果越强 。
f = image[y:y + h, x:x + w]blurred_face = cv2.GaussianBlur(f, (99, 99), 15)#你可以调整模糊参数image[y:y + h, x:x + w] = blurred_face像素化(Pixelization)
流行人脸检测与模糊算法,王者究竟是谁?实战揭秘

文章插图
图6:带像素化的模糊参考图像
像素化是一种图像处理技术,其中图像中的像素被替换为单一颜色的较大块 。这种效果是通过将图像划分为单元格网格来实现的,其中每个单元格对应于一组像素 。然后,将该单元中所有像素的颜色或强度作为该单元中全部像素的颜色的平均值,并将该平均值应用于该单元中的所有像素 。此过程可创建简化的外观,从而降低图像中精细细节的级别 。应用像素化的结果如图6所示 。正如你所观察到的,像素化使识别一个人的身份变得非常复杂 。
像素化算法使用一个主要的参数,该参数决定了一个特定区域应该有多少分组像素 。例如,如果我们有一个包含人脸的图像的(10,10)部分,它将被10x10像素组所取代 。越小的数字结果越模糊 。


推荐阅读