CN107194880A - 一种图像处理装置及方法 - Google Patents
一种图像处理装置及方法 Download PDFInfo
- Publication number
- CN107194880A CN107194880A CN201710497295.1A CN201710497295A CN107194880A CN 107194880 A CN107194880 A CN 107194880A CN 201710497295 A CN201710497295 A CN 201710497295A CN 107194880 A CN107194880 A CN 107194880A
- Authority
- CN
- China
- Prior art keywords
- data row
- row
- source data
- image
- target image
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000012545 processing Methods 0.000 title claims abstract description 44
- 238000000034 method Methods 0.000 title abstract description 9
- 230000015654 memory Effects 0.000 claims abstract description 10
- 238000003672 processing method Methods 0.000 claims description 11
- 230000005540 biological transmission Effects 0.000 claims description 8
- 238000004321 preservation Methods 0.000 claims description 4
- 230000003111 delayed effect Effects 0.000 claims description 2
- 230000000694 effects Effects 0.000 abstract description 2
- 230000008569 process Effects 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 16
- 230000006870 function Effects 0.000 description 8
- 241001269238 Data Species 0.000 description 4
- 239000000284 extract Substances 0.000 description 4
- 239000000203 mixture Substances 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 230000003321 amplification Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000000151 deposition Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/60—Memory management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4038—Image mosaicing, e.g. composing plane images from plane sub-images
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Image Processing (AREA)
Abstract
本发明涉及一种图像处理装置,包括源数据行缓存模块、目标图像数据行计算模块和目标图像拼接模块,源数据行缓存模块计算并读取输入图像中用于计算目标图像数据行的源数据行并缓存;目标图像数据行计算模块包括n个显示引擎,n个显示引擎同时根据源数据行缓存模块缓存的源数据行分别计算目标图像中对应行的数据;目标图像拼接模块根据目标图像数据行计算模块输出的数据行进行图像拼接,并输出目标图像;其中,所述n为大于等于1的正整数。通过多核共享缓存,不同的目标输出行由不同的显示引擎运算产生,按行输出目标图像数据,达到了无边界处理问题及降低带宽消耗的效果。
Description
技术领域
本发明涉及图像处理领域,具体涉及一种图像处理装置及方法。
背景技术
随着计算机技术的发展,要实现HDMI超高清输出,需要显示引擎具有更高的频率。更高频率意味着选择更高的工艺,意味着寄存器间的组合逻辑更少,路径更短;更高的工艺意味着流片成本更高,风险更大。有必要寻找一种现有工艺条件下实现超高清视频输出的方法。
现有技术中进行“图像分块多核心拼接技术”多采用图像分块处理,例如,水平分割或垂直分割,其必然带来边界处理问题。如图14所示,现有分块技术,使用多取源的方式解决边界问题,实现目标图片无缝拼接,这种技术需要对边界进行处理。对于现有技术中的软件实现方案,除了存在需要边界处理的问题之外,同时还需要DDR缓存中间运算结果,势必带来了带宽的增加。另外,对于采用垂直分割的现有技术方案,无论采用软件实现,还是硬件实现,都需要DDR缓存中间运算结果,也增加了带宽消耗。对于超高清视频,带宽是非常紧张的。
发明内容
本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种图像处理装置,克服边界处理以及带宽消耗大的缺陷。
本发明解决其技术问题所采用的技术方案是:提供一种图像处理装置,包括源数据行缓存模块、目标图像数据行计算模块和目标图像拼接模块,源数据行缓存模块计算并读取输入图像中用于计算目标图像数据行的源数据行并缓存;目标图像数据行计算模块包括n个显示引擎,所述n个显示引擎同时根据所述源数据行缓存模块缓存的源数据行分别计算目标图像中对应行的数据;目标图像拼接模块根据所述目标图像数据行计算模块输出的数据行进行图像拼接,输出所述目标图像;其中,所述n为大于等于1的正整数。
所述源数据行缓存模块计算并读取输入图像中用于计算目标图像数据行的源数据行并缓存由硬件电路完成。
所述源数据行缓存模块包括源数据行号计算器、源数据行提取器和源数据行缓存,源数据行号计算器根据所述n个显示引擎输出的目标图像的行号计算所述n个显示引擎所需的源数据行的行号;源数据行提取器根据所述源数据行的行号在所述输入图像中提取数据行并缓存;源数据行缓存用于缓存所述源数据行提取器提取的输入图像中数据行。
所述源数据行号计算器根据所述n个显示引擎输出的目标图像的行号计算所述n个显示引擎所需的源数据行号包括:所述n个显示引擎输出目标图像的行号乘缩放因子加0后取整的对应所述输入图像中的行号,并根据滤波阶数m在所述输入图像中连续向后再取m-1行。
所述缩放因子为所述输入图像的行数除以所述目标图像的行数。
所述源数据行提取器缓存的源数据行包括:所述源数据行号计算器计算所需的源数据行的并集。
所述目标图像数据行计算模块中的所述n个显示引擎同时根据所述源数据行缓存模块缓存的源数据行分别计算目标图像中对应行的数据由硬件电路完成。
所述n个显示引擎中的第j个显示引擎输出所述目标图像的第j,n+j,2n+j,3n+j...行数据,直至所述目标图像数据行计算模块输出所述目标图像最后一行数据,j为小于等于所述n的正整数。
所述目标图像拼接模块包括第一缓存组和第二缓存组,所述第一缓存组和第二缓存组分别包括所述n个缓存,所述第一缓存组和第二缓存组对所述目标图像数据行计算模块输出的数据行执行乒乓存储传输。
所述第一缓存组和所述第二缓存组包括第一SRAM组和第二SRAM组,所述第一SRAM组和第二SRAM组分别包括所述n个SRAM。
本发明还提供一种图像处理方法,包括以下步骤:计算并读取输入图像中用于计算目标图像数据行的源数据行并保存;n个处理器同时根据所述源数据行分别计算目标图像中对应行的数据;根据所述n个处理器输出的数据行进行图像拼接,输出目标图像;其中,所述n为大于等于1的正整数。
所述读取并保存输入图像中用于计算的源数据行包括:根据所述n个处理器输出的目标图像的行号计算所述n个处理器所需的源数据行的行号,根据所述源数据行的行号在所述输入图像中提取数据行并保存。
所述根据所述n个处理器输出的目标图像的行号计算所述n个处理器所需的源数据行号包括:所述n个处理器输出目标图像的行号乘缩放因子加0后取整的对应所述输入图像中的行号,并根据滤波阶数m在所述输入图像中连续向后再取m-1行。
所述缩放因子为所述输入图像的行数除以所述目标图像的行数。
所述根据所述源数据行号在所述输入图像中提取的数据行包括:所述n个处理器完成计算所需的源数据行的并集。
所述n个处理器中的第j个显示引擎输出所述目标图像的第j,n+j,2n+j,3n+j...行数据,直至输出所述目标图像最后一行数据,j为小于等于所述n的正整数。
根据所述n个处理器输出的数据行进行图像拼接包括:接收所述n个处理器计算的所述目标图像的n个数据行并保存至第一缓存组,所述第一缓存组按行输出所述n个数据行,同时第二缓存组接收所述目标图像的下一组n个数据行并保存;所述第一缓存组和所述第二缓存组对所述n个处理器计算的所述目标图像的n个数据行执行乒乓存储传输。
本发明的有益效果在于,通过提供一种实时在线的图像分块处理装置,多核共享缓存(buffer),不同的目标图像输出行由不同的显示引擎运算产生,按行输出目标图像数据,无需多核处理中间结果的DDR缓存,实现图像在线分块和在线拼接成,达到无边界处理问题及降低带宽消耗的效果。本发明的图像处理方法,通过多核共享缓存(buffer),不同的目标图像输出行由不同的核运算产生,按行输出目标图像数据,使得图像拼接无边界处理问题。
附图说明
下面将结合附图及实施例对本发明作进一步说明,附图中:
图1是本发明一实施例的图像处理装置100框图;
图2是本发明一实施例的源数据行缓存模块200电路框图;
图3是本发明一实施例的图像处理装置300框图;
图4是本发明一实施例的双核图像处理装置400框图;
图5是本发明一实施例的双核图像处理装置的源数据行缓存模块的源数据行提取分配流程示意图;
图6是本发明一实施例的双核图像处理装置在缩放因子为1时的源数据行缓存模块的源数据行提取分配流程示意图;
图7是本发明一实施例的双核图像处理装置在缩放因子小于1时的源数据行缓存模块的源数据行提取分配流程示意图;
图8是本发明一实施例的双核图像处理装置在缩放因子等于4时的源数据行缓存模块的源数据行提取分配流程示意图;
图9是本发明一实施例的双核图像处理装置的目标图像拼接模块的工作流程示意图;
图10是本发明一实施例的双核图像处理装置的目标图像拼接模块的乒乓buffer工作流程示意图;
图11是本发明一实施例的三核图像处理装置500框图;
图12是本发明一实施例的四核图像处理装置600框图;
图13是本发明一实施例的图像处理方法700的流程框图;
图14是现有技术的图像处理装置框图;
具体实施方式
现结合附图,对本发明的较佳实施例作详细说明。
如图1所示,是本发明一实施例的图像处理装置100框图。本实施例的图像拼接装置100包括源数据行缓存模块101、目标图像数据行计算模块103和目标图像拼接模块105。源数据行缓存模块101计算并读取输入图像中用于计算目标图像数据行的源数据行并缓存,在具体实施方式中,可缓存在SRAM组成的行缓存器(line buffer)中;目标图像数据行计算模块103可包括n个显示引擎(DE,Display Engine),所述n个显示引擎同时根据所述源数据行缓存模块缓存的源数据行分别计算目标图像中对应行的数据,例如,n可取2,则目标图像数据行计算模块包括2个显示引擎DE0和DE1,DE0可输出目标图像的奇数行数据,DE1可输出目标图像的偶数行数据;本发明通过变更,可兼容n核分块在线拼接,并不局限于双核心。本发明中的显示引擎可以是现有技术的任何图像计算模块,可由处理器(例如CPU、DSP等)运行软件代码来完成,也可由硬件电路(例如FPGA、IC等)完成。目标图像拼接模块105根据目标图像数据行计算模块103输出的数据行进行图像拼接,输出目标图像;其中,n可为大于等于1的正整数。通过源数据行缓存共享,多显示引擎同时计算,按行输出,不同的目标图像数据行由不同的显示引擎运算产生,其中DE0至DEn共享缓存,DE0至DEn通过读取共享缓存中的共享源数据进行运算,产生目标图像中的数据,在线按行拼接,节省带宽,兼容软件单核配置流程,无需软件配置修改消耗,无水平边界处理,节省边界带宽消耗。本发明的技术方案不局限于超高清视频,对于高清、标清等多种视频都适用。
在一实施方式中,源数据行缓存模块计算并读取输入图像中用于计算目标图像数据行的源数据行并缓存可由硬件电路完成,例如,可采用FPGA来实现该模块的功能,也可设计集成电路来完成该模块的功能。采用硬件电路完成源数据行缓存模块的功能,可以实现在线数据传输与存储,节省带宽,提升图像处理装置的运行速度。
图2是本发明一实施例的源数据行缓存模块200电路框图,包括源数据行号计算器201、源数据行提取器203和源数据行缓存205,源数据行号计算器201可根据n个显示引擎输出的目标图像的行号计算n个显示引擎所需的源数据行的行号,源数据行提取器203可根据源数据行的行号在输入图像中提取数据行,并将所述数据行缓存在源数据行缓存205中。在其他实施方式中,也可以采用处理器(例如CPU、GPU等)运行软件代码的方式实现源数据行缓存模块的功能。
在一实施方式中,源数据行号计算器201根据n个显示引擎输出的目标图像的行号计算n个显示引擎所需的源数据行的行号的具体计算方法可为:n个显示引擎输出目标图像的行号乘缩放因子加0后取整的对应输入图像中的行号,并根据滤波阶数m在输入图像中连续向后再取m-1行,即在n个显示引擎输出目标图像的行号乘缩放因子加0后取整对应输入图像中的行号后连续再去m-1行,滤波阶数m可以是有限长单位冲激响应滤波器(FIR)滤波器的滤波阶数。在具体实施方式中,缩放因子可为输入图像的行数除以目标图像的行数。
在一实施方式中,源数据行提取器203缓存的源数据行可为源数据行号计算器计算所需的源数据行的并集。可节省源数据行缓存模块的缓存。在具体实施方式中,源数据行提取器203可包括SRAM,即使用SRAM作为源数据行缓存。
在一实施方式中,目标图像数据行计算模块中的所述n个显示引擎同时根据所述源数据行缓存模块缓存的源数据行分别计算目标图像中对应行的数据可由硬件电路完成,例如可采用FPGA来实现该模块的功能,也可设计集成电路来完成该模块的功能。采用硬件电路完成目标图像数据行计算模块的功能,可以实现在线数据传输与存储,节省带宽,提升图像处理装置的运行速度。
在具体实施方式中,n个显示引擎中的第j个显示引擎可输出目标图像的第j,n+j,2n+j,3n+j...行数据,直至所述目标图像数据行计算模块输出所述目标图像最后一行数据,j为小于等于所述n的正整数。在具体实施方式中,n个显示引擎首先计算输出目标图像的第0至n-1行数据,第二次输出目标图像的第n至2n-1行数据,第三次输出目标图像的第2n至3n-1行数据,直至所述目标图像数据行计算模块输出所述目标图像最后一行数据。在其他实施方式中,也可以采用处理器(例如CPU、GPU等)运行软件代码的方式实现目标图像数据行计算模块的功能。
在一实施方式中,目标图像拼接模块可包括第一缓存组和第二缓存组,第一缓存组和第二缓存组分别包括n个缓存,在具体实施方式中,每个缓存的大小可为输出图像每个数据行的宽度,第一缓存组和第二缓存组对目标图像数据行计算模块输出的数据行执行乒乓存储传输。在具体实施方式中,乒乓存储传输是指:第一缓存组首先接收目标图像数据行计算模块计算的目标图像的第0至n-1行数据,在第一缓存组输出目标图像的第0至n-1行数据时,第二缓存组同时接收目标图像数据行计算模块计算的目标图像的第n至2n-1行数据,当第一缓存组输出目标图像的第0至n-1行数据后,第二缓存组输出目标图像数据行计算模块计算的目标图像的第n至2n-1行数据,同时第一缓存组接收目标图像的第2n至3n-1行数据,第一缓存组和第二缓存组这样交替对目标图像数据行计算模块计算的目标图像的数据行进行缓存和输出,直至输出目标图像最后一行数据。
在一实施方式中,第一缓存组和第二缓存组可包括第一SRAM组和第二SRAM组,第一SRAM组和第二SRAM组对目标图像数据行计算模块输出的数据行执行乒乓存储传输。在具体实施方式中,每个SRAM的大小可为输出图像每个数据行的宽度。
图3是本发明一实施例的图像处理装置300框图。输入图像可保存在DDR中,源数据行缓存模块301首先根据目标图像的输出行计算输出图像中的源数据行的行号,再根据所述行号从输入图像中提取用于计算目标图像数据行的源数据行并缓存,源数据行可缓存在行缓存(line buffer)中,在具体实施方式中,line buffer可由SRAM组成;显示图像数据行计算模块303中的n个显示引擎DE0至DEn-1同时根据行缓存内缓存的源数据行分别计算目标图像中对应行的数据;目标图像拼接模块305根据显示引擎DE0至DEn-1输出的数据行进行图像拼接,并输出目标图像。多显示引擎buffer共享、不同的目标图像数据行由不同的显示引擎运算产生并按行输出,产生了右边目标尺寸图中的数据。其中,目标图中DE0行的数据由DE0运算产生,目标图中DEn-1行的数据由DEn-1运算产生。
在具体实施方式中,n可取2。下面以n取2,即双核处理架构为例进行说明。如图4所示,是本发明一实施例的双核图像处理装置400框图,包括源数据行缓存模块401、目标图像数据行计算模块403和目标图像拼接模块405,目标图像数据行计算模块403包括两个显示引擎DE0和DE1,DE0输出奇数行,DE1输出偶数行。
以DE0/DE1采用2tap垂直缩放为例说明,即显示引擎的滤波阶数m为2,如图5所示,源数据行缓存模块401中的line_buffer数据共享单元用于缓存从输入图像中读取用于计算目标图像的源数据行。源数据行缓存模块401首先要计算用于计算目标图像的源数据的行号,在具体实施方式中,可采用如下公式:
int(i*scal+0);
int(i*scal+1);
i为DE0输出的行号,scal为缩放因子,scal可以输入图像垂直行数除以目标图像垂直行数。其中,DE0需要的源数据行号可为int(i*scal+0)和int(i*scal+1),DE1需要的源数据行号可为int((i+1)*scal+0)和int((i+1)*scal+1)。
比如,对于3tap垂直缩放的情况,即显示引擎的滤波阶数m为3,可采用如下计算公式计算源数据行的行号,
int(i*scal+0);
int(i*scal+1);
int(i*scal+2);
对于4tap垂直缩放的情况,即显示引擎的滤波阶数m为4,可采用如下计算公式计算源数据行的行号,
int(i*scal+0);
int(i*scal+1);
int(i*scal+2);
int(i*scal+3);
当scal等于1,即目标图像尺寸与输入图像尺寸相同(1:1)时,如图6所示,DE0在1:1输出时需要i+0和i+1行输入图像源数据,DE1则需要i+1和i+2行源数据,其中,i为DE0输出的目标图像的行号,那么换算成输入图像源数据行为i+0,i+1,i+2,使用共享line_buffer的方式,i+1行数据不需要重复读取,直接在line_buffer中使用,节省了line buffer的开销。
当scal小于1且大于0时,即目标图像尺寸比输入图像尺寸大(放大)时,如图7所示,DE0/DE1在放大输出时,在计算输出图像数据行对应的在输入图像中所需的数据行时,可能会重复利用输入图像数据行,DE0输出时需要i+0和i+1行输入图像源数据,DE1也需要i+0和i+1行源数据。例如,采用2tap垂直缩放,当scal=1/4时,首先根据int(i*scal+0)和int(i*scal+1)计算输出图像第1行对应输入图像的数据行,计算结果是需要输入图像中第1和第2行;接下来根据int(i*scal+0)和int(i*scal+1)计算输出图像第2行对应输入图像的数据行,计算结果仍然是输入图像的第1和第2行数据。DE1在某些放大倍数下,甚至取数与DE0完全一致,也有不一致的情况,此时与scal等于1类似。
当scal大于1时,目标图像尺寸比输入图像尺寸小(缩小)时,如图8所示,例如采用2tap垂直缩放,scal等于4,首先根据int(i*scal+0)和int(i*scal+1)计算输出图像第4行对应输入图像的数据行,如图8所示,计算结果是需要输入图像中第16和第17行;接下来根据int(i*scal+0)和int(i*scal+1)计算输出图像第5行对应输入图像的数据行,计算结果是输入图像的第20和第21行数据,此时DE0和DE1没有共享数据。也就是说,在缩小情况下,计算输出图像每一行的数据,都不会出现显示引擎重复使用输入图像数据行的情况。
当DE0和DE1完成运算之后,如图9所示,拼接单元可包括buffer0,buffer1,buffer2,buffer3,第一缓存组可包括buffer0,buffer1,第二缓存组可包括buffer2,buffer3。拼接单元把DE0和DE1输出的数据行重排,使DE0和DE1按目标图像行宽的2倍的块数据输入变成按行扫描数据输出,其中,buffer0,buffer1,buffer2,buffer3为目标图像行宽度的buffer,通过buffer拼接,实现了目标图像行宽度的输出。在具体实施方式中,拼接单元的缓存(buffer)的总数可以目标图像数据行计算模块中的显示引擎(DE)的个数的2倍。
在具体实施方式中,可使用乒乓buffer,如图10所示。DE0和DE1计算完成之后,分别将数据行结果line0和line1写入拼接单元的第一缓存组的buffer0和buffer1中,接着将buffer0和buffer1中的line0和line1输出,同时第二缓存组的buffer2和buffer3中写入了DE0和DE1计算的line2和line3,待line0和line1输出后,line2和line3输出,同时buffer0和buffer1中写入了DE0和DE1计算的line4和line5,直至计算完目标图像的所有数据行,即完成目标图像的输出。在线分块拼接,无需DDR缓存,节省了带宽。
本发明通过变更兼容n核分块在线拼接,并不局限于双核。以三核为例,,如图11所示,即图像处理装置包含三个显示引擎DE0、DE1和DE2:其中DE0输出0,3,6…行,DE1输出1,4,7…行,DE2输出2,5,8…行。以四核为例,如图12所示,即图像处理装置包含三个显示引擎DE0、DE1和DE2:其中DE0输出0,4,8…行,DE1输出1,5,9…行,DE2输出2,6,10…行,DE3输出3,7,11…行。以n核为例:其中DE0输出0,n,2n…行,DE1输出1,n+1,2n+1…行,DE2输出2,n+2,2n+2…行,DE3输出3,n+3,2n+3…行,DE4输出4,n+4,2n+4…行,DE5输出5,n+5,2n+5…行,DEj输出j,n+j,2n+j…行(j<=n)。
图13是本发明一实施例的图像处理方法700流程框图。步骤701首先计算并读取输入图像中用于计算目标图像数据行的源数据行并保存,在具体实施方式中,可缓存在SRAM组成的行缓存器(line buffer)中;步骤703中n个处理器同时根据源数据行分别计算目标图像中对应行的数据,n可为大于等于1的正整数;步骤705根据所述n个处理器输出的数据行进行图像拼接;步骤707输出目标图像。在具体实施方式中,所述n个处理器可以是CPU、GPU或者显示引擎等处理器。通过源数据行缓存共享,多处理器同时计算,按行输出,不同的目标图像数据行由不同的处理器运算产生,产生目标图像中的数据,兼容软件单核配置流程,无需软件配置修改消耗,无水平边界处理。
在一实施方式中,读取输入图像中用于计算的源数据行并保存可包括:根据n个处理器输出的目标图像的行号计算n个处理器所需的源数据行的行号,根据源数据行的行号在输入图像中提取数据行并保存。在具体实施方式中,缩放因子可为所述输入图像的行数除以所述目标图像的行数。
在一实施方式中,根据n个处理器输出的目标图像的行号计算n个处理器所需的源数据行的行号可包括:n个处理器输出目标图像的行号乘缩放因子加0后取整的对应输入图像中的行号,并根据滤波阶数m在所述输入图像中继续向后再去m-1行,即在n个显示引擎输出目标图像的行号乘缩放因子加0后取整对应输入图像中的行号后连续再取m-1行,滤波阶数m可以是有限长单位冲激响应滤波器(FIR)滤波器的滤波阶数。在具体实施方式中,在一实施方式中,缩放因子可为输入图像的行数除以目标图像的行数。
在一实施方式中,根据源数据行号在所述输入图像中提取的数据行可包括:n个处理器完成计算所需的源数据行的并集。可节省缓存源数据行的缓存。
在一实施方式中,n个处理器中的第j个处理器可输出目标图像的第j,n+j,2n+j,3n+j...行数据,直至输出所述目标图像最后一行数据,j为小于等于所述n的正整数。
在一实施方式中,n个处理器输出的数据行进行图像拼接可包括:接收n个处理器计算的目标图像的n个数据行并保存至第一缓存组,第一缓存组按行输出所述n个数据行,同时第二缓存组接收目标图像的下一组n个数据行并保存;第一缓存组和第二缓存组对n个处理器计算的目标图像的n个数据行执行乒乓存储传输。直至计算完目标图像的所有数据行,即完成目标图像的输出。在线分块拼接,无需DDR缓存,节省了带宽。
应当理解的是,以上实施例仅用以说明本发明的技术方案,而非对其限制,对本领域技术人员来说,可以对上述实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而所有这些修改和替换,都应属于本发明所附权利要求的保护范围。
Claims (17)
1.一种图像处理装置,其特征在于,包括:
源数据行缓存模块,用于计算并读取输入图像中用于计算目标图像数据行的源数据行并缓存;
目标图像数据行计算模块,包括n个显示引擎,所述n个显示引擎同时根据所述源数据行缓存模块缓存的源数据行分别计算目标图像中对应行的数据;
目标图像拼接模块,用于根据所述目标图像数据行计算模块输出的数据行进行图像拼接,输出所述目标图像;
其中,所述n为大于等于1的正整数。
2.如权利要求1所述的图像处理装置,其特征在于,所述源数据行缓存模块计算并读取输入图像中用于计算目标图像数据行的源数据行并缓存由硬件电路完成。
3.如权利要求2所述的图像处理装置,其特征在于,所述源数据行缓存模块包括:
源数据行号计算器,用于根据所述n个显示引擎输出的目标图像的行号计算所述n个显示引擎所需的源数据行的行号;
源数据行提取器,用于根据所述源数据行的行号在所述输入图像中提取数据行;
源数据行缓存,用于缓存所述源数据行提取器提取的输入图像中数据行。
4.如权利要求3所述的图像处理装置,其特征在于,所述源数据行号计算器根据所述n个显示引擎输出的目标图像的行号计算所述n个显示引擎所需的源数据行的行号包括:
所述n个显示引擎输出目标图像的行号乘缩放因子加0后取整的对应所述输入图像中的行号,并根据滤波阶数m在所述输入图像中连续向后再取m-1行。
5.如权利要求4所述的图像处理装置,其特征在于,所述缩放因子为所述输入图像的行数除以所述目标图像的行数。
6.如权利要求3所述的图像处理装置,其特征在于,所述源数据行提取器提取的数据行包括:所述源数据行号计算器计算所需的源数据行的并集。
7.如权利要求1至6任一项所述的图像处理装置,其特征在于,所述目标图像数据行计算模块中的所述n个显示引擎同时根据所述源数据行缓存模块缓存的源数据行分别计算目标图像中对应行的数据由硬件电路完成。
8.如权利要求7所述的图像处理装置,其特征在于,所述n个显示引擎中的第j个显示引擎输出所述目标图像的第j,n+j,2n+j,3n+j...行数据,直至所述目标图像数据行计算模块输出所述目标图像最后一行数据,j为小于等于所述n的正整数。
9.如权利要求1所述的图像处理装置,其特征在于,所述目标图像拼接模块包括第一缓存组和第二缓存组:
所述第一缓存组和第二缓存组分别包括所述n个缓存,所述第一缓存组和第二缓存组对所述目标图像数据行计算模块输出的数据行执行乒乓存储传输。
10.如权利要求9所述的图像处理装置,其特征在于,所述第一缓存组和所述第二缓存组包括第一SRAM组和第二SRAM组,所述第一SRAM组和第二SRAM组分别包括所述n个SRAM。
11.一种图像处理方法,其特征在于,包括以下步骤:
计算并读取输入图像中用于计算目标图像数据行的源数据行并保存;
n个处理器同时根据所述源数据行分别计算目标图像中对应行的数据;
根据所述n个处理器输出的数据行进行图像拼接,输出目标图像;
其中,所述n为大于等于1的正整数。
12.如权利要求11所述的图像处理方法,其特征在于,所述读取并保存输入图像中用于计算目标图像的源数据行包括:
根据所述n个处理器输出的目标图像的行号计算所述n个处理器所需的源数据行号;
根据所述源数据行号在所述输入图像中提取数据行并保存。
13.如权利要求12所述的图像处理方法,其特征在于,所述根据所述n个处理器输出的目标图像的行号计算所述n个处理器所需的源数据行号包括:
所述n个处理器输出目标图像的行号乘缩放因子加0后取整的对应所述输入图像中的行号,并根据滤波阶数m在所述输入图像中连续向后再取m-1行。
14.如权利要求13所述的图像处理方法,其特征在于,所述缩放因子为所述输入图像的行数除以所述目标图像的行数。
15.如权利要求12所述的图像处理方法,其特征在于,所述根据所述源数据行号在所述输入图像中提取的数据行包括:所述n个处理器完成计算所需的源数据行的并集。
16.如权利要求11至15任一项所述的图像处理方法,其特征在于,所述n个处理器中的第j个处理器输出所述目标图像的第j,n+j,2n+j,3n+j...行数据,直至输出所述目标图像最后一行数据,j为小于等于所述n的正整数。
17.如权利要求11所述的图像处理方法,其特征在于,根据所述n个处理器输出的数据行进行图像拼接包括:
接收所述n个处理器计算的所述目标图像的n个数据行并保存至第一缓存组,所述第一缓存组按行输出所述n个数据行,同时第二缓存组接收所述目标图像的下一组n个数据行并保存;
所述第一缓存组和所述第二缓存组对所述n个处理器计算的所述目标图像的n个数据行执行乒乓存储传输。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710497295.1A CN107194880A (zh) | 2017-06-26 | 2017-06-26 | 一种图像处理装置及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710497295.1A CN107194880A (zh) | 2017-06-26 | 2017-06-26 | 一种图像处理装置及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107194880A true CN107194880A (zh) | 2017-09-22 |
Family
ID=59880960
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710497295.1A Pending CN107194880A (zh) | 2017-06-26 | 2017-06-26 | 一种图像处理装置及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107194880A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107977923A (zh) * | 2017-12-13 | 2018-05-01 | 深圳云天励飞技术有限公司 | 图像处理方法、装置、电子设备及计算机可读存储介质 |
-
2017
- 2017-06-26 CN CN201710497295.1A patent/CN107194880A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107977923A (zh) * | 2017-12-13 | 2018-05-01 | 深圳云天励飞技术有限公司 | 图像处理方法、装置、电子设备及计算机可读存储介质 |
WO2019114044A1 (zh) * | 2017-12-13 | 2019-06-20 | 深圳云天励飞技术有限公司 | 图像处理方法、装置、电子设备及计算机可读存储介质 |
CN107977923B (zh) * | 2017-12-13 | 2020-02-04 | 深圳云天励飞技术有限公司 | 图像处理方法、装置、电子设备及计算机可读存储介质 |
US10664952B2 (en) | 2017-12-13 | 2020-05-26 | Shenzhen Intellifusion Technologies Co., Ltd. | Image processing method, and device, for performing coordinate conversion |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI381364B (zh) | 用於影像處理的方法以及包含儲存有指令之機器可存取媒體的物品 | |
CN102819820B (zh) | 基于分块渲染的gpu中多管线渲染的实现方法 | |
CN107392309A (zh) | 一种基于fpga的通用定点数神经网络卷积加速器硬件结构 | |
CN107066239A (zh) | 一种实现卷积神经网络前向计算的硬件结构 | |
Kowalczyk et al. | Real-time implementation of contextual image processing operations for 4K video stream in Zynq ultrascale+ MPSoC | |
CN109495697A (zh) | 基于视频切割的多屏幕扩展方法、系统、存储介质及终端 | |
CN104952043A (zh) | 图像滤波方法及ct 系统 | |
CN107194880A (zh) | 一种图像处理装置及方法 | |
EP3326082A1 (en) | 2d discrete fourier transform with simultaneous edge artifact removal for real-time applications | |
CN113286174B (zh) | 视频抽帧方法、装置、电子设备、计算机可读存储介质 | |
Cadenas et al. | Parallel pipelined array architectures for real-time histogram computation in consumer devices | |
CN103915050A (zh) | 图像处理设备以及具有该图像处理设备的显示设备 | |
CN113033574A (zh) | 一种基于fpga的图像数据降噪系统及方法 | |
Lee et al. | FPGA based connected component labeling | |
US8854389B2 (en) | Apparatus and method for hardware-based video/image post-processing | |
CN109840892A (zh) | 一种基于高层次综合的红外视频增强方法 | |
CN116433816A (zh) | 一种提高web端canvas绘制性能的方法及装置 | |
CN109495754A (zh) | 基于时分复用的多屏幕扩展方法、系统、存储介质及终端 | |
CN109727206A (zh) | 一种二值图像中值滤波的快速计算方法以及其实现方法 | |
CN104144310B (zh) | 超高清分辨率图像处理方法和装置 | |
CN106878586A (zh) | 可重构的并行图像细节增强方法和装置 | |
CN107622037A (zh) | 一种提高图形处理单元的矩阵乘计算性能的方法和装置 | |
CN102663759A (zh) | 一种遥感影像快速处理方法 | |
CN107169917A (zh) | 矢量图形处理器不通过ddr完成图形图像实时绘制的装置 | |
Duan et al. | Lucky imaging system on FPGA by using ethernet transmission |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170922 |
|
RJ01 | Rejection of invention patent application after publication |