图像数据的处理方法、装置和系统、存储介质及处理器与流程

文档序号:11594934阅读:169来源:国知局

本发明涉及图像处理领域,具体而言,涉及一种图像数据的处理方法、装置和系统、存储介质及处理器。



背景技术:

随着科技的不断发展,计算机屏幕越来越多,屏幕图像的分频率和帧率也越来越高,两路图像同步传输和显示也在工程设计中越来越多的应用起来。这种基于多路、高分辨率和高帧频的图像处理,再加上无损压缩的需求,其对图像数据存储提出了更高要求,内存存储的带宽、成本和功耗也越来越高。如何降低内存存储带宽,降低图像处理的成本和功耗,是现在图像处理急需要解决的一个关键问题。

目前降低存储带宽的方法主要有两种,一种是将原图像分为两路及多路并行的小图像,一路小图像采用一个片上存储ram进行存储和控制,另一路小图像采用在ddr中存储;另一种是先对数据进行无损压缩,将压缩后的数据存储在ddr中,之后读取数据时,再进行解压缩处理。但是,两种方案都会增加大量处理资源,导致面积和成本增加。

针对上述的问题,目前尚未提出有效的解决方案。



技术实现要素:

本发明实施例提供了一种图像数据的处理方法、装置和系统、存储介质及处理器,以至少解决现有技术中图像存储方法为了降低ddr存储带宽,增加了大量处理资源,导致面积和成本增加的技术问题。

根据本发明实施例的一个方面,提供了一种图像数据的处理方法,包括:获取待处理的图像数据的多个图像单元,以及每个图像单元对应的标志信息,其中,标志信息用于标志是否对每个图像单元进行存储操作;根据每个图像单元对应的标志信息,将至少一个图像单元存储至双倍速同步动态随机存取内存中的预设存储区域;根据每个图像单元对应的标志信息,从预设存储区域中获取待处理的图像数据;输出待处理的图像数据。

进一步地,获取每个图像单元对应的标志信息,包括:确定多个图像单元中的第一个图像单元对应的标志信息为第一标志信息;通过如下方式获取多个图像单元中除第一个图像单元之外的每个图像单元对应的标志信息:按照逐像素将每个图像单元与已处理的图像单元进行比对,判断每个图像单元与已处理的图像单元是否相同;如果每个图像单元与已处理的图像单元不相同,则确定每个图像单元对应的标志信息为第一标志信息;如果每个图像单元与已处理的图像单元相同,则确定每个图像单元对应的标志信息为第二标志信息。

进一步地,已处理的图像单元包括:与每个图像单元横向相邻且获取到标志信息的图像单元,和/或,与每个图像单元纵向相邻且获取到标志信息的图像单元。

进一步地,根据每个图像单元对应的标志信息,将至少一个图像单元存储至双倍速同步动态随机存取内存中的预设存储区域,包括:如果第一图像单元对应的标志信息为第一标志信息,则将第一图像单元存储至预设存储区域;如果第二图像单元对应的标志信息为第二标志信息,则禁止将第二图像单元存储至预设存储区域。

进一步地,在获取每个图像单元对应的标志信息之后,上述方法还包括:将每个图像单元对应的标志信息存储至标志信息随机存储内存中。

进一步地,获取待处理的图像数据的多个图像单元,包括:获取待处理的图像数据;对待处理的图像数据进行拆分,得到多个图像单元。

进一步地,在获取待处理的图像数据之后,上述方法还包括:将待处理的图像数据存至第一乒乓缓存区中。

进一步地,根据每个图像单元对应的标志信息,从预设存储区域中获取待处理的图像数据,包括:从预设存储区域中读取多个图像单元中的第一个图像单元;通过如下方式读取多个图像单元中除第一个图像单元之外的每个图像单元:如果第一图像单元对应的标志信息为第一标志信息,则从预设存储区域中读取第一图像单元;如果第二图像单元对应的标志信息为第二标志信息,则对第二图像单元相邻的已处理的图像单元进行复制;将多个图像单元进行组合,得到待处理的图像数据。

进一步地,在根据每个图像单元对应的标志信息,从预设存储区域中获取待处理的图像数据之后,上述方法还包括:将待处理的图像数据存至第二乒乓缓存区中。

根据本发明实施例的另一方面,还提供了一种图像数据的处理装置,包括:第一获取单元,用于获取待处理的图像数据的多个图像单元,以及每个图像单元对应的标志信息,其中,标志信息用于标志是否对每个图像单元进行存储操作;第一存储单元,用于根据每个图像单元对应的标志信息,将至少一个图像单元存储至双倍速同步动态随机存取内存中的预设存储区域;第二获取单元,用于根据每个图像单元对应的标志信息,从预设存储区域中获取待处理的图像数据;输出单元,用于输出待处理的图像数据。

进一步地,第一获取单元包括:确定模块,用于确定多个图像单元中的第一个图像单元对应的标志信息为第一标志信息;第一获取模块,用于通过如下方式获取多个图像单元中除第一个图像单元之外的每个图像单元对应的标志信息:按照逐像素将每个图像单元与已处理的图像单元进行比对,判断每个图像单元与已处理的图像单元是否相同,如果每个图像单元与已处理的图像单元不相同,则确定每个图像单元对应的标志信息为第一标志信息,如果每个图像单元与已处理的图像单元相同,则确定每个图像单元对应的标志信息为第二标志信息。

进一步地,已处理的图像单元包括:与每个图像单元横向相邻且获取到标志信息的图像单元,和/或,与每个图像单元纵向相邻且获取到标志信息的图像单元。

