CN116366866B - 一种基于多目标追踪的视频编码运动估计方法及装置 - Google Patents
一种基于多目标追踪的视频编码运动估计方法及装置 Download PDFInfo
- Publication number
- CN116366866B CN116366866B CN202310631080.XA CN202310631080A CN116366866B CN 116366866 B CN116366866 B CN 116366866B CN 202310631080 A CN202310631080 A CN 202310631080A CN 116366866 B CN116366866 B CN 116366866B
- Authority
- CN
- China
- Prior art keywords
- frame
- target
- video image
- position information
- detection
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 55
- 238000001514 detection method Methods 0.000 claims abstract description 210
- 239000013598 vector Substances 0.000 claims description 93
- 239000011159 matrix material Substances 0.000 claims description 64
- 238000012545 processing Methods 0.000 claims description 32
- 238000013528 artificial neural network Methods 0.000 claims description 21
- 238000013135 deep learning Methods 0.000 claims description 21
- 238000004364 calculation method Methods 0.000 claims description 10
- 238000001914 filtration Methods 0.000 claims description 8
- 238000012549 training Methods 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 8
- 238000004891 communication Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/167—Position within a video image, e.g. region of interest [ROI]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Image Analysis (AREA)
Abstract
本申请公开了一种基于多目标追踪的视频编码运动估计方法及装置,通过对视频图像进行多目标的跟踪检测,再将检测信息提供给视频编码器,从而能够利用目标的追踪信息来进行运动估计的方法,能够在视频编码的运动估计中充分利用视频图像中物体移动的相关信息,准确的搜索到最优的匹配点,且搜索的效率也得到了提升。
Description
技术领域
本申请属于视频编码技术领域,特别的涉及一种基于多目标追踪的视频编码运动估计方法及装置。
背景技术
目前主流的视频编码方法中,帧间预测编码是相当重要的一个环节,其能够大幅度减少视频数据在时域上的冗余,达到比较好的视频编码压缩效果。
帧间预测是通过对编码宏块的运动估计来完成的,其主要实现在参考帧中搜索最相似的匹配宏块,然而传统的运动估计方法没有利用图像本身的相关信息,通常采用以当前宏块为搜索起点然后依次按照固定的模式进行搜索的方法,这些传统方法不能根据图像中物体运动的轨迹进行自适应的改变,对于运动剧烈的图像要经过多次搜索才能找到匹配点,其搜索效率及搜索的准确性都将受到限制。
发明内容
本申请为解决上述提到的传统方法不能根据图像中物体运动的轨迹进行自适应的改变,对于运动剧烈的图像要经过多次搜索才能找到匹配点,其搜索效率及搜索的准确性都将受到限制等技术问题,提出一种基于多目标追踪的视频编码运动估计方法及装置,其技术方案如下:
第一方面,本申请实施例提供了一种基于多目标追踪的视频编码运动估计方法,包括:
对待处理视频进行解码处理,得到至少两帧视频图像;
对每帧视频图像进行多目标识别处理,得到标记有至少两个目标的每帧视频图像;其中,每个目标基于检测框进行标记;
将第一帧视频图像中与每个目标对应的位置信息以及检测框尺寸信息作为追踪集合,将第m帧视频图像中与每个目标对应的位置信息以及检测框尺寸信息作为检测集合,并根据追踪集合以及检测集合确定出第一帧视频图像中的每个目标在第m帧视频图像所对应的检测框位置信息;其中,m为大于或等于2的正整数;
基于第i帧视频图像中编码宏块的位置信息确定出编码宏块在第j帧视频图像中的最优匹配位置信息,并根据编码宏块的位置信息以及最优匹配位置信息计算出编码宏块的帧间运动向量;其中,i为大于或等于1的正整数,j为大于或等于1的正整数,i不等于j;
根据所有编码宏块的帧间运动向量对所有视频图像进行编码处理。
在第一方面的一种可选方案中,对每帧视频图像进行多目标识别处理,得到标记有至少两个目标的每帧视频图像,包括:
将每帧视频图像分别输入至训练后的深度学习神经网络,得到标记有至少两个目标的每帧视频图像;其中,深度学习神经网络基于多个标记有样本目标的样本图像训练得到。
在第一方面的又一种可选方案中,根据追踪集合以及检测集合确定出第一帧视频图像中的每个目标在第m帧视频图像所对应的检测框位置信息,包括:
计算出追踪集合中每个目标所对应的特征向量,与检测集合中每个目标所对应的特征向量之间的余弦距离;
对追踪集合中每个目标对应的位置信息以及检测框尺寸信息进行卡尔曼滤波处理,得到每个目标对应的检测框预测位置信息以及协方差信息;
基于检测集合中每个目标对应的检测框尺寸信息,以及追踪集合中每个目标对应的检测框预测位置信息、协方差信息,计算出追踪集合中每个目标与检测集合中每个目标之间的马氏距离;
对追踪集合中每个目标与检测集合中每个目标之间的余弦距离以及相应的马氏距离进行加权求和处理,得到总距离代价;
根据追踪集合中每个目标与检测集合中每个目标之间的总距离代价,确定出第一帧视频图像中的每个目标在第m帧视频图像所对应的检测框位置信息。
在第一方面的又一种可选方案中,根据追踪集合中每个目标与检测集合中每个目标之间的总距离代价,确定出第一帧视频图像中的每个目标在第m帧视频图像所对应的检测框位置信息,包括:
将追踪集合中每个目标与检测集合中每个目标之间的总距离代价转换为矩阵表达式;其中,矩阵表达式中第s行第t列对应的值为追踪集合中第s个目标与检测集合中第t个目标之间的总距离代价,s以及t均为大于或等于1的正整数;
在矩阵表达式中确定出与每一行对应的最小值,分别计算出每一行中的每个值与最小值之间的差值,并根据所有差值对矩阵表达式进行更新处理;
在更新后的矩阵表达式中确定出与每一列对应的最小值,分别计算出每一列中的每个值与最小值之间的差值,并根据所有差值对矩阵表达式再次进行更新处理;
获取更新后的矩阵表达式中覆盖所有零值的最小行列个数;
当检测到最小行列个数超过预设阈值时,根据更新后的矩阵表达式确定出第一帧视频图像中的每个目标在第m帧视频图像所对应的检测框位置信息。
在第一方面的又一种可选方案中,获取更新后的矩阵表达式中覆盖所有零值的最小行列个数之后,还包括:
当检测到最小行列个数未超过预设阈值时,在更新后的矩阵表达式中确定出最小值;
计算出每一行中的每个值与最小值之间的差值,并计算出每一列中的每个值与最小值之间的总和;
再次获取更新后的矩阵表达式中覆盖所有零值的最小行列个数。
在第一方面的又一种可选方案中,基于第i帧视频图像中编码宏块的位置信息确定出编码宏块在第j帧视频图像中的最优匹配位置信息,包括:
判断编码宏块是否处于第i帧视频图像中与目标对应的检测框范围内;
当确定编码宏块处于第i帧视频图像中与目标对应的检测框范围内时,根据编码宏块在第i帧视频图像中的位置信息确定出编码宏块在第j帧视频图像中的至少两个参考位置信息,并分别计算出编码宏块的位置信息与每个参考位置信息之间的图像残差;
将最小图像残差所对应的参考位置信息作为编码宏块在第j帧视频图像中的最优匹配位置信息。
在第一方面的又一种可选方案中,根据编码宏块的位置信息以及最优匹配位置信息计算出编码宏块的帧间运动向量,包括:
根据编码宏块的位置信息确定第一坐标,并根据最优匹配位置信息确定第二坐标;
基于第一坐标以及第二坐标计算出第一运动向量;
根据编码宏块的相邻编码宏块所对应的运动向量确定出第二运动向量;
对第一运动向量以及第二运动向量进行差值计算,得到编码宏块的帧间运动向量。
第二方面,本申请实施例提供了一种基于多目标追踪的视频编码运动估计装置,包括:
视频解码模块,用于对待处理视频进行解码处理,得到至少两帧视频图像;
目标识别模块,用于对每帧视频图像进行多目标识别处理,得到标记有至少两个目标的每帧视频图像;其中,每个目标基于检测框进行标记;
目标追踪模块,用于将第一帧视频图像中与每个目标对应的位置信息以及检测框尺寸信息作为追踪集合,将第m帧视频图像中与每个目标对应的位置信息以及检测框尺寸信息作为检测集合,并根据追踪集合以及检测集合确定出第一帧视频图像中的每个目标在第m帧视频图像所对应的检测框位置信息;其中,m为大于或等于2的正整数;
运动估计模块,用于基于第i帧视频图像中编码宏块的位置信息确定出编码宏块在第j帧视频图像中的最优匹配位置信息,并根据编码宏块的位置信息以及最优匹配位置信息计算出编码宏块的帧间运动向量;其中,i为大于或等于1的正整数,j为大于或等于1的正整数,i不等于j;
视频编码模块,用于根据所有编码宏块的帧间运动向量对所有视频图像进行编码处理。
第三方面,本申请实施例还提供了一种基于多目标追踪的视频编码运动估计装置,包括处理器以及存储器;
处理器与存储器连接;
存储器,用于存储可执行程序代码;
处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,以用于实现本申请实施例第一方面或第一方面的任意一种实现方式提供的基于多目标追踪的视频编码运动估计方法。
第四方面,本申请实施例提供了一种计算机存储介质,计算机存储介质存储有计算机程序,计算机程序包括程序指令,程序指令当被处理器执行时,可实现本申请实施例第一方面或第一方面的任意一种实现方式提供的基于多目标追踪的视频编码运动估计方法。
在本申请实施例中,可在对视频进行编码的过程中,对待处理视频进行解码处理,得到至少两帧视频图像;对每帧视频图像进行多目标识别处理,得到标记有至少两个目标的每帧视频图像;将第一帧视频图像中与每个目标对应的位置信息以及检测框尺寸信息作为追踪集合,将第m帧视频图像中与每个目标对应的位置信息以及检测框尺寸信息作为检测集合,并根据追踪集合以及检测集合确定出第一帧视频图像中的每个目标在第m帧视频图像所对应的检测框位置信息;基于第i帧视频图像中编码宏块的位置信息确定出编码宏块在第j帧视频图像中的最优匹配位置信息,并根据编码宏块的位置信息以及最优匹配位置信息计算出编码宏块的帧间运动向量;根据所有编码宏块的帧间运动向量对所有视频图像进行编码处理。通过对视频图像进行多目标的跟踪检测,再将检测信息提供给视频编码器,从而能够利用目标的追踪信息来进行运动估计的方法,能够在视频编码的运动估计中充分利用视频图像中物体移动的相关信息,准确的搜索到最优的匹配点,且搜索的效率也得到了提升。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例中所需使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种基于多目标追踪的视频编码运动估计方法的整体流程图;
图2为本申请实施例提供的一种视频图像的目标识别效果示意图;
图3为本申请实施例提供的一种视频图像的目标检测框的效果示意图;
图4为本申请实施例提供的一种视频图像的最优匹配位置效果示意图;
图5为本申请实施例提供的一种视频图像的帧间运动向量效果示意图;
图6为本申请实施例提供的一种基于多目标追踪的视频编码运动估计装置的结构示意图;
图7为本申请实施例提供的又一种基于多目标追踪的视频编码运动估计装置的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
在下述介绍中,术语“第一”、“第二”仅为用于描述的目的,而不能理解为指示或暗示相对重要性。下述介绍提供了本申请的多个实施例,不同实施例之间可以替换或者合并组合,因此本申请也可认为包含所记载的相同和/或不同实施例的所有可能组合。因而,如果一个实施例包含特征A、B、C,另一个实施例包含特征B、D,那么本申请也应视为包括含有A、B、C、D的一个或多个所有其他可能的组合的实施例,尽管该实施例可能并未在以下内容中有明确的文字记载。
下面的描述提供了示例,并且不对权利要求书中阐述的范围、适用性或示例进行限制。可以在不脱离本申请内容的范围的情况下,对描述的元素的功能和布置做出改变。各个示例可以适当省略、替代或添加各种过程或组件。例如所描述的方法可以以所描述的顺序不同的顺序来执行,并且可以添加、省略或组合各种步骤。此外,可以将关于一些示例描述的特征组合到其他示例中。
请参阅图1,图1示出了本申请实施例提供的一种基于多目标追踪的视频编码运动估计方法的整体流程图。
如图1所示,该基于多目标追踪的视频编码运动估计方法至少可以包括以下步骤:
步骤102、对待处理视频进行解码处理,得到至少两帧视频图像。
在本申请实施例中,基于多目标追踪的视频编码运动估计方法可以但不局限于应用在控制终端,该控制终端可用于对获取到的视频进行解码处理,接着对解码得到的视频图像进行多目标的跟踪检测,接着将检测信息提供给视频编码器,以能够利用目标的追踪信息来进行运动估计,并最终结合估计出的运动向量对视频图像进行编码处理。其中,获取到的视频可以但不局限于为包含车辆的道路交通视频或是包含人体的街道人流视频,此处控制终端获取该视频的方式可为通过已建立连接的摄像设备直接获取,且不限定于此。
具体地,可在对视频进行编码的过程中,先对获取到的待处理视频进行解码处理,以得到该待处理视频中与每帧视频图像对应的原始数据。可以理解的是,在本申请实施例中可以但不局限于为通过设定的视频解码器对待处理视频进行解码处理,以得到至少两帧视频图像,该任意相邻的两帧视频图像之间的时间间隔保持一致,例如可对时长为1分钟的待处理视频进行解码处理,以得到时间间隔为10秒的6帧视频图像。
步骤104、对每帧视频图像进行多目标识别处理,得到标记有至少两个目标的每帧视频图像。
具体地,在对待处理视频进行解码处理,得到至少两帧视频图像之后,可对每帧视频图像分别进行多目标识别处理,以从每帧视频图像中识别出多个目标,并得到标记有至少两个目标的每帧视频图像。其中,每帧视频图像中包含有至少两个目标,在进行目标识别处理的过程中可识别出每帧视频图像中所包含的所有目标的位置信息以及与每个目标对应的检测框尺寸信息,此处检测框尺寸信息可以但不局限于为标记目标的检测框的宽度以及高度信息。
可以理解的是,当视频为道路交通视频时,每帧视频图像对应的多个目标可以但不局限于为出现在道路交通视频中的所有行驶车辆;当视频为街道人流视频时,每帧视频图像对应的多个目标可以但不局限于为出现在该街道人流视频中的所有人体,此处不限定于视频的类型。
作为本申请实施例的一种可选,对每帧视频图像进行多目标识别处理,得到标记有至少两个目标的每帧视频图像,包括:
将每帧视频图像分别输入至训练后的深度学习神经网络,得到标记有至少两个目标的每帧视频图像;其中,深度学习神经网络基于多个标记有样本目标的样本图像训练得到。
具体地,可在对每帧视频图像进行多目标识别处理的过程中,将每帧视频图像输入至训练后的深度学习神经网络,该深度学习神经网络的类型可以但不局限于为CenterNet、YOLO、SSD或是Faster RCNN等神经网络,并通过该深度学习神经网络输出相应的标记有至少两个目标的每帧视频图像。
其中,此处以深度学习神经网络的类型为CenterNet目标检测网络为例,可先根据待处理视频对应的目标类型采集相应的数据集,以用于对CenterNet目标检测网络进行训练。例如待处理视频的类型为道路交通视频时,CenterNet目标检测网络的数据集可以但不局限于为包含多种不同类别的车辆图像以及在图像中用于标记车辆目标位置的检测框范围。接着,可基于该数据集对CenterNet目标检测网络进行训练,直至该CenterNet目标检测网络验证损失稳定不再下降后即可,且为了提高模型的准确性其验证损失应该尽量小。接着,在CenterNet目标检测网络训练完成之后,可将每帧视频图像输入至该CenterNet目标检测网络中,以得到每帧视频图像中对每个目标进行标记的检测框尺寸信息。
此处还可参阅图2示出的本申请实施例的一种视频图像的目标识别效果示意图,如图2所示,该视频图像中包含有四个目标(形状均不一致),在将该视频图像输入至深度学习神经网络之后,输出的视频图像中每个目标均对应标记有检测框,且每个检测框对应的宽度以及高度不同。
步骤106、将第一帧视频图像中与每个目标对应的位置信息以及检测框尺寸信息作为追踪集合,将第m帧视频图像中与每个目标对应的位置信息以及检测框尺寸信息作为检测集合,并根据追踪集合以及检测集合确定出第一帧视频图像中的每个目标在第m帧视频图像所对应的检测框位置信息。
具体地,在得到标记有至少两个目标的每帧视频图像之后,可在所有视频图像中选取第一帧视频图像中的所有目标、与每个目标对应的位置信息以及检测框尺寸信息作为追踪集合,并将所有视频图像中除去第一帧视频图像的其他所有视频图像中的所有目标、与每个目标对应的位置信息以及检测框尺寸信息作为检测集合。其中,追踪集合可理解为将每个目标初始化成一个追踪对象,每个追踪对象包括对应的位置信息以及检测框尺寸信息;检测集合也可理解为将每个目标初始化成一个追踪对象,每个追踪对象包括对应的位置信息以及检测框尺寸信息。
进一步的,在分别得到追踪集合以及检测集合之后,可计算出追踪集合中每个目标所对应的特征向量,与检测集合中每个目标所对应的特征向量之间的余弦距离,其中,与每个目标所对应的特征向量可以但不局限于为每个目标的轮廓特征向量(也可称为ReID(Re-identification) 特征向量),其可通过上述提到的深度学习神经网络获取,也即该深度学习神经网络还可输出有与每个目标对应的轮廓特征向量。
此处余弦距离的表达式可以但不局限于参阅如下:
上式中,可对应为追踪集合中第/>个追踪对象(也即目标)与检测集合中第/>个检测对象(也即目标)之间的余弦距离,/>可对应为追踪集合中第/>个追踪对象的特征向量,/>可对应为检测集合中第/>个检测对象的特征向量。
进一步的,在分别得到追踪集合以及检测集合之后,还可对追踪集合中每个目标对应的位置信息以及检测框尺寸信息进行卡尔曼滤波处理,以得到与每个目标对应的检测框预测位置信息以及协方差信息。其中,卡尔曼滤波处理的方式可理解为本领域常规的技术,此处不再过多赘述。
进一步的,在通过卡尔曼滤波处理技术得到追踪集合中与每个目标对应的检测框预测位置信息以及协方差信息之后,可根据该追踪集合中与每个目标对应的检测框预测位置信息以及协方差信息,和检测集合中与每个目标对应的检测框尺寸信息,计算出追踪集合中每个目标与检测集合中每个目标之间的马氏距离,该马氏距离的计算表达式可以但不局限于参阅如下:
上式中,可对应为追踪集合中第/>个追踪对象(也即目标)与检测集合中第/>个检测对象(也即目标)之间的马氏距离,/>可对应为检测集合中第/>个检测对象的检测框尺寸信息,/>可对应为追踪集合中第/>个追踪对象的检测框预测位置信息,/>可对应为追踪集合中第/>个追踪对象的协方差信息。
进一步的,在分别得到追踪集合中每个目标与检测集合中每个目标之间的余弦距离以及相应的马氏距离之后,可以但不局限于通过预设的权重值,对该追踪集合中每个目标与检测集合中每个目标之间的余弦距离以及相应的马氏距离进行加权求和计算,得到追踪集合中每个目标与检测集合中每个目标之间的总距离代价,其中,总距离代价的计算表达式可以但不局限于参阅如下:
上式中,可对应为追踪集合中第/>个追踪对象与检测集合中第/>个检测对象之间的总距离代价,/>可对应为上述提到的追踪集合中第/>个追踪对象(也即目标)与检测集合中第/>个检测对象(也即目标)之间的余弦距离,/>可对应为上述提到的追踪集合中第/>个追踪对象(也即目标)与检测集合中第/>个检测对象(也即目标)之间的马氏距离,/>可对应为预先设置的权重值。
进一步的,在得到追踪集合中每个目标与检测集合中每个目标之间的总距离代价之后,可以但不局限于采用匈牙利算法对该追踪集合中每个目标与检测集合中每个目标之间的总距离代价进行计算,得到追踪集合中每个目标的最优匹配,进而确定出第一帧视频图像中的每个目标在第m帧视频图像所对应的检测框位置信息。
作为本申请实施例的又一种可选,根据追踪集合中每个目标与检测集合中每个目标之间的总距离代价,确定出第一帧视频图像中的每个目标在第m帧视频图像所对应的检测框位置信息,包括:
将追踪集合中每个目标与检测集合中每个目标之间的总距离代价转换为矩阵表达式;其中,矩阵表达式中第s行第t列对应的值为追踪集合中第s个目标与检测集合中第t个目标之间的总距离代价,s以及t均为大于或等于1的正整数;
在矩阵表达式中确定出与每一行对应的最小值,分别计算出每一行中的每个值与最小值之间的差值,并根据所有差值对矩阵表达式进行更新处理;
在更新后的矩阵表达式中确定出与每一列对应的最小值,分别计算出每一列中的每个值与最小值之间的差值,并根据所有差值对矩阵表达式再次进行更新处理;
获取更新后的矩阵表达式中覆盖所有零值的最小行列个数;
当检测到最小行列个数超过预设阈值时,根据更新后的矩阵表达式确定出第一帧视频图像中的每个目标在第m帧视频图像所对应的检测框位置信息。
具体地,可在确定出第一帧视频图像中的每个目标在第m帧视频图像所对应的检测框位置信息的过程中,先将追踪集合中每个目标与检测集合中每个目标之间的总距离代价转换为矩阵表达式,例如矩阵表达式中第s行第t列对应的值为追踪集合中第s个目标与检测集合中第t个目标之间的总距离代价,s以及t均为大于或等于1的正整数。
接着,在矩阵表达式中确定出与每一行对应的最小值,分别计算出每一行中的每个值与该最小值之间的差值,并将每一行中的每个值替换为该与最小值之间的差值。可以理解的是,每一行中有至少一个值为0。
接着,在对每一行进行替换处理之后,可在矩阵表达式中确定出与每一列对应的最小值,分别计算出每一列中的每个值与该最小值之间的差值,并将每一列中的每个值替换为该与最小值之间的差值。可以理解的是,每一列中有至少一个值为0。
接着,可用尽可能少的列或行标记来覆盖矩阵中所有零值,以获取更新后的矩阵表达式中覆盖所有零值的最小行列个数。可以理解的是,要保障行列个数最小,可以但不局限于使标记的行或列中对应的零值个数尽可能大。
当检测到最小行列个数超过预设阈值时,可根据最终替换后的矩阵确定出第一帧视频图像中的每个目标在第m帧视频图像所对应的检测框位置信息,例如但不局限于当最终替换后的矩阵中第s行中除去第t列的其他所有值均为零值时,可确定出检测集合中第t个目标为追踪集合中第s个目标的最优匹配目标。可以理解的是,检测框位置信息可以但不局限于为视频图像中检测框任意至少一个顶点对应的位置坐标,其可通过每个目标的中心坐标以及相应的检测框尺寸信息计算出,该位置坐标以及中心坐标均可基于视频图像所建立的平面直角坐标系确定(每帧视频图像对应的平面直角坐标系可保持一致),此处不限定于此。
作为本申请实施例的又一种可选,当检测到最小行列数个数未超过预设阈值时,则可在更新后的矩阵表达式中确定出最小值(非零值),计算出每一行中的每个值(非零值)与该最小值之间的差值,并再次将每一列中的每个值替换为该与最小值之间的差值。
接着,在对每一行进行替换处理之后,可在矩阵表达式中分别计算出每一列中的每个值与该最小值之间的总和,并将每一列中的每个值替换为该与最小值之间的总和。
接着,可用尽可能少的列或行标记来覆盖矩阵中所有零值,以获取更新后的矩阵表达式中覆盖所有零值的最小行列个数,重复上述步骤直至检测到最小行列个数超过预设阈值即可。
此处还可参阅图3示出的本申请实施例提供的一种视频图像的目标检测框的效果示意图,如图3所示,视频图像中处于左侧的目标1以及目标2可对应为第一帧视频图像中的目标位置以及检测框,处于右侧的目标1以及目标2可对应为第m帧视频图像中最优匹配的目标位置以及检测框。
步骤108、基于第i帧视频图像中编码宏块的位置信息确定出编码宏块在第j帧视频图像中的最优匹配位置信息,并根据编码宏块的位置信息以及最优匹配位置信息计算出编码宏块的帧间运动向量。
具体地,在得到第一帧视频图像中的每个目标在后续每一帧视频图像所对应的检测框位置信息之后,为实现更加精确的编码宏块搜索匹配,从而减少与参考帧的残差数据,以达到减少编码码率的效果,可先判断编码宏块是否处于第i帧视频图像(也可理解为编码帧视频图像)中与目标对应的检测框范围内。可以理解的是,此处假设与目标对应的检测框可划分为8x16的宏块,判断方式可为判断编码宏块是否为该检测框所划分的所有宏块中的任意一个。
进一步的,在确定编码宏块处于第i帧视频图像中与目标对应的检测框范围内时,可根据该编码宏块在第i帧视频图像中的位置坐标确定出该编码宏块在第j帧视频图像(也可理解为参考帧视频图像,可以但不局限于为第i帧视频图像的相邻帧视频图像)中的至少两个参考位置信息,并可以但不局限于通过计算图像残差的方式,将最小图像残差所对应的参考位置信息作为编码宏块在第j帧视频图像中的最优匹配位置信息。此处以编码宏块位于第i帧视频图像中某一检测框的第i行第j列的宏块为例,可根据该第i行第j列先在第j帧视频图像中确定出相应的第i行第j列的宏块,并以该第j帧视频图像中第i行第j列的宏块作为中心宏块,将该中心宏块以及周围所有的宏块位置信息作为至少两个参考位置信息,分别计算出相应的图像残差。其中,图像残差的计算表达式可以但不局限于表示如下:
上式中,可对应为计算宏块的绝对误差和(可理解为图像残差的一种计算方式),W、H为宏块的宽、高像素个数,/>可对应为第j帧视频图像中编码宏块的第x行第y列像数点的值,/>可对应为第i帧视频图像中编码宏块的第x行第y列像数点的值。在本申请实施例中,图像残差的计算方式还可以但不局限于为SAD(绝对误差和)、SSD(差值平方和)、MAD(平均绝对差值)或是SATD(Hadamard变换后的绝对值求和)中任意一种。
进一步的,可将图像残差值最小的宏块位置信息作为编码宏块在第j帧视频图像中的最优匹配位置信息。还可以理解的是,在确定出中心宏块之后,还可以但不局限于计算该中心点宏块的残差,以及四周及斜对角间隔为4宏块距离的8个宏块的残差;接着将残差最小的宏块为中心点间隔为2宏块计算中心点、四周及斜对角间隔宏块残差;接着将残差最小的宏块为中心点间隔为1宏块计算中心点、四周及斜对角间隔宏块残差,其中最小残差的宏块即为最优匹配宏块,此处不限定于此。
此处还可参阅图4示出的本申请实施例提供的一种视频图像的最优匹配位置效果示意图,如图4所示,当右侧的编码帧视频图像中的编码宏块处于目标1的检测框范围内时,可根据该编码宏块在目标1的检测框内位置信息,确定出左侧的参考帧视频图像中相应的中心宏块,并可以该中心宏块周围相邻的九个宏块作为搜索范围进行图像残差的计算,以得到最优匹配位置信息。
进一步的,在得到编码宏块在第j帧视频图像中的最优匹配位置信息之后,可根据编码宏块的位置信息确定第一坐标,该第一坐标可以但不局限于为该编码宏块的左上角在平面直角坐标系中的坐标,以及根据最优匹配位置信息确定第二坐标,该第二坐标可以但不局限于为最优匹配宏块的左上角在平面直角坐标系中的坐标,并可结合该第一坐标以及第二坐标计算出第一运动向量。其中,第一运动向量可以但不局限于表示为:,编码宏块的左上角坐标对应为/>,最优匹配宏块的左上角坐标对应为。
进一步的,可根据编码宏块的相邻编码宏块所对应的运动向量确定出第二运动向量,并对第一运动向量以及第二运动向量进行差值计算,得到编码宏块的帧间运动向量。其中,由于追踪目标的检测框通常会包含多个编码宏块,所以空间相邻的编码宏块的运动向量具有很强的相关性,因此每个宏块的运动向量可以根据邻近先前已编码的块进行预测,例如以预测出的第二运动向量表示为,第一运动向量表示为/>为例,编码宏块的帧间运动向量可以但不局限于表示为:
此处,第二运动向量的计算方法可以基于时空域的预测方式,例如采用空间域的向量中值预测,也即利用与当前块E相邻的左边块A,上边块B和右上方块C的运动向量,取其中值作为当前块的预测运动向量;当然,也可以采用时间域的前帧对应块运动向量预测,即利用前一帧与当前帧相同坐标位置的块运动向量作为当前块的预测运动向量,此处不限定于此。
此处还可参阅图5示出的本申请实施例提供的一种视频图像的帧间运动向量效果示意图,如图5所示,右侧的编码帧视频图像中的编码宏块左上角坐标与左侧的参考帧视频图像中的编码宏块左上角坐标之间的向量即为编码宏块的帧间运动向量。
步骤110、根据所有编码宏块的帧间运动向量对所有视频图像进行编码处理。
具体地,在得到编码宏块的帧间运动向量之后,可在对所有视频图像进行编码处理的过程中,结合所有编码宏块的帧间运动向量对所有视频图像进行运动优化处理,相对传统视频编码运动估计采用固定搜索模式的方法,能够充分利用视频图像内容相关信息,以使运动估计的匹配更加精准,特别在高速运动的视频图像中,其运动估计的优势将更加明显,不会陷入局部最优的陷阱。另外,本申请的方法还能依据视频图像内容的主体进行针对性的目标识别、追踪网络的训练,可以适应不同场景的视频编码的需要,进一步提升针对性。
请参阅图6,图6示出了本申请实施例提供的一种基于多目标追踪的视频编码运动估计装置的结构示意图。
如图6所示,该基于多目标追踪的视频编码运动估计装置至少可以包括视频解码模块601、目标识别模块602、目标追踪模块603、运动估计模块604以及视频编码模块605,其中:
视频解码模块601,用于对待处理视频进行解码处理,得到至少两帧视频图像;
目标识别模块602,用于对每帧视频图像进行多目标识别处理,得到标记有至少两个目标的每帧视频图像;其中,每个目标基于检测框进行标记;
目标追踪模块603,用于将第一帧视频图像中与每个目标对应的位置信息以及检测框尺寸信息作为追踪集合,将第m帧视频图像中与每个目标对应的位置信息以及检测框尺寸信息作为检测集合,并根据追踪集合以及检测集合确定出第一帧视频图像中的每个目标在第m帧视频图像所对应的检测框位置信息;其中,m为大于或等于2的正整数;
运动估计模块604,用于基于第i帧视频图像中编码宏块的位置信息确定出编码宏块在第j帧视频图像中的最优匹配位置信息,并根据编码宏块的位置信息以及最优匹配位置信息计算出编码宏块的帧间运动向量;其中,i为大于或等于1的正整数,j为大于或等于1的正整数,i不等于j;
视频编码模块605,用于根据所有编码宏块的帧间运动向量对所有视频图像进行编码处理。
在一些可能的实施例中,目标识别模块用于:
将每帧视频图像分别输入至训练后的深度学习神经网络,得到标记有至少两个目标的每帧视频图像;其中,深度学习神经网络基于多个标记有样本目标的样本图像训练得到。
在一些可能的实施例中,目标追踪模块用于:
计算出追踪集合中每个目标所对应的特征向量,与检测集合中每个目标所对应的特征向量之间的余弦距离;
对追踪集合中每个目标对应的位置信息以及检测框尺寸信息进行卡尔曼滤波处理,得到每个目标对应的检测框预测位置信息以及协方差信息;
基于检测集合中每个目标对应的检测框尺寸信息,以及追踪集合中每个目标对应的检测框预测位置信息、协方差信息,计算出追踪集合中每个目标与检测集合中每个目标之间的马氏距离;
对追踪集合中每个目标与检测集合中每个目标之间的余弦距离以及相应的马氏距离进行加权求和处理,得到总距离代价;
根据追踪集合中每个目标与检测集合中每个目标之间的总距离代价,确定出第一帧视频图像中的每个目标在第m帧视频图像所对应的检测框位置信息。
在一些可能的实施例中,目标追踪模块用于:
将追踪集合中每个目标与检测集合中每个目标之间的总距离代价转换为矩阵表达式;其中,矩阵表达式中第s行第t列对应的值为追踪集合中第s个目标与检测集合中第t个目标之间的总距离代价,s以及t均为大于或等于1的正整数;
在矩阵表达式中确定出与每一行对应的最小值,分别计算出每一行中的每个值与最小值之间的差值,并根据所有差值对矩阵表达式进行更新处理;
在更新后的矩阵表达式中确定出与每一列对应的最小值,分别计算出每一列中的每个值与最小值之间的差值,并根据所有差值对矩阵表达式再次进行更新处理;
获取更新后的矩阵表达式中覆盖所有零值的最小行列个数;
当检测到最小行列个数超过预设阈值时,根据更新后的矩阵表达式确定出第一帧视频图像中的每个目标在第m帧视频图像所对应的检测框位置信息。
在一些可能的实施例中,目标追踪模块用于:
获取更新后的矩阵表达式中覆盖所有零值的最小行列个数之后,当检测到最小行列个数未超过预设阈值时,在更新后的矩阵表达式中确定出最小值;
计算出每一行中的每个值与最小值之间的差值,并计算出每一列中的每个值与最小值之间的总和;
再次获取更新后的矩阵表达式中覆盖所有零值的最小行列个数。
在一些可能的实施例中,运动估计模块用于:
判断编码宏块是否处于第i帧视频图像中与目标对应的检测框范围内;
当确定编码宏块处于第i帧视频图像中与目标对应的检测框范围内时,根据编码宏块在第i帧视频图像中的位置信息确定出编码宏块在第j帧视频图像中的至少两个参考位置信息,并分别计算出编码宏块的位置信息与每个参考位置信息之间的图像残差;
将最小图像残差所对应的参考位置信息作为编码宏块在第j帧视频图像中的最优匹配位置信息。
在一些可能的实施例中,运动估计模块用于:
根据编码宏块的位置信息确定第一坐标,并根据最优匹配位置信息确定第二坐标;
基于第一坐标以及第二坐标计算出第一运动向量;
根据编码宏块的相邻编码宏块所对应的运动向量确定出第二运动向量;
对第一运动向量以及第二运动向量进行差值计算,得到编码宏块的帧间运动向量。
本领域的技术人员可以清楚地了解到本申请实施例的技术方案可借助软件和/或硬件来实现。本说明书中的“单元”和“模块”是指能够独立完成或与其他部件配合完成特定功能的软件和/或硬件,其中硬件例如可以是现场可编程门阵列(Field-ProgrammableGate Array,FPGA)、集成电路(Integrated Circuit,IC)等。
请参阅图7,图7示出了本申请实施例提供的又一种基于多目标追踪的视频编码运动估计装置的结构示意图。
如图7所示,基于多目标追踪的视频编码运动估计装置700可以包括至少一个处理器701、至少一个网络接口704、用户接口703、存储器705以及至少一个通信总线702。
其中,通信总线702可用于实现上述各个组件的连接通信。
其中,用户接口703可以包括按键,可选用户接口还可以包括标准的有线接口、无线接口。
其中,网络接口704可以但不局限于包括蓝牙模块、NFC模块、Wi-Fi模块等。
其中,处理器701可以包括一个或者多个处理核心。处理器701利用各种接口和线路连接基于多目标追踪的视频编码运动估计装置700内的各个部分,通过运行或执行存储在存储器705内的指令、程序、代码集或指令集,以及调用存储在存储器705内的数据,执行路由基于多目标追踪的视频编码运动估计装置700的各种功能和处理数据。可选的,处理器701可以采用DSP、FPGA、PLA中的至少一种硬件形式来实现。处理器701可集成CPU、GPU和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示屏所需要显示的内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器701中,单独通过一块芯片进行实现。
其中,存储器705可以包括RAM,也可以包括ROM。可选的,该存储器705包括非瞬时性计算机可读介质。存储器705可用于存储指令、程序、代码、代码集或指令集。存储器705可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现上述各个方法实施例的指令等;存储数据区可存储上面各个方法实施例中涉及到的数据等。存储器705可选的还可以是至少一个位于远离前述处理器701的存储装置。如图7所示,作为一种计算机存储介质的存储器705中可以包括操作系统、网络通信模块、用户接口模块以及基于多目标追踪的视频编码运动估计应用程序。
具体地,处理器701可以用于调用存储器705中存储的基于多目标追踪的视频编码运动估计应用程序,并具体执行以下操作:
对待处理视频进行解码处理,得到至少两帧视频图像;
对每帧视频图像进行多目标识别处理,得到标记有至少两个目标的每帧视频图像;其中,每个目标基于检测框进行标记;
将第一帧视频图像中与每个目标对应的位置信息以及检测框尺寸信息作为追踪集合,将第m帧视频图像中与每个目标对应的位置信息以及检测框尺寸信息作为检测集合,并根据追踪集合以及检测集合确定出第一帧视频图像中的每个目标在第m帧视频图像所对应的检测框位置信息;其中,m为大于或等于2的正整数;
基于第i帧视频图像中编码宏块的位置信息确定出编码宏块在第j帧视频图像中的最优匹配位置信息,并根据编码宏块的位置信息以及最优匹配位置信息计算出编码宏块的帧间运动向量;其中,i为大于或等于1的正整数,j为大于或等于1的正整数,i不等于j;
根据所有编码宏块的帧间运动向量对所有视频图像进行编码处理。
在一些可能的实施例中,对每帧视频图像进行多目标识别处理,得到标记有至少两个目标的每帧视频图像,包括:
将每帧视频图像分别输入至训练后的深度学习神经网络,得到标记有至少两个目标的每帧视频图像;其中,深度学习神经网络基于多个标记有样本目标的样本图像训练得到。
在一些可能的实施例中,根据追踪集合以及检测集合确定出第一帧视频图像中的每个目标在第m帧视频图像所对应的检测框位置信息,包括:
计算出追踪集合中每个目标所对应的特征向量,与检测集合中每个目标所对应的特征向量之间的余弦距离;
对追踪集合中每个目标对应的位置信息以及检测框尺寸信息进行卡尔曼滤波处理,得到每个目标对应的检测框预测位置信息以及协方差信息;
基于检测集合中每个目标对应的检测框尺寸信息,以及追踪集合中每个目标对应的检测框预测位置信息、协方差信息,计算出追踪集合中每个目标与检测集合中每个目标之间的马氏距离;
对追踪集合中每个目标与检测集合中每个目标之间的余弦距离以及相应的马氏距离进行加权求和处理,得到总距离代价;
根据追踪集合中每个目标与检测集合中每个目标之间的总距离代价,确定出第一帧视频图像中的每个目标在第m帧视频图像所对应的检测框位置信息。
在一些可能的实施例中,根据追踪集合中每个目标与检测集合中每个目标之间的总距离代价,确定出第一帧视频图像中的每个目标在第m帧视频图像所对应的检测框位置信息,包括:
将追踪集合中每个目标与检测集合中每个目标之间的总距离代价转换为矩阵表达式;其中,矩阵表达式中第s行第t列对应的值为追踪集合中第s个目标与检测集合中第t个目标之间的总距离代价,s以及t均为大于或等于1的正整数;
在矩阵表达式中确定出与每一行对应的最小值,分别计算出每一行中的每个值与最小值之间的差值,并根据所有差值对矩阵表达式进行更新处理;
在更新后的矩阵表达式中确定出与每一列对应的最小值,分别计算出每一列中的每个值与最小值之间的差值,并根据所有差值对矩阵表达式再次进行更新处理;
获取更新后的矩阵表达式中覆盖所有零值的最小行列个数;
当检测到最小行列个数超过预设阈值时,根据更新后的矩阵表达式确定出第一帧视频图像中的每个目标在第m帧视频图像所对应的检测框位置信息。
在一些可能的实施例中,获取更新后的矩阵表达式中覆盖所有零值的最小行列个数之后,还包括:
当检测到最小行列个数未超过预设阈值时,在更新后的矩阵表达式中确定出最小值;
计算出每一行中的每个值与最小值之间的差值,并计算出每一列中的每个值与最小值之间的总和;
再次获取更新后的矩阵表达式中覆盖所有零值的最小行列个数。
在一些可能的实施例中,基于第i帧视频图像中编码宏块的位置信息确定出编码宏块在第j帧视频图像中的最优匹配位置信息,包括:
判断编码宏块是否处于第i帧视频图像中与目标对应的检测框范围内;
当确定编码宏块处于第i帧视频图像中与目标对应的检测框范围内时,根据编码宏块在第i帧视频图像中的位置信息确定出编码宏块在第j帧视频图像中的至少两个参考位置信息,并分别计算出编码宏块的位置信息与每个参考位置信息之间的图像残差;
将最小图像残差所对应的参考位置信息作为编码宏块在第j帧视频图像中的最优匹配位置信息。
在一些可能的实施例中,根据编码宏块的位置信息以及最优匹配位置信息计算出编码宏块的帧间运动向量,包括:
根据编码宏块的位置信息确定第一坐标,并根据最优匹配位置信息确定第二坐标;
基于第一坐标以及第二坐标计算出第一运动向量;
根据编码宏块的相邻编码宏块所对应的运动向量确定出第二运动向量;
对第一运动向量以及第二运动向量进行差值计算,得到编码宏块的帧间运动向量。
本申请还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述方法的步骤。其中,计算机可读存储介质可以包括但不限于任何类型的盘,包括软盘、光盘、DVD、CD-ROM、微型驱动器以及磁光盘、ROM、RAM、EPROM、EEPROM、DRAM、VRAM、闪速存储器设备、磁卡或光卡、纳米系统(包括分子存储器IC),或适合于存储指令和/或数据的任何类型的媒介或设备。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些服务接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储器包括:U盘、只读存储器(Read-Only Memory, ROM)、随机存取存储器(RandomAccess Memory,RAM)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通进程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储器中,存储器可以包括:闪存盘、只读存储器(Read-Only Memory, ROM)、随机存取器(Random AccessMemory,RAM)、磁盘或光盘等。
以上者,仅为本公开的示例性实施例,不能以此限定本公开的范围。即但凡依本公开教导所作的等效变化与修饰,皆仍属本公开涵盖的范围内。本领域技术人员在考虑说明书及实践这里的公开后,将容易想到本公开的其实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未记载的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的范围和精神由权利要求限定。
Claims (8)
1.一种基于多目标追踪的视频编码运动估计方法,其特征在于,包括:
对待处理视频进行解码处理,得到至少两帧视频图像;
对每帧所述视频图像进行多目标识别处理,得到标记有至少两个目标的每帧所述视频图像;其中,每个所述目标基于检测框进行标记;
其中,所述对每帧所述视频图像进行多目标识别处理,得到标记有至少两个目标的每帧所述视频图像,包括:
将每帧所述视频图像分别输入至训练后的深度学习神经网络,得到标记有至少两个目标的每帧所述视频图像;其中,所述深度学习神经网络基于多个标记有样本目标的样本图像训练得到;
将第一帧所述视频图像中与每个所述目标对应的位置信息以及所述检测框尺寸信息作为追踪集合,将第m帧所述视频图像中与每个所述目标对应的位置信息以及所述检测框尺寸信息作为检测集合,并根据所述追踪集合以及所述检测集合确定出第一帧所述视频图像中的每个所述目标在第m帧所述视频图像所对应的检测框位置信息;其中,m为大于或等于2的正整数;
其中,所述根据所述追踪集合以及所述检测集合确定出第一帧所述视频图像中的每个所述目标在第m帧所述视频图像所对应的检测框位置信息,包括:
计算出所述追踪集合中每个所述目标所对应的特征向量,与所述检测集合中每个所述目标所对应的特征向量之间的余弦距离;其中,每个所述目标所对应的特征向量为每个目标的轮廓特征向量,所述每个目标的轮廓特征向量基于所述深度学习神经网络获取;
对所述追踪集合中每个所述目标对应的位置信息以及检测框尺寸信息进行卡尔曼滤波处理,得到每个所述目标对应的检测框预测位置信息以及协方差信息;
基于所述检测集合中每个所述目标对应的检测框尺寸信息,以及所述追踪集合中每个所述目标对应的检测框预测位置信息、协方差信息,计算出所述追踪集合中每个所述目标与所述检测集合中每个所述目标之间的马氏距离;
对所述追踪集合中每个所述目标与所述检测集合中每个所述目标之间的所述余弦距离以及相应的所述马氏距离进行加权求和处理,得到总距离代价;
根据所述追踪集合中每个所述目标与所述检测集合中每个所述目标之间的所述总距离代价,确定出第一帧所述视频图像中的每个所述目标在第m帧所述视频图像所对应的检测框位置信息;
基于第i帧视频图像中编码宏块的位置信息确定出所述编码宏块在第j帧视频图像中的最优匹配位置信息,并根据所述编码宏块的位置信息以及所述最优匹配位置信息计算出所述编码宏块的帧间运动向量;其中,i为大于或等于1的正整数,j为大于或等于1的正整数,i不等于j;
根据所有所述编码宏块的帧间运动向量对所有所述视频图像进行编码处理。
2.根据权利要求1所述的方法,其特征在于,所述根据所述追踪集合中每个所述目标与所述检测集合中每个所述目标之间的所述总距离代价,确定出第一帧所述视频图像中的每个所述目标在第m帧所述视频图像所对应的检测框位置信息,包括:
将所述追踪集合中每个所述目标与所述检测集合中每个所述目标之间的所述总距离代价转换为矩阵表达式;其中,所述矩阵表达式中第s行第t列对应的值为所述追踪集合中第s个所述目标与所述检测集合中第t个所述目标之间的所述总距离代价,s以及t均为大于或等于1的正整数;
在所述矩阵表达式中确定出与每一行对应的最小值,分别计算出每一行中的每个值与所述最小值之间的差值,并根据所有所述差值对所述矩阵表达式进行更新处理;
在更新后的所述矩阵表达式中确定出与每一列对应的最小值,分别计算出每一列中的每个值与所述最小值之间的差值,并根据所有所述差值对所述矩阵表达式再次进行更新处理;
获取更新后的所述矩阵表达式中覆盖所有零值的最小行列个数;
当检测到所述最小行列个数超过预设阈值时,根据更新后的所述矩阵表达式确定出第一帧所述视频图像中的每个所述目标在第m帧所述视频图像所对应的检测框位置信息。
3.根据权利要求2所述的方法,其特征在于,所述获取更新后的所述矩阵表达式中覆盖所有零值的最小行列个数之后,还包括:
当检测到所述最小行列个数未超过所述预设阈值时,在更新后的所述矩阵表达式中确定出最小值;
计算出每一行中的每个值与所述最小值之间的差值,并计算出每一列中的每个值与所述最小值之间的总和;
再次获取更新后的所述矩阵表达式中覆盖所有零值的最小行列个数。
4.根据权利要求1所述的方法,其特征在于,所述基于第i帧视频图像中编码宏块的位置信息确定出所述编码宏块在第j帧视频图像中的最优匹配位置信息,包括:
判断编码宏块是否处于第i帧视频图像中与所述目标对应的检测框范围内;
当确定所述编码宏块处于第i帧视频图像中与所述目标对应的检测框范围内时,根据所述编码宏块在第i帧视频图像中的位置信息确定出所述编码宏块在第j帧视频图像中的至少两个参考位置信息,并分别计算出所述编码宏块的位置信息与每个所述参考位置信息之间的图像残差;
将最小图像残差所对应的所述参考位置信息作为所述编码宏块在第j帧视频图像中的最优匹配位置信息。
5.根据权利要求4所述的方法,其特征在于,所述根据所述编码宏块的位置信息以及所述最优匹配位置信息计算出所述编码宏块的帧间运动向量,包括:
根据所述编码宏块的位置信息确定第一坐标,并根据最优匹配位置信息确定第二坐标;
基于所述第一坐标以及所述第二坐标计算出第一运动向量;
根据所述编码宏块的相邻编码宏块所对应的运动向量确定出第二运动向量;
对所述第一运动向量以及所述第二运动向量进行差值计算,得到所述编码宏块的帧间运动向量。
6.一种基于多目标追踪的视频编码运动估计装置,其特征在于,包括:
视频解码模块,用于对待处理视频进行解码处理,得到至少两帧视频图像;
目标识别模块,用于对每帧所述视频图像进行多目标识别处理,得到标记有至少两个目标的每帧所述视频图像;其中,每个所述目标基于检测框进行标记;
其中,所述对每帧所述视频图像进行多目标识别处理,得到标记有至少两个目标的每帧所述视频图像,包括:
将每帧所述视频图像分别输入至训练后的深度学习神经网络,得到标记有至少两个目标的每帧所述视频图像;其中,所述深度学习神经网络基于多个标记有样本目标的样本图像训练得到;
目标追踪模块,用于将第一帧所述视频图像中与每个所述目标对应的位置信息以及所述检测框尺寸信息作为追踪集合,将第m帧所述视频图像中与每个所述目标对应的位置信息以及所述检测框尺寸信息作为检测集合,并根据所述追踪集合以及所述检测集合确定出第一帧所述视频图像中的每个所述目标在第m帧所述视频图像所对应的检测框位置信息;其中,m为大于或等于2的正整数;
其中,所述根据所述追踪集合以及所述检测集合确定出第一帧所述视频图像中的每个所述目标在第m帧所述视频图像所对应的检测框位置信息,包括:
计算出所述追踪集合中每个所述目标所对应的特征向量,与所述检测集合中每个所述目标所对应的特征向量之间的余弦距离;其中,每个所述目标所对应的特征向量为每个目标的轮廓特征向量,所述每个目标的轮廓特征向量基于所述深度学习神经网络获取;对所述追踪集合中每个所述目标对应的位置信息以及检测框尺寸信息进行卡尔曼滤波处理,得到每个所述目标对应的检测框预测位置信息以及协方差信息;
基于所述检测集合中每个所述目标对应的检测框尺寸信息,以及所述追踪集合中每个所述目标对应的检测框预测位置信息、协方差信息,计算出所述追踪集合中每个所述目标与所述检测集合中每个所述目标之间的马氏距离;
对所述追踪集合中每个所述目标与所述检测集合中每个所述目标之间的所述余弦距离以及相应的所述马氏距离进行加权求和处理,得到总距离代价;
根据所述追踪集合中每个所述目标与所述检测集合中每个所述目标之间的所述总距离代价,确定出第一帧所述视频图像中的每个所述目标在第m帧所述视频图像所对应的检测框位置信息;
运动估计模块,用于基于第i帧视频图像中编码宏块的位置信息确定出所述编码宏块在第j帧视频图像中的最优匹配位置信息,并根据所述编码宏块的位置信息以及所述最优匹配位置信息计算出所述编码宏块的帧间运动向量;其中,i为大于或等于1的正整数,j为大于或等于1的正整数,i不等于j;
视频编码模块,用于根据所有所述编码宏块的帧间运动向量对所有所述视频图像进行编码处理。
7.一种基于多目标追踪的视频编码运动估计装置,其特征在于,包括处理器以及存储器;
所述处理器与所述存储器连接;
所述存储器,用于存储可执行程序代码;
所述处理器通过读取所述存储器中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于执行如权利要求1-5任一项所述方法的步骤。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机可读存储介质中存储有指令,当所述指令在计算机或处理器上运行时,使得所述计算机或处理器执行如权利要求1-5任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310631080.XA CN116366866B (zh) | 2023-05-31 | 2023-05-31 | 一种基于多目标追踪的视频编码运动估计方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310631080.XA CN116366866B (zh) | 2023-05-31 | 2023-05-31 | 一种基于多目标追踪的视频编码运动估计方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116366866A CN116366866A (zh) | 2023-06-30 |
CN116366866B true CN116366866B (zh) | 2023-10-10 |
Family
ID=86923409
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310631080.XA Active CN116366866B (zh) | 2023-05-31 | 2023-05-31 | 一种基于多目标追踪的视频编码运动估计方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116366866B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001145109A (ja) * | 1999-11-11 | 2001-05-25 | Nec Corp | 動きベクトル検出装置 |
CN104268900A (zh) * | 2014-09-26 | 2015-01-07 | 中安消技术有限公司 | 一种运动目标检测方法及装置 |
CN108200432A (zh) * | 2018-02-03 | 2018-06-22 | 王灏 | 一种基于视频压缩域的目标跟踪技术 |
CN111161309A (zh) * | 2019-11-19 | 2020-05-15 | 北航航空航天产业研究院丹阳有限公司 | 一种车载视频动态目标的搜索与定位方法 |
CN111526369A (zh) * | 2020-04-29 | 2020-08-11 | Oppo广东移动通信有限公司 | 视频的运动估计方法、装置、电子设备和存储介质 |
-
2023
- 2023-05-31 CN CN202310631080.XA patent/CN116366866B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001145109A (ja) * | 1999-11-11 | 2001-05-25 | Nec Corp | 動きベクトル検出装置 |
CN104268900A (zh) * | 2014-09-26 | 2015-01-07 | 中安消技术有限公司 | 一种运动目标检测方法及装置 |
CN108200432A (zh) * | 2018-02-03 | 2018-06-22 | 王灏 | 一种基于视频压缩域的目标跟踪技术 |
CN111161309A (zh) * | 2019-11-19 | 2020-05-15 | 北航航空航天产业研究院丹阳有限公司 | 一种车载视频动态目标的搜索与定位方法 |
CN111526369A (zh) * | 2020-04-29 | 2020-08-11 | Oppo广东移动通信有限公司 | 视频的运动估计方法、装置、电子设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN116366866A (zh) | 2023-06-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Sadeghian et al. | Sophie: An attentive gan for predicting paths compliant to social and physical constraints | |
Liang | Image‐based post‐disaster inspection of reinforced concrete bridge systems using deep learning with Bayesian optimization | |
CN110599492B (zh) | 图像分割模型的训练方法、装置、电子设备及存储介质 | |
WO2023015743A1 (zh) | 病灶检测模型的训练方法及识别图像中的病灶的方法 | |
CN112132119B (zh) | 客流统计方法、装置、电子设备和存储介质 | |
CN110458165B (zh) | 一种引入注意力机制的自然场景文本检测方法 | |
CN113298818A (zh) | 基于注意力机制与多尺度特征的遥感图像建筑物分割方法 | |
CN111104925B (zh) | 图像处理方法、装置、存储介质和电子设备 | |
CN112163537A (zh) | 一种行人异常行为检测方法、系统、终端以及存储介质 | |
CN111401196A (zh) | 受限空间内自适应人脸聚类的方法、计算机装置及计算机可读存储介质 | |
CN111931764A (zh) | 一种目标检测方法、目标检测框架及相关设备 | |
CN113807361B (zh) | 神经网络、目标检测方法、神经网络训练方法及相关产品 | |
CN112036381B (zh) | 视觉跟踪方法、视频监控方法及终端设备 | |
CN110991298B (zh) | 图像的处理方法和装置、存储介质及电子装置 | |
CN112819011B (zh) | 对象间关系的识别方法、装置和电子系统 | |
CN113781519A (zh) | 目标跟踪方法和目标跟踪装置 | |
CN112686193B (zh) | 基于压缩视频的动作识别方法、装置及计算机设备 | |
CN113780243A (zh) | 行人图像识别模型的训练方法、装置、设备以及存储介质 | |
CN112257659A (zh) | 检测跟踪方法、装置以及介质 | |
CN111833353A (zh) | 一种基于图像分割的高光谱目标检测方法 | |
Huang et al. | A detection method of individual fare evasion behaviours on metros based on skeleton sequence and time series | |
Yuan et al. | Multiple object detection and tracking from drone videos based on GM-YOLO and multi-tracker | |
CN111950507B (zh) | 数据处理和模型训练方法、装置、设备及介质 | |
CN116366866B (zh) | 一种基于多目标追踪的视频编码运动估计方法及装置 | |
CN117831116A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |