CN104935831B - 并行多相位图像插值装置和方法 - Google Patents

并行多相位图像插值装置和方法 Download PDF

Info

Publication number
CN104935831B
CN104935831B CN201510324926.0A CN201510324926A CN104935831B CN 104935831 B CN104935831 B CN 104935831B CN 201510324926 A CN201510324926 A CN 201510324926A CN 104935831 B CN104935831 B CN 104935831B
Authority
CN
China
Prior art keywords
interpolation
image data
source image
access control
control unit
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.)
Active
Application number
CN201510324926.0A
Other languages
English (en)
Other versions
CN104935831A (zh
Inventor
郭若杉
王磊
韩睿
林忱
王东琳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Jilang Semiconductor Technology Co Ltd
Original Assignee
Institute of Automation of Chinese Academy of Science
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Institute of Automation of Chinese Academy of Science filed Critical Institute of Automation of Chinese Academy of Science
Priority to CN201510324926.0A priority Critical patent/CN104935831B/zh
Publication of CN104935831A publication Critical patent/CN104935831A/zh
Application granted granted Critical
Publication of CN104935831B publication Critical patent/CN104935831B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Image Processing (AREA)

Abstract

本发明提供一种并行多相位图像插值装置和方法,所述装置包括:局部存储器、第一访存控制单元、第二访存控制单元、源图像数据缓冲单元、行滤波器系数缓冲单元、乘累加器、第三访存控制单元和状态机;所述第一访存控制单元用于获取局部存储器中的源图像数据并缓存到源图像数据缓冲单元;所述第二访存控制单元用于获取局部存储器中的行滤波器系数并缓存到行滤波器系数缓冲单元;所述源图像数据缓冲单元用于分别向各乘累加器输入源图像数据;所述行滤波器系数缓冲单元用于向乘累加器广播源图像数据对应的行滤波器系数;所述乘累加器用于对源图像数据执行乘累加运算得到中间结果。本发明所述插值装置可重构且支持任意阶插值滤波器因而通用性好。

Description

并行多相位图像插值装置和方法
技术领域
本发明属于图像处理领域,涉及图像缩放技术,特别涉及并行多相位图像插值装置和方法。
背景技术
在数字电视,平板,或电脑显示中,经常需要改变图像的分辨率。例如在全高清数字电视中,视频输入源可能是标清,或高清,为了在全高清电视屏上进行显示,需要对图像进行放大;多相位插值方法是常用的一种图像缩放方法,其相比双线性插值,双三次插值方法而言,在细节的保持上具有更好的性能,故而更广泛地被工业界采用。
二维图像的插值可以分离为水平插值和垂直插值,例如要将720x480的图像放大到1920x1080,可以先将图像垂直放大到720x1080,再将图像水平放大到1920x1080;水平插值和垂直插值的滤波器可以选用不同的阶数,由于实现垂直数据缓冲需要在片上缓冲多行像素,所以垂直插值的硬件成本要大于水平插值,往往在实际中在垂直方向上采用比水平方向更短的插值滤波器;进行二维图像插值,采用固定水平8阶,垂直6阶的传统电路结构图如图7-a)所示,传统的二维图像固定阶数多相位插值电路中6阶滤波器的电路设计如图7-b)所示,该插值电路为水平8阶、垂直6阶,8阶滤波器的电路设计如图7-c)所示,可以看出,不同阶数的滤波器具有不同的电路;在多相位插值中,不同阶数的多相位滤波器往往具有不同的性能,一般而言,阶数越多的多相位滤波器其细节保持能力越好,但存在过冲和振铃的失真效应,阶数越少的多相位滤波器其细节保持能力不如阶数大的滤波器,但在过冲和振铃的失真效应方面优于阶数大的滤波器;对于具有不同特点的图像,采用不同阶数的滤波器,往往比采用固定的单一滤波器具有更好的性能;例如在自然图像中,采用阶数大的滤波器性能更好,在图形中,采用阶数少的滤波器性能更好。
现有插值装置由于适应不同图像类型的滤波器阶数不同,而不同阶滤波器对应不同的结构,为了自适应的根据图像特点选取不同滤波器,在传统的电路设计中,需要同时包含多种插值电路。这在硬件资源上,存在一定的浪费。在芯片流片后,设计的芯片仅支持有限的固定的插值阶数,无法对滤波器阶数进行变更,如果算法有改动,只能重新设计硬件并流片。
发明内容
本发明提供一种并行多相位图像插值装置和方法,以解决现有插值装置或方法针对不同规格的图像通用性差且需改变硬件电路的问题。
本发明的第一个方面是提供一种并行多相位图像插值装置,包括:
局部存储器,用于存储源图像数据和行滤波器系数;
第一访存控制单元,用于获取局部存储器中的F行源图像数据并缓存到源图像数据缓冲单元;
第二访存控制单元,用于获取局部存储器中的F个行滤波器系数并缓存到行滤波器系数缓冲单元;
源图像数据缓冲单元,用于在第k时钟周期内分别向P个乘累加器输入第f行源图像数据的P个像素;
行滤波器系数缓冲单元,用于在第k时钟周期内向P个乘累加器广播第f行源图像数据对应的第f个行滤波器系数;
乘累加器,用于在第k个时钟周期内根据所述第f个行滤波器系数对所述第f行源图像数据执行乘累加运算得到中间结果;
第三访存控制单元,用于获取所述中间结果并存储到局部存储器;
状态机,用于为所述第一访存控制单元、第二访存控制单元、第三访存控制单元、源图像数据缓冲单元、插值滤波缓冲单元输出控制信号;
其中,k≥1,F≥1,P>1,1≤f≤F。
本发明的第二个方面是提供一种并行多相位图像插值方法,包括:
第一访存控制单元获取局部存储器中的F行源图像数据并缓存到源图像数据缓冲单元;
第二访存控制单元获取局部存储器中的F个行滤波器系数并缓存到行滤波器系数缓冲单元;
所述源图像数据缓冲单元在第k时钟周期内分别向P个乘累加器输入第f行源图像数据的P个像素;
所述行滤波器系数缓冲单元在第k时钟周期内向P个乘累加器广播第f行源图像数据对应的第f个行滤波器系数;
所述乘累加器在第k个时钟周期内根据所述第f个行滤波器系数对所述第f行源图像数据执行乘累加运算得到中间结果;
第三访存控制单元获取所述中间结果并存储到局部存储器;
判断f+1≤F是否成立,若成立则令f自加1并重复执行所述对第f行的操作直至f+1>F终止并得到第k个时钟周期的中间结果作为插值结果;
其中,k≥1,F≥1,1≤f≤F。
本发明的有益效果为:
本发明并行多相位图像插值装置支持任意阶的多相位滤波器,能在不改变硬件仅需对硬件重新进行配置的条件下实现对插值装置的重构,进而实现对不同图像数据的插值缩放,也即实现了一种可重构的并行多相位图像插值装置,能够满足不同应用场景需求。具体来说,首先、该装置仅有一种电路结构,可以支持任意阶的插值滤波器,对于不同图像可以在不同的时刻复用同一个电路结构;其次、该装置可以在不改变硬件,仅修改配置的情况,用于不同需求的应用场景;最后、该装置通过二维离散存储器,可以零开销实现图像转置,从而水平插值和垂直插值电路可复用。
附图说明
图1为本发明并行多相位图像插值装置实施例一的结构框图;
图2为本发明基于边缘检测的图像插值方法实施例一的流程图;
图3为传统的图像垂直插值算法流程图;
图4为传统的图像垂直插值算法中图像插值坐标计算符号的说明图;
图5为本发明并行多相位图像插值装置实施例一中优化后的插值算法流程图;
图6为本发明并行多相位图像插值装置实施例一中更新表的计算流程图;
图7-a)为传统垂直6阶插值滤波器的电路结构图;
图7-b)为传统6阶插值滤波器电路结构;
图7-c)为传统6阶插值滤波器电路结构;
图8为本发明基于边缘检测的图像插值方法实施例一中新的插值系数表计算流程;
图9-a)为源图像像素示意图;
图9-b)为插值后图像像素示意图;
图9-c)为插值数据处理顺序示意图;
图9-d)为源图像数据的访问顺序示意图;
图10为各访存控制单元的结构示意图;
图11为本发明并行多相位图像插值装置实施例一中的数据缓冲结构图;
图12为本发明并行多相位图像插值装置实施例一中的插值系数缓冲电路结构图;
图13为本发明并行多相位图像插值装置实施例一中的MAC阵列结构图;
图14为本发明并行多相位图像插值装置实施例一中的插值装置部件连线图;
图15为本发明并行多相位图像插值装置实施例一中的状态机FSM的电路结构图;
图16为本发明并行多相位图像插值装置实施例一中的基本控制时序产生单元产生的输出信号时序图。
具体实施方式
图1为本发明并行多相位图像插值装置实施例一的结构框图,如图1所示,本发明并行多相位图像插值装置,包括:
局部存储器3,用于存储源图像数据和行滤波器系数;
第一访存控制单元0,用于获取局部存储器中的F行源图像数据并缓存到源图像数据缓冲单元;
第二访存控制单元1,用于获取局部存储器中的F个行滤波器系数并缓存到行滤波器系数缓冲单元;
源图像数据缓冲单元4,用于在第k时钟周期内分别向P个乘累加器输入第f行源图像数据的P个像素;
行滤波器系数缓冲单元5,用于在第k时钟周期内向P个乘累加器广播第f行源图像数据对应的第f个行滤波器系数;
乘累加器6,用于在第k个时钟周期内根据所述第f个行滤波器系数对所述第f行源图像数据执行乘累加运算得到中间结果;
第三访存控制单元2,用于获取所述中间结果并存储到局部存储器;
状态机7,用于为所述第一访存控制单元、第二访存控制单元、第三访存控制单元、源图像数据缓冲单元、插值滤波缓冲单元输出控制信号;
其中,k≥1,F≥1,P>1,1≤f≤F。
优选的,所述局部存储器还用于计算待插值图像数据的坐标生成F行源图像数据和计算对应的F个行滤波器的插值系数并存储。
优选的,所述局部存储器还用于根据最简缩放比计算待插值图像数据的坐标生成F行源图像数据和计算对应的F个行滤波器的插值系数并存储。
优选的,所述局部存储器为二维离散存储器,相比传统插值装置,无需对源图像数据执行转置运算,减小了插值运算时间。
优选的,所述第一访存控制单元、第二访存控制单元或第三访存控制单元包括至少一个计数器、至少一个乘法器、至少一个加法器和至少一个配置寄存器。
优选的,所述源图像数据缓冲单元包括至少一个计数器、至少一个加法器、至少一个寄存器堆和至少一个配置寄存器。
优选的,所述行滤波器系数缓冲单元包括至少一个计数器、至少一个非门、至少一个寄存器组。
本发明公开的并行多相位图像插值装置中,包含一个二维离散的局部存储器,用于存储源图像数据,滤波器系数组,以及插值后图像数据;一个状态机,用于产生控制各单元的控制信号;一个访存控制单元0,用于将局部存储器中的源图像数据读入数据缓冲区;一个访存控制单元1,用于将局部存储器中的滤波器系数读入插值滤波器系数缓冲区;一个数据缓冲区,用于缓冲插值一行图像所需的F行源图像数据(F为插值滤波器的阶数,可重构),每个时钟周期输出一行行宽为P个像素的源图像数据,分别输入到P个乘累加器(MAC);一个插值滤波器系数缓冲区,用于缓冲插值一行数据所需的F个滤波器系数。每个时钟周期输出一个滤波器系数,并广播到P个乘累加器;P个乘累加器,接受图像数据和滤波器系数的输入,进行乘累加运算,F个时钟周期输出一行P个插值结果;一个访存控制单元2,用于将乘累加器(MAC)的输出写回局部存储器。该并行多相位图像插值装置可以同时并行处理P个像素的插值,并且可重构插值滤波器的阶数,从而在不改变硬件,仅修改配置的情况,用于不同需求的应用场景。
下面说明对插值算法计算过程的优化,如图7-a)所示,传统的二维图像插值电路中,如仅考察垂直插值,其对应的插值算法如图3所示,其中i,j为插值像素在输出图像中的坐标,OW、OH分别输出图像的宽度和高度。NUM_PHASE为插值滤波器组采用的相位总数,F为滤波器阶数。src_image为输入图像,out_image为输出图像其尺寸为OW*OH;c_table为插值系数表,其尺寸为NUM_PHASE*F,有NUM_PHASE个表项,每个表项是一个相位对应的一个F阶的滤波器系数。
pos为输出图像(i,j)位置的像素在源图像中的位置,pos_acc为插值的步长,其符号的含义可以参见图4。
如图3所示插值流程需要为每个像素计算坐标和相位,从而产生数据缓冲地址和插值系数缓冲地址,为简化计算,本实施例对如图3所示的算法流程进行了优化,其主要改进为:
第一、预先计算坐标和插值系数进行存储,再进行插值,插值像素过程中不用计算,只需要顺序访问存储,因为就垂直放大到1080而言,坐标和插值系数最多有1080种情况。对于720x480到720x1080的放大,采用传统的方法,需要720x1080次坐标计算,改进后可降低到1080次。
第二、利用最简缩放比进行坐标和系数的计算,这样能进一步减少计算,例如以720x480到720x1080的放大而言,其垂直缩放比为480->1080,但其最简缩放比为4->9,利用最简缩放比能将坐标计算量进一步减少到9次计算。计算量大大降低。也可以采用离线计算的方法将坐标和系数表一次性算出。
缩放比与最简缩放比的关系如表1所示,其中IH输入图像高度,OH为输出图像高度,N为最简缩放比中的输入因子,L为最简缩放比中的输出因子,loop为输出图像高度与最简缩放比输出因子的比值。
表1
如图5所示,优化后的图像插值算法流程与传统插值流程相比,其差别如表2所示:
表2
更新表(update_table)的计算过程如图6所示,从图6可以看出,坐标更新表update_table包含L个表项,计算只需要L次循环。
新的插值系数表c_table_new的计算如图8所示。假设插值滤波器组采用的是相位总数NUM_PHASE为64,滤波器阶数F为6阶,则原插值系数表c_table的尺寸为NUM_PHASE*F,即64x6的一个表,包含64个表项,每个表项是一个相位对应的一个6Tap的滤波器系数。新的插值系数表c_table_new的尺寸为LxF。
从图6可以看出,坐标更新表update_table包含L个表项,计算只需要L次循环。
坐标更新表和插值系数表可以在线计算也可以离线计算,为了简化电路结构,本实施例采用离线计算的方式。
下面对插值算法对应的电路结构作出说明,上述优化插值算法所对应的硬件结构如图1所示,该可重构的并行多相位图像插值装置包含一个局部存储器,用于存储源图像数据,滤波器系数组,以及插值后图像数据;一个状态机,用于产生控制各单元的控制信号一个访存控制单元0,用于将局部存储器中的源图像数据读入数据缓冲区;一个访存控制单元1,用于将局部存储器中的滤波器系数读入插值滤波器系数缓冲区;一个数据缓冲区,用于缓冲插值一行图像所需的F行源图像数据(F为插值滤波器的阶数,可重构),每个时钟周期输出一行行宽为P个像素的源图像数据,分别输入到P个乘累加器(MAC);一个插值滤波器系数缓冲区,用于缓冲插值一行数据所需的F个滤波器系数。每个时钟周期输出一个滤波器系数,并广播到P个乘累加器;P个乘累加器,接受图像数据和滤波器系数的输入,进行乘累加运算,F个时钟周期输出一行P个插值结果;一个访存控制单元2,用于将乘累加器(MAC)的输出写回局部存储器。
由于图1所示的插值装置支持任意阶滤波器,与传统二维图像的插值电路,如图7-a)所示,同时具有垂直插值滤波器电路和水平插值滤波器电路不同,在本实施例中,采用了垂直插值和水平插值在时间上复用同一套插值电路的方法。
为了复用同一套插值电路,传统的方法是:
步骤1,对图像进行垂直插值,将临时图像结果写回存储器;
步骤2,对临时图像进行转置;
步骤3,对转置后的临时图像进行垂直方向的插值,并写回存储器;
步骤4,对步骤3产生的结果进行转置,得到最终结果。
这种传统方法会在转置这一步中产生较大的时间开销,为了复用统一的电路进行插值,并且避免转置开销,本实施例中采用了二维离散存储器。二维离散存储的实现可参考专利“多粒度并行存储系统与存储器”;该存储器可以支持行读取模式和列读取模式,在行读取模式下,可每个时钟周期读入一行P个数据,进行垂直方向的插值,在列读取模式下,可每个时钟周期读入一列P个数据,进行水平方向的插值,故而本专利进行二维图像插值的方法为:
步骤1:将局部存储器的读取模式设为行读取模式,写回模式设为行写回。
步骤2:存储访存控制单元0产生读控制信号给局部存储器,并按照行读取模式对局部存储器进行数据读取,并进行垂直方向的插值。
步骤3:存储访存控制单元2产生行写回的写控制信号给局部存储器,并按照行写回模式将步骤2产生的数据写回局部存储器。
步骤4:将局部存储器的读取模式设为列读取模式,将写回模式设为列写回。
步骤5:存储访存控制单元0产生读控制信号给局部存储器,并按照列读取模式对步骤3写回局部存储器的数据进行读取,并进行水平方向的插值。
步骤6:存储访存控制单元2产生写控制信号给局部存储器,并按照列写回模式将步骤5产生的数据写回局部存储器。
本专利复用同一套电路进行垂直插值和水平插值的装置和方法仅用简单的配置实现不同的读取和写回方式,配置所需时间极少,避免了图像转置的时间开销。
由于垂直插值和水平插值复用了同一套电路,除读取写回模式不同之外其他均相同,所以为叙述方便,下面只讨论垂直方向的插值,并且以F=6、P=4为例进行阐述;其中P值决定了并行度,可根据时序要求进行选择。但一旦固定P并设计成硬件,P值不可更改;为插值滤波器的阶数,可以在硬件固定后由配置进行修改。
图像插值数据处理的顺序如图9所示,图9-a)为源图像,尺寸为8x4,图9-b)为插值后图像,尺寸为8x12,其中圆圈代表在源图像中存在的像素点,五角星代表插出的像素点;为了得到图9-b)的插值图像,本专利的处理顺序如图9-c),即每次可以并行处理4个像素,处理完4个像素后下移移行。
如图1所示的插值装置中的局部存储器拥有行模式和列模式,该插值装置中的访存控制单元0的结构参见图10。
各访存控制单元由计数器i、计数器j、两个乘法器、两个加法器组成,以及配置寄存器组成。访存控制单元接受状态机的片选信号I_FSM_R_CS,以及计数器使能信号,输出局部存储器的片选信号O_MC_CS和地址O_MC_ADDR,接受数据输入I_DATA,输出O_DATA;其中REG_START_ADDR,REG_ADDR_STEP1,REG_ADDR_STEP2为配置寄存器;其中计数器I对Clock进行计数,当输入的计数器使能信号I_FSM_COUNT_EN_I=1时,每个时钟计数器增1,计数到REG_COUNT_NUMBER_I-1清零重新计数;计数器J对计数器I的输出进行计数,当I_FSM_COUNT_EN_J=1,且计数器I的输出由REG_COUNT_NUMBER_I-1变到0时,计数器增1;计数到REG_COUNT_NUMBER_J-1清零重新计数。
利用图10所示的访存控制单元0可以按照图9d)的顺序产生地址。每个读片选信号可以读上来位宽为64bit(16bit*4)的数据,包含4个源图像数据像素;如将图像由720x480放大到720x1080,则寄存器配置如表3所示:
寄存器 备注
REG_ADDR_STEP1 720 =输入图像宽度
REG_ADDR_STEP2 4 =P
REG_COUNT_NUMBER_I 480 =输入图像高度
REG_COUNT_NUMBER_J 180 =输入图像宽度/P
表3
局部存储器中存储着插值系数表c_table_new,如图1所示的插值装置中的访存控制单元1将插值系数表装载进插值系数缓冲;其电路结构与访存控制单元0相同,但是其寄存器配置不同,如表4所示:
表4
如图1所示插值装置中的访存控制单元2将输出图像数据写回局部存储器,其电路结构与访存控制单元0相同。其寄存器配置如表5所示:
寄存器 备注
REG_ADDR_STEP1 720 =输出图像宽度
REG_ADDR_STEP2 4 =P
REG_COUNT_NUMBER_I 1080 =输出图像高度
REG_COUNT_NUMBER_J 180 =输入图像宽度/P
表5
如图1所示的插值装置中的数据缓冲其电路结构如图11所示,数据缓冲电路结构由一个计数器W,一个计数器S,一个计数器I,一个加法器和一个寄存器堆,以及配置寄存器组成。其中寄存器堆(Register Bank)包含32个位宽为P*BW的寄存器,P为并行度,BW为每个图像像素的位宽。在输入I_FSM_CS_R信号为1时,在Register bank的寄存器中,选择编号为raddr的寄存器输出,输出O_DBUFF_DATA的位宽为P*BW。读地址raddr的计算为:raddr=s+i;其中s为计数器S的输出,i为计数器I的输出。在输入I_FSM_W_CS为1时,将输入的I_MC_DATA写入Register Bank中编号为waddr的寄存器,写地址waddr为计数器W的输出。数据缓冲区的配置寄存器配置如表6所示。计数器I对时钟进行计数,当输入使能信号I_FSM_COUNT_I_EN=1时,开始计数,计数到REG_COUNT_I_NUMBER-1时,清零重新计数。计数器S和W对计数I的输出进行计数,当计数器I的输出由REG_COUNT_NUMBER-1时,计数器加1。
寄存器 备注
REG_COUNT_NUMBER_W 6 =滤波器阶数F
REG_COUNT_NUMBER_S 6 =滤波器阶数F
REG_COUNT_NUMBER_I 6 =滤波器阶数F
表6
可以看出,在滤波器阶数为6时,32个寄存器中,只使用了6个寄存器。
如图1所示的插值装置中的系数缓冲其电路结构如图12所示,插值系数缓冲的电路结构由计数I,计数器J,一个非门,和一个register bank组成;Register Bank只利用了2个寄存器,每个寄存器宽度为P*BW,P为并行度,BW为每个图像像素的位宽;在本实施例中为16*4=64bit;这种装置可以实现双缓冲的功能;当输入写使能信号I_FSM_W_CS为1时,将输入数据64bitI_MC_DATA写入编号为waddr的寄存器。raddr为读地址,表明了读的寄存器的编号,raddr_sub表明了一个寄存器P个字段中的哪个字段;即当输入读使能信号I_FSM_R_CS为1时,输出编号为raddr的寄存器中raddr_sub子段的数据,输出数据O_CBUFF_DATA的位宽为BW=16bit。其中读地址waddr和写地址raddr的关系是:waddr=not raddr;当输入计数使能信号I_FSM_COUNT_I_EN为1时,计数器I对时钟进行计数,当I_FSM_COUNT_J_EN=1时,计数器对计数器I的输出进行计数;系数缓冲区的配置见表7:
寄存器 备注
REG_COUNT_NUMBER_J 2 =2(双缓冲)
REG_COUNT_NUMBER_I 6 =滤波器阶数F
表7
如图1的插值装置中的MAC阵列的结构如图13所示,每个MAC接受I_DBUFF_DATA中的16位数据的输入和I_CBUFF_DATA的输入,进行乘累加运算,I_FSM_MAC_RST为清零信号;当I_FSM_MAC_RST=1时,输出结果O_MAC_DATA。
局部存储器中有三个独立的存储器port0,por1,port2,可以分别进行读写;当存储器用作读时,输入地址和读片选信号,输出数据;当存储器用作写时,输入地址和写片选信号,以及写数据。
如图1的插值装置中的状态机FSM负责产生其他各个部件的控制信号;如图1所示的插值装置中各个部件的连线如图14所示;其中FSM产生控制信号。
FSM的结构如图15所示,包括一个基本控制时序产生单元和条件时序产生单元,一个条件使能寄存器,一个条件寄存器;基本控制时序产生单元产生控制信号的基本时序,并生成条件使能的控制时序给条件时序产生单元,条件时序产生单元在条件使能信号为1时,读入条件寄存器的一个bit,将条件使能寄存器中bit为1对应的控制信号的条件置为条件寄存器输出的条件。
基本控制时序产生单元产生的输出信号时序如图16所示。
FSM一共输出了19个控制信号,设FSM输出为O_FSM_OUT,共19位,其中各个bit位代表的控制信号如表8所示,基本控制时序产生单元产生的输出信号为fsm_basic。
表8
条件使能寄存器REG_CONDITION_EN包括19个bit;每个bit位表示对应的控制信号是否受条件控制;在本实施例中,只有O_FSM_DBUFF_W_CS、O_FSM_DBUFF_COUNT_S_EN、O_FSM_DBUFF_COUNT_S_EN、O_FSM_MC0_CS这四个控制信号受条件控制,相应bit为1,其他bit为0,所以REG_CONDITION_EN的值为153。
在一个L周期内的j时刻(0<=j<L),条件condition的产生逻辑为:
condition(i)=(condition_en=1)REG_CONDITION_EN(i)*REG_CONDITION(j):1;
最后FSM的输出为:
O_FSM_OUT(i)=fsm_basic(i)&condition(i);
条件寄存器REG_CONDITION共有1024位,其中只有L位(L为最简缩放比中的输出因子)有效;这L位的值就是如图6所示的坐标更新表update_table。
本发明并行多相位图像插值装置支持任意阶的多相位滤波器,能在不改变硬件仅需对硬件重新进行配置的条件下实现对插值装置的重构,进而实现对不同图像数据的插值缩放,也即实现了一种可重构的并行多相位图像插值装置,能够满足不同应用场景需求。
图2为本发明并行多相位图像插值方法实施例一的结构框图,如图2所示,本发明并行多相位图像插值方法,包括:
S201、局部存储器计算待插值图像数据的坐标生成F行源图像数据和计算对应的F个行滤波器的插值系数并存储;
优选的,所述局部存储器计算待插值图像数据的坐标生成F行源图像数据和计算对应的F个行滤波器的插值系数并存储包括:
局部存储器根据最简缩放比计算待插值图像数据的坐标生成F行源图像数据和计算对应的F个行滤波器的插值系数并存储;
S202、第一访存控制单元获取局部存储器中的F行源图像数据并缓存到源图像数据缓冲单元;
S203、第二访存控制单元获取局部存储器中的F个行滤波器系数并缓存到行滤波器系数缓冲单元;
S204、所述源图像数据缓冲单元在第k时钟周期内分别向P个乘累加器输入第f行源图像数据的P个像素,也即P个像素的位置和像素值数据;
S205、所述行滤波器系数缓冲单元在第k时钟周期内向P个乘累加器广播第f行源图像数据对应的第f个行滤波器系数;
S206、所述乘累加器在第k个时钟周期内根据所述第f个行滤波器系数对所述第f行源图像数据执行乘累加运算得到中间结果;
S207、第三访存控制单元获取所述中间结果并存储到局部存储器;
S208、判断f+1≤F是否成立,若成立则令f自加1并重复执行所述对第f行的操作直至f+1>F终止并得到第k个时钟周期的中间结果作为插值结果;
其中,k≥1,F≥1,1≤f≤F。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (10)