进一步地,第一存储单元包括:第一存储模块,用于如果第一图像单元对应的标志信息为第一标志信息,则将第一图像单元存储至预设存储区域;第二存储模块,用于如果第二图像单元对应的标志信息为第二标志信息,则禁止将第二图像单元存储至预设存储区域。

进一步地,上述装置还包括:第二存储单元,用于将每个图像单元对应的标志信息存储至标志信息随机存储内存中。

进一步地,第一获取单元包括:第二获取模块,用于获取待处理的图像数据;拆分模块,用于对待处理的图像数据进行拆分,得到多个图像单元。

进一步地,上述装置还包括:第三存储单元,用于将待处理的图像数据存至第一乒乓缓存区中。

进一步地,第二获取单元包括:第一读取模块,用于从预设存储区域中读取多个图像单元中的第一个图像单元;第二读取模块,用于通过如下方式读取多个图像单元中除第一个图像单元之外的每个图像单元:如果第一图像单元对应的标志信息为第一标志信息,则从预设存储区域中读取第一图像单元;如果第二图像单元对应的标志信息为第二标志信息,则对第二图像单元相邻的已处理的图像单元进行复制;组合模块,用于将多个图像单元进行组合,得到待处理的图像数据。

进一步地,上述装置还包括:第四存储单元,用于将待处理的图像数据存至第二乒乓缓存区中。

根据本发明实施例的另一方面,还提供了一种图像数据的处理系统,包括:控制装置,用于获取待处理的图像数据的多个图像单元,以及每个图像单元对应的标志信息,其中,标志信息用于标志是否对每个图像单元进行存储操作;第一处理器,与控制装置连接,用于根据每个图像单元对应的标志信息,将至少一个图像单元存储至双倍速同步动态随机存取内存中的预设存储区域;第二处理器,与控制装置连接,用于根据每个图像单元对应的标志信息,从预设存储区域中获取待处理的图像数据;控制装置还用于输出待处理的图像数据。

进一步地,控制装置包括:第三处理器,用于确定多个图像单元中的第一个图像单元对应的标志信息为第一标志信息,并通过如下方式获取多个图像单元中除第一个图像单元之外的每个图像单元对应的标志信息:按照逐像素将每个图像单元与每个图像单元相邻的已处理的图像单元进行比对,判断每个图像单元与已处理的图像单元是否相同;如果每个图像单元与已处理的图像单元不相同,则确定每个图像单元对应的标志信息为第一标志信息;如果每个图像单元与已处理的图像单元相同,则确定每个图像单元对应的标志信息为第二标志信息。

进一步地,已处理的图像单元包括:与每个图像单元横向相邻且获取到标志信息的图像单元,和/或,与每个图像单元纵向相邻且获取到标志信息的图像单元。

进一步地,第一处理器还用于如果第一图像单元对应的标志信息为第一标志信息,则将第一图像单元存储至预设存储区域;如果第二图像单元对应的标志信息为第二标志信息,则禁止将第二图像单元存储至预设存储区域。

进一步地,控制装置包括:标志信息随机存储内存,用于存储每个图像单元对应的标志信息。

进一步地,控制装置包括:第四处理单元,用于获取待处理的图像数据,并对待处理的图像数据进行拆分,得到多个图像单元。

进一步地,控制装置还包括:第一乒乓缓存区,与控制装置连接,用于存储待处理的图像数据。

进一步地,第二处理器还用于从预设存储区域中读取多个图像单元中的第一个图像单元,并通过如下方式读取多个图像单元中除第一个图像单元之外的每个图像单元:如果第一图像单元对应的标志信息为第一标志信息,则从预设存储区域中读取第一图像单元;如果第二图像单元对应的标志信息为第二标志信息,则对第二图像单元相邻的已处理的图像单元进行复制;将多个图像单元进行组合,得到待处理的图像数据。

进一步地,控制装置包括:第二乒乓缓存区,与第三处理器连接,用于存储待处理的图像数据。

根据本发明实施例的另一方面,还提供了一种存储介质,存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行上述实施例中任意一项的图像数据的处理方法。

根据本发明实施例的另一方面,还提供了一种处理器,处理器用于运行程序,其中,程序运行时执行上述实施例中任意一项的图像数据的处理方法。

在本发明实施例中,获取待处理的图像数据的多个图像单元,以及每个图像单元对应的标志信息,根据每个图像单元对应的标志信息,将至少一个图像单元存储至双倍速同步动态随机存取内存中的预设存储区域,根据每个图像单元对应的标志信息,从预设存储区域中获取待处理的图像数据,输出待处理的图像数据。容易注意到的是,由于根据标志信息,将待处理的图像数据的多个图像单元中部分图像单元进行存储,而不是将待处理的图像数据进行存储或者将待处理的图像数据进行压缩后再存储,并根据标志信息读取到待处理的图像数据,而且,在对待处理的图像数据进行存储之前只需要获取到待处理的图像数据的多个图像单元,从而实现只需要增加少量的处理逻辑,即可降低了ddr的存储带宽的目的,解决了现有技术中图像存储方法为了降低ddr存储带宽,增加了大量处理资源,导致面积和成本增加的技术问题。因此,通过本发明上述实施例提供的方案,可以达到降低ddr的存储带宽,降低面积和成本的技术效果。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是根据本发明实施例的一种图像数据的处理方法的流程图;

图2a是根据本发明实施例的一种可选的图像单元横向比对的示意图;

图2b是根据本发明实施例的一种可选的图像单元纵向比对的示意图;

图2c是根据本发明实施例的一种可选的图像单元横纵比对的示意图;

图3是根据本发明实施例的一种可选的图像数据拆分方式的示意图;

图4是根据本发明实施例的一种可选的图像数据的处理方法的流程图;

图5是根据本发明实施例的一种图像数据的处理装置的示意图;

