一种视频编解码过程中参考帧的宏块数据写入的方法.pdf

上传人:e2 文档编号:681743 上传时间:2018-03-04 格式:PDF 页数:11 大小:424.16KB
返回 下载 相关 举报
摘要
申请专利号:

CN200410101466.7

申请日:

2004.12.21

公开号:

CN1622628A

公开日:

2005.06.01

当前法律状态:

撤回

有效性:

无权

法律详情:

发明专利申请公布后的视为撤回|||实质审查的生效|||公开

IPC分类号:

H04N7/24; H04N7/26

主分类号:

H04N7/24; H04N7/26

申请人:

北京中星微电子有限公司;

发明人:

怀千江; 白峰; 王浩

地址:

100083北京市海淀区学院路35号世宁大厦15层

优先权:

专利代理机构:

代理人:

PDF下载: PDF下载
内容摘要

本发明公开了一种视频编解码过程中参考帧的宏块数据写入的方法,是在对宏块进行写操作时,按照宏块数据的顺序进行地址连续的写操作。具体而言是指在对某一个宏块写操作时,将其数据按照行列顺序依次写入到参考帧的连续地址的存储区间内。这样,一方面使在对宏块进行写操作时,不需要重新计算实际存储地址,而只需要直接顺序写入,从而保证之前缓冲的内存地址有效。另一方面,这样存储的宏块在作为下一帧的参考帧而被读取时,装入系统缓冲区内的数据将为有效的宏块数据,从而节省了数据读取的时间,同时也避免了缓冲命中失误。因此,相对现有技术,本发明具有可有效避免缓冲命中失误,提高视频编解码过程中参考帧的读写效率和速度等特点。

权利要求书

1、  一种视频编解码过程中参考帧的宏块数据写入的方法,其特征在于:在对宏块进行写操作时,按照宏块数据的顺序进行地址连续的写操作。

2、
  如权利要求1所述视频编解码过程中参考帧的宏块数据写入的方法,其特征在于:其步骤为:
步骤1、等待一个宏块数据编解码处理完成;
步骤2、将编解码处理完成后的该宏块的数据按照所在行列的顺序,以连续的地址依次写入到参考帧存储区内;
步骤3、等待该宏块数据写操作完成;
步骤4、判断是否完成了所有的宏块的写操作,如果没有,则跳转至步骤1,循环处理参考帧的所有宏块,至写入所有参考帧内宏块数据后结束。

3、
  如权利要求2所述视频编解码过程中参考帧的宏块数据写入的方法,其特征在于:所述步骤2具体为:
步骤20、获得参考帧的存储区内待写入的宏块数据的首地址,使写地址=首地址;
步骤21、获得缓冲区内将进行写操作的宏块数据的首数据,使写数据=首数据;
步骤22、将所述写数据依所述写地址写入到参考帧的存储区;
步骤23,所述写数据为本宏块数据的最后一个数据吗?是则跳转至步骤29,否则执行步骤24;
步骤24、所述写数据为本宏块数据内的所处行中的最后一个数据吗?是则执行步骤25,否则跳转步骤26;
步骤25,获得所述写数据的下一行的第一个数据,并作为新的写数据,跳转至步骤27;
步骤26,获得宏块数据内所述写数据右边相邻的一个数据,并作为新的写数据;
步骤27、使写地址=写地址+1;
步骤28,将所述新的写数据依所述写地址写入到参考帧的存储区;
步骤29,本宏块数据的写操作完成。

说明书

