专利类型 | 发明公开 | 法律事件 | 公开; |
专利有效性 | 公开 | 当前状态 | 公开 |
申请号 | CN202311052180.3 | 申请日 | 2023-08-18 |
公开(公告)号 | CN119496926A | 公开(公告)日 | 2025-02-21 |
申请人 | 中兴通讯股份有限公司; 哈尔滨工业大学; | 申请人类型 | 企业 |
发明人 | 廖荣华; 惠晨; 张童; 李思峤; 高莹; 黄成; | 第一发明人 | 廖荣华 |
权利人 | 中兴通讯股份有限公司,哈尔滨工业大学 | 权利人类型 | 企业 |
当前权利人 | 中兴通讯股份有限公司,哈尔滨工业大学 | 当前权利人类型 | 企业 |
省份 | 当前专利权人所在省份:广东省 | 城市 | 当前专利权人所在城市:广东省深圳市 |
具体地址 | 当前专利权人所在详细地址:广东省深圳市南山区高新技术产业园科技南路中兴通讯大厦 | 邮编 | 当前专利权人邮编:518057 |
主IPC国际分类 | H04N21/2343 | 所有IPC国际分类 | H04N21/2343 ; H04N21/2662 ; H04N21/4402 ; H04N21/462 ; H04N19/59 ; H04N19/587 ; H04N19/42 |
专利引用数量 | 0 | 专利被引用数量 | 0 |
专利权利要求数量 | 21 | 专利文献类型 | A |
专利代理机构 | 北京品源专利代理有限公司 | 专利代理人 | 白云; |
摘要 | 本 申请 实施例 提供了一种视频传输方法、 电子 设备和存储介质,其中,该方法包括:确定待传输视频的至少一组画面组的关键 帧 以及非关键帧;确定所述关键帧以及所述非关键帧对应的 采样 率;按照各所述采样率将对应的所述画面组分 块 压缩编码为传输数据,并发送所述传输数据至解码端。本申请实施例实现了对视频的压缩采样,可提高视频压缩效果,增强视频数据重建过程的图像 质量 ,提高用户的使用体验。 | ||
权利要求 | 1.一种视频传输方法,其特征在于,应用于编码端,所述方法包括: |
||
说明书全文 | 一种视频传输方法、电子设备和存储介质技术领域[0001] 本发明涉及数据传输技术领域,尤其涉及一种视频传输方法、电子设备和存储介质。 背景技术[0002] 伴随着互联网的蓬勃发展,越来越多的应用场景如网络视频、视频会议等与视频关联起来,而且视频分辨率也在显著提升。但是4K和8K超高清视频、VR视频等的出现使得数据量发生了爆炸性的增长,这使得对于视频数据的存储耗费了巨量的存储空间,同时对于传输的带宽也带来了极大地挑战。目前,奈奎斯特‑香浓采样定理一直是信号处理领域的金科玉律,它要求使用不低于信号带宽两倍的采样率来获取稠密采样值,这对于采样系统也提出了极高的要求,极大地影响了压缩的效果,耗费了更多的存储空间和带宽。因此如何对原视频进行压缩同时获得更好质量的重建视频,使得视频在编码端能够突破奈奎斯特‑香浓采样定理的限制,提高视频的压缩比例成为亟需解决的问题。 发明内容[0005] 确定所述关键帧以及所述非关键帧对应的采样率; [0006] 按照各所述采样率将对应的所述画面组分块压缩编码为传输数据,并发送所述传输数据至解码端。 [0007] 本申请实施例还提供了一种视频传输方法,应用于解码端,其中,该方法包括:接收编码端发送的传输数据,其中,所述传输数据按照关键帧以及非关键帧对应的采样率分块压缩编码生成; [0008] 重建所述传输数据为初始关键帧以及初始非关键帧; [0009] 基于预设深度重建网络重建所述初始关键帧为关键帧,并根据所述关键帧指导所述初始非关键帧重建为非关键帧; [0010] 基于所述关键帧和所述非关键帧构建传输视频的画面组。 [0011] 本申请实施例还提供了一种电子设备,该电子设备包括: [0012] 一个或多个处理器; [0013] 存储器,用于存储一个或多个程序; [0014] 当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本申请实施例中任一所述方法。 [0015] 本申请实施例还提供了一种计算机可读存储介质,其中,该计算机可读存储介质存储有一个或多个程序,所述一个或多个程序被一个或多个处理器执行,以实现如本申请实施例中任一所述方法。 [0017] 为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。 [0019] 图2是本申请实施例提供的一种视频传输方法的流程图; [0020] 图3是本申请实施例提供的另一种视频传输方法的流程图; [0021] 图4是本申请实施例提供的另一种视频传输方法的流程图; [0022] 图5是本申请实施例提供的另一种视频传输方法的流程图; [0023] 图6是本申请实施例提供的一种预设深度重建网络的结构示意图; [0024] 图7是本申请实施例提供的另一种视频传输方法的流程图; [0025] 图8是本申请实施例提供的一种视频传输系统架构的示例图; [0026] 图9是本申请实施例提供的一种压缩感知对数据加密的示例图; [0027] 图10是本申请实施例提供的一种可解释重建网络的结构示意图; [0028] 图11是本申请实施例提供的一种关键帧深度重建网络的结构示意图; [0029] 图12是本申请实施例提供的一种关键帧深度重建网络的基本模块结构示例图; [0030] 图13是本申请实施例提供的一种视频传输装置的结构示意图; [0031] 图14是本申请实施例提供的另一种视频传输装置的结构示意图; [0032] 图15是本申请实施例提供的一种电子设备的结构示意图。 具体实施方式[0033] 应当理解,此处所描述的具体实施仅仅用于解释本申请,并不用于限定本申请。 [0034] 在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”后缀仅为了有利于本申请的说明,其本身没有特有的意义,因此,“模块”、“部件”或“单元”可以混合地使用。 [0035] 视频原始数据由多个视频帧组成,逐帧进行播放形成连续画面,视频原始数据可以用矩阵表示,矩阵的长和宽分别表示视频原始数据的分辨率,视频原始数据内每帧图像具有相同的分辨率。 [0036] 目前,视频压缩感知的流程图如图1所示,其中x表示原始视频,可由稀疏基矩阵ψ和稀疏系数α相乘表示,φ表示观测矩阵,二维观测矩阵的长和宽分别为M和N,通过矩阵乘法可以获得测量值M×1维测量值y,若M≤N,则测量值y会占用更少存储空间。不同于奈奎斯特‑香浓定理要求信号带宽两倍的采样率来获取稠密采样值,由于现实视频数据往往是满足稀疏性条件的,所以通过上述流程能够使用远低于奈奎斯特‑香浓定理要求的采样值进行对原始输入的恢复。同时不同于视频数据的传统处理流程的采样和压缩流程,压缩感知通过观测矩阵将采样和压缩过程合二为一,采样值即压缩值,流程的简化使得采样端的采样数据量得到显著缩小,减轻了采样端的设备压力,因此压缩感知一般可分之为采样和重建两个阶段,为视频的压缩与重建提供了一种全新的解决方案。 [0037] 图2是本申请实施例提供的一种视频传输方法的流程图,本申请可适用于视频传输场景内视频压缩采样的情况,该方法可由视频传输装置来执行,该装置可以通过软件和/或硬件的方式实现,该装置一般集成在编码端,该编码端可以包括服务器、个人终端、云服务平台等,参见图2,本申请实施例提供的方法具体包括如下步骤: [0038] 步骤110、确定待传输视频的至少一组画面组的关键帧以及非关键帧。 [0039] 其中,待传输视频可以是需要进行传输的视频,该待传输视频在本申请实施例中,可由编码端进行压缩采样。画面组(Group of Pictures,GOP)可以是编码端进行处理的基础单元,画面组可以由一组关键帧和非关键帧组成,待传输视频可以划分位多个画面组,关键帧可以是待传输视频内的帧内编码图像帧,关键帧的编码过程无需参考其他视频帧进行编码,非关键帧可以是待传输视频内的预测编码帧,非关键帧通过帧内编码帧和其他预测编码帧进行预测编码。 [0040] 在本申请实施例中,编码端可以对待传输视频进行处理,将待传输视频转换为一个或多个画面组,每个画面组内可以包括关键帧和非关键帧,其中,针对画面组内关键帧数量的不同,画面组可以包括单关键帧画面组以及双关键帧画面组。 [0041] 步骤120、确定关键帧以及非关键帧对应的采样率。 [0042] 其中,采样率可以是在待传输视频的视频帧内采样数据与视频帧原始数据的比值。 [0043] 在本申请实施例中,针对每个画面组内的关键帧以及非关键帧确定其对应的采样率,该确定方式可以包括针对关键帧和非关键帧分别预先配置固定的采样率或者按照编码端的软硬件性能自适应的确定出关键帧和非关键帧的采样率。在一些示例性的实施方式中,关键帧与非关键帧的采样率可以不同,关键帧的采样率可以大于非关键帧的采样率。 [0044] 步骤130、按照各采样率将对应的画面组分块压缩编码为传输数据,并发送传输数据至解码端。 [0045] 其中,分块压缩可以是在画面组内的关键帧或非关键帧划分为多个分块数据,针对每个分块数据依据其对应的采样率进行压缩编码的过程,可以理解的是,每个分块数据的采样率可由其归属的关键帧或非关键帧确定。 [0046] 在本申请实施例中,针对每个画面组分别对其中的关键帧以及非关键帧依据各自对应的采样率进行分块压缩,可以将每个画面组经过分块压缩后生成的数据作为传输数据,可以将该传输数据传输到解码端,使得解码端可以基于该传输数据进行画面重建。在另一些申请实施例中,编码端还可以存储生成的传输数据。 [0047] 在一些申请实施例中,确定关键帧以及非关键帧对应的采样率包括:针对所述关键帧和所述非关键帧分别预先配置固定的采样率;基于编码端的硬件限制条件确定关键帧以及非关键帧对应的采样率。 [0048] 在本申请实施例中,关键帧以及非关键帧各自对应的采样率可以由编码端的硬件限制条件确定,该硬件限制条件可以包括但不限于编码端的计算性能、存储空间、剩余电量等内容。可以理解的是,编码端的硬件限定条件越高,则处理的关键帧以及非关键帧的采样率取值可以越高。在另一些申请实施例中,关键帧以及非关键帧还可以预先配置固定的采样率,可以分别读取对应关键帧以及非关键帧的预先配置的采样率。 [0049] 图3是本申请实施例提供的另一种视频传输方法的流程图,本申请实施例是在上述申请实施例基础上的具体化,介绍画面组的压缩编码过程,参见图3,本申请实施例提供的方法具体包括如下步骤: [0050] 步骤210、确定待传输视频的至少一组画面组的关键帧以及非关键帧。 [0051] 步骤220、确定关键帧以及非关键帧对应的采样率。 [0052] 步骤230、将画面组内关键帧以及非关键帧按照预设尺度划分为分块数据。 [0053] 其中,预设尺度可以是划分关键帧以及非关键帧的尺度,例如,关键帧以及非关键帧的图像尺寸为32*32,预设尺度为4*4,则关键帧以及非关键帧可以分别划分为64个分块数据,每个分块数据内的图像尺寸可以为4*4,该预设尺度可以根据业务场景以及编码端的软硬件能力确定。每个分块数据可以是关键帧以及非关键帧分块形成的数据,每个分块数据可以是关键帧或非关键帧的一部分视频数据。 [0054] 在本申请实施例中,可以按照预设尺度将画面组内的每个关键帧以及非关键帧分别划分为分块数据,每个分块数据可以是关键帧或非关键帧的一部分。在一些示例性的实施方式中,分块数据的划分过程可以通过采样矩阵实现,采样矩阵的维度可以对应于预设尺度,可以通过采样矩阵分别对画面组内的关键帧以及非关键帧进行处理,从而生成每个关键帧以及非关键帧对应的分块数据。 [0055] 步骤240、依据各采样率分别确定关键帧以及非关键帧的分块数据分别对应的分块采样率。 [0056] 其中,分块采样率可以是每个分块数据对应的采样率,可以理解的是,不同的分块数据对应的分块采样率可以不同。 [0057] 在本申请实施例中,可以依据关键帧以及非关键帧各自对应的采样率为归属于关键帧或非关键帧的分块数据分配对应的分块采样率,可以理解的是,归属于相同关键帧或非关键帧的多个分块数据分配的分块采样率可以符合对应关键帧或非关键帧的采样率,例如,该符合可以包括归属相同关键帧的所有分块采样率的平均值与该关键帧的采样率相同,或者,按照分块采样率采集的采样数据的分布情况与按照关键帧的采样率采集关键帧的采样数据的分布情况相同。 [0058] 步骤250、按照分块采样率采样对应的分块数据为采样分块数据。 [0059] 在本申请实施例中,可以针对每个分块数据使用其对应的采样率进行数据采集,可以将采集到的数据作为采样分块数据。 [0060] 步骤260、将各采样分块数据作为传输数据。 [0061] 具体的,可以将每个画面组的所有分块数据对应采样分块数据作为传输数据。 [0062] 在一些申请实施例中,依据各采样率分别确定关键帧以及非关键帧的分块数据对应的分块采样率,包括: [0063] 按照关键帧以及非关键帧的均值滤波结果与原数据的差值确定各分块数据内像素点的信息差;依据信息差确定对应的分块数据内像素点的采样值数量;按照分块数据内所有像素点的采样值数量确定迭代误差;在迭代误差满足预设条件时,将采样值数量对应的采样率作为对应的分块数据的分块采样率;在迭代误差不满足预设条件时,按照预设分配公式重新分配采样值数量并重新确定迭代误差直到确定出所有分块数据的分块采样率。 [0064] 其中,均值滤波结果还可以是关键帧以及非关键帧经过滤波处理生成的结果,关键帧以及非关键帧的每个像素点可以均确定自己对应的均值滤波结果,原数据可以是关键帧以及非关键帧每个像素点未经过均值滤波前的数据值,迭代误差可以是经过为一个关键帧或非关键帧内所有分块数据分配的采样值导致该关键帧或非关键帧的当前采样率与前述步骤确定出的采样率的误差,预设条件可以是用于判断一个关键帧或非关键帧内所有分块数据分配的采样值是否满足该关键帧或非关键帧对应的采样率的判断条件,该预设条件可以包括但不限于预先配置的迭代误差阈值以及每个关键帧或非关键帧的分块数据的分块采样值的迭代分配规则等。采样值数量可以是分块数据内采集像素点的数量,采样值数量与分块数据的总像素数量的比值可以作为采样率。 [0065] 在本申请实施例中,可以对每组画面组内的关键帧以及非关键帧进行均值滤波处理,可以确定出关键帧和非关键帧的每个像素点对应的均值滤波结果,可以将针对每个像素点确定出对应的均值滤波结果与原数据的差值,可以将该差值作为对应像素点的信息差,针对每个关键帧或非关键帧的分块数据包含的像素点确定其对应的信息差,可以按照信息差为每个像素点确定采样值数量,例如,在信息差小于阈值时,像素点的采样值数量可以为1,否则,该像素点的采样值数量可以为0。在确定出每个分块数据内像素点的采样值数量后,可以确定每个分块数据对应的迭代误差,例如,可以将所有像素点的采样值数量的总和与分块数据的采样率对应的采样值数量的差值作为该分块数据的迭代误差;可以针对每个分块数据将迭代误差与预设条件进行比对,在确定迭代误差满足预设条件时,可以利用分块数据当前的采样值数量确定出分块采样率,在确定迭代误差不满足预设条件时,可以按照预设分配公式对采样值数量进行调整,并重新按照上述过程确定迭代误差并与预设条件进行比对,可以重复执行这一过程,直到该分块数据确定出对应的分块采样率。 [0066] 在另一些申请实施例中,按照关键帧以及非关键帧的均值滤波结果与原数据的差值确定各分块数据内像素点的信息差,包括: [0067] 对关键帧以及非关键帧内的每帧视频图像分别进行帧内均值滤波以确定每帧视频图像内每个像素点分别对应的均值滤波结果;确定各分块数据内像素点的原始数据与均值滤波结果的差值,并将差值与预设自选超参的乘积作为信息差。 [0068] 其中,预设自选超参可以是预先配置的权重系数,预设自选超参用于调整信息差的数量级。 [0069] 在本申请实施例中,可以将关键帧以及非关键帧中每帧视频图像作为均值滤波处理的输入,在每帧视频图像经过均值滤波后每个像素点可以确定其对应的均值滤波结果;可以确定每个像素点的均值滤波结果与对应的原始数据的差值,并将该差值与预设自选超参的乘积作为该像素点的信息差。 [0070] 在另一些申请实施例中,依据信息差确定对应的分块数据内像素点的采样值数量,包括: [0071] 在分块数据归属的视频图像为关键帧时,按照关键帧的第一采样率分别截取分块数据内像素点的信息差确定采样值数量;在分块数据归属的视频图像为非关键帧时,按照非关键帧的第二采样率分别截取分块数据内像素点的信息差确定采样值数量。 [0072] 在本申请实施例中,可以依据信息差对分块数据内的像素点分配采样值数量,该采样值数量可以是每个像素点的采样次数或者采样频率,该采样值数量可以用于确定像素点是否被采样,在一个分块数据归属的视频图像为关键帧时,也即分块数据属于一个关键帧的一部分,则可以按照关键帧的第一采样率确定出第一采样值,可以对该分块数据的像素点的信息差进行截取,使得截取后的信息差的取值范围在第一采样值的范围内,信息差的截取可以包括将信息差减去一部分取值,使得剩余的取值在第一采样率对应的采样值的范围内,可以将截取信息差剩余的值作为采样值数量,同样的,在一个分块数据归属的视频图像为非关键帧时,该分块数据属于一个非关键帧的一部分,可以确定非关键帧的第二采样率对应的第二采样值,可以使用第二采样值对该分块数据对应的信息差的取值进行截取,可以将截取后的信息差的取值作为采样值数量。 [0073] 在另一些申请实施例中,按照分块数据内所有像素点的采样值数量确定迭代误差,包括: [0074] 确定分块数据内所有像素点的采样值数量的求和值;将求和值与分块数据对应的预设采样数量的差值作为迭代误差。 [0075] 在本申请实施例中,针对每个分块数据,可以确定该分块数据内各像素点的采样值数量的求和值,并将该求和值与预设采样数量作差,该预设采样数量可以由分块数据对应的关键帧的第一采样率或非关键帧的第二采样率确定,可以将确定出的差值作为迭代误差。 [0076] 在上述申请实施例的基础上,预设分配公式包括以下至少之一; [0077] [0078] Q=Q‑sign(δ)×D; [0079] 其中,Q表示采样值数量,L表示分块数据的通道数,δ表示迭代误差,D表示随机从多项式分布内选择的迭代矩阵,sign函数表示正负值判断函数。 [0080] 在一些申请实施例中,在重新分配分块数据的采样值数量时,可以按照预设分配公式确定,该公式可以包括针对每个分块数据,将当前的分块数据的采样值数量减去迭代误差和通道数之商值重新作为新的初始分块采样值,或者,将当前的分块数据的采样值数量减去一个修改值,该修改值由迭代误差的正负值以及随机从多项式分布内选择的迭代矩阵确定。 [0081] 在另一些申请实施例中,将采样值数量对应的采样率作为对应的分块数据的分块采样率,包括: [0082] 针对各分块数据确定对应的分块数据维度以及采样值数量;将采样值数量与分块数据维度的比值作为分块数据对应的分块采样率。 [0083] 其中,分块数据维度可以是分块数据的数据规模,该分块数据维度可以由分块数2 据的通道数以及预设尺度确定,例如,通道数为l,预设尺度为B,则该分块数据维度为lB。 [0084] 在本申请实施例中,可以确定出各分块数据的分块数据维度以及采样值数量,并将采样值数量与分块数据维度的比值作为该分块数据对应的分块采样率。 [0085] 在上述申请实施例的基础上,关键帧的第一采样率大于非关键帧的第二采样率。 [0086] 图4是本申请实施例提供的另一种视频传输方法的流程图,本申请可适用于视频传输场景内视频压缩采样的情况,该方法可由视频传输装置来执行,该装置可以通过软件和/或硬件的方式实现,该装置一般集成在解码端,该编码端可以包括服务器、个人终端、云服务平台等,参见图4,本申请实施例提供的方法具体包括如下步骤: [0087] 步骤310、接收编码端发送的传输数据,其中,传输数据按照关键帧以及非关键帧对应的采样率分块压缩编码生成。 [0088] 其中,传输数据可以是解码端传输的经过压缩采样的视频数据,传输数据可以根据归属的关键帧或非关键帧采取不同的采样率压缩编码生成。 [0089] 在本申请实施例中,编码端可以将按照关键帧和非关键帧对应的采样率分块压缩编码视频图像生成传输数据,解码端可以接收编码端发送的传输数据。 [0090] 步骤320、重建传输数据为初始关键帧以及初始非关键帧。 [0091] 在本申请实施例中,可以对传输数据进行重建,该重建过程可以包括上采样、解压缩等操作,可以将传输数据分别重建为初始关键帧以及初始非关键帧,其中,初始关键帧可以由关键帧对应的传输数据重建生成,而初始非关键帧可以由非关键帧对应的传输数据重建生成。 [0092] 步骤330、基于预设深度重建网络重建初始关键帧为关键帧,并根据关键帧指导初始非关键帧重建为非关键帧。 [0094] 在本申请实施例中,可以调用预设深度重建网络对初始关键帧进行深度重建,可以将深度重建结果作为关键帧,可以基于经过预设深度重建网络处理的关键帧对初始非关键帧进行指导重建,将初始非关键帧重建为非关键帧,在该非关键帧的重建过程可以受到关键帧的指导,例如,可以基于关键帧的特征数据以及初始非关键帧进行重建。 [0095] 步骤340、基于关键帧和非关键帧构建传输视频的画面组。 [0096] 在本申请实施例中,可以将生成的关键帧以及非关键帧重建为画面组,按照画面组包括的关键帧的数量的不同,画面组可以构建为单关键帧画面组以及双关键帧画面组等。 [0097] 图5是本申请实施例提供的另一种视频传输方法的流程图,本申请实施例是在上述申请实施例基础上的具体化,参见图5,本申请实施例提供的方法具体包括如下步骤: [0098] 步骤410、接收编码端发送的传输数据,其中,传输数据按照关键帧以及非关键帧对应的采样率分块压缩编码生成。 [0099] 步骤420、重建传输数据为初始关键帧以及初始非关键帧。 [0100] 步骤430、按照预设深度重建网络处理初始关键帧,并获取深度重建网络的关键帧输出结果。 [0101] 在本申请实施例中,可以将初始关键帧输入到预设深度重建网络进行处理,可以由预设深度重建网络对初始关键帧进行重建,从而提升初始关键帧的图像质量,可以采集预设深度重建网络的输出结果作为关键帧输出结果,可以理解的是,预设深度重建网络的输入数据可以是经过初步重建的初始关键帧,还可以输入经过一次预设深度重建网络处理的关键帧输出结果。 [0102] 步骤440、将关键帧输出结果以及初始非关键帧输入预设重建网络以生成非关键帧输出结果。 [0103] 在本申请实施例中,可以将提取深度重建网络输出的关键帧输出结果,可以将该关键帧输出结果与初始非关键帧一同输入到预设重建网络内进行处理,可以将预设重建网络输出的结果作为非关键帧输出结果,其中,预设重建网络可以是现有技术内对非关键帧进行重建的卷积神经网络,预设重建网络的输出通道至少包括对应初始非关键帧以及关键帧输出结果的数据通道。 [0104] 步骤450、重复执行上述过程直到关键帧输出结果以及非关键帧输出结果满足深度重建条件,将关键帧输出结果作为关键帧以及非关键帧输出结果作为非关键帧。 [0105] 其中,深度重建条件可以是判断关键帧以及非关键帧深度重建完成的条件,深度重建条件可以包括重复执行次数或者关键帧以及非关键帧的画面质量要求等。 [0106] 在本申请实施例中,可以判断关键帧输出结果以及非关键帧输出结果是否满足预先设定的深度重建条件,若满足,则将关键帧输出结果作为深度重建完成的关键帧以及将非关键帧输出结果作为深度重建完成的非关键帧,若不满足,则将关键帧输出结果重新输入到预设深度重建网络进行深度重建,并将该关键帧输出结果对应的新的关键帧输出结果以及非关键帧输出结果作为预设重建网络的输入,从而获取到新的非关键帧输出结果,并重新确定新的非关键帧输出结果以及新的关键帧输出结果是否满足深度重建条件,可以重复这一过程,直到确定出的非关键帧输出结果以及关键帧输出结果满足深度重建条件。 [0107] 进一步的,在上述申请实施例的基础上,深度重建条件包括以下至少之一: [0108] 预设深度重建网络以及预设重建网络的调用次数大于或等于预设阈值;关键帧输出结果以及非关键帧输出结果的图像质量满足预设质量要求。 [0109] 在本申请实施例中,关键帧输出结果以及非关键帧输出结果满足的深度重建对应深度条件可以包括预设深度重建网络以及预设重建网络的调用次数大于或等于预设阈值,以及,关键帧输出结果以及非关键帧输出结果的图像质量满足预设质量要求。 [0110] 步骤460、基于关键帧和非关键帧构建传输视频的画面组。 [0111] 在另一些申请实施例中,按照预设深度重建网络处理初始关键帧,并获取深度重建网络的关键帧输出结果,包括: [0112] 获取预设深度重建网络的迭代优化模块的迭代步长,按照迭代步长以及预设公式获取初始关键帧对应的优化结果,其中,预设公式包括: [0113] r(k)=x(k)‑ρφT(φx(k‑1)‑y),其中,r(k)表示初始关键帧k的优化结果,ρ表示迭代步T (k)长,φ表示初始关键帧的采样矩阵,φ 表示初始关键帧的采样矩阵的转置,x 表示初始关键帧,y表示初始关键帧对应的传输数据;调用预设深度重建网络的特征提取模块在优化结果提取特征数据作为待卷积输入;按照预设深度重建网络的卷积重建模块处理待卷积输入为待卷积输出;将优化结果内经特征提取模块提取特征数据后的剩余数据以及待卷积输出的和作为关键帧输出结果。 [0114] 在本申请实施例中,预设深度重建网络可以由迭代优化模块、特征提取模块、卷积重建模块组成,在迭代优化模块中可以按照迭代步长对输出的初始关键帧进行优化,该优(k) (k) T (k‑1) (k)化过程可以通过预设公式r =x ‑ρφ (φx ‑y)实现,预设公式内r 表示初始关键帧T k的优化结果,ρ表示迭代步长,φ表示初始关键帧的采样矩阵,φ 表示初始关键帧的采样(k) 矩阵的转置,x 表示初始关键帧,y表示初始关键帧对应的传输数据。迭代优化模块可以将优化初始关键帧的优化结果输入特征提取模块,由特征提取模块提取优化结果内的特征数据,可以将该特征数据作为卷积重建模块的输出,从而降低卷积重建模型的数据处理量,卷积重建模块可以对特征数据进行处理,从而生成待卷积输出,可以将待卷积输出以及特征提取模块处理优化结果后剩余的不属于特征数据的剩余数据进行求和,可以将该和值作为关键帧输出结果。 [0115] 在一些申请实施例中,预设深度重建网络的卷积重建模块至少包括第一卷积单元、Soft函数、第二卷积单元以及π卷积单元;第一卷积单元与第二卷积单元之间通过Soft函数进行连接,π卷积单元接收第二卷积单元的输出作为输入;其中,第一卷积单元以及第二卷积单元分别包括两层卷积核以及一层激活函数,π卷积单元包括两层卷积核以及两层激活函数。 [0116] 在本申请实施例中,参见图6,预设深度重建模型的卷积重建模块可以由第一卷积单元、Soft函数、第二卷积单元以及π卷积单元组成,其中,第一卷积单元以及第二卷积单元可以通过卷积核对输入的视频数据进行处理,第一卷积单元与第二卷积单元之间可以通过Soft函数连接,而π卷积单元可以与第二卷积单元连接,可以接收第二卷积单元的输出,并将该输出作为π卷积单元的输入,第一卷积单元以及第二卷积单元分别包括两层卷积核以及一层激活函数,π卷积单元包括两层卷积核以及两层激活函数。可以理解的是,预设深度重建模型可以包括多个卷积重建模块,相邻的两个卷积重建模块中一个卷积重建模块的输出可以作为另一个卷积重建模块的输入。 [0117] 在另一些申请实施例中,将关键帧输出结果以及初始非关键帧输入预设重建网络以生成非关键帧输出结果,包括: [0118] 分别提取至少一个初始关键帧对应的关键帧输出结果;将各关键帧输出结果以及初始非关键帧一同作为预设重建网络的输入参数;提取预设重建网络的输出参数作为非关键帧输出结果;其中,预设卷积网络包括以下至少之一:卷积神经网络、LeNet‑5卷积神经网络、AlexNet卷积神经网络、VGG‑16卷积神经网络、ResNet卷积神经网络。 [0119] 在本申请实施例中,预设重建网络可以具体为预设卷积网络,该预设卷积网络可以包括卷积神经网络、LeNet‑5卷积神经网络、AlexNet卷积神经网络、VGG‑16卷积神经网络、ResNet卷积神经网络中至少之一,可以关键帧输出结果以及初始非关键帧均作为预设重建网络的输出,可以理解的是,针对单关键帧画面组以及双关键帧画面组,预设重建网络的输入层的通道数可以不同,例如,在双关键帧画面组内,预设重建网络的输入通道数可以对应关键帧的两组关键帧输出结果以及初始非关键帧。可以提取预设重建网络的输出参数作为非关键帧输出结果。 [0120] 图7是本申请实施例提供的另一种视频传输方法的流程图,本申请实施例是在上述申请实施例基础上的具体化,参见图7,本申请实施例提供的方法具体包括如下步骤: [0121] 步骤510、基于预设训练集训练生成预设深度重建网络。 [0122] 其中,预设训练集可以是用于训练预设深度重建网络的视频图像集。 [0123] 在本申请实施例中,可以预先使用视频图像集对预设深度重建网络进行训练,使得预设深度重建网络可以重建视频图像,解决图像传输过程中编码导致的画面质量降低的问题。 [0124] 步骤520、接收编码端发送的传输数据,其中,传输数据按照关键帧以及非关键帧对应的采样率分块压缩编码生成。 [0125] 步骤530、重建传输数据为初始关键帧以及初始非关键帧。 [0126] 步骤540、基于预设深度重建网络重建初始关键帧为关键帧,并根据关键帧指导初始非关键帧重建为非关键帧。 [0127] 步骤550、基于关键帧和非关键帧构建传输视频的画面组。 [0128] 进一步的,在上述申请实施例的基础上,基于预设训练集训练生成所述预设深度重建网络,包括: [0129] 获取预设训练集,其中,预设训练集至少包括Akiyo视频序列、Coastguard视频序列、Foreman视频序列、Mother_daughter视频序列、Paris视频序列和Silent视频序列;将预设训练集输入预先构建的初始深度重建网络,其中,初始深度重建网络至少包括迭代优化模块、特征提取模块和卷积重建模块;获取初始深度重建网络的训练结果,并按照预设损失函数确定训练结果的损失值;在损失值满足预设条件时,将初始重建网络作为预设深度重建网络;在损失值未满足预设条件时,调整初始重建网络的属性参数后继续获取训练结果的损失值,直到完成预设深度重建网络的训练。 [0130] 在本申请实施例中,可以获取包括Akiyo视频序列、Coastguard视频序列、Foreman视频序列、Mother_daughter视频序列、Paris视频序列和Silent视频序列的预设训练集,通过预设训练集对初始深度重建网络进行训练,该初始深度重建网络可以迭代优化模块、特征提取模块和卷积重建模块,获取每次初始深度重建网络的训练结果,并按照预设损失函数确定训练结果对应的损失值,将损失值与预设条件进行比较,在损失值满足预设条件时确定初始重建网络训练完成,将该初始重建网络作为预设深度重建网络,否则,对初始重建网络的属性参数进行调整,并重新使用预设训练集对调整后的初始深度重建网络进行训练直到初始深度重建网络训练完成,具体的,预设条件可以包括训练迭代次数以及损失值阈值等。 [0131] 进一步的,在上述申请实施例的基础上,设损失函数包括以下至少之一: [0132] 预 设 训 练 集 的 画 面 组 为 单 关 键 帧 时 ,预 设 损 失 函 数 为 : [0133] 预 设 训 练 集 的 画 面 组 为 双 关 键 帧 时 ,预 设 损 失 函 数 为 : [0134] 其中,N为预设训练集内画面组的个数,xkey表示预设训练集内关键帧原数据,Ikey表示预设训练集内关键帧重建结果,K为画面组内非关键帧的个数,xk表示预设训练集内关键帧原数据,Ik表示预设训练集内关键帧重建结果,Nb为关键帧块个数,Nk则为关键帧图像块大小Np,Np则为卷积重建模块的个数, 表示j次训练的输出结果。 [0135] 在一个示例性的实施方式中,图8是本申请实施例提供的一种视频传输系统架构的示例图,基于本申请实施例提供的方法提出了压缩感知网络框架,主要包括采样端和重建端,采样端分别针对关键帧和非关键帧进行自适应采样率分配采样,重建端则是对于传输过来的测量值进行原视频的重建。如图8所示,由于视频帧与帧之间往往包含着大量的冗余信息,所以对于视频的关键帧和非关键帧我们可以采用不同的采样率降低总测量值的大小以此达到更好降低带宽占用的目的。对于重建端可以将之细分为初始重建和深度重建两个阶段,在初始重建阶段根据压缩感知理论,我们获取初始重建结果,然后通过深度重建网络对初始重建的图像进行优化,最后输出重建端重建的视频结果。在框架中可以依据如存储空间、带宽等实际硬件限制,在采样端自主选择对于关键帧和非关键帧的采样率,同时对于视频数据的每一帧可以采取自适应的采样率分配的方法以更好的保留原数据信息,以更好地提升重建质量。在重建端本申请实施例对于视频的重建提供了可解释网络,使用可解释网络在提升重建质量的同时,提升网络的可解释性。 [0136] 具体的,基于上述框架的压缩感知的各阶段具体处理流程包括如下步骤: [0137] (1)依据使用者的实际需求和物理硬件限制,在采样端分别针对关键帧和非关键帧选用不同的采样率αk和αn,对应的采样率可以获得对应关键帧和非关键帧的采样矩阵分别为Sk和Sn,采样过程以采样矩阵Sk、Sn分别对原视频关键帧Xk和非关键帧Xn进行矩阵乘法运算,同时对于每一帧数据可以采用自适应采样率分配以对采样数据进行分配,最后即可分别获取关键帧采样值Yk和非关键帧采样值Yn。 [0138] Yk=Sk*Xk (1) [0139] Yn=Sn*Xn (2) [0140] (2)以采样端获取的采样值Yk和Yn作为主要数据,在不改变采样数据的基础上需要对视频信息等数据进一步进行信息整合以形成规范化的测量值,其需要包含如下的内容: [0141] 原视频采样值:作为传输数据的主体,通过采样端采样后根据不同的采样率能够获取不同整体数据压缩比的采样值,其数据量往往远小于原视频数据量,能够起到减轻带宽压力的功能。同时注意到如图9所示,如果没有获得采样矩阵,经过压缩后的数据往往无法直观的获取语义信息,特别是在低采样率的情况下更为明显,这是因为采样矩阵具有随机性且其实现了视频域到采样域的映射,在未有采样矩阵的情况下难以直接获取其逆映射。这使得攻击者无法还原出原本的视频数据,起到了保护使用者数据隐私的功能。 [0142] 采样矩阵:根据压缩感知理论,其将采样和压缩过程通过采样矩阵来完成,根据重建端网络的不同,需要选择是否将采样矩阵传输到重建端以获取更好质量的重建视频。 [0143] 视频基本信息:根据原视频文件格式获取原视频诸如分辨率、视频帧的数量等基本信息,作为测量值的头文件,以视频基本信息为基础获得与原视频格式相同的重建视频。 [0144] (3)重建端需要在获得的测量值的基础之上进行原视频的重建过程,网络实现各不相同,目前常用的方法普遍将之分为两个子阶段初始重建和深度重建,在此基础之上本申请实施例也提出了可解释网络,可在整体框架的基础之上进行具体实现。 [0145] 在本申请实施例中,基于上述的框架实现的采样端为例,采样端的压缩感知采样过程采用矩阵乘法,其可以总结为如下流程,对于原数据x进行展开后其维度可表示为N×1,即 以φ表示采样矩阵,采样矩阵维度可以表示为M×N,则其压缩感知流程可以表示为如下公式,其中y表示采样值,根据矩阵乘法相关知识可知,采样值y的维度可以表示为M×1,即 对于压缩感知任务其采样率可表示为 一般而言M远小于N,则最终同 时达到采样和压缩的功能。 [0146] y=φ*x (3) [0147] 在压缩感知采样的流程基础上,为了更灵活的适用不同尺度的数据,分块压缩感知算法BCS应运而生,分块压缩感知通常将原图像或视频帧数据按照一定的尺度B进行分块划分,最终获取B×B的块组成的分块数据,考虑到数据可能存在着多通道的情况,设通道数为l,则分块数据维度为B×B×l,而采样矩阵φ则需要根据分块尺度进行维度的对应,即其2 维度M×N需要限定为M×lB ,我们将分块压缩感知采样矩阵称之为φ′,即 则 其采样过程可以表述为如下公式: [0148] y=φ′*x (4) [0149] 传统的分块压缩感知算法往往对于每一个分块采取相同的采样率,这不利于保留原数据信息并进行重建,因此在传统压缩感知的基础上,为分块分配不同采样率是一种极为有效的提升重建质量的手段,由此进行自适应的采样率分配。可以记blur为均值滤波函数,β为一个自选超参,由于原数据其纹理复杂等程度与采样率分配应该是息息相关的,可以将原视频数据在帧内进行帧内均值滤波后,以其与原数据的残差绝对值进行权重调整后即可获得信息差,最后还需要通过信息差获取采样率最终分配以确保其分块采样后能保证整体数据采样率不发生改变,我们记最终获取的信息差为S,abs为取绝对值操作。 [0150] S=abs(x‑blur(x))*β (5) [0151] 在本申请实施例中,可以通过利用关键帧以及非关键帧各自对应的采样率的采样值对上述信息差进行截取从而获取各自对应的采样值; [0152] 具体的,通过信息差进行采样率分配的过程如下,其以公式(6)作为循环跳出条件,公式(7)(8)则是迭代循环的主体算法。首先按照公式(6)获取迭代误差,若迭代误差为0则输出分配结果Q,如果迭代误差不为0且迭代次数小于阈值则进行公式(7)的迭代,如果误差不为0且迭代次数大于阈值,则需要根据公式(8)进行迭代,在公式(7)(8)选择一个进行运算后便跳回公式(6)计算δ,并判断是否需要终止循环。 [0153] 公式之中sum函数表示求和,q表示与采样率相对应的采样值数量,sign是正负值判断函数,L表示分块数据的通道数,D则是随机从多项式分布中获取的迭代矩阵,输出结果Q与原数据分块数量一一对应以表征每一块分块数据的采样值数量。 [0154] δ=sum(Q)‑q (6) [0155] [0156] Q=Q‑sign(δ)×D (8) [0157] 最终对于任一块的采样,我们假设其分配的采样率为si,si的数值有当前采样块在Q中对应的采样值Qi唯一确定,即 其采样过程按照公式进行运算,其中 为对应采样值的采样矩阵且 而采样之后的数据量mi可以表述为 即以采样率对每一块的数据总量进行计算并向下取整。 [0158] [0159] 最终我们将所有的采样数据yi按照实施例一所述和其它相关信息组成采样端向重建端传输的数据。 [0160] 在本申请实施例中,基于上述的框架实现的重建端为例,尽管随着深度学习浪潮的兴起,以深度神经网络为基础的压缩感知网络取得了重建效果的极大提升,但其往往受到“黑箱网络”的困扰,其网络结构缺乏可解释性,为了解决这个问题,本申请提出了可解释重建网络,其在考虑到了帧间信息以及关键帧对非关键帧的指导的同时利用深度学习的方法模拟传统软阈值迭代算法ISTA流程,获得了更好视频重建质量的同时提升了视频压缩感知网络的性能。网络结构如图10所示,其同样分为采样端和重建端,在重建端对于关键帧采取深度展开的迭代收缩阈值算法进行重建,同时将关键帧迭代中的信息用以知道非关键帧的迭代优化的过程之中。 [0161] 在初始重建阶段,我们通过采样矩阵直接重建出与原视频大小相同的初始重建结果,其作为深度重建阶段的输入,通过深度重建阶段逐步优化重建结果,最后输出重建质量较好的视频帧。 [0162] 在深度重建阶段,对于GOP中的每一帧其重建过程采用结构一致的模块进行串联,通过串联的模块逐步迭代的优化视频帧的质量,不过为了减轻计算量,在基于关键帧对于视频重建质量有着更高的影响的前提下,我们对于关键帧采取可解释网络,而对于非关键帧则使用计算量较少的简单串联卷积CNN网络。 [0163] 关键帧深度重建网络的结构如图11所示,其主要分为两个阶段,第一阶段获取梯(k)度迭代后的值r ,而后通过D模块进行特征的提取作为后续工作的输入,同时将未处理的r(k) 以残差的方式与输出进行连接。第二阶段则是利用soft连接起来的H和 模块记性近端(k) (k) 迭代并经过最终特征的融合得到g ,最终通过残差得到当前阶段的输出为x [0164] 本申请实施例中重建过程包括如下阶段,第一阶段通过神经网络学习迭代步长ρ(k) T来对输入值x 进行迭代,φ和φ 分别表示采样矩阵和其转置。 [0165] r(k)=x(k)‑ρφT(φx(k‑1)‑y) (10) [0166] 在近端迭代的第二阶段,由多层卷积核构成的H和 使用soft进行连接,通过神经网络进行迭代优化 [0167] [0168] 其中核心模块H、 以及用以融合特征的的π模块结构如图12所示,其中H、 主要由两层卷积核以及一层激活函数PReLU构成,π模块则是由两层PReLU激活函数和两层卷积核组成,其中π模块的最后一层卷积核输出通道为1已达到融合特征的目的,其中参数k3为卷积核尺度,p1表示卷积核填充一位,32则表示其输入通道数。 [0169] 在本申请实施例中,提供的可解释重建网络的训练过程如下: [0170] 训练集采用HEVC测试视频序列,为了泛化训练数据使用了常用的数据增强手段如随机裁剪、翻转等,随机裁剪尺寸为96*96,视频帧序列组GOP的大小设置为8。测试集采用了6个CIF视频序列,分别为Akiyo,Coastguard,Foreman,Mother_daughter,Paris,Silent。 [0171] 对于压缩感知的参数,压缩感知的采样部分使用分块采样,分块大小BlockSize设置为32*32,对于关键帧采样率设置为0.5,对于非关键帧设置为0.01和0.1。 [0172] 针对单关键帧GOP和双关键帧GOP,分别采用两种Loss函数,其本质都是原始图像和重建图像的L2 Loss。公式如下,其中参数分别解释如下: [0173] N:训练集中GOP组的个数。 [0174] xkey和Ikey:分别表示关键帧原数据和重建结果,由于考虑到GOP组中双关键帧与单关键帧的区别,使用右上角的角标(1)(2)加以区分。 [0175] K:非关键帧的个数。 [0176] xk和Ik:与关键帧同理,分别表示非关键帧原数据和重建结果,由于GOP中包含多个非关键帧,所以以求和的方式展现公式,k取值从1开始遍历到K,同时右上角使用角标(i)表示非关键帧加以区分。 [0177] Nb、Nk与Np:Nb为关键帧块个数,Nk则为关键帧图像块大小Np,Np则为迭代阶段个数,通过将每一轮迭代产生的深度重建图像 加入loss函数以更好提升重建质量。 [0178] [0179] [0180] 训练环境为Ubuntu20.04LTS系统,深度学习框架使用Pytorch:1.8.0CUDA:10.0,使用4张GeForce RTX 3090进行神经网络的训练。 [0181] 图13是本申请实施例提供的一种视频传输装置的结构示意图,该装置可执行本申请任意实施例提供的视频传输方法,具备执行方法相应的功能模块和有益效果。该装置可以由软件和/或硬件实现。如图13所示,本申请实施例提供的装置具体包括: [0182] 帧获取模块601,用于确定待传输视频的至少一组画面组的关键帧以及非关键帧。 [0183] 采样率模块602,用于确定关键帧以及非关键帧对应的采样率。 [0184] 采样传输模块603,用于按照各采样率将对应的画面组分块压缩编码为传输数据,并发送传输数据至解码端。 [0185] 在一些申请实施例中,采样率模块602具体用于:针对所述关键帧和所述非关键帧分别预先配置固定的采样率;基于编码端的硬件限制条件确定关键帧以及非关键帧对应的采样率。 [0186] 在一些申请实施例中,采样传输模块603包括: [0187] 数据分块单元,用于将画面组内关键帧以及非关键帧按照预设尺度划分为分块数据。 [0188] 分块采样率单元,用于依据各采样率分别确定关键帧以及非关键帧的分块数据分别对应的分块采样率。 [0189] 数据采样单元,用于按照分块采样率采样对应的分块数据为采样分块数据; [0190] 数据编码单元,用于将各采样分块数据作为传输数据。 [0191] 在一些申请实施例中,分块采样率单元,具体用于:按照关键帧以及非关键帧的均值滤波结果与原数据的差值确定各分块数据内像素点的信息差;依据信息差确定对应的分块数据内像素点的采样值数量;按照分块数据内所有像素点的采样值数量确定迭代误差;在迭代误差满足预设条件时,将采样值数量对应的采样率作为对应的分块数据的分块采样率;在迭代误差不满足预设条件时,按照预设分配公式重新分配采样值数量并重新确定迭代误差直到确定出所有分块数据的分块采样率。 [0192] 在一些申请实施例中,分块采样率单元内按照关键帧以及非关键帧的均值滤波结果与原数据的差值确定各分块数据内像素点的信息差,包括:对关键帧以及非关键帧内的每帧视频图像分别进行帧内均值滤波以确定每帧视频图像内每个像素点分别对应的均值滤波结果;确定各分块数据内像素点的原始数据与均值滤波结果的差值,并将差值与预设自选超参的乘积作为信息差。 [0193] 在一些申请实施例中,分块采样率单元内依据信息差确定对应的分块数据内像素点的采样值数量,包括: [0194] 在分块数据归属的视频图像为关键帧时,按照关键帧的第一采样率分别截取分块数据内像素点的信息差确定采样值数量; [0195] 在分块数据归属的视频图像为非关键帧时,按照非关键帧的第二采样率分别截取分块数据内像素点的信息差确定采样值数量。 [0196] 在一些申请实施例中,分块采样率单元内按照分块数据内所有像素点的初始分块采样值确定迭代误差,包括: [0197] 确定分块数据内所有像素点的采样值数量的求和值; [0198] 将求和值与分块数据对应的预设采样数量的差值作为迭代误差。 [0199] 在一些申请实施例中,分块采样率单元内预设分配公式包括以下至少之一; [0200] [0201] Q=Q‑sign(δ)×D; [0202] 其中,Q表示采样值数量,L表示分块数据的通道数,δ表示迭代误差,D表示随机从多项式分布内选择的迭代矩阵,sign函数表示正负值判断函数。 [0203] 在一些申请实施例中,分块采样率单元内将采样值数量对应的采样率作为对应的分块数据的分块采样率,包括: [0204] 针对各分块数据确定对应的分块数据维度以及采样值数量; [0205] 将采样值数量与分块数据维度的比值作为分块数据对应的分块采样率。 [0206] 在一些申请实施例中,装置中关键帧的第一采样率大于非关键帧的第二采样率。 [0207] 图14是本申请实施例提供的一种视频传输装置的结构示意图,该装置可执行本申请任意实施例提供的视频传输方法,具备执行方法相应的功能模块和有益效果。该装置可以由软件和/或硬件实现。如图14所示,本申请实施例提供的装置具体包括: [0208] 数据接收模块701,用于接收编码端发送的传输数据,其中,传输数据按照关键帧以及非关键帧对应的采样率分块压缩编码生成。 [0209] 初始重建模块702,用于重建传输数据为初始关键帧以及初始非关键帧。 [0210] 深度重建模块703,用于基于预设深度重建网络重建初始关键帧为关键帧,并根据关键帧指导初始非关键帧重建为非关键帧。 [0211] 画面组模块704,用于基于关键帧和非关键帧构建传输视频的画面组。 [0212] 在一些申请实施例中,深度重建模块703包括: [0213] 关键帧重建单元,用于按照预设深度重建网络处理初始关键帧,并获取深度重建网络的关键帧输出结果。 [0214] 非关键帧重建单元,用于将关键帧输出结果以及初始非关键帧输入预设重建网络以生成非关键帧输出结果。 [0215] 迭代执行单元,用于重复执行上述过程直到关键帧输出结果以及非关键帧输出结果满足深度重建条件,将关键帧输出结果作为关键帧以及非关键帧输出结果作为非关键帧。 [0216] 在一些申请实施例中,关键帧重建单元具体用于:获取预设深度重建网络的迭代优化模块的迭代步长,按照迭代步长以及预设公式获取初始关键帧对应的优化结果,其中,预设公式包括: [0217] r(k)=x(k)‑ρφT(φx(k‑1)‑y),其中,r(k)表示初始关键帧k的优化结果,ρ表示迭代步T (k)长,φ表示初始关键帧的采样矩阵,φ 表示初始关键帧的采样矩阵的转置,x 表示初始关键帧,y表示初始关键帧对应的传输数据; [0218] 调用预设深度重建网络的特征提取模块在优化结果提取特征数据作为待卷积输入; [0219] 按照预设深度重建网络的卷积重建模块处理待卷积输入为待卷积输出; [0220] 将优化结果内经特征提取模块提取特征数据后的剩余数据以及待卷积输出的和作为关键帧输出结果。 [0221] 在一些申请实施例中,关键帧重建单元中预设深度重建网络的卷积重建模块至少包括第一卷积单元、Soft函数、第二卷积单元以及π卷积单元; [0222] 第一卷积单元与第二卷积单元之间通过Soft函数进行连接,π卷积单元接收第二卷积单元的输出作为输入; [0223] 其中,第一卷积单元以及第二卷积单元分别包括两层卷积核以及一层激活函数,π卷积单元包括两层卷积核以及两层激活函数。 [0224] 在一些申请实施例中,非关键帧重建单元具体用于:分别提取至少一个初始关键帧对应的关键帧输出结果; [0225] 将各关键帧输出结果以及初始非关键帧一同作为预设重建网络的输入参数; [0226] 提取预设重建网络的输出参数作为非关键帧输出结果; [0227] 其中,预设卷积网络包括以下至少之一:卷积神经网络、LeNet‑5卷积神经网络、AlexNet卷积神经网络、VGG‑16卷积神经网络、ResNet卷积神经网络。 [0228] 在一些申请实施例中,深度重建条件包括以下至少之一: [0229] 预设深度重建网络以及预设重建网络的调用次数大于或等于预设阈值; [0230] 关键帧输出结果以及非关键帧输出结果的图像质量满足预设质量要求。 [0231] 在一些申请实施例中,还包括模型训练模块,用于基于预设训练集训练生成预设深度重建网络。 [0232] 在一些申请实施例中,模型训练模块具体用于:获取预设训练集,其中,预设训练集至少包括Akiyo视频序列、Coastguard视频序列、Foreman视频序列、Mother_daughter视频序列、Paris视频序列和Silent视频序列; [0233] 将预设训练集输入预先构建的初始深度重建网络,其中,初始深度重建网络至少包括迭代优化模块、特征提取模块和卷积重建模块; [0234] 获取初始深度重建网络的训练结果,并按照预设损失函数确定训练结果的损失值; [0235] 在损失值满足预设条件时,将初始重建网络作为预设深度重建网络; [0236] 在损失值未满足预设条件时,调整初始重建网络的属性参数后继续获取训练结果的损失值,直到完成预设深度重建网络的训练。 [0237] 在一些申请实施例中,模型训练模块预设损失函数包括以下至少之一: [0238] 预 设 训 练 集 的 画 面 组 为 单 关 键 帧 时 ,预 设 损 失 函 数 为 : [0239] 预 设 训 练 集 的 画 面 组 为 双 关 键 帧 时 ,预 设 损 失 函 数 为 : [0240] 其中,N为预设训练集内画面组的个数,xkey表示预设训练集内关键帧原数据,Ikey表示预设训练集内关键帧重建结果,K为画面组内非关键帧的个数,xk表示预设训练集内关键帧原数据,Ik表示预设训练集内关键帧重建结果,Nb为关键帧块个数,Nk则为关键帧图像块大小Np,Np则为卷积重建模块的个数, 表示j次训练的输出结果。 [0241] 图15是本申请实施例提供的一种电子设备的结构示意图,该电子设备包括处理器10、存储器11、输入装置12和输出装置13;电子设备中处理器10的数量可以是一个或多个,图15中以一个处理器10为例;电子设备中处理器10、存储器11、输入装置12和输出装置13可以通过总线或其他方式连接,图15中以通过总线连接为例。 [0242] 存储器11作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本申请实施例中的装置对应的模块(帧获取模块601、采样率模块602以及采样传输模块603,和/或,数据接收模块701、初始重建模块702、深度重建模块703和画面组模块704)。处理器10通过运行存储在存储器11中的软件程序、指令以及模块,从而执行电子设备的各种功能应用以及数据处理,即实现上述的方法。 [0243] 存储器11可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据电子设备的使用所创建的数据等。此外,存储器11可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器11可进一步包括相对于处理器10远程设置的存储器,这些远程存储器可以通过网络连接至电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。 [0244] 输入装置12可用于接收输入的数字或字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入。输出装置13可包括显示屏等显示设备。 [0245] 本申请实施例还提供一种包含计算机可执行指令的存储介质,计算机可执行指令在由计算机处理器执行时用于执行一种视频传输方法,该方法包括: [0246] 确定待传输视频的至少一组画面组的关键帧以及非关键帧; [0247] 确定所述关键帧以及所述非关键帧对应的采样率; [0248] 按照各所述采样率将对应的所述画面组分块压缩编码为传输数据,并发送所述传输数据至解码端。 [0249] 和/或, [0250] 计算机可执行指令在由计算机处理器执行时用于执行一种视频传输方法,该方法还包括: [0251] 接收编码端发送的传输数据,其中,所述传输数据按照关键帧以及非关键帧对应的采样率分块压缩编码生成; [0252] 重建所述传输数据为初始关键帧以及初始非关键帧; [0253] 基于预设深度重建网络重建所述初始关键帧为关键帧,并根据所述关键帧指导所述初始非关键帧重建为非关键帧; [0254] 基于所述关键帧和所述非关键帧构建传输视频的画面组。 [0255] 通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本申请可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read‑Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。 [0256] 值得注意的是,上述装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。 [0257] 本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、装置、设备中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。 [0258] 在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。相应的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD‑ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。 [0259] 以上内容参照附图说明了本申请的优选实施例,并非因此局限本申请的权利范围。本领域技术人员不脱离本申请的范围和实质内所作的任何修改、等同替换和改进,均应在本申请的权利范围之内。 |