CN105516726B - 视频编码的运动补偿匹配方法和系统 - Google Patents

视频编码的运动补偿匹配方法和系统 Download PDF

Info

Publication number
CN105516726B
CN105516726B CN201510847233.XA CN201510847233A CN105516726B CN 105516726 B CN105516726 B CN 105516726B CN 201510847233 A CN201510847233 A CN 201510847233A CN 105516726 B CN105516726 B CN 105516726B
Authority
CN
China
Prior art keywords
block
frame image
image
gpu
diamond
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
Application number
CN201510847233.XA
Other languages
English (en)
Other versions
CN105516726A (zh
Inventor
王涛
柯金杰
顾思斌
潘柏宇
王冀
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba China Co Ltd
Original Assignee
Chuanxian Network Technology Shanghai Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Chuanxian Network Technology Shanghai Co Ltd filed Critical Chuanxian Network Technology Shanghai Co Ltd
Priority to CN201510847233.XA priority Critical patent/CN105516726B/zh
Publication of CN105516726A publication Critical patent/CN105516726A/zh
Priority to US15/745,267 priority patent/US10448036B2/en
Priority to PCT/CN2016/098785 priority patent/WO2017088558A1/zh
Application granted granted Critical
Publication of CN105516726B publication Critical patent/CN105516726B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/436Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/523Motion estimation or motion compensation with sub-pixel accuracy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/533Motion estimation using multistep search, e.g. 2D-log search or one-at-a-time search [OTS]

Abstract

本发明涉及一种视频编码的运动补偿匹配方法和系统,其中该方法包括:CPU从待处理视频中提取当前帧图像和参考帧图像,并将所提取的帧图像发送给GPU;GPU对所述参考帧图像进行至少一次插值处理,得到多个插值图像;GPU对所述当前帧图像进行划分得到多个预测块;GPU根据各所述预测块在所述参考帧图像和各所述插值图像内进行块匹配搜索;根据所述块匹配搜索的结果,确定所述当前帧图像的期望图像块的运动向量。本发明采用GPU执行帧图像的插值、分块与块匹配搜索的大量运算,采用CPU处理少量运算,由于采用GPU处理编码过程中最复杂也是最耗能的搜索部分,能够充分利用显卡的大规模并发性,从而大幅提升视频编码速度。

Description

视频编码的运动补偿匹配方法和系统
技术领域
本发明涉及多媒体技术领域,尤其涉及一种视频编码的运动补偿匹配方法和系统。
背景技术
在数据压缩技术中,视频编码需要采用搜索算法。传统的搜索算法包括:全搜索法(Full Search Method,FSM)、菱形搜索(Diamond Search,DS)法、三步(Three StepSearch,TSS)算法、四步(Four Step Search,FSS)算法、八边形算法、双十字算法等。传统的搜索算法多基于上下文的参考宏块,可以很好的参考上下文,利用区域图像运动的相似性,并对中央处理器(Central Processing Unit,CPU)进行了优化调整,能够得到较好的画质和编码速度。
但是,由于上述算法都是基于CPU给出的搜索模板的算法,随着图像分辨率、帧率大幅提升,CPU的并行处理无法满足精确的图像处理要求,在CPU上执行的搜索算法劣势凸显,存在处理速度慢、精确度低等问题。
发明内容
技术问题
有鉴于此,本发明要解决的技术问题是,如何在视频编码中进行运动补偿,以快速、准确地获得期望的图像块的运动向量,从而减少压缩时间,改善编码质量。
解决方案
为了解决上述技术问题,根据本发明的一实施例,提供了一种视频编码的运动补偿匹配方法,包括:
中央处理器CPU从待处理视频中提取当前帧图像和参考帧图像,并将所提取的帧图像发送给图形处理器GPU;
所述GPU对所述参考帧图像进行至少一次插值处理,得到多个插值图像;
所述GPU对所述当前帧图像进行划分得到多个预测块;
所述GPU根据各所述预测块在所述参考帧图像和各所述插值图像内进行块匹配搜索;
根据所述块匹配搜索的结果,确定所述当前帧图像的期望图像块的运动向量。
对于上述方法,在一种可能的实现方式中,所述GPU根据各所述预测块在所述参考帧图像和各所述插值图像内进行块匹配搜索,包括:
所述GPU根据所述预测块的位置在所述参考帧图像内进行第一菱形蜂窝匹配搜索,以确定期望的整像素区域的位置和运动向量;
对于各所述插值图像,所述GPU根据所述期望的整像素区域的位置在所述插值图像内进行第二菱形蜂窝匹配搜索,以确定期望的分像素区域的位置和运动向量。
对于上述方法,在一种可能的实现方式中,所述GPU根据所述预测块的位置在所述参考帧图像内进行第一菱形蜂窝匹配搜索,以确定期望的整像素区域的位置和运动向量,包括:
所述GPU根据所述预测块的位置在所述参考帧图像内确定第一菱形区域的中心,并在所述第一菱形区域内选取多个第一方形区域;
根据所述第一菱形区域的顶点像素和各所述第一方形区域的边界像素,在所述参考帧图像内确定多个第一搜索块,并将各所述第一搜索块的像素与所述预测块的像素进行比较;
将各所述第一搜索块对应的比较结果分别进行绝对差值和SAD收敛,并根据收敛结果得到参考块的位置和运动向量,再根据所述参考块将各所述第一搜索块进行分块平均,以确定所述期望的整像素区域的位置和运动向量。
对于上述方法,在一种可能的实现方式中,所述GPU根据所述期望的整像素区域的位置在所述插值图像内进行第二菱形蜂窝匹配搜索,以确定期望的分像素区域的位置和运动向量,包括:
所述GPU根据所述期望的整像素区域的位置在所述插值图像内确定第二菱形区域的中心,并在所述第二菱形区域内选取多个第二方形区域;
根据所述第二菱形区域的顶点像素和各所述第二方形区域的边界像素,在所述插值图像内确定多个第二搜索块,并将各所述第二搜索块的像素与所述预测块的像素进行比较;
将各所述第二搜索块对应的比较结果分别进行SAD收敛,并根据收敛结果得到所述期望的分像素区域的位置和运动向量。
对于上述方法,在一种可能的实现方式中,根据所述块匹配搜索的结果,确定所述当前帧图像的期望图像块的运动向量,包括:
所述GPU将所述预测块的所述期望的分像素区域的位置和运动向量发送给所述CPU;
所述CPU判断所述期望的分像素区域的位置是否处于所述第一菱形区域的边界区域;
如果是,则所述CPU根据所述期望的分像素区域的位置和运动向量计算所述当前帧图像的所述期望图像块的运动向量;否则所述CPU将所述期望的分像素区域的运动向量确定为所述当前帧图像的所述期望图像块的运动向量。
对于上述方法,在一种可能的实现方式中,所述GPU对所述参考帧图像进行至少一次插值处理,得到多个插值图像,包括:
所述GPU根据所述参考帧图像启动多个并行线程执行半像素插值处理,得到半像素插值图像;
所述GPU根据所述参考帧图像和所述半像素插值图像启动多个并行线程执行1/4像素插值处理,得到1/4像素插值图像。
为了解决上述技术问题,根据本发明的另一实施例,提供了一种视频编码的运动补偿匹配系统,包括:
CPU,用于从待处理视频中提取当前帧图像和参考帧图像,并将所提取的帧图像发送给GPU;
GPU,与所述CPU连接,用于从所述CPU接收所述当前帧图像和所述参考帧图像;对所述参考帧图像进行至少一次插值处理,得到多个插值图像;对所述当前帧图像进行划分得到多个预测块;根据各所述预测块在所述参考帧图像和各所述插值图像内进行块匹配搜索;
所述CPU还用于根据所述块匹配搜索的结果,确定所述当前帧图像的期望图像块的运动向量。
对于上述系统,在一种可能的实现方式中,所述GPU包括:
第一匹配搜索模块,用于根据所述预测块的位置在所述参考帧图像内进行第一菱形蜂窝匹配搜索,以确定期望的整像素区域的位置和运动向量;
第二匹配搜索模块,与所述第一匹配搜索模块连接,用于对于各所述插值图像,根据所述期望的整像素区域的位置在所述插值图像内进行第二菱形蜂窝匹配搜索,以确定期望的分像素区域的位置和运动向量。
对于上述系统,在一种可能的实现方式中,所述第一匹配搜索模块包括:
第一菱形蜂窝单元,用于根据所述预测块的位置在所述参考帧图像内确定第一菱形区域的中心,并在所述第一菱形区域内选取多个第一方形区域;
第一匹配单元,与所述第一菱形蜂窝单元连接,用于根据所述第一菱形区域的顶点像素和各所述第一方形区域的边界像素,在所述参考帧图像内确定多个第一搜索块,并将各所述第一搜索块的像素与所述预测块的像素进行比较;
第一收敛单元,与所述第一匹配单元连接,用于将各所述第一搜索块对应的比较结果分别进行绝对差值和SAD收敛,并根据收敛结果得到参考块的位置和运动向量,再根据所述参考块将各所述第一搜索块进行分块平均,以确定所述期望的整像素区域的位置和运动向量。
对于上述系统,在一种可能的实现方式中,所述第二匹配搜索模块包括:
第二菱形蜂窝单元,用于根据所述期望的整像素区域的位置在所述插值图像内确定第二菱形区域的中心,并在所述第二菱形区域内选取多个第二方形区域;
第二匹配单元,与所述第二菱形蜂窝单元连接,用于根据所述第二菱形区域的顶点像素和各所述第二方形区域的边界像素,在所述插值图像内确定多个第二搜索块,并将各所述第二搜索块的像素与所述预测块的像素进行比较;
第二收敛单元,与所述第二匹配单元连接,用于将各所述第二搜索块对应的比较结果分别进行SAD收敛,并根据收敛结果得到所述期望的分像素区域的位置和运动向量。
对于上述系统,在一种可能的实现方式中,所述GPU还用于将所述预测块的所述期望的分像素区域的位置和运动向量发送给所述CPU;
所述CPU还用于判断所述期望的分像素区域的位置是否处于所述第一菱形区域的边界区域;如果是,则根据所述期望的分像素区域的位置和运动向量计算所述当前帧图像的所述期望图像块的运动向量;否则将所述期望的分像素区域的运动向量确定为所述当前帧图像的所述期望图像块的运动向量。
对于上述系统,在一种可能的实现方式中,所述GPU还包括:插值模块,用于根据所述参考帧图像启动多个并行线程执行半像素插值处理,得到半像素插值图像;根据所述参考帧图像和所述半像素插值图像启动多个并行线程执行1/4像素插值处理,得到1/4像素插值图像。
有益效果
本发明实施例采用GPU执行帧图像的插值、分块与块匹配搜索的大量运算,采用CPU处理少量运算,由于采用GPU处理编码过程中最复杂也最耗能的搜索部分,能够充分利用显卡的大规模并发性,从而大幅提升视频编码速度。
根据下面参考附图对示例性实施例的详细说明,本发明的其它特征及方面将变得清楚。
附图说明
包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本发明的示例性实施例、特征和方面,并且用于解释本发明的原理。
图1示出根据本发明一实施例的视频编码的运动补偿匹配方法的流程图;
图2示出根据本发明另一实施例的视频编码的运动补偿匹配方法的流程图;
图3示出根据本发明另一实施例的视频编码的运动补偿匹配方法中菱形区域和方形区域的示意图;
图4示出根据本发明另一实施例的视频编码的运动补偿匹配方法中搜索块的示意图;
图5示出根据本发明另一实施例的视频编码的运动补偿匹配方法中判断边界区域的流程图;
图6示出根据本发明一实施例的视频编码的运动补偿匹配系统的结构框图;
图7示出根据本发明另一实施例的视频编码的运动补偿匹配系统的结构框图。
具体实施方式
以下将参考附图详细说明本发明的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。
在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。
另外,为了更好的说明本发明,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本发明同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本发明的主旨。
实施例1
视频数据存在庞大的时间冗余,针对时间冗余,需采用运动补偿的方法,仅传递残差图像数据,从而大大减少视频图像数据。
图1示出根据本发明一实施例的视频编码的运动补偿匹配方法的流程图。如图1所示,该视频编码的运动补偿匹配方法主要可以包括以下步骤:
步骤101、CPU从待处理视频中提取当前帧图像和参考帧图像,并将所提取的帧图像发送给GPU(图形处理器)。
具体而言,视频通常可以包括多种类型的帧图像,例如I帧(帧内编码帧)、P帧(帧间编码帧)和B帧(双向预测帧)。参考帧图像通常是当前帧图像的前几帧和/或后几帧已经解码的帧图像。CPU在准备工作阶段,可以先确定待处理视频中的当前帧图像的帧类型,然后选取参考帧图像,如果当前帧图像为I帧,仅处理空间上的冗余;如果当前帧图像为P帧,则可以选取该P帧之前的I帧作为参考帧图像;如果当前帧图像为B帧,则可以选取该B帧之前和之后的I帧以及多个P帧作为参考帧图像。CPU选取参考帧图像的上述方式仅是示例,可以根据实际的压缩需求灵活选择。
步骤102、GPU对所述参考帧图像进行至少一次插值处理,得到多个插值图像。
GPU可以根据参考帧图像的大小和GPU自身的性能(例如,GPU所支持的并行线程的数量以及GPU内存处理能力等),启动多个例如2000个并行线程,来同时对参考帧图像进行插值处理,从而提高处理速度。插值处理的次数,可以根据压缩需求来确定,可以插值处理一次,也可以插值处理多次。本发明实施例中GPU可以根据自身的性能来确定在插值处理以及后述的划分、搜索过程中同时启动多少线程。例如,可以如果一个GPU能够最多支持2000个线程同时启动,则优选为将GPU的每一次插值、划分、搜索等运算,尽量分配给2000个以内的线程,以保证较快的处理速度。
以采用GPU进行两次插值处理为例,步骤102具体可以包括:GPU根据所述参考帧图像启动多个并行线程执行半像素插值处理,得到半像素插值图像;然后,GPU根据所述参考帧图像和所述半像素插值图像启动多个并行线程执行1/4像素插值处理,得到1/4像素插值图像。以一个参考帧图像为例,执行半像素插值处理,可以得到4个半像素插值图像;再对4个半像素插值图像执行1/4像素插值处理,可以得到16个1/4像素插值图像,也即,总计可以得到20个插值图像。
步骤103、GPU对所述当前帧图像进行划分得到多个预测块。
GPU对当前帧图像的划分方法可以参照例如HEVC(High Efficiency VideoCoding,高效率视频编码)标准钟Predict Unit分割的方法。对于每一种划分方法得到的各预测块,均进行后续的块匹配搜索,从中选择最合适的一个或多个预测块作为期望图像块。以上预测块的划分方法仅是示例,也可以根据实际应用的需要选择其他方法。
步骤104、GPU根据各所述预测块在所述参考帧图像和各所述插值图像内进行块匹配搜索。
具体而言,GPU首先根据所述预测块的位置在所述参考帧图像内进行第一菱形蜂窝匹配搜索,以确定期望的整像素区域的位置和运动向量;然后,在每个插值图像内,GPU根据所述期望的整像素区域的位置在所述插值图像内进行第二菱形蜂窝匹配搜索,确定期望的分像素区域的位置和运动向量。
继续上述示例,GPU首先在1个参考帧图像内采用大菱形蜂窝匹配搜索算法确定最合适的整像素区域的位置和运动向量,然后在20个插值图像内采用小菱形蜂窝匹配搜索算法确定最合适的分像素区域(期望的分像素区域)的位置和运动向量。
步骤105、根据所述块匹配搜索的结果,确定所述当前帧图像的期望图像块的运动向量。
具体而言,GPU可以将上一步确定的分像素区域的位置和运动向量,确定为当前帧图像的期望图像块的运动向量,也可以将该分像素区域的位置和运动向量发送给CPU,由CPU来判断该分像素区域的位置是否处于边界区域。如果处于边界区域,则说明GPU搜索出来的最佳运动补偿块有可能不是最优的,需要使用CPU按照GPU的结果进行重新计算,CPU可以继续采用现有算法进行计算。例如,CPU在周边宏块的运动向量周边,采用小蜂窝和DS算法,获取最优的MV。
本实施例的视频编码的运动补偿匹配方法,采用GPU执行帧图像的插值、分块与块匹配搜索的大量运算,采用CPU处理少量运算,由于采用GPU处理编码过程中最复杂也是最耗能的搜索部分,能够充分利用显卡的大规模并发性,从而大幅提升视频编码速度。
实施例2
图2示出根据本发明另一实施例的视频编码的运动补偿匹配方法的流程图。图1标号与图2相同的组件具有相同的功能,为简明起见,省略对这些组件的详细说明。
本实施例与图1所示视频编码的运动补偿匹配方法的主要区别在于,对于每一个预测块,GPU均可以根据自身的性能分割出多个并行线程用来执行基于整像素点的菱形蜂窝匹配算法,匹配预测块与各搜索块之间的相似度采用SAD进行计算。
其中菱形算法的主要思想是:根据大量数据统计,物体运动大部分集中在垂直和水平方向,对这部分侧重搜索,基于菱形算法的思想,针对GPU同时可以运行多个线程组,将菱形内部拆分成多个小的正方形,每个分组进行n个独立的正方形的预测,最大情况下利用GPU的性能。
如图2所示,在步骤104中,GPU根据所述预测块的位置在所述参考帧图像内进行第一菱形蜂窝匹配搜索,以确定期望的整像素区域的位置和运动向量,具体可以包括以下步骤:
步骤201、GPU根据所述预测块的位置在所述参考帧图像内确定第一菱形区域的中心,并在所述第一菱形区域内选取多个第一方形区域。
举例而言,可以先确定某个预测块的左上角的像素在当前帧图像内的位置坐标,如图3所示的黑色圆点。然后在参考帧图像内,将与上一步所确定的位置坐标相同的位置确定为第一菱形区域的中心,即以该黑色圆点为菱形中心并根据GPU的性能确定第一菱形区域的面积、各边界像素的位置等,从而确定第一菱形区域所包括的各像素。
步骤202、GPU根据所述第一菱形区域的顶点像素和各所述第一方形区域的边界像素,在所述参考帧图像内确定多个第一搜索块,并将各所述第一搜索块的像素与所述预测块的像素进行比较。
举例而言,如图3所示,GPU选取第一菱形区域的4个顶点像素(图3中的白色圆点),并在第一菱形区域内划分出n个小方块A,从每个小方块A的边界像素中选出m个像素,则总计选出N=4+m*n个像素。如图4所示,以选出的N个像素的位置作为第一搜索块的左上角,在参考帧图像内选取与该预测块的大小相同且坐标相对应的N个第一搜索块a,图4中仅示出部分第一搜索块a,实际选取的每个像素都对应有个一个第一搜索块a。
步骤203、GPU将各所述第一搜索块对应的比较结果分别进行SAD(Sum ofAbsolute Difference,绝对差值和)收敛,并根据收敛结果得到参考块的位置和运动向量(MV,Motion Vector),再根据所述参考块将各所述第一搜索块进行分块平均,以确定所述期望的整像素区域的位置和运动向量。
具体地,可以采用SAD算法对每个第一搜索块内各像素与预测块内对应位置的像素的比较结果进行收敛,得到各第一搜索块的cost(压缩成本),将其中cost最小的第一搜索块确定为最合适的参考块,并根据该参考块和预测块之间的位置偏移来得到该参考块相对于该预测块的运动向量。GPU可以采用多种划分方式,将各第一搜索块再划分为多个子区域,例如可以根据该参考块的位置,将N个第一搜索块划分为多个3*3的子区域,即每9个第一搜索块为一个子区域。然后分别计算每个子区域内的各搜索块的平均cost,并利用均值法选择cost的平均值最小的子区域作为期望的整像素区域,从而确定该期望的整像素区域的位置和运动向量。
需要注意的是,根据选择的参考帧图像的数量不同,GPU对每个参考帧图像均执行步骤201至步骤203,该过程可以通过启动并行线程快速执行。
在一种可能的实现方式中,在步骤104中,GPU根据所述期望的整像素区域的位置在所述插值图像内进行第二菱形蜂窝匹配搜索,以确定期望的分像素区域的位置和运动向量,具体可以包括以下步骤:
步骤204、GPU根据所述期望的整像素区域的位置在所述插值图像内确定第二菱形区域的中心,并在所述第二菱形区域内选取多个第二方形区域。
在每个插值图像内,均根据期望的整像素区域的位置确定第二菱形区域的中心。例如,可以先确定该整像素区域的左上角的像素在参考帧图像内的位置坐标。然后在每个插值图像内,将该整像素区域内的每个像素的位置确定为第二菱形区域的中心,并根据GPU的性能确定第二菱形区域的面积、各边界像素的位置等,从而确定第二菱形区域所包括的各像素。通常第二菱形区域小于第一菱形区域,因此,也可以将第一菱形区域认为是大菱形,将第二菱形区域认为是小菱形。根据上述的示例,整像素区域内的9个第一搜索块可以在一个插值图像内确定出包含该9个第一搜索块的像素位置的第二菱形区域。
步骤205、GPU根据所述第二菱形区域的顶点像素和各所述第二方形区域的边界像素,在所述插值图像内确定多个第二搜索块,并将各所述第二搜索块的像素与所述预测块的像素进行比较。
参见图3和图4,与步骤202类似地,在步骤205中,GPU选取第二菱形区域的4个顶点像素,并在第二菱形区域内划分出s个小方块,从每个小方块的边界像素中选出t个像素,则总计选出M=4+s*t个像素。以选出的M个像素的左上角作为第二搜索块的左上角,在参考帧图像内选取与该预测块的大小相同且坐标相对应的M个第二搜索块。
步骤206、GPU将各所述第二搜索块对应的比较结果分别进行SAD收敛,并根据收敛结果得到所述期望的分像素区域的位置和运动向量。
具体地,可以采用SAD算法对每个第二搜索块内各像素与预测块内对应位置像素的比较结果进行收敛,得到各第二搜索块的cost,将其中cost最小的第二搜索块确定为期望的分像素区域,并根据该分像素区域和预测块之间的位置偏移来得到该分像素区域的运动向量。
在一种可能的实现方式中,如图5所示,步骤105具体包括以下步骤:
步骤207、GPU将所述预测块的所述期望的分像素区域的位置和运动向量发送给所述CPU。
步骤208、CPU判断所述期望的分像素区域的位置是否处于所述第一菱形区域的边界区域;如果是,则执行步骤209;否则,执行步骤210。
具体地,CPU可以将期望的分像素区域的位置与第一菱形区域的边界区域阈值进行比较,判断该分像素区域位置是否处于边界区域。
步骤209、CPU根据所述期望的分像素区域的位置和运动向量计算所述当前帧图像的所述期望图像块的运动向量。
如果期望的分像素区域属于边界区域,则独立交给CPU进行处理,CPU根据周边宏块的运动向量,在向量周边采用例如小蜂窝和DS等搜索算法,最终获取最优的MV(期望图像块的运动向量)。
步骤210、CPU将所述期望的分像素区域的运动向量确定为所述当前帧图像的所述期望图像块的运动向量。
本实施例中,对比整像素区域以及分像素区域,计算出最优像素区域的位置,如果最优像素区域不属于边界区域,该像素区域就是最优像素区域,从而获取到最优的MV。
需要说明的是,虽然本发明实施例中优选以第一/第二菱形区域的顶点像素确定搜索块,但本领域技术人员能够理解,根据实际的匹配精度的需求,也可以选择菱形区域的边所经过的像素来确定搜索块。
本实施例的视频编码的运动补偿匹配方法,采用GPU执行帧图像的插值、分块与块匹配搜索的大量运算,采用CPU处理少量运算,由于采用GPU处理编码过程中最复杂也是最耗能的搜索部分(例如,GPU处理95%左右的运动模块,CPU处理5%左右的运动模块),能够充分利用显卡的大规模并发性,从而大幅提升视频编码速度。
进一步地,在块匹配搜索过程中,采用菱形蜂窝匹配搜索,不仅对菱形区域的顶点像素进行搜索,还对菱形区域内部的蜂窝(多个小方形区域的边界)的像素进行搜索,搜索区域远多于传统的菱形算法,能够提高预测精准度(例如,将预测精准度相对软解提升到98%),并且减少画质损失(例如,将画质损失PSNR控制在0.1db之内)。
实施例3
图6示出根据本发明一实施例的视频编码的运动补偿匹配系统的结构框图。如图6所示,该视频编码的运动补偿匹配系统包括:
CPU,用于从待处理视频中提取当前帧图像和参考帧图像,并将所提取的帧图像发送给GPU;
GPU,与所述CPU连接,用于从所述CPU接收所述当前帧图像和所述参考帧图像;对所述参考帧图像进行至少一次插值处理,得到多个插值图像;对所述当前帧图像进行划分得到多个预测块;根据各所述预测块在所述参考帧图像和各所述插值图像内进行块匹配搜索;
所述CPU还用于根据所述块匹配搜索的结果,确定所述当前帧图像的期望图像块的运动向量。
本实施例的视频编码的运动补偿匹配系统可以执行上述实施例中的任意一种视频编码的运动补偿匹配方法,采用GPU执行帧图像的插值、分块与块匹配搜索的大量运算,采用CPU处理少量运算,由于采用GPU处理编码过程中最复杂也是最耗能的搜索部分,能够充分利用显卡的大规模并发性,从而大幅提升视频编码速度。
实施例4
图7示出根据本发明另一实施例的视频编码的运动补偿匹配系统的结构框图。图7与图6相同的标号具有相同的含义,与上一实施例的主要区别在于,该视频编码的运动补偿匹配系统的GPU可以包括:
第一匹配搜索模块71,用于根据所述预测块的位置在所述参考帧图像内进行第一菱形蜂窝匹配搜索,以确定期望的整像素区域的位置和运动向量;
第二匹配搜索模块73,与所述第一匹配搜索模块71连接,用于对于各所述插值图像,根据所述期望的整像素区域的位置在所述插值图像内进行第二菱形蜂窝匹配搜索,以确定期望的分像素区域的位置和运动向量。
在一种可能的实现方式中,所述第一匹配搜索模块71包括:
第一菱形蜂窝单元711,用于根据所述预测块的位置在所述参考帧图像内确定第一菱形区域的中心,并在所述第一菱形区域内选取多个第一方形区域;
第一匹配单元713,与所述第一菱形蜂窝单元711连接,用于根据所述第一菱形区域的顶点像素和各所述第一方形区域的边界像素,在所述参考帧图像内确定多个第一搜索块,并将各所述第一搜索块的像素与所述预测块的像素进行比较;
第一收敛单元715,与所述第一匹配单元713连接,用于将各所述第一搜索块对应的比较结果分别进行绝对差值和SAD收敛,并根据收敛结果得到参考块的位置和运动向量,再根据所述参考块将各所述第一搜索块进行分块平均,以确定所述期望的整像素区域的位置和运动向量。
在一种可能的实现方式中,所述第二匹配搜索模块73包括:
第二菱形蜂窝单元731,用于根据所述期望的整像素区域的位置在所述插值图像内确定第二菱形区域的中心,并在所述第二菱形区域内选取多个第二方形区域;
第二匹配单元733,与所述第二菱形蜂窝单元731连接,用于根据所述第二菱形区域的顶点像素和各所述第二方形区域的边界像素,在所述插值图像内确定多个第二搜索块,并将各所述第二搜索块的像素与所述预测块的像素进行比较;
第二收敛单元735,与所述第二匹配单元733连接,用于将各所述第二搜索块对应的比较结果分别进行SAD收敛,并根据收敛结果得到所述期望的分像素区域的位置和运动向量。
在一种可能的实现方式中,所述GPU还用于将所述预测块的所述期望的分像素区域的位置和运动向量发送给所述CPU;
所述CPU还用于判断所述期望的分像素区域的位置是否处于所述第一菱形区域的边界区域;如果是,则所述CPU根据所述期望的分像素区域的位置和运动向量计算所述当前帧图像的所述期望图像块的运动向量;否则所述CPU将所述期望的分像素区域的运动向量确定为所述当前帧图像的所述期望图像块的运动向量。
在一种可能的实现方式中,所述GPU还包括:插值模块75,用于根据所述参考帧图像启动多个并行线程执行半像素插值处理,得到半像素插值图像;根据所述参考帧图像和所述半像素插值图像启动多个并行线程执行1/4像素插值处理,得到1/4像素插值图像。
本实施例的视频编码的运动补偿匹配系统可以执行上述实施例中的任意一种视频编码的运动补偿匹配方法,采用GPU执行帧图像的插值、分块与块匹配搜索的大量运算,采用CPU处理少量运算,由于采用GPU处理编码过程中最复杂也是最耗能的搜索部分,能够充分利用显卡的大规模并发性,从而大幅提升视频编码速度。
进一步地,在块匹配搜索过程中,第一和第二匹配搜索模块采用菱形蜂窝匹配搜索,不仅对菱形区域的顶点像素进行搜索,还对菱形区域内部的蜂窝(多个小方形区域的边界)的像素进行搜索,搜索区域远多于传统的菱形算法,能够提高预测精准度(例如,将预测精准度相对软解提升到98%),并且减少画质损失(例如,将画质损失PSNR控制在0.1db之内)。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (12)

1.一种视频编码的运动补偿匹配方法,其特征在于,包括:
中央处理器CPU从待处理视频中提取当前帧图像和参考帧图像,并将所提取的帧图像发送给图形处理器GPU;
所述GPU对所述参考帧图像进行至少一次插值处理,得到多个插值图像;
所述GPU对所述当前帧图像进行划分得到多个预测块;
所述GPU根据各所述预测块在所述参考帧图像和各所述插值图像内进行块匹配搜索;
根据所述块匹配搜索的结果,确定所述当前帧图像的期望图像块的运动向量;
其中,所述GPU根据各所述预测块在所述参考帧图像内进行块匹配搜索,包括:
所述GPU根据所述预测块的位置在所述参考帧图像内进行第一菱形蜂窝匹配搜索;
所述GPU根据所述预测块的位置在所述参考帧图像内确定第一菱形区域的中心,并在所述第一菱形区域内选取多个第一方形区域;
根据所述第一菱形区域的顶点像素和各所述第一方形区域的边界像素,在所述参考帧图像内确定多个第一搜索块,并将各所述第一搜索块的像素与所述预测块的像素进行比较。
2.根据权利要求1所述的方法,其特征在于,所述GPU根据各所述预测块在所述参考帧图像和各所述插值图像内进行块匹配搜索,包括:
所述GPU根据所述预测块的位置在所述参考帧图像内进行第一菱形蜂窝匹配搜索,以确定期望的整像素区域的位置和运动向量;对于各所述插值图像,所述GPU根据所述期望的整像素区域的位置在所述插值图像内进行第二菱形蜂窝匹配搜索,以确定期望的分像素区域的位置和运动向量。
3.根据权利要求2所述的方法,其特征在于,所述GPU根据所述预测块的位置在所述参考帧图像内进行第一菱形蜂窝匹配搜索,以确定期望的整像素区域的位置和运动向量,包括:
将各所述第一搜索块对应的比较结果分别进行绝对差值和SAD收敛,并根据收敛结果得到参考块的位置和运动向量,再根据所述参考块将各所述第一搜索块进行分块平均,以确定所述期望的整像素区域的位置和运动向量。
4.根据权利要求2或3所述的方法,其特征在于,所述GPU根据所述期望的整像素区域的位置在所述插值图像内进行第二菱形蜂窝匹配搜索,以确定期望的分像素区域的位置和运动向量,包括:
所述GPU根据所述期望的整像素区域的位置在所述插值图像内确定第二菱形区域的中心,并在所述第二菱形区域内选取多个第二方形区域;
根据所述第二菱形区域的顶点像素和各所述第二方形区域的边界像素,在所述插值图像内确定多个第二搜索块,并将各所述第二搜索块的像素与所述预测块的像素进行比较;
将各所述第二搜索块对应的比较结果分别进行SAD收敛,并根据收敛结果得到所述期望的分像素区域的位置和运动向量。
5.根据权利要求4所述的方法,其特征在于,根据所述块匹配搜索的结果,确定所述当前帧图像的期望图像块的运动向量,包括:
所述GPU将所述预测块的所述期望的分像素区域的位置和运动向量发送给所述CPU;
所述CPU判断所述期望的分像素区域的位置是否处于第一菱形区域的边界区域;
如果是,则所述CPU根据所述期望的分像素区域的位置和运动向量计算所述当前帧图像的所述期望图像块的运动向量;否则所述CPU将所述期望的分像素区域的运动向量确定为所述当前帧图像的所述期望图像块的运动向量。
6.根据权利要求1至3、5中任一项所述的方法,其特征在于,所述GPU对所述参考帧图像进行至少一次插值处理,得到多个插值图像,包括:
所述GPU根据所述参考帧图像启动多个并行线程执行半像素插值处理,得到半像素插值图像;
所述GPU根据所述参考帧图像和所述半像素插值图像启动多个并行线程执行1/4像素插值处理,得到1/4像素插值图像。
7.一种视频编码的运动补偿匹配系统,其特征在于,包括:
CPU,用于从待处理视频中提取当前帧图像和参考帧图像,并将所提取的帧图像发送给GPU;
GPU,与所述CPU连接,用于从所述CPU接收所述当前帧图像和所述参考帧图像;对所述参考帧图像进行至少一次插值处理,得到多个插值图像;对所述当前帧图像进行划分得到多个预测块;根据各所述预测块在所述参考帧图像和各所述插值图像内进行块匹配搜索;
所述CPU还用于根据所述块匹配搜索的结果,确定所述当前帧图像的期望图像块的运动向量;
所述GPU包括:
第一匹配搜索模块,用于根据所述预测块的位置在所述参考帧图像内进行第一菱形蜂窝匹配搜索;
所述第一匹配搜索模块包括:
第一菱形蜂窝单元,用于根据所述预测块的位置在所述参考帧图像内确定第一菱形区域的中心,并在所述第一菱形区域内选取多个第一方形区域;
第一匹配单元,与所述第一菱形蜂窝单元连接,用于根据所述第一菱形区域的顶点像素和各所述第一方形区域的边界像素,在所述参考帧图像内确定多个第一搜索块,并将各所述第一搜索块的像素与所述预测块的像素进行比较。
8.根据权利要求7所述的系统,其特征在于,所述GPU包括:
第一匹配搜索模块,还用于根据所述预测块的位置在所述参考帧图像内进行第一菱形蜂窝匹配搜索,以确定期望的整像素区域的位置和运动向量;
第二匹配搜索模块,与所述第一匹配搜索模块连接,用于对于各所述插值图像,根据所述期望的整像素区域的位置在所述插值图像内进行第二菱形蜂窝匹配搜索,以确定期望的分像素区域的位置和运动向量。
9.根据权利要求8所述的系统,其特征在于,所述第一匹配搜索模块还包括:
第一收敛单元,与所述第一匹配单元连接,用于将各所述第一搜索块对应的比较结果分别进行绝对差值和SAD收敛,并根据收敛结果得到参考块的位置和运动向量,再根据所述参考块将各所述第一搜索块进行分块平均,以确定所述期望的整像素区域的位置和运动向量。
10.根据权利要求8或9所述的系统,其特征在于,所述第二匹配搜索模块包括:
第二菱形蜂窝单元,用于根据所述期望的整像素区域的位置在所述插值图像内确定第二菱形区域的中心,并在所述第二菱形区域内选取多个第二方形区域;
第二匹配单元,与所述第二菱形蜂窝单元连接,用于根据所述第二菱形区域的顶点像素和各所述第二方形区域的边界像素,在所述插值图像内确定多个第二搜索块,并将各所述第二搜索块的像素与所述预测块的像素进行比较;
第二收敛单元,与所述第二匹配单元连接,用于将各所述第二搜索块对应的比较结果分别进行SAD收敛,并根据收敛结果得到所述期望的分像素区域的位置和运动向量。
11.根据权利要求10所述的系统,其特征在于,
所述GPU还用于将所述预测块的所述期望的分像素区域的位置和运动向量发送给所述CPU;
所述CPU还用于判断所述期望的分像素区域的位置是否处于第一菱形区域的边界区域;如果是,则根据所述期望的分像素区域的位置和运动向量计算所述当前帧图像的所述期望图像块的运动向量;否则将所述期望的分像素区域的运动向量确定为所述当前帧图像的所述期望图像块的运动向量。
12.根据权利要求7至9、11中任一项所述的系统,其特征在于,所述GPU还包括:插值模块,用于根据所述参考帧图像启动多个并行线程执行半像素插值处理,得到半像素插值图像;根据所述参考帧图像和所述半像素插值图像启动多个并行线程执行1/4像素插值处理,得到1/4像素插值图像。
CN201510847233.XA 2015-11-27 2015-11-27 视频编码的运动补偿匹配方法和系统 Active CN105516726B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201510847233.XA CN105516726B (zh) 2015-11-27 2015-11-27 视频编码的运动补偿匹配方法和系统
US15/745,267 US10448036B2 (en) 2015-11-27 2016-09-13 Motion compensation matching for video coding
PCT/CN2016/098785 WO2017088558A1 (zh) 2015-11-27 2016-09-13 视频编码的运动补偿匹配方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510847233.XA CN105516726B (zh) 2015-11-27 2015-11-27 视频编码的运动补偿匹配方法和系统

Publications (2)

Publication Number Publication Date
CN105516726A CN105516726A (zh) 2016-04-20
CN105516726B true CN105516726B (zh) 2019-04-09

Family

ID=55724318

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510847233.XA Active CN105516726B (zh) 2015-11-27 2015-11-27 视频编码的运动补偿匹配方法和系统

Country Status (3)

Country Link
US (1) US10448036B2 (zh)
CN (1) CN105516726B (zh)
WO (1) WO2017088558A1 (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105516726B (zh) 2015-11-27 2019-04-09 传线网络科技(上海)有限公司 视频编码的运动补偿匹配方法和系统
CN106998437B (zh) * 2017-03-31 2020-07-31 武汉斗鱼网络科技有限公司 一种重建视频图像的方法及装置
CN107135392B (zh) * 2017-04-21 2019-12-10 西安电子科技大学 基于异步模式的hevc运动搜索并行方法
WO2019191887A1 (zh) * 2018-04-02 2019-10-10 北京大学 运动补偿的方法、装置和计算机系统
CN109451313A (zh) * 2018-12-14 2019-03-08 深圳市网心科技有限公司 一种视频编码方法、系统及电子设备和存储介质
CN109618153A (zh) * 2019-01-17 2019-04-12 杨郭英 视频编码数据处理机构
CN111652905B (zh) * 2020-04-27 2023-07-07 长春理工大学 一种一维块匹配运动估计方法和装置
CN113489985A (zh) * 2021-05-26 2021-10-08 杭州博雅鸿图视频技术有限公司 一种分像素运动估计方法及估计系统
CN113747170A (zh) * 2021-09-08 2021-12-03 深圳市算筹信息技术有限公司 一种使用ai芯片进行视频编解码运算的方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103297777A (zh) * 2013-05-23 2013-09-11 广州高清视信数码科技股份有限公司 一种用于加速视频编码速度的方法及装置
CN103384324A (zh) * 2013-01-19 2013-11-06 张新安 一种avs-m视频编码快速亚像素运动估计方法
CN103873874A (zh) * 2014-02-19 2014-06-18 同观科技(深圳)有限公司 一种基于可编程并行处理器的全搜索运动估计方法
CN104869398A (zh) * 2015-05-21 2015-08-26 大连理工大学 一种基于cpu+gpu异构平台实现hevc中的cabac的并行方法
CN105072353A (zh) * 2015-07-16 2015-11-18 成都新昱科技有限公司 一种基于多gpu的图像解码拼控算法

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6987866B2 (en) * 2001-06-05 2006-01-17 Micron Technology, Inc. Multi-modal motion estimation for video sequences
US7646817B2 (en) * 2003-03-28 2010-01-12 Microsoft Corporation Accelerating video decoding using a graphics processing unit
US8660182B2 (en) * 2003-06-09 2014-02-25 Nvidia Corporation MPEG motion estimation based on dual start points
US7558428B2 (en) * 2004-09-13 2009-07-07 Microsoft Corporation Accelerated video encoding using a graphics processing unit
US7580456B2 (en) * 2005-03-01 2009-08-25 Microsoft Corporation Prediction-based directional fractional pixel motion estimation for video coding
WO2007078800A1 (en) * 2005-12-15 2007-07-12 Analog Devices, Inc. Motion estimation using prediction guided decimated search
KR101354659B1 (ko) * 2006-11-08 2014-01-28 삼성전자주식회사 멀티 코덱을 지원하는 움직임 보상 방법 및 장치
US8358699B2 (en) * 2007-04-09 2013-01-22 Cavium, Inc. Method and system for selection of reference picture and mode decision
CN101227614B (zh) * 2008-01-22 2010-09-08 炬力集成电路设计有限公司 视频编码系统的运动估计装置及其方法
JP5686108B2 (ja) 2012-02-24 2015-03-18 株式会社ダイフク 誤作業防止装置および誤作業防止装置が設けられた仕分け設備
US9819965B2 (en) * 2012-11-13 2017-11-14 Intel Corporation Content adaptive transform coding for next generation video
CN103051857B (zh) * 2013-01-25 2015-07-15 西安电子科技大学 基于运动补偿的1/4像素精度视频图像去隔行方法
CN103338377A (zh) 2013-07-11 2013-10-02 青岛海信信芯科技有限公司 用于确定运动估计中最优运动矢量的方法
US20160345018A1 (en) * 2015-05-19 2016-11-24 Microsoft Technology Licensing, Llc Video encoding and decoding
CN105516726B (zh) 2015-11-27 2019-04-09 传线网络科技(上海)有限公司 视频编码的运动补偿匹配方法和系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103384324A (zh) * 2013-01-19 2013-11-06 张新安 一种avs-m视频编码快速亚像素运动估计方法
CN103297777A (zh) * 2013-05-23 2013-09-11 广州高清视信数码科技股份有限公司 一种用于加速视频编码速度的方法及装置
CN103873874A (zh) * 2014-02-19 2014-06-18 同观科技(深圳)有限公司 一种基于可编程并行处理器的全搜索运动估计方法
CN104869398A (zh) * 2015-05-21 2015-08-26 大连理工大学 一种基于cpu+gpu异构平台实现hevc中的cabac的并行方法
CN105072353A (zh) * 2015-07-16 2015-11-18 成都新昱科技有限公司 一种基于多gpu的图像解码拼控算法

Also Published As

Publication number Publication date
WO2017088558A1 (zh) 2017-06-01
CN105516726A (zh) 2016-04-20
US10448036B2 (en) 2019-10-15
US20190007693A1 (en) 2019-01-03

Similar Documents

Publication Publication Date Title
CN105516726B (zh) 视频编码的运动补偿匹配方法和系统
CN102547289B (zh) 基于gpu并行实现的快速运动估计方法
CN107360419B (zh) 一种基于透视模型的运动前视视频帧间预测编码方法
CN104038760B (zh) 一种3d视频深度图像帧内楔形分割模式选择方法及系统
CN107135392B (zh) 基于异步模式的hevc运动搜索并行方法
EP3162062B1 (en) Motion vector selection for video encoding
CN106604035B (zh) 一种用于视频编码和压缩的运动估计的方法
CN109495743A (zh) 一种基于异构多处理平台的并行化视频编码方法
Luo et al. GPU-based hierarchical motion estimation for high efficiency video coding
US20200106930A1 (en) Video processing device, display device, video processing method, and control computer-readable storage medium
CN104284186A (zh) 一种适用于hevc标准帧内预测模式判决过程的快速算法
KR20150146419A (ko) 시간적으로 일관된 수퍼픽셀들을 생성하기 위한 방법 및 장치
CN106534858A (zh) 真实运动估计方法及装置
CN105245896A (zh) Hevc并行运动补偿方法及装置
Radicke et al. Bi-predictive motion estimation for HEVC on a graphics processing unit (GPU)
CN110113608B (zh) 一种基于率失真优化的gpu中视频编码快速搜索方法
CN1713732A (zh) 运动矢量检测设备和检测运动矢量的方法
CN103763563B (zh) 运动估计搜索方法
CN109618169B (zh) 用于hevc的帧内决策方法、装置和存储介质
EP2309452A1 (en) Method and arrangement for distance parameter calculation between images
Doan et al. A hardware-oriented concurrent TZ search algorithm for High-Efficiency Video Coding
CN100366092C (zh) 一种视频编码中基于运动矢量预测的搜索方法
JP2013097584A (ja) 画像処理装置、方法及びプログラム
CN105812795A (zh) 一种最大编码单元的编码模式的确定方法和装置
Jo et al. DaDe: delay-adaptive detector for streaming perception

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20200514

Address after: 310052 room 508, floor 5, building 4, No. 699, Wangshang Road, Changhe street, Binjiang District, Hangzhou City, Zhejiang Province

Patentee after: Alibaba (China) Co.,Ltd.

Address before: 200241, room 2, floor 02, building 555, Dongchuan Road, Minhang District, Shanghai

Patentee before: Transmission network technology (Shanghai) Co., Ltd

TR01 Transfer of patent right