人工智能教你识别口红色号

Git项目源码:https://github.com/DaMaiGit/artifact

花絮

今天是一年一度的情人节。都说女生的梳妆台上永远缺一支口红,在这个时候,给心仪的女神送一支适合她的口红,表达自己的想念之情准没错。想到女神收到口红后欣喜的样子,还真有点小激动呢!


作为技术直男,怎样挑选色号才能不出错呢?上次送女神死亡芭比粉的翻车经历还历历在目。为此,在这段宅家的日子里,小编痛定思痛,制作出了一款口红分析神器:计算机根据女神的照片,自动识别其唇色,从而帮她挑选与唇色最匹配的口红色号。

有了这个神器,我们就能凭借珍藏的女神美照,轻松分析出她们所匹配的口红款式,进而投其所好,从此沐浴在爱情的春风里!

开始动工

口红分析神器的制作步骤主要有:

  1. 识别照片中嘴唇部分的颜色;
  2. 对比口红颜色,筛选出适合的口红款式。

识别照片中嘴唇颜色

首先我们应该让机器准确识别出照片中嘴唇的位置。Google的AI框架TensorFlow可以帮助开发者搭建训练机器学习的模型。

Google的AI框架TensorFlow能够帮助开发者搭建训练机器学习的模型。

对于入门者而言,自己使用TensorFlow去训练模型不是一蹴而就的,这里面涉及到很多深度学习以及TensorFlow的基本概念,例如张量、隐藏层、激活函数、卷积层、池化层等。

好在深度学习的应用并不难,justadudewhohacks大神的人脸识别模型框架face-api可以帮我们忙。构建于TensorFlow.js核心库之上,face-api是基于MobileNetV1的神经网络所进行的人脸样本训练。借助它,我们能够使程序快速获得人脸识别的能力。

2

好在深度学习的应用并不困难,这让我想起了justadudewhohacks大神的人脸识别模型框架:face-api。face-api本质上是构建于TensorFlow.js核心库之上,基于MobileNetV1的神经网络进行人脸样本的训练。总而言之,借助它,我们能够快速使我们的程序获得人脸识别的能力。

深度学习的原理

深度学习指的是通过深度神经网络训练机器,使其获得与人类相似的学习与分析能力,进而完成识别文字、图像和语音的任务。

深度学习主要包括以下三个步骤:

  1. 构建深度神经网络;
  2. 输入数据样本,获得模型并评估效果;
  3. 优化模型并输出。

face-api已经实现了上述三个步骤,为开发者提供了人脸识别的模型,并封装成了简易的api,使我们能在前端项目上更方便地使用人脸识别技术。如图所示,蓝色部分是face-api已经完成的任务,而我们要做的则是输入人脸图片到已经训练好的模型中,得到输出值即可,即橙色框内的部分。

face-api的使用
引入方式

方式1:

如果我们不使用打包工具的话,可以直接将github库中的dist目录下的脚本face-api.js直接导入

<script src="face-api.js"></script>

方式2:

使用npm来引入face-api库;

npm i face-api.js
初始化模型

借助不同的卷积神经网络,face-api提供了一系列模型。常用的模型如下所示:

var nets = {
   
    ssdMobilenetv1: new SsdMobilenetv1(), // ssdMobilenetv1 目标检测
    tinyFaceDetector: new TinyFaceDetector(),  // 人脸识别(精简版)
    tinyYolov2: new TinyYolov2(),   // Yolov2 目标检测(精简版)
    mtcnn: new Mtcnn(
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值