基于卷积网络的时空视频压缩感知方法与流程

文档序号:16128422发布日期:2018-12-01 00:02阅读:184来源:国知局
本发明属于视频处理
技术领域
,主要涉及视频压缩感知,具体是一种基于卷积网络的时空视频压缩感知方法,可用于实现实时高质量的视频压缩感知重构。
背景技术
压缩感知(cs)是一种信号压缩采样理论,可以在低于奈奎斯特采样率下对信号进行采样,并由重构算法恢复出原始信号。该理论已经成功运用于各种信号处理领域,如医学成像,雷达成像等。在硬件系统诸如单像素相机的出现和普及后,压缩感知被运用于静态图像压缩上,并展现出卓越的潜力。如今压缩感知不再局限于静态图像,而是被推广到视频中。与静态图像相比,视频压缩过程还需要考虑图像时间维上的相关性,因此运用压缩感知(vcs)理论处理视频更加复杂。采用压缩感知理论处理视频的方法大致为空间视频压缩感知和时间视频压缩感知,二者的观测过程分别用空间复用相机(smc)和时间复用相机(tmc)实现。对于空间vcs,视频是对输入视频逐帧观测及重构,而时间vcs是对多个输入视频连续帧进行统一观测及重构。近年来,许多方法已经实现了视频压缩感知,并获得了较好的视频重构效果。但由于采取的迭代优化计算方法的时间复杂度很高,无法实现实时重构视频,或者说实时性差,无法满足实际需求。随着深度学习技术的发展,深度神经网络(dnn)被广泛应用于图像和视频处理领域,如cs、超分辨、去雨、去噪及修复,并取得了显著的成就。由于dnn具有线下训练,线上测试的特点,一旦网络训练完成,测试过程只需要进行前向传播就可以完成,因此重构时间相对于传统方法大大缩短。在已有的基于dnn的vcs的方法中,有的采用全连接网络进行时间压缩感知重构,因参数量过大导致时间复杂度高,无法实现实时重构;有的采用卷积神经网络进行空间压缩感知重构,在初恢复视频的基础上增强视频帧间关系以获得更好的视频重构效果。由于这些方法都只在空间(或时间)单个维度上进行压缩,也称为观测,导致获得的观测在被压缩的维度上的分辨率很低。使得在进行视频重构时,重构结果在压缩维度上的像素点间的相关性不足,被压缩维度的信息很难被恢复,从而降低了整个视频重构的结果。技术实现要素:本发明的目的在于针对上述现有技术的不足,提出了一种时空分辨率均衡的、重构性能更好,重构视频结果稳定的基于卷积网络的时空视频压缩感知方法。本发明是一种基于卷积网络的时空视频压缩感知方法,其特征在于,包括有如下步骤:1)制备训练数据集:下载所需不同分辨率的视频,对下载的所有视频进行预处理,将所下载视频依次转为灰度的视频帧,并按空间位置裁剪为一定尺寸的小块,将每一个空间位置的小块保存为图片,存入不同的子文件夹,并按照视频时间帧顺序命名,即1.jpg、2.jpg,以此类推;所有子文件夹最后组成了一个整的文件夹,并将整的文件夹作为训练数据集;测试数据集为随机选取的任意视频,转为灰度视频保存在文件夹内;2)设计时空视频压缩感知方法的网络结构:网络结构包括有观测部分和重构部分,观测部分将输入视频块输入到一个三维卷积层后作为观测输出,重构部分将观测输出顺次连接到一个三维反卷积层、若干“时空块”、一个bn层、一个三维卷积层后得到重构视频块;每个“时空块”为四个三维卷积层顺次串行连接,并在每个三维卷积层前添加bn层,再将第一个三维卷积层的输出端和第四个三维卷积层的输出端进行残差连接;3)根据设计好的网络结构编写训练及测试文件:3a)建立项目文件夹,文件夹中分别建立训练、测试、网络结构、网络设置、函数等程序文件;3b)设置和编写相关文件内容:在网络设置文件中设置合理的网络超参数,并在函数文件中写入训练及测试代码中所需要的函数;在网络结构文件中根据时空视频压缩感知方法编写网络结构;3c)在训练文件中定义网络的训练过程:从训练数据集中的子文件夹按顺序取若干视频帧组成一个视频块作为时空视频压缩感知方法的网络输入视频块,由时空视频压缩感知方法的网络输出的重构视频块与输入视频块计算均方误差重构损失,将重构损失进行反向传播对网络参数进行更新;3d)在测试文件中定义网络的测试过程:将测试数据集中的灰度视频转为视频帧,按照时间顺序将灰度帧划分为许多连续的若干帧,每一个连续的若干帧作为一个输入视频块,输入到时空视频压缩感知方法的网络获得相应的重构视频块,重构视频块包含与输入视频块相同的帧数,将重构视频块依照时间顺序排列得到重构视频,为时空视频压缩感知方法的网络的测试结果;4)训练时空视频压缩感知方法的网络:通过网络结构文件加载网络结构以及所涉及到的参数,并对所有参数初始化,通过网络设置文件加载超参数,采用随机梯度下降算法,按照训练文件定义的训练过程,使用训练数据集对时空视频压缩感知方法的网络进行多次训练更新参数,训练结束得到最终参数模型;5)测试时空视频压缩感知方法的网络:通过网络结构文件加载网络结构,加载最终参数模型作为网络结构参数,按照测试文件定义测试过程,使用测试数据集测试时空视频压缩感知方法的网络,得到实时、高质量、高时空平衡性的时空视频压缩感知的重构测试视频结果。本发明设计的时空视频压缩感知方法的网络的观测部分采用了三维卷积层,可以获得时空分辨率均衡观测结果。重构部分使用了三维反卷积层和“时空块”,能够在减少网络参数量、移除块效应的同时提高在重构视频时空维上的均衡性,最终实现实时、高质量、高时空平衡性的视频重构。本发明与现有技术相比具有以下优点:1.观测过程增强了时空压缩的均衡性:在压缩感知中,由于视频观测和静态图像观测具有较大差异,处理视频观测不仅要考虑视频空间维上的帧内像素点间的相关性,还需要考虑视频时间维上的帧与帧之间的相关性。本发明弥补了已有方法只在时间维或空间维上进行压缩观测,使得观测的时空均衡性较差以及在时间和空间维上的重构效果的差异较大,导致重构视频质量较差,本发明采用了一种新颖的时空同时压缩的观测技术,使得观测的时空均衡性较强,能够得到较好的重构视频质量。2.能够实时高质量进行视频重构:由于已有的视频观测方法在观测过程中忽略了时空均衡性,使得重构视频质量较差。除此之外,传统vcs方法都采用迭代优化的计算方法,这使得计算复杂度很高,无法实现视频重构。已有的一些基于神经网络的视频压缩感知方法采用的网络参数量大,使得视频重构时间较长,因而无法实时重构。本发明的基于全卷积神经网络视频压缩感知方法所使用的参数量较小,前向传播过程时间极短,可以实现实时重构,而且时空视频压缩感知方法的网络中的重构部分中的“时间-空间块”可以增强时空相关性,这与获得的时空均衡性强的观测结合起来可以极大的提升视频重构效果,获得高质量的重构视频。3.本发明重构视频稳定性高,能够保证重构视频的每一帧都具有相近的较好重构质量,不存在重构视频质量帧间不均匀的重构结果导致的视觉感受不适应的问题,也能更科学地进行视频文件压缩与传输,保证了压缩与重构过程中视频的完整性。附图说明图1为本发明的基于卷积网络的时空视频压缩感知方法的流程图;图2为本发明的时空视频压缩感知方法的网络结构图;图3为本发明的重构部分中的“时间-空间块”单元的示意图;图4为本发明测试时重构视频帧的结果。具体实施方式下面结合附图和实例对本发明进行详细说明。实施例1如今压缩感知不再局限于静态图像,而是被推广到视频中。与静态图像相比,视频压缩过程还需要考虑图像时间维上的相关性,因此运用压缩感知(vcs)理论处理视频更加复杂。视频压缩感知对视频进行压缩采样,减少存储空间并极大地增加传输速度,被传输的数据进行重构后获得的重构视频可以进行更加复杂的任务,如目标检测及追踪,现有方法都只在空间(或时间)单个维度上进行压缩,也称为观测,导致获得的观测在被压缩的维度上的分辨率很低。使得在进行视频重构上,重构结果在压缩维度上的像素点间的相关性不足,被压缩维度的信息很难被恢复,降低了整个视频重构的结果,重构视频质量也不稳定,针对此现象,本发明在探讨一种更好的方法,提出一种基于卷积网络的时空视频压缩感知方法,参见图1,包括有如下步骤:1)制备训练数据集:下载所需不同分辨率的视频,为了简化训练过程,对下载的所有视频进行预处理,将所下载视频依次转为灰度的视频帧,并按空间位置裁剪为一定尺寸的小块,将每一个空间位置的小块保存为图片,存入不同的子文件夹,并按照视频时间帧顺序命名,即1.jpg、2.jpg,依此类推,如n.jpg就代表该图片来自视频的第n帧;所有子文件夹最后组成了一个整的文件夹,并将整的文件夹作为训练数据集;测试数据集为随机选取的任意视频,同样需要转为灰度视频帧保存在文件夹内。2)设计时空视频压缩感知方法的网络结构:时空视频压缩感知方法的网络结构包括有观测部分和重构部分,观测部分将输入视频块输入到一个三维卷积层后作为观测输出,三维卷积层在空间维度和时间维度分别进行卷积操作,通过分别调整三维卷积层的卷积核在空间和时间的压缩率,能够将观测信息合理分配到空间维和时间维上,去获得时空分辨率均衡的观测,已有的方法往往采用二维卷积层在每个时间帧上去进行相同的空间维观测,这样会造成无法提取到视频时间维的相关性,造成重构视频在时间维上效果较差;重构部分将观测输出顺次连接到一个三维反卷积层、若干“时空块”、一个bn层、一个三维卷积层后得到重构视频块;每个“时空块”为四个三维卷积层顺次串行连接,并在“时空块”的每个三维卷积层前添加bn层,再将第一个三维卷积层的输出端和第四个三维卷积层的输出端进行残差连接;三维反卷积层对应观测中使用的三维反卷积层,能够将观测信息进行升维获得初恢复结果,升维的目的是为了将观测信息的解空间映射到视频的解空间,便于后续的“时空块”为初恢复结果添加更多细节信息。“时空块”采用残差连接能够防止网络梯度弥散,加深网络的同时为视频添加细节信息,增强初恢复结果的时空相关性,在保证了重构视频的恢复效果后,最后用一个三维卷积层起整合功能,进一步增强帧间关系。3)根据设计好的网络结构编写训练及测试文件:3a)建立项目文件夹,文件夹中分别建立训练、测试、网络结构、网络设置、函数等程序文件;3b)设置和编写相关文件内容:在网络设置文件中设置合理的网络超参数,包括batchsize,epoch等。并在函数文件中写入训练及测试代码中所需要的函数;在网络结构文件中根据时空视频压缩感知方法编写网络结构。3c)在训练文件中定义网络的训练过程:从训练数据集中的子文件夹按顺序取t个视频帧组成一个视频块作为时空视频压缩感知方法的网络输入视频块,t的取值与时空视频压缩感知方法的网络内观测部分在时间维的压缩率呈正相关,往往需要根据的观测部分内的空间压缩率进行调整,达到时间维压缩率和空间维压缩率以一个相对均衡比例。输入视频块经过网络前向传播,获得时空视频压缩感知方法的网络输出的重构视频块,重构视频块与输入视频块计算均方误差重构损失,均方误差重构损失计算输入视频块和重构视频块每一个像素点的距离的平方和,重构损失进行反向传播,采用梯度下降算法对网络参数进行更新,至此完成一次训练,当训练数据集达到使用次数的上限,则训练结束,否则重复训练。3d)在测试文件中定义网络的测试过程:为了实现全图重构,测试时将任意测试视频转为灰度帧后不需要进行裁剪,将所有的测试数据集中的灰度帧划分为许多连续的若干帧,从视频第一帧起每t帧为一个视频块,数目不足的补零,每一个连续的t帧作为一个输入视频块,输入到时空视频压缩感知方法的网络获得相应的重构视频块,重构视频块包含与输入视频块相同的帧数,将最后一个重构视频块未补零的前几帧作为该视频重构块的重构结果,将重构视频块依照时间顺序排列得到重构视频,为时空视频压缩感知方法的网络的测试结果。4)训练时空视频压缩感知方法的网络:通过网络结构文件加载网络结构以及所涉及到的参数,并对所有参数初始化,通过网络设置文件加载超参数,采用随机梯度下降算法,按照训练文件定义的训练过程,使用本发明的训练数据集对时空视频压缩感知方法的网络进行多次训练更新参数,训练结束得到最终参数模型。5)测试时空视频压缩感知方法的网络:通过网络结构文件加载网络结构,加载最终参数模型作为网络结构参数,按照测试文件定义测试过程,使用测试数据集测试时空视频压缩感知方法的网络,得到实时、高质量、高时空平衡性的时空视频压缩感知的重构测试视频结果。由于已有的视频观测方法在观测过程中通常只在时间维或者空间维进行压缩采样,忽略了时空均衡性,使得重构视频质量较差。除此之外,传统的vcs方法都采用传统的迭代优化计算方法,这使得时间复杂度高,无法实现实时视频重构。已有的一些基于神经网络的视频压缩感知方法使用的网络参数量大,使得视频重构时间较长,同样无法实现实时重构。本发明中采用的基于卷积网络的时空视频压缩感知方法所使用的参数量小,前向传播过程时间短,可以实现实时视频重构。于此同时,时空视频压缩感知方法的网络中重构部分中的“时间-空间块”可以增强重构视频时恢复视频信息的时空相关性,这与获得的时空均衡性强的观测结合起来可以极大提升视频重构效果,从而获得高质量且稳定的重构视频。实施例2基于卷积网络的时空视频压缩感知方法同实施1,步骤2)中所述的设计时空视频压缩感知方法的网络结构,参见图2,包括有如下步骤:2a)基于卷积网络的时空视频压缩感知方法观测部分的三维卷积层设置:设置三维卷积层的卷积核的大小为t×3×3,其中t=16为卷积核在时间维上的尺寸,3×3为空间维上的尺寸,并设置卷积过程中不补零,步长为3;输入视频块尺寸为t×h×w,t是输入视频块包含的帧数,h×w是每一帧的空间维尺寸,且h和w均为3的倍数;卷积核数目为1时,空间压缩率为9,时间压缩率为t,观测率设置卷积核的数目为n,则观测率当n=9,t=16时观测率因此这种观测方式能够获得在时间及空间维都压缩了的时空分辨率均衡的观测,有助于重构部分更好地恢复出时间和空间维的信息。2b)重构部分将观测输出首先连接到一个三维反卷积层重构部分三维反卷积层的设置:设置三维反卷积层的卷积核需根据卷积及反卷积的对称性,当反卷积过程的卷积核尺寸大小与对应的卷积过程的卷积核尺寸大小相同时,反卷积的输出就与卷积的输入尺寸相同,因此设置三维反卷积层的卷积核设置应与观测过程的三维卷积层的卷积核设置相同,即尺寸为t×3×3,数目为n,卷积过程中不补零,步长为3。2c)三维反卷积层再连接到若干“时空块”重构部分的“时空块”的设计:每个“时空块”为四个三维卷积层顺次串行连接,并在“时空块”的每个三维卷积层前添加bn层,再将第二个三维卷积层的输入端和第四个三维卷积层的输出端进行残差连接,残差连接将第二个,第三个,第四个三维卷积层构成残差块;每个“时空块”则由一个三维卷积层和一个残差块串行连接。2d)重构部分的三维卷积层设置:重构部分最后的三维卷积层的卷积核尺寸为16×1×1,数目为16,步长为1,卷积过程中不补零。卷积过程中不补零的三维卷积层进一步整合、增强帧间信息,获得最终的重构视频帧。本发明设计时空视频压缩感知方法的网络结构在观测部分采用了三维卷积层,分别对输入视频块进行时间维和空间维的压缩采样,相较于已有方法只在时间维和空间维单个维度上进行采样,能够获得时空均衡性的采样,相较于已有方法采用高斯矩阵作为观测矩阵,而采用卷积学习的方式,能够进行更合理的压缩采样;时空视频压缩感知方法的网络的重构部分由一个三维反卷积层、若干“时空块”、一个bn层、一个三维卷积层构成,三维反卷积层和三维卷积层是对称操作,用于对观测结果进行升维处理,将观测结果扩展到和输入视频块相同的维度,有利于后续网络进行进一步的恢复,“时空块”内采用残差连接,能够为重构视频添加更多细节信息,这是因为残差连接学习的是残差块的输入和输出之间的差值,使得它更关注于视频内的细节信息,三维反卷积层起网络的整合作用,使得网络的最后重构视频块和输入视频块具有相同的大小。实施例3基于卷积网络的时空视频压缩感知方法同实施1-2,步骤2c)中所述的每个“时空块”则由一个三维卷积层和一个残差块串行连接,参见图3,包括有如下步骤:2c1)每一个“时空块”内的三维卷积层设置:三维卷积层的卷积核大小为16×1×1,数目为16,并设置卷积过程中不补零,步长为1;由于卷积核的空间维尺寸为1×1,因此能够整合每一个空间位置的帧间信息,具有增强帧间关系的能力。2c2)每一个“时空块”内的残差块设置:残差块包含三个三维卷积层,三维卷积层的卷积核的尺寸分别为16×3×3、64×1×1和32×3×3,数目分别为64,32,16,设置卷积过程均不补零,步长均为1;由于空间维尺寸为3×3的卷积核能够融合时空信息,空间维尺寸为1×1的卷积核能够整合帧间信息,因此这样的设置可以增强时空信息,将残差块的输入端连接到残差块的输出端进行求和计算,并在求和计算后加tanh激活层。2c3)在2c1)和2c2)的每一个三维卷积层前加一个bn层以加快收敛速度、然后加prelu以增强网络的非线性能力;2c4)可以对多个“时空块”进行级联,即将上一个“时空块”的输出作为下一个“时空块”的输入以扩大网络容量,每一个块的结构相同,如2c1)-2c3)所述完成一个“时空块”的搭建。本发明中可以是指根据实际情况,采用一个“时空块”或者“多个时空块”,“时空块”的数目和重构视频时间是折衷关系,换句话说,对实时性要求高,则可以采用一个“时空块”。本发明设计时空视频压缩感知方法的网络重构部分的“时空块”由一个三维卷积层和一个残差块串行连接,主要功能部分来自于残差块,残差块由三个三维卷积层串行连接,并将第一个三维卷积层的输入连接到第三个三维卷积层的输出,即将第一个三维卷积层的输入值和第三个三维卷积层的输出值相加,共同作为网络下一层的输入,这样相当于残差块只学习了残差块输入和残差块输出的差值,残差块输入和输出之间的细小差异都会被放大进行处理,使得网络能够学习到重构视频时为视频添加细节信息。实施例4基于卷积网络的时空视频压缩感知方法同实施1-3,步骤3c)中所述的在网络设置文件中设置合理的网络超参数,包括有如下步骤:设置每次训练输入时空视频压缩感知方法的网络的输入视频块个数batchsize为20~40,batchsize可以根据网络的深度以及训练数据集内的视频大小做适当调整,整个训练过程训练数据集使用的次数epoch为3~7,epoch可以根据训练数据集内的视频数目做适当调整。实施例5基于卷积网络的时空视频压缩感知方法同实施1-4,步骤3c)中所述的在训练文件中定义网络的训练过程,参见图1,包括有如下步骤:3c1)训练数据集输入视频块处理:从第一个子文件夹开始,按照图片名中的数字从小到大每t=16张图片组成一个输入视频块,每次取输入视频块的间隔为一张图片,如1.jpg-16.jpg为第一个输入视频块,2.jpg-17.jpg为第二个输入视频块,以此类推;时空视频压缩感知方法的网络每次输入batchsize个连续的视频块,即第1-batchsize个输入视频块作为第一次输入,第2-batchsize+1个输入视频块作为第二次输入,依此类推,若每张图片尺寸为h×w,那么每一次输入包含q=batchsize×t×w×h个像素值。对于大规模的训练数据集,可以适当增大batchsize的数目,使得每次训练的数据增加,加快训练的时间。3c2)时空视频压缩感知方法的网络一次训练过程:将每次输入时空视频压缩感知方法的网络的batchsize个连续的视频块内的每个像素值x0先通过的操作将像素值归一化到[-1,1],然后将x输入定义好的网络中获得相应的重构结果x',计算重构结果x'及输入x间的均方误差作为重构误差将重构误差进行反向传播,更新网络参数,完成网络的一次训练过程。3c3)重复3c1)-3c2),反复执行训练过程,直到当前子文件夹中的数据使用完,开始使用下一个子文件夹中的数据进行训练,每迭代500次保存一次网络模型,网络模型包含网络结构及参数,直到将所有子文件夹中的数据都使用完,完成一次训练数据集训练。3c4)判断是否完成epoch次训练数据集训练,是则训练结束,否则重复3c1)-3c4)。基于卷积网络的时空视频压缩感知方法采用了神经网络的训练方式,不使用传统的迭代优化算法,传统的迭代优化算法重构视频对每一个视频都迭代优化多次,从而重构时间长,不能实现实时重构,而本发明能够有效地将计算负担转移到网络训练过程,测试的时候只需要输入视频进行网络前向传播则可以得到网络重构视频,极大的节省了计算时间,实现实时视频重构。实施例6基于卷积网络的时空视频压缩感知方法同实施1-5,步骤3d)中所述的根据设计好的网络结构将测试代码写入测试文件,参见图1,包括有如下步骤:3d1)测试数据集输入视频块处理:测试数据集为随机选取的任意视频,转为灰度视频帧不进行剪裁保存在文件夹内,对于一个含有p个视频帧,每个视频帧尺寸为h0×w0的测试视频,令每t帧组成一个输入视频块,如:1~t灰度帧作为第一个输入视频块,2t~3t则组成第二个输入视频块,则可以计算完整的输入视频帧的数目为剩余的视频帧数目p=p-n×t。3d2)对于前n×t帧:依次读取视频帧,当h0或w0不是观测卷积核空间尺寸3的倍数时,需要在最后的行或列的位置处进行补零,使其新的空间尺寸中的h及w都为3的倍数;当累计视频帧的帧数达到t,即得到一个尺寸为t×h×w的输入视频块,输入时空视频压缩感知方法的网络获得相应的重构视频块。3d3)对于最后的p帧:在时间及空间都进行补零操作,拼接出一个t×h×w的视频块,随后输入时空视频压缩感知方法的网络中获得重构视频块,只将没有补零的前p帧的未补零的大小为h0×w0的部分作为重构视频块结果。3d4)将重构视频块依照时间顺序排列得到重构视频,为时空视频压缩感知方法的网络的测试结果;3d5)对每一个测试视频按照3d1)-3d4)依次处理。基于卷积网络的时空视频压缩感知方法测试网络时不需要像训练网络时对输入灰度视频进行裁剪,因为时空视频压缩感知方法的网络是全卷积网络,全卷积网络一旦训练完成,能够处理任意空间大小的视频,这也扩大了本网络的使用范围,能够对任意大小的灰度视频进行压缩重构。下面给出一个更为详尽的例子,对本发明进一步说明实施例7基于卷积网络的时空视频压缩感知方法同实施1-6,包括如下步骤:步骤1,制备训练数据集。1a)下载下载所需不同分辨率的视频,放入“video”文件夹,建立一个名为“frame”的空文件夹,用于保存灰度视频帧,建立一个名为“patch”的空文件夹,用于保存裁剪后的灰度视频帧。1b)在计算机上配置cuda加速、安装python并在python下安装第三方库tensorflow和cv2。1c)利用cv2库编写代码将视频变为灰度视频帧:1c1)进入“video”文件夹,对视频集中的某一个视频进行访问,获取视频名。1c2)在“frame”文件夹下建立与该视频同名的视频帧文件夹。1c3)对正在访问的视频,执行以下步骤:利用视频读取函数cv2.videocapture()读取该视频的视频帧;使用cv2.cvtcolor()函数将彩色帧转为灰度帧;将处理好的视频帧按照时间顺序保存到建好的视频帧文件夹中,如:1.jpg、2.jpg,依此类推。1d)对灰度视频帧进行裁剪操作:1d1)编写frame_to_patch()函数,从“frame”的文件夹中某一子文件夹中灰度帧按照空间位置裁剪出尺寸为360×240的小块;1d2)将每一个空间位置的小块保存为图片,按照视频时间帧顺序命名,即1.jpg、2.jpg,以此类推;将图片存入“patch”的文件夹下的不同的子文件夹,子文件夹命名为“灰度帧文件夹名+空间位置序列号”,如“horse.avi_1”,“flower_3”等,将文件夹“patch”作为训练数据集;1e)测试数据集为随机选取的任意视频,转为灰度视频,按照时间顺序保存到建好的文件夹中“test_frame”,如:1.jpg、2.jpg,依此类推;步骤2,根据设计好的网络结构使用深度学习框架tensorflow编写训练及测试代码:2a)建立项目文件夹,在项目文件夹中建立train.py用于训练、test.py用于测试、config.py用于保存参数设置、network.py保存网络结构、utils.py用于保存在其他文件中用到的函数,以简化代码。2b)在config.py文件中设置合理的网络超参数,如每次迭代输入的帧组的个数batchsize=16、每个帧组包含的帧数n=16、训练时使用数据集的次数epoch=5等,将训练及测试代码所需要的函数,如将输入归一化到[-1,1]的函数、计算均方误差的损失函数等,写入utils.py。2c)编写network.py文件来定义所采用的全卷积网络的结构,如图2所示:2c1)将输入先经过一个三维卷积层,进行观测操作。该卷积层包含9个尺寸为3×3×n的三维的卷积核,从而获得在时空维上都压缩了的观测结果,观测率为1/16。2c2)将观测结果作为一个三维反卷积层的输入,对输入的低维的观测进行升维,该反卷积层的输出尺寸于观测卷积层的输入尺寸相同,卷积核尺寸为3×3×n。获得与输入的时间及空间尺寸相同的初恢复结果。2c3)将初恢复结果输入1或者2个级联的“时间-空间块”。时空块的结构如图3所示,图3是一个“时空块”的构成示意,本发明“时空块”增强初步重构的帧在时间维及空间维的相关性,获得最终的重构结果。简单的说,视频输入三维卷积层进行观测后作为观测结果,再输入到三维反卷积层进行初恢复后,再输入到“时空块”进行时空增强处理后得到最终重构视频结果。2d)编写train.py文件以实现网络的训练过程:2d1)将获取的帧每n个为一个视频块,取batchsize个视频块作为网络的输入,并经过2c)中定义的网络进行前向传播过程获得重构结果。2d2)将网络的输入作为参考,对获得的重构结果及网络的输入进行求重构误差操作,采用的重构误差为均方误差,并将该误差进行反向传播,进行网络参数更新,完成网络的一次训练过程。2d3)判断是否完成epoch次训练数据集训练,是则训练结束,否则重复2d1)-2d2)。2d4)保存最终参数模型,以便模型测试。2e)编写test.py以实现测试过程:2e1)加载保存的网络模型,并对测试视频按照2e2)-2e4)依次处理。2e2)依次从测试视频帧文件夹中获取视频帧,累计视频帧直到帧数达到n,即一个视频块,输入2c)中定义的网络中获得重构视频块;对于最后的数目不足n的视频帧,进行补零操作,拼接为一个视频块,再输入2c)中定义的网络中获得重构结果。记录每一次重构所用的时间。2e3)每当2e2)中获得一个重构视频块,就立刻写入与测试视频同名的视频文件,以实现实时重构;对最后一个补零的视频块获得的重构结果,只将没有补零的前几帧写入视频文件。2e4)对2e2)获得的重构视频块中的每一帧按照时间顺序保存成图片,如1.jpg、2.jpg,依此类推。通过重构帧组的每一帧与对应的输入帧来计算每一帧的峰值信噪比(psnr)及结构相似度(ssim)的值并保存。步骤3,对网络进行训练3a)将训练代码的训练数据集路径替换为“patch”灰度视频块文件夹所在路径。3b)加载网络结构network.py文件和网络设置config.py文件。3c)执行项目文件夹下的train.py,直到训练结束,得到最终参数模型。步骤4,对网络进行测试4a)将测试代码的输入视频路径替换为“test_frame”测试视频文件夹所在路径。4b)加载网络结构network.py文件以及最终参数模型。4c)执行项目文件夹下的test.py,得到重构视频。本发明的基于全卷积神经网络视频压缩感知方法所使用的参数量较小,前向传播过程时间极短,可以实现实时重构,而且时空视频压缩感知方法的网络中的重构部分中的“时间-空间块”可以增强时空相关性,这与获得的时空均衡性强的观测结合起来可以极大的提升视频重构效果,获得高质量的重构视频。下面通过仿真及其数据对本发明的技术效果再作说明实施例8基于卷积网络的时空视频压缩感知方法同实施1-7,测试条件:设置时空视频压缩感知方法的网络的重构部分连接了一个“时空块”,其余网络参数如上所述,构成一个网络。设置时空视频压缩感知方法的网络的重构部分连接了两个“时空块”,其余网络参数如上所述,再构成一个网络。分别对这两个网络进行训练,得到训练好的网络。测试实验内容测试实验一.选取vidset4中的“walk”和“foliage”作为测试数据集,参见图4,将测试数据集送入本发明经过训练好的这两个网络,得到重构视频,选取其中的两个测试视频的任意一帧的重构视频帧如图4所示,图4中第一行为“walk”和“foliage”输入视频原始帧,第二行为只连接了一个“时空块”的时空视频压缩感知方法的网络对“walk”和“foliage”输入视频原始帧的重构视频帧,第三行为只连接了两个“时空块”的时空视频压缩感知方法的网络对“walk”和“foliage”输入视频原始帧的重构视频帧。从图4可见,灰度视频经过时空视频压缩感知方法的网络重构后具有较好的视觉重构效果,对比图4的第二行和第三行,一个“时空块”的时空视频压缩感知方法的网络已经能够恢复出原始视频帧的主要内容,两个“时空块”的时空视频压缩感知方法的网络可以使得重构结果更加清晰,进一步证明本发明的“时空块”能够使得重构效果更好。测试实验二.“walk”和“foliage”的灰度视频分别输入连接了一个“时空块”和两个“时空块”的时空视频压缩感知方法的网络进行测试的到重构视频,计算重构视频的前32帧的图像的峰值信噪比psnr和结构相似性ssim,结果如表一:表一:重构视频帧的psnr/ssim一个块walkfoliage两个块walkfoliage第1帧25.39/0.80923.05/0.664第1帧26.07/0.81723.81/0.716第2帧25.87/0.84124.39/0.742第2帧26.34/0.83924.90/0.769第3帧25.96/0.84924.87/0.766第3帧26.64/0.85425.02/0.779………………平均值25.25/0.83923.77/0.690平均值25.80/0.84424.10/0.722图4给出的重构视频帧从人类的主观视觉对比,说明了“时空块”能够增强时空关联性,视频重构效果好。下面从表一给出图像指标测试结果,更能从量化的角度说明本发明的重构质量。从表一可见,灰度视频经过时空视频压缩感知方法的网络后的重构视频的每一帧都具有较好的psnr和ssim,且数值大小接近,证明了重构视频具有较好的重构质量,也说明重构视频结果具有较好的时空均衡性,能够保证重构视频每一帧的质量稳定。测试实验三.分别计算连接了一个“时空块”和两个“时空块”的时空视频压缩感知方法的网络“walk”和“foliage”的重构视频的前32帧的平均每一帧的重构时间,其中:一个“时空块”时空视频压缩感知方法的网络的平均每一帧重构时间为0.03~0.04s,两个“时空块”时空视频压缩感知方法的网络的平均每一帧重构时间为0.05~0.06s。由上可见,本发明时空视频压缩感知方法的网络重构视频的时间快,具有实时性,增加“时空块”同时增加了重构视频的时间,可以在保证实时性的同时,尽可能增加“时空块”。简而言之,本发明公开的基于卷积网络的时空视频压缩感知方法,主要解决现有技术里视频压缩时空均衡性差以及重构视频实时性差的问题。其方案是:1)制备训练数据集2)设计时空视频压缩感知方法的网络结构3)根据设计好的网络结构编写训练及测试文件4)训练时空视频压缩感知方法的网络5)测试时空视频压缩感知方法的网络。本发明时空视频压缩感知方法的网络采用时空同时压缩的观测技术和用“时间-空间块”增强时空相关性的重构技术,不仅能实现实时视频重构,而且重构的结果具有较强的时空均衡性,重构质量高且稳定,可用于视频的压缩传输以及后续的视频重构。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1