助推元宇宙图像渲染 上科大提出ICARUS芯片定制架构
其中,作为元宇宙与人们交互的窗口,渲染成为众多元宇宙关键技术中的重中之重,被喻为元宇宙技术栈上的皇冠。如何快速、高效地在便携终端上渲染出逼真的图像,成为元宇宙落地亟待解决的难题。
ICARUS是一款基于NeRF渲染算法的定制化芯片。在向芯片加载经过训练的NeRF网络参数后,只要输入观察位置与视角,ICARUS即可快速渲染出该视角与位置下的图像。
针对真实图像渲染的难题,上海科技大学芯片设计团队提出了最新的ICARUS芯片定制架构。ICARUS是一种基于NeRF(Neural Radiance Fields,神经辐射场)算法技术的定制化硬件加速芯片,它使得在手机、VR眼镜等终端实时渲染出极为精致的逼真图像成为可能。
“使用传统的渲染技术在终端设备上进行实时的逼真图像渲染几乎无法实现,但是ICARUS基于最新图像学渲染技术,加之对其定制化的硬件优化,使得过去不可能的任务变得现实。”上海科技大学信息学院助理教授、研究员娄鑫表示。目前ICARUS有关论文已被计算机图形学顶级会议ACM SIGGRAPH ASIA 2022接收。
ICARUS上集成了位置编码模块(Positional Encoding)、多层感知机模块(MLP Engine)和体渲染模块(Volume Rendering Unit),可支持多种NeRF、SLF类似网络。芯片内部使用可配置的定点数运算,并且在MLP模块中使用了乘法近似算法。在保证足够的计算精度的情况下,ICARUS可适用于不同场景的渲染,并且大大降低了芯片的面积与功耗。
NeRF技术:简化传统渲染技术流程
在过去,超逼真的渲染技术大多用于顶级科幻电影的制作,以及一些大型3A游戏中,其大多使用光线追踪的传统渲染技术。光线追踪算法通常需要建立大量的虚拟模型,并且对其进行关于材质、纹理等有关光学参数的调试与标定。在高精度模型建立好的基础上,依照物理规律对其进行迭代仿真,最终可以得到以假乱真的图像,让观众察觉不到虚拟物体与现实物体之间的差别。
但仅仅使用传统的光线追踪渲染技术并不能让我们拥抱元宇宙。上海科技大学信息学院博士生、论文第一作者饶朝林表示,除去传统渲染技术中无法避免的复杂渲染流程,巨量的算力和功耗限制了传统图像渲染技术的应用场景,令其无法广泛地运用于真正可接入元宇宙的终端设备。“目前高质量的图像只能通过最先进的显卡渲染得到,这意味着庞大的设备体积与极高的计算功耗,使得手机、VR眼镜等便携设备无缘这些逼真图像。并且基于传统的图像渲染技术,根据模型精细程度的不同,渲染一张图像通常需要消耗数秒至数小时不等,实时渲染的目标仍然遥不可及。”
神经辐射场(NeRF)是近年来新出现的图像渲染技术,其本质是将整个物体空间利用神经网络进行隐式编码并得到特定的模型,即可利用模型重建出三维场景并渲染出各种新视角下的图像。
NeRF技术可以对现实场景、物件扫描后进行建模,达成快速映射、快速渲染的目的,对比传统渲染技术中需要手动建模等流程大大简化。NeRF的提出与发展将三维场景的隐形表示方法推向了新的高度,能够生成无界场景的逼真渲染,实现了360°照片般逼真的新型视图重建合成效果,已然成为了元宇宙发展新方向,并可能成为下一代图像渲染的核心技术。
ICARUS可以使用极低的功耗进行高保真的图像渲染,图为ICARUS渲染结果与原图像和GPU渲染图像结果的对比。可以发现在多数场景下ICARUS拥有与GPU渲染相近的PSNR(用于衡量图片相似度的系数),并且在视觉感官上取得了可与之媲美的渲染效果。
ICARUS:为NeRF算法定制的硬件加速芯片
仅仅只有NeRF在算法层面的进步,在元宇宙对图像渲染的高要求面前远远不够。在NeRF算法中存在大量的全连接层计算,对硬件计算能力要求极高,并且过去的图像渲染硬件并不能直接适配类似NeRF的新算法。“通观计算机发展历史,软件与硬件的进步总是相辅相成的,如今新一代的图像渲染技术已经出现,那必然需要新一代的硬件设备与之适配。而ICARUS也正是在这样的时间节点上提出的。”娄鑫说。
在ICARUS芯片中,集成了位置编码模块(Positional Encoding Unit)、多层感知机模块(MLP Engine)和体渲染单元(Volume Rendering Unit),在片上实现了NeRF渲染的全流程。为了在较小的芯片面积内取得较高的能效比,在芯片设计过程中运用了很多提高能效比的技术。
上海科技大学信息学院研究生、论文共同作者万浩川介绍,在ICARUS中使用了经过量化的定点数模型,并且在多层感知机模块中使用了移位累加等近似算法的硬件设计。这些针对NeRF的硬件优化设计可以在几乎不改变最终渲染图像质量的情况下,大大减少芯片面积与计算能耗,未来可适用于人们日常生活中的各种轻量终端中。在使用同一种NeRF网络进行一张分辨率为800x800的渲染图片时,运行在1.245GHz的英伟达V100显卡需要27.74秒,并且其芯片约为815mm^2,功耗约为300W。而根据理论计算,运行在400MHz的ICARUS需要45.75s,但其芯片面积仅为16.5mm^2,功耗仅为282.8mW。
上海科技大学信息学院研究生、论文共同作者郑越洋介绍,下一步,ICARUS将跟随NeRF类算法的飞速发展,未来会把更多的编码、网络结构集成进ICARUS芯片,以支持更多种类的应用场景。ICARUS将在明年进行流片(试生产)并点亮,届时将成为第一款为NeRF算法定制的硬件加速芯片。