基于近红外CMOS的激光光斑质心检测系统设计

2021-08-31 00:55王雪松
红外技术 2021年8期
关键词:光斑质心灰度

王雪松

基于近红外CMOS的激光光斑质心检测系统设计

王雪松

(北京高普乐光电科技股份公司,北京 100193)

为实现在复杂背景光照条件下具有较高的光斑探测灵敏度,高精度的坐标计算,及大于1000fps的结果输出速度,介绍了一种基于近红外CMOS图像传感器,实时计算光斑质心坐标并输出的系统。设计使用安森美半导体公司的Python1300系列近红外图像传感器NOIP1FN1300A对激光光斑成像。利用Cyclone4系列低功耗FPGA对传感器进行驱动和解串,应用可靠的质心算法实时计算光斑坐标。结果输出部分分别采用USB2.0和RS422接口实时输出目标图像和质心坐标。该设计最终具有1500fps的实时处理能力,软件代码简洁,质心坐标计算精确,系统功耗低等优点。

图像传感器;FPGA;近红外;质心坐标

0 引言

激光光斑质心定位在军事和民用领域都有着非常广泛的应用。如激光测照、光通信、导引头、商用电子白板等,应用中所使用的激光器,波长普遍都在红外波段。探测激光的传感器性能和光斑检测算法的精度、速度直接影响光学测量的精度及速度。目前的检测处理系统多是基于PC机的,存在着延迟及不稳定等问题。在总结各种检测算法的基础上,基于重心法使用现场可编程门阵列(FPGA)实现了低信噪比红外光斑中心的实时检测[1]。本文针对红外光斑的特点,使用近红外增强型CMOS图像传感器NOIP1FN1300A对激光光斑成像,使前端探测系统具有较高灵敏度[2]。软硬件系统均采用模块化设计,利用FPGA驱动传感器成像,对传感器输出的图像数据进行串并转换、光斑提取、降噪和质心计算,计算结果通过RS422串行接口输出。

1 硬件电路设计

硬件电路结构分为CMOS焦面电路板、FPGA核心处理板和电源接口板3部分。各个电路板之间采用高速板对板连接器对接,实现了模块化设计,便于更改和更换任务模块。系统原理框图如图1所示。

图1 硬件系统框图

1.1 CMOS焦面电路

NOIP1FN1300A是安森美公司生产的近红外增强型黑白CMOS图像传感器,四通道低电压差分信号(LVDS)输出,具有开窗口功能[2]。该传感器性能参数如表1所示。

传感器具有3种类型的引脚:电源引脚、3.3V逻辑电平(LVTTL)控制信号引脚和LVDS差分信号引脚。使用Linear公司的低噪声的LDO芯片LT1763为传感器提供3.3V、3.3V_PIX、1.8V电源。FPGA控制LDO的关断(SHDN)引脚,以实现对传感器上电顺序的控制,电源电路原理图如图2所示。在传感器的每个电源引脚均配有滤波电容,降低电源噪声对传感器的成像的影响[3-5]。将传感器的CLK_PLL、复位RESET和串行外设接口(SPI)信号连接至FPGA。FPGA通过SPI对传感器进行初始化配置和参数在线调整[6-7]。

传感器成像输出采用LVDS传输方式。包括4组数据线,2组时钟线,1组同步信号线。7组差分线等长布线连接到FPGA上,相关的bank供电电压为2.5V,输入输出端口(I/O)应设置为“LVDS”模式。

表1 NOIP1FN1300A传感器性能

图2 LT1763应用电路

1.2 FPGA核心处理电路

FPGA芯片采用INTEL公司的Cyclone4系列低功耗器件EP4CE55U19I7。该器件具有55856个逻辑单元(LE)、4个锁相环、最大374个用户I/O,最高运行速度可达437MHz。

使用高效的DCDC转换器EP5357为FPGA提供电源供电。板载一片1Gbits DDR2存储器,实时存储传感器输出的视频图像,用于USB输出和图像滤波的缓存。FLASH采用128Mbits的M25P128,能够满足FPGA程序存储的要求,同时也能够固化系统的配置参数,具有断电记忆功能。

1.3 电源接口电路

电源接口电路对主电源进行滤波、降噪处理。利用去共模、差模和消纹波电路,使电源噪声等级控制在Rms5mV以下,可保证传感器输出较高的图像质量。

