通用抠图对输入图像中的主体进行抠图处理,支持商品、人物、动物、植物、汽车等等,无需任何额外输入,实现端到端通用万物抠图,输出四通道抠图结果,如下图所示:
图像人像抠图 | 通用抠图(支持商品、动物、植物、汽车等抠图) | 视频人像抠图 | 天空替换(一键实现魔法换天空) |
模型分为粗分割和精细抠图两个子网络,将抠图复杂问题拆解,先粗分割再精细化分割,两部分网络均为unet结构。粗分割网络从输入图片预测粗语义分割mask,精细分割网络基于原图和粗语义分割mask预测精细的抠图结果。
使用方式:
使用范围:
目标场景:
本模型基于tensorflow进行训练和推理,在ModelScope框架上,提供输入图片,即可以通过简单的Pipeline调用来使用通用抠图模型。
import cv2
from modelscope.pipelines import pipeline
from modelscope.utils.constant import Tasks
from modelscope.outputs import OutputKeys
universal_matting = pipeline(Tasks.universal_matting,model='damo/cv_unet_universal-matting')
result = universal_matting('https://modelscope.oss-cn-beijing.aliyuncs.com/demo/image-matting/1.png')
cv2.imwrite('result.png', result[OutputKeys.OUTPUT_IMG])
如果你觉得这个该模型对有所帮助,请考虑引用下面的相关的论文:
@inproceedings{liu2020boosting,
title={Boosting semantic human matting with coarse annotations},
author={Liu, Jinlin and Yao, Yuan and Hou, Wendi and Cui, Miaomiao and Xie, Xuansong and Zhang, Changshui and Hua, Xian-sheng},
booktitle={Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition},
pages={8563--8572},
year={2020}
}