0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

新思科技DesignWare ARC EV系列处理器IP实现超分辨率

lPCU_elecfans 来源:新思科技 作者:新思科技 2021-02-01 17:32 次阅读

深度学习神经网络算法出现之前,我们无法通过计算将低分辨率、模糊不清的图像转换为平滑的高分辨率图像。现在,由于算法的突破,图像可以放大 8 倍或 16 倍,并可重新创建分辨率,该技术被称为图像超分辨率技术。为了实时执行该技术,处理器需要具备专用神经网络加速器,如新思科技的 DesignWare ARC EV 处理器 IP,以在不增加功耗和面积预算的情况下,也能满足密集计算的功耗需求。图像超分辨率技术现已应用于视频监控、人脸识别、医疗诊断、数字电视、游戏、多功能打印机和远程传感成像等应用。

低分辨率转换至高分辨率的问题

我们都观看过早期拍摄的电视剧或电影。英勇的侦探掌握了一个突破点 — 他们从监控摄像机中得到了罪犯开车离开犯罪现场的图像。但是,图像放大后极其模糊不清。侦探转向技术人员,用极尽严肃的声音说:“你们能让图像清晰一些吗?” 技术人员使用键盘经过数秒激烈紧张的操作,或是执行一些需要数小时处理的迭代操作后,将显示器转向侦探,上面出现了一幅分辨率高很多的清晰图像,清楚地显示了逃逸汽车的车牌。案件得以侦破!

但实际上,让图像变得更加清晰远不是这么回事。无论花多少时间处理图像,其实都无法满足侦探的这个要求。在深度学习出现之前,采用最先进的技术可以完成一定程度的图像锐化,但无法纠正严重模糊的图像(或像素化非常严重的放大图像)。

Adobe Photoshop 等程序中就有图像锐化或缩放技术的示例,有三种使用较为广泛:

最近邻插值在图像放大时复制图像中的像素。

双线性插值在图像缩放到更高分辨率时均化周围像素颜色值,以插入新像素。

双三次插值分析 16 (4x4) 个像素(相对于双线性插值的 4 (2x) 个像素),创建插值伪影较少的平滑图像。双三次插值尽管计算复杂程度较高,却能产生最理想的锐化结果。

这三种技术的局限性都源于同一种理论概念,称为数据处理不等式。简而言之,数据处理不等式即您无法将信息添加到不存在的图像中。放大图像时无法恢复丢失的数据。虽然这些技术可以将模糊不清的原始图像适度锐化,但在原始图像放大 8 或 16 倍后,这些技术就无法处理了。

或者说,至少在深度学习和超分辨率神经网络出现之前,情况都是如此。

神经网络来救急了!

如果数据处理不等式的严酷现实阻碍了双三次插值技术发挥作用,为什么深度学习算法会表现得更好呢?嗯,他们有秘技。基于学习的算法是用大数据集进行“训练”的(例如,输入大量带标注的图像,用于校准网络的系数),所以它们成为缩放图像和恢复分辨率的理想算法。恢复图像所需的额外数据来自神经网络的训练集,而不是从原始图像中获取。例如,如果一个神经网络经过训练用于学习人脸,那么当原始图像被缩放到高分辨率时,它就可以合理地将训练集的数据插入到原始图像中。

单图像超分辨率的第一个深度学习方法是 2014 年的超分辨率卷积神经网络 (SRCNN)。在用 SRCNN 进行训练期间,使用双三次插值将低分辨率的输入图像放大到所需的分辨率,然后将其送入一个相当浅的 CNN(跳过池化层以保持相同大小的图像分辨率)。在输出图像和原始图像之间采用均方平均 (MSE) 损失函数。通过多次训练迭代,尽可能地减少损失以产生最完善的输出图像。结果(图 2)显示,相对于双三次插值,SRCNN 的峰值信噪比 (PSNR) 有了显著改善。

在 SRCNN 开辟了使用 CNN 实现超分辨率的道路之后,许多其他方法也在这个概念上进行了改进。2016 年,快速超分辨率卷积神经网络 (Fast Super-Resolution Convolutional Neural Network, FSRCNN) 取代了 SRCNN 的双三次插值,它具有更多的 CNN 层,并结合了其他技术,能够产生更快、图像质量更高的解决方案。同样在 2016 年,超分辨率加深网络结构 (Very Deep network for Super-Resolution, VDSR) 将 SRCNN 的三层扩展到二十层,以提高准确度。2015 年底发布的超分辨率残差网络 (SRResNet) 将残差网络 (ResNet) 层增加至 152 层,以提高准确度。所有这些方法都提供了较高的 PSNR(更高的准确度),但经常遗漏高频细节,因此被认为不够悦目。

