基于弹丸冲击波的实时狙击手声源定位
The Bullet Shockwave-Based Real-Time Sniper Sound Source Localization
原文地址:https://ieeexplore.ieee.org/document/9026925/references#references
摘要
实时狙击手声源定位是当今声学研究的一个重要领域,所有的定位系统均采用枪口爆破信号进行定位。然而在不理想情况下,低信噪比的枪口爆破信号将严重影响定位系统的准确度。相比之下探测冲击波信号更加容易且具有较高信噪比。本文针对这一特性仅基于子弹的冲击波信号设计了一个狙击手定位系统。在此项研究中,利用至少两个麦克风阵列在二维真是环境下,首先获取其子弹轨迹,其次,子弹马赫数的衰减曲线被应用到轨迹的确定中。此外,常用的互相关相位转换法(GCC-PHAT)被采用做为计算麦克风阵列间时延的方法。基于所提出的方法,使用AK-47武器和6.72毫米口径的子弹在不同的真实环境下进行实验。实验结果证明在400米的距离下,狙击手定位可以达到小于30m误差的精度。
一、介绍
子弹信号研究是一个重要话题。其中最为重要的目的之一就是寻找狙击手的位置。当狙击手射出子弹,估计的射击源位置将帮助制止暴力并成为生死攸关的问题。最早的与射击声音相关的综合研究可以追溯到1969年,作者讨论了弹道冲击波信号的传播和衰减规律。在1969年,狙击手定位算法基金会成立,并延存至今。然而,对于不同的狙击手定位系统的研究仍在继续并已经引入了该领域的许多不同算法的设计。在这些研究中,已实施的系统的性能多是取决于声音检测装置的质量和运算算法和硬件的精度。为了找到真实环境下的狙击手的位置,充分利用所有的由子弹射击产生的信号是至关重要的。利用麦克风接收到的信号,可以估计开火检测时间、狙击手的位置、子弹口径、枪械类型。超音速子弹的射击,如图一所示,可以联系到两个独立的声音信号上:冲击波信号(SW)和枪口爆破信号(MB)。冲击波信号是由发射体的超音速运动引起的,且由于当子弹在空气中的运动轨迹上运动时产生的声障的影响(sound barrier),冲击波信号呈圆锥状。它将随着不同子弹的特性而改变。当麦克风阵列处在冲击波信号的视场内,冲击波信号即是麦克风阵列所接收到的第一个信号。这一部分是一个脉冲信号,持续时间约为100-1000μ sec且其频率带较宽,在1到10KHz之间。枪口爆破信号部分是由枪管的气体爆炸引起的。它同样也是一个脉冲信号,它的持续时长约为2-5ms,比SW更长,频率较低在200-500Hz间,MB信号是球状的,且从枪手到麦克风阵列以声音传播速度沿直线传播。此速度与空气温度有关:
其中 T是空气的摄氏温度,C0是摄氏零度下的声音速度,为331m/s。
图一
通常来说,枪手位置是不能仅仅凭借SW信号估计出来的,还需要MB信号。因此,可以通过采集MB和SW信号并计算二者的TDOA(到达时间差)来实现。当然,枪手位置也可以由只计算MB信号的TOA(到达时间)来估计出来。但是,本文中,枪手定位仅使用SW信号实现。SW信号可以用来估计子弹轨迹、口径和速度。在大部分的参考文献中,飞行过程中的初始的子弹速度被假定为常数,这引发了定位误差。
在大多数的参考文献里,两个子弹信号都被利用到了枪手定位中,而在不利的天气条件下和拥挤的环境中,MB信号的质量会严重下降。但是在低信噪比环境中采集的SW信号,也足够准确。MB信号会被不同的环境条件所影响,当探测在拥挤环境中进行、局部的风、噪杂的噪声、射手使用消音器。本文提出一个新式的基于仅用SW信号的低信噪比环境下的实时狙击手定位方法。
二、想法
本文的创新型在于仅使用SW信号在低信噪比真实环境下进行枪手定位。同样,将使用最少的传感器阵列以及最少的传感器阵元,这将降低计算量。这种方法使用不同位置上的至少两个麦克风阵列,可以安装在军用设备上。这两个阵列各有三个阵元,可以视作一个点。子弹轨迹将会通过这两个轨迹和96KHz采样率的数字转换器获得。此外,可以利用获取的子弹轨迹和SW的其他特征来获得子弹速度的下降曲线。最终,将有可能利用这一速度下降曲线来估计出低信噪比环境下的狙击手位置。
通过这一研究,将会获取AK47步枪的减速率曲线,并将其应用于本计算中。通过使用这一衰减速率,可以显著提高射击手定位的准确率。通过探测和处理SW信号,子弹的其他特征如冲击时长、错过距离以及第一次捕获SW信号的位置将能够获得。
在本文中,研究了马赫数和它与子弹速度的关系,和其他影响SW信号的参数。此外,子弹的速度衰减降低导致的马赫数降低也会被进行研究。在每个子弹信号到达麦克风阵列之间的距离和这些时间之间的关系将被分析。需求的麦克风的最小数量也会被讨论。图二描述了该方法的流程图。
图二
三、SW声信号侦测
时域中的SW声信号有一些特性,该信号的形状与大写字母N相似,在信号开始和结束时有着较陡的边缘。一个SW信号是由超音速发射物引起的。由于子弹对其前端的空气进行挤压,导致产生了一次音爆。锥形SW信号的形状可以描述为子弹速度V与声音传播速度C的比值V,被称作马赫值。合理的马赫值的范围介于1到3之间。对于亚音速发射物来说,SW信号并不是可观察的,因为马赫数小于1。信号传播的角度α,也被称作马赫角,其表达式为
其中,M是马赫数,对于超音速子弹信号来说,子弹熟读降低时,α增大。图三展示了本研究中,麦克风阵列周围的子弹运动方向。该子弹是从点S射出的,并运动完整个子弹轨迹。点M是麦克风阵列的位置。A是第一次捕获到SW信号的位置。在子弹轨迹与麦克风阵列位置间的距离称作错过距离(Miss Distance)(点B与M间的距离,总是垂直于子弹轨迹)。错过距离是一个基本因子,变化范围从0到50m。当L是子弹的长度,b是错过距离,M是马赫数,C是声音的传播速度时,SW信号的周期/持续时间T为发射物直径或口径的函数:
此外,子弹的长度与它的直径有关:
图三
有实验研究了错过距离b与SW信号长度T间的关系,其表达式为:
四、基于SW与MB信号间TDOA的方法
在基于SW与MB信号间TDOA的枪手定位系统中,子弹射击产生的信号被由八个麦克风组成的阵列从不同的路径和速度记录下来。根据图三,点S和M分别表示枪手的位置和麦克风阵列的位置。如果dsm是范围,也即S与M间的欧氏距离,并假设它是一条可见路径,那么MB信号的探测时间可以写作:
其中Tshot是射击时间。当武器开火后,MB信号将在dsm/C秒后被探测到,它以声速从S传播到M。由于SW信号并不跟随MB信号的传播路径,而是沿着弹道传播,所以考虑子弹从点S到点A沿弹道的飞行时间是很有必要的,同时还有SW信号从A到麦克风阵列位置M的传播时间。如果子弹速度V是一个常数值,那么SW信号的侦测时间可以被计算如下:
因此,测量到的SW-MB TDOA可以被表示为:(8)
根据图三,可计算角度AMB,即α,和错过距离b。距离dam和dsa可以表示为:
现在,公式(8)可以解出dsm:
其中R和H被定义为:
图四展示了在据麦克风位置350m左右的由7.62mmAK-47步枪产生的射击信号。两信号间的TDOA如图中所示:
A.子弹减速对枪手定位的影响
图五展示了射手与麦克风间距离与弹速间的关系。本文中,这一速度衰减作为一个校准系数被应用到了Δτ的测量中,因此,两个信号间的TDOA表达式为:
其中β是校准系数,介于1到2之间,因此公式13中的R和H将被改变。
B.弹道
实际的弹道是受子弹减速影响的,且与理想的弹道有一定偏差,图六展示了理想弹道与实际弹道的偏差。
图六
在本研究中,弹道是通过捕获子弹的飞行路径上的两点来获得的。图九展示了提出的方法中的两个麦克风阵列的结构。
麦克风阵列M1包含三个麦克风,结构简单,在点A1接收到第一个SW信号,并在二维平面上成Φsw角。M2同。再利用校准因子即可获得相对的真实弹道。
C.麦克风间距离
通过增大阵列中麦克风阵元间距,时差测量的准确率将提高,枪手定位系统误差会降低且弹道描画的准确率也会提高。然而,在选择距离值时,存在一些限制条件。此距离应小于信号波长的一半:
这是因为子弹信号是宽带信号,其周期信号部分应该被考虑进来。鉴于SW信号属于周期信号,如果最大周期和声速分别为0.5ms和345.24m/s,那么麦克风间最大距离如下:
由于目标是计算SW信号间的TDOA,所以麦克风间最大距离应该小于8.6cm,本文采用8cm。
D.广义互相关相位转移法
两个信号的频域互相关函数如下:
假如s2(t)是s1(t)的延后信号,这个函数将在等于时延的点出现一个峰值。这个时延可以表示为:
PHAT方法中,加权函数与相关函数同时使用,为:
其中G(f)为互相关功率谱,由下式获得
由此,总的互相关函数为:
E.子弹信号的DoA估计
如果s(t)是信号源,如图十所示,如果s1(t)是第一个麦克风的输出信号,s2(t)是第二个麦克风的输出信号,考虑环境噪音,根据所谓的平方反比定律,两个麦克风接收到的信号可以被模型化为
其中d1和d2是从源到第一个和第二个麦克风的距离,T1和T2是从源到第一个和第二个麦克风的时间差。n1(t)和n2(t)是添加的高斯白噪声。假设TD是两个麦克风捕获的时差,并且考虑独立的n1(t)和n2(t),那么s1(t)与s2(t)间的CC公式为:
两信号的时延为
如果λ是单频原信号的波长,正确的时延测量方法需要麦克风间距离满足式(22)中的要求。声源到两个麦克风的距离可以这样表示:
其中x、y是声源坐标,假设两个麦克风处于原点两侧偏移R的位置,R=D/2,那么时延τ21为:
其中C是空气中的声音传播速度,可以将式(37)简化为
其中y与x呈双曲线函数关系。为了确定x、y的数值,需要再引入一个麦克风阵元。则每一对麦克风间的时延可以写作:
根据图十,角Φ可以写为:
第三个麦克风与其他麦克风间的时延可以写作:
简化上式可以得到:
最终,第二个麦克风(-R,0)与其他麦克风间的时延可写作:
简化上式可以得到:
事实上,本节介绍的这种方法将会用于所有的信号。
基于弹丸冲击波的实时狙击手声源定位相关推荐
- 基于时延法的麦克风阵列声源定位分析
文章目录 一. 关于麦克风阵列 二. 关于声源定位 三. 基于广义互相关(GCC)计算时延 四. 基于时延差的声源定位法 1. 近场模型 2. 远场模型 五. 三维空间阵列的声源定位系统实现 1. 推 ...
- 声源定位matlab模拟,毕业论文-基于MATLAB的声源定位系统.doc
PAGE PAGE 1 毕 业 设 计(论 文) 基于MATLAB的声源定位系统 专业年级 07级应用物理学 学 号 姓 名 指导教师 评 阅 人 二○一一年六月 中国 南京 河 海 大 学 本科毕业 ...
- (转载)基于TDOA声源定位算法仿真–MATLAB仿真
(转载)基于TDOA声源定位算法仿真–MATLAB仿真 转载自:https://blog.xxcxw.cn/archives/28 声源定位算法是利用麦克风阵列进行声音定位,属于宽带信号,传统的MUS ...
- matlab 声源定位csdn_[转]基于TDOA声源定位算法仿真--MATLAB仿真
声源定位算法是利用麦克风阵列进行声音定位,属于宽带信号,传统的MUSIC和DOA算法并不适用该场景,本仿真主要用TDOA算法进行定位. 常用的阵列信号定位算法主要有三大类:基于高分辨率谱估计的定位技术 ...
- 基于TDOA声源定位算法仿真–MATLAB仿真
评论或私信 5元获取解压码 声源定位算法是利用麦克风阵列进行声音定位,属于宽带信号,传统的MUSIC和DOA算法并不适用该场景,本仿真主要用TDOA算法进行定位. 常用的阵列信号定位算法主要有三大类: ...
- 基于麦克风阵列的声源定位算法之GCC-PHAT
目前基于麦克风阵列的声源定位方法大致可以分为三类: 基于最大输出功率的可控波束形成技术 基于高分辨率谱图估计技术和基于声音时间差(time-delay estimation,TDE). 基于TDE的算 ...
- 麦克风声源定位原理_基于麦克风阵列的声源定位算法之GCC-PHAT
目前基于麦克风阵列的声源定位方法大致可以分为三类:基于最大输出功率的可控波束形成技术.基于高分辨率谱图估计技术和基于声音时间差(time-delay estimation,TDE)的声源定位技术. 基 ...
- 麦克风声源定位原理_基于麦克风阵列声源定位系统最新版
<基于麦克风阵列声源定位系统.doc>由会员分享,可免费在线阅读全文,更多与<基于麦克风阵列声源定位系统>相关文档资源请在帮帮文库(www.woc88.com)数亿文档库存里搜 ...
- 麦克风阵列定位matlab算法,基于麦克风阵列的MUSIC声源定位算法研究
摘要: 作为阵列信号处理领域的一个分支,麦克风阵列已广泛应用于电视会议.语音增强及识别等方面.声源定位是麦克风阵列进行空间滤波的重要基础,近年来发展迅速.基于阵列的定位算法可以分为超分辨算法和非超分辨 ...
最新文章
- 云炬随笔20211001
- python底层网络交互模块_网络和并发编程(面试题)
- docker和虚拟机的区别_详解win7操作系统下安装部署Docker环境
- Microsoft.Jet.Oledb.4.0 找不到提供者或未安裝問題
- 中国女性灭菌装置行业市场供需与战略研究报告
- 用MATLAB编程课程设计,matlab课程设计报告---用Mtlab编程实现句柄图形应用
- 关于geekcode
- Qt总结之一:遍历文件夹和文件目录,并过滤和获取文件信息、后缀名、前缀名(一)
- php开源路由器,路由 - Symfony开源 - Symfony中国
- c语言语法语义解析器,一个简单的C语言词法分析与语法分析器【原】
- jad 反编译eclipse操作步骤
- 提高MyEclipse启动速度
- oracle恢复被覆盖的存储过程
- c 上传文件路劲为服务器路径,获取上传文件的路径变成C:\fakepath\
- kindle安装插件和koreader
- 洛谷:P1878 舞蹈课(普及/提高-,stl,堆)
- 人参鹿鞭片39.9/花花公子裤子29/除螨仪9.9/三合一数据线8.8/阿迪达斯沐浴露39.9/超多好物你等!...
- wxid 转微信号 如何找到原始id教程
- 织梦图集php,采集功能的使用方法 --- 图片集(一)
- 懂车帝与蛋蛋订车两大平台对比
热门文章
- Qt Creator不同Qt版本切换
- 正在连接127.0.0.1...无法打开到主机的连接。 在端口 1433: 连接失败”
- 使用Java编写自己的区块链
- word中出现红色字体且带下划线,怎么办?
- Contest1003 - 河南工程学院2022级新生周赛(三)
- php正则取出后不保留左右,PHP 正则 如何匹配不出现某段字符串的写法!(保留备份)...
- Pre-Switch宣布推出采用人工智能的跨平台软开关技术
- 基于简单神经网络模型的鸢尾花分类问题
- [console] early printk实现流程
- termux获取sd卡读写权限_TF卡戴套客串SD卡真的靠谱吗?用数据说话