阿里巴巴神密的人物抠图算法内幕

 

电商环境中,商品的图片展示比文字展示对顾客购买有更直观的吸引力,尤其在购买衣服时。阿里巴巴的百万卖家各个都是ps大师,想必大家都领教过^_^。
传统的方法需要富有经验的设计师交互式的抠图,效率低下,阿里巴巴的视觉研究团队希望使用技术手段帮助卖家一键完成非幕布的自然场景人物抠图。

发表于ACM MM2018会议的论文《Semantic Human Matting》,揭示了阿里巴巴在这方面的数据库和算法设计。


论文称,这是第一个能够完全自动化精细抠图的工作。(其实前几天52CV君介绍了一篇SIGGRAPH2018的论文语义软分割也是类似算法,而且开源了)

下图展示了抠图的应用,计算图像的alpha mate,可以方便将其与其他背景图像合成。

数学上表达这个合成的过程很简单:

F是前景即人物图像,B是背景图像。

数据库制作HUMAN MATTING DATASET
要解决这个问题,首先需要有大规模数据库,学术界研究Matting的数据库往往都很小,难以训练出较满意的结果。
这一步,某宝卖家立大功了!为科研做出了杰出贡献!
论文从某电商平台(嗯,论文中没明说)收集了188K幅由卖家手动抠出来的含有alpha mate的图像,花了1200个小时(50个24小时)从中小心翼翼选择了35311幅高质量含人物的图像,并结合DIM数据集(含有202幅前景图,与自然图像合成20200幅图像),组成了含有52511幅图像的超大规模的Human Matting Dataset。
human matting dataset数据源组成:

human matting dataset与其他同类数据库的比较:

部分数据库中图像示例:

网络架构
该文使用结合语义分割的端到端的深度学习神经网络预测alpha mate。
网络结构如下:

该网络(SHM)主要分为三大部分,T-Net,M-Net,Fusion Module。
T-Net为语义分割模块,使用PSPNet,输入是原始图像,其输出结果是含有前景、背景、未知区域三种类别图像的三色图(trimap)。语义分割是一种粗略的前景提取。
注:在传统Matting的场景中,三色图trimap是由用户手动标注的,可以理解为对图像“完全正确的粗略分割”。
M-Net是细节提取和alpha mate生成网络,使用类VGG16的网络结构,其输入时原始图像和T-Net输出的三色图。
Fusion Module是对T-Net输出的三色图中前景和M-Net输出的alpha mate的加权融合模块,目的是结合语义分割和细节提取进一步提精alpha mate。

网络训练的时候,T-Net和M-Net事先单独预训练,然后整个大网络端到端训练。

实验结果
因为以往算法都需要人工交互得到的三色图trimap来比较matting的性能,而本文算法是完全自动的。为便于比较,作者设计了两个实验。将alpha mate与groundtrut相比较的具体评价标准不再赘述,感兴趣的读者请阅读原论文参考文献21。
1.将T-Net生成的三色图作为传统算法的三色图输入,比较算法生成的alpha mate质量。
结果如下:

该论文的全自动的SHM算法取得了明显的优势!

2.将手动标注的三色图作为传统算法的三色图输入,比较算法生成的alpha mate质量。
结果如下:


该论文的全自动的SHM算法尽管不是最好的结果,但已经取得了与有人工交互参与的最好结果相匹敌的性能。

下面是算法在测试图像上生成的结果示例图像:

作者然后进一步研究了算法中各部分对性能的影响,发现各部分均有贡献,其中“end-to-end”的训练获得最大的算法性能增益。

算法各部分输出结果可视化:


a为原图,b为T-Net生成的三色图,c为M-net输出的alpha mate值,d为最终融合模块预测的结果。

下面是SHM算法在实际自然图像中抠像并合成新背景的图像:

52CV君认为自然场景的人物抠图还是蛮有意义的,用在移动视频直播换背景等将大有可为。
这篇论文挺有价值,但更有价值的是某宝卖家给阿里贡献的这个数据集!希望官方能够提供下载就好了。

工程主页
https://arxiv.org/abs/1809.01354v1

