Python实现自动人像抠图(小白也能学会)

原理:AI人工智能,机器学习

工具:paddlehub包和人像抠图模型deeplabv3p_xception65_humanseg

步骤一:安装软件
1.nodepad++ (自行百度安装)
2.python (自行百度安装,要求版本是python3.6及以上,推荐安装python3.7)

步骤二:安装工具包

打开windows命令行窗口的方法,同时按:Windows键(带窗户图像那个键)和r键

#复制下面命令一条一条的在windows的命令行窗口里面执行,需要一些时间
pip install  matplotlib
pip install  pillow
pip install  PaddlePaddle
pip install paddlehub==1.6.0
hub install deeplabv3p_xception65_humanseg==1.0.0

步骤三:准备图片和程序

打开nodepad++,复制下面的程序到里面,并另存为koutu.py文件。
注意:
1、按需更改文件名的地方,原图是什么名字就修改成什么名字,最好是英文文字记得加上图片的后缀名。
2、不会更改路径的话,就把图片和koutu.py放到同一个文件夹下面。如:D:\koutu

步骤四:运行抠图程序并查看结果

1.windows的命令行窗口里面输入   d:                (输入d和冒号,然后敲回车)
2.windows的命令行窗口里面输入  cd  koutu         (输入cd这两个字母空格koutu这几个字母,然后敲回车)
3.windows的命令行窗口里面输入  Python  koutu.py    (方法同上,敲完回车后等待命令执行结束,一分钟以内)

命令运行结束后,点击图片进入d盘的koutu文件夹下,看看是否有的一个新文件夹,里面是否有已经扣好图的文件了

请复制下面的内容到,koutu.py

import matplotlib.pyplot as plt
import matplotlib.image as mpimg
from matplotlib import animation
import paddlehub as hub
from PIL import Image, ImageSequence
import numpy as np
import os

# 测试图片路径和输出路径
test_path = ''  #按需更改路径
output_path = ''  #按需更改路径 

# 待预测图片
test_img_path = ["zhou.jpeg"]  #按需更改文件名
test_img_path = [test_path + img for img in test_img_path]

module = hub.Module(name="deeplabv3p_xception65_humanseg")
input_dict = {"image": test_img_path}

# execute predict and print the result
results = module.segmentation(data=input_dict)
for result in results:
    print(result)

# 预测结果展示
out_img_path = 'humanseg_output'+os.sep + os.path.basename(test_img_path[0]).split('.')[0] + '.png'   #输出图片的位置
img = mpimg.imread(out_img_path)
plt.figure(figsize=(10,10))
plt.imshow(img)
plt.axis('off')
plt.show()

原图:
Python实现自动人像抠图(小白也能学会)_第1张图片

抠图结果:
Python实现自动人像抠图(小白也能学会)_第2张图片

你可能感兴趣的:(python)