一种数字图像几何变换的处理方法及装置制造方法及图纸

技术编号:14494481 阅读:61 留言:0更新日期:2017-01-29 17:20
本发明专利技术公开了一种数字图像几何变换的处理方法及装置,用于在H.264编码后的码流中实现图像旋转、翻转。该方法为:根据图像的几何变换方式对应的预设的宏块映射关系,确定宏块的读取顺序,并依次从内存中读取相应的宏块,每读取一个宏块,按照该几何变化方式对应的预设的地址计算方法,计算该宏块内每一个数据对应的目标存放地址,按照获得的目标存放地址将宏块内的每一个数据依次存入数据缓存中,将数据缓存中的数据按顺序读出并发送至编码器,这样,实现了在H.264编码后的码流中的图像旋转、翻转,在不增加总线、内存访问次数的基础上,保障了总线、内存的访问效率,减少带宽消耗及相应的访问功耗,并且硬件实现资源也较小。

【技术实现步骤摘要】

本专利技术涉及计算机
,特别涉及一种数字图像几何变换的处理方法及装置
技术介绍
随着计算机技术的发展,图像处理技术应用越来越广泛。在对图像进行处理时,会涉及图像的翻转、旋转、缩放、平移等操作。现有技术中,图像的旋转或/和翻转操作往往使用查表法。若要在H.264码流中实现图像旋转或/和翻转,就要求输入H.264编码器的数据源为已经实现旋转或/和翻转的宏块数据。参阅图1所示,待编码的图像数据往往以宏块格式存储在内存中,在进行编码时,通过总线协议(AdvancedeXtensibleInterface,AXI)从内存中读取出来,送至编码器进行编码。而图像数据在预处理阶段时,是以行的顺序输出的,因此输出的图像数据存至内存中的过程中,要进行行至宏块的转换。现有技术中一般是在进行行至宏块的转化的过程中完成图像旋转或/和翻转的操作。若一个宏块大小由16×16亮度像素块组成(仅从亮度信息Y进行说明),而行至宏块转化的内部缓存往往不够大,假设只有4行数据大小的缓存,所以,在需要进行旋转或/和翻转处理时,以旋转90度为例,因旋转90度处理后的图像在横、竖方向上发生了变化,因此旋转90度后的宏块在连续地址上只有4个有效数据,也就是说,此时发起总线请求,其突发脉冲(即burst)长度只有4个字节,大大降低了访问效率,而且,如果要增加burst长度,则相应缓存大小会急剧增加。如果图像需要实现旋转或/和翻转要求,在将数据写入内存时,就需要获取当前数据在旋转或/和翻转后所从属的宏块坐标,并且,宏块内的数据也需要按照旋转或/和翻转后的顺序重新排列。其中,实现方法为,将原始图像的像素,按照一定的地址顺序,写至内部缓存,在数据写至总线时,按顺序从缓存内读出,就可以达到旋转或/和翻转的目的。在按照一定的地址顺序,写至内部缓存的过程中,一般是以查表法来获取原始图像在旋转或/和翻转后的宏块坐标和当前数据应写至的缓存地址。其中,每一种旋转或/和翻转方式对应一张大小为256×256的查找表,以及,一张随图像宽、高变化的表格用来查找宏块坐标。这种方法消耗的资源较大,并且随着旋转、翻转方式的增加,消耗的资源也急剧增大。综上所述,现有技术中,数字图像旋转、翻转一般都在图像预处理阶段进行,在实现过程中,往往使用查表法,降低了总线、内存访问的效率,增加了带宽消耗,也增大了功耗,硬件消耗的资源也较大,并且随着支持的旋转、翻转方式的增多,消耗的资源也急剧增加。
技术实现思路
本专利技术实施例提供一种数字图像几何变换的处理方法及装置,用以解决现有技术中数字图像几何变换操作降低总线、内存访问效率的问题。本专利技术实施例提供的具体技术方案如下:一种数字图像几何变换的处理方法,包括:根据图像的几何变换方式对应的预设的宏块映射关系,确定宏块的读取顺序,并按照所述读取顺序依次从内存中读取相应的宏块,其中,所述宏块映射关系用于表示几何变换后的一个宏块的编号与该宏块在原始图像中的位置关系;每读取一个宏块,按照所述几何变化方式对应的预设的地址计算方法,计算当前读取的宏块内每一个数据对应的目标存放地址,按照获得的目标存放地址将宏块内的每一个数据依次存入数据缓存中;将所述数据缓存中的数据按顺序读出并发送至编码器。这样,实现了在H.264编码后的码流中的图像旋转、翻转,在不增加总线、内存访问次数的基础上,保障了总线、内存的访问效率,减少带宽消耗及相应的访问功耗,并且硬件实现资源也较小。较佳地,在根据图像的几何变换方式对应的预设的宏块映射关系,确定宏块的读取顺序之前:根据几何变换后宏块的编号、原始图像中水平方向的宏块个数以及原始图像中垂直方向的宏块个数,确定每一种几何变换方式对应的宏块映射关系;根据将要写入缓存的数据的编号、当前读取的一个宏块在水平方向上的数据个数以及当前读取的一个宏块在垂直方向上的数据个数,确定每一种几何变换方式对应的宏块内数据存入缓存的地址计算方法。较佳地,根据所述几何变换方式对应的预设的宏块映射关系,确定宏块的读取顺序,并按照所述读取顺序依次从内存中读取相应的宏块,具体包括:根据所述几何变换方式对应的预设的宏块映射关系,依次计算所述几何变换后每一个编号的宏块在原始图像宏块阵列中对应的坐标值;每计算一个坐标值,按照所计算的坐标值所对应的内存地址读取宏块数据;其中,所述坐标值用于表征宏块在原始图像宏块阵列中的位置。这样,使用实时计算而非查表的方式,获得宏块坐标,节省资源消耗。较佳地,根据所述几何变换方式对应的预设的宏块映射关系,依次计算所述几何变换后每一个编号的宏块在原始图像宏块阵列中对应的坐标值,具体包括:若所述几何变换为水平翻转,则宏块映射关系为以及y=W-1-(NUM%W);若所述几何变换为垂直翻转,则宏块映射关系为以及y=(NUM%W);若所述几何变换为90°旋转,则宏块映射关系为x=H-1-NUM%H以及若所述几何变换为180°旋转,则宏块映射关系为以及y=W-1-NUM%W;若所述几何变换为270°旋转,则宏块映射关系为x=NUM%H以及若所述几何变换为水平翻转以及90°旋转,则宏块映射关系为x=H-1-NUM%H以及若所述几何变换为垂直翻转以及90°旋转,则宏块映射关系为x=NUM%H以及其中,W表示所述原始图像中水平方向的宏块个数,H表示所述原始图像中垂直方向的宏块个数,NUM为几何变换后宏块的编号,x为编号NUM的宏块在原始图像宏块阵列中对应的行坐标值,y为编号NUM的宏块在原始图像宏块阵列中对应的列坐标值,符号表示对符号内的参量进行向0方向取整操作,符号%表示取余操作;较佳地,按照所述几何变化方式对应的预设的地址计算方法,计算当前读取的一个宏块内每一个数据对应的目标存放地址,具体包括:若所述几何变换方式为水平翻转,则地址计算方法为:若所述几何变换方式为垂直翻转,则地址计算方法为:若所述几何变换方式为90°旋转,则地址计算方法为:若所述几何变换方式为180°旋转,则地址计算方法为:若所述几何变换方式为270°旋转,则地址计算方法为:若所述几何变换方式为水平翻转以及90°旋转,则地址计算方法为:若所述几何变换方式为垂直翻转以及90°旋转,则地址计算方法为:其中,w表示所述当前读取的一个宏块在水平方向上的数据个数,h表示所述当前读取的一个宏块在垂直方向上的数据个数,num表示将要写入缓存的数据的编号,D表示宏块内编号num的数据应写入缓存的地址,符号表示对符号内的参量进行向0方向取整操作,符号%表示取余操作。这样,使用实时计算,而非查表的方式,获得数据应写至缓存的地址,很大程度上节省了资源消耗。较佳地,对几何变换后宏块的编号以及将要写入缓存的数据的编号皆执行以下取值方式:从0开始取值,按从左到右,从上到下的顺序,依次加1。一种数字图像几何变换的处理装置,包括:宏块读取单元,用于根据图像几何变换方式对应的预设的宏块映射关系,确定宏块的读取顺序,并按照所述读取顺序依次从内存中读取相应的宏块,其中,所述宏块映射关系用于表示几何变换后的一个宏块的编号与该宏块在原始图像中的位置关系;数据存入单元,用于每读取一个宏块,按照所述几何变化方式对应的预设的地址计算方法,计算当前读取的一个宏块内每一个数据对应的目标存放地址,按照本文档来自技高网
...
一种数字图像几何变换的处理方法及装置

