点击上方蓝字
CG世界
关注CG我们
“ 感知CG · 感触创意 · 感受艺术 · 感悟心灵 ”
中国极具影响力CG领域自媒体
图像分割(Image segmentation )
是将图像划分为属于同一对象区域的任务;
图像分类(Image classification )
是对图像中出现的内容进行分类的任务;
检测(Detection)
是定位对象所在位置的任务。比如,面部检测的目标是告知面部在图像中的位置;
语义分割
是将图像中的每个像素分类为一组预定义类别的任务,比如热狗、披萨、或者是人。这种输出产生的图像分割通常为一部分,因为相邻像素通常是同一个类别的。
(Semantic segmentation)
最近聊了几个AI问题都挺让行业小伙伴比较敏感,比如
《技术干货!CG程序化软件所创造的惊人视觉及原理》
(点击标题可进行二次穿越)
等文章。现在越来越多的AI渗入到CG各个工作关节。就像我们在前几天的文章
《AI时代,哪些CG工作可能会面临失业?》
提到的,技术的进步会加快工作的效率。那么今天咱们再来聊聊“机器学习Roto:Rotobot”是如何快速完成抠像工作的。
CG世界原创编译·未经许可不得转载·
欢迎转发朋友圈
文:Mike Seymour
来源:https://www.fxguide.com/quicktakes/rotobot-bringing-machine-learning-to-roto/
大家都知道,现在多数的ROTO都是手动,如果实在是太多了就会请外包团队帮忙。So,一些专门做roto的艺术家,薪资水平相对来说比较低的,而且还投入了大量的精力和时间成本。据说这样的公司在印度有很多很多,当然我们国内也有很多这样的公司。Kognat Software公司创始人Sam Hodge粗略了估算了一下成本,这些成本包括公司的人员薪资,培训roto艺术家的成本,以及开发软件的成本等等,等等,可谓相当相当大。为此他们进行了大量研究,开发了一个AI的Roto系统。
最近,有这么一则行业新闻,Kognat Software公司设计了一个Nuke插件“Rotobot”,它是一个可以用于合成的AI产品,通过机器学习的方式来生成遮罩。尽管目前Rotobot只能产生一个大概粗略的结果,但它却展示了未来roto自动化的某些必然性。
Rotobot可以将“语义”类物体
(比如人、车辆等)
的像素实例进行分割,也就是说通过分析循环卷积神经网络
(
Convolutional Neural Networks, 简称CNN,是一
类包含卷积或相关计算且具有深度结构的前馈神经网络,是深度学习的代表算法之一)
图像,在81个类别之内的任何像素都可以被分离出来。所以这对于视效制作来说是非常有用的,是一种快速生成遮罩并且去掉无用部分的高效率工具。
OpenFX Rotobot插件
可以一天24小时不间断地处理镜头
,如果说有什么限制因素,大概就是可用的许可证和硬件资源。Rotobot一般在标准低配置笔记本电脑上处理1帧大概用时12秒,一次单独计算可以分割多大100个实例,而且不需要专门的GPU硬件。
其实这款插件在2007年制造的2GB RAM低端电脑上是可以使用的,只是速度会特别慢。因为Rotobot是那种霸道款,会尽可能多的使用CPU,但不会过多占用其他资源。目前来自世界各地的许多专业人士都已经在Linux和macOS平台上对Rotobot进行了测试,
许可证管理器允许浮动授权
,定价目前还未公开,估计是不会高于500刀。
Rotobot可以
产出不同质量的roto结果
,可以超快速完成,可以完成粗略的roto,再或者是一个相对精确的结果。
但是就算是最高质量级别的roto版本,也只能实现大致地正确,但是有时候它所产生的roto
结果并不稳定
,可能会出现前后两帧跳动的感觉。Rotobot在生成每帧roto解决方案的时候,并没有可以进行修改或继续的样条曲线。Kognat软件公司正在进一步开发其功能以实现更高质量标准的结果,但是目前这个插件还只能是针对于粗合成阶段。
2017年11月11日,Rotobot第一次在Facebook上发布。Kognat的深度学习是基于Google TensorFlow系统中的公开模型,这些模型已经通过了比典型“玩具”数据集分辨率更高的训练。计算机视觉研究市场基本上是为玩具数据设定的,通常是为一帧,或者是一系列640*480的静帧图像所设置的。所以一个很关键的问题就是确保Kognat使用的是高质量数据集。
Rotobot的后端是Google Brain团队的TensorFlow库
。Hodge说他们在尝试过像Caffe、PyTorch和其他开源框架之后,还是觉得TensorFlow非常适合,速度也非常快。同时Hodge还是澳大利亚阿德莱德Rising Sun Pictures公司Pipeline部门的首席软件开发师,这样的职业背景让Hodge充分意识到速度对于制作流程的重要性。
基于深度学习神经网络的TensorFlow是3年前由Google团队首次发布的,采用C++和Python编写的,人们称其为“机器学习的最佳开源库之一”。有专业人士表示,Google翻译、DeepMind、优步、AirBnB 和Dropbox公司都在使用这一系统。TensorFlow适用于例如创建多层神经网络(CNN)这样的高级别项目,广泛应用于语音/图像识别和计算机视觉分割领域。
虽然Rotobot系统具有预设功能,但是无论是新素材,还是定制素材甚至是演员素材都可以完成自动roto。Hodge说,比如目前正在进行一个金刚狼电影或者是类似的项目,可能需要做一个休杰克曼的分离器,提供一套关于他的语义遮罩,训练系统在任何灯光条件下都能够识别他。
目前Kognat公司进行了大量了的数据集培训,这些数据都可以进行公开并且定义当前类别。更有趣的是,Hodge指出很多公司制作的镜头都可以得出很多训练数据,大的制作公司公司更应该考虑制作之前手动进行roto项目的续集。
目前Rotobot只能在CPU上运行,而TensorFlow在GCP和GPU上都可以运行。大部分渲染农场都是基于CPU的,所以Hodge把CPU作为开始的起点,目前估算的效率是1台计算机1帧只需要几分钟的时间,而且还是最高的质量级别的,只能在CPU上运行,如果非要在其他硬件基础上运行的话,最有可能的是NVIDA GPU,时间可能会再减少一些,具体是多少Hodge表示还不太好说,可能是现在预估时间的1/20。
Hodge目前正在寻找新的开发人员,因为现在只有他一个人在开发代码。未来工作的任务方向是获取像素输出,通过运行转化为矢量形状,以及实现不同硬件基础在任务完成时间上的一致性。当然,随着更多培训数据的完善和机器学习的不断进步,整个roto过程会得到更大的改善。
所以你们是怎么认为的呢?可以留言告诉我们哦。想要了解更多详细内容,可以到穿越到Kognat官网哦。
https://kognat.com