0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

利用神经网络法实现对焦平面非均匀性校正进行改造设计

电子设计 来源:电子设计应用 作者:王玉磷,毕晓麟 2021-01-12 09:59 次阅读

红外焦平面探测是一种兼具辐射敏感和信号处理功能的新一代红外探测技术,但是由于制造过程和工作环境的影响, 使得焦平面阵列(FPA ) 各个阵列元即使在相同的辐射通量照射下,也会输出不相同的响应电压。这种红外响应引起的遥感图像的失真被称作红外图像的非均匀性。为了提高观测频率、扫描范围和空间分辨率,航天遥感一般采用推扫式的多元敏感线阵列对地物成像,通过观察发现,推扫得到的遥感图像出现有规律的条带失真,条带宽度与遥感器多元敏感元个数的扫描线宽度一致,而且随着时间的推移,条带现象日趋严重,与单敏感元扫描图像中的噪声相比有明显差异,这种失真其实是焦平面非均匀性的一种表现形式。条带失真是影响线阵列红外遥感图像质量的主要因素,必须要用诸如定标的方法去除,但是由于探测器单元响应会随着时间和工作环境的变化改变,所以仅仅用定标的方法来校正条带失真有很大的局限性。

利用神经网络法实现对焦平面非均匀性校正进行改造设计

图1 BP网络结构图

本文对焦平面非均匀性校正的神经网络法进行改进,介绍了一种基于人工神经网络的遥感图像条带消除的方法。这种方法可以完全不对FPA进行标定(或自动标定),并且可以通过线性和非线性模型校正,是红外成像系统非均匀性校正的理想方法。

传统校正方法

线性校正假设探测器单元的响应呈线性:

y = ax + b

式中,x 为某一探测器单元的输入信号,y 为可测的输出信号。如果能求出增益因子a 和偏移因子b,就可求得无畸变的输入信号x 。

传统的非均匀性校正方法是在红外焦平面成像系统使用前,用标准的两个或多个参考温度源,对每一个阵列单元响应进行定标,以保证每个阵列单元在两个或多个参考温度之间有相同的响应,其校正值被存储起来,在进行数字处理时固定地将其叠加上去。如果每个阵列单元的输出特性随时间是完全线性和稳定的,那么,在上述定标温度范围内,这种校正是有效的,不过随着阵列数的增加,存储校正系数所需要的存储容量就大为增加。再加上系统的不稳定性、阵列单元的非线性和1/ f 噪声等因素的影响,使得经过一段时间后,阵列单元特性会发生漂移或温度背景范围出现变化,必须对红外焦平面阵列进行再定标。显然,这类校正方法不但麻烦,而且可能并不符合实际使用情况,从而导致校正效果不佳,因此,必须研究自适应的非均匀性校正方法。

神经网络法

神经网络法的主要特征是通过自学习模拟信息内部关系,进而获得系统特征参数。假设输入x和输出y之间有一种复杂的关系f,神经网络通过不断调整结构的权重系数和阈值得到逼近的关系f眨?沟脃=f’(x); Rumelhart 和Mcclalland提出的多层前馈网络的反向传播算法(BP算法) ,由于解决了感知器不能解决的多层网络学习算法的问题,可以很好地对复杂函数进行逼近,在工程中得到了广泛的应用。一般使用的BP网络是一个三层前向网络,结构如图1所示。

假定校正输出为Y(n),输入为X(n),则:

Y(n)=WT(n)X(n)+VT(n)

其中W和V是增益矢量和截距矢量,神经网络法就是不断依据实际景像调整W和V,来去除条带失真。根据三层BP网络结构,在中间层根据一定的法则计算某像素输出,并以此作为该像素的输出,反馈给线性校正神经元来调整W和V。调整以误差信号均方值最小为准则。

对每一次迭代,令期望响应与输出响应之差为误差,用e(n)表示,则:

e(n)=f(n)-Y(n)=f(n)-WT(n)X(n)+VT(n)

其中,f(n)表示期望的校正后输出,则误差函数为:F(W,V)=(Wx+V-f)2,利用最陡下降法,可以得到计算W和V的迭代公式:

Wn+1=Wn-2ax(y-f)

Vn+1=Vn-2a(y-f)

式中:n为帧数,a为步长。

神经网络算法的改进

从上面的分析可以得到,神经网络法对非均匀性的校正的关键是如何建立期望的校正输出模型,在非线阵列的焦平面非均匀性校正中,一般将校正元相邻元的输出平均值作为本元的期望输出带入网络进行网络训练,发展出了4领域和8领域等方法。对于线阵列,由于探测单元只有两个相邻的探测元,直接应用上面的方法进行网络训练,校正效果不是太好。鉴于此,对算法进行如下改进。

图2 基于改进神经元算法的试验结果

假设一幅图像有n条扫描线组成,对于每一条扫描线响应,可以用Yk(i)表示,其中k表示第k条扫描线 ,i表示线阵列的第i个探测元。可以将线阵列扩展为有三条线阵列的焦平面,在第k次成像时,焦平面成像为[Yk-1(i):Yk(i):Yk+1(i)],这样就可以假定Yk(i)的期望校正输出为:

Y’k(i)=1/8(Yk(i-1)+Yk(i+1)+Yk-1(i-1)+Yk-1(i)+Yk-1(i+1)+Yk+1(i-1)+Yk+1(i)+Yk+1(i+1))

算法过程如下:

1.计算邻域平均值:

Y’k(i)=1/8(Yk(i-1)+Yk(i+1)+Yk-1(i)+Yk+1(i)+Yk-1(i-1)+Yk+1(i+1)+Yk-1(i-1)+Yk+1(i+1))

