图像去背景(抠图)是图像编辑中的关键技术
图像去背景(抠图)是指准确提取静止图片或者视频图片序列中的前景目标,它是许多图像编辑中的关键技术之一。该技术的研究已经有超过20年的历史。图像去背景的数学定义最早是由国外学者Porter和Duff在1984年提出。他们最先引入透明(alpha)通道的概念用于把前景和背景融合时控制前背景色的线性插值比例。最终,抠图问题就被定义为每一个图片像素估计alpha值(前背景色比例)的任务。在该任务中,输入为原图像,输出将是每个像素点的alpha值。由于已知信息是每个像素点的颜色信息,未知信息为alpha和前景色以及背景色,未知变量个数大于已知变量个数,造成其在数学本质上是约束不足的困难的问题。大多数消光方法都依赖于用户提供指导信息或者先验假设以约束问题而获得良好未知变量的估计值。使用指导信息和先验假设就注定模型的泛化能力弱,在特定条件下预测精度会很差。
三分图(trimap)的概念
要了解抠图技术,首先我们还需要正确区分硬分割(二值化分割)和抠图的区别。硬分割是指把图像简单的区分为前景(1)和背景(0)。而抠图中需要确定前背景色的比例,也就是说对于图像中的半透明区域alpha值是介于0和1之间的连续实数而不是简单的非0即1。介于这个区别,人们提出了一个三分图(trimap)的概念。在Trimap中,确定为前景的区域为1,确定背景的区域为0,而前背景不确定的区域为灰色区域(0.5)。通过Trimap的引导,让抠图任务主要专注于确定灰色区域里的alpha值,让任务变得相对简单。
PicUP.AI 皮卡智能
传统的图像去背景技术基于许多基础技术例如颜色采样(如贝叶斯方法)和近邻梯度分析(如波松方法)或者二者融合的技术。近年来,随着深度学习的发展,已经有很多研究工作转向利用深度学习来研究抠图并取得优秀的效果。基于端到端的深度学习模型一方面可以让整个抠图过程完全自动化,而且可以利用大量的数据训练提高模型的泛化能力。PicUP.AI整合了当前最先进的深度学习模型,建立了基于深度卷积网络,多任务统一学习的端到端模型,极大的提高了模型效率。同时,我们在图片特征提取,视野范围设定,无损解码,边缘锐化等技术细节上仔细打磨,模型精度达到世界领先水平的算法。
实测例子
可以看出,不论单人还是多人,近景还是远景,运动还是静止,是否有重叠,背景色是否相近,头发是否清楚,都表现不错。
API支持
API代码范例包括:JAVA/PHP/Python/ShellCommand/Node.js/C#/Object C
抠图API的商用标准
抠图算法达到可以商用的标准主要有3点:
1、精确的分割出前景像素与背景像素;
2、分割后的主体或前景部分,边缘过渡效果良好,在新的背景上,视觉上没有违和感;
3、交互少,甚至完全不需要。
然而现在市面上很多应用,在去背景/抠图上,需要客户自行进行涂抹,标记前景背景,基于OpenCV的传统算法或者Shared Sample Alpha Matting,操作成本很高,用户输入前景像素、背景像素的Trimap图作为mask,而且最终效果一般。
开发者应用场景
图像处理中是最常见的工具类应用,iOS 安卓 APP/微信小程序,一抓一大把,因为不论是行业,还是个人,现代生活都离不开图像。而抠图在图像处理里面属于一个底层功能,但是却又不可获取。
比如:
将原始图片中的人像分离出来,选择新的背景图像进行替换、合成,比如换成巴厘岛沙滩,土耳其热气球,巴黎铁塔;
可以对背景进行虚化处理,突出人像,实现大光圈人像拍照效果,给背景添加滤镜、景深模式、背景变黑白等定制化个性服务;
背景风格化,做出彩色玻璃、油画、色块等效果,人就像在画里;人物单独处理的滤镜也不会影响背景;
把主人放到明星照片里面,放到明星身后,就像是和明星合照;
还有证件照换背景色,去掉背景换成白色、蓝色、红色,满足各种证件照需求。
《“图像抠图去背景技术从传统算法到深度学习到商用”》 有 2 条评论
要是对于长时间使用的客户 能再便宜一点就好了
量大的客户,可以加微信 roymind 详谈