通讯方式采用抗干扰能力强的RS422全双工接口,在传感器实时输出质心坐标的同时,仍能够实现对系统参数的在线调整。

通过USB2.0接口实时输出目标图像,用于系统对焦操作。也可以通过USB通道传递配置参数。

2 软件系统设计与调试

FPGA软件完成对传感器的驱动、数据解串、中值滤波、光斑提取、质心计算与输出5个主要模块的设计。使用Quartus13.1进行软件的开发与调试,采用Verilog语言编写程序代码。软件系统流程图如图3所示。

系统上电后,FPGA按照传感器的上电时序要求,对传感器分步上电及寄存器初始化配置。传感器正常输出后,首先进行数据的串并转换,得到正确的10bit并行数据。再根据并行数据的状态码,解算出原始图像的行、场同步信号和图像数据信号。图像数据流向分为两路,一路数据存入DDR2,通过USB2.0接口实时输出。另一路原始数据分别进行滤波处理、阈值计算、光斑判断和质心计算,最终得到光斑质心的坐标。最终计算结果通过RS422接口进行输出。

2.1 传感器驱动

由FPGA产生传感器工作的主时钟clk_pll,频率为36MHz。按照像素位宽10bits输出,将4路并行的LVDS数据同时解串,拼接成逐行逐点的像素时钟率则达到了144MHz。

传感器上电时序有严格的要求。为使clk_pll时钟输出可控,该信号由独立的PLL产生,通过控制PLL的ARESET信号启动或关断时钟输出。传感器上电时序如图4所示[5]。

图3 FPGA编程流程图

图4 传感器上电时序

软件启动后,FPGA依次使能1.8V、3.3V、3.3V_PIX电源,电源稳定后使能ARESET为传感器提供36MHz时钟,间隔一定时间,拉高复位信号。最后进行SPI寄存器初始化配置。

传感器的初始化配置包括锁相环、状态机、初始参数、工作模式等。配置结束后使能传感器输出,传感器即可正常工作。

2.2 中值滤波

光斑光强分布,可近似为高斯分布。光斑边缘的提取,对质心坐标精度影响较大。成像电路中也会存在随机的白噪声,在光斑判断时,会被误认为是光斑的一部分。本文针对这两种噪声的频谱特点,使用技术成熟的中值滤波对图像预处理,实现了较好的处理效果[3]。

程序中例化了两个FIFO缓存2行图像数据,与第3行的实时数据组成3×3矩阵窗口,首先对窗口内的图像数据排序,然后将窗口中间像素,用排序后的中值取代。整个过程消耗3个时钟周期,需要将行、场有效信号同步延迟3个周期,最后得到滤波后的图像数据[8]。

2.3 图像数据解串

通过解析数据差分信号DOUT_N/P和同步差分信号SYNC_N/P分别获得像素数据和行、场同步信号。

传感器具有Training pattern(TP训练模式)寄存器,指在传感器空闲状态时,数据线和状态线上会持续输出一个固定值,用于串并转换时进行位对齐,该值可通过SPI配置寄存器的方式任意设置。当串并转换模块成功检索到TP值后,即可正常接收像素数据。在像素数据输出时,状态线上输出不同的状态码,指示当前像素数据类型。状态码时序如图5所示。其中IMG是有效像素段,LE是行结束,LS是行起始。TR是TP值,空闲时间一直为0x3A6。

在像元数据输出时,传感器固定以8个像素为一组,分为奇数组和偶数组。在奇、偶组内,以特定的排列顺序将8个像素分配到4组LVDS差分线上输出。因此,软件程序解串后还需要对8个像素重新排序,才能得到正确的一行图像数据。

4个通道的图像数据是同时到来的,为便于光斑提取和计算,软件设置2个FIFO进行乒乓操作,分别存储一行图像数据。将4通道36MHz的数据,转换成逐行逐点输出的144MHz像素数据格式。

2.4 光斑提取

对目标的提取主要是采用阈值分割的方法。阈值设置分为手动设置阈值和自适应阈值两种,这两种方法都存在固有的缺陷[4]。手动设置方法适应性差,而自适应阈值在复杂背景条件下提取目标成功率低。本文采用自动阈值和手动阈值相结合的方式,提高了系统的适用范围和提取精度。

