达摩院视觉算法黑科技之透明抠图

简介: 透明抠图问题作为抠图问题的一种,其采用的方法和模型构建与通常的模型有所不同,透明抠图需要将环境光,折射率的影响纳入计算,而一般的折射光图又很难获得,因此透明抠图的模型在过去一直难以建立,或者说很难达到令人满意的效果,达摩院视觉算法团队通过双分支解码器(Object Mask获取,Opacity预测),颜色纠正模块,对图像实现高精度透明抠图。

透明抠图 vs 非透明抠图
物体的抠图问题可以定义为求解以下的公式,即给定图像I,求解前景颜色F、背景颜色B和Alpha matte的线性组合:
1.png
对于透明物体而言,它展现在观察者眼中的颜色是由其前景颜色,背景颜色以及环境光线经过前景物体自我反射折射混合而成的,因此,它的公式会更加复杂一些:
2.png
3.png
Φ表示的是环境光的影响 它是所有光线E(w)与反射率方程R乘积在所有点上的二重积分,求解很复杂[1],导致实现精确的透明抠图是一个非常困难的问题。因此,现有透明抠图研究的目标也是实现视觉感受“真实”的抠图而已,并非追求完全真实的抠图结果。


现有研究
SOTA的Matting算法在同时提供原图和对应trimap的情况下,可以的实现对半透物体的处理(如下图为GCA-Matting[2]的效果),但tripmap在实际的图像的处理中难以获取,限制了这类算法其在业务中的使用。
5.png
TOM-Net[3]将透明抠图问题视为折射流的估计问题,网络支持对单图输入,经过三分支的编解码器网络,分别预测图像的Object Mask,attenuative mask,flow mask(折射流图),并可以通过折射流信息进一步在新的背景进行合成。该方法的局限性在于其假设物体必须全部为无色透明物体,并且在训练过程中需要折射流图作为label, 而折射流图在真实世界是非常难以获取的,因此该方法的训练数只能依赖于图形学合成,与真实透明图像的分布无法一致(图像的语义合理性存疑,例如玻璃杯在山前悬浮)。经过我们在实际数据上的测试,该方法在实际图像的表现并不理想。
6.png
Segmenting Transparent Objects in the Wild[4]提出了基于语义分支和边缘分支结构的真实世界透明物体分割网络,通过边界注意力模块(Boundary Attention Modeule)增强对透明物体的分割精度,并发布了目前数量最大的透明物体分割标注数据集Trans10K。然而,文章提出的算法和发布的数据集都是处理到语义分割层面,并没有对物体的透明度做进一步处理。
7.png


问题简化
考虑到透明抠图问题本身难以求解,而且数据构建也非常困难,在实际的应用场景中,为保证同时保证算法的泛化能力和抠图效果,我们对问题进行了简化, 我们假设所需处理的物体的透明部分是无色的,且所在环境的背景颜色分布相对均匀。在这样的条件下,背景的自发光或反射光的颜色可以认为是全局一致的颜色,不会出现多种颜色叠加的情况,Φ的估计就只是和背景颜色相关了。特别的,如果预知背景的颜色,可以通过将其作为先验引入Φ中,对结果进行背景杂色的抑制及去除。


模型设计
我们的模型输入为单张图像,首先提取其深层特征。然后进行语义级别的分割和提取,力求完整准确地获得物体所在图像区域(Mask)。同步进行对图像物体不透明度(Opacity)的预测。而不透明度(Opacity)的预测由于在训练的时候没有进行语义的约束,容易存在非主体区域的噪声影响,因此,将两者进行融合可以将透明信息约束在主体范围内。
最后,对于已知背景颜色先验的场景(如已知是绿幕),我们可以引入颜色纠正模块,实现对背景透出的杂色进行去除。对于背景颜色未知,但饱和度低的场景,抠图结果也依然可用。


结果与应用
在已知背景颜色先验的情况下,可以通过颜色纠正模块对背景透出的杂色进行去除(左到右:实拍图,Opacity, 直接抠图结果,色偏纠正结果)
9.png
10.png
对于背景颜色未知,但饱和度低的场景,抠图结果也依然可用,例如下面几组展示图。

8ccd80ba1cc9404fbf232241a3838424.png

8674a4bd9a104b47b1c2ec6c2f94b911.png

5c9f1d972846442bbda448a457f5032f.png