1.一种并行多相位图像插值装置,其特征在于,包括:
局部存储器,用于存储源图像数据和行滤波器系数;
第一访存控制单元,用于获取局部存储器中的F行源图像数据并缓存到源图像数据缓冲单元;
第二访存控制单元,用于获取局部存储器中的F个行滤波器系数并缓存到行滤波器系数缓冲单元;
源图像数据缓冲单元,用于在第k时钟周期内分别向P个乘累加器输入第f行源图像数据的P个像素;
行滤波器系数缓冲单元,用于在第k时钟周期内向P个乘累加器广播第f行源图像数据对应的第f个行滤波器系数;
乘累加器,用于在第k个时钟周期内根据所述第f个行滤波器系数对所述第f行源图像数据执行乘累加运算得到中间结果;
第三访存控制单元,用于获取所述中间结果并存储到局部存储器;
状态机,用于为所述第一访存控制单元、第二访存控制单元、第三访存控制单元、源图像数据缓冲单元、插值滤波缓冲单元输出控制信号;
其中,k≥1,F≥1,P>1,1≤f≤F。
2.根据权利要求1所述的并行多相位图像插值装置,其特征在于,所述局部存储器还用于计算待插值图像数据的坐标生成F行源图像数据和计算对应的F个行滤波器的插值系数并存储。
3.根据权利要求2所述的并行多相位图像插值装置,其特征在于,所述局部存储器还用于根据最简缩放比计算待插值图像数据的坐标生成F行源图像数据和计算对应的F个行滤波器的插值系数并存储。
4.根据权利要求1所述的并行多相位图像插值装置,其特征在于,所述局部存储器为二维离散存储器。
5.根据权利要求1所述的并行多相位图像插值装置,其特征在于,所述第一访存控制单元、第二访存控制单元或第三访存控制单元包括至少一个计数器、至少一个乘法器、至少一个加法器和至少一个配置寄存器。
6.根据权利要求1所述的并行多相位图像插值装置,其特征在于,所述源图像数据缓冲单元包括至少一个计数器、至少一个加法器、至少一个寄存器堆和至少一个配置寄存器。
7.根据权利要求1所述的并行多相位图像插值装置,其特征在于,所述行滤波器系数缓冲单元包括至少一个计数器、至少一个非门、至少一个寄存器组。
8.一种并行多相位图像插值方法,其特征在于,包括:
第一访存控制单元获取局部存储器中的F行源图像数据并缓存到源图像数据缓冲单元;
第二访存控制单元获取局部存储器中的F个行滤波器系数并缓存到行滤波器系数缓冲单元;
所述源图像数据缓冲单元在第k时钟周期内分别向P个乘累加器输入第f行源图像数据的P个像素;
所述行滤波器系数缓冲单元在第k时钟周期内向P个乘累加器广播第f行源图像数据对应的第f个行滤波器系数;
所述乘累加器在第k个时钟周期内根据所述第f个行滤波器系数对所述第f行源图像数据执行乘累加运算得到中间结果;
第三访存控制单元获取所述中间结果并存储到局部存储器;
判断f+1≤F是否成立,若成立则令f自加1并重复执行所述对第f行的操作直至f+1>F终止并得到第k个时钟周期的中间结果作为插值结果;
其中,k≥1,F≥1,P>1,1≤f≤F。
9.根据权利要求8所述的并行多相位图像插值方法,其特征在于,在所述第一访存控制单元获取局部存储器中的F行源图像数据并缓存到源图像数据缓冲单元之前,还包括:
局部存储器计算待插值图像数据的坐标生成F行源图像数据和计算对应的F个行滤波器的插值系数并存储。
10.根据权利要求8所述的并行多相位图像插值方法,其特征在于,所述局部存储器计算待插值图像数据的坐标生成F行源图像数据和计算对应的F个行滤波器的插值系数并存储包括:
局部存储器根据最简缩放比计算待插值图像数据的坐标生成F行源图像数据和计算对应的F个行滤波器的插值系数并存储。
CN201510324926.0A 2015-06-12 2015-06-12 并行多相位图像插值装置和方法 Active CN104935831B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510324926.0A CN104935831B (zh) 2015-06-12 2015-06-12 并行多相位图像插值装置和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510324926.0A CN104935831B (zh) 2015-06-12 2015-06-12 并行多相位图像插值装置和方法

