您现在的位置是:网站首页>>PHP>>php

使用face++实现人像美颜

发布时间:2020-04-24 14:35:11作者:wangjian浏览量:76点赞量:0

    face++人像美颜文档地址: https://console.faceplusplus.com.cn/documents/134252584

    face++人像美颜接口地址:

    https://api-cn.faceplusplus.com/facepp/v2/beautify

    参数说明:

    是否必选参数名类型参数说明
    必选api_keystring调用此API的API key
    必选api_secretstring

    调用此API的API secret

    必选image_base64string

    base64编码的二进制图片数据

    可选whiteningint美白程度,取值范围[0,100]

    0无美白效果,100代表最高程度

    本参数默认值为 50

    可选smoothing

    int

    磨皮程度,取值范围 [0,100]

    0无磨皮效果,100代表最高程度

    本参数默认值为 50

    可选thinface

    int

    瘦脸程度,取值范围 [0,100]

    0无瘦脸效果,100代表最高程度

    本参数默认值为50

    可选shrink_face

    int

    小脸程度,取值范围 [0,100]

    0无小脸效果,100代表最高程度

    本参数默认值为50

    可选enlarge_eye

    int

    大眼程度,取值范围 [0,100]

    0无大眼效果,100代表最高程度

    本参数默认值为50

    可选remove_eyebrow

    int

    去眉毛程度,取值范围 [0,100]

    0无去眉毛效果,100代表最高程度

    本参数默认值为50

    可选filter_typestring滤镜名称,参数参考下面的表格

    filter_type 滤镜名称参数列表:

    black_white黑白
    calm平静
    sunny晴天
    trip旅程
    beautify美肤
    wangjiawei王家卫
    cutie唯美
    macaron可人儿
    new_york纽约
    sakura樱花
    17_years_old十七岁
    clight柔光灯
    tea_time下午茶
    whiten亮肤
    chaplin卓别林
    flowers花香
    memory回忆
    ice_lady冰美人
    paris巴黎
    times时光
    lomoLOMO
    old_times旧时光
    spring早春
    story故事
    abao阿宝色
    wlight补光灯
    warm暖暖
    glitter绚烂
    lavender薰衣草
    chanel香奈儿
    prague布拉格
    old_dream旧梦
    blossom桃花
    pink粉黛
    jiang_nan江南

    接口返回的result参数就是美颜过后的base64图片,简单实现如下,这里我是用的时Yii框架的yiisoft/yii2-httpclient拓展实现

    //接口数据
    $url = 'https://api-cn.faceplusplus.com/facepp/v2/beautify';
    $img = file_get_contents(XXX);//人像图片
    $img = base64_encode($img);
    $data = [
        'api_key' => 'XXX',
        'api_secret' => 'XXX',
        'image_base64' => $img,
        'whitening' => 80,
        'smoothing' => 0,
        'thinface' => 0,
        'shrink_face' => 0,
        'enlarge_eye' => 0,
        'filter_type' => 'beautify'
    ];
    $client = new Client();
    $response = $client->createRequest()
        ->setMethod('POST') // 请求方式
        ->setUrl($url)      // 请求地址
        ->setData($data)    //数据传数组
        ->setHeaders(['Content-Type'=>'multipart/form-data']) //header
        ->send();
    if ($response->isOk) {
        //保存美颜图片
        $file = time() . 'jpg';
       file_put_contents($file, base64_decode($response->data['result']));
    } else {
    echo $response->data['error_message'];//错误信息
    }


0 +1