SIGCOMM 2023 | ZGaming:通过图像预测实现零延迟 3D 云游戏

2023-10-24 15:41:46 浏览数 (2)

题目:ZGaming: Zero-Latency 3D Cloud Gaming by Image Prediction 作者:Jiangkai Wu1, Yu Guan1, Qi Mao2, Yong Cui3, Zongming Guo1, Xinggong Zhang等人 来源:SIGCOMM 2023 论文链接: https://dl.acm.org/doi/10.1145/3603269.3604819 内容整理:胡玥麟 在云游戏中,交互延迟是影响用户体验的最重要因素之一。尽管可以通过边缘缓存和拥塞控制等典型网络基础设施来降低交互延迟,但当前云游戏平台的交互延迟仍然远不能满足用户的要求。本文提出了ZGaming,一种基于图像预测的新型3D云游戏系统,以消除传统云游戏系统中的交互延迟。

简介

基于图像的预测方法能够如何准确地响应云游戏系统中的用户操作?主要面临三个技术挑战:

首先,预测图像中存在伪影(丢失像素)。例如,由于遮挡或视图外,某些内容未在参考视图中采样,DIBR 无法正确生成它们,从而导致伪影。为了简单起见,本文使用“洞”来指代这些工件(the "hole" artifacts)。为了解决这个问题,一些关于多参考视图的工作被提出,旨在丰富参考内容。然而,这些方法需要修改游戏代码才能一次从多个视点渲染图像。

其次,DIBR 不适用于参考系中的动态对象。运动角色的预测图像与地面真实图像有很大不同(例如红色圈出的部分)。这是因为角色处于运动状态,其真实位置、姿势和外观不断变化,但 DIBR 只能通过投影其存储在参考帧中的过时和静态像素来预测图像。因此预测图像与真实图像几乎不匹配。

第三,流式传输时,视频比特率和预测性能之间存在权衡。一方面,提高视频码率可以减少编码带来的图像失真,使参考帧具有更高的质量,从而产生更好的预测性能。另一方面,在带宽受限的情况下,增加比特率可能会导致交互延迟增加,导致预测周期更长,进而降低预测性能。

本文的贡献在于:

  • 首先,提出了一种质量驱动的 3D 块缓存,以减少“空洞”伪影。
  • 其次,通过基于 LSTM 的模型提高了动态前景物体的预测质量。
  • 第三设计了一种预测性能驱动的自适应比特率算法,试图优化图像预测的性能。实验表明,与现有方法相比,在提供相同视频质量的情况下,ZGaming将交互延迟从23 ms降低到0 ms,或者在保持零延迟的情况下将视频质量提高5.4 dB。

研究问题

在云游戏中,交互延迟是影响用户体验的最重要因素之一。尽管可以通过边缘缓存和拥塞控制等典型网络基础设施来降低交互延迟,但当前云游戏平台的交互延迟仍然远不能满足用户的要求。

论文方法

在ZGaming中,一帧被分为静态背景和动态前景。对于静态背景,客户端存储多个已播放的帧,并使用这些历史帧以及最近接收的帧作为 DIBR 的参考帧。由于历史帧提供了更充分的 3D 信息,预测帧上的伪影得以恢复。对于动态前景,提出了LSTM(长短期记忆)模型代替DIBR来预测变形或运动后动态物体的图像。最后,提出了一种预测性能驱动的自适应比特率(ABR)算法,该算法根据当前用户操作、游戏内容和网络条件自适应地选择最佳视频比特率。

模块设计

论文为 ZGaming 设计了三个模块:

质量驱动的 3D 块缓存

为了有效地存储历史帧,ZGaming 进一步提出了一种基于实用程序的块缓存策略。所提出的策略将历史帧分割成块并计算每个历史块的空洞填充的效用值。在实时云游戏中,客户端只缓存效用价值最高的区块。

图 1

服务器辅助 LSTM 预测前景

服务器辅助 LSTM 预测前景。ZGaming 提出了一种 LSTM 模型,可以从历史帧中估计前景物体的运动和变形趋势,从而准确预测这些动态物体在交互延迟后的图像。为了适应计算能力有限的客户端设备,LSTM的计算开销被卸载到服务器端,并将预测结果预取到客户端。为了进一步提高性能,ZGaming提出提高数据包发送中前景对象的优先级,并应用前向纠错(FEC),以确保它们能够被客户端及时完整地接收。

图 2

预测性能驱动的自适应比特率

ZGaming 首先分析了预测性能与交互延迟、参考帧质量、用户操作和视频内容之间的关系,提出了一个关系模型。然后,ZGaming分析了交互延迟与视频码率、网络条件之间的关系,提出了另一种关系模型。根据这些模型,ZGaming 选择在特定网络条件下最大化预测性能的视频比特率。

ZGaming的架构

图 3