Publications (2)

Publication Number Publication Date
CN104935831A CN104935831A (zh) 2015-09-23
CN104935831B true CN104935831B (zh) 2017-10-27

Family

ID=54122772

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510324926.0A Active CN104935831B (zh) 2015-06-12 2015-06-12 并行多相位图像插值装置和方法

Country Status (1)

Country Link
CN (1) CN104935831B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016197393A1 (zh) * 2015-06-12 2016-12-15 中国科学院自动化研究所 并行多相位图像插值装置和方法
US20170244981A1 (en) * 2016-02-24 2017-08-24 Mediatek Inc. Reconfigurable interpolation filter and associated interpolation filtering method
WO2018103736A1 (en) * 2016-12-09 2018-06-14 Beijing Horizon Information Technology Co., Ltd. Systems and methods for data management
CN110114799B (zh) * 2017-01-10 2023-06-23 富士胶片株式会社 噪声处理装置及噪声处理方法
CN108521824A (zh) * 2017-08-31 2018-09-11 深圳市大疆创新科技有限公司 图像处理装置、方法及相关电路
CN108322758A (zh) * 2018-01-12 2018-07-24 深圳市德赛微电子技术有限公司 多模视频解码器中运动补偿结构
CN108921779A (zh) * 2018-07-13 2018-11-30 北京炬力北方微电子有限公司 一种三维投影映射方法及装置
CN114387162A (zh) * 2020-10-22 2022-04-22 西安诺瓦星云科技股份有限公司 图像缩放装置和方法及计算机可读存储介质
WO2023131252A1 (zh) * 2022-01-06 2023-07-13 深圳鲲云信息科技有限公司 基于数据流架构的图像尺寸调整结构、调整方法及图像缩放方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101179671A (zh) * 2006-11-10 2008-05-14 上海奇码数字信息有限公司 图像缩放装置和图像缩放方法
CN101217620A (zh) * 2007-12-26 2008-07-09 西安交通大学 一种基于多相滤波技术的自适应视频图像缩放引擎
CN103841359A (zh) * 2012-11-23 2014-06-04 中兴通讯股份有限公司 一种视频多画面合成方法、装置和系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7477323B2 (en) * 2005-11-07 2009-01-13 Kolorific, Inc. Method and system for digital image magnification and reduction

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101179671A (zh) * 2006-11-10 2008-05-14 上海奇码数字信息有限公司 图像缩放装置和图像缩放方法
CN101217620A (zh) * 2007-12-26 2008-07-09 西安交通大学 一种基于多相滤波技术的自适应视频图像缩放引擎
CN103841359A (zh) * 2012-11-23 2014-06-04 中兴通讯股份有限公司 一种视频多画面合成方法、装置和系统

