一种帧间运动估计编码的目标像素点搜索方法与流程
- 国知局
- 2025-01-10 13:33:07
本技术涉及视频编码,尤其是涉及一种帧间运动估计编码的目标像素点搜索方法。
背景技术:
1、hevc作为新一代视频编码标准,相比上一代视频编码标准h.264/avc在压缩效率上提升了一倍,但与此同时编码复杂度也大大增加。这主要是由于hevc中引入了一些新的技术,比如大尺寸的四叉树分割、更高的预测精度、35种帧内预测模式以及rdo技术和sao技术等。其中rdo过程需要计算每一种编码尺寸和预测单元的编码代价,从中选择代价最小的作为最佳尺寸和预测模式,因此,rdo过程是编码器编码过程中计算量最大的部分。而帧间运动估计过程需要帧间预测块从邻近的参考帧中通过运动匹配的方式搜索得到最相似的块,计算复杂度极高。由于帧间运动估计采用hevc,引入的新技术导致编码的复杂度和计算的复杂度极高,不适用于视频会议等实时应用场景。
2、申请号为cn201510509889.0的《一种hevc帧间编码快速模式选择方法》主要是采用建模的方式寻找最优像素点,容易陷入局部最优的问题,对于帧间运动估计和降低编码复杂度具有局限性。
3、针对上述中的相关技术,发明人发现现有的帧间运动估计编码方法存在有寻找最优像素点时容易陷入局部最优的问题而不适用于视频会议等实时应用场景的问题。
技术实现思路
1、为了使帧间运动估计编码适用于视频会议等实时应用场景,提高编码效率,本技术提供了一种帧间运动估计编码的目标像素点搜索方法。
2、第一方面,本技术提供一种帧间运动估计编码的目标像素点搜索方法。
3、本技术是通过以下技术方案得以实现的:
4、一种帧间运动估计编码的目标像素点搜索方法,包括以下步骤,
5、获取待编码视频帧;
6、基于帧间预测,结合参考帧,对所述待编码视频帧的当前帧中的一个块进行预测,得到预测块;
7、根据所述预测块进行整像素搜索,确定整像素最优搜索点;
8、利用所述整像素最优搜索点进行半像素搜索,确定半像素最优搜索点;
9、通过所述半像素最优搜索点,判断是否进行1/4像素搜索;
10、若进行1/4像素搜索,确定1/4像素最优搜索点;
11、从所述整像素最优搜索点、所述半像素最优搜索点和所述1/4像素最优搜索点中选择失真最小的搜索像素点,作为目标像素点。
12、本技术在一较佳示例中可以进一步配置为:还包括以下步骤,
13、若不进行1/4像素搜索,则从所述整像素最优搜索点和所述半像素最优搜索点中选择失真最小的搜索像素点,作为目标像素点。
14、本技术在一较佳示例中可以进一步配置为:根据所述预测块进行整像素搜索,确定整像素最优搜索点的步骤包括,
15、利用所述预测块在空域和时域上的相邻编码块的运动矢量,组成运动矢量集合;
16、从所述运动矢量集合中寻找失真最小的运动矢量,作为当前编码块的初始矢量,得到当前编码块在参考帧中的整像素搜索起始点;
17、以所述整像素搜索起始点为中心,分别以预设的步长进行菱形搜索,并选择当前菱形搜索中失真最小的点作为下一次菱形搜索的搜索中心点;
18、进行下一次菱形搜索前,先计算所述搜索中心点与所述整像素搜索起始点的距离;
19、判断所述距离与预设的距离阈值的大小;
20、若所述距离与所述距离阈值的大小满足预设条件,则进入下一次菱形搜索,直至整像素搜索点出现在搜索中心位置,得到所述整像素最优搜索点,所述整像素最优搜索点的失真值小于或等于预设的第一阈值。
21、本技术在一较佳示例中可以进一步配置为:判断所述距离与预设的距离阈值的大小的步骤后,还包括,
22、若所述距离与所述距离阈值的大小不满足预设条件,则以所述搜索中心点作为所述整像素搜索起始点,按预设的步长进行全遍历搜索,得到所述整像素最优搜索点。
23、本技术在一较佳示例中可以进一步配置为:利用所述整像素最优搜索点进行半像素搜索,确定半像素最优搜索点的步骤包括,
24、以所述整像素最优搜索点为中心进行矩形检索,搜索时按(-2,0)→(2,0)→(0,-2)→(0,2)→(-2,-2)→(2,-2)→(-2,2)→(2,2)的顺序进行,选择失真最小的搜索点,作为所述半像素最优搜索点。
25、本技术在一较佳示例中可以进一步配置为:所述确定1/4像素最优搜索点的步骤包括,
26、判断所述半像素最优搜索点的位置;
27、当所述半像素最优搜索点位于像素块的中点位置,按照(0,-1)→(0,1)→(-1,0)→(-1,-1)/(-1,1)→(1,0)→(1,-1)/(1,1)的顺序进行1/4像素搜索;
28、先计算(0,-1)、(0,1)和(-1,0)的像素值,确定当前的1/4像素搜索点;
29、若当前的1/4像素搜索点为(0,-1)或者(-1,0),则计算(-1,-1)的像素值,得到1/4像素最优搜索点;
30、若当前的1/4像素搜索点为(-1,0)或者(0,1),则计算(-1,1)的像素值,得到1/4像素最优搜索点;
31、再计算(1,0)的像素值,确定当前的1/4像素搜索点;
32、若当前的1/4像素搜索点为(0,-1)或者(1,0),则计算(1,-1)的像素值,得到1/4像素最优搜索点。
33、本技术在一较佳示例中可以进一步配置为:判断所述半像素最优搜索点的位置的步骤后,还包括,
34、当所述半像素最优搜索点位于像素块的横轴上时,搜索时按(0,-1)→(0,1)→(-1,0)→(-1,-1)/(-1,1)→(1,0)→(1,-1)/(1,1)的顺序进行1/4像素搜索;
35、先计算(0,-1)和(0,1)的像素值;
36、判断所述半像素最优搜索点的位置;
37、当所述半像素最优搜索点的位置位于像素块的正横轴上时,则计算(-1,0)的像素值,确定当前的1/4像素搜索点;
38、若当前的1/4像素搜索点为(0,-1)和(-1,0),则计算(-1,-1)的像素值,得到1/4像素最优搜索点;
39、若当前的1/4像素搜索点为(-1,0)和(0,1),则计算(-1,1)的像素值,得到1/4像素最优搜索点;
40、当所述半像素最优搜索点的位置位于像素块的负横轴上时,则计算(1,0)的像素值,确定当前的1/4像素搜索点;
41、若当前的1/4像素搜索点为(0,-1)或者(1,0),则计算(1,-1)的像素值,得到1/4像素最优搜索点;
42、若当前的1/4像素搜索点为(1,0),则计算(1,1)的像素值,得到1/4像素最优搜索点。
43、本技术在一较佳示例中可以进一步配置为:判断所述半像素最优搜索点的位置的步骤后,还包括,
44、当所述半像素最优搜索点位于像素块的纵轴上时,搜索时按(0,-1)/(0,1)→(-1,0)→(-1,-1)/(-1,1)→(1,0)→(1,-1)/(1,1)的顺序进行1/4像素搜索;
45、若所述半像素最优搜索点为(0,2),则计算(0,-1)的像素值,确定当前的1/4像素搜索点;
46、若所述半像素最优搜索点为(0,-2),则计算(0,1)的像素值,确定当前的1/4像素搜索点;
47、计算(-1,0)的像素值,判断所述半像素最优搜索点的位置和当前的1/4像素搜索点的位置;
48、当所述半像素最优搜索点为(0,2)且当前的1/4像素搜索点为(0,-1)或者(-1,0)时,计算(1,-1)的像素值,得到1/4像素最优搜索点;
49、当所述半像素最优搜索点为(0,-2)且当前的1/4像素搜索点为(0,1)或者(-1,0)时,计算(-1,1)的像素值,得到1/4像素最优搜索点;
50、计算(1,0)的像素值,判断所述半像素最优搜索点的位置和当前的1/4像素搜索点的位置;
51、当所述半像素最优搜索点为(0,2)且当前的1/4像素搜索点为(0,-1)或者(1,0)时,计算(1,-1)的像素值,得到1/4像素最优搜索点;
52、当所述半像素最优搜索点为(0,-2)且当前的1/4像素搜索点为(0,1)或者(1,0)时,计算(1,1)的像素值,得到1/4像素最优搜索点。
53、本技术在一较佳示例中可以进一步配置为:判断所述半像素最优搜索点的位置的步骤后,还包括,
54、当所述半像素最优搜索点位于像素块的顶点位置时,搜索时按(0,-1)/(0,1)→(-1,0)→(-1,-1)/(-1,1)→(1,0)→(1,-1)/(1,1)的顺序进行1/4像素搜索;
55、判断所述半像素最优搜索点的位置;
56、若所述半像素最优搜索点的垂直坐标为2,则计算(0,-1)的像素值,得到1/4像素最优搜索点;
57、若所述半像素最优搜索点的垂直坐标不为2,则计算(0,1)的像素值,得到1/4像素最优搜索点;
58、若所述半像素最优搜索点的水平坐标为2,则计算(-1,0)的像素值,得到1/4像素最优搜索点;
59、若所述半像素最优搜索点的垂直坐标为2且当前的1/4像素搜索点为(0,-1)或者(-1,0),则计算(-1,-1)的像素值,得到1/4像素最优搜索点;
60、若所述半像素最优搜索点的垂直坐标为-2且当前的1/4像素搜索点为(-1,0)或者(0,1),则计算(-1,1)的像素值,得到1/4像素最优搜索点;
61、若所述半像素最优搜索点的水平坐标为-2,则计算(1,0)的像素值,得到1/4像素最优搜索点;
62、若所述半像素最优搜索点为(-2,-2)且当前的1/4像素搜索点为(0,-1)或者(1,0),则计算(1,-1)的像素值,得到1/4像素最优搜索点;
63、若当前的1/4像素搜索点为(0,1)或者(1,0),则计算(1,1)的像素值,得到1/4像素最优搜索点。
64、本技术在一较佳示例中可以进一步配置为:通过所述半像素最优搜索点,判断是否进行1/4像素搜索的步骤包括,
65、计算各半像素搜索点中的最大失真值与所述整像素最优搜索点的失真值的差值;
66、若所述半像素搜索点的最大失真值与所述整像素最优搜索点的失真值的差值大于或等于预设的第二阈值,则判断所述半像素最优搜索点的失真值是否大于merge模式的最小失真值;
67、当所述半像素最优搜索点的失真值大于merge模式的最小失真值时,判定进行1/4像素搜索;
68、当所述半像素搜索点的最大失真值与所述整像素最优搜索点的失真值的差值小于所述第二阈值时,判定不进行1/4像素搜索。
69、第二方面,本技术提供一种帧间运动估计编码的目标像素点搜索装置。
70、本技术是通过以下技术方案得以实现的:
71、一种帧间运动估计编码的目标像素点搜索装置,包括,
72、采集模块,用于获取待编码视频帧;
73、帧间预测模块,用于基于帧间预测,结合参考帧,对所述待编码视频帧的当前帧中的一个块进行预测,得到预测块;
74、整像素搜索模块,用于根据所述预测块进行整像素搜索,确定整像素最优搜索点;
75、半像素搜索模块,用于利用所述整像素最优搜索点进行半像素搜索,确定半像素最优搜索点;
76、判断模块,用于通过所述半像素最优搜索点,判断是否进行1/4像素搜索;
77、1/4像素搜索模块,用于进行1/4像素搜索,确定1/4像素最优搜索点;
78、最优搜索点确定模块,用于从所述整像素最优搜索点、所述半像素最优搜索点和所述1/4像素最优搜索点中选择失真最小的搜索像素点,作为目标像素点。
79、综上所述,与现有技术相比,本技术提供的技术方案带来的有益效果至少包括:
80、基于帧间预测,利用前后帧之间的相似性,结合参考帧,对获取的待编码视频帧的当前帧中的一个块进行预测,得到预测块,通过存储实际视频块与预测块之间的预测误差,无需存储整个视频块的像素数据,以减少待编码视频的数据量,提高编码效率;根据预测块进行整像素搜索,确定整像素最优搜索点,利用整像素最优搜索点进行半像素搜索,确定半像素最优搜索点,以充分利用预测块的特征和最优半像素点的位置和搜索趋势确定最优搜索点,通过所述半像素最优搜索点,判断是否进行1/4像素搜索,最终确定最优搜索点;克服现有技术中采用建模方式寻找最优搜索点容易陷入局部最优的问题,从而有效降低帧间运动估计中的分像素计算复杂度,在不降低或者小幅降低编码性能的前提下,提高编码效率,使帧间运动估计编码适用于视频会议等实时应用场景,利于实时视频编码处理的实现。
本文地址:https://www.jishuxx.com/zhuanli/20250110/353867.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。