光斑所占像元的数量越少,坐标提取精度越高,一般不大于20×20个像素。视场窗口尺寸越大,背景光照强度对光斑提取所使用的阈值的影响越大。在全分辨率条件下,光斑尺寸仅占整个靶面的0.03%。在复杂背景条件下,例如背景光的整体偏暗,但是局部有较大区域的亮度较高时,此时会出现平均灰度不能实现剔除背景,提取光斑的情况,如图6所示。

图5 传感器状态码输出

图6 复杂背景灰度图

当开窗尺寸较小,且背景光照强度均匀时,可单独使用自适应阈值进行光斑提取,提取效果较好。反之,则需要合理的设置手动阈值,设置值应能保证用于分割的阈值大于局部亮区的灰度,只提取有效的光斑目标。

程序设计中,利用相邻两幅成像画面具有较大相关性这一时间冗余特点,将当前帧图像的平均灰度与手动设置阈值相加,作为下一帧图像光斑提取的阈值。用两个FIFO分别缓存两行图像数据,与第3行数据组成3×3滑动窗口,当窗口中的9个像素点灰度值,有3个以上大于阈值,则认为窗口中心像素是激光光斑的一部分。将该点的灰度值和行、列坐标值输出给下一模块,进行质心计算。

2.5 质心计算与输出

激光光斑的质心也就是光斑的灰度重心。本文采用灰度质心法计算光斑的质心坐标,该方法具有计算速度快、精度高、硬件容易实现等优点[4,9]。假设图像的分辨率为×,光斑所占像元的灰度表示为(,),那么质心计算公式为:

光斑提取模块输出了光斑所占像素的灰度值和坐标值,将这些数据代入公式(1),通过FPGA自带的乘/除法IP核,实现计算功能。为了提高坐标输出精度,精确到小数点后3位,将公式分子部分均乘以1024,硬件程序上采用逻辑左移10位,低位补0的方式。此时的商是坐标放大1000倍的数据,最终应用时,再除以1024即可得到带3位小数的坐标值,实现了亚像元细分功能。本文中只保留小数点后两位有效数据。

坐标以帧指令格式通过RS422接口输出,一帧指令包含8个字节数据,有同步头、行坐标、列坐标、校验位,波特率230.4 kbps。用户可通过该接口实时调整系统的曝光时间、增益等参数。同时,设计具有一路USB2.0图像输出接口,实时显示目标图像,可用于观测和对焦操作。

3 实验结果

硬件电路采用5V供电,实测工作电流0.56A,硬件功耗为2.8W。利用上述设计方案,对940nm激光光斑成像效果如图7所示。光斑边缘清晰,与背景过度均匀,适合使用阈值分割算法,对光斑进行提取。

图7 光斑成像效果

在全分辨率条件下,设置复杂背景,对激光光斑成像,实时计算质心坐标并输出,其中图像右下角为坐标原点,将视频图像通过USB2.0高速数据接口,传输到PC机软件显示,测试结果如图8所示。

画面中激光光斑亮度较高,已呈现饱和状态,光斑附近及其他部位有若干灰度较高的斑点,模拟杂散光对成像系统的干扰。将镜头光圈减小,使成像画面的亮度降低,避免局部区域出现过饱和,影响算法对光斑的提取和判断。

图8 左下角光斑

为达到较好的检测效果,针对所用激光中心波长,使用窄带滤光片和衰减片,使检测结果更加精准和稳定。最终光斑坐标检测结果如表2所示。

表2 坐标输出结果

从系统输出的光斑坐标结果可以看出,数据稳定且精度较高,能够维持小数点后一位不变,实现了亚像元细分,满足了设计需求。

质心坐标在每个场同步下降沿计算和输出一次。使用示波器检测场同步周期,即可得到系统实际输出速度。将传感器分辨率设定为256×256 pixels,减少行消隐时间xsm_delay,实测场同步周期缩小到630ms时,系统仍正常工作,此时帧率达1587fps。

4 结论

实验结果表明,传感器在近红外波段灵敏度高,在复杂背景条件下光斑成像效果好,质心坐标计算精确,实现了亚像元细分。硬件功耗小于3W,系统工作稳定可靠。经实测在开窗口模式下,坐标计算帧率可达1500fps,具有较高的实用价值。

[1] 陈兴美, 严壮志. 基于FPGA的红外光斑中心实时检测[J]. 红外与激光工程, 2005(4): 401-405.

