本发明涉及图像传输与处理技术,特别涉及一种图像数据传输方法、装置及终端。
背景技术:
随着虚拟现实(virtualreality)技术的发展,对于高分辨率的图像数据传输提出了越来越高的要求。
现有技术的图像数据一般在摄像装置和数字图像处理系统间采用基于像素行的传输序列进行数据传输。
图1是现有的一种摄像装置输出的基于像素行传输的图像数据示意图;图2是现有的一种基于像素行的图像数据传输的时序图。结合图1和图2所示,在传输图像数据时,需设置同步信号vsync,且所述同步信号vsync具有第一有效沿和第二有效沿;所述摄像装置向所述数字图像处理系统传输每一帧图像数据时,需要在所述同步信号vsync的第一有效沿和第二有效沿之间的有效作用下进行传输,图1中的有效图像数据href中的每一个脉冲与图2所示的图像数据的一个像素行相对应,展开信号href(1h)为所述有效图像数据href中一个单一脉冲的展开;在对所述图像数据进行传输时,系统在每一个时钟信号pclk的有效沿作用下,将图像数据中的每一个字节(byte)依次进行传输。采用像素行的方式对所述图像数据进行传输,意味着数字图像处理系统需要额外增加缓存对图像进行保存和处理,这意味着需要在片内增加缓存,或者额外占用外部ddr宽带。无论哪种方式对系统的成本和功耗都有不利影响。
因此,现有技术中的图像数据传输方法面临着的使得数字图像处理系统的成本以及功耗较高的问题。
技术实现要素:
本发明解决的技术问题是如何降低现有的数字图像处理系统的成本以及 功耗。
为解决上述技术问题,本发明实施例提供一种图像数据传输方法,包括:按照预设的宏块尺寸,对摄像装置输出的图像数据进行划分,以得到多个宏块数据;按照第一次序,将所述多个宏块数据逐个传输至数字图像处理系统,以供所述数字图像处理系统基于所述宏块数据进行图像处理。
可选地,所述图像数据传输方法还包括:在传输所述多个宏块数据时,按照第二次序,传输所述宏块数据中的像素行或像素列。
可选地,所述第一次序包括:先沿行方向从左到右,再沿列方向从上到下;或者,先沿列方向从上到下,再沿行方向从左到右。
可选地,按照预设的宏块尺寸,对摄像装置输出的图像数据进行划分,以生成多个宏块数据包括:当所述图像数据的尺寸无法被所述宏块尺寸整除时,在划分得到的非完整的所述宏块数据中填充无效数据,以使其尺寸与所述宏块尺寸相同。
可选地,按照预设的宏块尺寸,对摄像装置输出的图像数据进行划分,以生成多个宏块数据包括:当所述图像数据的尺寸无法被所述宏块尺寸整除时,所述图像数据被所述宏块尺寸整除后余下的数据为最后一个宏块数据,调整所述最后一个宏块数据的宏块尺寸,以使得所述图像数据的尺寸减去调整后的宏块尺寸,能够被所述宏块尺寸整除。
为解决以上所述技术问题,本发明实施例还提供一种图像数据传输装置,包括:图像数据划分单元,适于按照预设的宏块尺寸,对摄像装置输出的图像数据进行划分,以得到多个宏块数据;宏块数据传输单元,适于按照第一次序,将所述多个宏块数据逐个传输至数字图像处理系统,以供所述数字图像处理系统基于所述宏块数据进行图像处理。
可选地,所述宏块数据传输单元在传输所述多个宏块数据时,按照第二次序,传输所述宏块数据中的像素行或像素列。
可选地,所述第一次序包括:先沿行方向从左到右,再沿列方向从上到下;或者,先沿列方向从上到下,再沿行方向从左到右
可选地,所述图像数据划分单元包括:数据填充单元,适于当所述图像数据的尺寸无法被所述宏块尺寸整除时,在划分得到的非完整的所述宏块数据中填充无效数据,以使其尺寸与所述宏块尺寸相同。
可选地,所述图像数据划分单元包括:尺寸调整单元,适于当所述图像数据的尺寸无法被所述宏块尺寸整除时,所述图像数据被所述宏块尺寸整除后余下的数据为最后一个宏块数据,调整所述最后一个宏块数据的宏块尺寸,以使得所述图像数据的尺寸减去调整后的宏块尺寸,能够被所述宏块尺寸整除。
为解决以上所述技术问题,本发明实施例还提供一种终端,所述终端包括:摄像装置,其输出的图像数据按照预设的宏块尺寸进行划分,以得到多个宏块数据;数字图像处理系统,按照第一次序从所述摄像装置逐个接收所述多个宏块数据,并基于所述宏块数据进行图像处理。
与现有技术相比,本发明实施例的技术方案具有以下有益效果:
本发明实施例提供一种图像数据传输方法,可以包括:按照预设的宏块尺寸,对摄像装置输出的图像数据进行划分,以得到多个宏块数据;按照第一次序,将所述多个宏块数据逐个传输至数字图像处理系统,以供所述数字图像处理系统基于所述宏块数据进行图像处理。本发明实施例采用基于宏块的方式传输所述图像数据,使得数字信号处理系统内部的处理模块可以直接基于所述宏块的方式对所述图像数据进行处理,而不是针对整个图像数据进行处理,可无需使用大容量的片内缓存器或者占用额外的外部存储器的带宽,因此,本发明实施例可以降低数字图像处理系统的成本以及功耗,并且降低对外部存储器的带宽需求。
进一步地,当遇到所述图像数据的尺寸无法被所述宏块尺寸整除的特殊场景时,本发明实施例可以在划分得到的非完整的所述宏块数据中填充无效数据,以使其尺寸与所述宏块尺寸相同;或者调整所述宏块尺寸,以使得所述图像数据的尺寸能被调整后的宏块尺寸整除,可以保证所述图像数据处理的可靠性。
附图说明
图1是现有的一种摄像装置输出的基于像素行传输的图像数据示意图;
图2是现有的一种基于像素行的图像数据传输的时序图;
图3是本发明实施例一种图像数据传输方法的流程图;
图4是本发明实施例另一种图像数据传输方法的流程图;
图5是本发明实施例中基于宏块尺寸进行划分的图像数据的示意图;
图6是本发明实施例基于宏块的图像数据传输的时序图;
图7是本发明实施例一种图像传输装置的示意性结构框图。
具体实施方式
如背景技术部分所述,现有技术中的基于像素行的图像数据传输方法面临着的使得数字图像处理系统的成本以及功耗较高的问题。
本申请发明人对现有技术进行了分析。在现有技术中,一般采用的基于像素行的图像数据传输方式,这种传输方式应用于图像数据分辨率不高的情况时,对数字图像处理系统的成本以及功耗影响很小。然而,在目前图像数据的分辨率越来越高的情况下,基于像素行的图像数据传输方式将带来很多问题。
以按照h.265编码标准进行编码的分辨率为4kb(列分辨率)×2kb(行分辨率)的视频数据来举例。摄像装置将所述视频数据传输至数字图像处理系统进行处理(例如,降噪,编码)时,h.265编码器要开始一次宏块的帧间运动预测和编码的必要条件是等待固定大小的行像素数据全部就绪后方可开始相关操作。而h.265编码标准可以允许的最大宏块尺寸为128byte×128byte,那么,若h.265编码器等待128行像素数据进行一次编码操作来计算,那么,数字图像处理系统为了实现以上视频数据的传输,至少需要采用以下两种存储方式中的一种。
方式一,在数字图像处理系统内部集成行分辨率×块列大小×单像素尺寸的片内缓存器,假定数字图像处理系统在内部使用yuv422格式,为了满足以上所述场景的需求,则需要集成4k*128*2=1mbyte的片内缓存器。
方式二,数字图像处理系统还可以将所述图像数据存储到外部存储器中, 如双倍速率同步动态随机存储器(doubledatarate,ddr)中,在图像数据处理时,所述数字图像处理系统将数据从ddr中读出,此时所述数字图像处理系统对ddr的读带宽占用大小可以计算为:帧分辨率×帧率×单像素尺寸=4k×2k×60fps×2=960mbps。
需要说明的是,在以上方式一与方式二的存储空间计算中,均以图像数据为yuv422格式为例,则所述单像素尺寸取2。但是,所述图像数据也可以取yuv420格式,则所述单像素尺寸取1.5。
在方式二中,所述帧分辨率可以取30fps或者60fps,由于随着图像数据分辨率的增加,此处,以帧分辨率为60fps为例进行计算。
方式1需要1mb的缓存器,所述缓存器可以为sram;然而,在片内增加1mb的缓存器对片上系统的成本和功耗具有较大的影响。
方式2需要ddr的读带宽达到960mbps,若假设ddr的有效带宽为理论带宽的60%,那么,实际需要的ddr的读带宽达到960mbps除以0.6,等于1600mbps;经计算,单位mhz下理论的ddr带宽等于8byte,则要求ddr的主频提升200mhz。
根据以上分析可知,无论采用在片内增加缓存器还是在片外增加存储器,从成本和功耗的角度,对数字图像处理系统的设计均可以带来较大的压力。
一般而言,数字图像处理多采用基于宏块的方式进行,例如:卷积,运动预测,对焦检测等等,因此,针对以上所述技术问题,本发明实施例提出一种图像数据传输方法,采用基于宏块的方式传输所述图像数据,使得数字信号处理系统内部的处理模块可以直接基于所述宏块的方式对所述图像数据进行处理,可无需使用大容量的片内缓存器或者占用额外的外部存储器的带宽,可以降低数字图像处理系统的成本以及功耗,并且降低对外部存储器的带宽需求。
为使本发明的上述目的、特征和有益效果能够更为明显易懂,下面结合附图对本发明的具体实施例做详细的说明。
图3是本发明实施例一种图像数据传输方法的流程图。
如图3所示,本发明实施例图像数据传输方法可以包括依次执行的步骤s101和步骤s201。
步骤s101,按照预设的宏块尺寸,对摄像装置输出的图像数据进行划分,以得到多个宏块数据。
步骤s201,按照第一次序,将所述多个宏块数据逐个传输至数字图像处理系统,以供所述数字图像处理系统基于所述宏块数据进行图像处理。
相比于现有技术的基于像素行的图像数据传输方法,本发明实施例在进行图像数据传输时,基于宏块尺寸对所述图像数据进行划分以得到宏块数据,所述宏块数据的数据量较小,无需占用较大的片上缓存,更无需占用数字图像处理系统外的存储器。若以按照h.265编码标准进行编码的分辨率为4kb(列分辨率)*2kb(行分辨率)的视频数据来举例,按照128byte×128byte的宏块尺寸对所述图像数据进行划分,那么,本发明实施例的图像数据传输仅需要的缓存器容量大小为:宏块尺寸×单像素尺寸=128×128×2=32kb;其中,所述单像素尺寸按照yuv422格式取2。
图4是本发明实施例另一种图像数据传输方法的流程图。
如图4所示,本实施例图像数据传输方法可以包括步骤s101和步骤s201。其中,步骤s101,按照预设的宏块尺寸,对摄像装置输出的图像数据进行划分,以得到多个宏块数据。步骤s201,按照第一次序,将所述多个宏块数据逐个传输至数字图像处理系统,以供所述数字图像处理系统基于所述宏块数据进行图像处理。
本实施例中的每一个宏块数据包含有多个像素行和多个像素列。本实施例还可以包括步骤s103,在传输所述多个宏块数据时,按照第二次序传输所述宏块数据中的像素行或像素列。
图5是本发明实施例中基于宏块尺寸进行划分的图像数据的示意图。
如图5所示,所述宏块尺寸可以包括宏块高度和宏块宽度两个维度。所述图像数据按照所述宏块高度和宏块宽度两个维度进行划分,以得到所述宏块数据。
在具体实施中,所述第一次序可以包括:先沿行方向从左到右,再沿列方向从上到下;或者,先沿列方向从上到下,再沿行方向从左到右。
具体地,在传输所述图像数据时,可以先传输图5中所示的宏块0数据,先传输宏块0数据的第一行像素行数据,最后传输最后一像素行数据;在每个像素行数据中,先传输第一个像素,最后传输最后一个像素。在传输完宏块0数据后,依次地传输宏块0数据的右侧宏块,即宏块1数据直至宏块k-1数据,而后,传输宏块0数据的下方宏块数据宏块k数据,直至将宏块mk-1数据传输完成。
图6是本发明实施例基于宏块的图像数据传输的时序图。
如图6所示,在传输图像数据时,需设置有效信号vvalid,且所述有效信号vvalid具有第一有效沿和第二有效沿;所述摄像装置向所述数字图像处理系统传输每一帧图像数据时,需要在所述有效信号vvalid的第一有效沿和第二有效沿之间的有效作用下进行传输,以区分不同帧之间的图像数据。宏块有效信号bvalid中的每一个脉冲对应于所述一帧图像数据中的一个宏块数据。在具体实施中,为了保证数据传输的有效性和可靠性,在对所述图像数据进行传输时,在每一个所述宏块有效信号bvalid的信号沿建立之后预留出一定的延迟,以得到数据有效信号dvalid;每一个时钟信号clk_data的有效沿作用下,将图像数据中的每一个字节(byte)依次进行传输。
继续参照图4,一般而言,本发明实施例中的所述步骤s101,按照预设的宏块尺寸,对摄像装置输出的图像数据进行划分,以生成多个宏块数据时,应尽量保证宏块数据的划分能够恰好覆盖完整的图像数据。但是,可能出现传输的宏块数据超过图像数据的有效边界,即所述图像数据的尺寸无法被所述宏块尺寸整除,例如:宏块尺寸为128byte×128byte,在对所述图像数据按照宏块尺寸进行划分时,出现128byte×100byte的宏块数据。在具体实施中,推荐的实现方式为所述图像数据的尺寸能够被所述宏块尺寸整除,如果不能整除,则按照以下方式进行处理。
本实施例中的步骤s101可以包括:当所述图像数据的尺寸无法被所述宏块尺寸整除时,填充无效数据以使其尺寸与所述宏块尺寸相同;即将不足于 128byte×20byte的宏块数据利用无效数据填充,而宏块尺寸不改变,再由数字信号处理系统根据预设的图像大小和宏块编号裁剪无效数据。
或者,本实施例中的步骤s101可以包括:当所述图像数据的尺寸无法被所述宏块尺寸整除时,所述图像数据被所述宏块尺寸整除后余下的数据为最后一个宏块数据,调整所述最后一个宏块数据的宏块尺寸,以使得所述图像数据的尺寸减去调整后的宏块尺寸,能够被所述宏块尺寸整除。即按实际的宏块数据128byte×100byte,缩小宏块大小,使得对应于此宏块数据的宏块尺寸改变为128byte×100byte,再由数字信号处理系统根据预设的图像大小和宏块尺寸主动适配不同的宏块。
图7是本发明实施例一种图像传输装置的示意性结构框图。
如图7所示,本发明实施例还公开一种图像数据传输装置100,所述图像数据传输装置可以包括图像数据划分单元10和宏块数据传输单元20。
其中,所述图像数据划分单元10适于按照预设的宏块尺寸,对摄像装置输出的图像数据进行划分,以得到多个宏块数据。
所述宏块数据传输单元20适于按照第一次序,将所述多个宏块数据逐个传输至数字图像处理系统,以供所述数字图像处理系统基于所述宏块数据进行图像处理。
在具体实施中,所述宏块数据传输单元20在传输所述多个宏块数据时,还可以按照第二次序传输所述宏块数据中的像素行或像素列。
其中,所述第一次序可以包括:先沿行方向从左到右,再沿列方向从上到下;或者,先沿列方向从上到下,再沿行方向从左到右。
在具体实施中,所述图像数据划分单元10可以包括数据填充单元101和/或尺寸调整单元102。
其中,所述数据填充单元101适于当所述图像数据的尺寸无法被所述宏块尺寸整除时,在划分得到的非完整的所述宏块数据中填充无效数据,以使其尺寸与所述宏块尺寸相同。
所述尺寸调整单元102适于当所述图像数据的尺寸无法被所述宏块尺寸 整除时,所述图像数据被所述宏块尺寸整除后余下的数据为最后一个宏块数据,调整所述最后一个宏块数据的宏块尺寸,以使得所述图像数据的尺寸减去调整后的宏块尺寸,能够被所述宏块尺寸整除。
所述图像数据传输装置100的更多信息请参考以上实施例中对所述图像数据传输方法的相关描述,此处不再赘述。
本发明实施例还公开一种终端,终端可以包括摄像装置和数字图像处理系统。
其中,所述摄像装置输出的图像数据可以按照预设的宏块尺寸进行划分,以得到多个宏块数据;所述数字图像处理系统可以按照第一次序从所述摄像装置逐个接收所述多个宏块数据,并基于所述宏块数据进行图像处理。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于计算机可读存储介质中,存储介质可以包括:rom、ram、磁盘或光盘等。
虽然本发明披露如上,但本发明并非限定于此。任何本领域技术人员,在不脱离本发明的精神和范围内,均可作各种更动与修改,因此本发明的保护范围应当以权利要求所限定的范围为准。