实测数据处理(BP算法处理)——SAR成像算法系列(九)

news2024/12/26 19:30:38

系列文章目录

《SAR学习笔记-SAR成像算法系列(一)》

《后向投影算法(BPA)-SAR成像算法系列(二)》

《后向投影算法(续)-SAR成像算法系列(八)》


文章目录

 一、算法流程

1.1、回波信号生成

1.2、 距离脉冲压缩

1.3、 网格信号反演

1.4、 信号相干累加

1.5、SAR成像

二、仿真实验

2.1、仿真参数

2.2、BP处理结果

三、实测处理

总结


前言

       前面介绍了各种SAR成像算法,下面将介绍如何用各SAR成像算法进行实测数据处理。本文将用BP算法处理实测数据。(目前已在CSDN平台写作三年,感谢各位的支持与理解,后续我会持续更新,期待你的关注,目前博客保持月更,月底统一回答评论区和私信的问题,也欢迎各位在评论区进行讨论)


 一、算法流程

1.1、回波信号生成

        对探测区域以脉冲重复间隔发射连续脉冲信号,并接收探测区域的回波信号。不失一般性,探测区域内任意一个散射目标\left ( x,y \right )的回波信号(已经下变频处理)为:

r\left ( \tau ,t|x,y \right )=\sigma w_{a}\left ( \frac{t-t_{p}}{T_{syn}} \right )rect\left ( \frac{\tau -\frac{2R\left ( t|x,y \right )}{c} }{T_{p}} \right )e^{j\pi K\left (\tau -\frac{2R\left ( t |x,y\right )}{c} \right ) ^{2}}e^{-j4\pi f_{0}\frac{R\left ( t |x,y\right )}{c} }

其中

\tau =nT_{r}\, \, \, \, \, \, \, \, \, \, \, \, \, \, \, \, \, \, \, \, n=0:N-1

t =mT_{a}\, \, \, \, \, \, \, \, \, \, \, \, \, \, \, \, \, \, \, \, m=0:M-1

其中T_{r}为快时间采样间隔,T_{a}为脉冲重复周期。 

1.2、 距离脉冲压缩

        利用发射的脉冲信号设计距离向匹配滤波器,并用该滤波器对接收的每个脉冲信号匹配滤波,实现距离维的脉冲压缩。为了提高计算效率,通常在频域上处理。得到距离脉压后的信号为:

r_{1}\left ( \tau ,t|x,y \right )=\sigma N w_{a}\left ( \frac{t-t_{p}}{T_{syn}} \right )sinc\left (KT_{p} \left ( \tau -\frac{2R\left ( t|x,y \right )}{c} \right )\right )e^{-j4\pi f_{0}\frac{R\left ( t |x,y\right )}{c} }

1.3、 网格信号反演

         探测区域离散化处理:对探测的区域进行网格剖分,将探测区域剖分为N_{a}\times N_{r}个网格点。对任意网格点\left ( x_{0},y_{0} \right ),对应回波信号为:

r_{2}\left ( {\tau}' ,t|x_{0},y_{0} \right )=\sigma N w_{a}\left ( \frac{t-t_{p}}{T_{syn}} \right )sinc\left (KT_{p} \left ( {\tau}' -\frac{2R\left ( t|x_{0},y_{0} \right )}{c} \right )\right )e^{-j4\pi f_{0}\frac{R\left ( t |x_{0},y_{0} \right )}{c} }

       其对应的距离徙动曲线为:

{\tau}' =\frac{2R\left ( t|x_{0},y_{0} \right )}{c}

       在\left ( x_{0},y_{0} \right )已知情况下,该距离曲线是确定的,按照该距离徙动曲线在回波数据r\left ( \tau ,t\right )中找对应的徙动曲线位置,由于\tau是离散采样点,{\tau }'是连续的徙动曲线,这样会导致,在不同慢时间t下,找不到{\tau }'对应的离散快时间点\tau。为减少这方面的误差,一般通过距离维的插值处理找到网格点\left ( x_{0},y_{0} \right )对应距离徙动曲线上的回波信号为:

