3行Python代码实现图像照片抠图和换底色的方法

yipeiwu_com6年前Python基础

1、项目背景

对于不会PS的小伙伴,抠图是一个难度系数想当高的活儿,某宝照片抠图和证件照换底色均价都是5元RMB,所以今天要介绍的这款神工具,只要 3 行代码 5 秒钟就可以完成高精度抠图,甚至都不用会代码,点两下鼠标就完成了。

这里介绍Remove Image Background工具,它基于 Python、Ruby 和深度学习技术开发,通过强大的 AI 人工智能算法实现自动识别出前景主体与背景图,分分钟秒秒钟完成抠图。

这款抠图工具有两种简单方式:在线抠图和Python代码抠图,介绍如下。

2、在线抠图

第1步:登录Remove Image Background官网,上传本地图片或网络图片的URL(这里使用杰伦最新单曲:说好不哭MV的女主图像)。

第2步:上传成功后,平台仅需几秒钟实现自动抠图,可直接下载无背景透明的图像照片,也可对图像照片进行编辑。

支持对图像照片进行调整滤镜和换底色,完成后直接下载即可。

在线版可以下载软件到本地使用,支持 Windows / Mac / Linux 平台 。

3、Python代码抠图

使用Python代码实现自动抠图主要是基于Remove Image Background网站的API实现的。

第1步:查看API简介。

需要注册账号方可获取密钥,默认生成的图片格式尺寸是标准的,每月最多免费处理 50 张照片,且每张尺寸大小不超过25MB,如果想生成高清或者处理更多图片需要付费(在线抠图方式没有次数限制)。

注册成功后即可登录,查看自己的API密钥。

第2步:安装所需的Python抠图库文件。

pip install removebg

第3步:编写程序,实现图像照片抠图和证件照换底色。

from removebg import RemoveBg
rmbg = RemoveBg("3Uxxxxxx", "error.log") # 引号内是你获取的API
rmbg.remove_background_from_img_file(r"C:\Users\13450\Desktop\im1.jpg") #图片地址

把图片放到一个文件夹就可以实现批量抠图。

from removebg import RemoveBg
import os
 
rmbg = RemoveBg("3Uxxxxxx", "error.log")
path = '%s/picture'%os.getcwd() #图片放到程序的同级文件夹 picture 里面
for pic in os.listdir(path):
  rmbg.remove_background_from_img_file("%s\%s"%(path,pic))

Remove Image Background工具GitHub:https://github.com/brilam/remove-bg

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python高级用法总结

列表推导(list comprehensions) 场景1:将一个三维列表中所有一维数据为a的元素合并,组成新的二维列表。 最简单的方法:新建列表,遍历原三维列表,判断一维数据是否为a,...

Python比较文件夹比另一同名文件夹多出的文件并复制出来的方法

Python比较文件夹比另一同名文件夹多出的文件并复制出来的方法

本文实例讲述了Python比较文件夹比另一同名文件夹多出的文件并复制出来的方法。分享给大家供大家参考。具体如下: 这个东东本来是做来给公司数据同步用的:新服务器还没正式启用,旧的服务器还...

Python实现的简单发送邮件脚本分享

近来有些东西需要监控报警发邮件,然后在网上找了点材料,自己写了一个简单发送邮件的脚本,主要就是运用python的smtplib模块,分享给大家看一下: 复制代码 代码如下: #!/usr...

详解numpy.meshgrid()方法使用

详解numpy.meshgrid()方法使用

一句话解释numpy.meshgrid()——生成网格点坐标矩阵。 关键词:网格点,坐标矩阵 网格点是什么?坐标矩阵又是什么鬼? 看个图就明白了: 图中,每个交叉点都是网格点,描...

python实现逆波兰计算表达式实例详解

本文实例讲述了python实现逆波兰计算表达式的方法。分享给大家供大家参考。具体分析如下: 逆波兰表达式又叫做后缀表达式。在通常的表达式中,二元运算符总是置于与之相关的两个运算对象之间,...