CN110392265B - 帧间运动估计方法、装置、电子设备及可读存储介质 - Google Patents

帧间运动估计方法、装置、电子设备及可读存储介质 Download PDF

Info

Publication number
CN110392265B
CN110392265B CN201910794130.XA CN201910794130A CN110392265B CN 110392265 B CN110392265 B CN 110392265B CN 201910794130 A CN201910794130 A CN 201910794130A CN 110392265 B CN110392265 B CN 110392265B
Authority
CN
China
Prior art keywords
pixel point
half pixel
motion estimation
point
macro block
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
CN201910794130.XA
Other languages
English (en)
Other versions
CN110392265A (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.)
Guangzhou Huya Technology Co Ltd
Original Assignee
Guangzhou Huya Technology 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 Guangzhou Huya Technology Co Ltd filed Critical Guangzhou Huya Technology Co Ltd
Priority to CN201910794130.XA priority Critical patent/CN110392265B/zh
Publication of CN110392265A publication Critical patent/CN110392265A/zh
Application granted granted Critical
Publication of CN110392265B publication Critical patent/CN110392265B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods 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/17Methods 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/176Methods 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
    • 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
    • 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/567Motion estimation based on rate distortion criteria

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本申请实施例提供一种帧间运动估计方法、装置、电子设备及可读存储介质,针对待压缩视频流的帧间预测编码帧进行帧间运动估计,在搜索到帧间预测编码帧中每个宏块对应的整像素点后以整像素点为原点搜索对应的多个半像素点,当搜索到某个第一半像素点的运动估计代价比整像素点更小时,以该第一半像素点为原点,经过至少一个迭代周期的半像素点搜索,得到该宏块的目标半像素点后,以该目标半像素点为原点搜索对应的多个1/4像素点以对该宏块进行帧间运动估计。如此,以上通过分层次搜索的方式可以在一定像素点范围内进行帧间运动估计,避免穷尽搜索的高计算复杂度,能够在保证率失真优化质量的同时尽可能降低计算量,提高计算速度。

Description

