一种用于实时图像识别的串行滤波匹配方法及系统技术方案

技术编号:9356957 阅读:114 留言:0更新日期:2013-11-21 00:11
本发明专利技术涉及串行滤波匹配技术领域,尤其涉及一种用于实时图像识别的串行滤波匹配方法及系统。本发明专利技术所提供的用于实时图像识别的串行滤波匹配方法及系统,其通过FPGA串行实现中值滤波和模板匹配,对采集的实时图像数据先进行中值滤波处理,降低图像噪声,再进行模板匹配运算,增强目标信息。该方案充分利用FGPA的内部逻辑单元和流水线方式,将DSP的工作分流给FPGA执行,把DSP从大量的滤波运算中解放出来,专门用于图像识别,克服单纯依靠DSP对图像数据进行模板匹配实时性差的问题,极大提高图像处理系统的处理速度。

【技术实现步骤摘要】
一种用于实时图像识别的串行滤波匹配方法及系统
本专利技术涉及串行滤波匹配
,尤其涉及一种用于实时图像识别的串行滤波匹配方法及系统。
技术介绍
图像信号在形成、传输和记录的过程中,不可避免地产生各种类型的噪声,降低了图像的质量,影响图像识别的效果或准确性。目前图象识别系统多采用DSP对图像数据进行单一的模板匹配算法处理。虽然DSP运行主频比较高,但由于DSP还是串行运算方式,此种方法增加了DSP的运算量,降低了系统的实时性,只适用于图像数据较少且实时性要求不高的系统,但在图像数据量大,实时性、可靠性要求更为苛刻的图像识别系统,单独依靠DSP进行模板匹配难以满足要求。
技术实现思路
(一)要解决的技术问题本专利技术要解决的技术问题是如何克服现有技术单独依靠DSP进行模板匹配时,存在无法满足实时性、可靠性要求的问题。(二)技术方案为解决上述技术问题,本专利技术提供一种用于实时图像识别的串行滤波匹配方法,所述匹配方法基于串行滤波匹配系统来实施,所述串行滤波匹配系统包括:中值滤波模块以及模板匹配模块;所述中值滤波模块包括图像数据接口控制模块、图像行缓存模块以及中值滤波运算模块;所述图像数据接口控制模块包括图像接口模块和控制模块;所述图像行缓存模块由多个双口RAM组成;所述中值滤波运算模块包括行数据读取模块以及滤波运算模块;所述模板匹配模块包括时序控制模块和模板匹配子模块;所述模板匹配子模块包括模板缓存、图像数据缓存、模板匹配结果缓存以及模板匹配运算模块;所述串行滤波匹配方法包括如下步骤:步骤S1:外部图像采集模块发送来的图像数据帧、行同步信号状态,以及图像数据计算器的状态;步骤S2:图像数据接口控制模块判断所述图像数据帧、行同步信号状态,以及图像数据计算器的状态,完成图像数据的接收;步骤S3:控制模块控制将一帧图像中的数据,按行先后顺序分别存入图像行缓存模块;在中值滤波运算过程采用3×3的二维模板的情况下,控制模块一次将相邻三行图像数据存入图像缓存模块,以供使用;在采用3×3二维模板的中值滤波运算过程中,其中三个相邻的双口RAM在当前读取周期内直接进行读取,剩余的RAM设为缓冲存储RAM,在下一读取周期,前一周期中直接读取的RAM中的后两个RAM与前一周期的缓冲存储RAM中相邻的下一RAM作为下一周期的直接读取的三个RAM,再剩余的RAM作为下一读取周期的缓冲存储,依次递推更换每一周期中直接读取的三个RAM;步骤S4:所述行数据读取模块当图像行缓存模块完成相邻三行图像数据的存储后,从图像行缓存模块中并行的读取相邻的三行图像数据,提供给滤波运算模块;步骤S5:所述滤波运算模块用于进行中值滤波运算,得到一行运算后的图像数据存于外围的数据缓存中;步骤S6:所述时序控制模块依据中值滤波后的图像数据的同步信号状态,在图像数据消隐期内,从模板存储器中读取匹配模板并保存在模板缓存中,在图像数据输入有效期内,由模板匹配子模块对图像数据进行缓存处理,然后对匹配模板、缓存图像数据进行模板匹配运算并将运算结果输出。其中,所述步骤S5中,中值滤波运算的具体实现是采结构化的二维滑动模板,利用该模板依次在图像的每个像素点上滑动,在经过每个像素时,将模板内像素按照像素位的大小进行排序,生成单调上升或下降的二维数据,中值滤波输出根据公式(1)来进行:g(x,y)=Med{f(x-k,y-l),(k,l)∈W}(1)式中:(x,y)为待匹配图像的像素点,其中,x为横坐标,y为纵坐标;(k,l)为中值滤波模板中的某一定点,其中,k为横坐标,l为纵坐标;f(x,y):在(x,y)点经过中值滤波前的灰度值;g(x,y):在(x,y)点处经过中值滤波后的灰度值;W:为中值滤波模板。其中,所述步骤S6中,所述模板匹配运算模块采用最小绝对差算法进行目标模板与实时图像区域的匹配运算,其计算公式如下式(2):式中:fu,v:待匹配图像,fu,v∈S:S为搜索区域;g:已知目标模板;M、N:已知目标模板长度、宽度;R(u,v):求取的匹配结果;(u,v)为待匹配图像的像素点,其中,u为横坐标,v为纵坐标;其中,模板匹配运算具体过程为:求取图像搜索区域中与已知目标模板最相似的子区域位置,依据最小绝对差算法的计算思想,即匹配结果极小值时目标所处的位置,匹配结果越小,则目标区域与已知目标模板越相似;匹配系数越大,则目标区域与已知目标模板差异越大。此外,本专利技术还提供一种用于实时图像识别的串行滤波匹配系统,其包括中值滤波模块以及模板匹配模块;其中,所述中值滤波模块包括:图像数据接口控制模块、图像行缓存模块以及中值滤波运算模块;所述图像数据接口控制模块包括图像接口模块和控制模块,所述图像接口模块用于判断外部图像采集模块发送来的图像数据帧、行同步信号状态,以及图像数据计算器的状态,完成图像数据的接收;所述控制模块用于控制将一帧图像中的数据,按行先后顺序分别存入图像行缓存模块;在中值滤波运算过程采用3×3的二维模板的情况下,控制模块一次将相邻三行图像数据存入图像缓存模块,以供使用;所述图像行缓存模块由多个双口RAM组成,分别用来存储相邻行图像数据;在采用3×3二维模板的中值滤波运算过程中,其中三个相邻的双口RAM在当前读取周期内直接进行读取,剩余的RAM设为缓冲存储RAM,在下一读取周期,前一周期中直接读取的RAM中的后两个RAM与前一周期的缓冲存储RAM中相邻的下一RAM作为下一周期的直接读取的三个RAM,再剩余的RAM作为下一读取周期的缓冲存储,依次递推更换每一周期中直接读取的三个RAM;所述中值滤波运算模块包括行数据读取模块以及滤波运算模块;所述行数据读取模块用于当图像行缓存模块完成相邻三行图像数据的存储后,从图像行缓存模块中并行的读取相邻的三行图像数据,提供给滤波运算模块;所述滤波运算模块用于进行中值滤波运算,得到一行运算后的图像数据存于外围的数据缓存中;其中,中值滤波的具体实现是采结构化的二维滑动模板,利用该模板依次在图像的每个像素点上滑动,在经过每个像素时,将模板内像素按照像素位的大小进行排序,生成单调上升或下降的二维数据,中值滤波输出根据公式(1)来进行:g(x,y)=Med{f(x-k,y-l),(k,l)∈W}(1)式中:(x,y)为待匹配图像的像素点,其中,x为横坐标,y为纵坐标;(k,l)为中值滤波模板中的某一定点,其中,k为横坐标,l为纵坐标;f(x,y):在(x,y)点经过中值滤波前的灰度值;g(x,y):在(x,y)点处经过中值滤波后的灰度值;W:为中值滤波模板。所述模板匹配模块包括时序控制模块和模板匹配子模块;所述时序控制模块用于依据中值滤波后的图像数据的同步信号状态,在图像数据消隐期内,从模板存储器中读取匹配模板并保存在模板缓存中,当图像数据输入有效期时,由模板匹配子模块对图像数据进行缓存处理,然后对匹配模板、缓存图像数据进行模板匹配运算并将运算结果输出;所述模板匹配子模块包括模板缓存、图像数据缓存、模板匹配结果缓存以及模板匹配运算模块;其中,所述模板缓存用于存储一帧已知目标模板图像数据,供模板匹配运算模块使用;所述图像数据缓存用来于存储一帧实时图像数据,供模板匹配运算模块使用;所述模板匹配结果缓存用于存储模板匹配运算结果;所述模板匹配运算模本文档来自技高网...
一种用于实时图像识别的串行滤波匹配方法及系统

