图像采集和处理系统的制作方法

文档序号:6426587阅读:176来源:国知局
专利名称:图像采集和处理系统的制作方法
技术领域
本发明涉及ー种图像采集和处理系统。
背景技术
现有技术的图像采集和处理系统通常包括图像传感器,图像传感器的控制器单元,图像数据处理単元以及存储器单元。现有技术的图像采集和处理系统大致有以下两种架构方案I :PC(Personal Computer)机软件+传感器的架构。在这种架构中,图像传感器采集前端的图像数据,井上传到PC机,运行在PC机上的软件对图像数据进行处理。方案2 :DSP(Digital Signal Processing) +传感器的架构。在这种架构中,图像·传感器采集前端的图像数据,DSP将采集到的数据进行处理。在以上两种图像采集和处理系统的架构中,方案I和方案2中的图像传感器的控制器単元,图像数据处理単元,存储器単元的控制都是基于软件来实现的,对于数据处理要求不是很高的场合,完全可以胜任。但对于ー些数据处理要求很高且处理的实时性要求很高的场合,基于软件的图像处理已不能满足设计要求。而且方案I属于ー种分离式的系统,一般情况下,从图像数据的采集端到数据处理端之间需要电缆线连接,这样也会増加系统成本。

发明内容
本发明的目的在于提供一种对图像处理模块做优化处理的图像采集和处理系统。ー种图像采集和处理系统,包括图像传感器和现场可编程门阵列电路,所述现场可编程门阵列电路包括嵌入式软核处理器和图像处理模块,所述图像处理模块用于处理所述图像传感器采集的图像数据,所述嵌入式软核处理器用于控制所述图像传感器和所述图像处理模块,所述图像处理模块是硬件描述语言模块,所述图像处理模块以自定义指令的方式嵌入到所述嵌入式软核处理器中。上述图像采集和处理系统优选的一种技术方案,调用DSP_BUilder中的数学运算模块,构建所述图像处理模块的系统级模块,调用DSP_Builder中的SignalCompile模块,将所述系统级的模块转换成RTL级的硬件描述语言模块。上述图像采集和处理系统优选的一种技术方案,所述图像处理模块包括多个功能模块,所述功能模块之间通过Avalon_ST总线连接。上述图像采集和处理系统优选的一种技术方案,图像处理模块包括像素检测模块,坏点插值模块,像素分块模块,像素校正模块,偏置补偿模块,多副图像缓冲模块,计算对比度和相位模块,归ー化处理模块,拟合泽尼克系数模块,传感器位置和波前尼克系数模块,拟合传感器位置模块和波前重构模块,所述图像处理模块包括像素检测模块、坏点插值模块、像素分块模块、像素校正模块、偏置补偿模块、多副图像缓冲模块、计算对比度和相位模块、归ー化处理模块、拟合泽尼克系数模块、传感器位置和波前尼克系数模块依次连接,所述拟合传感器位置模块连接于所述归ー化处理模块和拟合泽尼克系数模块之间,所述波前重构模块连接于所述拟合泽尼克系数模块、所述传感器位置和波前尼克系数模块之间。上述图像采集和处理系统优选的一种技术方案,所述嵌入式软核处理器包括算木逻辑单元和自定义指令调用模块,所述算术逻辑单元对所述嵌入式软核处理器的标准指令进行算术逻辑运算,所述自定义指令调用模块调用用户自己建立的硬件逻辑对所述嵌入式软核处理器的自定义指令进行运算。上述图像采集和处理系统优选的一种技术方案,所述自定义指令包括驱动文件、功能文件以及Avalon接ロ,所述驱动文件由用户自行编写,所述功能文件由DSP_BuiIder工具以及其提供的数字信号处理完成,所述Avalon接ロ由S0PC_Builder工具生成。上述图像采集和处理系统优选的一种技术方案,所述现场可编程门阵列电路还包括多个功能模块,所述功能模块与所述嵌入式软核处理器之间通过Avalon_MM总线连接。上述图像采集和处理系统优选的一种技术方案,所述现场可编程门阵列电路还包 括以太网接ロ控制器,所述嵌入式软核处理器通过所述以太网接ロ控制器接收工作站发送的扫描指令和參数,所述图像处理模块对图像数据的运算结果通过所述以太网接ロ控制器上传到工作站。上述图像采集和处理系统优选的一种技术方案,所述现场可编程门阵列电路还包括图像控制器,用于根据所述嵌入式软核处理器发送的指令驱动所述图像传感器 ,第一计数器,所述第一计数器计数完毕,所述图像传感器完成一行图像数据的采集;第二计数器,所述第二计数器计数完毕,所述图像传感器完成一幅图像数据的采集。上述图像采集和处理系统优选的一种技术方案,所述图像采集和处理系统还包括静态随机存取存储器和Flash存储器,所述静态随机存取存储器用于存放图像数据和系统运行软件,所述Flash存储器用于存储所述系统运行软件编译后的文件。与现有技术相比,本发明的图像采集和处理系统同时采用了 Avalon_MM总线和Avalon_ST总线两种数据传输架构,所述图像处理模块的内部功能模块采用Avalon_ST总线数据交换架构,而系统中的功能模块间采用Avalon_MM总线传输架构,充分的体现了控制通路和数据通路分离的原则,发挥了两类片上总线的优势。图像处理模块的系统级的功能模块搭建完成后将其作为ー个自定义指令嵌入到所述嵌入式软核处理器中,以被软件调用,本发明的图像采集和处理系统的性能有了很大的提高。