帧间运动估计方法、装置、电子设备及可读存储介质
技术领域
本申请涉及视频压缩技术领域,具体而言,涉及一种帧间运动估计方法、装置、电子设备及可读存储介质。
背景技术
随着互联网技术的快速发展,伴随着用户对高清视频需求量的增加,视频多媒体的视频数据量也在不断加大。如果视频数据未经压缩,则很难应用于实际的存储和传输。基于此,视频压缩解码技术可以帮助去除视频数据中的冗余信息,从而实现视频数据在互联网中的快速传输和离线存储。
X264编码器存在许多优化特性,其中最重要的优化特性之一便是率失真优化,率失真确保了码率和失真的最优折中,因此能够在码率受限的情况下提供尽可能高的视觉质量。X264编码器提供了不同强度的率失真代价,率失真代价强度越高,则表明率失真优化更好,但计算速度更慢。若计算速度过慢,则极有可能导致编码性能降低从而导致在压缩过程中丢帧,严重影响用户观看体验。因此,有必要针对X264编码器的率失真算法进行优化,以在保证率失真优化质量的同时尽可能降低计算量,提高计算速度,以保证视频数据在互联网中的快速传输和离线存储。
发明内容
有鉴于此,本申请的目的在于提供一种帧间运动估计方法、装置、电子设备及可读存储介质,以在保证率失真优化质量的同时尽可能降低计算量,提高计算速度,以保证视频数据在互联网中的快速传输和离线存储。
根据本申请的一方面,提供一种帧间运动估计方法,应用于电子设备,所述方法包括:
对待压缩视频流的帧间预测编码帧的每个宏块进行整像素点搜索,得到每个宏块对应的整像素点;
针对每个宏块,以该宏块的整像素点为原点搜索对应的多个半像素点;
当搜索到任意一个第一半像素点的运动估计代价小于该整像素点的运动估计代价时,以该第一半像素点为原点,经过至少一个迭代周期的半像素点搜索,得到该宏块的目标半像素点,其中,在每个迭代周期搜索得到的多个第二半像素点中不包括上一迭代周期的原点;
以该目标半像素点为原点搜索对应的多个1/4像素点,并从所述多个1/4像素点中率失真代价最小的1/4像素点以确定该宏块的运动矢量估计值。
根据本申请的另一方面,提供一种帧间运动估计装置,应用于电子设备,所述装置包括:
第一搜索模块,用于对待压缩视频流的帧间预测编码帧的每个宏块进行整像素点搜索,得到每个宏块对应的整像素点;
第二搜索模块,用于针对每个宏块,以该宏块的整像素点为原点搜索对应的多个半像素点;
第三搜索模块,用于当搜索到任意一个第一半像素点的运动估计代价小于该整像素点的运动估计代价时,以该第一半像素点为原点,经过至少一个迭代周期的半像素点搜索,得到该宏块的目标半像素点,其中,在每个迭代周期搜索得到的多个第二半像素点中不包括上一迭代周期的原点;
运动估计模块,用于以该目标半像素点为原点搜索对应的多个1/4像素点,并从所述多个1/4像素点中率失真代价最小的1/4像素点以确定该宏块的运动矢量估计值。
根据本申请的另一方面,提供一种电子设备,所述电子设备包括机器可读存储介质及处理器,所述机器可读存储介质存储有机器可执行指令,所述处理器在执行所述机器可执行指令时,所述电子设备实现前述的帧间运动估计方法。
根据本申请的另一方面,提供一种可读存储介质,所述可读存储介质中存储有机器可执行指令,所述机器可执行指令被执行时实现前述的帧间运动估计方法。
基于上述任一方面,本申请针对待压缩视频流的帧间预测编码帧进行帧间运动估计,在搜索到帧间预测编码帧中每个宏块对应的整像素点后以整像素点为原点搜索对应的多个半像素点,当搜索到某个第一半像素点的运动估计代价比整像素点更小时,以该第一半像素点为原点,经过至少一个迭代周期的半像素点搜索,得到该宏块的目标半像素点后,以该目标半像素点为原点搜索对应的多个1/4像素点以对该宏块进行帧间运动估计。如此,以上通过分层次搜索的方式可以在一定像素点范围内进行帧间运动估计,避免穷尽搜索的高计算复杂度,能够在保证率失真优化质量的同时尽可能降低计算量,提高计算速度,以保证视频数据在互联网中的快速传输和离线存储。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本申请实施例所提供的帧间运动估计方法的流程示意图之一;
图2示出了本申请实施例所提供的一种半像素点搜索示意图;
图3示出了图1中所示的步骤S130的子流程示意图;
图4示出了本申请实施例所提供的一种1/4像素点搜索示意图;
图5示出了本申请实施例所提供的帧间运动估计方法的流程示意图之二;
图6示出了本申请实施例所提供的帧间运动估计装置的功能模块示意图;
图7示出了本申请实施例所提供的用于实现上述帧间运动估计方法的电子设备的结构示意框图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,应当理解,本申请中附图仅起到说明和描述的目的,并不用于限定本申请的保护范围。另外,应当理解,示意性的附图并未按实物比例绘制。本申请中使用的流程图示出了根据本申请实施例的一些实施例实现的操作。应该理解,流程图的操作可以不按顺序实现,没有逻辑的上下文关系的步骤可以反转顺序或者同时实施。此外,本领域技术人员在本申请内容的指引下,可以向流程图添加一个或多个其它操作,也可以从流程图中移除一个或多个操作。
另外,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其它实施例,都属于本申请保护的范围。
在X264编码器的压缩标准中,I帧、P帧、B帧用于表示传输的视频画面。
I帧又称帧内编码帧,是一种自带全部信息的独立帧,无需参考其他图像便可独立进行解码,可以简单理解为一张静态画面,视频序列中的第一个帧始终都是I帧,因为它是关键帧。
P帧又称帧间预测编码帧,需要参考前面的I帧才能进行编码。P帧表示的是当前帧画面与前一帧(前一帧可能是I帧也可能是P帧)的差别。在解码时需要使用到之前缓存的画面叠加上本帧定义的差别,以生成最终画面。与I帧相比,P帧通常占用更少的数据位。
B帧又称双向预测编码帧,也就是B帧记录的是本帧与前后帧的差别。也就是说,要解码B帧,不仅要获取之前的缓存画面,还要解码之后的画面,通过前后画面的与本帧数据的叠加生成最终的画面。B帧压缩率高,但是对解码性能要求较高。
基于前述背景技术获知的技术问题,经本申请发明人研究发现,在针对X264编码器的率失真优化中,严重影响编码速度的是帧间预测编码帧(P帧)的率失真优化,因此为了在保证率失真优化质量的同时尽可能降低计算量,提高计算速度,有必要针对帧间预测编码帧提出优化算法。
在传统的一些实施方案中,针对帧间预测编码帧的帧间运动估计方法通常是设定一定的搜索空间,然后遍历搜索空间内的所有像素点与运动矢量,计算各自的率失真代价,并选取率失真代价最小的某个像素点的运动矢量作为最终的运动估计矢量。上述过程是穷举运算,将导致计算复杂度较大,难以实时处理高帧率高分辨率视频帧。
在传统的另一些实施方案中,帧间运动估计还可以采用分像素运动估计方案,通常在整像素运动估计后进行,包括1/2分像素和1/4分像素运动估计。例如在当前模式下,根据整像素运动估计的搜索结果确定当前最大编码单元的所有PU在参考帧的中心搜索点,然后对各PU在当前中心搜索点附近进行1/2像素细化搜索,并将具有最优运动矢量的1/2像素点作为每个PU下一步的中心搜索点,并对各PU在当前中心搜索点附近进行1/4像素细化搜索,将最优1/4像素点的运动矢量和运动矢量代价记录。
然而,发明人在研究中发现,上述过程中仍然产生了诸多不必要的计算量,例如在每次1/2像素细化搜索时,会涉及到上一次已经计算的像素点的重复计算,从而造成大量非必要的计算量,仍旧导致计算复杂度较大,难以实时处理高帧率高分辨率视频帧。
为此,基于上述技术问题的发现,发明人提出下述技术方案以解决或者改善上述问题。需要注意的是,以上现有技术中的方案所存在的缺陷,均是发明人在经过实践并仔细研究后得出的结果,因此,上述问题的发现过程以及下文中本申请实施例针对上述问题所提出的解决方案,都应该是发明人在发明创造过程中对本申请做出的贡献,而不应当理解为本领域技术人员所公知的技术内容。
图1示出了本申请实施例提供的帧间运动估计方法的流程示意图,应当理解,在其它实施例中,本实施例的帧间运动估计方法其中部分步骤的顺序可以不以图1及以下具体实施例的顺序为限制,例如可以根据实际需要相互交换,或者其中的部分步骤也可以省略或删除。该帧间运动估计方法的详细步骤介绍如下。
步骤S110,对待压缩视频流的帧间预测编码帧的每个宏块进行整像素点搜索,得到每个宏块对应的整像素点。
步骤S120,针对每个宏块,以该宏块的整像素点为原点搜索对应的多个半像素点。
步骤S130,当搜索到任意一个第一半像素点的运动估计代价小于该整像素点的运动估计代价时,以该第一半像素点为原点,经过至少一个迭代周期的半像素点搜索,得到该宏块的目标半像素点。
步骤S140,以该目标半像素点为原点搜索对应的多个1/4像素点,并从多个1/4像素点中率失真代价最小的1/4像素点以确定该宏块的运动矢量估计值。
以互联网视频直播为例,待压缩视频流可以是主播所在终端生成的直播视频流,例如游戏直播视频流、视频采集视频流等。在直播过程中,为了便于存储和传输,需要对直播视频流进行压缩,以实现直播视频流在互联网中的快速传输和离线存储,提高观众的观看体验。其中,为了便于实现不同的压缩策略,可以选择将待压缩视频流的帧间预测编码帧分为大小相同或者不同的图像块,以在不同位置实行不同的压缩策略。
为了解决前述技术问题,本实施例针对待压缩视频流的帧间预测编码帧进行帧间运动估计,在搜索到帧间预测编码帧中每个宏块对应的整像素点后以整像素点为原点搜索对应的多个半像素点,当搜索到某个第一半像素点的运动估计代价比整像素点更小时,以该第一半像素点为原点,经过至少一个迭代周期的半像素点搜索。
在此迭代过程中,为了避免涉及到上一迭代周期的像素点的重复计算,造成大量非必要的计算量,在每个迭代周期搜索得到的多个第二半像素点中不包括上一迭代周期的原点,并经过不断迭代得到该宏块的目标半像素点后,以该目标半像素点为原点搜索对应的多个1/4像素点以对该宏块进行帧间运动估计。如此,以上通过分层次搜索的方式可以在一定像素点范围内进行帧间运动估计,避免穷尽搜索的高计算复杂度,能够在保证率失真优化质量的同时尽可能降低计算量,提高计算速度。
详细地,在一种可能的实施方式中,针对步骤S110,首先可以通过X264编码器的整数运动搜索算法(例如Diamond菱形搜索算法或者Hexagon六边形搜索算法)以得到较优的整像素点。由于X264编码器的H264协议允许1/4精度的像素点矢量,因此接下来可以对半像素点和1/4像素点进行运动估计。
针对步骤S120,在以该宏块的整像素点为原点搜索对应的多个半像素点的过程中,首先可获取预先设定的第一偏移数组,第一偏移数组包括每个半像素点相较于原点坐标的像素坐标。例如,当第一偏移数组为菱形搜索数组时,假设原点坐标为(0,0),那么每个半像素点相较于原点坐标的像素坐标可以分别包括(-2,0)、(0,-2)、(2,0)、(0,2)。
接着,由于在此之前已经获取到整像素点的坐标,因此可以以整像素点的坐标为原点坐标,根据第一偏移数组搜索整像素点对应的多个半像素点。
例如,请结合参阅图2,中心坐标点即为原点坐标(0,0),即整像素点的坐标,搜索到的4个半像素点则为图2中所示的四个白色像素点,其坐标分别为(-2,0)、(0,-2)、(2,0)、(0,2)。
在此基础上,本实施例还可以预先配置一初始变量的参照值,以及一索引数组,第一偏移数组中还包括与前N个半像素点重复的像素坐标,索引数组中包括与第一偏移数组中每个半像素点的像素坐标对应的索引值。例如,可以配置初始变量dir的参照值dir=-2,索引数组为Mod4m1=[3,0,1,2,3,0],第一偏移数组为dia2=[(-2,0),(0,-2),(2,0),(0,2),(-2,0),(0,-2)]。在上述示例中,由于半像素点搜索只需要搜索当前整像素点周围的4个像素点,因此第一索引数组只需要包含4个坐标值即可。而在本方案中,为了后续的简便运算,在第一偏移数组后可以包括与前两个半像素点重复的像素坐标(-2,0)和(0,-2),以便于后续结合索引数组。
索引数组中的每个索引值分别与第一偏移数组中的每个坐标值一一对应,例如索引值3对应(-2,0),索引值0对应(0,-2),索引值1对应(2,0),索引值2对应(0,2),索引值3对应对应(-2,0),索引值0对应(0,-2)。基于此,请参阅图2,每个半像素点都标定了对应的数据,其中分子部分为对应数的第一偏移数组中的坐标,分母部分为对应的索引数组中的索引值。
在此基础上,在搜索到每个半像素点之后,可以定义一个预设搜索顺序,以按照预设搜索顺序搜索每个半像素点的运动估计代价是否小于该整像素点的运动估计代价。例如,假设第一偏移数组中从第一个坐标对应的半像素点到最后一个坐标对应的半像素点的顺序号i分别为0、1、2、3、4、5,预设搜索顺序可以是从第一偏移数组中的第二个坐标对应的半像素点开始,也即以i=1、2、3、4的搜索顺序,搜索每个半像素点的运动估计代价是否小于该整像素点的运动估计代价。
接下来,针对每个半像素点,当搜索到该半像素点的运动估计代价小于该整像素点的运动估计代价时,将该半像素点确定为第一半像素点。
或者,当搜索到该半像素点的运动估计代价不小于该整像素点的运动估计代价时,继续搜索下一个半像素点的运动估计代价是否小于该整像素点的运动估计代价。当搜索到所有半像素点的运动估计代价均不小于该整像素点的运动估计代价时,将该整像素点确定为目标半像素点,并执行前述步骤S140。以图2为例,如果搜索到的4个半像素点的运动估计代价均不小于该整像素点的运动估计代价时,则将中心的整像素点确定为目标半像素点。
在此基础上,针对步骤S130,请结合参阅图3,在一种可能的实施方式中,可以包括子步骤S131-子步骤S138,具体描述如下。
子步骤S131,当搜索到任意一个第一半像素点的运动估计代价小于该整像素点的运动估计代价时,根据该第一半像素点在预设搜索顺序中的顺序更新初始变量的值。
例如,按照上述的预设搜索顺序,若搜索到第一个像素点,也即(0,-2)的运动估计代价小于该整像素点(0,0)的运动估计代价时,由于(0,-2)在预设搜索顺序中的顺序为1,此时则更新初始变量的值dir=i-1=0。
子步骤S132,若更新的初始变量的值不是参照值,则根据更新的初始变量的值从索引数组中获得待搜索的多个第二半像素点的索引值。
例如,更新初始变量的值为0,不等于参照值-2,那么则令新初始变量odir=Mod4m1[dir+1],根据上述示例可知,dir+1=1,odir为索引数组Mod4m1=[3,0,1,2,3,0]中的第二个值,即0。
接下来可以验证Mod4m1[odir+j],j=0,1,2得到的三个索引值,分别为0,1,2,这三个索引值0,1,2则是第一偏移数组dia2中需要进行下一步半像素点搜索的3个半像素点对应的索引值,此处只得到这三个索引值0,1,2,是因为另外一个索引值代表上一迭代周期中的原点,即在上一得带周期中已经参与计算过的整像素点,并且已经确定该正像素点的运动估计代价大于当前的第一半像素点的运动估计代价,故不再参与本次迭代周期的计算,从而减少计算量,提高运算速度。
因此,上述多个第二半像素点的索引值可被配置为不包括上一迭代周期的原点的索引值。
子步骤S133,根据多个第二半像素点的索引值,从第一偏移数组中获得每个第二半像素点相较于原点坐标的像素坐标。
例如,根据上述三个索引值0,1,2,可以从第一偏移数组dia2=[(-2,0),(0,-2),(2,0),(0,2),(-2,0),(0,-2)]中得到三个新的第二半像素点相较于原点坐标的像素坐标,分别为(-2,0),(0,-2),(2,0),而不再包括(0,2),因为(0,2)为上一迭代周期中的(0,0),可不再参与本次迭代周期的计算。
子步骤S134,以该第一半像素点的坐标为原点坐标,根据每个第二半像素点相较于原点坐标的像素坐标,在本迭代周期内进行半像素点搜索,得到该第一半像素点对应的多个第二半像素点。
子步骤S135,判断任意一个第二半像素点的运动估计代价是否小于该第一半像素点的运动估计代价。
例如,仍旧可以按照预设搜索顺序分别搜索每个第二半像素点的运动估计代价是否小于该第一半像素点的运动估计代价,当搜索到任意一个第二半像素点的运动估计代价小于该第一半像素点的运动估计代价时,则执行子步骤S136,具体描述如下。
子步骤S136,将该第二半像素点作为新的第一半像素点。
子步骤S137,判断是否满足设定条件。
若满足设定条件,则执行子步骤S138,具体描述如下。
子步骤S138,获得该宏块的目标半像素点。
若不满足设定条件,则返回执行子步骤S131,直到满足设定条件时,执行子步骤S138。
本实施例中,该设定条件可以包括:所有第二半像素点的运动估计代价均不小于该第一半像素点的运动估计代价,和/或迭代次数达到设定次数。
其中,当所有第二半像素点的运动估计代价均不小于该第一半像素点的运动估计代价时,则表明此时已经查找到运动估计代价最小的像素点,无需再继续迭代,即该宏块的目标半像素点为当前迭代周期开始时的原点。此外,为了避免迭代次数较多导致计算量较大,可以预设一个设定次数(例如10次),当迭代次数达到设定次数时,即该宏块的目标半像素点为当前迭代周期结束时的原点。
在确定每个宏块的目标半像素点后,在一种可能的实施方式中,针对步骤S140,可获取预先设定的第二偏移数组,第二偏移数组可包括每个1/4像素点相较于原点坐标的像素坐标。
例如,当第二偏移数组为六边形搜索数组时,假设原点坐标为(0,0),那么第二偏移数组hex2=[(-1,-2),(-2,0),(-1,2),(1,2),(2,0),(1,-2)]。
接着,以该目标半像素点的坐标为原点坐标,根据第二偏移数组搜索该目标半像素点对应的多个1/4像素点。
例如,请结合参阅图4,中心坐标点即为原点坐标(0,0),即目标半像素点的坐标,搜索到的6个1/4像素点则为图4中所示的6个白色像素点,其坐标分别为(-1,-2),(-2,0),(-1,2),(1,2),(2,0),(1,-2)。
在此基础上,分别计算每个1/4像素点的率失真代价,并根据计算结果选择率失真代价最小的1/4像素点以确定该宏块的运动矢量估计值。例如,如果确定(-2,0)所对应的1/4像素点的率失真代价小于(-1,-2)、(-1,2)、(1,2)、(2,0)、(1,-2)所对应的1/4像素点的率失真代价,那么则确定(-2,0)所对应的1/4像素点为较优的运动矢量估计值所对应的像素点,从而确定该宏块的运动矢量估计值。
进一步地,请参阅图5,在确定每个宏块的运动矢量估计值后,即可根据每个宏块的运动矢量估计值对该待压缩视频流进行压缩,详细地,在步骤S140之后,该帧间运动估计方法还可以包括步骤S150,具体介绍如下。
步骤S150,根据各帧间预测编码帧中每个宏块的运动矢量估计值,在待压缩视频流中与各帧间预测编码帧对应的参考帧中分别对每个宏块进行运动估计,得到压缩视频流。
详细地,在帧间预测编码中,由于帧间预测编码帧中的内容存在着一定的相关性。因此,可将帧间预测编码帧分成多个宏块,并设法搜索出每个宏块在参照帧图像中的位置,并得出两者之间的空间位置的相对偏移量,该相对偏移量即为本实施例所得到的运动矢量估计值。基于此,可以通过在待压缩视频流中与各帧间预测编码帧对应的参考帧中分别对每个宏块进行运动估计,即可恢复出对应的压缩视频帧,从而得到最终的压缩视频流。
进一步地,基于同一发明构思,请参阅图6,示出了本申请实施例提供的帧间运动估计装置200的功能模块示意图,本实施例可以根据上述方法实施例对帧间运动估计装置200进行功能模块的划分。例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。比如,在采用对应各个功能划分各个功能模块的情况下,图6示出的帧间运动估计装置200只是一种装置示意图。其中,帧间运动估计装置200可以包括第一搜索模块210、第二搜索模块220、第三搜索模块230以及运动估计模块240,下面分别对该帧间运动估计装置200的各个功能模块的功能进行详细阐述。
第一搜索模块210,用于对待压缩视频流的帧间预测编码帧的每个宏块进行整像素点搜索,得到每个宏块对应的整像素点。可以理解,该第一搜索模块210可以用于执行上述步骤S110,关于该第一搜索模块210的详细实现方式可以参照上述对步骤S110有关的内容。
第二搜索模块220,用于针对每个宏块,以该宏块的整像素点为原点搜索对应的多个半像素点。可以理解,该第二搜索模块220可以用于执行上述步骤S120,关于该第二搜索模块220的详细实现方式可以参照上述对步骤S120有关的内容。
第三搜索模块230,用于当搜索到任意一个第一半像素点的运动估计代价小于该整像素点的运动估计代价时,以该第一半像素点为原点,经过至少一个迭代周期的半像素点搜索,得到该宏块的目标半像素点,其中,在每个迭代周期搜索得到的多个第二半像素点中不包括上一迭代周期的原点。可以理解,该第三搜索模块230可以用于执行上述步骤S130,关于该第三搜索模块230的详细实现方式可以参照上述对步骤S130有关的内容。
运动估计模块240,用于以该目标半像素点为原点搜索对应的多个1/4像素点,并从多个1/4像素点中率失真代价最小的1/4像素点以确定该宏块的运动矢量估计值。可以理解,该运动估计模块240可以用于执行上述步骤S140,关于该运动估计模块240的详细实现方式可以参照上述对步骤S140有关的内容。
在一种可能的实施方式中,第二搜索模块220具体可以通过以下方式搜索对应的多个半像素点:
获取预先设定的第一偏移数组,第一偏移数组包括每个半像素点相较于原点坐标的像素坐标;
以整像素点的坐标为原点坐标,根据第一偏移数组搜索整像素点对应的多个半像素点。
在一种可能的实施方式中,电子设备预先配置一初始变量的参照值以及一索引数组,第一偏移数组中还包括与前N个半像素点重复的像素坐标,索引数组中包括与第一偏移数组中每个半像素点的像素坐标对应的索引值。
在一种可能的实施方式中,第二搜索模块220具体还可以用于:
按照预设搜索顺序搜索每个半像素点的运动估计代价是否小于该整像素点的运动估计代价;
针对每个半像素点,当搜索到该半像素点的运动估计代价小于该整像素点的运动估计代价时,将该半像素点确定为第一半像素点;以及
当搜索到该半像素点的运动估计代价不小于该整像素点的运动估计代价时,继续搜索下一个半像素点的运动估计代价是否小于该整像素点的运动估计代价;
当搜索到所有半像素点的运动估计代价均不小于该整像素点的运动估计代价时,将该整像素点确定为目标半像素点,并执行以该目标半像素点为原点搜索对应的多个1/4像素点,并从多个1/4像素点中率失真代价最小的1/4像素点以确定该宏块的运动矢量估计值的操作。
在一种可能的实施方式中,第三搜索模块230具体可以通过以下方式得到该宏块的目标半像素点:
当搜索到任意一个第一半像素点的运动估计代价小于该整像素点的运动估计代价时,根据该第一半像素点在预设搜索顺序中的顺序更新初始变量的值;
若更新的初始变量的值不是参照值,则根据更新的初始变量的值从索引数组中获得待搜索的多个第二半像素点的索引值,其中,多个第二半像素点的索引值被配置为不包括上一迭代周期的原点的索引值;
根据多个第二半像素点的索引值,从第一偏移数组中获得每个第二半像素点相较于原点坐标的像素坐标;
以该第一半像素点的坐标为原点坐标,根据每个第二半像素点相较于原点坐标的像素坐标,在本迭代周期内进行半像素点搜索,得到该第一半像素点对应的多个第二半像素点;
当搜索到任意一个第二半像素点的运动估计代价小于该第一半像素点的运动估计代价时,将该第二半像素点作为新的第一半像素点,返回根据该第一半像素点在预设搜索顺序中的顺序更新初始变量的值的步骤,直到满足设定条件时,获得该宏块的目标半像素点。
在一种可能的实施方式中,设定条件包括:所有第二半像素点的运动估计代价均不小于该第一半像素点的运动估计代价,和/或迭代次数达到设定次数。
其中,当所有第二半像素点的运动估计代价均不小于该第一半像素点的运动估计代价时,该宏块的目标半像素点为当前迭代周期开始时的原点。
当迭代次数达到设定次数时,该宏块的目标半像素点为当前迭代周期结束时的原点。
在一种可能的实施方式中,运动估计模块240具体可以通过以下方式确定该宏块的运动矢量估计值:
获取预先设定的第二偏移数组,第二偏移数组包括每个1/4像素点相较于原点坐标的像素坐标;
以该目标半像素点的坐标为原点坐标,根据第二偏移数组搜索该目标半像素点对应的多个1/4像素点;
分别计算每个1/4像素点的率失真代价,并根据计算结果选择率失真代价最小的1/4像素点以确定该宏块的运动矢量估计值。
在一种可能的实施方式中,运动估计模块240具体还可以用于根据各帧间预测编码帧中每个宏块的运动矢量估计值,在待压缩视频流中与各帧间预测编码帧对应的参考帧中分别对每个宏块进行运动估计,得到压缩视频流。
进一步地,基于同一发明构思,图7示出了本申请实施例提供的用于实现上述帧间运动估计方法的处理设备100的结构示意框图,本实施例中,处理设备100可以包括机器可读存储介质120、处理器130以及前述实施例提供的帧间运动估计装置200。
其中,处理器130可以是一个通用的中央处理器(Central Processing Unit,CPU),微处理器,特定应用集成电路(Application-Specific Integrated Circuit,ASIC),或一个或多个用于控制前述方法实施例提供帧间运动估计方法的程序执行的集成电路。
机器可读存储介质120可以是ROM或可存储静态信息和指令的其它类型的静态存储设备,RAM或者可存储信息和指令的其它类型的动态存储设备,也可以是电可擦可编程只读存储器(Electrically Erasable Programmabler-Only MEMory,EEPROM)、只读光盘(Compactdisc Read-Only MEMory,CD-ROM)或其它光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其它磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其它介质,但不限于此。机器可读存储介质120可以是独立存在,通过通信总线与处理器130相连接。机器可读存储介质120也可以和处理器集成在一起。其中,机器可读存储介质120用于存储执行本申请方案的机器可执行指令。处理器130用于执行机器可读存储介质120中存储的机器可执行指令,以执行前述方法实施例提供帧间运动估计方法。
帧间运动估计装置200可以存储于执行机器可读存储介质120中,当处理器130执行帧间运动估计装置200时以执行前述方法实施例提供的帧间运动估计方法。
进一步地,基于同一发明构思,本申请实施例还提供一种包含计算机可执行指令的可读存储介质,计算机可执行指令在被执行时可以用于执行前述方法实施例所提供的帧间运动估计方法。
本申请实施例是参照根据本申请实施例的方法、设备和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其它可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其它可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
尽管在此结合各实施例对本申请进行了描述,然而,在实施所要求保护的本申请过程中,本领域技术人员通过查看所述附图、公开内容、以及所附权利要求书,可理解并实现所述公开实施例的其它变化。在权利要求中,“包括”一词不排除其它组成部分或步骤,“一”或“一个”不排除多个的情况。单个处理器或其它单元可以实现权利要求中列举的若干项功能。相互不同的从属权利要求中记载了某些措施,但这并不表示这些措施不能组合起来产生良好的效果。
以上所述,仅为本申请的各种实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。

