以下两个小程序是成品,大家可以扫一下先,
进入小程序后,找到【证件照换底色】的模块,上传照片后,先选择底色,再点击换色按钮,就可以一键置换证件照底色,比较方便快捷
接下来讲下实现过程:
首先用到的是百度云的ai算法模块【人体分析-人体分割】。
注册地址:https://login.bce.baidu.com/?account=& amp;redirect=http%3A%2F%2Fconsole.bce.baidu.com%2Fai%2F%3F_%3D1629972109997#/ai/body/report/index~appId=2736483
注册比较简单,找到人体分析,先创建应用,根据提示填写完信息就可以了
注册完之后,会生成相应的秘钥
然后再领取下免费资源,领取之后大概30分钟左右生效,免费调用10000次
接下来就可以开工了
本次实现涉及到的小程序框架是:uniapp,所有逻辑均为前端实现
大致逻辑是:
1.先获取百度云ai人体分割的token秘钥
2.图片转化成二进制上传到百度云ai接口
3.获取百度云返回的切割后的图片
4.前端使用Canvas创建背景色画布
5.背景色画布和切割图片合并
先画样式
这里就没什么好说了,附上样式代码
<template>
<view class="">
<view class="border" @click="chosefile">
<view class="border1" v-if="flag">
<image class="photo" src="/static/bgcolor/upfile.png" mode="widthFix"></image>
<text class="text">点击上传图片</text>
</view>
<view class="border1" wx:else>
<canvas canvas-id="myCanvas" class="photo2" :style="{'height': picH+'px'}"></canvas>
<text class="text">点击图片重新上传</text>
<