r_{2}\left ( t|x_{0},y_{0} \right )=\sigma N w_{a}\left ( \frac{t-t_{p}}{T_{syn}} \right )e^{-j4\pi f_{0}\frac{R\left ( t |x_{0},y_{0} \right )}{c} }

    事实上,沿\left ( x_{0},y_{0} \right )对应距离徙动曲线上的回波信号除了\left ( x_{0},y_{0} \right )目标点的信号能量贡献,还包含其他目标回波在该曲线上的能量分布:

\sum_{x\neq x_{0}}r_{2}\left ( t|x,y \right )

        但其他目标的多普勒相位随慢时间的变化曲线与\left ( x_{0},y_{0} \right )的不一致,所以这部分影响会在后续相位补偿相干累加中能够得到抑制。

1.4、 信号相干累加

        平台的运动一方面使得距离维发生距离徙动现象,即不同方位(慢时间)同样的网格剖分点的距离不同。另一方方面平台的运动使得不同方位时间上同一个目标的脉冲回波叠加了一个瞬时距离变换引起的多普勒信号,由于每个脉冲时间内时间很短,一般不考虑快时间内的多普勒效应,慢时间的时间间隔较大,多普勒效应不能忽略,此时慢时间(方位)上多普勒效应就在距离曲线上得到体现,为了实现方位维的脉冲压缩,需要沿着距离先动曲线补偿对应的多普勒相位实现方位维的脉冲压缩。补偿的多普勒相位由精确的斜距信息得到:e^{j4\pi f_{0}\frac{R\left ( t |x_{0},y_{0} \right )}{c} },沿距离徙动曲线补偿相位后的回波信号为:

r_{3}\left ( t|x_{0},y_{0} \right )=\sigma N w_{a}\left ( \frac{t-t_{p}}{T_{syn}} \right )

        补偿距离徙动曲线位置处的多普勒相位,此时多普勒曲线上信号相位相干,将其累加即可得到:

I\left (x_{0},y_{0} \right )=\sigma NM

 1.5、SAR成像

        可以看出得到的累加结果包含了\left ( x_{0},y_{0} \right )的散射面积\sigma,形成最终的SAR图像。

二、仿真实验

2.1、仿真参数

        信号带宽20 MHz,距离分辨率7.5m;天线尺寸30m,合成孔径长度11180.3m,距离横向分辨率15.0m。天线波束中心斜视角3.2°。 

点目标分布                                                  SAR回波信号

2.2、BP处理结果

            距离剖分间隔5m,方位剖分间隔10m。

                                距离脉压结果                                         距离脉压结果 (放大)

                                     BP成像结果                                         BP成像结果 (放大)

                              投影到地面的SAR图像                      投影到地面的SAR图像(放大)

三、实测处理

图3-1.SAR照射区域的光学地图

        图3-1为SAR实测数据的光学地图。图3-2为图1-1所示区域SAR二维回波信号。

图3-2. SAR回波信号

图3-3分别为距离脉压的匹配滤波器、距离脉压后的结果、距离插值后的结果。图4为成像结果

图3-3. 距离脉压

图3-4. BP成像结果

代码:《SAR成像算法+后向投影(BP)算法+星载平台实测数据》


总结

        本文主要介绍BP算法实现步骤,并从仿真数据和实测数据两个角度展示了BP算法的效果。转载请附上链接【杨(_> <_)】的博客_CSDN博客-信号处理,SAR,代码实现领域博主。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2252000.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

(数据结构与算法)如何提高学习算法的效率?面试算法重点有哪些?面试需要哪些能力?

面试官眼中的求职者 通过对你算法的考察&#xff01;&#xff01;&#xff01;&#xff01; 缩进太多&#xff01;&#xff01;一般不要超过三层&#xff01;&#xff01;&#xff01;缩进越少&#xff0c;bug越少&#xff1b;逻辑比较复杂&#xff0c;把这些包装成为函数&…