图6是根据本发明实施例的一种图像数据的处理系统的示意图;

图7是根据本发明实施例的一种可选的图像数据的处理系统的示意图;以及

图8是根据本发明实施例的一种可选的控制装置的示意图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

实施例1

根据本发明实施例,提供了一种图像数据的处理方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

图1是根据本发明实施例的一种图像数据的处理方法的流程图,如图1所示,该方法包括如下步骤:

步骤s102,获取待处理的图像数据的多个图像单元,以及每个图像单元对应的标志信息,其中,标志信息用于标志是否对每个图像单元进行存储操作。

具体地,上述的待处理的图像数据可以是显示在计算机屏幕中的屏幕图像中的一帧,但不仅限于此;上述的图像单元可以是按照多种方式,对待处理的图像数据进行拆分后的图像,例如,可以按照以图像的一行或者图像一行的1/2、1/4、1/8等为单位,对图像数据进行拆分;上述的标志信息可以是用于标志是否对图像单元进行存储操作的信息,例如,如果标志信息是一位flag标志,则可以用flag=0标志存储对应的图像单元,用flag=1标志不存储对应的图像单元。

步骤s104,根据每个图像单元对应的标志信息,将至少一个图像单元存储至双倍速同步动态随机存取内存中的预设存储区域。

具体地,上述的至少一个图像单元可以是对应的标志信息为标志需要进行存储操作的单元;上述的预设存储区域可以是双倍速同步动态随机存取内存ddr(是doubledatarate的简称)中用于存储待处理的图像数据的区域。

步骤s106,根据每个图像单元对应的标志信息,从预设存储区域中获取待处理的图像数据。

步骤s108,输出待处理的图像数据。

在一种可选的方案中,在采集到的待处理的图像数据之后,可以对待处理的图像数据进行拆分,得到多个图像单元,并根据每个图像单元的图像特征,判断每个图像单元是否需要存储,从而得到每个图像单元的标志信息,然后根据每个图像单元,将需要存储的图像单元存储至内存或ddr中。从内存或ddr中读取待处理的屏幕图像时,可以首先获取到每个图像单元的标志信息,并根据每个图像单元的标志信息,从内存和ddr中获取到每个图像单元,对多个图像单元进行组合,得到待处理的图像数据,将读取出的待处理的图像数据输出至处理模块,从而实现对待处理的图像数据进行处理的目的。

根据本发明上述实施例,获取待处理的图像数据的多个图像单元,以及每个图像单元对应的标志信息,根据每个图像单元对应的标志信息,将至少一个图像单元存储至双倍速同步动态随机存取内存中的预设存储区域,根据每个图像单元对应的标志信息,从预设存储区域中获取待处理的图像数据,输出待处理的图像数据。容易注意到的是,由于根据标志信息,将待处理的图像数据的多个图像单元中部分图像单元进行存储,而不是将待处理的图像数据进行存储或者将待处理的图像数据进行压缩后再存储,并根据标志信息读取到待处理的图像数据,而且,在对待处理的图像数据进行存储之前只需要获取到待处理的图像数据的多个图像单元,从而实现只需要增加少量的处理逻辑,即可降低了ddr的存储带宽的目的,解决了现有技术中图像存储方法为了降低ddr存储带宽,增加了大量处理资源,导致面积和成本增加的技术问题。因此,通过本发明上述实施例提供的方案,可以达到降低ddr的存储带宽,降低面积和成本的技术效果。

可选地,在本发明上述实施例中,步骤s102,获取每个图像单元对应的标志信息,包括:

步骤s1022,确定多个图像单元中的第一个图像单元对应的标志信息为第一标志信息。

具体地,上述的第一标志信息可以是用于标志对图像单元进行存储操作的信息,例如,对于一位flag标志,flag=0;对于两位flag标志,flag=00。

需要说明的是,待处理的图像数据中的第一个图像单元一定会存入内存或ddr中,可以确定第一个单元对应的标志信息为第一标志信息。

步骤s1024,通过如下方式获取多个图像单元中除第一个图像单元之外的每个图像单元对应的标志信息:

步骤s10242,按照逐像素将每个图像单元与已处理的图像单元进行比对,判断每个图像单元与已处理的图像单元是否相同。

可选地,在本发明上述实施例中,已处理的图像单元包括:与每个图像单元横向相邻且获取到标志信息的图像单元,和/或,与每个图像单元纵向相邻且获取到标志信息的图像单元。

具体地,上述的已处理的图像单元可以是与当前需要存储的图像单元相邻的已经获取到标志信息的图像单元,也可以是与当前需要存储的图像单元距离最近的,且标志信息为第一标志信息的图像单元,即使与当前需要存储的图像单元距离最近的,且存储至内存或ddr中的图像单元。

需要说明的是,可以将已处理的图像单元作为参考图像单元,比对方式不同,参考图像单元的选取方式不同,具体地,比对方式可以为横向比对(如图2a所示)、纵向比对(如图2b所示)、横纵比对(如图2c所示)。而且,当比对方式为横向比对或者纵向比对时,标志信息可以是一位flag,即1bitflag;当比对方式为横纵比对时,标志信息可以是两位flag,即2bitflag,其中,第一位flag表示与横向上的参考图像单元比较后得到的结果,第二位flag表示与纵向上的参考单元比较后得到的结果。

步骤s10244,如果每个图像单元与已处理的图像单元不相同,则确定每个图像单元对应的标志信息为第一标志信息。

步骤s10246,如果每个图像单元与已处理的图像单元相同,则确定每个图像单元对应的标志信息为第二标志信息。