2. 令y = Wx + V ,其中W为增益校正因子,V为偏移量校正因子。误差函数:

F(W,V)=(Wx+V-f)2

利用此函数的梯度函数和最陡下降法,可以得到计算和的迭代公式:

Wn+1=Wn-2ax(y-f)

Vn+1=Vn-2a(y-f)

式中 n为帧数,a为步长。

3.利用线性校正算法得到:

Yn+1=Wn+1×Xn+a+Vn+1

实验结果

应用上面的算法对遥感红外图像进行去条带实验。结果如图2所示。其中a、c、e为原图像,b、d、f为校正后对应图像,可以看出,校正效果比较明显。

结语

红外成像技术正在突飞猛进地发展,红外探测器是核心部件,非均匀性问题严重影响它的性能。因此,解决条带问题是线阵列探测器发展的关键,虽然神经网络法可以进行去条带处理,但是离实用还有一段距离,尤其神经网络训练的速度远远达不到实时应用的要求。本文通过对神经元算法进行改进得到了一种高效、高速、高精度的去条带方法。

责任编辑:gt

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 探测器
    +关注

    关注

    14

    文章

    2430

    浏览量

    72029
  • 神经网络
    +关注

    关注

    42

    文章

    4562

    浏览量

    98643
  • 遥感器
    +关注

    关注

    0

    文章

    7

    浏览量

    1491
收藏 人收藏

    评论

    相关推荐

    利用LABVIEW 实现bp神经网络的程序

    谁有利用LABVIEW 实现bp神经网络的程序啊(我用的版本是8.6的 )
    发表于 11-26 14:54

    labview BP神经网络实现

    请问:我在用labview做BP神经网络实现故障诊断,在NI官网找到了机器学习工具包(MLT),但是里面没有关于这部分VI的帮助文档,对于”BP神经网络分类“这个范例有很多不懂的地方,比如
    发表于 02-22 16:08

    局部神经网络,打造未来神经网络基本组件

    局部运算将某一处位置的响应作为输入特征映射中所有位置的特征的加权和来进行计算。我们将局部运算作为一个高效、简单和通用的模块,用于获取深度神经网络的长时记忆。我们提出的
    发表于 11-12 14:52

    【PYNQ-Z2申请】基于PYNQ的卷积神经网络加速

    ,得到训练参数2、利用开发板arm与FPGA联合的特性,在arm端实现图像预处理已经卷积核神经网络的池化、激活函数和全连接,在FPGA端实现卷积运算3、对整个系统
    发表于 12-19 11:37

    【PYNQ-Z2试用体验】神经网络基础知识

    语言,使用numpy.dot方法即可计算矩阵乘法。 以上便是一个简单神经网络的基本原理,对神经网络有了基本的认识之后,我们才能进行复杂的神经网络设计。总结本文讲解了
    发表于 03-03 22:10

    基于赛灵思FPGA的卷积神经网络实现设计

    FPGA 上实现卷积神经网络 (CNN)。CNN 是一类深度神经网络,在处理大规模图像识别任务以及与机器学习类似的其他问题方面已大获成功。在当前案例中,针对在 FPGA 上实现 CN
    发表于 06-19 07:24

    【案例分享】ART神经网络与SOM神经网络

    今天学习了两个神经网络,分别是自适应谐振(ART)神经网络与自组织映射(SOM)神经网络。整体感觉不是很难,只不过一些最基础的概念容易理解不清。首先ART神经网络是竞争学习的一个代表,
    发表于 07-21 04:30

    人工神经网络实现方法有哪些?

    人工神经网络(Artificial Neural Network,ANN)是一种类似生物神经网络的信息处理结构,它的提出是为了解决一些非线性,平稳,复杂的实际问题。那有哪些办法能实现
    发表于 08-01 08:06

    如何设计BP神经网络图像压缩算法?

    处理的运算量和数据吞吐量。图像压缩是信息传输和存储系统的关键技术,然而我们该如何进行FPGA设计,以实现给定的功能已经成为神经网络应用的关键呢?
    发表于 08-08 06:11

    如何利用SoPC实现神经网络速度控制器?

    不确定因素影响,并且随着可编程片上系统SoPC和大规模现场可编程门阵列FPGA的出现,为神经网络控制器的硬件实现提供了新的载体。
    发表于 08-12 06:25

    如何采用神经网络技术,对镍铬-镍硅热电偶进行了非线性校正

    请问如何采用基于虚拟仪器编程语言CVI编成的BP神经网络训练仪对K型镍铬-镍硅热电偶的非线性进行校正
    发表于 04-08 06:55

    matlab实现神经网络 精选资料分享

    神经神经网络,对于神经网络实现是如何一直没有具体实现一下:现看到一个简单的神经网络模型用于训
    发表于 08-18 07:25

    基于BP神经网络的PID控制

    最近在学习电机的智能控制,上周学习了基于单神经元的PID控制,这周研究基于BP神经网络的PID控制。神经网络具有任意非线性表达能力,可以通过对系统性能的学习来实现具有最佳组合的PID控
    发表于 09-07 07:43

    卷积神经网络模型发展及应用

    神经网络的思想起源于1943年McCulloch 和 Pitts 提出的神经元模型[19],简称 MCP 神经元模 型。它是利用计算机来模拟人的
    发表于 08-02 10:39

    神经网络在ADC误差校正中的应用

    “使用由 MATLAB 和 Deep Learning Toolbox 设计和训练的神经网络来对 ADC 误差进行校正后,在 ASIC 上实现时,恩智浦设计的
    的头像 发表于 03-18 11:21 1296次阅读