2017 年,超分辨率生成对抗网络 (Super-Resolution Generative Adversarial Network, SRGAN) 将 2014 年发布的 GANS 概念应用到超分辨率上,取得了令人瞩目的成果。GAN 由两个网络组成:一个生成器和一个鉴别器(图 3),它们相互竞争以实现“对抗目标”。在网络训练期间,生成器输入低分辨率图像并力图创建高分辨率版本。鉴别器网络则致力于确定输入的是真正的高分辨率图像还是生成器放大的图像。换句话说,生成器试图伪造图像蒙混过关,而鉴别器则会努力捕捉伪造图像。训练期间的这一迭代过程迫使生成器改进其输出。

训练部分完成后,SRGAN 的生成器网络只需将低分辨率图像转换为更高分辨率的图像。

SRGAN 的一个关键点是使用了感知损失函数,该函数会对比像素级 MSE 损失和对抗性损失(鉴别器遇到自然图像而不是生成图像的概率)。正因为如此,SRGAN 的输出图像的 PSNR 值并不高,但被认为更加悦目。

现在,研究SRGAN 提供的一个变体。增强型超分辨率生成对抗网络 (Enhanced Super-Resolution Generative Adversarial Network, ESRGAN) 已成为游戏界的热门产品,用于高端复古视频游戏。虽然 ESRGAN 经过自然图像训练,但应用于模糊不清的复古视频游戏时也能改善图形质量。

超分辨率的另一个有趣用途是恢复旧电影的色彩和为其上色。超分辨率可以放大帧率和分辨率、填充缺失数据、改善模糊画质,以及为黑白电影提供逼真的上色。

实时实现超分辨率

处理单个图像、视频游戏或旧电影以实现离线超分辨率,不需要实时执行。如果时间充裕,您可以让 CPUGPU 在后台处理这一过程。如果应用程序需要实时渲染和显示图像(可能是游戏或增强现实),要想在显示之前运用超分辨率技术来改善图像,则只能采用较低分辨率完成渲染,以节省功耗并提高每秒帧数 (fps)。而要想以极快的速度解决图像质量改善,或从较低视频分辨率提高到较高视频分辨率,则需要专门的神经网络解决方案。

新思科技的 DesignWare ARC EV 系列处理器 IP,可为一系列实时超分辨率需求提供可扩展的神经网络解决方案。新思科技的 EV 架构结合了可编程性和硬件优化的特性,能以最小的面积和功耗提供最快的性能。EV7x(图 5)将视觉引擎(用于单指令、多数据 (SIMD) 并行处理的 512bit 向量 DSP)和一个深度神经网络加速器相结合,该加速器能够从 880 乘累加单元扩展到 14,080 乘累加单元 (MAC),是神经网络实现的关键构建模块。

e16f8572-5fb0-11eb-8b86-12bb97331649.png

图 5. DesignWare EV7x Vision 处理器 IP 通过从 LPDDR5 向配置内部存储器输入部分输入图像、经过训练的系数和中间特征图,在其深度神经网络加速器中执行神经网络算法。

MetaWare EV (MWEV) 软件开发工具包为DesignWare EV7x 处理器 IP 系列提供完美支持,该工具包是一条集成工具链,可为经过训练的神经网络执行编译、调试、优化、仿真和映射。MWEV 神经网络软件开发套件 (NN SDK) 采用 SRCNN、FSRCN、VDSR 等超分辨率图形,然后自动映射至 EV7x 硬件,进行实时操作。

性能要求

实时实现的性能要求各不相同。多功能打印机可能需要以 5 fps 的速度锐化图像。但是,从 30fps 视频升级为 60fps 图像,需要在较短的时间内进行较多的处理。影响处理器性能的要求包括:

超分辨模型(不同模型需要不同的计算复杂程度)

输入图像分辨率

输出图像分辨率

带宽限制(千兆字节/秒,GB/s)

期望的帧速率 (fps)

借助这些参数,设计人员可以确定他们所需的深度神经网络加速器配置。新思科技可以与设计师合作,根据输入分辨率和带宽限制为所选超分辨率网络的不同 MAC 配置确定 fps。例如,多功能打印机实现可能只需要具有 880 MAC 加速器的最小 EV71 处理器。速度飞快的高端游戏应用程序可能需要更大的处理器,如 EV72 或 EV74 和多达 14,080 个 MAC。

功耗要求

除了性能之外,另一个嵌入式系统的关键要求通常是功耗。一旦知道要求,就可以计算功耗。然而,考虑到神经网络的计算复杂性和仿真所有这些计算所需的时间(可能需要数周的时间),很难准确地仿真神经网络的功耗。新思科技使用了既快速又准确的仿真模型,来确定 EV7x 硬件实现神经网络的功耗。

位分辨率要求

通常使用 32 bit精度训练神经网络;然而,对于神经网络实现而言,这是一种过度消耗。必要时,EV7x 的 DNN 可提供 8bit分辨率,以及可实现更高精度的高达 12bit的分辨率。MWEV NN SDK 将根据硬件中选定的位分辨率量化神经网络。还可以优化每层的量化/精度,尽可能使用 8bit,而仅在需要确保准确度时才使用12bit。

结语

