一种全局运动场景的码流分析方法、系统及设备
文献发布时间:2023-06-19 09:29:07
技术领域
本发明涉及视频编码技术领域,尤其涉及一种全局运动场景的码流分析方法、系统及设备。
背景技术
解码端图像处理、转码都是基于已压缩码流的片源,其携带的编码信息中均含有丰富的片源特征。如果抛开这些压缩信息,进行常规的图像分析,将产生计算量的浪费,从而限制算法的性能。另一方面,解码端图像处理、转码器视频编码的性能的提升,也需要一种小计算量性能稳定的运动场景检测法。
发明内容
本发明实施例的目的在于提供一种全局运动场景的码流分析方法、系统及设备,旨在解决现有图像分析计算量大、性能低的问题。
本发明实施例的第一目的在于提供一种全局运动场景的码流分析方法,所述方法包括:
Step1:构建场景切换检测集;
Step2:构建场景切换检测集的场景运动分析集;
Step3:根据场景运动分析集中的当前运动分析帧,对场景切换检测集中的当前场景切换检测帧进行初步运动分析,判断当前场景切换检测帧是否为局部运动场景;
Step4:对未判定为局部运动场景的当前场景切换检测帧进行全局运动分析,获取全局运动类型;
Step5:若下一场景切换检测帧和下一运动分析帧均存在,则令当前场景切换检测帧为下一场景切换检测帧、当前运动分析帧为下一运动分析帧,返回Step3;否则,结束。
本发明实施例的第二目的在于提供一种全局运动场景的码流分析系统,所述系统包括:
场景切换检测集构建模块,用于构建场景切换检测集;
场景运动分析集构建装置,用于构建场景切换检测集的场景运动分析集;
初步运动分析装置,用于根据场景运动分析集中的当前运动分析帧,对场景切换检测集中的当前场景切换检测帧进行初步运动分析,判断当前场景切换检测帧是否为局部运动场景;
全局运动分析装置,用于对未判定为局部运动场景的当前场景切换检测帧进行全局运动分析,获取全局运动类型;
第一判断处理模块,用于判断若下一场景切换检测帧和下一运动分析帧均存在,则令当前场景切换检测帧为下一场景切换检测帧、当前运动分析帧为下一运动分析帧,重回初步运动分析装置;否则,结束。
本发明实施例的第三目的在于提供一种设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现所述全局运动场景的码流分析方法的步骤。
本发明的有益效果
本发明提出一种全局运动场景的码流分析方法、系统及设备。本发明方法通过对码流信息的分析,除了可以检测出常规的场景切换,亦可细分出同一场景中局部运动、全局运动。另一方面,基于码流压缩信息的二次利用设计,相比较于基于原始图像的分析法,可进一步缩减计算量。
附图说明
图1是本发明实施例提供的一种全局运动场景的码流分析方法流程图;
图2是本发明实施例提供的构建场景切换检测集的场景运动分析集方法流程图;
图3是本发明实施例提供的初步运动分析详细方法流程图;
图4是本发明实施例提供的全局运动分析详细方法流程图;
图5是本发明实施例提供的运动一致性分析分析详细方法流程图;
图6是本发明实施例提供的全局镜头推近、拉远运动分析方法流程图;
图7是本发明实施例提供的一种全局运动场景的码流分析系统结构图;
图8是本发明实施例提供的场景运动分析集构建装置结构图;
图9是本发明实施例提供的初步运动分析装置结构图;
图10是本发明实施例提供的全局运动分析装置结构图;
图11是本发明实施例提供的运动一致性分析模块结构图;
图12是本发明实施例提供的全局运动分析类型确定模块结构图;
图13是本发明实施例提供的全局镜头推近、拉远运动分析模块结构图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图和实施例,对本发明进行进一步详细说明,为了便于说明,仅示出了与本发明实施例相关的部分。应当理解,此处所描写的具体实施例,仅仅用于解释本发明,并不用以限制本发明,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据本发明实施例获得其他的等同实施例。
本发明提出一种全局运动场景的码流分析方法、系统及设备。本发明方法通过对码流信息的分析,除了可以检测出常规的场景切换,亦可细分出同一场景中局部运动、全局运动。另一方面,基于码流压缩信息的二次利用设计,相比较于基于原始图像的分析法,可进一步缩减计算量。
图1是本发明实施例提供的一种全局运动场景的码流分析方法流程图;所述方法包括:
Step1:构建场景切换检测集Ψ;
如果numf-t>long且(frame
其中,numf表示片源帧数;t表示当前片源的帧序号;frame
Step2:构建场景切换检测集Ψ的场景运动分析集Γ:
图2是本发明实施例提供的构建场景切换检测集的场景运动分析集方法流程图;包括:
Step20:令k=1;
Step21:记Ψ(k)对应帧的播放序号为s
本发明实施例中,当Ψ(k+1)不存在时,则令s
其中,Ψ(k)表示场景切换检测集Ψ中的第k个元素,也称当前场景切换检测帧;Γ(k)表示场景运动分析集Γ中的第k个元素,也称当前运动分析帧;max表示求最大值;mvbit
Step22:令k=k+1;
Step23:若Ψ(k+1)存在,则重回Step21;否则,令k=1,然后进入Step3。
Step3:根据场景运动分析集Γ中的当前运动分析帧Γ(k),对场景切换检测集Ψ中的当前场景切换检测帧Ψ(k)进行初步运动分析,判断当前场景切换检测帧Ψ(k)是否为局部运动场景。
图3是本发明实施例提供的初步运动分析详细方法流程图;包括:
Step31:获取场景运动分析集Γ中的当前运动分析帧Γ(k)的边界区域Γ
具体为:选取图像中心点为中心的矩形区域为中心区域,面积不超过9/16;接着将剩余的块划为边界区域,记为Γ
Step32:统计所述边界区域Γ
Step33:若sizemvb<sizeb*Thres
其中,Thres
Step4:对未判定为局部运动场景的当前场景切换检测帧Ψ(k)进行全局运动分析,获取Ψ(k)全局运动类型。
图4是本发明实施例提供的全局运动分析详细方法流程图;包括:
Step41:将所述边界区域Γ
所述分析区域的划分方法为:将所述边界区域Γ
Step42:任选一个分析区域region
图5是本发明实施例提供的运动一致性分析详细方法流程图;包括:
S421:将分析区域region
所述第一运动矢量划分标准包括第一划分标准、第二划分标准和第三划分标准3个子标准;
第一划分标准:若mvy
第二划分标准:若mvx
第三划分标准:若mvx
其中,mvx
S422:根据按第一运动矢量划分标准划分的块集合的块数量是否满足第一阈值条件,判定当前场景切换检测帧Ψ(k)是否为局部运动场景;
第一阈值条件:
若满足第一阈值条件,则判定当前场景切换检测帧Ψ(k)为局部运动场景,进入Step5;否则,进入Step43。
其中,lessmax表示求次最大值;Thres
Step43:当经过运动一致性分析的分析区域region
第一分类条件:所述经过运动一致性分析的分析区域内每个块,按第一运动矢量划分标准划分为若干块集合后,具有最多块的块集合满足相同的子标准;
譬如,分析区域region
Step44:若存在未经过运动一致性分析的分析区域,则重新回到Step42;否则,进入Step45。
Step45:根据所述块集合的块数量是否满足第一数量条件,确定当前场景切换检测帧Ψ(k)的全局运动分析类型;
所述全局运动分析类型包括全局镜头平移运动分析和全局镜头推近、拉远运动分析;
第一数量条件:max(num
若满足第一数量条件,则进行全局镜头平移运动分析;否则,进行全局镜头推近、拉远运动分析;
当Ψ(k)确定进行全局镜头平移运动场景时,Γ(k)对应帧即为该全局运动的起始帧;当Ψ(k)确定进行全局镜头推近、拉远场景时,Γ(k)对应帧即为该全局运动的起始帧;
所述全局镜头平移运动分析具体为:
若direc
若direc
若direc
若direc
否则,则判定Ψ(k)为局部运动场景,进入Step5。
其中,direc
图6是本发明实施例提供的全局镜头推近、拉远运动分析方法流程图;所述全局镜头推近、拉远运动分析包括:
步骤B1:将分析区域region
所述第二运动矢量划分标准包括第四划分标准、第五划分标准、第六划分标准和第七划分标准4个子标准;
第四划分标准:将满足mvx
第五划分标准:将满足mvx
第六划分标准:将满足mvx
第七划分标准:将满足mvx
步骤B2:根据按第二运动矢量划分标准划分的块集合的块数量是否满足第二阈值条件,判定当前场景切换检测帧Ψ(k)为是否为局部运动场景;
第二阈值条件:
若满足第二阈值条件,则判定当前场景切换检测帧Ψ(k)为局部运动场景(不需要进行全局镜头推近、拉远运动分析),进入Step5;否则(需要进行全局镜头推近、拉远运动分析),进入步骤B3。
步骤B3:对未判定为局部运动场景的当前场景切换检测帧Ψ(k),进行全局镜头推近、拉远运动分析;
具体为:
若direct
若direct
否则,则判定Ψ(k)为局部运动场景,进入Step5。
其中,direct
Step5:若下一场景切换检测帧Ψ(k+1)和下一运动分析帧Γ(k+1)均存在,则令当前场景切换检测帧为下一场景切换检测帧、当前运动分析帧为下一运动分析帧(即令k=k+1),重回Step3;否则,结束。
对应于上文实施例所述的一种全局运动场景的码流分析方法,图7是本发明实施例提供的一种全局运动场景的码流分析系统结构图;所述全局运动场景的码流分析系统包括:
场景切换检测集构建模块,用于构建场景切换检测集;
场景运动分析集构建装置,用于构建场景切换检测集的场景运动分析集;
初步运动分析装置,用于根据场景运动分析集中的当前运动分析帧,对场景切换检测集中的当前场景切换检测帧进行初步运动分析,判断当前场景切换检测帧是否为局部运动场景;
全局运动分析装置,用于对未判定为局部运动场景的当前场景切换检测帧进行全局运动分析,获取全局运动类型。
第一判断处理模块,用于判断若下一场景切换检测帧和下一运动分析帧均存在,则令当前场景切换检测帧为下一场景切换检测帧、当前运动分析帧为下一运动分析帧,重回初步运动分析装置;否则,结束。
进一步地,景切换检测集构建模块中,用于构建场景切换检测集具体为:
如果numf-t>long且(frame
其中,numf表示片源帧数;t表示当前片源的帧序号;frame
进一步地,图8是本发明实施例提供的场景运动分析集构建装置结构图;所述场景运动分析集构建装置包括:
帧序号赋初值模块,用于令k=1;
场景运动分析集划分模块,用于记Ψ(k)对应帧的播放序号为s
本发明实施例中,当Ψ(k+1)不存在时,则令s
其中,Ψ(k)表示场景切换检测集Ψ中的第k个元素,也称当前场景切换检测帧;Γ(k)表示场景运动分析集Γ中的第k个元素,也称当前运动分析帧;max表示求最大值;mvbit
帧序号更新模块,用于令k=k+1;
第二判断处理模块,用于判断若Ψ(k+1)存在,则重回场景运动分析集划分模块;否则,令k=1,然后进入初步运动分析装置。
进一步地,图9是本发明实施例提供的初步运动分析装置结构图;所述初步运动分析装置包括:
边界区域获取模块,用于获取场景运动分析集Γ中的当前运动分析帧Γ(k)的边界区域Γ
具体为:选取图像中心点为中心的矩形区域为中心区域,面积不超过9/16;接着将剩余的块划为边界区域,记为Γ
块数量统计模块,用于统计所述边界区域Γ
第三判断处理模块,用于判断若sizemvb<sizeb*Thres
其中,Thres
进一步地,图10是本发明实施例提供的全局运动分析装置结构图;所述全局运动分析装置包括:
分析区域划分模块,用于将所述边界区域Γ
运动一致性分析模块,用于任选一个分析区域region
第四判断处理模块,用于当经过运动一致性分析的分析区域region
第五判断处理模块,用于若存在未经过运动一致性分析的分析区域,则重新回到运动一致性分析模块;否则,进入全局运动分析类型确定模块。
全局运动分析类型确定模块,用于根据所述块集合的块数量是否满足第一数量条件,确定当前场景切换检测帧Ψ(k)的全局运动分析类型;
进一步地,所述分析区域划分模块中,将所述边界区域Γ
将所述边界区域Γ
进一步地,图11是本发明实施例提供的运动一致性分析模块结构图;
所述运动一致性分析模块包括:
第一块集合划分及数量记录模块,用于将分析区域region
所述第一运动矢量划分标准包括第一划分标准、第二划分标准和第三划分标准3个子标准;
第一划分标准:若mvy
第二划分标准:若mvx
第三划分标准:若mvx
其中,mvx
第一阈值条件判断模块,用于根据按第一运动矢量划分标准划分的块集合的块数量是否满足第一阈值条件,判定当前场景切换检测帧Ψ(k)是否为局部运动场景;
第一阈值条件:
若满足第一阈值条件,则判定当前场景切换检测帧Ψ(k)为局部运动场景,进入第一判断处理模块;否则,进入第四判断处理模块。
其中,lessmax表示求次最大值;Thres
进一步地,所述第一分类条件:所述经过运动一致性分析的分析区域内每个块,按第一运动矢量划分标准划分为若干块集合后,具有最多块的块集合满足相同的子标准;
譬如,分析区域region
进一步地,图12是本发明实施例提供的全局运动分析类型确定模块结构图。所述全局运动分析类型确定模块包括:选择模块、全局镜头平移运动分析模块和全局镜头推近、拉远运动分析模块;
选择模块,用于判断所述块集合的块数量是否满足第一数量条件,若满足第一数量条件,则进入全局镜头平移运动分析模块;否则,进入全局镜头推近、拉远运动分析模块;
第一数量条件:max(num
当确定进入全局镜头平移运动分析模块时,Γ(k)对应帧即为该全局运动的起始帧;当进入全局镜头推近、拉远运动分析模块时,Γ(k)对应帧即为该全局运动的起始帧;
全局镜头平移运动分析模块,用于进行全局镜头平移运动分析;具体为:
若direc
若direc
若direc
若direc
否则,则判定Ψ(k)为局部运动场景,进入第一判断处理模块。
其中,direc
全局镜头推近、拉远运动分析模块,用于进行全局镜头推近、拉远运动分析;
进一步地,图13是本发明实施例提供的全局镜头推近、拉远运动分析模块结构图。所述全局镜头推近、拉远运动分析模块包括:
第二块集合划分及数量记录模块,用于将分析区域region
所述第二运动矢量划分标准包括第四划分标准、第五划分标准、第六划分标准和第七划分标准4个子标准;
第四划分标准:将满足mvx
第五划分标准:将满足mvx
第六划分标准:将满足mvx
第七划分标准:将满足mvx
第二阈值条件判断模块,用于根据按第二运动矢量划分标准划分的块集合的块数量是否满足第二阈值条件,判定Ψ(k)为是否为局部运动场景;
第二阈值条件:
若满足第二阈值条件,则判定Ψ(k)为局部运动场景(不需要进行全局镜头推近、拉远运动分析),进入第一判断处理模块;否则(需要进行全局镜头推近、拉远运动分析),进入分析模块;
分析模块,用于对未判定为局部运动场景的当前场景切换检测帧Ψ(k),进行全局镜头推近、拉远运动分析;
具体为:
若direct
若direct
否则,则判定Ψ(k)为局部运动场景,进入第一判断处理模块。
其中,direct
本发明实施例还提供的一种终端设备,该实施例的终端设备包括:处理器、存储器以及存储在所述存储器中并可在所述处理器上运行的计算机程序。所述处理器执行所述计算机程序时实现上述全局运动场景的码流分析方法实施例中的步骤。或者,所述处理器执行所述计算机程序时实现上述各系统实施例中各单元的功能。
本领域的普通技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序指令相关硬件来完成的,所述的程序可以存储于一计算机可读取存储介质中,所述的存储介质可以为ROM、RAM、磁盘、光盘等。
上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。