Python实现自动抠图(上篇)

亡梦爱人 提交于 2019-11-28 19:54:53

Python实现自动抠图(上篇)

        生活中,我们经常需要使用到一些图片资源,比如做ppt、项目需要等,这就涉及图片的处理。但抠图是一个痛苦的过程,本人是ps入门级玩家,每次使用磁链勾画想要的图像都很费劲,而且处理效果不尽人意。一次机会,在网上发现了python自动抠图的模块,因此进行了一些尝试。
在这里插入图片描述
        抠图的效果是不是很赞,更重要的是快速,你ps还没有打开,这边图像已经处理完了。。。。
        这款工具名称是Remove,它是基于 Python、Ruby 和深度学习技术开发,通过强大的 AI 人工智能算法实现自动识别出前景主体与背景图,分分钟 秒秒钟完成抠图!!!
        我们首先来看一些Python代码吧,调用该模块实现抠图。实现过程也是很简单,首先我们安装removebg模块。

pip install removebg

然后需要去官网注册API(https://www.remove.bg),这是我们程序调用需要的。操作步骤如下:
在这里插入图片描述
在这里插入图片描述
点击上方API选项,跳转到下一个页面,然后点击Get API Key即可。

接下来只需要三行代码即可完成抠图。

from removebg import RemoveBg
rmbg = RemoveBg("WPZ2Q4fraseKfAN9PPxxxxxx", "error.log") # 引号内是你获取的API
rmbg.remove_background_from_img_file(r"E:\图片\princess.jpg") #图片地址

处理效果如下,个人感觉已经很好了,当然对于ps大神来说,还是有些欠缺啦。
在这里插入图片描述
不仅能抠一张还可以批量抠图(把图片放到一个文件夹就可以了):

from removebg import RemoveBg
import os

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

图片处理速度也很快,是不是很爽。
在这里插入图片描述
默认生成的图片格式尺寸是标准的,每月最多免费处理 50 张照片。如果想生成高清甚至 4K 的图片或者处理更多需要付费。github地址如下:
https://github.com/brilam/remove-bg
如果不习惯使用python抠图或者是没有python编程环境的话,在官网直接选择图片进行扣除也是一个很好的选择。抠除后,还能对图片的背景进行一些设置,再也不用担心什么证件照的背景颜色问题了。
在这里插入图片描述

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!