具体地,上述的第二标志信息可以是用于标志不对图像单元进行存储操作的信息,例如,对于一位flag标志,flag=1;对于两位flag标志,flag=10或者flag=01,其中,flag=10表示与横向上的已处理的单元相同,与纵向上的已处理的单元不同;flag=01表示与横向上的已处理的单元不同,与纵向上的已处理的单元相同。

需要说明的是,当比对方式为横纵比对时,可以确定横纵比对中的优先级,例如,设定横向比对优先级高,如果图像单元与横向的已处理的图像单元相同,则无需继续与纵向的已处理的图像单元进行比较。

在第一种可选的方案中,当比对方式为横向比对时,如图2a所示,可以确定待处理的图像数据的第一行中第一个图像单元的flag=0;将第一行中第二个图像单元与第一行中第一个图像单元进行比较,如果相同,则确定第一行中第二个图像单元flag=1;如果不同,则确定第一行中第二个图像单元flag=0;将第一行中第三个图像单元与第一行中第二个图像单元进行比较,如果相同,则确定第一行中第三个图像单元flag=1;如果不同,则确定第一行中第三个图像单元flag=0;依次类推,在确定每一行中第一个图像单元的标志信息时,可以将每一行中第一个图像单元与上一行中最后一个图像单元进行比较。

在第二种可选的方案中,当比对方式为纵向比对时,如图2b所示,可以确定待处理的图像数据的第一列中第一个图像单元的flag=0;将第一列中第二个图像单元与第一列中第二个图像单元进行比较,如果相同,则确定第一列中第二个图像单元flag=1;如果不同,则确定第一列中第二个图像单元flag=0;将第一列中第三个图像单元与第一列中第二个图像单元进行比较,如果相同,则确定第一列中第三个图像单元flag=1;如果不同,则确定第一列中第三个图像单元flag=0;依次类推,在确定每一列中第一个图像单元的标志信息时,可以将每一列中第一个图像单元与上一列中最后一个图像单元进行比较。

在第三种可选的方案中,当比对方式为横纵比对,且横向比对优先级高时,如图2c所示,可以确定待处理的图像数据的第一行中第一个图像单元的flag=00;将第一行中第二个图像单元与第一行中第一个图像单元比较,如果相同,则确定第一行中第二个图像单元flag=10;如果不同,则确定第一行中第二个图像单元flag=00;依次类推,直至第一行所有图像单元比对完毕。将第二行中第一个图像单元与第一行中最后一个图像单元比较,如果相同,则无需将第二行中第一个图像单元与第一行中第一个图像单元进行比对,即无需进行纵向比对,直接确定第二行中第一个图像单元flag=10;如果不同,则进一步将第二行中第一个图像单元与第一行中第一个图像单元进行比对,即需要进行纵向比对,如果不同,则确定第二行中第一个图像单元flag=00;如果相同,则确定第二行中第一个图像单元flag=01;依次类推,直至所有图像单元比对完毕,从而得到待处理的图像单元的每个图像单元对应的标志信息flag。

在第四种可选的方案中,当比对方式为横纵比对,且纵向比对优先级高时,如图2c所示,可以确定待处理的图像数据的第一行中第一个图像单元的flag=00;将第二行中第一个图像单元与第一行中第一个图像单元比较,如果相同,则确定第二行中第一个图像单元flag=01;如果不同,则确定第二行中第一个图像单元flag=00;依次类推,直至第一列中所有的图像单元比对完毕。将第一行中第二个图像单元与第一列中最后一个图像单元比较,如果相同,则无需将第一行中第二个图像单元与第一行中第一个图像单元进行比对,即无需进行横向比对,直接确定第二行中第一个图像单元flag=01;如果不同,则进一步将第一行中第二个图像单元与第一行中第一个图像单元进行比对,即需要进行横向比对,如果不同,则确定第二行中第一个图像单元flag=00;如果相同,则确定第二行中第一个图像单元flag=10;依次类推,直至所有图像单元比对完毕,从而得到待处理的图像单元的每个图像单元对应的标志信息flag。

可选地,在本发明上述实施例中,步骤s104,根据每个图像单元对应的标志信息,将至少一个图像单元存储至双倍速同步动态随机存取内存中的预设存储区域,包括:

步骤s1042,如果第一图像单元对应的标志信息为第一标志信息,则将第一图像单元存储至预设存储区域。

步骤s1044,如果第二图像单元对应的标志信息为第二标志信息,则禁止将第二图像单元存储至预设存储区域。

在一种可选的方案中,当比对方式为横向比对或者纵向比对时,如图2a或图2b所示,在获取到每个图像单元对应的标志信息之后,即得到每个图像单元的flag之后,可以根据每个图像单元的flag确定是否对该图像单元进行存储操作,如果一个图像单元的flag=0,即第一图像单元对应的标志信息为第一标志信息,则确定需要存储该图像单元,则启动写操作,将该图像单元存储至内存或ddr中;如果一个图像单元的flag=1,即第二图像单元对应的标志信息为第二标志信息,则确定不需要存储该图像单元,则将不启动写操作。

在另一种可选的方案中,当比对方式为横纵比对时,如图2c所示,在获取到每个图像单元对应的标志信息之后,即得到每个图像单元的flag之后,可以根据每个图像单元的flag确定是否对该图像单元进行存储操作,如果一个图像单元的flag=00,即第一图像单元对应的标志信息为第一标志信息,则确定需要存储该图像单元,则启动写操作,将该图像单元存储在内存或ddr中;如果一个图像单元的flag=10或者flag=01,即第二图像单元对应的标志信息为第二标志信息,则确定不需要存储该图像单元,则不启动写操作。

可选地,在本发明上述实施例中,在步骤s102,获取每个图像单元对应的标志信息之后,该方法还包括:

步骤s110,将每个图像单元对应的标志信息存储至标志信息随机存储内存中。