Day05:缓存双写一致性

redis做为缓存&#xff0c;mysql的数据如何与redis进行同步呢&#xff1f;&#xff08;双写一致性–强一致&#xff09; 一种是一致性要求比较高的同步方案&#xff0c;另一种是允许延迟一致的异步通知。 什么是双写一致性&#xff1f; 双写一致性&#xff1a;当修改了数据库…

vue3+typescript自定义input组件

官方文档&#xff1a;https://cn.vuejs.org/guide/components/events#%E5%AE%9A%E4%B9%89%E8%87%AA%E5%AE%9A%E4%B9%89%E4%BA%8B%E4%BB%B6 触发与监听事件​ 在组件的模板表达式中&#xff0c;可以直接使用 $emit 方法触发自定义事件 (例如&#xff1a;在 v-on 的处理函数中)…

代码之丑第一期-缩进

各位小伙伴们,大家好!咱今天就算是正式开张了。实不相瞒,第一期的内容早已写好,但唯独这开篇方式,笔者想了好些时间,包括但不限于如下风格: 斗破苍穹式(已经三刷):代码优雅之力,三段!级别:低级!百年孤独式(困扰于错综复杂的人物关系,放弃):多年以后,面对吐槽…

idea2024加载flowable6.8.1.36遇到的问题-idea启动flowable问题flowable源码启动问题

代码下载地址&#xff1a; https://gitee.com/hanpenghu_admin_admin/flowable6.8.1.git 1.首先是通过顶层目录maven clean install 发现很多子模块并不会install本地mavenStore库&#xff0c;这导致了&#xff0c;一堆相互依赖的模块报错找不到&#xff0c;所以需要根据报错…

Vue.js 中 v-for 指令的三种常见用法详解及key、value、id的作用

作者&#xff1a;CSDN-PleaSure乐事 欢迎大家阅读我的博客 希望大家喜欢 使用环境&#xff1a;WebStorm 目录 遍历数组 介绍 代码 遍历对象数组 介绍 代码 遍历对象本身 介绍 代码 效果呈现 key、value、id的作用 1. value 2. key 3. id 在 Vue.js 中&#xff0c…

【论文投稿】国产游戏技术:迈向全球引领者的征途

【IEEE出版南方科技大学】第十一届电气工程与自动化国际会议&#xff08;IFEEA 2024)_艾思科蓝_学术一站式服务平台 更多学术会议论文投稿请看&#xff1a;https://ais.cn/u/nuyAF3 目录 国产游戏技术能否引领全球&#xff1f; 一、国产游戏技术的崛起之路 1.1 初期探索与积…

React的ts文件中通过createElement拼接一段内容出来

比如接口返回一个值 const values [23.00, 40.00/kg];想做到如下效果&#xff0c; 如果单纯的用render渲染会很简单&#xff0c; 但是在ts文件中处理&#xff0c;所以采用了createElement拼接 代码如下&#xff1a; format: (values: string[]) > {if (!values || !val…

江协科技最新OLED保姆级移植hal库

江协科技最新OLED移植到hal库保姆级步骤 源码工程存档 工程和源码下载(密码 1i8y) 原因 江协科技的开源OLED封装的非常完美, 可以满足我们日常的大部分开发, 如果可以用在hal库 ,将是如虎添翼, 为我们开发调试又增加一个新的瑞士军刀, 所以我们接下来手把手的去官网移植源码…

HarmonyOS:使用Emitter进行线程间通信

Emitter主要提供线程间发送和处理事件的能力&#xff0c;包括对持续订阅事件或单次订阅事件的处理、取消订阅事件、发送事件到事件队列等。 一、Emitter的开发步骤如下&#xff1a; 订阅事件 import { emitter } from kit.BasicServicesKit; import { promptAction } from kit.…

Wi-Fi 进化论:从过去到未来(6/10)