Claims (11)

1.一种帧间运动估计方法,其特征在于,应用于电子设备,所述方法包括:
对待压缩视频流的帧间预测编码帧的每个宏块进行整像素点搜索,得到每个宏块对应的整像素点;
针对每个宏块,以该宏块的整像素点为原点搜索对应的多个半像素点;
当搜索到任意一个第一半像素点的运动估计代价小于该整像素点的运动估计代价时,以该第一半像素点为原点,经过至少一个迭代周期的半像素点搜索,得到该宏块的目标半像素点,其中,在每个迭代周期搜索得到的多个第二半像素点中不包括上一迭代周期的原点,所述第一半像素点为以整像素点为原点进行搜索时得到的半像素点,所述第二半像素点为以所述第一半像素点为原点进行半像素点搜索时得到的所述第一半像素点对应的半像素点,在第二半像素点的运动估计代价小于第一半像素点的情况下,将该第二半像素点作为新的第一半像素点;
以该目标半像素点为原点搜索对应的多个1/4像素点,并从所述多个1/4像素点中率失真代价最小的1/4像素点以确定该宏块的运动矢量估计值。
2.根据权利要求1所述的帧间运动估计方法,其特征在于,所述以该宏块的整像素点为原点搜索对应的多个半像素点的步骤,包括:
获取预先设定的第一偏移数组,所述第一偏移数组包括每个半像素点相较于原点坐标的像素坐标;
以所述整像素点的坐标为原点坐标,根据所述第一偏移数组搜索所述整像素点对应的多个半像素点。
3.根据权利要求2所述的帧间运动估计方法,其特征在于,所述电子设备预先配置一初始变量的参照值以及一索引数组,所述第一偏移数组中还包括与前N个半像素点重复的像素坐标,所述索引数组中包括与所述第一偏移数组中每个半像素点的像素坐标对应的索引值。
4.根据权利要求3所述的帧间运动估计方法,其特征在于,所述方法还包括:
按照预设搜索顺序搜索每个半像素点的运动估计代价是否小于该整像素点的运动估计代价;
针对每个半像素点,当搜索到该半像素点的运动估计代价小于该整像素点的运动估计代价时,将该半像素点确定为所述第一半像素点;以及
当搜索到该半像素点的运动估计代价不小于该整像素点的运动估计代价时,继续搜索下一个半像素点的运动估计代价是否小于该整像素点的运动估计代价;
当搜索到所有半像素点的运动估计代价均不小于该整像素点的运动估计代价时,将该整像素点确定为所述目标半像素点,并执行以该目标半像素点为原点搜索对应的多个1/4像素点,并从所述多个1/4像素点中率失真代价最小的1/4像素点以确定该宏块的运动矢量估计值的步骤。
5.根据权利要求3所述的帧间运动估计方法,其特征在于,所述当搜索到任意一个第一半像素点的运动估计代价小于该整像素点的运动估计代价时,以该第一半像素点为原点,经过至少一个迭代周期的半像素点搜索,得到该宏块的目标半像素点的步骤,包括:
当搜索到任意一个第一半像素点的运动估计代价小于该整像素点的运动估计代价时,根据该第一半像素点在预设搜索顺序中的顺序更新所述初始变量的值;
若更新的初始变量的值不是所述参照值,则根据所述更新的初始变量的值从所述索引数组中获得待搜索的多个第二半像素点的索引值,其中,所述多个第二半像素点的索引值被配置为不包括上一迭代周期的原点的索引值;
根据所述多个第二半像素点的索引值,从所述第一偏移数组中获得每个第二半像素点相较于原点坐标的像素坐标;
以该第一半像素点的坐标为原点坐标,根据所述每个第二半像素点相较于原点坐标的像素坐标,在本迭代周期内进行半像素点搜索,得到该第一半像素点对应的多个第二半像素点;
当搜索到任意一个第二半像素点的运动估计代价小于该第一半像素点的运动估计代价时,将该第二半像素点作为新的第一半像素点,返回根据该第一半像素点在预设搜索顺序中的顺序更新所述初始变量的值的步骤,直到满足设定条件时,获得该宏块的目标半像素点。
6.根据权利要求5所述的帧间运动估计方法,其特征在于,所述设定条件包括:所有第二半像素点的运动估计代价均不小于该第一半像素点的运动估计代价,和/或迭代次数达到设定次数;
其中,当所有第二半像素点的运动估计代价均不小于该第一半像素点的运动估计代价时,该宏块的目标半像素点为当前迭代周期开始时的原点;
当迭代次数达到设定次数时,该宏块的目标半像素点为当前迭代周期结束时的原点。
7.根据权利要求1所述的帧间运动估计方法,其特征在于,所述以该目标半像素点为原点搜索对应的多个1/4像素点,并从所述多个1/4像素点中率失真代价最小的1/4像素点以确定该宏块的运动矢量估计值的步骤,包括:
获取预先设定的第二偏移数组,所述第二偏移数组包括每个1/4像素点相较于原点坐标的像素坐标;
以该目标半像素点的坐标为原点坐标,根据所述第二偏移数组搜索该目标半像素点对应的多个1/4像素点;
分别计算每个1/4像素点的率失真代价,并根据计算结果选择率失真代价最小的1/4像素点以确定该宏块的运动矢量估计值。
8.根据权利要求1-7中任意一项所述的帧间运动估计方法,其特征在于,所述方法还包括:
根据各帧间预测编码帧中每个宏块的运动矢量估计值,在所述待压缩视频流中与各帧间预测编码帧对应的参考帧中分别对每个宏块进行运动估计,得到压缩视频流。
9.一种帧间运动估计装置,其特征在于,应用于电子设备,所述装置包括:
第一搜索模块,用于对待压缩视频流的帧间预测编码帧的每个宏块进行整像素点搜索,得到每个宏块对应的整像素点;
第二搜索模块,用于针对每个宏块,以该宏块的整像素点为原点搜索对应的多个半像素点;
第三搜索模块,用于当搜索到任意一个第一半像素点的运动估计代价小于该整像素点的运动估计代价时,以该第一半像素点为原点,经过至少一个迭代周期的半像素点搜索,得到该宏块的目标半像素点,其中,在每个迭代周期搜索得到的多个第二半像素点中不包括上一迭代周期的原点,所述第一半像素点为以整像素点为原点进行搜索时得到的半像素点,所述第二半像素点为以所述第一半像素点为原点进行半像素点搜索时得到的所述第一半像素点对应的半像素点,在第二半像素点的运动估计代价小于第一半像素点的情况下,将该第二半像素点作为新的第一半像素点;
运动估计模块,用于以该目标半像素点为原点搜索对应的多个1/4像素点,并从所述多个1/4像素点中率失真代价最小的1/4像素点以确定该宏块的运动矢量估计值。
10.一种电子设备,其特征在于,所述电子设备包括机器可读存储介质及处理器,所述机器可读存储介质存储有机器可执行指令,所述处理器在执行所述机器可执行指令时,所述电子设备实现权利要求1-8中任意一项所述的帧间运动估计方法。
11.一种可读存储介质,其特征在于,所述可读存储介质中存储有机器可执行指令,所述机器可执行指令被执行时实现权利要求1-8中任意一项所述的帧间运动估计方法。
CN201910794130.XA 2019-08-27 2019-08-27 帧间运动估计方法、装置、电子设备及可读存储介质 Active CN110392265B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910794130.XA CN110392265B (zh) 2019-08-27 2019-08-27 帧间运动估计方法、装置、电子设备及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910794130.XA CN110392265B (zh) 2019-08-27 2019-08-27 帧间运动估计方法、装置、电子设备及可读存储介质