【技术保护点】
一种数字图像几何变换的处理方法,其特征在于,包括:根据图像的几何变换方式对应的预设的宏块映射关系,确定宏块的读取顺序,并按照所述读取顺序依次从内存中读取相应的宏块,其中,所述宏块映射关系用于表示几何变换后的一个宏块的编号与该宏块在原始图像中的位置关系;每读取一个宏块,按照所述几何变化方式对应的预设的地址计算方法,计算当前读取的一个宏块内每一个数据对应的目标存放地址,按照获得的目标存放地址将宏块内的每一个数据依次存入数据缓存中;将所述数据缓存中的数据按顺序读出并发送至编码器。

【技术特征摘要】
1.一种数字图像几何变换的处理方法,其特征在于,包括:根据图像的几何变换方式对应的预设的宏块映射关系,确定宏块的读取顺序,并按照所述读取顺序依次从内存中读取相应的宏块,其中,所述宏块映射关系用于表示几何变换后的一个宏块的编号与该宏块在原始图像中的位置关系;每读取一个宏块,按照所述几何变化方式对应的预设的地址计算方法,计算当前读取的一个宏块内每一个数据对应的目标存放地址,按照获得的目标存放地址将宏块内的每一个数据依次存入数据缓存中;将所述数据缓存中的数据按顺序读出并发送至编码器。2.如权利要求1所述的方法,其特征在于,在根据图像的几何变换方式对应的预设的宏块映射关系,确定宏块的读取顺序之前:根据几何变换后宏块的编号、原始图像中水平方向的宏块个数以及原始图像中垂直方向的宏块个数,确定每一种几何变换方式对应的宏块映射关系;根据将要写入缓存的数据的编号、当前读取的一个宏块在水平方向上的数据个数以及当前读取的一个宏块在垂直方向上的数据个数,确定每一种几何变换方式对应的宏块内数据存入缓存的地址计算方法。3.如权利要求1或2所述的方法,其特征在于,根据所述几何变换方式对应的预设的宏块映射关系,确定宏块的读取顺序,并按照所述读取顺序依次从内存中读取相应的宏块,具体包括:根据所述几何变换方式对应的预设的宏块映射关系,依次计算所述几何变换后每一个编号的宏块在原始图像宏块阵列中对应的坐标值;每计算一个坐标值,按照所计算的坐标值所对应的内存地址读取宏块数据;其中,所述坐标值用于表征宏块在原始图像宏块阵列中的位置。4.如权利要求3所述的方法,其特征在于,根据所述几何变换方式对应的预设的宏块映射关系,依次计算所述几何变换后每一个编号的宏块在原始图像宏块阵列中对应的坐标值,具体包括:若所述几何变换为水平翻转,则宏块映射关系为以及y=W-1-(NUM%W);若所述几何变换为垂直翻转,则宏块映射关系为以及y=(NUM%W);若所述几何变换为90°旋转,则宏块映射关系为x=H-1-NUM%H以及若所述几何变换为180°旋转,则宏块映射关系为以及y=W-1-NUM%W;若所述几何变换为270°旋转,则宏块映射关系为x=NUM%H以及若所述几何变换为水平翻转以及90°旋转,则宏块映射关系为x=H-1-NUM%H以及若所述几何变换为垂直翻转以及90°旋转,则宏块映射关系为x=NUM%H以及其中,W表示所述原始图像中水平方向的宏块个数,H表示所述原始图像中垂直方向的宏块个数,NUM为几何变换后宏块的编号,x为编号NUM的宏块在原始图像宏块阵列中对应的行坐标值,y为编号NUM的宏块在原始图像宏块阵列中对应的列坐标值,符号表示对符号内的参量进行向0方向取整操作,符号%表示取余操作。5.如权利要求1所述的方法,其特征在于,按照所述几何变化方式对应的预设的地址计算方法,计算当前读取的一个宏块内每一个数据对应的目标存放地址,具体包括:若所述几何变换方式为水平翻转,则地址计算方法为:若所述几何变换方式为垂直翻转,则地址计算方法为:若所述几何变换方式为90°旋转,则地址计算方法为:若所述几何变换方式为180°旋转,则地址计算方法为:若所述几何变换方式为270°旋转,则地址计算方法为:若所述几何变换方式为水平翻转以及90°旋转,则地址计算方法为:若所述几何变换方式为垂直翻转以及90°旋转,则地址计算方法为:其中,w表示所述当前读取的一个宏块在水平方向上的数据个数,h表示所述当前读取的一个宏块在垂直方向上的数据个数,num表示将要写入缓存的数据的编号,D表示宏块内编号num的数据应写入缓存的地址,符号表示对符号内的参量进行向0方向取整操作,符号%表示取余操作。6.如权利要求4或5所述的方法,其特征在于,对几何变换后宏块的编号以及将要写入缓存的数据的编号皆执行以下取值方式:从0开始取值,按从左到右,从上到下的顺序,依次加1。7.一种数字图像几何变换的处理装置,其特征在于,包括:宏块读取单元,用于根据图像几何变换方...

【专利技术属性】
技术研发人员:洪文先陈琦杨银昌张兴明
申请(专利权)人:浙江大华技术股份有限公司
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1