news 2026/4/3 6:16:51

水声相关公式C++实现(部分,有时间补全)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
水声相关公式C++实现(部分,有时间补全)

一、背景知识简介

声纳,由于水中声速较快(1500米每秒),而且传播距离远(最大能到200公里),所以声纳这种机械波远比雷达的电磁波在水中实用。

识别结果

类似于B超,靠回声得到一团团的亮斑,由于是径向,所以一般只能获得“相对距离与相对角度”

瀑布图

将360度展平而得到的图像

频率

高频比低频精度高,但是传播距离没有低频远(后面讲传播损失,频率会作为一个影响变量)

二、声纳方程

声纳分为主动(敲听反射)和被动(侦听)

主动声纳

SE = SL - 2 * TL + TS - (NL - AG)

被动声纳

SE = SL - TL - NL + DI - DT

其中的中间变量下面详细介绍

声纳还可分为船壳(舰载)声纳、拖曳声纳两种。(略)

三、中间变量相关因素与影响链条

1-基础概念介绍

简称英文全称中文名称概念单位
SLSource Level发射声源级主动声呐发射信号在 1 米处的声压强度,表征发射信号的初始能量dB re 1 μPa·m
NLNoise Level接收机背景噪声级声呐接收机处的环境噪声强度,包含海洋环境噪声、自噪声等dB re 1 μPa
DIDirectivity Index接收机指向性指数描述声呐阵对特定方向信号的汇聚能力,值越高抗干扰能力越强dB(相对量)
DTDetection Threshold检测阈值声呐满足指定检测概率和虚警率时,所需的最小信号相对噪声余量dB(相对量)
TSTarget Strength目标强度目标对入射声波的反射能力,表征目标反射声压相对于入射声压的比例dB(相对量)
TLTransmission Loss传播损失声波从发射点到接收点的能量衰减量,包含扩展损失、吸收损失等dB(相对量)
RLReverberation Level混响级海洋中散射体反射形成的干扰声压强度,是主动声呐的主要干扰源dB re 1 μPa
SESignal Excess信号余量/回声余量声呐接收信号强度与检测所需强度的差值,SE≥0 表示可有效探测dB(相对量)
SenReceiver Sensitivity接收灵敏度接收机可分辨的最小输入声压强度,通常以 1 μPa 为参考基准dB re 1 μPa

2-相关影响链条图

Mermaid 流程图代码

--- config: layout: elk --- flowchart LR subgraph EnvironmentEffects["环境基础属性"] A["温度 T"] B["盐度 S"] C["深度 D"] D1["频率 f"] E["带宽 B"] end subgraph s1["噪声与信号参数(中间层)"] N["环境噪声 NL (海洋环境)"] O["自噪声 NS (平台噪声)"] P1["干扰噪声 NJ (干扰源)"] Q["信号级 S (SL-2TL+TS)"] R["混响级 RL"] end A --> F["声速 c (T,S,D)"] & K["吸收系数 alpha (f,T,S,D)"] B --> G["密度 rho (T,S,D)"] & K C --> H["压强 P (D)"] & K D1 --> I["脉冲宽度 τ (1/B)"] & K & M["目标强度 TS (目标几何,f)"] E --> I F --> J["传播损失 TL (c,f,D)"] I --> L["混响级 RL (SL,TL,SS,V)"] N --> S["总噪声 NT (NL+NS+NJ+RL)"] O --> S P1 --> S R --> S Q --> T["信号余量 SE (S - NT + DI - DT)"] S --> T

四、C++实现

写代码时就是怕没有参照和对比,不知道自己找的公式是否正确,于是一般找个典型数值表,看看输出是否不离谱。

发射声源级SL【查表】

这部分主要是看(主动)声纳型号的属性查表,有根据功率进行转化的,但是不太准

背景噪声级NL

这部分涉及海面噪声、环境噪声、自噪声(舰船自己发出的噪声),一般进行对数求和处理。

接收机指向性指数DI【查表】

这部分需要根据具体型号查表得到

检测阈值DT

目标强度TS

传播损失TL

典型表格

声呐频率吸收系数 α(dB/km)1km 传播损失(球面扩展)10km 传播损失(柱面扩展)50km 传播损失(柱面扩展)备注
100Hz0.008dB/km20.008dB40.08dB60.4dB多为远程拖曳声呐频段,吸收损失极小
500Hz0.03dB/km20.03dB40.3dB61.5dB低频段,适合远距离探测,干扰小
1kHz0.068dB/km20.068dB40.68dB63.4dB中低频交界,常作为常规声呐基础频段
5kHz0.35dB/km20.35dB43.5dB77.5dB中频段,兼顾探测距离与分辨率
10kHz0.8dB/km20.8dB48dB90dB中高频,船壳声呐常用频段,吸收损失开始显著
20kHz2.0dB/km22.0dB50dB130dB高频段,适用于中短距离精准探测
50kHz7.0dB/km27.0dB77dB380dB高频,多用作近程成像声呐,远距离损耗剧增
100kHz15.0dB/km35.0dB115dB785dB超高频,仅适配近距离目标检测,如避障声呐

