APP下载

鲸豚声信号实时采集与分析系统❋

2022-01-13李玉红葛玉荣黄城铭

关键词:水听器白鲸哺乳动物

李玉红, 徐 铭, 葛玉荣, 黄城铭

(中国海洋大学信息科学与工程学院, 山东 青岛 266100)

生物学家已经证实对海洋哺乳动物的声音识别是一种估计其物种分布的有效办法[1-2]。对于能发声的哺乳动物如鲸豚等,通过声信号识别分析可以迅速定位到该物种的活动区域,便于进一步对其习性进行研究,从而提高海洋生态环境保护。国内外学者一直在研究更新设备,应用于采集海洋哺乳动物声信号及信号处理方式方法,在全球范围内的不同海域进行长期的鲸豚鲸声信号采集与分类整理工作。

海洋哺乳动物的叫声主要分为三类:click(回声定位信号)、burst-pulse(脉冲突发信号)和whistle(通讯交流信号)。海豚声信号主要集中在20~30 kHz(交流声)和100~150 kHz(探测声)[3-4]。牛富强等[5]发现在不同的声行为下,瓶鼻海豚发出的click信号频谱特性变化趋势基本一致。汪启铭等[6]发现厦门和雷州湾海域的中华白海豚,相邻click信号的时间间隔和声源级具有明显差别。李赫等[7]对圈养环境下瓶鼻海豚、白鲸、伪虎鲸 click脉冲信号进行了特征分析,发现伪虎鲸部分click脉冲信号的频谱具有双峰的特殊性质。高德洋等[8]对圈养环境下的瓶鼻海豚、白鲸和伪虎鲸的click信号进行深度学习识别,识别率高达98.28%。海洋哺乳动物的click信号具有高频短时宽带的特点,可用于识别不同种类的海洋哺乳动物。

国外学者研制出从仅依靠水听器的简易系统到高度集成的高端系统之间的多种系统设备,用于采集检测不同环境下的海洋哺乳动物声信号[9-10]。国内声学所相关研究人员曾设计出一套声信号采集检测系统设备,其系统包括采集、监听和分析三个部分,该套设备前期经过实验室实验和水池环境测试,实验效果良好[11]。水下声信号易受多种环境因素影响,其数据量大、信号处理复杂,目前国外的icListen HF智能水听器可以对海洋动物的数据实时处理,但对于海洋动物的实时识别系统国内外报道很少。

本文利用FPGA在实时高速数据采集领域具有时钟频率高、内部延时小、集成度高、功耗低、内部资源丰富等优点[12-13],设计声信号识别算法,实现水下鲸豚声信号实时采集与处理系统,达到特定鲸豚叫声信号的实时识别。

1 系统整体设计

本文设计了鲸豚声信号实时采集处理系统,其整体结构如图1所示。

本系统将水听器采集到的声信号,通过前置放大及滤波,再经过AD采样后,进行两路并行处理。一路用来存储原始数据,为保证数据连续采集的过程中持续存储的可靠,系统利用FIFO进行乒乓式数据缓存,以确保不丢失数据。另一路对原始数据进行实时处理,即用小波包将信号分解为若干个窄带信号,再进行EMD分解,进而通过IMF分量进行阈值甄别。最后通过重构的信号用于识别不同物种的叫声,进而将甄别结果通过串口上传至上位机,上位机在接收到鲸豚识别信号后,结合船舶的GPS和航速航向等信息,可将识别的鲸豚信息标注在海图上,从而实现在船舶走航过程中对水下大型哺乳动物的跟踪。

图1 系统框图

1.1 硬件设计

1.1.1 滤波放大电路设计 声信号在水中传播时衰减的非常严重,水听器接收到的声信号通常比较微弱,有时能达到μV级信号,不适合ADC器件的直接采样。为使信号放大到ADC的工作范围并尽可能降低噪声,本系统采用了一个二阶Sallen-Key带通滤波放大电路,上下限截至频率分别为200和1 kHz,使用四通道单刀单掷开关ADG1611和AD620构成可增益放大电路,可配置的增益范围为1~10 000,其性能高于三运放分立仪表放大器设计。该有源滤波器由集成运算放大器(LMH6624)构成,具有高输入阻抗,低输出阻抗可调信号截止频率的特性,从而不失真的将接收到的声信号放大到ADC的工作范围内。

1.1.2 ADC选型及SD存储 因鲸豚click信号的频率在1~200 kHz,为保证采样不失真,系统采样率为应不低于400 kHz,而鲸豚叫声信号随着其距离水听器的远近造成声信号动态变化范围在几十到上百dB。考虑到满足以上两个条件的ADC,系统采用TI公司的ADS1675芯片,其动态范围为103 dB,分辨率24 bit,采样率最高可达4Msps,可满足鲸豚信号的采样率要求。该芯片提供高速和低速两种数据模式,为节省存储空间本系统采用低速模式,采样率设置为500 kHz。

