首先,先下载php版本的SDK,SDK本质上是封装了http请求。
其次,这里仅仅是示例Face++接口的使用,在明星脸库中匹配相似脸,并显示相应图片。
1.核心步骤
FACE++官网提供的核心概念
由于是本例介绍的是相似脸搜索,因此最后两个步骤改为:
- 构建Faceset:调用/faceset/create创建新的Faceset,使用/faceset/add_face将明星脸加入到Faceset中;
- 模型训练:调用/train/search训练相应Faceset的搜索模型;
- 人脸搜索:调用/recognition/search搜索相似脸。
2.基本步骤
2.1建立明星脸库
进行相似脸搜索,需要在特定的脸库中搜索,因此要先建立相应的明星脸库。这里建立明星脸库faceset_star。为了方便获取到脸的名称,建立相应的group_star.
######构建Group
$group_name = 'group_star';
$facepp->execute('/group/delete',$params_group); //如果已经存在该Group,则先删除
$response_group = $facepp->execute('/group/create',$params_group);
#####创建faceset
$params_faceset['faceset_name'] = 'faceset_star';//可由系统随机产生
//$facepp->execute('/faceset/delete',$params_faceset);
$response_faceset = $facepp->execute('/faceset/create',$params_faceset);
这里简单在明星脸库中加入几个明星的脸。代码如下:
<?php
require_once 'facepp_sdk.php';
$facepp = new Facepp();
$facepp->api_key = '';
$facepp->api_secret = '';
$stars = array
(
array(
'name'=>'范冰冰',
'url'=>'http://www.faceplusplus.com.cn/assets/demo-img2/%E8%8C%83%E5%86%B0%E5%86%B0/11.jpg'
),
array(
'name'=>'张嘉倪',
'url'=>'http://www.faceplusplus.com.cn/assets/demo-img2/%E5%BC%A0%E5%98%89%E5%80%AA/9.jpg'
),
array(
'name'=>'佟丽娅',
'url'=>'http://www.faceplusplus.com.cn/assets/demo-img2/%E4%BD%9F%E4%B8%BD%E5%A8%85/11.jpg'
),
array(
'name'=>'买红妹',
'url'=>'http://www.faceplusplus.com.cn/assets/demo-img2/%E4%B9%B0%E7%BA%A2%E5%A6%B9/10.jpg'
),
array(
'name'=>'张馨予',
'url'=>'http://www.faceplusplus.com.cn/assets/demo-img2/%E5%BC%A0%E9%A6%A8%E4%BA%88/10.jpg'
)
);
######构建Group
$group_name = 'group_star';
$params_group['group