【技术保护点】
一种用于实时图像识别的串行滤波匹配方法,其特征在于,所述匹配方法基于串行滤波匹配系统来实施,所述串行滤波匹配系统包括:中值滤波模块以及模板匹配模块;所述中值滤波模块包括图像数据接口控制模块、图像行缓存模块以及中值滤波运算模块;所述图像数据接口控制模块包括图像接口模块和控制模块;所述图像行缓存模块由多个双口RAM组成;所述中值滤波运算模块包括行数据读取模块以及滤波运算模块;所述模板匹配模块包括时序控制模块和模板匹配子模块;所述模板匹配子模块包括模板缓存、图像数据缓存、模板匹配结果缓存以及模板匹配运算模块;所述串行滤波匹配方法包括如下步骤:步骤S1:外部图像采集模块发送来的图像数据帧、行同步信号状态,以及图像数据计算器的状态;步骤S2:图像数据接口控制模块判断所述图像数据帧、行同步信号状态,以及图像数据计算器的状态,完成图像数据的接收;步骤S3:控制模块控制将一帧图像中的数据,按行先后顺序分别存入图像行缓存模块;在中值滤波运算过程采用3×3的二维模板的情况下,控制模块一次将相邻三行图像数据存入图像缓存模块,以供使用;在采用3×3二维模板的中值滤波运算过程中,其中三个相邻的双口RAM在当前读取周期内直接进行读取,剩余的RAM设为缓冲存储RAM,在下一读取周期,前一周期中直接读取的RAM中的后两个RAM与前一周期的缓冲存储RAM中相邻的下一RAM作为下一周期的直接读取的三个RAM,再剩余的RAM作为下一读取周期的缓冲存储,依次递推更换每一周期中直接读取的三个RAM;步骤S4:所述行数据读取模块当图像行缓存模块完成相邻三行图像数据的存储后,从图像行缓存模块中并行的读取相邻的三行图像数据,提供给滤波运算模块;步骤S5:所述滤波运算模块用于进行中值滤波运算,得到一行运算后的图像数据存于外围的数据缓存中;步骤S6:所述时序控制模块依据中值滤波后的图像数据的同步信号状态,在图像数据消隐期内,从模板存储器中读取匹配模板并保存在模板缓存中,在图像数据输入有效期内,由模板匹配子模块对图像数据进行缓存处理,然后对匹配模板、缓存图像数据进行模板匹配运算并将运算结果输出。...