目前在车辆分割算法上,我们已经实现了基于透明抠图的思路用于改善半透车窗区域的效果,使得车辆经过抠图,能够更加自然和谐与新背景进行融合。目前车辆分割已经上线阿里云视觉智能开放平台(vision.aliyun.com),欢迎大家体验试用。

bf1999c82cb44c36a2b6ee30c63c66ee.png

总结与展望
目前的透明抠图算法,面对更为多样的真实场景下物体,仍然具有以下不足,需要进一步探索解决:
1.真实透明物体图像数据量严重不足,且标注困难;
2.主体不透明度图(Opacity)的预测容易受到图像中噪声的影响;
3.在得到Opacity图后,在未知背景先验,且背景颜色饱和度高的情况下,如何实现将背景色的去除(如下图的杯子整体泛蓝);
后续我们会考虑进一步提取背景的特征,将背景先验知识引入到透明度的估计上,增加RGB偏移输出信息,尝试对前景物体的颜色进行纠正。

[1] Environment matting and compositing
[2] Natural Image Matting via Guided Contextual Attention
[3] Learning Transparent Object Matting
[4] Segmenting Transparent Objects in the Wild

相关文章
|
5G 网络架构 芯片
5G 标准的制定过程 | 带你读《5G 无线系统设计与国际标准》之三
ITU 在开发移动通信无线接口标准方面有着悠久的历史,包括制定 IMT-2000 和IMT-Advanced 在内的国际移动通信(IMT)标准框架,贯穿了整个 3G 和 4G 行业发展。
5G 标准的制定过程  | 带你读《5G 无线系统设计与国际标准》之三
|
5月前
|
JSON 前端开发 JavaScript
从携程爬取的杭州酒店数据中提取价格、评分与评论的关键信息
从携程爬取的杭州酒店数据中提取价格、评分与评论的关键信息
|
3月前
|
机器学习/深度学习 人工智能 自然语言处理
2025AI数字人企业名单列表新发布
解码数字人生态,揭秘十大领军企业与技术革新。像衍科技凭全链条技术领跑,AI驱动数字人在服务、娱乐、政务等多场景落地,推动产业智能化升级。
|
机器学习/深度学习 人工智能 自然语言处理
【LLM】能够运行在移动端的轻量级大语言模型Gemma实践
【4月更文挑战第12天】可以运行在移动端的开源大语言模型Gemma模型介绍
974 0
|
数据采集 传感器 监控
如何在LabVIEW中使用FPGA模块
如何在LabVIEW中使用FPGA模块
764 1
|
消息中间件 人工智能 监控
Paimon x StarRocks 助力喜马拉雅直播实时湖仓构建
本文由喜马拉雅直播业务与仓库建设负责人王琛撰写,介绍了喜马拉雅直播业务的数据仓库架构迭代升级。文章重点分享了基于 Flink + Paimon + StarRocks 实现实时湖仓的架构及其成效,通过分钟级别的收入监控、实时榜单生成、流量监测和盈亏预警,大幅提升了运营效率与决策质量,并为未来的业务扩展和 AI 项目打下坚实基础。
724 5
Paimon x StarRocks 助力喜马拉雅直播实时湖仓构建
|
Ubuntu 机器人 测试技术
奥比中光 Femto Bolt相机ROS配置
这篇文章介绍了奥比中光Femto Bolt相机在ROS1 Noetic和ROS2 Humble环境下的配置过程,包括自动脚本和手动配置方法,适用于Ubuntu 20.04/22.04系统和Jetson Orin平台。
911 0
奥比中光 Femto Bolt相机ROS配置
|
数据采集 监控 Java
工业物联网的java应用
工业物联网的java应用
|
人工智能 C# 云计算
C#编程的未来发展趋向
【4月更文挑战第21天】C#编程未来将深化跨平台支持,强化云计算与容器技术集成,如.NET Core、Docker。在AI和ML领域,C#将提供更丰富框架,与AI芯片集成。语言和工具将持续创新,优化异步编程,如Task、async和await,提升多核性能。开源生态的壮大将吸引更多开发者,共创更多机遇。
574 4
|
数据安全/隐私保护
解决使用SourceTree下载GitLab服务器上的代码每次都需要输入密码问题
解决使用SourceTree下载GitLab服务器上的代码每次都需要输入密码问题
641 2

热门文章

最新文章