3行Python代码实现图像照片抠图和换底色的方法
作者:不脱发的程序猿 发布时间:2021-12-11 04:57:35
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
来源:https://blog.csdn.net/m0_38106923/article/details/102025059


猜你喜欢
- MySQL外键约束的禁用与启用:MySQL外键约束是否启用是通过一个全局变量标示的:FOREIGN_KEY_CHECKS=0; 禁用状态FO
- 类似Java打包操作,若不想让人看到Python程序内部逻辑,也可将其转换为exe可执行文件首先自己写一个Python程序,如下:print
- 不知不觉2008已经走到了尽头,在这近一年中,一直不断的尝试用ExtJS做项目,从1.1到现在的2.2,吃了不少苦头,也有不少收获,总结一
- 1.func Copy(dst Writer, src Reader) (written int64, err error)这个函数是从一个
- 半年前第一次做脚本编码的时候,由于没有什么使用经验,于是在51js上询问了一下encode脚本和normal脚本混用是否有什么问题呢?结果没
- 前几天玩了玩Google的Map API,感觉还不错,很简单。但凡有过任何编程经验的同学,看完以下的教程,都可以在10分钟内掌握它的主要功能
- 照片尺寸 单位:cm1X1.5 (1寸) 2.6*3.9 一寸2.5*3.5 1.5X2 (2寸) 3.8*
- _del_类的析构方法,它在对象被回收时执行,主要的作用时用来释放资源(内存 文件 进程等)因为Python内存回收机制,使得Python的
- #Filename:brn.py #Description: batch replace certain words in file nam
- 本文实例讲述了Go语言通过Luhn算法验证信用卡卡号是否有效的方法。分享给大家供大家参考。具体实现方法如下:package mainimpo
- pymysql的executemany使用在使用pymysql的executemany方法时,需要注意的几个问题1、在写sql语句时,不管字
- class Helper_Page{ /** 总信息数 */ var $infoCount; /** 总页数 */ var $pageCou
- 如下所示:./src/github.com/sirupsen/logrus/terminal_check_notappengine.go:9
- 前言这是Go单元测试从入门到放弃系列教程的第1篇,介绍了如何使用httptest和gock工具进行网络测试。在上一篇《Go单元测试从入门到放
- 方法一、使用os模块的system方法:os.system(cmd),其返回值是shell指令运行后返回的状态码,int类型,0表示shel
- 前言弹幕可以给观众一种“实时互动”的错觉,虽然不同弹幕的发送时间有所区别,但是其只会在视频 * 定的一
- 语音识别是计算机软件识别口语中的单词和短语,并将其转换为可读文本的能力。那么如何在 Python 中将语音转换为文本?如何使用 Speech
- 大家在使用ASP设计用户提交表单的时候,如果涉及到网址输入框,那么相信都有可能会用到这个效果,使用正则表达式验证网址合法性。代码如下:<
- Numpy通过观察Python的自有数据类型,我们可以发现Python原生并不提供多维数组的操作,那么为了处理矩阵,就需要使用第三方提供的相
- <script src="jquery.min.js" type="text/javascript&qu