在一种可选的方案中,为了保证正常从内存或ddr中读取存储的图像单元,从而进一步获取到待处理的图像数据,在获取到每个图像单元的flag之后,可以将所有图像单元的flag存储在标志信息随机存储内存flag_ram中。

可选地,在本发明上述实施例中,步骤s102,获取待处理的图像数据的多个图像单元,包括:

步骤s1026,获取待处理的图像数据。

步骤s1028,对待处理的图像数据进行拆分,得到多个图像单元。

在一种可选的方案中,在获取到待处理的图像数据之后,可以根据图像数据的分辨率选择不同的拆分方式,并按照相应的拆分方式对待处理的图像数据进行拆分,从而得到多个图像单元,例如,如图3所示,可以按照以图像的一行为单位,对图像数据进行拆分,得到图像单元;也可以按照以图像一行的1/2、1/4、1/8等为单位,对图像数据进行拆分,得到图像单元。

可选地,在本发明上述实施例中,在步骤s1026,获取待处理的图像数据之后,该方法还包括:

步骤s1020,将待处理的图像数据存至第一乒乓缓存区中。

在一种可选的方案中,为了不影响图像存储在内存或ddr的效率,可以采用乒乓buffer的方式来进行数据缓存,将获取到的待处理的图像数据存储在乒乓buffer中,并将从乒乓buffer中读出的图像数据进行写操作,存储至内存或ddr中。

可选地,在本发明上述实施例中,步骤s106,根据每个图像单元对应的标志信息,从预设存储区域中获取待处理的图像数据,包括:

步骤s1062,从预设存储区域中读取多个图像单元中的第一个图像单元。

在一种可选的方案中,当从内存或ddr中读取待处理的图像数据时,可以首先从flag_ram中读取对应的flag标志,由于第一个图像单元一定会存入内存或ddr中,则可以首先从内存或ddr中读取第一个图像单元。

步骤s1064,通过如下方式读取多个图像单元中除第一个图像单元之外的每个图像单元:

步骤s10642,如果第一图像单元对应的标志信息为第一标志信息,则从预设存储区域中读取第一图像单元。

步骤s10644,如果第二图像单元对应的标志信息为第二标志信息,则对第二图像单元相邻的已处理的图像单元进行复制。

在第一种可选的方案中,当比对方式为横向比对时,如图2a所示,在读取出第一行中第一个图像单元之后,可以从flag_ram中读取第一行中第二个图像单元的flag标志,如果flag=0,则启动读操作,从内存或ddr中读取出存储的第一行中第二个图像单元;如果flag=1,则不启动读操作,直接将第一行中第一个图像单元复制输出,作为第一行中第二个图像单元;从flag_ram中读取第一行中第三个图像单元的flag标志,如果flag=0,则启动读操作,从内存或ddr中读取出存储的第一行中第三个图像单元;如果flag=1,则不启动读操作,直接将第一行中第二个图像单元复制输出,作为第一行中第三个图像单元;依次类推,在从flag_ram中读每一行中第一个图像单元的flag标志之后,如果flag=1,则不启动读操作,直接将上一行中最后一个图像单元复制输出,作为每一行中第一个图像单元。

在第二种可选的方案中,当比对方式为纵向比对时,如图2b所示,在读取出第一列中第一个图像单元之后,可以从flag_ram中读取第一列中第二个图像单元的flag标志,如果flag=0,则启动读操作,从内存或ddr中读取出存储的第一列中第二个图像单元;如果flag=1,则不启动读操作,直接将第一列中第一个图像单元复制输出,作为第一列中第二个图像单元;从flag_ram中读取第一列中第三个图像单元的flag标志,如果flag=0,则启动读操作,从内存或ddr中读取出存储的第一列中第三个图像单元;如果flag=1,则不启动读操作,直接将第一列中第二个图像单元复制输出,作为第一列中第三个图像单元;依次类推,在从flag_ram中读每一列中第一个图像单元的flag标志之后,如果flag=1,则不启动读操作,直接将上一列中最后一个图像单元复制输出,作为每一列中第一个图像单元。

在第三种可选的方案中,当比对方式为横纵比对,且横向比对优先级高时,如图2c所示,在读取出第一行中第一个图像单元之后,可以从flag_ram中读取第一行中第二个图像单元的flag标志,如果flag=00,则启动读操作,从内存或ddr中读取出存储的第一行中第二个图像单元;如果flag=10,则不启动读操作,直接将第一行中第一个图像单元复制输出,作为第一行中第二个图像单元;依次类推,直至读取出第一行中所有图像单元。从flag_ram中读取第二行中第一个图像单元的flag标志,如果flag=00,则启动读操作,从内存或ddr中读取出存储的第二行中第一个图像单元;如果flag=10,则不启动读操作,直接将第一行中最后一个图像单元复制输出,作为第二行中第一个图像单元;如果flag=01,则不启动读操作,直接将第一行中第一个图像单元复制输出,作为第二行中第一个图像单元;依次类推,直至读取出所有的图像单元。

在第四种可选的方案中,当比对方式为横纵比对,且纵向比对优先级高时,如图2c所示,在读取出第一列中第一个图像单元之后,可以从flag_ram中读取第一列中第二个图像单元的flag标志,如果flag=00,则启动读操作,从内存或ddr中读取出存储的第一列中第二个图像单元;如果flag=01,则不启动读操作,直接将第一列中第一个图像单元复制输出,作为第一列中第二个图像单元;依次类推,直至读取出第一列中所有图像单元。从flag_ram中读取第二列中第一个图像单元的flag标志,如果flag=00,则启动读操作,从内存或ddr中读取出存储的第二列中第一个图像单元;如果flag=01,则不启动读操作,直接将第一列中最后一个图像单元复制输出,作为第二列中第一个图像单元;如果flag=10,则不启动读操作,直接将第一列中第一个图像单元复制输出,作为第二列中第一个图像单元;依次类推,直至读取出所有的图像单元。