其工作流程如下:

  • 1.服务器辅助LSTM预测(SL)前台读取游戏软件渲染的全帧,并将每个帧分为静态背景和动态前景对象。对于每个前景对象,LSTM 模型根据其历史图像预测当前交互延迟时间后的图像。这些预测的前景图像将以比背景图像更高的优先级发送给客户端。
  • 2.预测性能驱动的自适应 (PPA) 比特率从 SL 前景模块读取背景图像,并以自适应比特率将这些图像发送到客户端。要选择比特率,首先要确定当前的网络状况。然后,根据所提出的关系模型,计算不同视频比特率下的预期预测质量。最后,选择使预测质量最大化的比特率。
  • 3.质量驱动的 3D 块 (Q3B) 缓存为 DIBR 提供额外的 3D 信息来恢复工件。具体来说,DIBR 首先使用新接收到的背景图像来预测具有伪影的图像。然后,DIBR 从 Q3B 缓存中获取 3D 块以恢复这些工件。恢复的预测图像将与接收到的前景图像组合形成全帧进行播放。最后,Q3B缓存将根据每个3D块的恢复性能进行更新。此外,新接收到的背景图像将被添加到Q3B缓存中。

实验设计与验证

数据集

论文使用 Grand Theft Auto V数据集,如下表示。该数据集是唯一满足论文要求的公开数据集:长时间的游戏记录、深度图、掩模图和视点。在实验中,数据集分为 57 个训练视频和 44 个测试视频。训练视频仅用于LSTM模型的训练,测试视频用于LSTM、Cache和ABR模型的测试以及端到端的性能评估。为了防止 LSTM 对特定场景过度拟合,训练和测试视频录制在不同的游戏场景中,并且测试视频中前景物体的外观与训练视频中的前景物体不同。流式传输时,论文应用 x264以 5 个质量级别(QP=18、24、30、36、42)对测试视频进行编码。

表 1

结果表明,与现有方法相比,在提供相同视频质量的情况下,ZGaming将交互延迟从23 ms降低到0 ms,或者在保持交互延迟为0 ms的情况下,将视频质量提高了5.4 dB

在实现这些收益的同时,ZGaming 也存在一些局限性,例如对突发动作的响应能力较弱、交互延迟较大时预测质量较差、图像预测耗时以及带宽占用增加等

带宽使用

GamingAnywhere是一个开源的云游戏平台。ZGaming带宽占用率相比DIBR和GamingAnywhere会更高。

图 4

视频质量

图 5

ZGaming 的视频质量在 40.0% 的情况下高于 33 dB,而 DIBR_GCC 的这一比例仅为 9.5%,GameAnyWhere_GCC 的比例仅为 4.0%。另一方面,ZGaming可以显着降低用户遇到视频质量低的概率。例如,ZGaming 只有 3.0% 的视频质量低于 25 dB 的情况,而 DIBR_GCC 为 14.5%,GameAnyWhere_GCC 为 50.5%。上述改进是合理的。DIBR 不使用过时的图像,而是使用预测图像响应用户输入,因此它可以获得比 GameAnyWhere 更好的性能。ZGaming进一步提高了图像预测的性能,因此取得了比DIBR更好的性能。

鲁棒性

ZGaming 包含一些基于预测的模型,这些模型可能存在预测误差。为了量化预测误差的影响,本文计算了 ZGaming 与基线之间的逐帧质量差异,如下图所示。结果表明,ZGaming 在绝大多数帧中实现了更好的视频质量。例如,ZGaming 的视频质量在 85.5% 的帧中优于 DIBR_GCC,在 92.0% 的帧中优于GameAnyWhere_BBR。另一方面,即使出现预测误差,图像质量的下降也非常有限。例如,ZGaming 的视频质量比 DIBR_GCC 和 GameAnyWhere_BBR 低 5 dB,帧数分别仅为 1.3% 和 1.4%。它表明 ZGaming 对预测错误具有鲁棒性。

图 6

局限性

LSTM 预测

LSTM模型存在以下三个局限性:

  • 首先,它对突发动作的响应能力较弱。LSTM 模型基于 5 个连续帧的序列进行预测,因此很难准确预测持续时间少于 5 帧的突发动作,例如突然跳跃。
  • 其次,当交互延迟较高时,LSTM 模型的预测性能较差。这是因为 ST-LSTM 堆栈使用前一帧的预测结果作为下一帧预测的输入,导致模糊退化的累积,直到 RefSR 单元不再能够处理它。具体来说,当交互延迟超过 6 帧时,LSTM 模型预测的图像变得相当模糊。
  • 第三,LSTM模型的效率需要优化,LSTM 模型的推理时间相当长。本文不将此推理时间包含在第 7.3 节和第 7.4 节的评估中。然而,这个推理时间在实践中也是交互延迟的一部分,有时其预测减少的延迟可能小于其推理引入的延迟。因此其效率优化是未来的必然。

服务器端预测

将 LSTM 推理分载到服务器会带来以下限制:

  • 首先,服务器端预测可能会导致额外的带宽使用。服务器需要在多个时间点预测其帧并将其预取到客户端。前景帧的倍增会导致传输期间额外的带宽使用。对于某些前景占据帧大部分的游戏,例如 Splatoon ,这可能会导致带宽使用量急剧增加。
  • 其次,当未收到预期的前景帧时,服务器端预测可能会导致客户端卡顿。例如,当交互延迟发生剧烈变化(超过±2帧)时,预测当前交互延迟- 周围的3帧并不总是能够覆盖实际的交互延迟,从而导致当客户端没有收到预期的前景帧时出现卡顿。同样,如果一些预测的前景帧在传输过程中丢失,也可能导致客户端卡顿。

0 人点赞