研究人员在不断改进当今的先进技术,所以超分辨率神经网络将会继续发展。从 CNN 分类网络的演进可以看出,首先侧重于提高精度,然后再转向提高算法效率。总体目标是用最少的计算量和数据移动获得最高的准确度,从而将较低分辨率的图像重新调整/升级为更高分辨率的图像,实现悦目的效果。由于 DesignWare ARC EV7x 处理器 IP 系列是可编程的,它可以随着研究的持续进行而发展为超分辨率网络。

原文标题:老电影秒变4K画质,超分辨率技术大发神威

文章出处:【微信公众号:电子发烧友网】欢迎添加关注!文章转载请注明出处。

责任编辑:haq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 神经网络
    +关注

    关注

    42

    文章

    4570

    浏览量

    98714
  • 图像处理
    +关注

    关注

    26

    文章

    1224

    浏览量

    55807
  • 深度学习
    +关注

    关注

    73

    文章

    5235

    浏览量

    119893

原文标题:老电影秒变4K画质,超分辨率技术大发神威

文章出处:【微信号:elecfans,微信公众号:电子发烧友网】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    EVAL_PASCO2_SENSOR为什么无法从较低的分辨率高速获得更高的分辨率

    我有一个图像 EVAL_PASCO2_SENSOR,支持高达 3840x2160 分辨率的超高速和高速。 我能以快的速度拍摄所有静止画面。 但是,当我尝试获得更高分辨率(3840x2160)的静态
    发表于 02-22 07:58

    如何提高硬件pwm的分辨率

    如题,新唐的pwm一般都是16bit, 其实也可以利用预分频比来提高一些所谓的分辨率. 现在有这样一个需求. 要求脉宽在0-65535us之间连续可调, 周期,也类似.但是肯定要大于65535,连续
    发表于 01-16 08:30

    详述ADC精度和分辨率的差异

    在与使用模数转换(ADC)的系统设计人员进行交谈时,我最常听到的一个问题就是: “你的16位ADC的精度也是16位的吗?” 这个问题的答案取决于对分辨率和精度概念的基本理解。尽管是两个完全
    发表于 12-20 06:55

    ADC分辨率和精度的区别是什么

    分辨率和精度这两个,经常拿在一起说,才接触的时候经常混为一谈。对于ADC来说,这两样也是非常重要的参数,往往也决定了芯片价格,显然,我们都清楚同一个系列,16位AD一般比12位AD价格贵,但是同样是
    发表于 12-19 06:41

    峰峰值分辨率与有效分辨率的区别

    效位数降低。 峰峰值分辨率 大多数应用不希望在系统输出时看到码闪烁。例如,对于电子秤应用,无闪烁位数很重要。可以将ADC产生的数字字截断,使得在电子秤监视上看不到闪烁位。 无噪声分辨率或峰峰
    发表于 12-15 07:56

    实现多种分辨率视频接收时,ADV7612寄存该如何配置?

    实现多种分辨率视频接收时,ADV7612寄存该如何配置?
    发表于 11-28 06:25

    峰值噪声与有效噪声的区别?峰值分辨率与有效分辨率的区别?

    峰值噪声与有效噪声的区别,峰值分辨率与有效分辨率的区别?无失码分辨率又是指的什么?
    发表于 11-27 11:42

    请问AD5522的分辨率如何提高?

    AD5522的输出电压跨度在22.5V左右,对应16bit的DAC的分辨率约22.5V/65536=343uV。 如果我想提高到170uV左右的分辨率,但是又要保持输出电压跨度22.5V不变需要用
    发表于 11-15 08:20

    思科技重磅发布全新RISC-V处理器系列扩大ARC IP组合

    思科技全新32位和64位ARC-V处理器IP建立在其数十年的处理器开发经验之上,为设计者提供更广泛的RISC-V
    的头像 发表于 11-10 12:50 428次阅读

    思科技重磅发布全新RISC-V处理器系列,进一步扩大ARC处理器IP组合

    和Fusion快速入门设计实现套件(QIK)提升基于新思科ARC-V处理器IP设计的生产率和结果质量(QoR); 包括硬
    发表于 11-10 10:59 714次阅读

    Synopsys宣布扩展ARC处理器 IP产品组合

    Synopsys, Inc.11月8日宣布扩展其 ARC处理器 IP 产品组合,纳入新的RISC-V ARC-V 处理器
    的头像 发表于 11-09 12:41 505次阅读

    怎么调整andriod输出分辨率,适配分辨率大的屏?

    求教,怎么调整andriod输出分辨率,适配分辨率大的屏
    发表于 11-06 07:13

    光电编码分辨率是什么参数?

    光电编码分辨率表示什么意义
    发表于 10-11 06:47

    S32K344 14位ADC分辨率和12位分辨率之间有什么区别?

    我正在使用 S32K344s ADC。网站上的数据表和规范声明了 12 位分辨率,但 ADC 外设可以在 CALBISTREG 寄存中设置为 14 位分辨率。 如果 ADC 指定为 12 位,14 位
    发表于 06-06 09:10