CN104363373B - 一种基于NiosII的红外图像自动调焦系统及方法 - Google Patents
一种基于NiosII的红外图像自动调焦系统及方法 Download PDFInfo
- Publication number
- CN104363373B CN104363373B CN201410623422.4A CN201410623422A CN104363373B CN 104363373 B CN104363373 B CN 104363373B CN 201410623422 A CN201410623422 A CN 201410623422A CN 104363373 B CN104363373 B CN 104363373B
- Authority
- CN
- China
- Prior art keywords
- motor
- infrared image
- cpu2
- niosii
- automatic focusing
- 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
Links
Landscapes
- Automatic Focus Adjustment (AREA)
- Studio Devices (AREA)
- Focusing (AREA)
Abstract
本发明涉及一种基于NiosII的红外图像自动调焦系统及方法,属于红外图像处理技术领域。本发明通过FPGA构造Nios双核CPU处理器,一个CPU作为红外图像处理单元,用于完成图像清晰度variance评价函数的计算和上位机串口通信,另一个CPU作为控制单元,挂接PWM模块和电机侧模块,用于完成电机的控制,两个CPU间通过mailbox完成通信,本发明所构造的Nios双核系统,能够同时满足红外图像处理与电机控制的系统需求,具有体积小、功耗低以及成本低的优点,具有很强的工程实用价值。
Description
技术领域
本发明涉及一种基于NiosII的红外图像自动调焦系统及方法,属于红外图像处理技术领域。
背景技术
基于图像处理的红外自动调焦方法需要红外图像处理单元与电机控制单元相结合,由红外图像处理单元完成图像清晰度评价函数的计算和电机控制单元完成电机的运行控制,两个处理单元通过串口通信等方式完成两个功能单元间的信息交互,这种架构下红外图像处理电路单元与控制单元分离、占用的空间大,信息交互复杂,不利于图像计算与电机控制的协同工作。
发明内容
本发明的目的是提供一种基于NiosII的红外图像自动调焦系统及方法,以解决现有红外图像处理电路单元与控制单元分离所造成的
本发明为解决上述技术问题而提供一种基于NiosII的红外图像自动调焦系统,该调焦系统包括电机以及由FPGA配置的Nios软核双CPU处理器和IP软核,所述一个CPU处理器作为红外图像处理单元,用于完成图像清晰度variance评价函数的计算和上位机串口通信,另一个CPU处理器作为控制单元,挂接IP软核,用于完成电机的控制。
所述IP软核包括PWM模块和电机测速模块,所述PWM模块包含定制的PWM波形生成和电机方向控制,所述测速模块用于根据光栅信号的周期计算出电机的转速。
所述两个CPU处理器之间通过两路邮箱内核mailbox组件发送消息,一路用来传送调焦开始和调焦步长的命令信号,另一路用来传送电机的运行状态和位置信息。
所述自动调焦系统还包括SDRAM、FLASH和UART,SDRAM、FLASH和UART通过Avalon总线与Nios软核双CPU处理器通信连接。
所述的SDRAM用于运行图像处理软件和控制软件以及存放图像数据;所述FLASH用于存储图像处理软件和控制软件代码;所述UART用于连接上位机的通讯接口。
本发明为解决上述技术问题还提供了一种基于NiosII的红外图像自动调焦方法,该自动调焦方法采用FPGA配置Nios软核双CPU处理器和IP软核,CPU1处理器作为红外图像处理单元,用于完成图像清晰度variance评价函数的计算和上位机串口通信,CPU2处理器作为控制单元,挂接IP软核,用于完成电机的控制,具体的调焦过程如下:
1)CPU1根据收到的调焦命令通过mailbox向CPU2发送调焦信息,CPU2根据焦距位置信息控制电机向距离电机当前位置最近的极限位置运动;
2)cpu2控制电机运行至行程的极限位置后,停止运动;
3)cpu2控制电机按设定步距每步一动,每步停止后,cpu2通过mailbox向cpu1发送到位标志和焦距位置信息,cpu1采集各位置的一帧图像数据;
4)CPU1根据采集到各帧图像数据计算其variance清晰度评价函数值f(n),并比较每步采集图像对应的f(n),保留其中的最大值;
5)当f(n)连续2次小于最大值的时候,cpu1向cpu2发送命令,由cpu2控制电机停止,并开始向相反方向运行,若电机运行至极限位置,f(n)仍未满足连续2次小于最大值的条件,则cpu2控制电机停止,本次调焦结束并向cpu1发送当前状态和焦距信息。
所述调焦过程中若没有找到满足条件的焦距位置,则还需进行如下调焦:
A)CPU2控制电机以减半的步距向相反方向运行,控制电机每步一动,每步停止后,CPU2向CPU1发送到位标志和焦距位置信息,CPU1采集各位置的一帧图像数据;
B)cpu1根据采集到的各帧图像数据,计算其variance清晰度评价函数值f(n),比较每步采集图像对应的f(n),记录f(n)的最大值的电机位置,控制电机运行至该位置后停止运动,本次调焦结束,该位置即为成像最清晰位置。
所述variance清晰度评价函数的计算公式如下:
其中I(x,y)为每一个像素的灰度值,μ为整幅图像灰度值的均值,f(n)为每帧图像的清晰度评价函数值。
所述两个CPU处理器之间通过两路邮箱内核mailbox组件发送消息,一路用来传送调焦开始和调焦步长的命令信号,另一路用来传送电机的运行状态和位置信息。
所述IP软核包括PWM模块和电机测速模块,所述PWM模块包含定制的PWM波形生成和电机方向控制,所述测速模块用于根据光栅信号的周期计算出电机的转速。
本发明的有益效果是:本发明通过FPGA构造Nios双核CPU处理器,一个CPU作为红外图像处理单元,用于完成图像清晰度variance评价函数的计算和上位机串口通信,另一个CPU作为控制单元,挂接PWM模块和电机侧模块,用于完成电机的控制,两个CPU间通过mailbox完成通信,本发明所构造的Nios双核系统,能够同时满足红外图像处理与电机控制的系统需求,具有体积小、功耗低以及成本低的优点,具有很强的工程实用价值。
附图说明
图1是本发明基于NiosII的红外图像自动调焦系统的结构框图。
具体实施方式
下面结合附图对本发明的具体实施方式作进一步的说明。
本发明的一种基于NiosII的红外图像自动调焦系统的实施例
如图1所示,本发明的NiosII的红外图像自动调焦系统包括FPGA芯片、SDRAM、FLASH和UART,FPGA芯片用于通过配置Nios软核双cpu处理器和IP软核来构成该嵌入式系统的接口功能模块,实现对外围SDRAM、FLASH、电机等硬件的控制,通过mailbox完成两个处理器间的通信。SDRAM用于运行图像处理软件和控制软件,存放图像数据;FLASH用于存储图像处理软件和控制软件代码;UART用于与上位机的通讯接口。
FPGA芯片通过SOPC Builder构建软核模块包括NIOS软核双CPU处理器和IP软核,其中NIOS软核双CPU处理器包括CPU1和CPU2,CPU1主要负责完成图像清晰度variance评价函数的计算和上位机串口通信,并于CPU2共享SDRAM和FLASH,CPU2挂接PWM模块和电机测速模块的IP软核,用于完成电机PID闭环控制。CPU1和CPU2通过Avalon总线与片上资源和外设交换数据,Avalon总线上挂接两路邮箱内核mailbox组件在两个处理器之间发送消息,其中一路用来传送CPU1给CPU2的调焦开始、调焦步长等命令,另一路用来传送CPU2给CPU1当前电机运行状态、位置等信息。
IP软核包括PWM模块和测速模块,其中PWM模块包含定制的PWM波形生成和电机方向控制,PWM波形生成通过编写Verilog代码,经过仿真、编译、生成系统中自定制PWM模块,电机方向通过PIO信号控制;测速模块利用基频的周期来计算光栅信号的周期,根据周期计算出直流电机的转速,其构建方式同PWM模块。
该系统的调焦过程如下:
1.cpu1收到上位机的自动调焦命令后,通过mailbox向cpu2发送开始调焦信息,根据cpu2根据焦距位置信息,控制电机向距离电机当前位置最近的极限位置运动;
2.cpu2控制电机运行至行程的极限位置后,停止运动;
3.cpu2控制电机按大步距每步一动,每步停止后,cpu2通过mailbox向cpu1发送到位标志和焦距位置信息,cpu1采集一帧图像数据;
4.由cpu1根据采集到的一帧图像数据,计算其variance清晰度评价函数值,公式为式中I(x,y)为每一个像素的灰度值,μ为整幅图像灰度值的均值,f(n)为每帧图像的清晰度评价函数值;
5.比较步骤4中每步采集图像对应的f(n),保留f(n)的最大值,当f(n)连续2次小于最大值的时候,cpu1通过mailbox向cpu2发送命令,由cpu2控制电机停止,并开始向相反方向运行;若电机运行至极限位置,f(n)仍未满足连续2次小于最大值的条件,则cpu2控制电机停止,本次调焦结束并向cpu1发送当前状态和焦距信息;
6.cpu2控制电机以减半的步距向相反方向运行,控制电机每步一动,每步停止后,cpu2通过mailbox向cpu1发送到位标志和焦距位置信息,cpu1采集一帧图像数据;
7.cpu1根据采集到的一帧图像数据,计算其variance清晰度评价函数值,比较步骤7中每步采集图像对应的f(n),记录f(n)的最大值的电机位置,控制电机运行至该位置后停止运动,本次调焦结束,该位置即为成像最清晰位置。
本发明的一种基于NIOSII的红外图像自动调焦方法的实施例
本实施中的基于NiosII红外图像自动调焦方法采用Nios双核CPU处理器,该Nios双核CPU处理器由FPGA通过SOPC Builder配置而成,如图1所示,本发明的NiosII的红外图像自动调焦系统包括FPGA芯片、SDRAM、FLASH和UART,FPGA芯片用于通过配置Nios软核双cpu处理器和IP软核来构成该嵌入式系统的接口功能模块,实现对外围SDRAM、FLASH、电机等硬件的控制,通过mailbox完成两个处理器间的通信。SDRAM用于运行图像处理软件和控制软件,存放图像数据;FLASH用于存储图像处理软件和控制软件代码;UART用于与上位机的通讯接口。
FPGA芯片通过SOPC Builder构建软核模块包括NIOS软核双CPU处理器和IP软核,其中NIOS软核双CPU处理器包括CPU1和CPU2,CPU1主要负责完成图像清晰度variance评价函数的计算和上位机串口通信,并于CPU2共享SDRAM和FLASH,CPU2挂接PWM模块和电机测速模块的IP软核,用于完成电机PID闭环控制。CPU1和CPU2通过Avalon总线与片上资源和外设交换数据,Avalon总线上挂接两路邮箱内核mailbox组件在两个处理器之间发送消息,其中一路用来传送CPU1给CPU2的调焦开始、调焦步长等命令,另一路用来传送CPU2给CPU1当前电机运行状态、位置等信息。
IP软核包括PWM模块和测速模块,其中PWM模块包含定制的PWM波形生成和电机方向控制,PWM波形生成通过编写Verilog代码,经过仿真、编译、生成系统中自定制PWM模块,电机方向通过PIO信号控制;测速模块利用基频的周期来计算光栅信号的周期,根据周期计算出直流电机的转速,其构建方式同PWM模块。
该方法的具体调焦过程如下:
1.cpu1收到上位机的自动调焦命令后,通过mailbox向cpu2发送开始调焦信息,根据cpu2测量焦距的位置信息,控制电机向距离电机当前位置最近的极限位置运动。
2.cpu2控制电机运行至行程的极限位置后,停止运动。
3.cpu2控制电机按大步距每步一动,每步停止后,cpu2通过mailbox向cpu1发送到位标志和焦距位置信息,cpu1采集各位置处的一帧图像数据。
4.由cpu1根据采集到的各帧图像数据,计算其variance清晰度评价函数值,公式为式中I(x,y)为每一个像素的灰度值,μ为整幅图像灰度值的均值,f(n)为每帧图像的清晰度评价函数值。
5.比较步骤4中每步采集图像对应的f(n),保留f(n)的最大值,当f(n)连续2次小于最大值的时候,cpu1通过mailbox向cpu2发送命令,由cpu2控制电机停止,并开始向相反方向运行;若电机运行至极限位置,f(n)仍未满足连续2次小于最大值的条件,则cpu2控制电机停止,本次调焦结束并向cpu1发送当前状态和焦距信息。
6.cpu2控制电机以减半的步距向相反方向运行,控制电机每步一动,每步停止后,cpu2通过mailbox向cpu1发送到位标志和焦距位置信息,cpu1采集一帧图像数据。
7.cpu1根据采集到的一帧图像数据,计算其variance清晰度评价函数值,比较步骤7中每步采集图像对应的f(n),记录f(n)的最大值的电机位置,控制电机运行至该位置后停止运动,本次调焦结束,该位置即为成像最清晰位置。
Claims (10)
1.一种基于NiosII的红外图像自动调焦方法,其特征在于,该自动调焦方法采用FPGA配置Nios软核双CPU处理器和IP软核,一个CPU处理器作为红外图像处理单元,用于完成图像清晰度variance评价函数的计算和上位机串口通信,另一个CPU处理器作为控制单元,挂接IP软核,用于完成电机的控制,具体的调焦过程如下:
1)CPU1根据收到的调焦命令通过mailbox向CPU2发送调焦信息,CPU2根据焦距位置信息控制电机向距离电机当前位置最近的极限位置运动;
2)CPU2控制电机运行至行程的极限位置后,停止运动;
3)CPU2控制电机按设定步距每步一动,每步停止后,CPU2通过mailbox向CPU1发送到位标志和焦距位置信息,CPU1采集各位置的一帧图像数据;
4)CPU1根据采集到各帧图像数据计算其variance清晰度评价函数值f(n),并比较每步采集图像对应的f(n),保留其中的最大值;
5)当f(n)连续2次小于最大值的时候,CPU1向CPU2发送命令,由CPU2控制电机停止,并开始向相反方向运行,若电机运行至极限位置,f(n)仍未满足连续2次小于最大值的条件,则CPU2控制电机停止,本次调焦结束并向CPU1发送当前状态和焦距信息。
2.根据权利要求1所述的基于NiosII的红外图像自动调焦方法,其特征在于,所述调焦过程中若没有找到满足条件的焦距位置,则还需进行如下调焦:
A)CPU2控制电机以减半的步距向相反方向运行,控制电机每步一动,每步停止后,CPU2向CPU1发送到位标志和焦距位置信息,CPU1采集各位置的一帧图像数据;
B)CPU1根据采集到的各帧图像数据,计算其variance清晰度评价函数值f(n),比较每步采集图像对应的f(n),记录f(n)的最大值的电机位置,控制电机运行至该位置后停止运动,本次调焦结束,该位置即为成像最清晰位置。
3.根据权利要求2所述的基于NiosII的红外图像自动调焦方法,其特征在于,所述variance清晰度评价函数的计算公式如下:
其中I(x,y)为每一个像素的灰度值,μ为整幅图像灰度值的均值,f(n)为每帧图像的清晰度评价函数值。
4.根据权利要求3所述的基于NiosII的红外图像自动调焦方法,其特征在于,所述双CPU处理器之间通过两路邮箱内核mailbox组件发送消息,一路用来传送调焦开始和调焦步长的命令信号,另一路用来传送电机的运行状态和位置信息。
5.根据权利要求1所述的基于NiosII的红外图像自动调焦方法,其特征在于,所述IP软核包括PWM模块和电机测速模块,所述PWM模块包含定制的PWM波形生成和电机方向控制,所述测速模块用于根据光栅信号的周期计算出电机的转速。
6.一种用于实施权利要求1所述的NiosII的红外图像自动调焦方法的自动调焦系统,其特征在于,该调焦系统包括电机以及由FPGA配置的Nios软核双CPU处理器和IP软核,所述双CPU处理器中的一个CPU处理器作为红外图像处理单元,用于完成图像清晰度variance评价函数的计算和上位机串口通信,另一个CPU处理器作为控制单元,挂接IP软核,用于完成电机的控制。
7.根据权利要求6所述的基于NiosII的红外图像自动调焦系统,其特征在于,所述IP软核包括PWM模块和电机测速模块,所述PWM模块包含定制的PWM波形生成和电机方向控制,所述测速模块用于根据光栅信号的周期计算出电机的转速。
8.根据权利要求7所述的基于NiosII的红外图像自动调焦系统,其特征在于,所述双CPU处理器之间通过两路邮箱内核mailbox组件发送消息,一路用来传送调焦开始和调焦步长的命令信号,另一路用来传送电机的运行状态和位置信息。
9.根据权利要求8所述的基于NiosII的红外图像自动调焦系统,其特征在于,所述自动调焦系统还包括SDRAM、FLASH和UART,SDRAM、FLASH和UART通过Avalon总线与Nios软核双CPU处理器通信连接。
10.根据权利要求9所述的基于NiosII的红外图像自动调焦系统,其特征在于,所述的SDRAM用于运行图像处理软件和控制软件以及存放图像数据;所述FLASH用于存储图像处理软件和控制软件代码;所述UART用于连接上位机的通讯接口。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410623422.4A CN104363373B (zh) | 2014-11-06 | 2014-11-06 | 一种基于NiosII的红外图像自动调焦系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410623422.4A CN104363373B (zh) | 2014-11-06 | 2014-11-06 | 一种基于NiosII的红外图像自动调焦系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104363373A CN104363373A (zh) | 2015-02-18 |
CN104363373B true CN104363373B (zh) | 2017-08-04 |
Family
ID=52530596
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410623422.4A Active CN104363373B (zh) | 2014-11-06 | 2014-11-06 | 一种基于NiosII的红外图像自动调焦系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104363373B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104698941A (zh) * | 2015-03-11 | 2015-06-10 | 南京大全自动化科技有限公司 | 基于fpga的嵌入式双核继电保护系统 |
CN106686458A (zh) * | 2017-01-05 | 2017-05-17 | 北京星云互连科技有限公司 | 网络视频直播处理系统及方法 |
CN108107541A (zh) * | 2017-11-23 | 2018-06-01 | 北京环境特性研究所 | 一种基于图像处理的红外光学系统无热化补偿方法及装置 |
CN110381245B (zh) * | 2018-04-13 | 2021-09-03 | 杭州海康微影传感科技有限公司 | 图像采集设备 |
CN109947019A (zh) * | 2019-03-27 | 2019-06-28 | 中国铁道科学研究院集团有限公司 | 列车网络输入输出系统的处理装置及并行工作控制方法 |
CN110059395A (zh) * | 2019-04-12 | 2019-07-26 | 云南师范大学 | 一种红外成像自动聚焦fpga系统的可视化调试方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7142731B1 (en) * | 1999-02-17 | 2006-11-28 | Nec Corporation | Image processing system |
CN102131053A (zh) * | 2011-01-12 | 2011-07-20 | 首都师范大学 | 一种适用于高速成像系统的数据采集、编码和存储方法 |
CN102361394A (zh) * | 2011-09-04 | 2012-02-22 | 中国科学院近代物理研究所 | 离子治癌加速器数字电源调节系统及调节方法 |
CN202548681U (zh) * | 2012-04-11 | 2012-11-21 | 华北电力大学 | 一种智能自稳定摄像系统控制单元 |
CN102853831A (zh) * | 2012-09-07 | 2013-01-02 | 中南大学 | 基于双核处理技术的足式机器人状态感知系统 |
CN103018881A (zh) * | 2012-12-12 | 2013-04-03 | 中国航空工业集团公司洛阳电光设备研究所 | 一种基于红外图像的自动调焦方法及系统 |
-
2014
- 2014-11-06 CN CN201410623422.4A patent/CN104363373B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7142731B1 (en) * | 1999-02-17 | 2006-11-28 | Nec Corporation | Image processing system |
CN102131053A (zh) * | 2011-01-12 | 2011-07-20 | 首都师范大学 | 一种适用于高速成像系统的数据采集、编码和存储方法 |
CN102361394A (zh) * | 2011-09-04 | 2012-02-22 | 中国科学院近代物理研究所 | 离子治癌加速器数字电源调节系统及调节方法 |
CN202548681U (zh) * | 2012-04-11 | 2012-11-21 | 华北电力大学 | 一种智能自稳定摄像系统控制单元 |
CN102853831A (zh) * | 2012-09-07 | 2013-01-02 | 中南大学 | 基于双核处理技术的足式机器人状态感知系统 |
CN103018881A (zh) * | 2012-12-12 | 2013-04-03 | 中国航空工业集团公司洛阳电光设备研究所 | 一种基于红外图像的自动调焦方法及系统 |
Non-Patent Citations (2)
Title |
---|
信息科技辑》.2011,I138-540. * |
刘涛.基于FPGA的图像采集、显示与调焦系统设计.《中国优秀硕士学位论文全文数据库• * |
Also Published As
Publication number | Publication date |
---|---|
CN104363373A (zh) | 2015-02-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104363373B (zh) | 一种基于NiosII的红外图像自动调焦系统及方法 | |
CN106383515A (zh) | 一种基于多传感器信息融合的轮式移动机器人避障控制系统 | |
CN105643590B (zh) | 一种手势控制的轮式移动机器人及其操作方法 | |
CN205644294U (zh) | 一种能够对人脸进行实时跟踪的智能机器人系统 | |
JP6909829B2 (ja) | 情報処理方法、機器、システム及び記憶媒体 | |
CN207457833U (zh) | 一种机器人的避障控制系统 | |
CN110687843B (zh) | 一种基于zynq的多轴多电机伺服装置及其控制方法 | |
CN104835163A (zh) | 一种针对运动目标检测的嵌入式实时高速双目视觉系统 | |
CN110164060B (zh) | 一种用于娃娃机的手势控制方法、存储介质和娃娃机 | |
CN105643624A (zh) | 一种机器视觉控制方法及机器人控制器与机器人控制系统 | |
US10938912B2 (en) | Sweeper, server, sweeper control method and sweeper control system | |
CN211324756U (zh) | 一种智能清扫机器人 | |
CN104993984B (zh) | 一种物联网视觉智能感知系统及方法 | |
CN108780319A (zh) | 软件更新方法、系统、移动机器人及服务器 | |
JP2022515508A (ja) | 車両制御方法、関連するデバイス、およびコンピュータ記憶媒体 | |
CN104869313A (zh) | 一种全景图像的拍摄方法及全景图像侦测系统 | |
CN207206431U (zh) | 一种移动机器人控制器 | |
CN108038447A (zh) | 一种基于Zynq-7000的行人检测系统 | |
CN115328153A (zh) | 传感器数据处理方法、系统及可读存储介质 | |
CN104469274A (zh) | 一种智能视频监控系统 | |
Shaokun et al. | The wireless remote control car system based on ARM9 | |
CN205466152U (zh) | 一种智能双臂移动机器人 | |
Ryu et al. | Instant domain augmentation for lidar semantic segmentation | |
CN111025961A (zh) | 智能驾驶决策控制器 | |
JP2020052032A (ja) | 撮像装置及び撮像システム |
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 |