随着互联网的发展,短视频平台的兴起,人们在手机端就可以一键改变发色,帮助用户在自己的照片或实时图像中尝试不同的发型和发色,从而选择最适合自己的造型。
相芯SDK提供的美发功能使用计算机视觉技术,如面部检测和特征提取,来准确地识别和定位人脸,这使得在进行美发操作时可以基于面部形状和特征进行准确的定位和处理。同时还使用机器学习和深度学习算法,通过对大量训练数据进行学习和分析,来实现发型和发色的自动识别和处理。这些算法可以根据用户的面部特征和偏好进行个性化推荐和建议。
1. 功能介绍
相芯sdk美发功能详细介绍
1.单色美发:相芯SDK的美发功能允许用户轻松调整头发的单一颜色。无论是想尝试新的发色还是想改变现有的发色,用户可以使用SDK提供的工具来选择和应用单色发色,以实现所需的外观效果。
2.渐变色美发:相芯SDK还提供了渐变色美发的功能,使用户能够尝试在头发中添加多种颜色的渐变效果。用户可以选择不同的渐变方式,如从根部到发梢逐渐变化的渐变色或是水平方向上的彩虹渐变等。
3.自定义美发接口:相芯SDK的自定义美发接口使用户能够根据自己的需求和创意进行个性化的美发调整。用户可以通过调整发色的强度和光泽度,或是通过选择特定的发色组合,来创造出独特的发型和发色效果。
这些美发功能可以通过相芯SDK的应用程序界面或集成到美发相关的应用程序中使用。用户可以通过实时预览效果,调整发色、渐变和其他参数,以满足个人偏好和创意。相芯SDK的美发功能为用户提供了丰富多样的选项,使他们能够轻松实现单色美发、渐变色美发以及自定义发色的愿望。
2.使用前必查
在项目中使用美发特效之前,请确保
l 已在项目中引入Faceunity SDK,详情请参考Faceunity集成文档
l 已申请包含美发权限的authpack证书文件
l SDK及证书获取方法:发送邮件至 marketing@faceunity.com 进行咨询。
3.使用步骤
3.1. build.gradle配置
allprojects配置
allprojects {
repositories {
...
maven { url 'https://maven.faceunity.com/repository/maven-public/' }
...
}
}
dependencies导入依赖
dependencies {
...
implementation 'com.faceunity:core:8.6.0'
implementation 'com.faceunity:model:8.6.0'
...
}
3.2构造单色美发对象HairBeautyNormal
相芯sdk内置预设8种单色发色
接口说明
class HairBeautyNormal(val controlBundle: FUBundleData)
参数说明
controlBundle
代码示例
HairBeautyNormal normalHair = new HairBeautyNormal(new FUBundleData(DemoConfig.BUNDLE_HAIR_NORMAL));
设置单色美发发色索引
normalHair.setHairIndex(index);
设置单色美发发色强度
normalHair.setHairIntensity(intensity);
3.3构造渐变色美发对象HairBeautyGradient
相芯sdk内置预设5种渐变发色
接口说明
class
参数说明
controlBundle:通过美发ControlBundle文件构造的文件数据模型
代码示例
HairBeautyGradient gradientHair = new HairBeautyGradient(new FUBundleData(DemoConfig.BUNDLE_HAIR_GRADIENT));
设置单色美发发色索引
gradientHair .setHairIndex(index);
设置单色美发发色强度
gradientHair .setHairIntensity(intensity);
3.4自定义更改发色
美发功能基于高精度头发分割模型,并添加纯色、渐变色等图像绘制技术,实现一键换发色特效,并开放接口支持用户自定义妆容色值。
属性定义
属性 | 说明 | 默认值 | 备注 |
hairColorLABData | 自定义更改发色 | Null | FUColorLABData类型数据,对应LAB颜色空间数值,L:[0-100] A:[-128-127] B:[-128-127] |
注意事项
按照参数设置的先后关系,如果先设置了hairIndex,再设置hairColorLABData,hairShine,则按照hairColorLABData,hairShine颜色显示。如先设置了hairColorLABData,hairShine,再设置hairIndex,则按默认hairIndex颜色效果来。
3.5 FURenderKit加载当前特效
加载当前美发特效
public void bindCurrentRenderer() {
mFURenderKit.setFaceBeauty(FaceBeautyDataFactory.fa ceBeauty);//
mFUAIKit.setMaxFaces(4);//
HairBeautyBean hairBeautyBean=hairBeautyBeans.get(currentHairIndex);
onHairSelected(hairBeautyBean);
}
4. API参考列表
HairBeautyNormal(单色美发道具)
属性定义
属性 | 说明 | 默认值 | 备注 |
enable | 美发开关 | true | true表示开启,false表示关闭 |
hairIndex | 发色索引 | 0 | 范围[0-7],此道具预设8种发色 |
hairIntensity | 发色强度 | 1.0 | 范围[0.0-1.0] |
hairShine | 头发光泽度 | 0.0 | 范围[0.0-3.0],0.0为无光泽,3.0为最大光泽度 |
hairColorLABData | 自定义更改发色 | null | FUColorLABData类型数据,对应LAB颜色空间数值,L:[0-100] A:[-128-127] B:[-128-127] |
5. 总结
相芯SDK可以结合虚拟现实或增强现实技术,提供虚拟试衣间的体验,用户可以在虚拟环境中尝试不同的发型和发色,增加个人形象的多样性和趣味性。更多美发功能玩法详见相芯sdk文档,如在接入中遇到问题,可联系相芯科技进行咨询!