论文阅读[2023ICME]Edge-FVV: Free Viewpoint Video Streaming by Learning at the Edge

Edge-FVV: Free Viewpoint Video Streaming by Learning at the Edge

会议信息:
Published in: 2023 IEEE International Conference on Multimedia and Expo (ICME)

作者:
在这里插入图片描述

1 背景

FVV允许观众从多个角度观看视频,但是如果所选视点的视频帧不能及时加载或者从相邻视点的多个视频流合成,用户可能会遇到延迟。

2 挑战

a.FVV视图合成过程可能会消耗大量的带宽和计算资源
b.更多边缘缓存可以减少每个用户虚拟视图合成延迟,但设置缓存越多,每个缓存可能存储更少的参考视点

3 贡献

a.提出了一种边缘辅助FVV系统edge-FVV
b.分析了缓存容量与延迟之间的关系,在虚拟视图合成的延迟和从服务器下载的延迟之间取得平衡

4 系统建模

4.1服务架构

在这里插入图片描述

a.Edge-FVV采用三层架构,由服务器、边缘缓存和用户组成
b.Edge-FVV中,选择一种易于实现的视频帧插值(VFI)方法补充两张原始参考图像之间缺失的视点
c.请求视点和合成的过程

4.2 容量与延迟的关系

部署的缓存越多,每个缓存所服务的用户就越少,从而导致缓存为用户服务所需的虚拟视图合成时间越少。
如果缓存服务的用户较少,则缓存中的引用视点数量可能较少,这反过来又会增加从服务器下载引用视点的可能性。

对于单个参考视频流𝑣𝑘被特定用户使用的概率是在这里插入图片描述

𝑣𝑘 在第i个缓存中没有任何用户使用的概率为在这里插入图片描述

𝑚𝑖表示存储在第i个边缘缓存中的参考视频的数量,其期望在这里插入图片描述

4.2.1 视频下载和合成的延迟

在这里插入图片描述

4.2.2 视频下载和合成的延迟

在这里插入图片描述

4.3 基于机器学习的用户分配

我们将第i个用户可以连接到的边缘缓存表示为该用户的代理集𝐴𝑖,并且Ai的大小为𝑁𝐴。
有两种不同的方式来匹配第i个用户的请求与附近的缓存
(1)分布式:每个用户自主连接到Ai中的代理
基于Multi-armed bandit的分配
(2)集中式:由拥有全局信息的服务器将用户分配给Ai中的代理
基于DQN的分配
服务用户的数量和缓存的参考视频的数量首先被馈送到两个独立的神经网络(即UserNet和VideoNet)中,以嵌入用户特征和视频特征。
然后将这两个特性连接并送到ValueNet中,以生成每个缓存的Q值。
每次用户的请求到来时,服务器都会为该用户选择一个代理。

5 实验结果

5.1 边缘缓存数量的影响

当合成时间远远小于下载时间时,处理时间曲线在任意数量的边缘缓存处都会有一个局部最小值。
当下载时间远小于合成时间时处理时间近似于反比曲线,增加更多边缘缓存的效果随着服务器数量的增加而减小。
在这里插入图片描述

5.2 Comparison of Multi-armed Bandit Algorithms

比较方法:1让用户随机选择代理;2让他们连接到固定边缘缓存

在这里插入图片描述
在这里插入图片描述

5.3 DQN的评估

比较方法:1将用户分配到用户最少的边缘缓存的算法;2随机选择缓存中有所需参考视频的边缘缓存的算法;3在所有缓存中有所需视频的边缘缓存中选择用户最少的边缘缓存的算法
与比较的所有算法中性能最好的相比,DQN减少了4.6-6.8%的总处理时间。
在这里插入图片描述

6 评价

优点
方案较简单

缺点与改进
a.评估指标单一
b.合成的新视点视频复用
c.缺乏缓存之间的协同
d.缺乏对用户观看视点的预测机制
e.组播
f.不同质量级别的FVV参考视频

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/263351.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