【技术特征摘要】
1.一种用于实时图像识别的串行滤波匹配方法,其特征在于,所述匹配方法基于串行滤波匹配系统来实施,所述串行滤波匹配系统包括:中值滤波模块以及模板匹配模块;所述中值滤波模块包括图像数据接口控制模块、图像行缓存模块以及中值滤波运算模块;所述图像数据接口控制模块包括图像接口模块和控制模块;所述图像行缓存模块由多个双口RAM组成;所述中值滤波运算模块包括行数据读取模块以及滤波运算模块;所述模板匹配模块包括时序控制模块和模板匹配子模块;所述模板匹配子模块包括模板缓存、图像数据缓存、模板匹配结果缓存以及模板匹配运算模块;所述串行滤波匹配方法包括如下步骤:步骤S1:外部图像采集模块采集图像数据帧、行同步信号状态,以及图像数据计算器的状态,并发送至图像数据接口控制模块;步骤S2:图像数据接口控制模块判断所述图像数据帧、行同步信号状态,以及图像数据计算器的状态,完成图像数据的接收;步骤S3:控制模块控制将一帧图像中的数据,按行先后顺序分别存入图像行缓存模块;在中值滤波运算过程采用3×3的二维模板的情况下,控制模块一次将相邻三行图像数据存入图像缓存模块,以供使用;在采用3×3二维模板的中值滤波运算过程中,其中三个相邻的双口RAM在当前读取周期内直接进行读取,剩余的RAM设为缓冲存储RAM,在下一读取周期,前一周期中直接读取的RAM中的后两个RAM与前一周期的缓冲存储RAM中相邻的下一RAM作为下一周期的直接读取的三个RAM,再剩余的RAM作为下一读取周期的缓冲存储,依次递推更换每一周期中直接读取的三个RAM;步骤S4:所述行数据读取模块当图像行缓存模块完成相邻三行图像数据的存储后,从图像行缓存模块中并行的读取相邻的三行图像数据,提供给滤波运算模块;步骤S5:所述滤波运算模块用于进行中值滤波运算,得到一行运算后的图像数据存于外围的数据缓存中;步骤S6:所述时序控制模块依据中值滤波后的图像数据的同步信号状态,在图像数据消隐期内,从模板存储器中读取匹配模板并保存在模板缓存中,在图像数据输入有效期内,由模板匹配子模块对图像数据进行缓存处理,然后对匹配模板、缓存图像数据进行模板匹配运算并将运算结果输出。2.如权利要求1所述的用于实时图像识别的串行滤波匹配方法,其特征在于,所述步骤S5中,中值滤波运算的具体实现是采用结构化的二维滑动模板,利用该模板依次在图像的每个像素点上滑动,在经过每个像素时,将模板内像素按照像素位的大小进行排序,生成单调上升或下降的二维数据,中值滤波输出根据公式(1)来进行:g(x,y)=Med{f(x-k,y-l),(k,l)∈W}(1)式中:(x,y)为待匹配图像的像素点,其中,x为横坐标,y为纵坐标;(k,l)为中值滤波模板中的某一定点,其中,k为横坐标,l为纵坐标;f(x,y):在(x,y)点经过中值滤波前的灰度值;g(x,y):在(x,y)点处经过中值滤波后的灰度值;W:为中值滤波模板。3.如权利要求1所述的用于实时图像识别的串行滤波匹配方法,其特征在于,所述步骤S6中,所述模板匹配运算模块采用最小绝对差算法进行目标模板与实时图像区域的匹配运算,其计算公式如下式(2):式中:fu,v:待匹配图像,fu,v∈S:S为搜索区域;g:已知目标模板;M、N:已知目标模板长度、宽度;R(u,v):求取的匹配结果;(u,v)为待匹配图像的像素点,其中,u为横坐标,v为纵坐标;(j,k)为中值滤波模板中目标模板的某一定点,其中,j为目标模板横坐标,k为目标模板纵坐标;其中,模板匹配运算具体过程为:求取图像搜索区域中与已知目标模板最相似的子区域位置,依据最小绝对差算法的计算思想,即匹配结果极小值时目标所处的位置,匹配结果越小,则目标区域与已知目标模板越相似;匹配结果越大,则目标区域与已知目标模板差异...

【专利技术属性】
技术研发人员:胡旭东张金锁成明伟张雷
申请(专利权)人:中国航天科工集团第三研究院第八三五八研究所
类型:发明
国别省市:

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

1