最后编辑于2021-02
本人也是最近才熟练的使用python
这个代码环境:
系统:win10
python3.7
正文
一、下载python
我们需要下载python3以上的版本,
根据自己的电脑系统选择x86或者x64
二、注册账号和创建应用
接下来进入百度AI
注册-登陆什么的我就不说了。
1.登陆好后点击‘控制台’
2. 依次找到 产品服务>人工智能>人体分析
3. 再点击 概览>创建应用
4. 名称,接口,描述什么的自己写就好了(注意:接口默认打勾的不用添加或者修改了)
5. 创建好应用后点击返回应用列表,可以看到我们应用的APP ID. API KEY. SECRET KEY
三、开始写代码,我用的是pycharm,大家也可以用python自带IDEL写。
from aip import AipBodyAnalysis import os import base64 import sys import cv2 import numpy as np import time import msvcrt start = time.time() #欢迎语 qq = '71694028' time.sleep(2) print('欢迎使用KK团队制作的软件\n'+'如果在使用本软件的时候出现问题请联系作者\n'+'联系方式Q:'+qq+'\t\nby:kkive') time.sleep(1) print ('软件正在运行,请等待') """ 你的 APPID AK SK """ APP_ID = '16144775' API_KEY = 'j9Kn9bYH2go6kFs4yjETnxPF' SECRET_KEY = 'YpNfHUbmSMN1F3cLftKcTMxW1hfCxVvO' aipseg = AipBodyAnalysis(APP_ID, API_KEY, SECRET_KEY) """ 读取图片 """ def get_file_content(filepath): with open(filepath, 'rb') as c: return c.read() file = 'test.jpg' real = cv2.imread(file) height, width, channels = real.shape resfile = 'res.'+file yuantu = get_file_content(file) """ 带参数调用人像分割 """ request = aipseg.bodySeg(get_file_content(file)) #print (request) labelmap = base64.b64decode(request['scoremap']) # res为通过接口获取的返回json nparr = np.frombuffer(labelmap,np.uint8) labelimg = cv2.imdecode(nparr,1) # width, height为图片原始宽、高 labelimg = cv2.resize(labelimg,(width,height), interpolation=cv2.INTER_NEAREST) im_new = np.where(labelimg==1, 255, labelimg) result = cv2.bitwise_and(real, im_new) cv2.imwrite(resfile, result) #程序运行时间 end = time.time() yxsj = '本次运行时间为(秒):' print ('运行结束') print (yxsj) print (end-start) #按键退出 print("Press 'D' to exit...") while True: if ord(msvcrt.getch()) in [68, 100]: break
四、结束语
运行就好了,完美结束。本人小白,写的可能不怎么完美。我也在逐渐完善中,谢谢大家支持和学习,同时有不正确或者更好的建议可在下方评论。
请登录后评论
TOP
切换版块
安装了baidu-aip的包但是pycharm导入始终显示NotFoundMoudle怎么办?试了很多方法都不管用。
谢谢楼主,学到了
你得安装百度的模块
from aip import AipBodyAnalysis 报错,提示没有AipBodyAnalysis
效果不错呢
小白来这些学习,辛苦楼主了。
不是,是因为我不懂这块。
是我写的麻烦了吗
是啊,省的我们p图了
人像分割比PS还强大
支持~
只是我看不懂,谢谢分享
人像分割后的图片
原图
最后配上代码效果图更好喔
欢迎来到百度AI社区,欢迎在社区留下你的墨宝~