AD采集卡的数据采用二进制方式块存储,加上一些指令及参数的额外开销,实时存储速率约2 MB/s。为满足这种高速存储需要,系统选用class10以上的SD卡,FPGA对SD卡操作采用四线SDIO模式,SD卡的SCLK为25 MHz,SD卡理论存储速率可达20 MB/s,足以满足实时存储要求。

1.2 FPGA处理模块

既要保留原始声信号数据作为科学研究,同时又要利用算法快速实时的甄别出鲸豚的信息,普通单片机以无法胜任这种高速运算和大数据量吞吐的需要,需选用FPGA/CPLD甚至结合DSP等专用芯片来完成。相较于DSP系统,FPGA编程灵活性高,开发周期短且并行计算效率高;相较于CPLD系统,FPGA功耗低、集成度高、适合于触发器丰富的架构。为便于系统扩展及二次开发的需要,本文采用FPGA作为核心系统,选用Altera公司的Cyclone IV系列芯片:EP4CE55F23I7。该款芯片供电电源只需两路,简化了外部电源的设计,并可减小电路板面积。该芯片工作时钟通过100 MHz差分晶振提供,作为其内部PLL的输入时钟。经过PLL后的时钟可以经过分频或倍频调整时钟频率和相位,进而为内部模块提供时钟,足以满足同时采集声信号和存储的需要。系统硬件电路实物图如图2所示。

图2 电路实物图

2 信号识别算法

对鲸豚click声信号的提取,本系统采用频率检测和阈值检测双重检测,先对叫声信号截取,然后对截取的声信号进行识别分析。希尔伯特-黄变换(Hilbert-Huang Transform, HHT)能较好的分析非线性非平稳信号,具有完全自适应性,对于信号整体和局部的时-频域均能达到较高的分辨率,通过改进的HHT算法能避免传统HHT中出现虚假分量的缺陷,确保分解出的固有模态分量(Intrinsic Mode Functions, IMF)[10]具有单分量的特性。

2.1小波包分解预处理

信号经过经典模态分解(Empirical mode decomposition, EMD)后的数据信号x(t)可以表示为:

(1)

其中:i代表了IMF的阶数;ω(t)是信号的瞬时频率;a(t)代表信号的幅度。

Hilbert边际谱H(ω,t)表示为

(2)

式中:Hilbert边际谱反映的是每一个频率点上的幅值情况,是信号瞬时频率的总幅值;H(ω)可通过Hilbert谱进行定义,即Hilbert谱对时间的积分:

(3)

由于EMD具备近似的正交性,因此可知相关的IMF分量imfi(t)与原始信号x(t)会有较强的相关性[14]。据此,根据IMF分量imfi(t)与原始信号x(t)相关系数μ作为判断IMF分量是否相关的判断依据。

将相关系数进行归一化处理,避免丢失相关而能量却较小的IMF分量,对于n个IMF分量的相关系数μi(i=1,2,…,n),甄别阈值如下[14]:

(4)

其中η代表比例因子。当μi>λ时,该分量保留在IMF中,相反,则加入剩余信号中rn(t)。这样可以避免虚假的频率分量出现在Hilbert谱中,去除IMF分量imfi(t)与原始信号x(t)相关性弱的分量。

但鲸豚声信号直接进行EMD分解时得到的单个IMF分量频率成分不单一,无法保证其单分量特性,直接计算瞬时频率时容易出现频率混叠现象。要能使单个IMF分量较为明显的显示出单分量特性,必须进行预处理。

图3 三级小波包分解

小波包分解可以把信号按照任意时频分辨率无泄漏、不重叠的分解到不同的频段。信号小波包分解可以按照需要进行多次,最终获得所需要的频率,并保留信号的所有信息。

(5)

(6)

(7)

为了确保EMD分解后得到的IMF分量均符合单分量特性,可先将原信号x(t)通过小波包分解成为若干个窄带信号,然后进行EMD分解,如此生成的所有IMF分量的瞬时频率均具有物理意义。三级小波包的分解如图3所示。其中,A代表低频,D代表高频,末尾下标的序列号代表小波包分解的层数(即尺度数)。小波包分解在确保每个IMF分量的单分量的同时,又保证了能量较小的频率分量不会因为被能量较大的频率分量掩盖,而被EMD忽略,从而保留了高频率低能量成分。

2.2 改进算法

