AIGC背后的技术分析 | 人脸识别和人脸检测

简介: 机器学习案例:人脸识别和人脸检测

640.jpg


# 01、Python Dlib框架及人脸识别模型库
## 1、Dlib框架



Dlib是基于C++的一个跨平台通用的框架。Dlib内容涵盖机器学习、图像处理、数值算法、数据压缩等。Dlib提供了Python的接口,在Python中安装Dlib时要先安装cmake模块和scikit-image模块,由于在安装dlib模块过程中需要对C++代码进行编译,所以安装dlib模块前要先安装好Visual Studio 2015以后版本。

使用pip模块管理工具下载dlib框架的相关模块。
1)下载cmake模块

pip install cmake
2)下载scikit-image模块
pip install scikit-image
3)下载dlib模块
pip install dlib
## 2、人脸识别模型库
在本案例中,使用下面两个已经训练好的人脸识别模型进行项目设计。

1)人脸关键点检测模型

shape_predictor_68_face_landmarks.dat是通过机器学习已经训练好的人脸关键点检测器,使用这个模型,可以很方便地检测人的脸部,并计算出人脸的特征关键点。

2)人脸识别模型

dlib_face_recognition_resnet_model_v1.dat是已经训练好的ResNet(Residual Neural Network)人脸识别模型。ResNet是一种经机器学习训练出152层的神经网络,称为残差网络,它可以加速神经网络的训练,模型的准确率也很高。

人脸检测模型和人脸识别模型的下载地址为 http://dlib.net/files/。

# 02、人脸检测



## 1、人脸脸部检测



下面介绍应用人脸检测模型进行人脸检测的程序设计方法。

【例1】 找出图像中的正向人脸,并用方框标识出来。

应用已经训练好的人脸检测模型,进行人脸检测,构建人脸外部矩形框,其核心语句为:
js detector = dlib.get_frontal_face_detector() shape = predictor(img, 1)
程序设计步骤如图1所示。

640.jpg


■ 图1 人脸检测主要步骤


程序代码如下:
js import dlib from skimage import io # 使用 Dlib 的正面人脸检测器 frontal_face_detector detector = dlib.get_frontal_face_detector() # Dlib 的人脸检测模型 predictor = dlib.shape_predictor("shape_predictor_68_face_landmarks.dat") # 图片所在路径 img = io.imread("x3.jpg") # 生成 Dlib 的图像窗口 win = dlib.image_window() win.set_image(img) # 使用 detector 检测器来检测图像中的人脸 faces = detector(img, 1) print("人脸数:", len(faces)) for i, d in enumerate(faces): print("第", i+1, "个人脸的矩形框坐标:", "left:", d.left(), "right:", d.right(), "top:", d.top(), "bottom:", d.bottom()) # 绘制人脸脸部矩形框 win.add_overlay(faces) # 保持图像 dlib.hit_enter_to_continue()
运行程序,可以输出每个人脸的脸部轮廓矩形框的坐标值,并在图片上绘制方框图形。检测单人及多人正面脸部的结果如图2所示。

640.jpg


■ 图2 检测正面脸部

shape_predictor_68_face_landmarks.dat是一个检测人脸68个关键点的检测器,应用这个模型,可以很方便地计算出人脸的特征关键点,并绘制出脸部轮廓。

提取脸部轮廓的核心语句为:

shape = predictor(img, faces[i]) # 计算脸部轮廓关键点的位置
  win.add_overlay(shape) # 绘制脸部轮廓线
目录
相关文章
|
2月前
|
人工智能 自然语言处理 搜索推荐
基于参考物体的AIGC图像生成技术在家居导购领域的应用
基于参考物体的AIGC图像生成技术在家居导购领域的应用
163 3
|
2月前
|
机器学习/深度学习 人工智能 搜索推荐
AIGC技术变革推动大规模因材施教逐步落地
AIGC技术变革推动大规模因材施教逐步落地
238 5
AIGC技术变革推动大规模因材施教逐步落地
|
3月前
|
机器学习/深度学习 人工智能 自然语言处理
【AI 现况分析】AIGC 应用领域分析
【1月更文挑战第27天】【AI 现况分析】AIGC 应用领域分析
|
3月前
|
机器学习/深度学习 计算机视觉
AIGC核心技术——计算机视觉(CV)预训练大模型
【1月更文挑战第13天】AIGC核心技术——计算机视觉(CV)预训练大模型
378 3
AIGC核心技术——计算机视觉(CV)预训练大模型
|
3月前
|
人工智能 算法 搜索推荐
AIGC技术背景下的商业模式创新
【1月更文挑战第9天】AIGC技术背景下的商业模式创新
246 2
AIGC技术背景下的商业模式创新
|
3月前
|
人工智能 算法
AIGC技术对科研诚信建设的挑战
【1月更文挑战第5天】AIGC技术对科研诚信建设的挑战
269 5
AIGC技术对科研诚信建设的挑战
|
3月前
|
人工智能 自然语言处理
AIGC核心技术——多模态预训练大模型
【1月更文挑战第14天】AIGC核心技术——多模态预训练大模型
314 4
AIGC核心技术——多模态预训练大模型
|
29天前
|
机器学习/深度学习 人工智能 自然语言处理
【人工智能技术专题】「入门到精通系列教程」零基础带你进军人工智能领域的全流程技术体系和实战指南(LLM、AGI和AIGC都是什么)(一)
【人工智能技术专题】「入门到精通系列教程」零基础带你进军人工智能领域的全流程技术体系和实战指南(LLM、AGI和AIGC都是什么)
49 0
|
3月前
|
搜索推荐
教育领域如何应用好AIGC技术
【1月更文挑战第5天】教育领域如何应用好AIGC技术
354 1
教育领域如何应用好AIGC技术
|
1月前
|
人工智能 自然语言处理 Kubernetes
LLM 技术图谱(LLM Tech Map)& Kubernetes (K8s) 与AIGC的结合应用
LLM 技术图谱(LLM Tech Map)& Kubernetes (K8s) 与AIGC的结合应用
81 0

热门文章

最新文章