步骤s1066,将多个图像单元进行组合,得到待处理的图像数据。

在一种可选的方案中,可以将读取出的所有的图像单元按照拆分方式进行组合,从而得到获取到的待处理的图像数据。

可选地,在本发明上述实施例中,在步骤s106,根据每个图像单元对应的标志信息,从预设存储区域中获取待处理的图像数据之后,该方法还包括:

步骤s112,将待处理的图像数据存至第二乒乓缓存区中。

在一种可选的方案中,为了不影响图像存储在内存或ddr的效率,可以采用乒乓buffer的方式来进行数据缓存,将组合后的待处理的图像数据存储在乒乓buffer中,并通过乒乓buffer将待处理的图像数据输出至后续的处理模块中,从而实现对待处理的图像数据进行处理的目的。

图4是根据本发明实施例的一种可选的图像数据的处理方法的流程图,下面结合图4对本发明一种优选的实施例进行详细说明,如图4所示,该方法可以包括如下步骤:

步骤s41,将采集的视频及图像信号放置到buffer内进行缓存。

可选地,为了不影响图像存储至内存或ddr的效率,采用乒乓buffer的方式来进行数据缓存。

步骤s42,将buffer内存储的数据读取,并写入到内存或ddr中。

可选地,数据从buffer中读取时,根据图像特征,选取一种较好的控制算法来对数据进行处理,该控制算法的选择取决于三个因素,具体如下:第一个因素是输入图像源的具体分辨率,不同的分辨率可以选择不同的控制算法;第二个因素是控制算法的基本单元,控制单元可以选择为图像的一行,也可以选择为图像一行的1/2、1/4、1/8……,不同的选择所需要消耗的flag_ram的资源不一样,对降低内存或ddr的带宽大小也不一样,并且flag_ram的资源占用越大,降低内存或ddr的带宽越明显;第三个因素是基本单元的比较方式,可以单独选择基本单元与相邻的基本单元进行横向比较,也可以单独选择基本单元与相邻的基本单元进行纵向比较,也可以选择基本单元与相邻的基本单元同时进行横、纵向比较,当横向或者只有纵向比较时,flag_ram的位宽选择为1bit,当横向+纵向比较时,flag_ram的位宽选择为2bit,ram资源增大一倍,但是其对降低内存或ddr的带宽也会有近一倍的收益。

例如,针对1080p的图像,选取一行1920个yuv或者rgb的数据为基本控制单元。一帧图像的第一行一定会写入内存或ddr中,并且产生flag标志为0,将标志存储至flag_ram中。在第一行写操作过程中,读取乒乓buffer内的第二行数据,与第一行数据进行比较,如果第二行数据和第一行数据对应位置数据比对完全相同,则产生flag标志为1,将标志存储至flag_ram中,并且控制第二行的数据不进行写操作;如果第二行数据和第一行数据对应位置数据比对不完全相同,则产生flag标志为0,将标志存储至flag_ram中,并且控制第二行的数据继续进行写操作,将第二行数据写入内存或ddr中;依次类推推其他行的数据处理,直到完整的一帧操作完成。

步骤s43,从内存或ddr中读取数据。

可选地,从内存或ddr中读取数据时,首先从flag_ram中读出对应帧的对应行的flag标志。每帧的第一行flag标志一定为0,需要从ddr中读取第一行的数据;在启动第二行的读操作之前,读取flag_ram中对应帧的第二行的flag标志,如果该标志为0,继续启动第二行的读操作;如果该标志为1,则不读取第二行的数据,直接将第一行的数据复制一份输出即可;依次类推其他行的数据处理,直到完整的一帧操作完成。

步骤s44,读出的数据通过buffer控制输出到其他处理模块。

通过上述步骤,可以通过分析图像特点,提取隐性信息,并通过隐性信息来控制ddr的存储和读取,以降低ddr的带宽,并且由于提取图像的隐性特征,只需要增加较少的处理逻辑,与现有的方案相比,降低了面积和成本,并且没有图像存储及处理的延时。

实施例2

根据本发明实施例,提供了一种图像数据的处理装置的实施例。

图5是根据本发明实施例的一种图像数据的处理装置的示意图,如图5所示,该装置包括:

第一获取单元51,用于获取待处理的图像数据的多个图像单元,以及每个图像单元对应的标志信息,其中,标志信息用于标志是否对每个图像单元进行存储操作。

具体地,上述的待处理的图像数据可以是显示在计算机屏幕中的屏幕图像中的一帧,但不仅限于此;上述的图像单元可以是按照多种方式,对待处理的图像数据进行拆分后的图像,例如,可以按照以图像的一行或者图像一行的1/2、1/4、1/8等为单位,对图像数据进行拆分;上述的标志信息可以是用于标志是否对图像单元进行存储操作的信息,例如,如果标志信息是一位flag标志,则可以用flag=0标志存储对应的图像单元,用flag=1标志不存储对应的图像单元。

第一存储单元53,用于根据每个图像单元对应的标志信息,将至少一个图像单元存储至双倍速同步动态随机存取内存中的预设存储区域。

具体地,上述的至少一个图像单元可以是对应的标志信息为标志需要进行存储操作的单元;上述的预设存储区域可以是双倍速同步动态随机存取内存ddr(是doubledatarate的简称)中用于存储待处理的图像数据的区域。

第二获取单元55,用于根据每个图像单元对应的标志信息,从预设存储区域中获取待处理的图像数据。

输出单元57,用于输出待处理的图像数据。