图I是本发明的图像采集和处理系统的结构框图。图2是图I所示的图像处理模块的结构示意图。图3是图I所示的嵌入式软核处理器的示意图。
具体实施例方式本发明涉及一种基于FPGA的图像采集和图像处理的片上系统。FPGA作为片上系统的ー个可编程平台,系统功能由基于嵌入式软核处理器上运行的软件和FPGA的硬件资源实现。嵌入式软核处理器上运行的软件主要实现系统中各个模块间数据流的控制和简单的数据处理。在本发明的图像采集和处理系统中,将图像处理模块以自定义指令的方式嵌入到嵌入式软核处理器中以达到硬件加速目的,充分发挥了嵌入式软核处理器的优势。利用嵌入式软核处理器的硬件加速功能和两种片上总线Avalon-MM和Avalon-ST总线的各自优势,在一个系统中,根据不同模块的功能,采用两种总线结构,以达到优化系统功能的目的。为使本发明的目的、技术方案和优点更加清楚,下面结合附图对本发明作进ー步的详细描述。请參阅图1,图I是本发明的图像采集和处理系统的结构框图。所述图像采集和处理系统包括flash存储器2、现场可编程门阵列电路3、静态随机存取存储器(SRAM)4以及图像传感器5。系统的软件通过编译后存储在所述Flash存储器2中。所述静态随机存取存储器4划分成两个部分,分别存放系统运行的软件和图像数据。所述图像传感器5通过PCB布线与现场可编程门阵列电路3相连,所述现场可编程门阵列电路3将输入的图像数据存入静态随机存取存储器4中,PCB板上的所述现场可编程门阵列电路3同时还与所述Flash存储器2相连接,所述Flash存储器2中储存的程序指令数据供所述现场可编程门阵列电路3使用。当现场可编程门阵列电路3上电后,系统软件由Flash存储器2中映射到静态随机存取存储器4中。优选的,所述图像传感器5可以选择Star250图像传感器, 所述图像传感器5的像素分辨率为512*512,所述图像传感器5内部集成模数转换器,可输出IObits的数字信号。所述现场可编程门阵列电路3包括配置接ロ控制器31、Flash控制32、以太网接ロ控制器33、JTAG控制器34、嵌入式软核处理器35、图像缓存模块36、图像控制器37、SRAM控制器38、第一计数器39、第二计数器30、片上Avalon_MM总线310、三态桥311以及图像处理模块312。优选的,所述嵌入式软核处理器35是Nios II软核处理器,所述图像控制器37和图像处理模块312根据设计者自己定义和设计。具体的,所述图像控制器37基于QuartusII开发平台构建;在S0PC_Builder工具中,添加所述嵌入式软核处理器35、所述图像缓存模块36、所述SRAM控制器38、所述第一计数器39、所述第二计数器30、所述配置接ロ控制器31、Flash控制器32、所述以太网接ロ控制器33、所述JTAG控制器34、所述三态桥311,并添加系统时钟。所述现场可编程门阵列电路3的各个功能模块通过Avalon_MM总线310互联。Avalon_MM总线分为主接口和从接ロ,读写控制操作都是由主接ロ发起指令,从接ロ被动的接收指令,和一般的总线操作类似,主要完成系统的控制功能。所述现场可编程门阵列电路3的功能模块通过S0PC_BuiIder自动互连后,系统自动设置这些模块接ロ的基地址和偏移地址,然后根据设计需求,自己设定复位地址和异常地址。所述嵌入式软核处理器35的开发和设计方案与通用的芯片开发方案完全不一样,整个系统的构建采用片上可编程技术实现。所述嵌入式软核处理器35包括六类接ロ,分别为时钟接ロ、数据接ロ、指令接ロ、中断接ロ、JTAG接ロ以及自定义接ロ。所述JTAG接ロ与所述JTAG控制器34通过Avalon_MM总线310相连。所述嵌入式软核处理器35用于对所述图像采集和处理系统的各模块间数据流的控制和简单的数据处理。所述以太网接ロ控制器33与工作站I相连,所述以太网接ロ控制器33还经由三态桥311与Avalon_MM总线310相连。所述现场可编程门阵列电路3通过所述以太网接ロ控制器33实现与工作站I的通信。具体的,所述嵌入式软核处理器35通过所述以太网接ロ控制器33接收工作I发送的扫描指令和參数,所述图像处理模块312对图像数据的运算结果通过所述以太网接ロ控制器33上传到工作站1,工作站I根据接收到的数据及时调整扫描參数。所述Flash控制器32与所述flash存储器2连接,所述Flash控制32还经由三态桥311与Avalon_MM总线310相连。所述SRAM控制器38与所述静态随机存取存储器4连接,所述SRAM控制器38还经由三态桥311与Avalon_MM总线310相连。所述第一计数器39、第二计数器30与所述Avalon_MM总线310相连,当所述第一计数器39计数完毕后,所述图像传感器35完成一行图像数据的采集;当所述第二计数器30计数完毕后,所述图像传感器35完成一幅图像数据的采集。所述图像控制器37用于根据所述嵌入式软核处理器35发送的指令驱动所述图像传感器35,所述图像控制器37与所述Avalon_MM总线310相连。所述述图像传感器5与所述Avalon_MM总线310之间还连接图像缓冲模块36,优选的,所述图像缓冲模块36为FIFO (First In,First Out)图像缓冲模块。所述图像处理模块312用于处理所述图像传感器5采集的图像数据,所述图像处理模块312是硬件描述语言模块,所述图像处理模块312以自定义指令的方式嵌入到所述嵌入式软核处理器35中。所述图像处理模块312从静态随机存取存储器4中读取ー副图 像数据并进行相应的数学运算,由于运算数据量较大,因此,将所述图像处理模块312作为ー个自定义指令内嵌到所述嵌入式软核处理器35中,在所述嵌入式软核处理器35上运行的软件可以直接调用所述图像处理模块312,完成复杂的图像算法。本发明的图像采集和处理系统的运行原理如下当工作站I通过以太网发送扫描指令和參数时,运行在所述嵌入式软核处理器35的软件通过所述以太网控制器33接收扫描数据,并对其进行译码和相应的数据处理。由于此处的数据处理量不大,利用基于所述嵌入式软核处理器35的软件即可完成。所述嵌入式软核处理器35将处理完后的扫描数据通过Avalon_MM总线310发送给所述图像控制器37。所述图像控制器37根据接收到的扫描指令驱动所述图像传感器5,当所述图像传感器5上传图像数据时,毎次上传一行图像数据,根据每行的行同步信号启动所述第一计数器39,当所述第一计数器计数39计数到511吋,即完成了一行图像数据的采集。将每一行图像数据写入所述静态随机存取存储器4中,此时第一计数器计数39清零并重新计数,所述第二计数器计数30中的计数增加I。每当所述第一计数器计数39计数到511时,所述第二计数器计数30中的计数便増加1,因此,当所述第二计数器计数30计数到511时,完成一幅图像的采集,所述整幅图像的数据也就储存在所述静态随机存取存储器4中。一幅图像采集完毕后,从静态随机存取存储器4中读取数据,并送到图像处理模块312中,对图像数据进行相应的数学运算,运算后的结果通过所述以太网控制器33上传到工作站1,工作站I根据接收到的数据及时调整扫描參数。请參阅图2,图2是图I所示的图像处理模块的结构示意图。所述图像处理模块312包括像素检测模块410,坏点插值模块411,像素分块模块412,像素校正模块413,偏置补偿模块414,多幅图像缓冲模块415,计算对比度和相位模块416,归ー化处理模块417,拟合泽尼克系数模块418,传感器位置和波前尼克系数模块419,拟合传感器位置模块420和波前重构模块421。所述像素检测模块410、坏点插值模块411、像素分块模块412、像素校正模块413、偏置补偿模块414、多幅图像缓冲模块415、计算对比度和相位模块416、归ー化处理模块417、拟合泽尼克系数模块418、传感器位置和波前尼克系数模块419依次连接,所述拟合传感器位置模块420连接于所述归ー化处理模块417、拟合泽尼克系数模块418之间。所述波前重构模块421连接于所述拟合泽尼克系数模块418、传感器位置和波前尼克系数模块419之间。所述图像处理模块312的各功能模块通过Avalon_ST总线422互联。由于图像处理模块312中,内部各功能模块之间是高速率的数据流,而且是点到点的数据流,所以图像处理模块315的内部功能模块之间完全可以采用Avalon_ST总线422互连,从而实现了高效的数据接ロ。Avalon_ST总线是专门实现高数据流的ー种交互架构,它提供的数据接ロ较少,只需简单的握手信号就可完成数据的收发,主要是用于点到点的数据流接ロ,更多的用在高数据通过率的模块间。本发明的图像处理模块312的内部各功能模块采用Avalon_ST总线互联,因此,本发明的图像采集和处理系统的数据处理能力和实时性有大大的提高。所述图像处理模块312的功能实现,如果靠设计者用硬件描述语言实现图像数据处理的功能,是ー项非常困难且耗时间的事情,因此,本发明利用DSP_Bu i I der和Mat I abエ具来实现相应的功能。DSP_BuiIder是专门用于实现复杂DSP的ー款工具,设计者可以利用DSP_Builder和Matlab工具构建系统级的DSP系统。在Matlab/Simulink环境中,调用 DSP_Builder中数学运算模块,构建图像处理模块312的系统级模块,利用Matlab强大的仿真功能完成系统的功能仿真,如果功能正确,调用DSP_Builder中的SignalCompile模块,将系统级的模块转换成相应RTL级的硬件描述语言模块。由于图像处理模块312涉及到大量复杂的数学运算,本发明的图像采集和处理系统应用嵌入式软核处理器35自定义指令的方式来实现硬件加速。自定义用户指令实质上就是让嵌入式软核处理器35实现由硬件逻辑电路实现的某种功能。所述硬件逻辑电路连接到所述嵌入式软核处理器35的算木逻辑单元351上。对于所述嵌入式软核处理器35的标准指令,所述嵌入式软核处理器35使用算木逻辑单元351来完成相应的算术逻辑操作;对于自定义指令,则由自定义指令调用模块350调用用户自己建立的硬件逻辑来完成运算,如图3所示。具体的,在DSP_Builder构建图像处理功能的基础上,按照自定义指令设计的要求,把构建的图像处理功能模块设置成自定义指令,S0PC_Builder工具会自动将图像处理模块集成到嵌入式软核处理器35中。所述自定义指令包括驱动文件、功能文件以及Avalon接ロ,所述驱动文件由用户自行编写,以便嵌入式软核处理器35能访问此模块。所述功能文件由DSP_Builder工具以及其提供的数字信号处理完成,所述Avalon接ロ由S0PC_Builder工具生成。通过S0PC_Builder编译整个系统后,在生成的system, h文件中,关于图像处理模块312的宏定义如下#define ALT_IMAGE_PROCECESS_CUSTOM_INSTRUCTION_N 0X00000000.#define ALT_IMAGE_PROCECESS_CUSTOM_INSTRUCTION(A, B)_builtin_custom_inii.通过编写驱动文件并根据system, h文件中的寄存器来访问自定义的图像处理模块 312。本发明的图像采集和处理系统应用嵌入式软核处理器35自定义指令,自定义指令是基于嵌入式软核处理器35片上可编程系统的ー个重要特征。嵌入式软核处理器35自定义指令扩展了 CPU的指令集,提高对时间要求严格的软件运行速度,因此提高了系统的整体性能。将图像处理模块312以自定义的指令嵌入到嵌入式软核处理器35中,可以实现传统处理器无法达到的最佳性能。在对数据处理速度要求比较高的场合,把由标准指令序列实现的核心功能变成由一条用户定制的指令来实现,这样可以明显提高软件的执行效率。基于硬件处理模块的自定义指令可通过单个时钟周期或多个时钟周期的硬件算法操作完成原本十分复杂的处理任务。与现有技术相比,本发明的图像采集和处理系统中,将图像处理模块312作为嵌入式软核处理器35内部指令以达到硬件加速目的,充分发挥了嵌入式软核处理器35的优势。自定义指令是将ー个功能模块用硬件来实现,并将此硬件嵌入到嵌入式软核处理器35内部作为ー个指令来使用,这样的ー种自定义指令的方式对于系统硬件资源的复用以及产品的灵活性都有着非常大好处,进ー步的,本发明的图像采集和处理系统同时采用了 Avalon_MM总线和Avalon_ST总线两种数据传输架构,即所述图像处理模块312的内部功能模块采用Avalon_ST总线数据交换架构,而系统中的功能模块间采用Avalon_MM总线传输架构,充分的体现了控制 通路和数据通路分离的原则,充分的发挥了两类片上总线的优势。本发明以DSP_BUilder和Matlab/Simulink为平台,通过DSP_Builder和Matlab/Simulink提供的基本数据处理模块(FFT,滤波模块,Avalon_ST模块)构建图像处理模块的功能和仿真,图像处理模块的系统级的功能模块搭建完成后并将其作为ー个自定义指令嵌入到所述嵌入式软核处理器中,以被软件调用,本发明的图像采集和处理系统的性能有了很大的提高。本发明的图像采集和处理系统基于FPGA的片上可编程系统实现图像数据的采集和处理,具有设计周期短,设计人员可以将大量的时间花在系统建模上,而不必为系统的细节设计花太多时间。SOPC系统具有可编程,模块升级容易,通过DSP_BuiIder自动将各个模块互连起来,用户也可以自己设定中断优先级,异常复位地址,中断地址。在数据处理要求比较高的场合,可以通过自定义指令,硬件加速等手段来实现硬件加速,从而很好的满足系统设计要求。在不偏离本发明的精神和范围的情况下还可以构成许多有很大差别的实施例。应当理解,除了如所附的权利要求所限定的,本发明并不限于在说明书中所述的具体实施例。
权利要求
1.一种图像采集和处理系统,包括图像传感器和现场可编程门阵列电路,所述现场可编程门阵列电路包括嵌入式软核处理器和图像处理模块,所述图像处理模块用于处理所述图像传感器采集的图像数据,所述嵌入式软核处理器用于控制所述图像传感器和所述图像处理模块,其特征在于,所述图像处理模块是硬件描述语言模块,所述图像处理模块以自定义指令的方式嵌入到所述嵌入式软核处理器中。
2.如权利要求I所述的图像采集和处理系统,其特征在于,调用DSP_BUilder中的数学运算模块,构建所述图像处理模块的系统级模块,调用DSP_Builder中的SignalCompile模块,将所述系统级的模块转换成RTL级的硬件描述语言模块。
3.如权利要求I所述的图像采集和处理系统,其特征在于,所述图像处理模块包括多个功能模块,所述功能模块之间通过Avalon_ST总线连接。
4.如权利要求3所述的图像采集和处理系统,其特征在于,所述图像处理模块包括像素检测模块、坏点插值模块、像素分块模块、像素校正模块、偏置补偿模块、多副图像缓冲模块、计算对比度和相位模块、归一化处理模块、拟合泽尼克系数模块、传感器位置和波前尼克系数模块、拟合传感器位置模块和波前重构模块,所述图像处理模块包括像素检测模块、坏点插值模块、像素分块模块、像素校正模块、偏置补偿模块、多副图像缓冲模块、计算对比度和相位模块、归一化处理模块、拟合泽尼克系数模块、传感器位置和波前尼克系数模块依次连接,所述拟合传感器位置模块连接于所述归一化处理模块和拟合泽尼克系数模块之间,所述波前重构模块连接于所述拟合泽尼克系数模块、所述传感器位置和波前尼克系数模块之间。
5.如权利要求I所述的图像采集和处理系统,其特征在于,所述嵌入式软核处理器包括算术逻辑单元和自定义指令调用模块,所述算术逻辑单元对所述嵌入式软核处理器的标准指令进行算术逻辑运算,所述自定义指令调用模块调用用户自己建立的硬件逻辑对所述嵌入式软核处理器的自定义指令进行运算。
6.如权利要求I所述的图像采集和处理系统,其特征在于,所述自定义指令包括驱动文件、功能文件以及Avalon接口,所述驱动文件由用户自行编写,所述功能文件由DSP_Builder工具以及其提供的数字信号处理完成,所述Avalon接口由SOPC_Builder工具生成。
7.如权利要求I所述的图像采集和处理系统,其特征在于,所述现场可编程门阵列电路还包括多个功能模块,所述功能模块与所述嵌入式软核处理器之间通过Avalon_MM总线连接。
8.如权利要求7所述的图像采集和处理系统,其特征在于,所述现场可编程门阵列电路还包括以太网接口控制器,所述嵌入式软核处理器通过所述以太网接口控制器接收工作站发送的扫描指令和参数,所述图像处理模块对图像数据的运算结果通过所述以太网接口控制器上传到工作站。
9.如权利要求8所述的图像采集和处理系统,其特征在于,所述现场可编程门阵列电路还包括 图像控制器,用于根据所述嵌入式软核处理器发送的指令驱动所述图像传感器; 第一计数器,所述第一计数器计数完毕,所述图像传感器完成一行图像数据的采集; 第二计数器,所述第二计数器计数完毕,所述图像传感器完成一幅图像数据的采集。
10.如权利要求I所述的图像采集和处理系统,其特征在于,所述图像采集和处理系统还包括静态随机存取存储器和Flash存储器,所述静态随机存取存储器用于存放图像数据和系统运行软件,所述Flash存储器用于存储所述系统运行软件编译后的文件。
全文摘要
本发明涉及一种图像采集和处理系统,包括图像传感器和现场可编程门阵列电路,所述现场可编程门阵列电路包括嵌入式软核处理器和图像处理模块,所述图像处理模块用于处理所述图像传感器采集的图像数据,所述嵌入式软核处理器用于控制所述图像传感器和所述图像处理模块,所述图像处理模块是硬件描述语言模块,所述图像处理模块以自定义指令的方式嵌入到所述嵌入式软核处理器中。本发明的系统用嵌入式软核处理器的硬件加速功能和两种片上总线Avalon-MM和Avalon-ST总线的各自优势,在一个系统中,根据不同模块的功能,采用两种总线结构,以达到优化系统功能的目的。
文档编号G06T1/00GK102831572SQ20111016498
公开日2012年12月19日 申请日期2011年6月17日 优先权日2011年6月17日
发明者詹毕旺, 罗闻, 孙智超, 相恒伟 申请人:上海微电子装备有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1