一种视频编解码过程中参考帧的宏块数据写入的方法
技术领域
本发明涉及一种视频算法编解码处理过程中的方法,尤其是一种参考帧的宏块数据写入的方法。
技术背景
基于运动估计的视频编码算法中往往将输入帧分割成若干宏块,其编解码的过程则以宏块为单元进行。如解码时是利用参考帧和运动矢量得到预测帧,加上图像残差得到恢复数据。具体来讲是:首先从码流(bit stream)数据中分离出运动矢量和图像残差,分别进行熵编码(Entropy encode);然后将运动矢量和参考帧对应的宏块进行运动估计(motion estimation,ME),最后再加上图像残差,将恢复的宏块数据保存用作下一帧的参考帧。
由于帧数据在内存中存储时是按帧的行列顺序地址存放,而对于每个宏块而言,其内部的数据地址是不连续的,因此,在将恢复的宏块数据保存用作下一帧的参考帧时,即写宏块数据时,预读的内存地址往往是无效的。并且,当进行下一帧解码运动估计时,操作系统对内存的读取也是以宏块为单元,而系统是以存储的顺序地址来进行缓冲,就会造成数据读取的地址失效。因此操作系统在处理参考帧时对宏块的读写都会造成额外的缓冲命中失误(cache miss)。
发明内容
本发明的目的是:针对现有技术的不足,提供一种简单合理、可减少缓冲命中失误、提高读写效率的视频编码过程中解参考帧的宏块数据写入的方法。
为了解决上述技术问题,本发明所采取的技术方案是:一种视频编解码过程中参考帧的宏块数据写入的方法,是在对宏块进行写操作时,按照宏块数据的顺序进行地址连续的写操作。
其步骤可以为:
步骤1、等待一个宏块数据编解码处理完成;
步骤2、将编解码处理完成后的该宏块的数据按照所在行列的顺序,以连续的地址依次写入到参考帧存储区内;
步骤3、等待该宏块数据写操作完成;
步骤4、判断是否完成了所有的宏块的写操作,如果没有,则跳转至步骤1,循环处理参考帧的所有宏块,至写入所有参考帧内宏块数据后结束。
所述步骤2具体可以为:
步骤20、获得参考帧的存储区内待写入的宏块数据的首地址,使写地址=首地址;
步骤21、获得缓冲区内将进行写操作的宏块数据的首数据,使写数据=首数据;
步骤22、将所述写数据依所述写地址写入到参考帧的存储区;
步骤23,所述写数据为本宏块数据的最后一个数据吗?是则跳转至步骤29,否则执行步骤24;
步骤24、所述写数据为本宏块数据内的所处行中的最后一个数据吗?是则执行步骤25,否则跳转步骤26;
步骤25,获得所述写数据的下一行的第一个数据,并作为新的写数据,跳转至步骤27;
步骤26,获得宏块数据内所述写数据右边相邻的一个数据,并作为新的写数据;
步骤27、使写地址=写地址+1;
步骤28,将所述新的写数据依所述写地址写入到参考帧的存储区;
步骤29,本宏块数据的写操作完成。
在上述技术方案中,本发明由于在写参考帧时,是按照宏块内部数据的行列顺序,依次写入内存,使每个宏块内部数据的存储地址是连续的。这样,一方面,由于宏块内部的地址是连续存放的,在对宏块进行写操作时,不需要重新计算实际存储地址,而只需要直接顺序写入,从而保证之前缓冲的内存地址有效。另一方面,这样存储的宏块在作为下一帧的参考帧时,由于宏块内部数据的存储地址已经是连续的,则读取该宏块时,装入系统缓冲区内的数据将为有效的宏块数据,从而节省了数据读取的时间,同时也避免了缓冲命中失误。因此,相对现有技术,本发明具有可有效避免缓冲命中失误,提高视频编解码过程中参考帧的读写效率和速度等特点。
附图说明
附图1为本发明一种视频解码过程中参考帧的宏块数据写入的方法较佳实施例的工作流程图;
附图2为图1中步骤2的详细工作流程图;
附图3为本发明宏块数据写操作地示意图;
附图4为现有技术宏块数据写操作的示意图。
具体实施方式
下面将结合说明书附图及具体实施例对本发明作进一步详细说明。
本发明所提供的一种视频编解码过程中参考帧的宏块数据写入的方法,是在对宏块进行写操作时,按照宏块数据的顺序进行地址连续的写操作。
参考附图1,本发明的一个较佳实施例的具体步骤为:
步骤1、等待一个宏块数据编解码处理完成;
步骤2、将编解码处理完成后的该宏块的数据按照所在行列的顺序,以连续的地址依次写入到参考帧存储区内;
步骤3、等待该宏块数据写操作完成;
步骤4、判断是否完成了所有的宏块的写操作,如果没有,则跳转至步骤1,循环处理参考帧的所有宏块,至写入所有参考帧内宏块数据后结束。
参考图2,其中,所述步骤2具体为:
步骤20、获得参考帧的存储区内待写入的宏块数据的首地址,使写地址=首地址;
步骤21、获得缓冲区内将进行写操作的宏块数据的首数据,使写数据=首数据;
步骤22、将所述写数据依所述写地址写入到参考帧的存储区;
步骤23,所述写数据为本宏块数据的最后一个数据吗?是则跳转至步骤29,否则执行步骤24;
步骤24、所述写数据为本宏块数据内的所处行中的最后一个数据吗?是则执行步骤25,否则跳转步骤26;
步骤25,获得所述写数据的下一行的第一个数据,并作为新的写数据,跳转至步骤27;
步骤26,获得宏块数据内所述写数据右边相邻的一个数据,并作为新的写数据;
步骤27、使写地址=写地址+1;
步骤28,将所述新的写数据依所述写地址写入到参考帧的存储区;
步骤29,本宏块数据的写操作完成。
在上述步骤中,本实施例则完成了将宏块数据按其所在位置的行列顺序依次写入参考帧的存储区的写操作过程。如图3所示,假设共有25个16×16像素的宏块,
本发明写操作时的顺序可如图3中箭头所指方向,是在各个宏块内顺序对每个数据写操作,从而使各个宏块写入参考帧的存储区后的首地址如图示,分别为0x00、0x100、0x200、0x300、0x400……。这样就保证了参考帧内的宏块数据是顺序存储的。
然后在现有技术中,其写操作是按整帧数据的行列顺序存储,即为图4中箭头所指方向。则使整帧的每一行数据地址连续,如图中第一行地址从0x00~0x4f。但是对于单个宏块内部,如宏块1,则其第一行地址为0x00~0x0f,第二行地址为0x50~0x5f,……
由图3、4对比可见,宏块在内存中存储时,其数据是按照帧的行列顺序存储,则对于一个宏块而言,数据地址不连续。而在对宏块编解码处理时,调入缓冲区的宏块数据按宏块的行列顺序存储,则数据地址连续。那么在写参考帧的时候,对一个宏块进行写操作,则不再重新计算宏块的实际存储地址,而是直接将缓冲区内的宏块数据顺序写入内存,作为参考帧,由于其地址是连续的,因此不会出现缓冲命中失误的问题。

一种视频编解码过程中参考帧的宏块数据写入的方法.pdf_第1页
第1页 / 共11页
一种视频编解码过程中参考帧的宏块数据写入的方法.pdf_第2页
第2页 / 共11页
一种视频编解码过程中参考帧的宏块数据写入的方法.pdf_第3页
第3页 / 共11页
点击查看更多>>
资源描述

《一种视频编解码过程中参考帧的宏块数据写入的方法.pdf》由会员分享,可在线阅读,更多相关《一种视频编解码过程中参考帧的宏块数据写入的方法.pdf(11页珍藏版)》请在专利查询网上搜索。

本发明公开了一种视频编解码过程中参考帧的宏块数据写入的方法,是在对宏块进行写操作时,按照宏块数据的顺序进行地址连续的写操作。具体而言是指在对某一个宏块写操作时,将其数据按照行列顺序依次写入到参考帧的连续地址的存储区间内。这样,一方面使在对宏块进行写操作时,不需要重新计算实际存储地址,而只需要直接顺序写入,从而保证之前缓冲的内存地址有效。另一方面,这样存储的宏块在作为下一帧的参考帧而被读取时,装入系。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 电学 > 电通信技术


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1