对 Francois-Garrison 公式的一个简化工程版本

// 计算海水吸收系数 alpha (dB/km) // freq_hz: 频率 (Hz) // temp_c: 温度 (°C) [0, 30] 较合适 // salinity: 盐度 (‰) [30, 38] 较合适 // depth_m: 深度 (m) [0, 1000] 较合适 double seaWaterAbsorption(double freq_hz, double temp_c, double salinity, double depth_m) { if (freq_hz <= 0.0) return 0.0; double f = freq_hz / 1000.0; // 转为 kHz double T = temp_c; double S = salinity; double z = depth_m; // 压强 (atm) double P = 1.0 + z / 10.33; // 1 atm ≈ 10.33 m // ------------ Boric acid relaxation absorption (dB/km) ------------ double f1 = 0.78 * sqrt(S / 35.0) * exp(T / 26.0); double a1 = 0.106 * (f1 * f * f) / (f * f + f1 * f1); // ------------ Magnesium sulfate relaxation absorption (dB/km) ------------ double f2 = 42.0 * exp(T / 17.0); double a2 = 0.52 * (S / 35.0) * (T + 273.15) / 293.15 * exp(-T / 12.0) * (f2 * f * f) / (f * f + f2 * f2); // ------------ Viscous (pure water) absorption (dB/km) ------------ double a3 = 0.00049 * (T + 273.15) / 293.15 * exp(-T / 27.0) * f * f; // ------------ Pressure (depth) correction ------------ double D = z / 1000.0; // 深度以 km 为单位 double a = a1 + a2 + a3; // 经验修正:随深度增加略有减小(Francois-Garrison 建议的简化形式) a = a * (1.0 - 0.005 * D); return a; }

混响RL

信号余量(回声余量)SE

灵敏度Sen【查表】

根据声纳型号查询属性

五、目标识别

这部分靠声音的特征、声谱来判断,本博客主要讲是否能探测到,这部分略。

https://www.bilibili.com/video/BV1Wi4y1L7oJ

如何解读声呐图像 | 声呐基础知识 | 古野科技 | 古野电气株式会社的产品网站


参考
声呐方程相关参数 - 知乎

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/15 2:05:06

会话流正在取代点击流?AI如何让App成为你的智能助理

埃隆马斯克曾在谈论AI革命时直言&#xff1a;“如果技术发展比人类快十倍&#xff0c;而我们选择视而不见&#xff0c;那才是真正的危险。” 这个观点精准预判了未来移动应用面临的难点&#xff0c;当用户已习惯与AI用自然语言流畅对话&#xff0c;为何还要忍受传统App中繁琐的…

作者头像 李华
网站建设 2026/3/24 2:07:51

从零构建智慧工厂监控系统:Layui组件化开发实战

从零构建智慧工厂监控系统&#xff1a;Layui组件化开发实战 【免费下载链接】layui 项目地址: https://gitcode.com/gh_mirrors/lay/layui 引言&#xff1a;传统监控系统面临的挑战 在现代工业环境中&#xff0c;传统的设备监控系统往往面临三大痛点&#xff1a;界面开…

作者头像 李华
网站建设 2026/4/2 8:30:02

联想英伟达显卡故障诊断与解决一站式指南

联想英伟达显卡故障诊断与解决一站式指南 对于广大联想拯救者系列或搭载英伟达独立显卡的联想笔记本用户而言&#xff0c;显卡故障是可能遇到的最令人头疼的问题之一&#xff0c;其表现形式多样&#xff0c;从驱动程序崩溃、屏幕花屏到游戏性能骤降等。面对问题&#xff0c;用户…

作者头像 李华
网站建设 2026/3/19 20:28:15

5大核心功能解密:智能标注系统PLabel的终极指南

5大核心功能解密&#xff1a;智能标注系统PLabel的终极指南 【免费下载链接】PLabel 半自动标注系统是基于BS架构&#xff0c;由鹏城实验室自主研发&#xff0c;集成视频抽帧&#xff0c;目标检测、视频跟踪、ReID分类、人脸检测等算法&#xff0c;实现了对图像&#xff0c;视频…

作者头像 李华
网站建设 2026/4/1 20:13:26

10分钟快速上手:DiffSynth-Studio AI视频创作工具完整安装指南

10分钟快速上手&#xff1a;DiffSynth-Studio AI视频创作工具完整安装指南 【免费下载链接】DiffSynth-Studio DiffSynth Studio 是一个扩散引擎。我们重组了包括 Text Encoder、UNet、VAE 等在内的架构&#xff0c;保持了与开源社区模型的兼容性&#xff0c;同时提高了计算性能…

作者头像 李华
网站建设 2026/3/26 21:53:00

springboot基于vue的花之恋鲜花预定小程序的设计_9tuj7299

目录已开发项目效果实现截图开发技术核心代码参考示例1.建立用户稀疏矩阵&#xff0c;用于用户相似度计算【相似度矩阵】2.计算目标用户与其他用户的相似度系统测试总结源码文档获取/同行可拿货,招校园代理 &#xff1a;文章底部获取博主联系方式&#xff01;已开发项目效果实现…

作者头像 李华