Wi-Fi&#xff08;发音&#xff1a; /ˈwaɪfaɪ/&#xff09;&#xff0c;在中文里又称作“移动热点”&#xff0c;是Wi-Fi联盟制造商的商标作为产品的品牌认证&#xff0c;是基于IEEE 802.11标准的无线局域网通信技术 [6]。基于两套系统的密切相关&#xff0c;也常有人把Wi-F…

【C++初阶】第5课—动态内存管理

文章目录 1. 内存分布2. C语言动态内存管理3. C内存管理方式3.1 new/delete操作内置类型3.2 new和delete操作自定义类型 4. operator new和operator delete函数5. new和delete的实现原理6. malloc/free和new/delete的区别7. 定位new表达式(了解即可) 1. 内存分布 先来做一个关于…

学习threejs,设置envMap环境贴图创建反光效果

&#x1f468;‍⚕️ 主页&#xff1a; gis分享者 &#x1f468;‍⚕️ 感谢各位大佬 点赞&#x1f44d; 收藏⭐ 留言&#x1f4dd; 加关注✅! &#x1f468;‍⚕️ 收录于专栏&#xff1a;threejs gis工程师 文章目录 一、&#x1f340;前言1.1 ☘️THREE.CubeTextureLoader 立…

Matlab Simulink HDL Coder FPGA开发初体验—计数器

目录 一、Simulink设计及仿真二、Verilog HDL代码转换1、参数配置2、HDL代码生成 三、ModelSim仿真分析1、使用自己编写的Testbench文件进行仿真2、使用HDL Coder生成的Testbench文件进行仿真 前言 Simulink HDL Coder‌是一款将Simulink和Stateflow模型转化为可综合的Verilog和…

【C语言】扫雷游戏(一)

我们先设计一个简单的9*9棋盘并有10个雷的扫雷游戏。 1&#xff0c;可以用数组存放&#xff0c;如果有雷就用1表示&#xff0c;没雷就用0表示。 2&#xff0c;排查(2,5)这个坐标时&#xff0c;我们访问周围的⼀圈8个位置黄色统计周围雷的个数是1。排查(8,6)这个坐标时&#xf…

实现点名神器的pyqt6实现

利用python gui创建点名神器&#xff0c;包含加分、导出加分记录、清除加分记录。 点名页面 首先导入学生信息 导入成功 开始点名 点击停止 点过之后&#xff0c;点击加分 加完分 查看加分记录 可以直接进入导出记录和清除历史。 此文到此结束&#xff0c;想要源码的请私聊我&a…

【UE5 C++】判断两点连线是否穿过球体

目录 前言 原理 代码 测试 结果 前言 通过数学原理判断空间中任意两点的连线是否穿过球体&#xff0c;再通过射线检测检验算法的正确性。 原理 &#xff08;1&#xff09;设球体球心的坐标为 &#xff0c;半径为r&#xff1b; &#xff08;2&#xff09;设线段中A点的坐…

【AI】数据,算力,算法和应用(3)

三、算法 算法这个词&#xff0c;我们都不陌生。 从接触计算机&#xff0c;就知道有“算法”这样一个神秘的名词存在。象征着专业、权威、神秘、高难等等。 算法是一组有序的解决问题的规则和指令&#xff0c;用于解决特定问题的一系列步骤。算法可以被看作是解决问题的方法…

计算机的错误计算(一百七十一)

摘要 探讨 MATLAB 中秦九韶&#xff08;Horner&#xff09;多项式的错误计算。 例1. 用秦九韶&#xff08;Horner&#xff09;算法计算&#xff08;一百零七&#xff09;例1中多项式 直接贴图吧&#xff1a; 这样&#xff0c;MATLAB 给出的仍然是错误结果&#xff0c;因为准…

Ubuntu20.04运行R-VIO2

目录 1.环境配置2.构建项目3. 运行 VIO 模式4.结果图 1.环境配置 CMakeLists.txt中 C 使用 14、opencv使用4 2.构建项目 克隆代码库&#xff1a; 在终端中执行以下命令克隆项目&#xff1a;git clone https://github.com/rpng/R-VIO2.git编译项目&#xff1a; 使用 catkin_m…