Also Published As

Publication number Publication date
CN104935831A (zh) 2015-09-23

Similar Documents

Publication Publication Date Title
CN104935831B (zh) 并行多相位图像插值装置和方法
CN100378761C (zh) 使用平行处理以提高多模式过滤器性能的纹理过滤器
US10356385B2 (en) Method and device for stereo images processing
JP2004007337A5 (zh)
US7502909B2 (en) Memory address generation with non-harmonic indexing
CN104782118A (zh) 视频缩放装置和方法
CN111630560B (zh) 用于校正失真输入图像的方法和系统
CA2929403C (en) Multi-dimensional sliding window operation for a vector processor
CN1110015C (zh) 图像处理装置和处理方法
CN103760525B (zh) 一种补齐式原地矩阵转置方法
CN102184514B (zh) 对要进行纹理操作的像素进行分组
US20200310818A1 (en) Multiplier-Accumulator Circuitry having Processing Pipelines and Methods of Operating Same
Li et al. High throughput hardware architecture for accurate semi-global matching
CN108521824A (zh) 图像处理装置、方法及相关电路
WO2016197393A1 (zh) 并行多相位图像插值装置和方法
Wang et al. Low-resource hardware architecture for semi-global stereo matching
US8902474B2 (en) Image processing apparatus, control method of the same, and program
CN104869284A (zh) 一种双线性插值放大算法的高效率fpga实现方法和装置
CN101662598B (zh) 一种连续视频数据流的缩放系统
CN111610963A (zh) 芯片结构及其乘加计算引擎
CN103533327B (zh) 一种基于硬件实现的dibr系统
Dilip et al. Bilinear interpolation image scaling processor for VLSI architecure
CN101452572B (zh) 基于三次平移算法的图像旋转vlsi结构
KR102667134B1 (ko) 싱글포트 메모리를 포함하는 신경망 하드웨어 가속기 및 그 동작 방법
CN101989350A (zh) 图像增强方法、图像增强装置及图像处理电路

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20171207

