1.需求描述:
我想去桂林呀我想去桂林 可是有时间的时候我却没有钱 我想去桂林呀我想去桂林 可是有了钱的时候我却没时间
能不能让AI带我们去旅游呢? 人像分割识别图像中的人体轮廓,与背景进行分离,再与背景图结合就能实现身在Office,也能留下旅游胜地的形象了吧。说干就干,代码奉上。
2.平台接入
人像分割接入网址:https://console.bce.baidu.com/ai/?fromai=1#/ai/body/overview/index
3.调用攻略(Python3)及评测
3.1首先认证授权:
在开始调用任何API之前需要先进行认证授权,具体的说明请参考:
http://ai.baidu.com/docs#/Auth/top
具体Python3代码如下:
3.2人像分割分析接口调用: 详细说明请参考:http://ai.baidu.com/docs#/Body-API/6fe80662
接口描述 对于输入的一张图片(可正常解码,且长宽比适宜),识别人体的轮廓范围,与背景进行分离,适用于拍照背景替换、照片合成、身体特效等场景。输入正常人像图片,返回分割后的二值结果图、灰度图、透明背景的人像图(png格式)。
请求说明
HTTP 方法:POST
请求URL:https://aip.baidubce.com/rest/2.0/image-classify/v1/body_seg
URL参数:
参数 值 access_token 通过API Key和Secret Key获取的access_token,参考”Access Token获取” Header如下:
参数 值 Content-Type application/x-www-form-urlencoded Body中放置请求参数,参数详情如下:
返回说明
Python3调用代码如下:
3.3.功能评测: 选用不同的数据对图片流量统计动态版的效果进行测试,具体效果如下:
可能是因为有透明通道的原因,这张图看着有点怪,不过在PC上看还是很清晰的。针对不同场景进行测试,总体来看还是很快速、准确的。。
4.应用方案:
为实现照片与旅游圣地组合,代码如下:
效果如下:
执行:
travel_image('single.jpg','tower.jpg','single_tower.png',0.45)
结果:
再来一个:
原图:
各个旅游地:
旅游效果: