CN117880503A - 多通道视频数据处理方法、装置及设备 - Google Patents
多通道视频数据处理方法、装置及设备 Download PDFInfo
- Publication number
- CN117880503A CN117880503A CN202410060778.5A CN202410060778A CN117880503A CN 117880503 A CN117880503 A CN 117880503A CN 202410060778 A CN202410060778 A CN 202410060778A CN 117880503 A CN117880503 A CN 117880503A
- Authority
- CN
- China
- Prior art keywords
- gop
- packet
- packets
- channel
- group
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 14
- 238000000034 method Methods 0.000 claims abstract description 55
- 238000012545 processing Methods 0.000 claims abstract description 50
- 230000015654 memory Effects 0.000 claims description 28
- 238000007781 pre-processing Methods 0.000 claims description 8
- 238000004891 communication Methods 0.000 claims description 2
- 238000011084 recovery Methods 0.000 abstract description 31
- 230000008439 repair process Effects 0.000 abstract description 7
- 238000010586 diagram Methods 0.000 description 13
- 101100122750 Caenorhabditis elegans gop-2 gene Proteins 0.000 description 10
- 230000008569 process Effects 0.000 description 9
- 238000012937 correction Methods 0.000 description 5
- 101000946275 Homo sapiens Protein CLEC16A Proteins 0.000 description 3
- 102100034718 Protein CLEC16A Human genes 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 239000007787 solid Substances 0.000 description 3
- 101100476639 Caenorhabditis elegans gop-3 gene Proteins 0.000 description 2
- 208000009119 Giant Axonal Neuropathy Diseases 0.000 description 2
- 102100037812 Medium-wave-sensitive opsin 1 Human genes 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 201000003382 giant axonal neuropathy 1 Diseases 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Landscapes
- Television Signal Processing For Recording (AREA)
Abstract
本发明涉及计算机技术领域,公开了一种多通道视频数据处理方法、装置及设备,包括:获取经过预处理后的多通道视频数据;针对每一个通道视频数据,以图像组GOP为单位进行拆分,获取多个GOP包;对多个GOP包进行纠删编码处理后,根据多通道中每一个GOP包的生成时间,确定不同通道中的GOP包之间的差异度;基于GOP包差异度最大分配原则,从每一个通道中分别选取一个目标GOP包放在同一硬盘中进行存储。通过该方式,即使在某一个或多个硬盘故障时,也会大大降低丢失的是同一GOP包的概率,大大降低数据恢复难度,提升修复准确度。
Description
技术领域
本发明涉及计算机技术领域,具体涉及一种多通道视频数据处理方法、装置及设备。
背景技术
传统纠删条带的存储方式采取随机写入模式,随机写入具有写入带宽较高的特点,然而在视频存储系统中,在面对超故障域数据丢失问题时,传统的随机写入模式,很大概率会造成硬盘内图像组(Group of Pictures,简称GOP)包相关性太强,一旦硬盘故障,可能连续几个GOP包信息完全丢失,对于数据恢复难度大幅提升,导致修复准确度降低,甚至无法保证视频数据的修复能力。
发明内容
有鉴于此,本发明提供了一种多通道视频数据处理方法、装置及设备,用以解决传统GOP包写入硬盘的方式会导致在同一硬盘内的GOP包相关性太强的问题。
第一方面,本发明提供了一种多通道视频数据处理方法,该方法包括:
获取经过预处理后的多通道视频数据,多通道视频数据为通过不同通道采集并经过预处理后生成的数据;
针对每一个通道视频数据,以图像组GOP为单位进行拆分,获取多个GOP包;
对多个GOP包进行纠删编码处理后,根据多通道中每一个GOP包的生成时间,确定不同通道中的GOP包之间的差异度;
基于GOP包差异度最大分配原则,从每一个通道中分别选取一个目标GOP包放在同一硬盘中进行存储,其中不同通道中的目标GOP包之间的时间差异度最大。
本发明提供的一种多通道视频数据处理方法,具有如下优点:
在获取到预处理后的多通道视频数据后,针对每一个通道的视频数据,以GOP为单位进行拆分,获取多个GOP包。然后,对多个GOP包进行纠删编码处理后,根据多通道中每一个GOP包的生成时间,确定不同通道中的GOP包的差异度;根据GOP包差异度最大分配原则,从每一个通道中分别选取一个目标GOP包放在同一硬盘中进行存储。通过该方式,即使在某一个或多个硬盘故障时,也会大大降低丢失的是同一GOP包的概率,大大降低数据恢复难度,提升修复准确度。
在一种可选的实施方式中,对多个GOP包进行纠删编码处理后,根据多通道中每一个GOP包的生成时间,确定不同通道中的GOP包之间的差异度,包括:
以多通道中的第一通道中的第一GOP包为基准,在当前迭代周期中,分别从多通道中除第一通道之外的其他通道中遍历选取每一个GOP包,并分别基于遍历到的所有GOP包的生成时间和第一GOP包的生成时间,生成不同通道中不同GOP包之间的差异度,其中,第一通道为多通道中的任一个通道,第一GOP包为第一通道中的任一个GOP包。
具体的,因为视频图像本身就是一帧一帧的图像,在进行GOP包的划分时,也是按照一定的时间顺序进行划分。因此,通过不同包之间的生成时间,来确定GOP包之间的差异度,将会更加合理、准确。
在一种可选的实施方式中,基于GOP差异度最大分配原则,从每一个通道中分别选取一个目标GOP包放在同一硬盘中进行存储,包括:
当以第一通道中的第一GOP包为基准遍历完成,获取多个差异度后,选取最大差异度对应的第一GOP包组,其中,第一GOP包组包括第一GOP包和多通道中除第一通道之外的每一个通道中的一个目标GOP包;
将第一GOP包组中的所有GOP包,存放于同一硬盘中存储,其中,不同组GOP包存放于不同硬盘中,硬盘的数量为任一通道中的GOP包数量和该通道中的纠删编码的数量的总和。
具体的,当以第一通道中的第一GOP包为基准遍历完成后,获取多个差异度。这时,选择除第一通道以外的其他通道中能够与第一GOP包共同产生最大差异度的GOP包,构成目标GOP包组,并将目标GOP包组中的GOP包放在同一硬盘中进行存储,那么,即使后续该硬盘故障,该硬盘中的GOP包丢失,也不会有太大影响,可以通过其他盘中存储的与该硬盘中相同时刻生成的GOP包,以及其他GOP包,完成对该盘中的GOP包的恢复,且恢复后的准确度会更高。
在一种可选的实施方式中,当数据超故障域丢失情况发生,且多通道中第一通道中的第二GOP包丢失,除第一通道之外的其他通道中的与第二GOP包同一时刻生成的GOP包未丢失时,方法还包括:
从第一通道中除第二GOP包之外未丢失的且与第二GOP包相关度最高的预设数量的GOP包中提取I帧背景信息,构成I帧背景信息集合,其中,相关度根据GOP包的生成时间确定,第一通道中的GOP包的生成时间与第二GOP包的生成时间之间的差值越小,相关度越高;
从多通道中除第一通道之外的其他通道选取与第二GOP包属于同一时刻生成的GOP包,构成第二GOP包组,并提取第二GOP包组中每一个GOP包分别对应的I帧信息和P帧信息;
以及,分别从除第一通道之外的其他通道中选取除第二GOP包组之外的,未丢失的且与第二GOP包相关度最高的预设数量的GOP包,构成第三GOP包组;
分别提取第二GOP包组中每一个GOP包中I帧信息和P帧信息;
基于I帧背景信息集合、第二GOP包组中每一个GOP包分别对应的I帧信息和P帧信息,以及第三GOP包组中每一个GOP包中I帧信息和P帧信息,恢复第二GOP包。
具体的,当数据超故障域丢失情况发生,且多通道中第一通道中的第二GOP包丢失,而其他通道中同一时刻的GOP包没有丢失的情况下,可以从第一通道中除第二GOP包之外未丢失的且与第二GOP包相关度排序最高的预设数量的GOP包中分别提取I帧背景信息,构成I帧背景信息集合。用以生成第二GOP包的I帧背景信息;然后,从多个通道中除第一通道之外的其他通道中,选取与第二GOP包属于同一时刻生成的GOP包,构成第二GOP包组,并提取第二GOP包组中每一个GOP包分别对应的I帧信息和P帧信息。以及,分别从除第一通道之外的其他通道中选取除第二GOP包组之外的,未丢失的且与第二GOP包相关度最高的预设数量的GOP包,构成第三GOP包组,并分别提取第二GOP包组中每一个GOP包中I帧信息和P帧信息。通过对这些信息进行融合处理,则可以恢复第二GOP包,相当于结合了同一时刻不同角度(不同通道)中所采集的数据信息,以及相邻时刻的数据信息,最终完成第二GOP包的恢复,恢复的精确度相对而言将会更高。
在一种可选的实施方式中,基于I帧背景信息集合、第二GOP包组中每一个GOP包分别对应的I帧信息和P帧信息,以及第三GOP包组中每一个GOP包中I帧信息和P帧信息,恢复第二GOP包,包括:
基于第二GOP包组中每一个GOP包的I帧信息和第二GOP包组中的每一个GOP包的I帧信息,对第二GOP包的前景信息进行恢复;
基于第二GOP包组中每一个GOP包的P帧信息和第三GOP包组中的每一个GOP包的P帧信息,确定P帧差分信息;
基于前景信息、I帧背景信息集合和P帧差分信息,恢复第二GOP包。
具体的,基于第二GOP包组中每一个GOP包的I帧信息和第二GOP包组中的每一个GOP包的I帧信息,可以实现对第二GOP包的前景信息的恢复,基于第二GOP包组中每一个GOP包的P帧信息和第二GOP包组中的每一个GOP包的P帧信息,可以确定同一时刻的不同GOP包,以及相邻时刻中的GOP包,与第二GOP包之间的P帧差分信息。最终,结合前景信息、I帧背景信息集合和P帧差分信息,即可恢复第二GOP包。
在一种可选的实施方式中,当通道的条数为3条时,以多通道中的第一通道中的第一GOP包为基准,在当前迭代周期中,分别从多通道中除第一通道之外的其他通道中遍历选取每一个GOP包,并分别基于遍历到的所有GOP包的生成时间和第一GOP包的生成时间,生成不同通道中不同GOP包之间的差异度,采用如下公式表示:
其中,d为不同通道中不同GOP包之间的差异度,t(1,i)为第一通道中第i个GOP的生成时间,t(2,j)为第二通道中第j个GOP的生成时间,t(3,k)为第三通道中第k个GOP的生成时间,i,j和k分别是三条通道中任意GOP包的标识,i、j,k均为正整数。
在一种可选的实施方式中,方法还包括:
基于GOP包差异度最大分配原则,从每一个通道中分别选取一个目标GOP包后,将分属于同一组的目标GOP包每分别与准存储硬盘中已存储的GOP包进行比较,同一组的目标GOP包为基于GOP包差异度最大分配规则选取出的待存放于同一硬盘的GOP包;
当确定同一组的目标GOP包均与准存储硬盘中已存储的GOP包之间相关度小于或者等于预设相关度阈值时,则将同一组的目标GOP包存放于准存储硬盘;
或者,当确定同一组的目标GOP包中任一个GOP包与准存储硬盘中已存储的GOP包之间相关度小于预设相关度阈值时,为同一组的目标GOP包更换其他存储硬盘。
具体的,在考虑同一条带中通道采集的同一时刻的GOP包可以分配到不同硬盘中进行存储的基础上,还可以考虑不同条带中相关的GOP包也分配到不同的硬盘进行存储,以避免当某一个硬盘中的GOP包丢失时,也可以及时的、准确的找回不同条带中的GOP包。因此,基于GOP包差异度最大分配原则,从每一个通道中分别选取一个目标GOP包后,将分属于同一组的目标GOP包每分别与准存储硬盘中已存储的GOP包进行比较,并且只有在确定同一组的目标GOP包均与准存储硬盘中已存储的GOP包之间相关度小于或者等于预设相关度阈值时,才会将同一组的目标GOP包存放于准存储硬盘。否则,则将这一组的目标GOP包按照上述原则重新查找一个可以存放的存储硬盘。
第二方面,本发明提供了一种多通道视频数据处理装置,该装置包括:
获取模块,用于获取经过预处理后的多通道视频数据,多通道视频数据为通过不同通道采集并经过预处理后生成的数据;
拆分模块,用于针对每一个通道视频数据,以图像组GOP为单位进行拆分,获取多个GOP包;
处理模块,用于对多个GOP包进行纠删编码处理后,根据多通道中每一个GOP包的生成时间,确定不同通道中的GOP包之间的差异度;基于GOP包差异度最大分配原则,从每一个通道中分别选取一个目标GOP包放在同一硬盘中进行存储,其中不同通道中的目标GOP包之间的时间差异度最大。
本发明提供的一种多通道视频数据处理装置,具有如下优点:
在获取到预处理后的多通道视频数据后,针对每一个通道的视频数据,以GOP为单位进行拆分,获取多个GOP包。然后,对多个GOP包进行纠删编码处理后,根据多通道中每一个GOP包的生成时间,确定不同通道中的GOP包的差异度;根据GOP包差异度最大分配原则,从每一个通道中分别选取一个目标GOP包放在同一硬盘中进行存储。通过该方式,即使在某一个或多个硬盘故障时,也会大大降低丢失的是同一GOP包的概率,大大降低数据恢复难度,提升修复准确度。
在一种可选的实施方式中,处理模块,具体用于以多通道中的第一通道中的第一GOP包为基准,在当前迭代周期中,分别从多通道中除第一通道之外的其他通道中遍历选取每一个GOP包,并分别基于遍历到的所有GOP包的生成时间和第一GOP包的生成时间,生成不同通道中不同GOP包之间的差异度,其中,第一通道为多通道中的任一个通道,第一GOP包为第一通道中的任一个GOP包。
具体的,因为视频图像本身就是一帧一帧的图像,在进行GOP包的划分时,也是按照一定的时间顺序进行划分。因此,通过不同包之间的生成时间,来确定GOP包之间的差异度,将会更加合理、准确。
在一种可选的实施方式中,处理模块,具体用于当以第一通道中的第一GOP包为基准遍历完成,获取多个差异度后,选取最大差异度对应的第一GOP包组,其中,第一GOP包组包括第一GOP包和多通道中除第一通道之外的每一个通道中的一个目标GOP包;
将第一GOP包组中的所有GOP包,存放于同一硬盘中存储,其中,不同组GOP包存放于不同硬盘中,硬盘的数量为任一通道中的GOP包数量和该通道中的纠删编码的数量的总和。
具体的,当以第一通道中的第一GOP包为基准遍历完成后,获取多个差异度。这时,选择除第一通道以外的其他通道中能够与第一GOP包共同产生最大差异度的GOP包,构成目标GOP包组,并将目标GOP包组中的GOP包放在同一硬盘中进行存储,那么,即使后续该硬盘故障,该硬盘中的GOP包丢失,也不会有太大影响,可以通过其他盘中存储的与该硬盘中相同时刻生成的GOP包,以及其他GOP包,完成对该盘中的GOP包的恢复,且恢复后的准确度会更高。
在一种可选的实施方式中,当数据超故障域丢失情况发生,且多通道中第一通道中的第二GOP包丢失,除第一通道之外的其他通道中的与第二GOP包同一时刻生成的GOP包未丢失时,处理模块还用于:
从第一通道中除第二GOP包之外未丢失的且与第二GOP包相关度最高的预设数量的GOP包中提取I帧背景信息,构成I帧背景信息集合,其中,相关度根据GOP包的生成时间确定,第一通道中的GOP包的生成时间与第二GOP包的生成时间之间的差值越小,相关度越高;
从多通道中除第一通道之外的其他通道选取与第二GOP包属于同一时刻生成的GOP包,构成第二GOP包组,并提取第二GOP包组中每一个GOP包分别对应的I帧信息和P帧信息;
以及,分别从除第一通道之外的其他通道中选取除第二GOP包组之外的,未丢失的且与第二GOP包相关度最高的预设数量的GOP包,构成第三GOP包组;
分别提取第二GOP包组中每一个GOP包中I帧信息和P帧信息;
基于I帧背景信息集合、第二GOP包组中每一个GOP包分别对应的I帧信息和P帧信息,以及第三GOP包组中每一个GOP包中I帧信息和P帧信息,恢复第二GOP包。
具体的,当数据超故障域丢失情况发生,且多通道中第一通道中的第二GOP包丢失,而其他通道中同一时刻的GOP包没有丢失的情况下,可以从第一通道中除第二GOP包之外未丢失的且与第二GOP包相关度排序最高的预设数量的GOP包中分别提取I帧背景信息,构成I帧背景信息集合。用以生成第二GOP包的I帧背景信息;然后,从多个通道中除第一通道之外的其他通道中,选取与第二GOP包属于同一时刻生成的GOP包,构成第二GOP包组,并提取第二GOP包组中每一个GOP包分别对应的I帧信息和P帧信息。以及,分别从除第一通道之外的其他通道中选取除第二GOP包组之外的,未丢失的且与第二GOP包相关度最高的预设数量的GOP包,构成第三GOP包组,并分别提取第二GOP包组中每一个GOP包中I帧信息和P帧信息。通过对这些信息进行融合处理,则可以恢复第二GOP包,相当于结合了同一时刻不同角度(不同通道)中所采集的数据信息,以及相邻时刻的数据信息,最终完成第二GOP包的恢复,恢复的精确度相对而言将会更高。
在一种可选的实施方式中,处理模块,具体用于:
基于第二GOP包组中每一个GOP包的I帧信息和第二GOP包组中的每一个GOP包的I帧信息,对第二GOP包的前景信息进行恢复;
基于第二GOP包组中每一个GOP包的P帧信息和第三GOP包组中的每一个GOP包的P帧信息,确定P帧差分信息;
基于前景信息、I帧背景信息集合和P帧差分信息,恢复第二GOP包。
具体的,基于第二GOP包组中每一个GOP包的I帧信息和第二GOP包组中的每一个GOP包的I帧信息,可以实现对第二GOP包的前景信息的恢复,基于第二GOP包组中每一个GOP包的P帧信息和第二GOP包组中的每一个GOP包的P帧信息,可以确定同一时刻的不同GOP包,以及相邻时刻中的GOP包,与第二GOP包之间的P帧差分信息。最终,结合前景信息、I帧背景信息集合和P帧差分信息,即可恢复第二GOP包。
在一种可选的实施方式中,当通道的条数为3条时,处理模块,具体用于基于如下表达式,生成不同通道中不同GOP包之间的差异度:
其中,d为不同通道中不同GOP包之间的差异度,t(1,i)为第一通道中第i个GOP的生成时间,t(2,j)为第二通道中第j个GOP的生成时间,t(3,k)为第三通道中第k个GOP的生成时间,i,j和k分别是三条通道中任意GOP包的标识,i、j,k均为正整数。
在一种可选的实施方式中,当确定当前条带并非为首个条带时,处理模块,还用于:
基于GOP包差异度最大分配原则,从每一个通道中分别选取一个目标GOP包后,将分属于同一组的目标GOP包每分别与准存储硬盘中已存储的GOP包进行比较,同一组的目标GOP包为基于GOP包差异度最大分配规则选取出的待存放于同一硬盘的GOP包;
当确定同一组的目标GOP包均与准存储硬盘中已存储的GOP包之间相关度小于或者等于预设相关度阈值时,则将同一组的目标GOP包存放于准存储硬盘;
或者,当确定同一组的目标GOP包中任一个GOP包与准存储硬盘中已存储的GOP包之间相关度小于预设相关度阈值时,为同一组的目标GOP包更换其他存储硬盘。
具体的,在考虑同一条带中通道采集的同一时刻的GOP包可以分配到不同硬盘中进行存储的基础上,还可以考虑不同条带中相关的GOP包也分配到不同的硬盘进行存储,以避免当某一个硬盘中的GOP包丢失时,也可以及时的、准确的找回不同条带中的GOP包。因此,基于GOP包差异度最大分配原则,从每一个通道中分别选取一个目标GOP包后,将分属于同一组的目标GOP包每分别与准存储硬盘中已存储的GOP包进行比较,并且只有在确定同一组的目标GOP包均与准存储硬盘中已存储的GOP包之间相关度小于或者等于预设相关度阈值时,才会将同一组的目标GOP包存放于准存储硬盘。否则,则将这一组的目标GOP包按照上述原则重新查找一个可以存放的存储硬盘。
第三方面,本发明提供了一种计算机设备,包括:存储器和处理器,存储器和处理器之间互相通信连接,存储器中存储有计算机指令,处理器通过执行计算机指令,从而执行上述第一方面或其对应的任一实施方式的多通道视频数据处理方法。
第四方面,本发明提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机指令,计算机指令用于使计算机执行上述第一方面或其对应的任一实施方式的多通道视频数据处理方法。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种多通道视频数据处理方法的流程示意图;
图2是本发明实施例提供的另一种多通道视频数据处理方法流程示意图;
图3是本发明提供的另一种多通道视频数据处理方法流程示意图;
图4是本发明实施例提供的另一种多通道视频数据处理方法流程示意图;
图5是本发明提供的另一种多通道视频数据处理方法流程示意图;
图6是本发明提供的示意出盘2、盘4和盘7中数据丢失。造成了数据超故障域丢失的示意图;
图7是本发明提供的通过本申请实施例的方法,提取丢失数据的相邻GOP的示意图;
图8是本发明提供的当盘2中的GOP2丢失且不可恢复时,可以从其他盘中提取与GOP2相同时刻的GOP包的示意图;
图9是本发明提供的多通道视频数据存储的具体实现框图;
图10是本发明提供的超故障域丢失数据恢复的整体流程框图;
图11是本发明提供的实现不同条带之间GOP差异度最大化的整体流程框图;
图12是根据本发明实施例的一种多通道视频数据处理装置结构框图;
图13是本发明实施例的计算机设备的硬件结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
传统纠删条带的存储方式采取随机写入模式,随机写入具有写入带宽较高的特点,然而在视频存储系统中,在面对超故障域数据丢失问题时,传统的随机写入模式无法保证视频数据的修复能力。超故障域是指故障超出所设计的冗余和容错范围,导致数据无法恢复,永久丢失。例如,常用的k+m RS纠删码的存储方式,容错能力为m,当超出m数据块不可用的情况时即为超故障域。
相关技术中存在针对单通道图像数据进行修复的方法,但是该方法无法应用于多通道视频数据修复问题,也未见其他相关文献报道。
为解决上述问题,本发明实施例,提供了一种多通道视频数据处理实施例,需要说明的是,在附图的流程图示出的步骤可以在包括诸如一组计算机可执行指令的计算机系统(计算机设备)中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
在本实施例中提供了一种多通道视频数据处理方法,可用于上述的终端机设备,如手机、平板电脑等,图1是本发明实施例提供的一种多通道视频数据处理方法的流程示意图,如图1所示,该流程包括如下步骤:
步骤S101,获取经过预处理后的多通道视频数据。
具体的,多通道视频数据为通过不同通道采集并经过预处理后生成的数据。其中,预处理可以包括大小调整、压缩等操作。
步骤S102,针对每一个通道视频数据,以图像组GOP为单位进行拆分,获取多个GOP包。
步骤S103,对多个GOP包进行纠删编码处理后,根据多通道中每一个GOP包的生成时间,确定不同通道中的GOP包之间的差异度。
具体的,采用纠删编码方法对多通道中每一个通道中的GOP包均进行纠删编码处理后,可以生成纠删条带数据。然后基于多通道每一个纠删条带中的GOP包的生成时间,可以确定不同通道中的GOP包之间的差异度。生成时间直接间隔的越久,差异度就会越大。
步骤S104,基于GOP包差异度最大分配原则,从每一个通道中分别选取一个目标GOP包放在同一硬盘中进行存储。
具体的,可以将不同通道中差异度最大的GOP包分为一组,然后放在同一硬盘中进行存储。例如,通道包括3个,每一条通道中实际上包括的数据是相同的。具体参见表1所示。
表1
表1中所显示的是采用8+2RS纠删码的方式对每一个通道的视频数据进行拆分,以及进行纠删操作后形成的8个GOP包和2个纠删码。其他,每一个通道所包括的都是8个不同时刻所采集的GOP包。例如GOP1至GOP8。而不同通道所采集的同一时刻的则是不同角度的GOP包,例如GOP1、GOP1’,以及GOP”。其属于多通道从不同角度针对同一事物进行拍摄后生成的不同GOP包,虽然是同一个事物,但是不同角度,所以包含的信息可能稍有不同。
为了尽可能的防止同一时刻采集的不同GOP包存放于同一硬盘中,所以,需要基于GOP包差异度最大分配原则,从每一个通道中分别选取一个目标GOP包放在同一硬盘中,而不同通道中的目标GOP包之间的时间差异度最大。
其中,差异度的确定可以根据不同GOP包生成时间确定。生成时间之间的间隔越大,其差异度越大。
本实施例提供的多通道视频数据处理方法,在获取到预处理后的多通道视频数据后,针对每一个通道的视频数据,以GOP为单位进行拆分,获取多个GOP包。然后,对多个GOP包进行纠删编码处理后,根据多通道中每一个GOP包的生成时间,确定不同通道中的GOP包的差异度;根据GOP包差异度最大分配原则,从每一个通道中分别选取一个目标GOP包放在同一硬盘中进行存储。通过该方式,即使在某一个或多个硬盘故障时,也会大大降低丢失的是同一GOP包的概率,大大降低数据恢复难度,提升修复准确度。
在本实施例中提供了一种多通道视频数据处理方法,可用于上述的移动终端,如手机、平板电脑等,图2是本发明实施例提供的再一种多通道视频数据处理方法流程示意图,如图2所示,该流程包括如下步骤:
步骤S201,获取经过预处理后的多通道视频数据。
其中,多通道视频数据为通过不同通道采集并经过预处理后生成的数据。
步骤S202,针对每一个通道视频数据,以图像组GOP为单位进行拆分,获取多个GOP包。
步骤S201至步骤S202的介绍,详细请参见图1所示实施例的步骤S101至步骤S102,在此不再赘述。
步骤S203,对多个GOP包进行纠删编码处理后,根据多通道中每一个GOP包的生成时间,确定不同通道中的GOP包之间的差异度。
具体的,在对多个GOP包进行纠删编码处理后,根据多通道中每一个GOP包的生成时间,确定不同通道中的GOP包之间的差异度时,可以通过如下方式实现,包括:
步骤S2031,以多通道中的第一通道中的第一GOP包为基准,在当前迭代周期中,分别从多通道中除第一通道之外的其他通道中遍历选取每一个GOP包。
步骤S2032,分别基于遍历到的所有GOP包的生成时间和第一GOP包的生成时间,生成不同通道中不同GOP包之间的差异度。
其中,第一通道为多通道中的任一个通道,第一GOP包为第一通道中的任一个GOP包。
具体的,假设通道包括3条,每一条通道中的视频数据经过GOP划分后,所得到的是相同数量的GOP包。在具体确定差异度时,可以根据不同GOP包之间的生成时间确定。生成时间距离越近,则差异度越小。尤其,同一生成时间得到的GOP包之间的差异度相对而言是最小的。以第一通道中的第一GOP包为基准,然后从其他两个通道中依次遍历每一个GOP包。这里不仅仅要考虑第一GOP包和每一个同道中GOP包之间的差异度,还要考虑其他不同通道中的GOP包之间的差异度,也即,如果是3条通道,那么放在同一个硬盘中的3个GOP包的差异度是最大的。例如第一GOP包是第一通道中的首个,在选择第二通道中的GOP包时可以选择生成时间排序在中间的那个,而第三同道中选择的GOP包可以是生成时间排序在最末尾的一个。此时,三者之间的差异度相对来说会比较大。又比如,第一GOP包是第一通道中的第二个,第二通道中的可以选择是生成时间排序在中间之后紧邻的一个GOP包,而第三同道中选择的是首个GOP包。这样,就可以保证每一个硬盘中的GOP包之间的差异度都比较大。
当然,为了更加准确的计算不同GOP包之间的差异度,也可参见下文中的公式。
在一个可选的实施方式中,以通道的条数为3条为例,以多通道中的第一通道中的第一GOP包为基准,在当前迭代周期中,分别从多通道中除第一通道之外的其他通道中遍历选取每一个GOP包,并分别基于遍历到的所有GOP包的生成时间和第一GOP包的生成时间,生成不同通道中不同GOP包之间的差异度,采用如下公式表示:
d=max∑i,j,k∈[1,n]|t(1,i)-t(2,j)|+|t(2,j)-t(3,k)|+|t(1,i)-t(3,k)|(公式1)
其中,d为不同通道中不同GOP包之间的差异度,t(1,i)为第一通道中第i个GOP的生成时间,t(2,j)为第二通道中第j个GOP的生成时间,t(3,k)为第三通道中第k个GOP的生成时间,i,j和k分别是三条通道中任意GOP包的标识,i、j,k均为正整数。
如上述公式,可以以第一通道中的第i个GOP包为基准,然后依次计算第i个GOP包与其他通道中的任一个GOP包之间的差异度,然后选取差异度最大的一个GOP包。以此类推,当i、j和k全部都轮询为n后结束。
具体的,因为视频图像本身就是一帧一帧的图像,在进行GOP包的划分时,也是按照一定的时间顺序进行划分。因此,通过不同包之间的生成时间,来确定GOP包之间的差异度,将会更加合理、准确。
步骤S204,基于GOP包差异度最大分配原则,从每一个通道中分别选取一个目标GOP包放在同一硬盘中进行存储。
步骤S204的介绍,详细请参见图1所示实施例的步骤S104,在此不再赘述。
进一步的,在一个可选的实施方式中,基于GOP差异度最大分配原则,从每一个通道中分别选取一个目标GOP包放在同一硬盘中进行存储,可以通过如下方式实现,具体参见图3所示,包括:
步骤S301,当以第一通道中的第一GOP包为基准遍历完成,获取多个差异度后,选取最大差异度对应的第一GOP包组。
其中,第一GOP包组包括第一GOP包和多通道中除第一通道之外的每一个通道中的一个目标GOP包。
具体的,如何选取包括第一GOP包在内的第一GOP包组的过程已经在前文中做了详细介绍,这里不再赘述。
步骤S302,将第一GOP包组中的所有GOP包,存放于同一硬盘中存储。
其中,不同组GOP包存放于不同硬盘中,硬盘的数量为任一通道中的GOP包数量和该通道中的纠删编码的数量的总和。
具体的,当以第一通道中的第一GOP包为基准遍历完成后,获取多个差异度。这时,选择除第一通道以外的其他通道中能够与第一GOP包共同产生最大差异度的GOP包,构成目标GOP包组,并将目标GOP包组中的GOP包放在同一硬盘中进行存储,那么,即使后续该硬盘故障,该硬盘中的GOP包丢失,也不会有太大影响,可以通过其他盘中存储的与该硬盘中相同时刻生成的GOP包,以及其他GOP包,完成对该盘中的GOP包的恢复,且恢复后的准确度会更高。
在本实施例中提供了一种多通道视频数据处理方法,可用于上述的移动终端,如手机、平板电脑等,图4是本发明实施例提供的另一种多通道视频数据处理方法流程示意图,如图4所示,该方法主要是考虑到当数据超故障域丢失情况发生,且多通道中第一通道中的第二GOP包丢失,除第一通道之外的其他通道中的与第二GOP包同一时刻生成的GOP包未丢失时的具体处理方案。
其中,超故障域是指故障超出所设计的冗余和容错范围,导致数据无法恢复的情况。在本申请文件中,因为采用8+2RS纠删码的方式,所以当超过3个GOP包丢失时,就可以称之为超故障域发生,本申请中以丢失3个GOP包为例进行说明,来实现数据超故障域恢复。其中,数据超故障域恢复是指在故障硬盘数量超过存储系统所能承受的最大数量时,仍能够从剩余的可用数据或校验数据中恢复出原始数据。
在本申请的整体实施思想是利用通道内部的背景一致性信息和通道之间的前景相关性信息,重构超故障域丢失数据,实现视频数据恢复。
因为在多通道视频信息存储阶段,如前文所介绍的,本申请中首先将所采集的图像的各GOP包按照k+m纠删编码方式进行编码;然后,将各个通道的数据条带按照“盘内GOP差异度最大”原则进行分布和存储,从而降低了数据恢复难度。
在进行超故障域的数据恢复阶段时,该流程包括如下步骤:
步骤S401,从第一通道中除第二GOP包之外未丢失的且与第二GOP包相关度最高的预设数量的GOP包中提取I帧背景信息,构成I帧背景信息集合。
其中,相关度根据GOP包的生成时间确定,第一通道中的GOP包的生成时间与第二GOP包的生成时间之间的差值越小,相关度越高。这里需要说明的是,差异度和相关度的区别,差异度是指不同通道中GOP包之间的差异。而相关度,是指同一通道中不同GOP包之间的关联关系。而不同GOP包的生成时间间隔越短,两个GOP包中的内容的关联度也会更大。所以说,GOP包的生成时间与第二GOP包的生成时间之间的差值越小,相关度越高。
具体的从第一通道中除第二GOP包之外未丢失的且与第二GOP包相关度最高的预设数量的GOP包中提取I帧背景信息,构成I帧背景信息集合,可以采用经过预训练后的高斯混合模型(Guassian Mixture Model,简称GMM)进行I帧背景信息提取,来获取。
步骤S402,从多通道中除第一通道之外的其他通道选取与第二GOP包属于同一时刻生成的GOP包,构成第二GOP包组。
以表1中的GOP包为例,参见表1所示,假设第二GOP包为第一通道中的GOP2,那么,从多通道中除第一通道之外的其他通道选取与第二GOP包属于同一时刻生成的GOP包,即为GOP2’,和GOP2”。
步骤S403,提取第二GOP包组中每一个GOP包分别对应的I帧信息和P帧信息。
具体的,在提取第二GOP包组中每一个GOP包分别对应的I帧信息和P帧信息的实现方案为比较成熟的技术,例如采用前文所介绍的GMM实现,这里不再过多赘述。
步骤S404,分别从除第一通道之外的其他通道中选取除第二GOP包组之外的,未丢失的且与第二GOP包相关度最高的预设数量的GOP包,构成第三GOP包组。
具体实现过程与步骤S401-从第一通道中除第二GOP包之外未丢失的且与第二GOP包相关度最高的预设数量的GOP包的过程类似,这里不再赘述。
步骤S405,分别提取第二GOP包组中每一个GOP包中I帧信息和P帧信息。
具体实现可以通过已有的成熟技术实现,例如GMM,因此这里不再赘述。
步骤S406,基于I帧背景信息集合、第二GOP包组中每一个GOP包分别对应的I帧信息和P帧信息,以及第三GOP包组中每一个GOP包中I帧信息和P帧信息,恢复第二GOP包。
具体的,当数据超故障域丢失情况发生,且多通道中第一通道中的第二GOP包丢失,而其他通道中同一时刻的GOP包没有丢失的情况下,可以从第一通道中除第二GOP包之外未丢失的且与第二GOP包相关度排序最高的预设数量的GOP包中分别提取I帧背景信息,构成I帧背景信息集合。用以生成第二GOP包的I帧背景信息;然后,从多个通道中除第一通道之外的其他通道中,选取与第二GOP包属于同一时刻生成的GOP包,构成第二GOP包组,并提取第二GOP包组中每一个GOP包分别对应的I帧信息和P帧信息。以及,分别从除第一通道之外的其他通道中选取除第二GOP包组之外的,未丢失的且与第二GOP包相关度最高的预设数量的GOP包,构成第三GOP包组,并分别提取第二GOP包组中每一个GOP包中I帧信息和P帧信息。通过对这些信息进行融合处理,则可以恢复第二GOP包,相当于结合了同一时刻不同角度(不同通道)中所采集的数据信息,以及相邻时刻的数据信息,最终完成第二GOP包的恢复,恢复的精确度相对而言将会更高。
在一个可选的实施方式中,基于I帧背景信息集合、第二GOP包组中每一个GOP包分别对应的I帧信息和P帧信息,以及第三GOP包组中每一个GOP包中I帧信息和P帧信息,恢复第二GOP包,可以通过如下方式实现,参见图5所示,包括:
步骤S501,基于第二GOP包组中每一个GOP包的I帧信息和第二GOP包组中的每一个GOP包的I帧信息,对第二GOP包的前景信息进行恢复。
具体的,基于第二GOP包组中每一个GOP包的I帧信息和第二GOP包组中的每一个GOP包的I帧信息,对第二GOP包的前景信息进行恢复时,可以采用预训练的对抗生成网络(Generative Adversarial Networks,简称GANs)实现。采用GANs对第二GOP包的前景信息进行重构和恢复。
步骤S502,基于第二GOP包组中每一个GOP包的P帧信息和第三GOP包组中的每一个GOP包的P帧信息,确定P帧差分信息。
类似的道理,当基于第二GOP包组中每一个GOP包的P帧信息和第三GOP包组中的每一个GOP包的P帧信息,确定P帧差分信息时,可以采用与训练好的卷积神经网络(Generative Adversarial Networks,CNN)实现,用以完成对P帧差分信息重构和恢复,进而恢复出第二GOP包的P帧信息。
步骤S503,基于前景信息、I帧背景信息集合和P帧差分信息,恢复第二GOP包。
最终,基于前景信息、I帧背景信息集合和P帧差分信息,重构出第二GOP包。
具体的,基于第二GOP包组中每一个GOP包的I帧信息和第二GOP包组中的每一个GOP包的I帧信息,可以实现对第二GOP包的前景信息的恢复,基于第二GOP包组中每一个GOP包的P帧信息和第二GOP包组中的每一个GOP包的P帧信息,可以确定同一时刻的不同GOP包,以及相邻时刻中的GOP包,与第二GOP包之间的P帧差分信息。最终,结合前景信息、I帧背景信息集合和P帧差分信息,即可恢复第二GOP包。
图6中示意出包括有10个盘,盘1到盘8中存储GOP包,盘9和盘10中存储的是校验块。其中,盘2、盘4和盘7中数据丢失。造成了数据超故障域丢失。图7为本发明提供的通过本申请实施例的方法,提取丢失数据的相邻GOP的示意图。例如,当盘2中的GOP2丢失时,提取与GOP2相邻的GOP1和GOP3中的数据。GOP4丢失时,提取与GOP4相邻的GOP3和GOP5中的数据。相邻的GOP,其对应的相关度最高。
图8中则示意出,当数据盘2中GOP2数据已经丢失不可恢复时,从通道2和3中的GOP2中分别提取相关前景信息,以及与GOP2相关的I帧和P帧信息。从而结合通道内相邻GOP和通道间同一时间的GOP信息,并分析I帧和P帧信息特征,实现前景、背景和差分信息的重构,能够实现超故障域丢失数据的恢复。
具体的实现过程均已在前文中做了详细描述,因此这里不再赘述。
进一步可选的,在一种可能的实施方式中,虽然按照上述方式,若同时丢3块盘,也可能存在丢失同一个时刻的3个包的情况。虽然这种情况发生的概率非常的低,但是一旦出现,还是需要有一个比较合适的处理办法来解决。因此,本申请实施例还提供如下方法步骤,具体参见如下,以第一通道中丢失的是第三GOP包为例,其他通道分别丢失的是第三GOP’包,以及第三GOP”包等为例进行说明,下文中以恢复第三GOP包为例。
步骤a1,从第一通道中除第三GOP包之外未丢失的且与第三GOP包相关度最高的预设数量的GOP包中提取I帧背景信息,构成I帧背景信息集合。
步骤a2,从多通道中选取未丢失的且与第三GOP包相关度最高的预设数量的GOP包,构成第四GOP包组。
步骤a3,分别提取第四GOP包组中每一个GOP包中I帧信息和P帧信息;
步骤a4,基于I帧背景信息集合、第四GOP包组中每一个GOP包分别对应的I帧信息和P帧信息,恢复第二GOP包。
其中,步骤a4可以通过如下方法步骤实现:
步骤b1,基于第四GOP包组中每一个GOP包分别对应的I帧信息,对第二GOP包的前景信息进行恢复;
步骤b2,基于第四GOP包组中每一个GOP包分别对应的P帧信息,确定P帧差分信息;
步骤b3,基于前景信息、I帧背景信息集合和P帧差分信息,恢复第二GOP包。
步骤a1到步骤a4,以及步骤b1到步骤b3,的具体实现过程与前文中图6所对应的实施例,以及图6后面的实施例中所介绍的方式类似,因此这里不在过多赘述。
这里需要说明的是,因为第三GOP包属于同一时刻生成的GOP包都已经丢失,因此不能再从多通道中除第一通道之外的其他通道选取与第三GOP包属于同一时刻生成的GOP包,所以,在步骤a1到步骤a4,以及步骤b1到步骤b3中,涉及这部分的内容则直接省去。
在一个可选的实施方式中,在考虑同一条带中通道采集的同一时刻的GOP包可以分配到不同硬盘中进行存储的基础上,还可以考虑不同条带中相关的GOP包也分配到不同的硬盘进行存储,以避免当某一个硬盘中的GOP包丢失时,也可以及时的、准确的找回不同条带中的GOP包。因此,方法还包括如下方法步骤,具体参见如下:
步骤c1,基于GOP包差异度最大分配原则,从每一个通道中分别选取一个目标GOP包后,将分属于同一组的目标GOP包每分别与准存储硬盘中已存储的GOP包进行比较。
其中,同一组的目标GOP包为基于GOP包差异度最大分配规则选取出的待存放于同一硬盘的GOP包;
步骤c2,当确定同一组的目标GOP包均与准存储硬盘中已存储的GOP包之间相关度小于或者等于预设相关度阈值时,则将同一组的目标GOP包存放于准存储硬盘。
其中,相关度除了可以由上文中所介绍的生成时间决定以外,还可以由两个GOP包中元数据之间的关联关系决定,例如元数据内容本身、元数据的原始存储地址等;
或者,
步骤c3,当确定同一组的目标GOP包中任一个GOP包与准存储硬盘中已存储的GOP包之间相关度小于预设相关度阈值时,为同一组的目标GOP包更换其他存储硬盘。
进一步可选的,为进一步降低盘内全局GOP相关性,实现数据可靠性的进一步提升,在GOP写入时,记录每一个条带中的GOP的写入地址,并对内存中的GOP写入记录进行更新,以实现2*k秒内条带间GOP相关性比较小。实际上,前述方法步骤c1到c3就可以同一硬盘中不同条带的GOP包之间的相关性最小,也即是差异度相对比较大。但是,在确定相关度时,也可以考虑根据条带的GOP当前的存储地址确定。如果不同条带中比较相关的GOP包已经存储在硬盘A中,那么可以考虑还没存储的GOP包存储至硬盘B中。
图9中示意出多通道视频数据存储的具体实现框图,图10中示意出超故障域丢失数据恢复的整体流程框图,需要说明的是,本申请的侧重要说明的是超故障域的情况,所以并没有介绍在不发生超故障域的普通情况的具体处理流程,实际上,在没有发生超故障域的普通情况下,可以直接通过普通纠错编码(Error Correction Coding,简称EC编码)实现。图11中则示意出包括实现不同条带之间GOP差异度最大的整体流程框图,图11中的GOP目标写入地址是根据条带间和条带内不同通道直接的GOP包差异度最大化决定的。图11中的存储盘阵中包括的D1、D2、……,D6……等为本申请实施例中所提及的硬盘。因为图9至图11中的方法流程均已在前文中做了详细介绍,因此这里不在过多赘述。
在本实施例中还提供了一种多通道视频数据处理装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
本实施例提供一种多通道视频数据处理装置,如图12示,包括:获取模块1201、拆分模块1202和处理模块1203。
获取模块1201,用于获取经过预处理后的多通道视频数据,多通道视频数据为通过不同通道采集并经过预处理后生成的数据;
拆分模块1202,用于针对每一个通道视频数据,以图像组GOP为单位进行拆分,获取多个GOP包;
处理模块1203,用于对多个GOP包进行纠删编码处理后,根据多通道中每一个GOP包的生成时间,确定不同通道中的GOP包之间的差异度;基于GOP包差异度最大分配原则,从每一个通道中分别选取一个目标GOP包放在同一硬盘中进行存储,其中不同通道中的目标GOP包之间的时间差异度最大。
在一种可选的实施方式中,处理模块1203,具体用于以多通道中的第一通道中的第一GOP包为基准,在当前迭代周期中,分别从多通道中除第一通道之外的其他通道中遍历选取每一个GOP包,并分别基于遍历到的所有GOP包的生成时间和第一GOP包的生成时间,生成不同通道中不同GOP包之间的差异度,其中,第一通道为多通道中的任一个通道,第一GOP包为第一通道中的任一个GOP包。
在一种可选的实施方式中,处理模块1203,具体用于当以第一通道中的第一GOP包为基准遍历完成,获取多个差异度后,选取最大差异度对应的第一GOP包组,其中,第一GOP包组包括第一GOP包和多通道中除第一通道之外的每一个通道中的一个目标GOP包;
将第一GOP包组中的所有GOP包,存放于同一硬盘中存储,其中,不同组GOP包存放于不同硬盘中,硬盘的数量为任一通道中的GOP包数量和该通道中的纠删编码的数量的总和。
在一种可选的实施方式中,当数据超故障域丢失情况发生,且多通道中第一通道中的第二GOP包丢失,除第一通道之外的其他通道中的与第二GOP包同一时刻生成的GOP包未丢失时,处理模块1203还用于:
从第一通道中除第二GOP包之外未丢失的且与第二GOP包相关度最高的预设数量的GOP包中提取I帧背景信息,构成I帧背景信息集合,其中,相关度根据GOP包的生成时间确定,第一通道中的GOP包的生成时间与第二GOP包的生成时间之间的差值越小,相关度越高;
从多通道中除第一通道之外的其他通道选取与第二GOP包属于同一时刻生成的GOP包,构成第二GOP包组,并提取第二GOP包组中每一个GOP包分别对应的I帧信息和P帧信息;
以及,分别从除第一通道之外的其他通道中选取除第二GOP包组之外的,未丢失的且与第二GOP包相关度最高的预设数量的GOP包,构成第三GOP包组;
分别提取第二GOP包组中每一个GOP包中I帧信息和P帧信息;
基于I帧背景信息集合、第二GOP包组中每一个GOP包分别对应的I帧信息和P帧信息,以及第三GOP包组中每一个GOP包中I帧信息和P帧信息,恢复第二GOP包。
在一种可选的实施方式中,处理模块1203,具体用于:
基于第二GOP包组中每一个GOP包的I帧信息和第二GOP包组中的每一个GOP包的I帧信息,对第二GOP包的前景信息进行恢复;
基于第二GOP包组中每一个GOP包的P帧信息和第三GOP包组中的每一个GOP包的P帧信息,确定P帧差分信息;
基于前景信息、I帧背景信息集合和P帧差分信息,恢复第二GOP包。
在一种可选的实施方式中,当通道的条数为3条时,处理模块1203,具体用于基于如下表达式,生成不同通道中不同GOP包之间的差异度:
d=max∑i,j,k∈[1,n]|t(1,i)-t(2,j)|+|t(2,j)-t(3,k)|+|t(1,i)-t(3,k)|(公式2)
其中,d为不同通道中不同GOP包之间的差异度,t(1,i)为第一通道中第i个GOP的生成时间,t(2,j)为第二通道中第j个GOP的生成时间,t(3,k)为第三通道中第k个GOP的生成时间,i,j和k分别是三条通道中任意GOP包的标识,i、j,k均为正整数。
在一种可选的实施方式中,当确定当前条带并非为首个条带时,处理模块1203,还用于:
基于GOP包差异度最大分配原则,从每一个通道中分别选取一个目标GOP包后,将分属于同一组的目标GOP包每分别与准存储硬盘中已存储的GOP包进行比较,同一组的目标GOP包为基于GOP包差异度最大分配规则选取出的待存放于同一硬盘的GOP包;
当确定同一组的目标GOP包均与准存储硬盘中已存储的GOP包之间相关度小于或者等于预设相关度阈值时,则将同一组的目标GOP包存放于准存储硬盘;
或者,当确定同一组的目标GOP包均与准存储硬盘中已存储的GOP包之间相关度小于预设相关度阈值时,为同一组的目标GOP包更换其他存储硬盘。
本实施例中的多通道视频数据处理装置是以功能模块的形式来呈现,这里的模块是指专用集成电路(Application Specific Integrated Circuit,简称ASIC),执行一个或多个软件或固定程序的处理器和存储器,和/或其他可以提供上述功能的器件。
上述各个模块和单元的更进一步的功能描述与上述对应实施例相同,在此不再赘述。
本发明实施例提供的一种多通道视频数据处理装置,在获取到预处理后的多通道视频数据后,针对每一个通道的视频数据,以GOP为单位进行拆分,获取多个GOP包。然后,对多个GOP包进行纠删编码处理后,根据多通道中每一个GOP包的生成时间,确定不同通道中的GOP包的差异度;根据GOP包差异度最大分配原则,从每一个通道中分别选取一个目标GOP包放在同一硬盘中进行存储。通过该方式,即使在某一个或多个硬盘故障时,也会大大降低丢失的是同一GOP包的概率,大大降低数据恢复难度,提升修复准确度。
本发明实施例还提供一种计算机设备,具有上述图12所示的多通道视频数据处理装置。
请参阅图13,图13是本发明可选实施例提供的一种计算机设备的结构示意图,如图13所示,该计算机设备包括:一个或多个处理器10、存储器20,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相通信连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在计算机设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在一些可选的实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个计算机设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图13中以一个处理器10为例。
处理器10可以是中央处理器,网络处理器或其组合。其中,处理器10还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路,可编程逻辑器件或其组合。上述可编程逻辑器件可以是复杂可编程逻辑器件,现场可编程逻辑门阵列,通用阵列逻辑或其任意组合。
其中,存储器20存储有可由至少一个处理器10执行的指令,以使至少一个处理器10执行实现上述实施例示出的方法。
存储器20可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据一种小程序落地页的展现的计算机设备的使用所创建的数据等。此外,存储器20可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个硬盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些可选的实施方式中,存储器20可选包括相对于处理器10远程设置的存储器,这些远程存储器可以通过网络连接至该计算机设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
存储器20可以包括易失性存储器,例如,随机存取存储器;存储器也可以包括非易失性存储器,例如,快闪存储器,硬盘或固态硬盘;存储器20还可以包括上述种类的存储器的组合。
该计算机设备还包括输入装置30和输出装置40。处理器10、存储器20、输入装置30和输出装置40可以通过总线或者其他方式连接,图13中以通过总线连接为例。
输入装置30可接收输入的数字或字符信息,以及产生与该计算机设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等。输出装置40可以包括显示设备、辅助照明装置(例如,LED)和触觉反馈装置(例如,振动电机)等。上述显示设备包括但不限于液晶显示器,发光二极管,显示器和等离子体显示器。在一些可选的实施方式中,显示设备可以是触摸屏。
本发明实施例还提供了一种计算机可读存储介质,上述根据本发明实施例的方法可在硬件、固件中实现,或者被实现为可记录在存储介质,或者被实现通过网络下载的原始存储在远程存储介质或非暂时机器可读存储介质中并将被存储在本地存储介质中的计算机代码,从而在此描述的方法可被存储在使用通用计算机、专用处理器或者可编程或专用硬件的存储介质上的这样的软件处理。其中,存储介质可为磁碟、光盘、只读存储记忆体、随机存储记忆体、快闪存储器、硬盘或固态硬盘等;进一步地,存储介质还可以包括上述种类的存储器的组合。可以理解,计算机、处理器、微处理器控制器或可编程硬件包括可存储或接收软件或计算机代码的存储组件,当软件或计算机代码被计算机、处理器或硬件访问且执行时,实现上述实施例示出的方法。
虽然结合附图描述了本发明的实施例,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下做出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。
Claims (10)
1.一种多通道视频数据处理方法,其特征在于,所述方法包括:
获取经过预处理后的多通道视频数据,所述多通道视频数据为通过不同通道采集并经过预处理后生成的数据;
针对每一个通道视频数据,以图像组GOP为单位进行拆分,获取多个GOP包;
对多个所述GOP包进行纠删编码处理后,根据多通道中每一个所述GOP包的生成时间,确定不同通道中的GOP包之间的差异度;
基于GOP包差异度最大分配原则,从每一个通道中分别选取一个目标GOP包放在同一硬盘中进行存储,其中不同通道中的所述目标GOP包之间的时间差异度最大。
2.根据权利要求1所述的方法,其特征在于,对多个所述GOP包进行纠删编码处理后,根据多通道中每一个所述GOP包的生成时间,确定不同通道中的GOP包之间的差异度,包括:
以所述多通道中的第一通道中的第一GOP包为基准,在当前迭代周期中,分别从多通道中除所述第一通道之外的其他通道中遍历选取每一个GOP包,并分别基于遍历到的所有GOP包的生成时间和所述第一GOP包的生成时间,生成不同通道中不同GOP包之间的差异度,其中,所述第一通道为所述多通道中的任一个通道,所述第一GOP包为所述第一通道中的任一个GOP包。
3.根据权利要求2所述的方法,其特征在于,所述基于GOP差异度最大分配原则,从每一个通道中分别选取一个目标GOP包放在同一硬盘中进行存储,包括:
当以所述第一通道中的第一GOP包为基准遍历完成,获取多个差异度后,选取最大差异度对应的第一GOP包组,其中,所述第一GOP包组包括所述第一GOP包和所述多通道中除所述第一通道之外的每一个通道中的一个目标GOP包;
将所述第一GOP包组中的所有GOP包,存放于同一硬盘中存储,其中,不同组GOP包存放于不同硬盘中,所述硬盘的数量为任一通道中的GOP包数量和该通道中的纠删编码的数量的总和。
4.根据权利要求1-3任一项所述的方法,其特征在于,当数据超故障域丢失情况发生,且所述多通道中第一通道中的第二GOP包丢失,除所述第一通道之外的其他通道中的与所述第二GOP包同一时刻生成的GOP包未丢失时,所述方法还包括:
从所述第一通道中除所述第二GOP包之外未丢失的且与所述第二GOP包相关度最高的预设数量的GOP包中提取I帧背景信息,构成I帧背景信息集合,其中,所述相关度根据GOP包的生成时间确定,所述第一通道中的GOP包的生成时间与所述第二GOP包的生成时间之间的差值越小,相关度越高;
从所述多通道中除所述第一通道之外的其他通道选取与所述第二GOP包属于同一时刻生成的GOP包,构成第二GOP包组,并提取所述第二GOP包组中每一个GOP包分别对应的I帧信息和P帧信息;
以及,分别从除所述第一通道之外的其他通道中选取除所述第二GOP包组之外的,未丢失的且与所述第二GOP包相关度最高的预设数量的GOP包,构成第三GOP包组;
分别提取所述第二GOP包组中每一个GOP包中I帧信息和P帧信息;
基于所述I帧背景信息集合、所述第二GOP包组中每一个GOP包分别对应的I帧信息和P帧信息,以及所述第三GOP包组中每一个GOP包中I帧信息和P帧信息,恢复所述第二GOP包。
5.根据权利要求4所述的方法,其特征在于,所述基于所述I帧背景信息集合、所述第二GOP包组中每一个GOP包分别对应的I帧信息和P帧信息,以及所述第三GOP包组中每一个GOP包中I帧信息和P帧信息,恢复所述第二GOP包,包括:
基于所述第二GOP包组中每一个GOP包的I帧信息和所述第三GOP包组中的每一个GOP包的I帧信息,对所述第二GOP包的前景信息进行恢复;
基于所述第二GOP包组中每一个GOP包的P帧信息和所述第三GOP包组中的每一个GOP包的P帧信息,确定P帧差分信息;
基于所述前景信息、所述I帧背景信息集合和所述P帧差分信息,恢复所述第二GOP包。
6.根据权利要求2或3所述的方法,其特征在于,当所述通道的条数为3条时,所述以所述多通道中的第一通道中的第一GOP包为基准,在当前迭代周期中,分别从多通道中除所述第一通道之外的其他通道中遍历选取每一个GOP包,并分别基于遍历到的所有GOP包的生成时间和所述第一GOP包的生成时间,生成不同通道中不同GOP包之间的差异度,采用如下公式表示:
其中,d为不同通道中不同GOP包之间的差异度,t(1,i)为第一通道中第i个GOP的生成时间,t(2,j)为第二通道中第j个GOP的生成时间,t(3,k)为第三通道中第k个GOP的生成时间,i,j和k分别是三条通道中任意GOP包的标识,i、j,k均为正整数。
7.根据权利要求1-3任一项或所述的方法,其特征在于,所述方法还包括:
基于GOP包差异度最大分配原则,从每一个通道中分别选取一个目标GOP包后,将分属于同一组的目标GOP包每分别与准存储硬盘中已存储的GOP包进行比较,所述同一组的目标GOP包为基于所述GOP包差异度最大分配规则选取出的待存放于同一硬盘的GOP包;
当确定同一组的目标GOP包均与所述准存储硬盘中已存储的GOP包之间相关度小于或者等于预设相关度阈值时,则将所述同一组的目标GOP包存放于所述准存储硬盘;
或者,当确定同一组的目标GOP包中任一GOP包与所述准存储硬盘中已存储的GOP包之间相关度小于所述预设相关度阈值时,为同一组的目标GOP包更换其他存储硬盘。
8.一种多通道视频数据处理装置,其特征在于,所述装置包括:
获取模块,用于获取经过预处理后的多通道视频数据,所述多通道视频数据为通过不同通道采集并经过预处理后生成的数据;
拆分模块,用于针对每一个通道视频数据,以图像组GOP为单位进行拆分,获取多个GOP包;
处理模块,用于对多个所述GOP包进行纠删编码处理后,根据多通道中每一个所述GOP包的生成时间,确定不同通道中的GOP包之间的差异度;基于GOP包差异度最大分配原则,从每一个通道中分别选取一个目标GOP包放在同一硬盘中进行存储,其中不同通道中的所述目标GOP包之间的时间差异度最大。
9.一种计算机设备,其特征在于,包括:
存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器中存储有计算机指令,所述处理器通过执行所述计算机指令,从而执行权利要求1至7中任一项所述的多通道视频数据处理方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机指令,所述计算机指令用于使计算机执行权利要求1至7中任一项所述的多通道视频数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410060778.5A CN117880503A (zh) | 2024-01-15 | 2024-01-15 | 多通道视频数据处理方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410060778.5A CN117880503A (zh) | 2024-01-15 | 2024-01-15 | 多通道视频数据处理方法、装置及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117880503A true CN117880503A (zh) | 2024-04-12 |
Family
ID=90580793
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410060778.5A Pending CN117880503A (zh) | 2024-01-15 | 2024-01-15 | 多通道视频数据处理方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117880503A (zh) |
-
2024
- 2024-01-15 CN CN202410060778.5A patent/CN117880503A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11003556B2 (en) | Method, device and computer program product for managing storage system | |
CN109725822B (zh) | 用于管理存储系统的方法、设备和计算机程序产品 | |
US9817713B2 (en) | Distributed cache system utilizing multiple erasure codes | |
US9460098B2 (en) | Virtual machine snapshot backup based on multilayer De-duplication | |
CN109412755B (zh) | 一种多媒体数据处理方法、装置及存储介质 | |
CN112148204B (zh) | 用于管理独立冗余盘阵列的方法、设备和介质 | |
US20130179413A1 (en) | Compressed Distributed Storage Systems And Methods For Providing Same | |
EP3079054B1 (en) | Method and apparatus for data access | |
DE102016108733A1 (de) | Steuern einer redundanten Anordnung von unabhängigen Festplatten (RAID), welche ein Nur-Lese-Flash-Datenspeichergerät einschließt | |
CN111046024B (zh) | 一种共享存储数据库的数据处理方法、装置、设备及介质 | |
DE112018004637T5 (de) | Maschinelles lernen zum verbessern von wiederherstellungen von redundanten anordnungen von unabhängigen festplatten | |
CN105898373A (zh) | 视频切片方法和装置 | |
KR101621752B1 (ko) | 부분접속 복구 가능한 반복분할 부호를 이용한 분산 저장 장치 및 그 방법 | |
Gokulakrishnan et al. | Data integrity and recovery management in cloud systems | |
CN111290881A (zh) | 一种数据恢复方法、装置、设备及存储介质 | |
Fan et al. | Adaptive-length coding of image data for low-cost approximate storage | |
CN117880503A (zh) | 多通道视频数据处理方法、装置及设备 | |
CN111506450B (zh) | 用于数据处理的方法、设备和计算机程序产品 | |
US10901846B2 (en) | Maintenance of storage devices with multiple logical units | |
WO2023082629A1 (zh) | 数据存储方法及装置、电子设备和存储介质 | |
US10353642B2 (en) | Selectively improving RAID operations latency | |
US20230186608A1 (en) | Method, device, and computer program product for video processing | |
CN102662609A (zh) | 视频访问的方法及装置 | |
US10459790B2 (en) | Elastic storage in a dispersed storage network | |
CN111541512B (zh) | 数据的处理方法、终端设备、可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |