阅读文章前辛苦您点下“关注”,方便讨论和分享,为了回馈您的支持,我将每日更新优质内容
文|九鹏举
编辑|九鹏举
机器视觉在近几年得到了充分的发展,例如相机、深度传感器和激光雷达在各类机器人和无人驾驶车辆中得到了广泛应用,能满足大部分场景下的使用需求。
传统视觉传感器以光线为基础,利用感光元件捕获光线,从而实现对周围环境信息的提取。
当前SLAM方法中应用最为普遍的激光测距方式,以约600r/min的转速由电机带动激光发射与接收器连续旋转,对机器人外围环境距离进行扫描。
旋转机构增加了激光SLAM装置质量与功耗,长时间运转的电机与轴承限制了SLAM装置的连续工作时间与寿命。
同时,激光测距方式遇到环境中的玻璃等透光物质时会无法工作,环境中的温度变化、烟雾、悬浮颗粒物等会严重影响检测准确性,激光器件的安全等级难以应用于油站、矿井等环境中。
此外,激光器件的高成本限制了激光SLAM方法在家庭、娱乐等领域服务机器人中的更多应用。
可见,当前的SLAM方法难以应用于许多实际环境,特别是需要机器人发挥作用的野外、矿井、水下环境,以及地震、火灾、燃爆等事故现场,难以应对服务机器人的快速发展需求。
但是,机器人技术的不断进步和机器人应用场景的不断拓展,对空间目标搜索和避障提出了新的要求。
因此,探寻新的障碍物识别方法,对于拓展服务型机器人的应用场景,完善机器人的使用功能,有着十分重要的现实意义。
虽然声呐系统的研发思路来源于蝙蝠、海豚等使用超声波的生物,但现有声呐系统与蝙蝠和海豚在自然界中的表现相比显得极为落后。
蝙蝠自身的声呐系统只包含两只耳朵和发声装置,达到毫米级的定位精度要通过各个器官的配合。
与蝙蝠的生物声呐系统相比,现在的声呐定位系统在体积、灵敏度、抗干扰能力、重量和精度方面,都存在着巨大的差距。
如何从蝙蝠定位系统和方法中获得灵感,并将其整合到当今的声学定位系统中,是一个值得研究的课题。
通过对蝙蝠超声的研究,有助于开拓在弱光环境下机器人的应用,在黑暗矿井下或者粉尘大的场合,超声定位将比视觉系统有更好的表现。
随着服务型机器人的不断研发,越来越多的机器人出现在人们的身边,例如在现代办公楼中,机器人工作环境多为室内或者小空间环境。
在实际应用中不难发现,玻璃幕墙在写字楼中的使用越来越多,由于玻璃的高透光性,现在常用的激光雷达在对玻璃的识别上表现得相当差。
超声听觉则可以很好地弥补这个短板,如今,在追求机器人结构轻便化、灵巧化的背景下,结构简单、工作可靠的双耳定位装置将给开发机器人在各个环境下的工作提供极大的便利。
相比于传统的声呐系统,双耳超声系统具有体积小、轻便及成本低等优点,因此,根据仿生学的原理,模仿蝙蝠进行双耳超声系统的开发具有重要的理论意义与工程价值。
技术路线
本文的情绪识别机器人技术主要包括四部分,分别是回波定位模型及装置的构建、回波频谱的方向相关特性的分析、回波信号特征提取和空间中物体的定位,具体如图1所示。
了解超声波在空气中的传播特点,蝙蝠喉咙中的发声器官被简化为球形声源,喉咙中发声器官发出的声音信号以声波的形式在空气中传播,被测障碍物使用刚性球体,考虑到测量距离,建立超声定位系统的远场模型。
学习超声采集模块的使用,模块驱动板使用32位ARM主控制MCU,所连接麦克风阵列MIC座板使用MEMS数字麦克风采集回波信号。
采集模块安装在一个二自由度云台上,用于控制接收装置与小球之间的相对位置,超声发射的触发信号及云台的控制均由STM32系统板实现,使用KEIL进行程序调试。
对采集到的超声回波信号进行预处理,对采集到的超声信号进行带通滤波操作,滤除频段外的其他干扰信号,通过基于短时能量和短时平均过零率(ZCR)的双门限算法进行信号端点检测,截取正确的回波信号。
研究对每条输入信号进行分帧加窗,将每帧回波信号进行快速傅里叶变换,获得频域信息,接着通过频谱转换及计算DCT倒谱,分别计算Mel倒谱系数及Gammatone倒谱系数,并从中提取MFCC参数及GFCC参数,共同组成混合参数,作为神经网络学习的特征向量。
研究学习深度学习及神经网络建模方法,利用前面得到的特征向量,构建空间位置识别模型,构建LSTM神经网络。
首先,混合特征向量被用作LSTM网络的输入,网络中只有一层LSTM层,足以显示数据之间的连接,太多的层会使网络培训时间更长。
LSTM层激活函数使用tanh函数,优化器使用Adam优化器,最后将训练样本集的音频特征序列用作输入层,并将其替换到网络中进行训练,训练结束后,将测试样本的音频特征序列输入网络以验证结果。
立体声学定位研究
超声通过波的方式在空气中传播,本质也是一种机械波,频率一般大于20kHz,通常以纵波的形式在弹性介质中传播,纵波是能量传播的一种形式。
通常,声波的特征由波长、声速、周期和频率等参数表示,波长是指波在一段时间内沿传播方向传播的距离;声速表示声波在介质中的传播速度;频率表示1s内通过特定点的声波数量,三者之间的关系为:
考虑超声波在空气中的衰减等因素,为了获得更高的信噪比和方向性,本文选择的超声模块发射频率为40kHz的超声波,在空气中声速为340m/s,可计算出其波长为8.5mm。
一般情况下,声波的强弱由声压、声强等参量来表示,声压由作用在单位面积物体上的声压差表示,单位为帕(Pa),通常,声压的对数用于比较声音的强度,称为声压级,单位为分贝(dB)。
将超声发出到接收的整个过程看做简化的模型:即超声模块通过换能器发出超声信号,信号在空中传输后,被障碍物反射,最终到达麦克风由麦克风接收,近/远场的分界距离为0.425m。近场远场判别示意见图4。
本文预滤波使用高通滤波器,通过设置合适的截止频率,以有效排除特殊频段外的噪声,从而降低噪声信号对后续数据分析的影响。
可听声声音频率范围为20Hz~20kHz,实验使用的超声测距模块发射的超声波频率为40kHz,故选择下截止频率为20kHz,上截止频率为60kHz,选择巴特沃斯型带通滤波器,滤波器滤波效果如图5所示。
从滤波后波形可以明显看出,通过带通滤波后,采集到的信号变得更为平滑,由于换能器距离麦克风较近,故通过双门限法截取的回波信号中,既包括了发射信号,也包括了麦克风接收到的返回的回波信号,通过时延估计的方法进行回波信号的截取。
即通过双门限法确定信号端点后,根据被测物体与换能器的距离,计算回波信号所在位置,并截取回波信号。
截取片段中最大幅值所在点作为发射波所在位置S1,计算发射波所在位置S2,为了获得较为准确的距离估算结果,采用互相关分析法进行距离判断。
t+Δt互相关函数表示两个信号在t时刻和Δt时刻的相关性的度量,在通过双门限截取出的信号中,即包括发射波信号,又包括回波信号。
但是由于回波信号是发射波信号经目标物反射后再由麦克风接收,即使回波信号存在空气中的衰减及环境噪声的干扰,也不影响回波信号与发射波信号之间的高度相关性。
因此,可截取发射信号,并将其与截取出的信号做互相关运算。
由于截取片段中不仅包含与发射信号完全相同的部分,还包含了和发射信号具有高度相关性的回波信号,因此会在发射波信号处与回波信号处取得较大值,互相关运算结果见图6。
得到回波信号位置S2后,以S2为中点,向两边拓展发射波持续时间,计算出回波信号的起点S3与终点S4。
为了保证回波信号截取的完整性,在计算终点时可适当加长信号持续时间,即:
Gammatone滤波器(GammatoneFrequencyCepstrumCoefficient,GFCC)是一种用于模拟人类耳蜗对声音频率的分解特性的滤波器,其时域表达式为:
式中:i-第i个Gammatone滤波器,共有N个滤波器;n-滤波器阶数;A-滤波器的增益;φi-相位偏移(为简化模型,本文将φi设为0);fi-滤波器的中心频率;U(t)-阶跃函数,bi是滤波器的衰减因子。
bEBR(fi)是等效矩形带宽,其计算公式为:
提取GFCC参数的步骤与MFCC参数类似,提取过程见图8。
求解出的GFCC特征参数维数较高,含有大量的冗余成分,直接使用计算得到的GFCC特征参数作为特征向量进行学习,所需计算量大,故采用PCA方法对所有子带提出的特征参数进行降维处理。
从降维结果可以看出,前7维贡献度总和超过了99%,故取前7维作为GFCC特征向量,与MFCC特征拼接后进行后续深度学习,GFCC谱图见图9。
本文采用的LSTM结构如图10所示,图中包含1个输入层、2个隐层和1个输出层,输入层采用线性激励函数,包含300个神经元,2个隐层中每个隐层都包含200个神经元,输出层仍采用Softmax回归模型。
本文研究的是声源定位角度范围为水平角-15°~+15°,俯仰角-15°~+15°区域,间隔为3°,共121个位置点,因此,最后一层的输出层中有121个神经元,每个神经元的输入权重对应一个θ参数,如图11所示。
模型搭建完成后,将采集到的现有数据按7∶2∶1进行划分,对模型进行训练,并用划分出的测试集进行初步测试,准确率如图12所示。
为解决传统SLAM方法和现有声呐设备等的不足,文中提出通过了解超声波在空气中的传播特点,建立超声定位系统的远场模型,采集模块安装在一个二自由度云台上,用于控制接收装置与小球之间的相对位置。
对采集到的超声回波信号进行预处理和带通滤波操作,对每条输入信号进行分帧加窗,将每帧回波信号进行快速傅里叶变换,获得频域信息,学习深度学习及神经网络建模方法,利用前面得到的特征向量,构建空间位置识别模型。