当前所在位置:首页>客流资讯>客流行业分析

超分辨率算法大战!AI in RTC 创新挑战赛

时间:2019-07-10 小编:ETAG001 点击:5341


超分辨率算法通常是应用于单帧图片上的,将图片分辨率成倍放大,并利用算法还原细节是主要目的。另一方面,超分算法也可以应用于实时视频的后处理阶段。在实时视频上应用超分算法,通常会要面对难题主要是性能与质量之间的权衡,即如何在设备性能瓶颈之下保证图像质量最优。

 

超分辨率算法挑战分为两个独立的赛题:“超分辨率图像质量挑战”与“超分辨率算法性能挑战”。开发者可以根据自身及团队情况,选择参加。

 

超分辨率图像质量挑战

 

在这个挑战赛题中,我们会提供一个包含 100 张图片的图集。参赛者/团队需要对 100 张图片进行 4 倍超分辨率处理,然后线上提交处理后的图片。

 

超分辨率算法性能挑战

 

第二个挑战赛题主要考验参赛者/团队的算法模型的性能。参赛者需要对单帧图像做 2 倍的超分辨率处理,算法复杂度控制在 2GFLOPs 之内。最终参赛者/团队在线上提交算法模型(pytorch 1.0.0)。

 

奖项设置

 

每个赛题都将分别评比出一、二、三等奖。

 

一等奖(1 支队伍)|  ¥60000 + 获奖证书

 

二等奖(1 支队伍)|  ¥30000 + 获奖证书

 

三等奖(1 支队伍)|  ¥10000 + 获奖证书

 

赛程安排

 

大赛分为两个阶段

 

第一阶段线上比赛:

 

7月1日——比赛开放报名,公布验证集

 

7月20日至8月1日——公布测试集(具体时间待定),参赛者需要按照赛题要求对测试集图片做超分辨率处理,提交作品方案

 

9月30日——线上初赛结束后,前排队伍提交代码,大赛组织方进行反作弊审核,确定决赛晋级名单 

 

注:参赛队伍应保障参赛代码方案不外泄,否则大赛组织方有权拒绝队伍参与评奖

 

第二阶段线下路演与颁奖:

 

10月23日——在北京进行线下答辩(决赛地点等详情另行通知)

 

10月24日——在北京进行颁奖

 

注:主办方将为参与团队(每队两人)安排并支付差旅、住宿

 

 

报名方式

 

超分辨率图像质量挑战:

http://tinyurl.com/y6jlbeuk

 

超分辨率算法性能挑战:

http://tinyurl.com/y5mfa7uw

 

接下来,重点来了

 

竞赛任务拆解

 

大赛分为两个独立赛题:超分辨率图像质量挑战、超分辨率算法性能挑战。

 

先说第一个赛题。超分辨率图像质量挑战中,参赛者会收到 100 张图片,各自将其通过超分处理,获取 100 张高分辨率图像。其实,就是对单张低分辨率图像进行超分辨率处理,即Single Image Super-Resolution (SISR),然后处理 100 张不同的图片。评判会以 PI 和RMSE作为考察指标。

 

第二题。超分辨率算法性能优化,参赛者需要对图像做2倍的超分辨率处理,算法复杂度控制在 2GFLOPs 之内,我们以SRCNN 模型为 baseline, FLOPs 比 baseline 越小越好。比赛会采用 PSNR、SSIM 计算 RGB 通道,以及运行时间来综合评估算法的性能。在这里我们限制了算法复杂度,对于所需的显存空间并没有限制。这道赛题希望参赛者训练的模型可在移动设备端上运行,所以需要考虑移动设备运算能力的制约,在图像质量和运算速度之间寻找trade-off。

 

解题思路

 

任何一个低分辨率图像,可能存在多个不同的高分辨率图像,所以通常做超分处理时会加一个先验信息进行规范化约束。通常来讲,SISR 的方法有三类:基于插值、基于重建、基于学习。

 

目前在网络上有不少基于CNN的超分研究,比如前不久Adobe 研究院与田纳西大学的研究者公布了一种借助神经纹理迁移实现的图像超分辨技术,还构建了一个用于训练和评估超分辨率方法的基准数据集[1];再例如,ECCV 2018 明星模型 CARNM等,参赛者们有不少可以借鉴的资料。

 

在这次竞赛中,独立赛题二“超分辨率性能质量挑战”,是以SRCNN模型作为baseline。SRCNN是首个将CNN引入单帧图像超分辨率的模型,它采用了双三次插值作为预处理过程,该网络结构十分简单,仅仅用了三个卷积层。对低分辨率的图像,使用 bicubic 差值,放大到目标的大小后(比如放大到两倍、四倍)。放大后的图像是模糊的。所以这时再通过三层卷积网络做分线性映射,第一层卷积:卷积核尺寸9×9(f1×f1),卷积核数目64(n1),输出64张特征图;第二层卷积:卷积核尺寸1×1(f2×f2),卷积核数目32(n2),输出32张特征图;第三层卷积:卷积核尺寸5×5(f3×f3),卷积核数目1(n3),最后得出结果。在训练SRCNN的时候,可以采用MSE函数作为卷积神经网络损失函数。

 

随着研究的深入,SRCNN的作者还提出了FSRCNN,其关键点就是加速。作者进行了很多改进,例如FSRCNN用了反卷积层(deconvolution layer)来改进SRCNN的冗余计算问题。FSRCNN还缩小了卷积核的大小,增加了网络的深度,使得计算量降低了。

 

目前还有很多可以参考的模型和资料。每年 NTIRE 竞赛中,超分辨率都是赛题之一。NTIRE2017 超分辨率比赛的冠军EDSR[2]就是一个很好的参考案例。EDSR在性能提升方面,最重要的是去除掉了 SRResNet 多余的模块,这让模型的尺寸可以得到扩大,从而提升结果质量。它将batch normalization去除了,由于它消耗了与卷积层相同大小的内存,在去掉后,相同的计算资源下,EDSR能堆叠更多的网络层或让每层提取更多特征,以达到更好的性能。

 

对于刚刚入门,正在研究超分辨率算法的参赛者来讲,可以参考由 Yapeng Tian 整理的资料[3],里面整理近几年来关于超分辨率的论文以及代码。边阅读,边看代码,边训练模型,是上手超分最快的方式。

分享: