![1b41c62517190cf02fffcb7c364a148f.png](https://i-blog.csdnimg.cn/blog_migrate/7d13d2e6370f06b43ff5e62e0eea188b.jpeg)
随着AI时代的进步,如今各式各类的美颜相机出现在大众面前。
AI美颜核心技术之一就是人脸关键点检测。PaddleHub已经开源了人脸关键点检测模型face_landmark_localization。人脸关键点检测是人脸识别和分析领域中的关键一步,它是诸如自动人脸识别、表情分析、三维人脸重建及三维动画等其它人脸相关问题的前提和突破口。该模型转换自 https://github.com/lsy17096535/face-landmark ,支持同一张图中的多个人脸检测。它可以识别人脸中的68个关键点。
![a2ffc4734f9ba4c56776df1a50186369.png](https://i-blog.csdnimg.cn/blog_migrate/daddb582952976ce524bb6f3508cf0a2.jpeg)
美颜流程如下:
下载安装paddlehub
!pip install paddlehub==1.6.0 -i https://pypi.tuna.tsinghua.edu.cn/simple
加载待美颜图片,检测关键点
src_img = cv2.imread('./zhanmusi.jpeg')
module = hub.Module(name="face_landmark_localization")
result = module.keypoint_detection(images=[src_img])
tmp_img = src_img.copy()
for index, point in enumerate(result[0]['data'][0]):
print(point)
# cv2.putText(img, str(index), (int(point[0]), int(point[1])), cv2.FONT_HERSHEY_COMPLEX, 3, (0,0,255), -1)
cv2.circle(tmp_img, (int(point[0]), int(point[1])), 2, (0, 0, 255), -1)
res_img_path = 'face_landmark.jpg'
cv2.imwrite(res_img_path, tmp_img)
img = mpimg.imread(res_img_path)
# 展示预测68个关键点结果
plt.figure(figsize=(10,10))
plt.imshow(img)
plt.axis('off')
plt.show()
关键点检测图像如下:
![20fa68b1a5d1e47408fd6676dd6e45d6.png](https://i-blog.csdnimg.cn/blog_migrate/5b001346bb3674f817ec66911c0deb86.jpeg)
项目全部代码链接如下:
PaddleHub-人像美颜 - 百度AI Studio - 一站式AI开发实训平台aistudio.baidu.com欢迎大家多多交流。哈哈
paddlehub还是挺方便的。