CHEN Xingmei, YAN Zhuanzhi. Real-time detection of infrared spot based on FPGA[J]., 2005(4): 401-405.

[2] 向世明, 高教波, 焦明印. 现代光电子成像技术概论[M]. 北京: 北京理工大学出版社, 2010: 155-156, 168-169.

XIANG Shiming, GAO Jiaobo, JIAO Mingyin.[M]. Beijing: Beijing Institute of Technology Press, 2010: 155-156, 168-169.

[3] 胡治国, 何海菠, 范祝军. 基于FPGA的光斑图像中值滤波处理[J]. 自动化与仪器仪表, 2013(4): 127-128.

HU Zhiguo, HE Haibo, FAN Zhujun. Median filtering of spot image based on FPGA[C]//, 2013(4): 127-128.

[4] 黄茂祥, 刘允才. 基于FPGA的快速红外光斑检测[J]. 微型电脑应用, 2010, 26(10): 54-57.

HUANG Maoxiang, LIU Yuncai. Fast infrared spot detection based on FPGA[J]., 2010, 26(10): 54-57.

[5] 马利刚, 马铁华. 基于FPGA的实时图像采集系统设计[J]. 计量与测试技术, 2009(4): 51-52, 56.

MA Ligang, MA Tiehua. Design of image sampling system based on FPGA[J]., 2009(4): 51-52, 56.

[6] 白廷柱. 光电成像技术与系统[M]. 北京: 电子工业出版社, 2016.

BAI Tingzhu.[M]. Beijing: Electronic Industry Press, 2016.

[7] 姚立斌. 低照度CMOS图像传感器技术[J]. 红外技术, 2013, 35(3): 125-132.

YAO Libin. Low-light-level CMOS image sensor technique[J]., 2013, 35(3): 125-132.

[8] 肖锋钢, 刘建国, 曾淙泳, 等. 一种新型提高光斑图像质心精度的去噪方法[J].计算机应用研究, 2008(12): 3683-3684, 3687(doi: 10.3969/j.issn.1001-3695.2008.12.046).

XIAO Fenggang, LIU Jianguo, ZENG Congyong, et al. New denosing method for improving speckle image centriod accuracy[J]., 2008(12): 3683-3684, 3687 (doi: 10.3969/ j.issn.1001-3695.2008.12.046).

[9] 樊巧云, 张广军. 离散噪声图像的光斑质心算法及其硬件实现[J]. 光学精密工程, 2011(12): 2992-2998(doi:10.3788/ OPE. 20111912. 2992).

FAN Qiaoyun, ZHANG Guangjun. Spot centroiding algorithm for discrete noise image and its hardware implementation[J]., 2011(12): 2992-2998(doi:10.3788/ OPE. 20111912.2992).

Design of a Laser Spot Centroid Detection System Based on NIR CMOS

WANG Xuesong

(..,100193,)

To meet the requirements of high detection sensitivity, high-precision calculation of spot coordinates, and a calculated output speed greater than 1000 fps, this study introduces a system based on a near-infrared CMOS image sensor to calculate and output centroid coordinates in real time. We employed the NIR detector NOIP1FN1300A of the Python1300 series produced by the company ONsemiconductor to image the laser spot. The Cyclone4 series low-power FPGA was used to drive the sensor and deserialize the sensor output data, and a reliable centroid algorithm was used to calculate the spot coordinates. The results in the output part, USB2.0, and RS422 interfaces were used to output the target image and centroid coordinates in real time. The design has the following advantageous features: 1500 fps real-time processing capacity, a concise software code, accurate calculation of centroid coordinates, and low-power consumption.

image sensor, FPGA, near-infrared, spot coordinates

TN219

A

1001-8891(2021)08-0730-06

2020-12-17;

2021-01-19.

王雪松(1984-),男,天津人,硕士,主要从事远距离激光夜视系统研发与设计。E-mail:wangxuesong@glopro.com.cn。

猜你喜欢
光斑质心灰度
重型半挂汽车质量与质心位置估计
采用改进导重法的拓扑结构灰度单元过滤技术
基于GNSS测量的天宫二号质心确定
Bp-MRI灰度直方图在鉴别移行带前列腺癌与良性前列腺增生中的应用价值
Arduino小车巡线程序的灰度阈值优化方案
有趣的光斑
主角光环
有趣的光斑
夏末物语
巧求匀质圆弧的质心