推荐文章

数据标注「星尘数据」获数百万元天使轮投资
公司8月获得天使轮投资,由天使湾领投,英诺天使、老鹰基金和创势基金跟投。Tractica预测,2024年人工智能市场规模将增长至111亿美元。但AI要真正发挥作用,优质的数据必不可少,正如业界共识“大量数据+普通模型”比“普通数据+高级模型”的准确度更高。所以,前端的数据采集、加工环节单拎出来成为了新的机会点。其实,数据标注并不算一个完全新兴的产业。成立于1998年的“海天瑞声”已在语音领域耕耘近20年,因为人工智能一词的提出,最早可以追溯到20世纪50年代,不过此前主流技术没有到“深度学习”的阶段,所以数据用的相对较少。目前这个赛道上,成立久的有“数据堂”,早期公司有获得明势资本Pre-A轮融资的“爱数智慧”,完成天使轮融资的“泛涵科技”,获得合力投资数百万天使的“丁火智能”,获金沙江领投的“龙猫数据”,自营数据工场的BasicFinder等。“星尘数据”也是赛道上一员,平台上聚集了2万多名大学生,通过众包方式提供数据标注服务。比如,在文本场景中,标注特定词语之间的关联关系,可以训练机器理解用户评论,也就是常说的语义识别。又比如,地产场景中,人工标注户型结构。再比如,生物医学场景中,需要人工标注人眼虹膜。最前端,“星尘数据”根据客户的挖掘需求提供咨询服务、优化方案。之后的标注任务,在星尘自研发的“stardust”系统中完成,平台上有客户提供的数据和标注模型,任务会被切割分配给每个C端,形成“动态发题”,通过“准入考核”的C端才能认领答题。过程中,“stardust”系统会辅助标记。例如,正常的图像识别训练,需要人工一点点贴边抠图,比较费时,而stardust系统中,人工只需要标注出绿色的正区间和红色的负区间,系统就能自动抠图(如下图)。再例如,语音识别时,系统可以先自动转换一部分文字,来降低人的工作量。我们知道,数据标记是个重人力的劳动密集型行业,这类公司的关键点就在于——人员效率、交付质量。“stardust”系统便是星尘数据的主要差异点,背后离不开算法的支撑。星尘团队也都是算法出身,创始人兼CEO章磊曾在世界银行、华尔街、硅谷工作8年,涉及金融、保险、数据、量化、风险模型、人工智能等方向,在硅谷开发了世界首款股权投资机器人,在北京担任首席数据科学家。联合创始人董磊曾工作于百度人工智能实验室(前吴恩达团队),从事基于移动端数据的分析与建模工作。目前,通过“stardust”系统,人的工作量在80%,机器的工作量在20%,这个比例还在不断优化中,未来机器可能占到80%。在36氪之前的文章中,有创业者表示不会用机器标注替代人工,“因为人工标记的数据在误差层面符合正态分布,而机器标记的都是同一水平,用机器生产的数据再训练机器,并不利于AI最后的训练效果。”以及,理论上,下游的应用公司算法更强,若用算法进行抠图,企业客户为什么不自己标注?对此,章磊认为,人工标注确实会有偏差,但这种偏差并不会有助于机器训练。准确答案只有一个,星尘可以通过算法机制保证输出正确结果,目前的准确率在99%。并且,下游应用公司的最终模型和标注时需要的模型还是不一样的,星尘的模型是用来提高效率的。还有个普遍的问题就是有关数据安全和复用,这方面星尘跟硅谷数据安全公司合作,用加密技术在数据底层做隔离,分离数据使用权和拥有权,防止数据在众包过程中泄漏。由于每个公司对数据的要求不一样,只有在一些通用的逻辑中,数据才有可能复用,比如智能客服,所以星尘基本不会留存数据,除非客户有售卖的特殊需求。至于收费,星尘主要根据数据标注量和难度来报价,平均客单价在3-5万元以上,大客户甚至到百万级别。目前公司已经服务了10家左右客户,3-5万的单子耗时不超过1周。章磊分享,数据的需求贯穿AI公司的各阶段,占公司支出10%-20%左右,像商汤科技就在用300人的团队标记几千万的人脸图片。现有的国内外标注营收估计在30亿人民币,预计3年后达到100亿。不过,对于这一波因为深度学习而兴起的数据服务商来说,最大的潜在威胁很可能并非来自竞品,而是来自于增强学习、迁移学习等算法,后者仅需要少量的数据即可以达到一定的效果。章磊认为,迁移学习等确实是将来的趋势,就单个模型来说,积累越久,数据需求量肯定会越少,但对于新模型来说,前期的需求量不会少,而模型是在增加的,所以对于“数据标注”这个正处在上升期的行业,暂时不会有明显影响。据悉,“星尘数据”公司在今年5月份注册,8月获得数百万元的天使轮投资,由天使湾领投,英诺天使、老鹰基金和创势基金跟投。团队目前在10人左右,还在扩招中(Python工程师岗位,高级销售经理岗位,高级市场经理岗位),如果你也对该公司感兴趣,可以投递简历至liaijun@stardust.ai。本文来自36氪