在一种可选的方案中,在采集到的待处理的图像数据之后,可以对待处理的图像数据进行拆分,得到多个图像单元,并根据每个图像单元的图像特征,判断每个图像单元是否需要存储,从而得到每个图像单元的标志信息,然后根据每个图像单元,将需要存储的图像单元存储至内存或ddr中。从内存或ddr中读取待处理的屏幕图像时,可以首先获取到每个图像单元的标志信息,并根据每个图像单元的标志信息,从内存和ddr中获取到每个图像单元,对多个图像单元进行组合,得到待处理的图像数据,将读取出的待处理的图像数据输出至处理模块,从而实现对待处理的图像数据进行处理的目的。

根据本发明上述实施例,获取待处理的图像数据的多个图像单元,以及每个图像单元对应的标志信息,根据每个图像单元对应的标志信息,将至少一个图像单元存储至双倍速同步动态随机存取内存中的预设存储区域,根据每个图像单元对应的标志信息,从预设存储区域中获取待处理的图像数据,输出待处理的图像数据。容易注意到的是,由于根据标志信息,将待处理的图像数据的多个图像单元中部分图像单元进行存储,而不是将待处理的图像数据进行存储或者将待处理的图像数据进行压缩后再存储,并根据标志信息读取到待处理的图像数据,而且,在对待处理的图像数据进行存储之前只需要获取到待处理的图像数据的多个图像单元,从而实现只需要增加少量的处理逻辑,即可降低了ddr的存储带宽的目的,解决了现有技术中图像存储方法为了降低ddr存储带宽,增加了大量处理资源,导致面积和成本增加的技术问题。因此,通过本发明上述实施例提供的方案,可以达到降低ddr的存储带宽,降低面积和成本的技术效果。

可选地,在本发明上述实施例中,第一获取单元51包括:

确定模块,用于确定多个图像单元中的第一个图像单元对应的标志信息为第一标志信息。

第一获取模块,用于通过如下方式获取多个图像单元中除第一个图像单元之外的每个图像单元对应的标志信息:按照逐像素将每个图像单元与已处理的图像单元进行比对,判断每个图像单元与已处理的图像单元是否相同,如果每个图像单元与已处理的图像单元不相同,则确定每个图像单元对应的标志信息为第一标志信息,如果每个图像单元与已处理的图像单元相同,则确定每个图像单元对应的标志信息为第二标志信息。

可选地,在本发明上述实施例中,已处理的图像单元包括:与每个图像单元横向相邻且获取到标志信息的图像单元,和/或,与每个图像单元纵向相邻且获取到标志信息的图像单元。

可选地,在本发明上述实施例中,第一存储单元53包括:

第一存储模块,用于如果第一图像单元对应的标志信息为第一标志信息,则将第一图像单元存储至预设存储区域。

第二存储模块,用于如果第二图像单元对应的标志信息为第二标志信息,则禁止将第二图像单元存储至预设存储区域。

可选地,在本发明上述实施例中,该装置还包括:第二存储单元,用于将每个图像单元对应的标志信息存储至标志信息随机存储内存中。

可选地,在本发明上述实施例中,第一获取单元51包括:

第二获取模块,用于获取待处理的图像数据。

拆分模块,用于对待处理的图像数据进行拆分,得到多个图像单元。

可选地,在本发明上述实施例中,该装置还包括:第三存储单元,用于将待处理的图像数据存至第一乒乓缓存区中。

可选地,在本发明上述实施例中,第二获取单元55包括:

第一读取模块,用于从预设存储区域中读取多个图像单元中的第一个图像单元。

第二读取模块,用于通过如下方式读取多个图像单元中除第一个图像单元之外的每个图像单元:如果第一图像单元对应的标志信息为第一标志信息,则从预设存储区域中读取第一图像单元,如果第二图像单元对应的标志信息为第二标志信息,则对第二图像单元相邻的已处理的图像单元进行复制。

组合模块,用于将多个图像单元进行组合,得到待处理的图像数据。

可选地,在本发明上述实施例中,该装置还包括:第四存储单元,用于将待处理的图像数据存至第二乒乓缓存区中。

需要说明的是,本实施例中的优选实施方式可以参见实施例1中的相关描述,此处不再赘述。

实施例3

根据本发明实施例,提供了一种图像数据的处理系统的实施例。

图6是根据本发明实施例的一种图像数据的处理系统的示意图,如图6所示,该系统包括:

控制装置61,用于获取待处理的图像数据的多个图像单元,以及每个图像单元对应的标志信息,其中,标志信息用于标志是否对每个图像单元进行存储操作。

具体地,上述的待处理的图像数据可以是显示在计算机屏幕中的屏幕图像中的一帧,但不仅限于此;上述的图像单元可以是按照多种方式,对待处理的图像数据进行拆分后的图像,例如,可以按照以图像的一行或者图像一行的1/2、1/4、1/8等为单位,对图像数据进行拆分;上述的标志信息可以是用于标志是否对图像单元进行存储操作的信息,例如,如果标志信息是一位flag标志,则可以用flag=0标志存储对应的图像单元,用flag=1标志不存储对应的图像单元。

第一处理器63,与控制装置连接,用于根据每个图像单元对应的标志信息,将至少一个图像单元存储至双倍速同步动态随机存取内存中的预设存储区域。

具体地,上述的至少一个图像单元可以是对应的标志信息为标志需要进行存储操作的单元;上述的预设存储区域可以是双倍速同步动态随机存取内存ddr(是doubledatarate的简称)中用于存储待处理的图像数据的区域。

第二处理器65,与控制装置连接,用于根据每个图像单元对应的标志信息,从预设存储区域中获取待处理的图像数据。

控制装置还用于输出待处理的图像数据。