Publications (2)

Publication Number Publication Date
CN110392265A CN110392265A (zh) 2019-10-29
CN110392265B true CN110392265B (zh) 2022-03-25

Family

ID=68289370

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910794130.XA Active CN110392265B (zh) 2019-08-27 2019-08-27 帧间运动估计方法、装置、电子设备及可读存储介质

Country Status (1)

Country Link
CN (1) CN110392265B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112291572B (zh) * 2020-10-15 2023-07-11 浙江天则通信技术有限公司 一种h.264分数倍运动估计方法与系统
CN112884806B (zh) * 2021-01-12 2022-09-02 昆明理工大学 一种基于结合块匹配和密集逆向搜索的视频测流方法及装置
CN113271465B (zh) * 2021-05-18 2022-10-25 北京百度网讯科技有限公司 亚像素运动估计方法及装置、计算机设备和介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103338377A (zh) * 2013-07-11 2013-10-02 青岛海信信芯科技有限公司 用于确定运动估计中最优运动矢量的方法
CN104967858A (zh) * 2015-06-30 2015-10-07 北京奇艺世纪科技有限公司 一种子像素运动向量估计方法和装置
CN106878737A (zh) * 2017-03-02 2017-06-20 西安电子科技大学 高效视频编码中的运动估计加速方法
CN109348234A (zh) * 2018-11-12 2019-02-15 北京佳讯飞鸿电气股份有限公司 一种高效亚像素运动估计方法及系统
CN109660799A (zh) * 2017-10-12 2019-04-19 北京金山云网络技术有限公司 视频编码中的运动估计方法、装置、电子设备及存储介质
CN109889851A (zh) * 2019-03-11 2019-06-14 珠海市杰理科技股份有限公司 视频编码的块匹配方法、装置、计算机设备和存储介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201146019A (en) * 2010-06-02 2011-12-16 Nat Univ Chung Cheng Decimal pixel moving estimation method having dynamic selection mode
US10194158B2 (en) * 2012-09-04 2019-01-29 Qualcomm Incorporated Transform basis adjustment in scalable video coding
KR102251828B1 (ko) * 2015-09-02 2021-05-13 삼성전자주식회사 율―왜곡 최적화 기반의 양자화 방법 및 그 장치
CN110113608B (zh) * 2019-04-30 2022-12-16 上海电力学院 一种基于率失真优化的gpu中视频编码快速搜索方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103338377A (zh) * 2013-07-11 2013-10-02 青岛海信信芯科技有限公司 用于确定运动估计中最优运动矢量的方法
CN104967858A (zh) * 2015-06-30 2015-10-07 北京奇艺世纪科技有限公司 一种子像素运动向量估计方法和装置
CN106878737A (zh) * 2017-03-02 2017-06-20 西安电子科技大学 高效视频编码中的运动估计加速方法
CN109660799A (zh) * 2017-10-12 2019-04-19 北京金山云网络技术有限公司 视频编码中的运动估计方法、装置、电子设备及存储介质
CN109348234A (zh) * 2018-11-12 2019-02-15 北京佳讯飞鸿电气股份有限公司 一种高效亚像素运动估计方法及系统
CN109889851A (zh) * 2019-03-11 2019-06-14 珠海市杰理科技股份有限公司 视频编码的块匹配方法、装置、计算机设备和存储介质

