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


Posted in Python onJune 29, 2021

简介

使用百度深度学习框架paddlepaddle对人像图片进行自动化抠图

安装

根据PaddlePaddle官网命令安装

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

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

初试

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

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

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

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

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

import paddlehub as hub
from pathlib import Path

paths = [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')  # 使用GPU
print(results)

代码会自动下载图像分割模型deeplabv3p_xception65_humansegC:\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 os

os.environ['CUDA_VISIBLE_DEVICES'] = '0'

set CUDA_VISIBLE_DEVICES=0

参考文献

一款Python实用神器,5 行 Python 代码 实现一键批量扣图

总结

到此这篇关于Python快速实现一键抠图功能的文章就介绍到这了,更多相关Python一键抠图内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
学习python 之编写简单乘法运算题
Feb 27 Python
Python实现的计算马氏距离算法示例
Apr 03 Python
Anaconda2下实现Python2.7和Python3.5的共存方法
Jun 11 Python
python实现括号匹配的思路详解
Aug 23 Python
python中的for循环
Sep 28 Python
Django model update的多种用法介绍
Mar 28 Python
django写用户登录判定并跳转制定页面的实例
Aug 21 Python
简单了解python数组的基本操作
Nov 26 Python
Python 实现自动获取种子磁力链接方式
Jan 16 Python
python 基于wx实现音乐播放
Nov 24 Python
python中opencv实现图片文本倾斜校正
Jun 11 Python
总结python多进程multiprocessing的相关知识
Jun 29 #Python
python 字典和列表嵌套用法详解
Jun 29 #Python
Python连接Postgres/Mysql/Mongo数据库基本操作大全
5行Python代码实现一键批量扣图
Python爬取用户观影数据并分析用户与电影之间的隐藏信息!
python geopandas读取、创建shapefile文件的方法
总结Pyinstaller打包的高级用法
You might like
php shell超强免杀、减少体积工具实现代码
2012/10/16 PHP
PHP实现基于文本的摩斯电码生成器
2016/01/11 PHP
利用Laravel生成Gravatar头像地址的优雅方法
2017/12/30 PHP
PHP生成短网址的思路以及实现方法的详解
2019/03/25 PHP
从阿里妈妈发现的几个不错的表单验证函数
2007/09/21 Javascript
jQuery 开天辟地入门篇一
2009/12/09 Javascript
javaScript checkbox 全选/反选及批量删除
2010/04/28 Javascript
基于jquery的使ListNav兼容中文首字拼音排序的实现代码
2011/07/10 Javascript
jquery新的绑定事件机制on方法的使用方法
2014/04/15 Javascript
禁用页面部分JavaScript不是全部而是部分
2014/09/03 Javascript
Javascript前端UI框架Kit使用指南之kitjs事件管理
2014/11/28 Javascript
JS实现左右无缝轮播图代码
2016/05/01 Javascript
原生js获取元素样式的简单方法
2016/08/06 Javascript
JavaScript原生节点操作小结
2017/01/17 Javascript
深入理解Commonjs规范及Node模块实现
2017/05/17 Javascript
微信小程序 获取session_key和openid的实例
2017/08/17 Javascript
django使用channels2.x实现实时通讯
2018/11/28 Javascript
vue打包之后生成一个配置文件修改接口的方法
2018/12/09 Javascript
js实现简单页面全屏
2019/09/17 Javascript
webpack 动态批量加载文件的实现方法
2020/03/19 Javascript
Python实现判断字符串中包含某个字符的判断函数示例
2018/01/08 Python
python实现画圆功能
2018/01/25 Python
python将视频转换为全字符视频
2019/04/26 Python
Python符号计算之实现函数极限的方法
2019/07/15 Python
TensorFlow2.0:张量的合并与分割实例
2020/01/19 Python
Python调用接口合并Excel表代码实例
2020/03/31 Python
Keras中的两种模型:Sequential和Model用法
2020/06/27 Python
css3媒体查询中device-width和width的区别详解
2020/03/27 HTML / CSS
HTML5给汉字加拼音收起展开组件的实现代码
2020/04/08 HTML / CSS
澳大利亚当地最大的时装生产商:Cue
2018/08/06 全球购物
平面网站制作专科生的自我评价分享
2013/12/11 职场文书
2014年公务员思想汇报范文:全心全意为人民服务
2014/03/06 职场文书
三下乡个人总结
2015/03/04 职场文书
如何在Mac上通过docker配置PHP开发环境
2021/05/29 PHP
Python OpenCV超详细讲解调整大小与图像操作的实现
2022/04/02 Python
vue二维数组循环嵌套方式 循环数组、循环嵌套数组
2022/04/24 Vue.js