idea的基本使用

1.创建一个基础的项目 2.创建一个包 3.创建一个java文件 4.查看日志

关于AllowBeanDefinitionOverriding属性设置问题

📢📢📢📣📣📣 哈喽!大家好,我是「奇点」,江湖人称 singularity。刚工作几年,想和大家一同进步🤝🤝 一位上进心十足的【Java ToB端大厂…

华为配置Smart Link负载分担示例

Smart Link基本概念 Smart Link通过两个端口相互配合工作来实现功能。这样的一对端口组成了一个Smart Link组。为了区别一个Smart Link组中的两个端口,我们将其中的一个叫做主端口,另一个叫做从端口。同时我们利用Flush报文、Smart Link实例和控制VLAN等…

时间序列预测专栏介绍 — 算法原理、源码解析、项目实战

专栏链接:https://blog.csdn.net/qq_41921826/category_12495091.html 专栏内容 所有文章提供源代码、数据集、效果可视化 文章多次上热搜和每日必看榜单 时间序列预测存在的问题 现有的大量方法没有真正的预测未来值,只是用历史数据做验证 利用时间序列…

Python模块化设计程序(以打印日期为例)

我们现在接触过了大量的函数。有自己编写的函数、有内置函数、有模块中的函数等等。编写程序、制作软件,不可避免的使用大量函数。今天我采用编写日历的例子,很多函数都是由我们自己编写的。自己编写了函数,就知道函数中到底发生了什么样的运算,传入了什…

Oracle高可用一家老小全在这里

📢📢📢📣📣📣 哈喽!大家好,我是【IT邦德】,江湖人称jeames007,10余年DBA及大数据工作经验 一位上进心十足的【大数据领域博主】!😜&am…

JUC并发编程02——锁

一.乐观锁和悲观锁 悲观锁 认为自己在使用数据的时候一定有别的线程来修改数据,因此在获取数据的时候会先加锁,确保数据不会被别的线程修改。synchronized关键字和Lock的实现类都是悲观锁。 适用场景:适合写操作多的场景,先加锁…

用Java实现一对一聊天

目录 服务端 客户端 服务端 package 一对一用户; import java.awt.BorderLayout; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.PrintWriter; import java.net.ServerSocket; import java.net.Socket; imp…

Pytorch CIFAR10图像分类 Swin Transformer篇

Pytorch CIFAR10图像分类 Swin Transformer篇 文章目录 Pytorch CIFAR10图像分类 Swin Transformer篇4. 定义网络(Swin Transformer)Swin Transformer整体架构Patch MergingW-MSASW-MSARelative position biasSwin Transformer 网络结构Patch EmbeddingP…

NMOS管的工作状态及漏极电流与漏源电压、栅源电压之间的关系

NMOS管的工作状态及漏极电流与漏源电压、栅源电压之间的关系 以NMOS为例进行说明,PMOS管与NMOS管类似,只是正负极符号需要做些调整。 工作区域 对于NMOS管,根据 V g s V_{gs} Vgs​和 V d s V_{ds} Vds​大小的不同,MOS管可工作…

【牛牛送书 | 第三期】《一本书讲透Java线程:原理与实践》带你深入JAVA多线程

目录 摘要: 多线程对于Java的意义 为什么Java工程师必须掌握多线程 Java多线程使用方式 如何学好Java多线程 参与方式🥇 摘要: 互联网的每一个角落,无论是大型电商平台的秒杀活动,社交平台的实时消息推送&#x…

Kubernetes实战(九)-kubeadm安装k8s集群

1 环境准备 1.1 主机信息 iphostname10.220.43.203master10.220.43.204node1 1.2 系统信息 $ cat /etc/redhat-release Alibaba Cloud Linux (Aliyun Linux) release 2.1903 LTS (Hunting Beagle) 2 部署准备 master/与slave主机均需要设置。 2.1 设置主机名 # master h…