Python快速实现一键抠图功能的全过程

简介 使用百度深度学习框架paddlepaddle对人像图片进行自动化抠图
安装
根据PaddlePaddle官网命令安装
Python快速实现一键抠图功能的全过程
文章图片


pip install paddlepaddle-gpu -i https://mirror.baidu.com/pypi/simplepip install paddlehub -i https://mirror.baidu.com/pypi/simple

初试 1.jpg
Python快速实现一键抠图功能的全过程
文章图片

2.jpg
Python快速实现一键抠图功能的全过程
文章图片

【Python快速实现一键抠图功能的全过程】3.jpg
Python快速实现一键抠图功能的全过程
文章图片

4.jpg
Python快速实现一键抠图功能的全过程
文章图片

5.jpg
Python快速实现一键抠图功能的全过程
文章图片

import paddlehub as hubfrom pathlib import Pathpaths = [str(i) for i in Path('.').glob('*.jpg')]# 当前路径下所有.jpg文件human_seg = hub.Module(name='deeplabv3p_xception65_humanseg')results = human_seg.segmentation(paths=paths, visualization=True, output_dir='output')# results = human_seg.segmentation(paths=paths, use_gpu=True, visualization=True, output_dir='output')# 使用GPUprint(results)

代码会自动下载图像分割模型deeplabv3p_xception65_humanseg到C:\Users\Administrator\.paddlehub\modules
效果
文件名 原图 效果
1.jpg Python快速实现一键抠图功能的全过程
文章图片
Python快速实现一键抠图功能的全过程
文章图片
2.jpg Python快速实现一键抠图功能的全过程
文章图片
Python快速实现一键抠图功能的全过程
文章图片
3.jpg Python快速实现一键抠图功能的全过程
文章图片
Python快速实现一键抠图功能的全过程
文章图片
4.jpg Python快速实现一键抠图功能的全过程
文章图片
Python快速实现一键抠图功能的全过程
文章图片
5.jpg Python快速实现一键抠图功能的全过程
文章图片
Python快速实现一键抠图功能的全过程
文章图片
详解 人像分割API
def segmentation(images=None,paths=None,batch_size=1,use_gpu=False,visualization=False,output_dir='humanseg_output')

参数
  • images(list[numpy.ndarray]):图片数据,BGR格式
  • paths(list[str]):图片路径
  • batch_size(int):批量处理数量
  • use_gpu(bool):是否使用 GPU
  • visualization(bool):是否将识别结果保存为图片
  • output_dir(str):图片保存路径
遇到的坑 1. 报错RuntimeError: Environment Variable CUDA_VISIBLE_DEVICES is not set correctly. If you wanna use gpu, please set CUDA_VISIBLE_DEVICES as cuda_device_id.
import osos.environ['CUDA_VISIBLE_DEVICES'] = '0'


set CUDA_VISIBLE_DEVICES=0

参考文献
一款Python实用神器,5 行 Python 代码 实现一键批量扣图
总结 到此这篇关于Python快速实现一键抠图功能的文章就介绍到这了,更多相关Python一键抠图内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

    推荐阅读