Address after: 102412 Beijing City, Fangshan District Yan Village Yan Fu Road No. 1 No. 11 building 4 layer 402

Patentee after: Beijing Si Lang science and Technology Co.,Ltd.

Address before: 100083 No. 95 East Zhongguancun Road, Beijing, Haidian District

Patentee before: Institute of Automation, Chinese Academy of Sciences

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20220119

Address after: 519031 room 532, building 18, No. 1889, Huandao East Road, Hengqin District, Zhuhai City, Guangdong Province

Patentee after: Zhuhai Jilang Semiconductor Technology Co.,Ltd.

Address before: 102412 room 402, 4th floor, building 11, No. 1, Yanfu Road, Yancun Town, Fangshan District, Beijing

Patentee before: Beijing Si Lang science and Technology Co.,Ltd.

CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: Room 701, 7th Floor, Building 56, No. 2, Jingyuan North Street, Beijing Economic and Technological Development Zone, Daxing District, Beijing 100176 (Beijing Pilot Free Trade Zone High-end Industry Zone Yizhuang Group)

Patentee after: Beijing Jilang Semiconductor Technology Co., Ltd.

Address before: 519031 room 532, building 18, No. 1889, Huandao East Road, Hengqin District, Zhuhai City, Guangdong Province

Patentee before: Zhuhai Jilang Semiconductor Technology Co.,Ltd.