赞
踩
人脸检测系统在当今世界中具有巨大的用途,这个系统要求安全性,可访问性和趣味性!今天,我们将建立一个可以在脸上绘制15个关键点的模型。
人脸特征检测模型形成了我们在社交媒体应用程序中看到的各种功能。 您在Instagram上找到的面部过滤器是一个常见的用例。该算法将掩膜(mask)在图像上对齐,并以脸部特征作为模型的基点。
Instagram自拍过滤器需要知道您的眼睛,嘴唇和鼻子在图像上的确切位置
让我们使用Keras(TensorFlow作为底层)开发模型!首先,我们需要一些数据来训练我们的模型。
数据
我们使用Omri Goldstein Kaggle 上的带有标记特征的人脸图像数据集。数据集包含大约7000张图像(96*96),这些图像带有可以在facial_keypoints.csv文件中找到的面部标志。
但是在这里我们有一个问题。大多数图像没有15个完整的点集。因此,我们只需要那些具有15个面部关键点的图像即可。
可以使用此脚本,我已经做了一些清理,并将修改后的数据保存在Dataset Archives GitHub中。 Colab notebook需要使用wget命令下载ZIP文件。
import pandas as pd
import numpy as np
from sklearn.model_selection import train_test_split
# Download the dataset from Kaggle. Unzip the archive. You'll find the facial_keypoints.csv file there.
facial_keypoints = pd.read_csv( "files/face-images-with-marked-landmark-points/facial_keypoints.csv")
num_missing_keypoints = facial_keypoints.isnull().sum( axis=1 )
all_keypoints_present_ids = np.nonzero( num_missing_keypoints == 0 )[ 0 ]
# face_images
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。