ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

python 人像抠图

2020-07-11 13:34:35  阅读:400  来源: 互联网

标签:dirs 人像 img python plt import input path


安装依赖:

1. 将依赖保存为requirements.txt 文件

appdirs==1.4.4
astor==0.8.1
Babel==2.8.0
certifi==2020.6.20
cfgv==3.1.0
chardet==3.0.4
click==7.1.2
cma==3.0.3
colorlog==4.1.0
cycler==0.10.0
decorator==4.4.2
distlib==0.3.1
docopt==0.6.2
filelock==3.0.12
flake8==3.8.3
Flask==1.1.2
Flask-Babel==1.0.0
funcsigs==1.0.2
gast==0.3.3
graphviz==0.14
gunicorn==20.0.4
hdfs==2.5.8
identify==1.4.22
idna==2.10
importlib-metadata==1.7.0
itsdangerous==1.1.0
Jinja2==2.11.2
joblib==0.16.0
kiwisolver==1.2.0
MarkupSafe==1.1.1
matplotlib==3.2.2
mccabe==0.6.1
nltk==3.5
nodeenv==1.4.0
numpy==1.19.0
objgraph==3.4.1
opencv-python==4.3.0.36
paddlehub==1.7.1
paddlepaddle==1.8.2
pandas==1.0.5
pathlib==1.0.1
Pillow==7.2.0
pre-commit==2.6.0
prettytable==0.7.2
protobuf==3.12.2
pycodestyle==2.6.0
pyflakes==2.2.0
pyparsing==2.4.7
python-dateutil==2.8.1
pytz==2020.1
PyYAML==5.3.1
rarfile==3.1
regex==2020.6.8
requests==2.24.0
scipy==1.3.1
sentencepiece==0.1.91
six==1.15.0
toml==0.10.1
tqdm==4.47.0
urllib3==1.25.9
virtualenv==20.0.26
visualdl==2.0.0b7
Werkzeug==1.0.1
yapf==0.26.0
zipp==3.1.0
requirements.txt

2. 当前目录运行

pip install -r requirements.txt

 

程序:

import os
import paddlehub as hub
import matplotlib
import matplotlib.pyplot as plt
import matplotlib.image as mpimg
import matplotlib.figure as figure
import numpy as np
matplotlib.use('TkAgg') 

base_dir = os.path.abspath('.')
input_img_path = base_dir+"/source/"
output_img_path = base_dir+"/target/"


humanseg = hub.Module(name="deeplabv3p_xception65_humanseg")

input_imgs_dirs = [input_img_path+p for p in os.listdir(input_img_path)]
output_img_dirs = [output_img_path+p.split(".")[0]+".png" for p in os.listdir(input_img_path)]
print(input_imgs_dirs)
print(output_img_dirs)

all =len(input_imgs_dirs)
i=0
for input in input_imgs_dirs:
    print("%d%%"%(i/all*100))
    results = humanseg.segmentation(data={"image":[input]})
    data = results[0]['data']
    plt.figure(figsize=[10,10])
    plt.imsave(output_img_dirs[i],data)
    # plt.imshow(data)
    # plt.axis("off")
    # plt.show()
    i+=1

 

NOTE:

1. MAC 和 Linux 上可以正常运行,windows 上需要安装docker 后运行

 

标签:dirs,人像,img,python,plt,import,input,path
来源: https://www.cnblogs.com/feiquan/p/13283299.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有