鲸豚click声信号属于高频窄脉冲,脉冲持续时间短,声信号经过EMD分解后,可获得有限个IMF分量以及残余分量rn(t)之和。经由n级(一般取n为3)小波包变换将原始信号分离成2n个窄带信号;EMD分解得到有限个IMF分量和剩余信号;归一化相关性甄别处理:计算所有IMF分量与原始信号的相关系数,利用上式得到甄别阈值λ,并进行识别工作;最终的剩余信号由相关性弱的IMF分量与剩余信号叠加得到;计算强相关的IMF分量的Hilbert变换,得到时间-频率-能量的Hilbert谱图,如图4所示。

图4 算法流程图

信号通过EMD分解为4个IMF分量和残余分量,对信号的4个IMF进行希尔伯特黄运算,其频谱图如图5所示。由图可知,信号在未进行预处理之前直接进行EMD分解产生的各IMF分量频率不单一,无法保证其单分量特性。但经过小包波分解预处理之后信号的IMF分量的单分量特性刻画的比之前有了很大的提升,能够得到信噪比较高的声信号,提高信号的分解能力,使信号中提高高频信号抑制低频信号。通过预处理之后的Hilbert变换能更加清楚地区分出频谱区间的变化,为后面用H(ω)作为特征参数进行物种识别提供数据保障。

图5 原始信号的IMF频谱(a)与改进后的IMF频谱(b)

2.3 FPGA实时算法逻辑

FPGA的软件使用Quartus II对系统的程序进行编写设计,算法使用Verilog 进行编写。FPGA对实时声信号一直采集记录,并做实时阈值检测,在声信号幅值超过阈值设定时,截取该阈值数据点前30 ms加后200 ms数据做FFT检测,当FFT峰值在30~150 kHz时作为获取到鲸豚信号的判据,对截取信号进一步做EMD分解,获取声信号的前4个IMF谱峰值,再做HHT得到特征参数H(ω),并结合上一步FFT后的主频做出最后判断,用于区分该声信号是白鲸或者是瓶鼻海豚。图6为FPGA的算法逻辑流程图。

图6 FPGA算法逻辑

3 饲养池实验

在实验室测试成功后,本系统应用到鲸豚圈养的饲养池进行连续采集识别实验。实验中采用的水听器是丹麦B&K8104,频率响应从 0.1 Hz 到 120 kHz,灵敏度为-205 dB(ref:1V/μPa) ,设置AD采样频率为500 kHz。饲养池长20 m,宽10 m,水深5 m,白鲸和瓶鼻海豚分时进入。水听器放于饲养池的侧壁,深度3 m(见图7)。声信号采集期间,池中鲸豚处于自由游泳的状态,期间有人员走动。

图7 水听器在圈养池

图8 白鲸和瓶鼻海豚单个click的时域图

图9 白鲸和瓶鼻海豚单个click信号频谱图

表1 采集的鲸豚click信号对比分析

对采集的瓶鼻海豚和白鲸的click信号用MATLB进行分析,如表1所示。由频谱图9可知瓶鼻海豚的能量集中在70~85 kHz,白鲸的click脉冲信号能量集中分布在50 kHz,瓶鼻海豚的实验数据在30 kHz左右一直存在信号干扰信号。通过对比牛富强等[5]室内环境的瓶鼻海豚的click信号,其采集的click信号脉冲间隔在30~490 ms,频率峰值在73 kHz。而本次实验采集的瓶鼻海豚click脉冲信号的脉冲间隔相较更小,峰值频率相较更高。可见虽然都是在室内环境,不同的圈养环境也会造成海豚的声信号特征差异。

FPGA系统对采集到的90组原始信号(其中瓶鼻海豚和白鲸各45个)中做实时的识别,其识别正确结果为瓶鼻海豚39组正确率86.7%,白鲸40组正确率88.9%,通过对错误识别的声信号进行分析,发现问题由池壁的混响导致个别数据的截取位置错误,以及人员走动引起的振动干扰所致。

4 结语

本文将FPGA系统的高速数据采集及实时运算优势应用于海洋哺乳动物叫声信号的采集与快速识别传输,通过改进后HHT方法更加有效的提取了不同哺乳动物声信号的特征参数,对瓶鼻海豚和白鲸叫声识别的正确率达到了86.7%以上,池壁的混响和噪声是导致错误识别率的主要原因。对该系统进一步完善可将其布放到远洋货轮及远洋科考船上,从而随船实时识别大型水下哺乳动物,为海洋生态环保提供了技术支持。

猜你喜欢

水听器白鲸哺乳动物
二维码技术在水听器配对过程中的应用研究
低频弯曲式水听器研究
我的白鲸朋友
海豚VS白鲸,谁更聪明
白鲸
2 从最早的哺乳动物到人类
哺乳动物大时代
哺乳动物家族会
哺乳动物不全是恒温动物
空中“大白鲸”