投稿人:才能我浪费99
AI在民间的认知度最高的项目,或许就是图片特效了
本期活动,小帅就来带者们快速上手肤色检测API
各位者,接口文档一定要看哦
接口文档 https//ai.baidu.com/ai-doc/FACE/2k7zyhuev
如何创建应用。获取accesstoken 记得一定要看文档的接入指南哦。官方已经给了图文教程。小帅这里就不再重复说明了。AI接入指南
申请邀测能力开通
登录控制台填工单提交
https//ticket.bce.baidu.com/?_=61&fromai=1#/ticket/list
特效客户交流QQ群:6416 也可以加百度官方QQ群找群管申请
注意:需提供信息,appid、需开通接口、名称、联系人及电话、具体应用场景。
接口能力简介
业务能力 通过AI技术对图片中的人脸进行肤色检测,支持1-6挡,数字越小颜色越浅
肤色检测:支持多档位肤色检测,数字越小颜色越浅图片质量控制:对输入的图片进行质量判断,支持包含图片本身大小、清晰度、光照等标准定制及控制人脸角度判断:对图片中的人脸进行多种姿态角度判断
接口调用造起来
获取AccessToken(浏览器获取)
API Key、Secret Key 替换为自己创建应用的信息
https//aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=API Key&client_secret=Secret Key
使用最快速的方式获取AccessToken
将以上替换后的URL。直接粘贴到浏览器地址栏回车即可。得到如下字段。我们只需要access_token后面的值
{
“refresh_token” “25.6973e8f0835d6458b46a12b52f008a1b.0000..2898”,
“expires_in” 00,
“session_key” “9mzdDxEUo4Lny4jBhrHfOfoZgeqAphy5iTvSQgDWubDduWwGNzoQpCLC+1IEnGDlbFAD4q1Roty5O2DrloahXAgLuwZH”,
“access_token” “24.458cd6570fa5837e0185dce0ab6.00..2898”,
“scope” “…”,
“session_secret” “3faacaeaa9e9”
}
得到access_token后面的值,保存备用编写代码请求接口需要额外的第三方库fastjson
/**
@author 小帅丶@className SkinColorSample@Description 肤色检测@Date 2025
2025/4/26
/
public class SkinColorSample {
/
重要提示代码中所需工具类FileUtil,Base64Util,HttpUtil请从https//ai.baidu.com/file/658A35ABAB2D404FBF903F64D47C1F72https//ai.baidu.com/file/C8D81F3301E24D68F09AE1AD6E2https//ai.baidu.com/file/544D677F5D4E4F17B4122FBD60DB82B3下载
*/
public static void main(String[] args) throws Exception {
//请将API地址替换为肤色检测所提供的API地址
String url =“https//aip.baidubce.com/rest/2.0/face/v1/skin_color”;
//请将应用的APPID填入
String appid = “【应用的AppID】”;
//图片类型 BASE64图片的base64值; URL图片的 URL( 下载图片时可能由于网络等原因导致下载图片时间过长) FACE_TOKEN 人脸标识
String image_type = “BASE64”;
//access_token获取方法请详见API使用说明,请注意access_token有效期为30天
String access_token=”【access_token】”;
//修改图片地址,测试不同图片
byte[] file = FileUtil.readFileByBytes(“【本地图片地址】”);
//参数image:图像base64编码
String image = Base64Util.encode(file);
//Body中放置请求参数
String params = “{“appid”””+appid+””,“image_type”””+image_type+””,“image”””+image+””}”;
String result = HttpUtil.post(url, access_token, params);
//输出识别结果
System.out.println(result);
//输出肤色
JSONObject object = JSON.parseObject(result);
//拿到第一个face_list
Object face_list = object.getJSONObject(“result”).getJSONArray(“face_list”).get(0);
//第一个face_list转JSONObject
JSONObject skin = JSON.parseObject(face_list.toString());
//获取skin对象中color的值 即肤色等级数值 越小肤色越浅
System.out.println(skin.getJSONObject(“skin”).get(“color”));
}
}
控制台输出的内容
null—>[HTTP/1.1 200 OK]
Server—>[Apache]
Access-Control-Allow-Origin—>[*]
Access-Control-Allow-Methods—>[GET,POST,OPTIONS]
Connection—>[keep-alive]
P3p—>[CP=” OTI DSP COR IVA OUR IND COM “, CP=” OTI DSP COR IVA OUR IND COM “]
Date—>[Sun, 26 Apr 2025
2025 4 GMT]
Access-Control-Allow-Headers—>[X-Requested-With]
Appid—>[]
Tracecode—>[]
Vary—>[Accept-Encoding]
Set-Cookie—>[BAIDUID=8D8D939FA8FDA44F6A54BB25D6F2137CFG=1; expires=Thu, 31-Dec-37 5 GMT; max-age=; path=/; domain=.baidu.com; version=1, BAIDUID=1411AFDFE1A4CEA572EAB9FE029FG=1; expires=Mon, 26-Apr-21 4 GMT; max-age=000; path=/; domain=.baidu.com; version=1]
Content-Length—>[279]
Content-Type—>[application/json]
result{“error_code”0,“error_msg”“SUCCESS”,“log_id”510,“timestamp”84,“cached”0,“result”{“face_num”1,“face_list”[{“face_token”“9ac4c972ff3d48afd4e6b6631be”,“location”{“left”444.61,“top”483.45,“width”420,“height”424,“degree”-2},“skin”{“color”1}}]}}
1
1 即为肤色等级
转存失败
重新上传
取消
接口结构体
{
“error_code”0,
“error_msg”“SUCCESS”,
“log_id”510,
“timestamp”84,
“cached”0,
“result”{
“face_num”1,
“face_list”[
{
“face_token”“9ac4c972ff3d48afd4e6b6631be”,
“location”{
“left”444.61,
“top”483.45,
“width”420,
“height”424,
“degree”-2
},
“skin”{
“color”1
}
}
]
}
}
肤色分级
肤色分级,1~6,越小肤色越浅
1-6 小帅分别给的中文描述为(仅作为参考):十分浅、浅、中等、深、十分深、深不可测
在线体验演示图
微信小程序搜索-有点小帅AI
应用场景
智能医美
支持上传或配合采集工具实时拍摄照片,后对皮肤颜色及质量进行深度,实现比对和肤色档位输出
互动娱乐
可用于各类短视频产品,或互动营销方案中提供趣味的体验
大屏互动
可用于各类商场大屏互动体验。根据肤色推荐不同的护肤产品
看法&建议
1.接口未对性别进行分别评测
2.返回的肤色等级过于简单(建议color为1时,能给出相应的置信度分数)
本次新品体验到此结束
原文链接 https//ai.baidu.com/forum/topic/show/3