Also Published As

Publication number Publication date
CN110392265A (zh) 2019-10-29

Similar Documents

Publication Publication Date Title
CN110087087B (zh) Vvc帧间编码单元预测模式提前决策及块划分提前终止方法
TWI656785B (zh) 視訊編碼方法和設備和相關的視訊解碼方法和設備
CN110392265B (zh) 帧间运动估计方法、装置、电子设备及可读存储介质
CN110519600B (zh) 帧内帧间联合预测方法、装置、编解码器及存储装置
WO2019242491A1 (zh) 视频编码、解码方法、装置、计算机设备和存储介质
JP5081305B2 (ja) フレーム間予測符号化の方法および装置
WO2021114846A1 (zh) 一种视频降噪处理方法、装置及存储介质
US10819994B2 (en) Image encoding and decoding methods and devices thereof
CN107318026A (zh) 视频编码器以及视频编码方法
CN108419082B (zh) 一种运动估计方法及装置
CN108401185B (zh) 参考帧选择方法、视频转码方法、电子设备和存储介质
CN113422959A (zh) 视频编解码的方法、装置、电子设备及存储介质
CN110719489B (zh) 运动矢量修正、预测、编码方法、编码器及存储装置
JP4469904B2 (ja) 動画像復号装置、動画像復号方法及び動画像復号プログラムを記憶した記憶媒体
CN113115075B (zh) 一种视频画质增强的方法、装置、设备以及存储介质
CN110730344B (zh) 一种视频编码方法、装置以及计算机存储介质
JP2007110409A (ja) 画像処理装置及び画像処理方法をコンピュータに実行させるためのプログラム
US20180109791A1 (en) A method and a module for self-adaptive motion estimation
CN110662074B (zh) 一种运动矢量确定方法和设备
US9549205B2 (en) Method and device for encoding video
CN116325727A (zh) 一种帧内预测方法、编码器、解码器及存储介质
US10075691B2 (en) Multiview video coding method using non-referenced view video group
TWI324482B (en) Algorithm of video coding
CN110365987B (zh) 一种运动矢量确定方法、装置及其设备
CN112714312A (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