热门文章

        对数据标注行业稍微有些了解的人都知道数据标注进入门槛低,适合很多人兼职也适合创业。        正是因为数据标注行业的门槛低这个特点最近两年从事数据标注的小公司小工作室如雨后春笋般的遍布全车大大小小的县城。        但是目前有个有趣的现象,那就是有很多进入数据标注行业做了一段时间的人慢慢的感觉数据标注行业就是个坑?为什么有些人会说数据标注就是个坑呢?        其实对与有上述问题认识的人我们认为,这些人多数都是有于对这个行业对自身条件的不了解,盲目的开始进入数据标注行业的。为什么我们会这样说呢?下面就给给大家来分析下到底有哪几方面的原因:        一、有相当一部分人是听了朋友或者网上消息说这行很火爆,好做,门槛低,也有一部分人了因此租办公室买电脑招人,然后就去群里面找分发项目的人就开张干起来了。可实际上这些人他们大多数都没有充分了解数据标注行业,更没有认真仔细得去调查分析,到底自己能不能做好一个项目,到底自己能不能有质有量按时交付的完成一个项目,到底自己有没有这个能力来管理项目。更多的人也没有去用长远的眼光去考虑数据标注项目。        二、数据标注项目虽然入门门槛低,但是相当一部分有于理解认知应变能力上都不能保证去做好数据标注项目,还有一部分人由于自己对标注项目重视程度不足接到项目之后呢?不仔细认真的去阅读理解项目规则,更没有很好的对规则质检标准去培训员工,而对员工的要求主要看重每天的产出效率,从而导致接到手的项目做的质量很差,频繁的返工,有提项目甚至因为质量太烂项目方不给结算或者是结算比例很少,最终的结果就是做好些个项目但基本都是赔钱。        三、虽然业内人都 说数据标注简单,但是标注项目他也是一个系统性的工程,一个项目能不能做好并不简单的看项目好做就能赔钱。实际上决定项目赚不赚钱考验的是一个团队的项目管理水平,质量管理能力,运营能力各方面因素的。一句话再好赚钱的项目也照样有人赚钱也有人赚钱,要赚钱不是那么简单的。        四、还有些工作室 、小公司因为对行业不够了解等他们做了一段时间后发现,自己团队经常会没有项目做,而自己团队接项目的业务能力又不具备,甚至有的时候为了员工有活干去接一些价格极低根本就不赚钱的标注项目,时间稍微一长这些工作室团队就会赔上很多钱最终关门倒闭。        五、下来要说的就是一部分人人兼职人员由于认识不到位,对项目的规则质量要求 文件不认真阅读消化理解导致做的项目质量差返工有的甚至最后不结算,最终退出这行。更有一些人由于经验不足被标注行业的项目骗子给忽悠到辛苦劳动到最后结算时找不到人。        标注行业本身由于进入门槛低,做的人很行业内盲目打价格战,导致很多转手二手三手的项目在质量工期的要求下根本就不赚钱甚至赔钱,所以在这里也提醒大家做任何事都要谨慎而行。