在一种可选的方案中,在采集到的待处理的图像数据之后,可以对待处理的图像数据进行拆分,得到多个图像单元,并根据每个图像单元的图像特征,判断每个图像单元是否需要存储,从而得到每个图像单元的标志信息,然后根据每个图像单元,将需要存储的图像单元存储至内存或ddr中。从内存或ddr中读取待处理的屏幕图像时,可以首先获取到每个图像单元的标志信息,并根据每个图像单元的标志信息,从内存和ddr中获取到每个图像单元,对多个图像单元进行组合,得到待处理的图像数据,将读取出的待处理的图像数据输出至处理模块,从而实现对待处理的图像数据进行处理的目的。

根据本发明上述实施例,获取待处理的图像数据的多个图像单元,以及每个图像单元对应的标志信息,根据每个图像单元对应的标志信息,将至少一个图像单元存储至双倍速同步动态随机存取内存中的预设存储区域,根据每个图像单元对应的标志信息,从预设存储区域中获取待处理的图像数据,输出待处理的图像数据。容易注意到的是,由于根据标志信息,将待处理的图像数据的多个图像单元中部分图像单元进行存储,而不是将待处理的图像数据进行存储或者将待处理的图像数据进行压缩后再存储,并根据标志信息读取到待处理的图像数据,而且,在对待处理的图像数据进行存储之前只需要获取到待处理的图像数据的多个图像单元,从而实现只需要增加少量的处理逻辑,即可降低了ddr的存储带宽的目的,解决了现有技术中图像存储方法为了降低ddr存储带宽,增加了大量处理资源,导致面积和成本增加的技术问题。因此,通过本发明上述实施例提供的方案,可以达到降低ddr的存储带宽,降低面积和成本的技术效果。

可选地,在本发明上述实施例中,控制装置包括:

第三处理器,用于确定多个图像单元中的第一个图像单元对应的标志信息为第一标志信息,并通过如下方式获取多个图像单元中除第一个图像单元之外的每个图像单元对应的标志信息:按照逐像素将每个图像单元与已处理的图像单元进行比对,判断每个图像单元与已处理的图像单元是否相同,如果每个图像单元与已处理的图像单元不相同,则确定每个图像单元对应的标志信息为第一标志信息,如果每个图像单元与已处理的图像单元相同,则确定每个图像单元对应的标志信息为第二标志信息。

可选地,在本发明上述实施例中,已处理的图像单元包括:与每个图像单元横向相邻且获取到标志信息的图像单元,和/或,与每个图像单元纵向相邻且获取到标志信息的图像单元。

可选地,在本发明上述实施例中,第一处理器还用于如果第一图像单元对应的标志信息为第一标志信息,则将第一图像单元存储至预设存储区域;如果第二图像单元对应的标志信息为第二标志信息,则禁止将第二图像单元存储至预设存储区域。

可选地,在本发明上述实施例中,控制装置包括:

标志信息随机存储内存,用于存储每个图像单元对应的标志信息。

可选地,控制装置包括:第四处理单元,用于获取待处理的图像数据,并对待处理的图像数据进行拆分,得到多个图像单元。

可选地,控制装置还包括:第一乒乓缓存区,与第四处理单元连接,用于将待处理的图像数据存至第一乒乓缓存区中。

可选地,在本发明上述实施例中,第二处理器还用于从预设存储区域中读取多个图像单元中的第一个图像单元,并通过如下方式读取多个图像单元中除第一个图像单元之外的每个图像单元:如果第一图像单元对应的标志信息为第一标志信息,则从预设存储区域中读取第一图像单元,如果第二图像单元对应的标志信息为第二标志信息,则对第二图像单元相邻的已处理的图像单元进行复制;将多个图像单元进行组合,得到待处理的图像数据。

可选地,在本发明上述实施例中,控制装置包括:第二乒乓缓存区,与所述第二处理器连接,用于存储待处理的图像数据。

需要说明的是,本实施例中的优选实施方式可以参见实施例1中的相关描述,此处不再赘述。

图7是根据本发明实施例的一种可选的图像数据的处理系统的示意图,图8是根据本发明实施例的一种可选的控制装置的示意图,下面结合图7和图8对本发明一种优选的实施例进行详细说明。如图7所示,该系统可以包括:ddr、写操作控制模块(即上述的第一处理器)、读操作控制模块(即上述的第一处理器)、标志信息控制模块(即上述的控制装置)和处理模块,其中,ddr是必备组件,主要完成数据的存储,由于图像数据的数据量非常大,采用ddr的存储方案更为有效;写操作控制模块是必备组件,主要完成图像数据的写ddr控制功能;读操作控制模块是必备组件,主要完成图像数据的读ddr控制功能;标志信息控制模块是关键组件,主要完成图像数据的特征提取,并且将提取的存储起来用于对ddr的读写控制;处理模块是辅助组件,主要完成图像数据读取后的其他处理。如图8所示,标志信息控制模块可以包括两个乒乓buffer、数据比较器、flag_ram和控制器,其中,第一个乒乓buffer用于对采集的视频及图像信号来进行数据缓存,从而影响图像存储至内存或ddr的效率;第二个乒乓buffer用于对读出的数据进行数据缓存;数据比较器用于将两个图像单元进行比较,得到图像单元的flag标志;flag_ram用于存储每个图像单元的flag标志;控制器用于对第一个乒乓buffer和flag_ram进行控制。

实施例4

根据本发明实施例,提供了一种存储介质的实施例,存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行上述实施例1中的图像数据的处理方法。

实施例5

根据本发明实施例,提供了一种处理器的实施例。处理器用于运行程序,其中,程序运行时执行上述实施例1中的图像数据的处理方法。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1