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

 更新时间:2019年10月10日 09:59:21   作者:不脱发的程序猿   我要评论
这篇文章主要介绍了3行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并发编程之创建多线程的几种方法

    这篇文章主要介绍了详解Python并发编程之创建多线程的几种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-08-08
  • python字符串与url编码的转换实例

    python字符串与url编码的转换实例

    今天小编就为大家分享一篇python字符串与url编码的转换实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-05-05
  • Django中create和save方法的不同

    Django中create和save方法的不同

    这篇文章主要给大家介绍了关于Django中create和save方法的不同之处,文中通过示例代码介绍的非常详细,对大家学习或者使用Django具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-08-08
  • JSONLINT:python的json数据验证库实例解析

    JSONLINT:python的json数据验证库实例解析

    本文介绍的 jsonlint 启发自 python 的表单验证工具 wtforms,wtforms 通过继承 Form 类也能进行 json 数据验证,下面通过一些例子给大家详细介绍,非常不错,具有参考借鉴价值,需要的朋友参考下吧
    2017-11-11
  • python创建只读属性对象的方法(ReadOnlyObject)

    python创建只读属性对象的方法(ReadOnlyObject)

    有时需要创建一个带只读属性的对象,大家可以参考下如下的方法进行创建,稍加改造,可以得到很特殊的效果
    2013-02-02
  • python有证书的加密解密实现方法

    python有证书的加密解密实现方法

    这篇文章主要介绍了python有证书的加密解密实现方法,采用了M2Crypto组件进行相关的加密解密操作,包含了详细的完整实现过程,需要的朋友可以参考下
    2014-11-11
  • 详解Numpy中的数组拼接、合并操作(concatenate, append, stack, hstack, vstack, r_, c_等)

    详解Numpy中的数组拼接、合并操作(concatenate, append, stack,

    这篇文章主要介绍了详解Numpy中的数组拼接、合并操作(concatenate, append, stack, hstack, vstack, r_, c_等),具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-05-05
  • python for循环输入一个矩阵的实例

    python for循环输入一个矩阵的实例

    今天小编就为大家分享一篇python for循环输入一个矩阵的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-11-11
  • python lambda表达式在sort函数中的使用详解

    python lambda表达式在sort函数中的使用详解

    这篇文章主要介绍了python lambda表达式在sort函数中的使用详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-08-08
  • python encode和decode的妙用

    python encode和decode的妙用

    做网络编程的时候,经常需要把接收到的数据用16进制的方式打印出来,方便查看。今天发现在Python下有这样一个简单的方法。
    2009-09-09

最新评论