麦克风阵列原理
2016-07-26 23:26
204 查看
1 麦克风阵列
麦克风阵列,是一组位于空间不同位置的全向麦克风按一定的形状规则布置形成的阵列,是对空间传播声音信号进行空间采样的一种装置,采集到的信号包含了其空间位置信息。根据声源和麦克风阵列之间距离的远近,可将阵列分为近场模型和远场模型。根据麦克风阵列的拓扑结构,则可分为线性阵列、平面阵列、体阵列等。
(1) 近场模型和远场模型
声波是纵波,即媒质中质点沿传播方向运动的波。声波是一种振动波,声源发声振动后,声源四周的媒质跟着振动,声波随着媒质向四周扩散,所以是球面波。
根据声源和麦克风阵列距离的远近,可将声场模型分为两种:近场模型和远场模型。近场模型将声波看成球面波,它考虑麦克风阵元接收信号间的幅度差;远场模型则将声波看成平面波,它忽略各阵元接收信号间的幅度差,近似认为各接收信号之间是简单的时延关系。显然远场模型是对实际模型的简化,极大地简化了处理难度。一般语音增强方法就是基于远场模型。
近场模型和远场模型的划分没有绝对的标准,一般认为声源离麦克风阵列中心参考点的距离远大于信号波长时为远场;反之,则为近场。设均匀线性阵列相邻阵元之间的距离(又称阵列孔径)为D=n*d,n为阵列间距个数,一般是M-1;声源最高频率语音的波长(即声源的最小波长)为λmin,如果声源到阵列中心的距离大于2D2/λmin,则为远场模型,否则为近场模型,如图1所示。
图1 近场模型和远场模型
(2) 麦克风阵列拓扑结构
按麦克风阵列的维数,可分为一维、二维和三维麦克风阵列。这里只讨论有一定形状规则的麦克风阵列。
一维麦克风阵列,即线性麦克风阵列,其阵元中心位于同一条直线上。根据相邻阵元间距是否相同,又可分为均匀线性阵列(Uniform Linear Array,ULA)和嵌套线性阵列,如图2所示。均匀线性阵列是最简单的阵列拓扑结构,其阵元之间距离相等、相位及灵敏度一直。嵌套线性阵列则可看成几组均匀线性阵列的叠加,是一类特殊的非均匀阵。线性阵列只能得到信号的水平方向角信息。
图2 线性阵列拓扑结构
二维麦克风阵列,即平面麦克风阵列,其阵元中心分布在一个平面上。根据阵列的几何形状可分为等边三角形阵、T型阵、均匀圆阵、均匀方阵、同轴圆阵、圆形或矩形面阵等,如图3所示。平面阵列可以得到信号的水平方位角和垂直方位角信息。
图3 平面阵列拓扑结构
三维麦克风阵列,即立体麦克风阵列,其阵元中心分布在立体空间中。根据阵列的立体形状可分为四面体阵、正方体阵、长方体阵、球型阵等,如图4所示。立体阵列可以得到信号的水平方位角、垂直方位角和声源与麦克风阵列参考点距离这三维信息。
图4 立体阵列拓扑结构
2 波束形成
波束形成,是对各阵元的输出进行时延或相位补偿、幅度加权处理,以形成指向特定方向的波束。
在远场模型中,假设输入是一个平面波。设传播方向为θ,时域频率(弧度)为ω,声音在介质中的传播速度为c,对于在一个局部均匀的介质里传播的平面波,定义波束k为
k = ωsinθ/c = 2sinθ/λ,其中λ是对应于频率ω的波长。由于信号到达不同的传感器的时间不同,则阵列接收到的信号可表示为
f(t)=[f(t-τ0) f(t-τ1)…f(t-τN-1)]T=[exp(jω(t-kτ0)) exp(jω(t-kτ1))…exp(jω(t-kτN-1))]T
其中τn为第n个阵元接收到的信号相对于参考点的时延,N为阵元个数,T表示转置。
定义v(k) = [e-jωkτ0 e-jωkτ1 …e-jωkτN-1]T
矢量v包含了阵列的空间特征,称为阵列流行矢量。则f(t)可表示为f(t)
= ejωtv(k)。
阵列处理器对一个平面波的响应为y(t,k) =HT(ω) v(k)ejωt
其中H(ω)是滤波器系数向量的傅里叶变换。符号y(t,k)强调了输出和输入波数k的关系。时域上的相关性体现在输出是一个复指数,和输入平面波有相同的频率。在频域上式可表示为Y(ω,k) =HT(ω) v(k)。
注意此处ω对应单一的输入频率,所以是窄带的。阵列的空时处理关系完全可以由上式的右端描述,称为阵列的频率-波数响应函数。它描述了一个阵列对于时域频率为ω,波数为k的输入平面波的复增益。
阵列的波束方向图反映了平面波在一个局部均匀的介质中传播情况,它是用入射方向表示的频率-波数响应函数,可以写成B(ω:θ) = Y(ω,k)|k=sinθ。
阵列的波束方向图是确定阵列性能的关键要素,其主要参数有3dB带宽,到第一零点的距离,第一旁瓣高度,旁瓣衰减速度等。其幅度的平方定义为功率方向图,是常用的一种阵列性能度量。
麦克风阵列,是一组位于空间不同位置的全向麦克风按一定的形状规则布置形成的阵列,是对空间传播声音信号进行空间采样的一种装置,采集到的信号包含了其空间位置信息。根据声源和麦克风阵列之间距离的远近,可将阵列分为近场模型和远场模型。根据麦克风阵列的拓扑结构,则可分为线性阵列、平面阵列、体阵列等。
(1) 近场模型和远场模型
声波是纵波,即媒质中质点沿传播方向运动的波。声波是一种振动波,声源发声振动后,声源四周的媒质跟着振动,声波随着媒质向四周扩散,所以是球面波。
根据声源和麦克风阵列距离的远近,可将声场模型分为两种:近场模型和远场模型。近场模型将声波看成球面波,它考虑麦克风阵元接收信号间的幅度差;远场模型则将声波看成平面波,它忽略各阵元接收信号间的幅度差,近似认为各接收信号之间是简单的时延关系。显然远场模型是对实际模型的简化,极大地简化了处理难度。一般语音增强方法就是基于远场模型。
近场模型和远场模型的划分没有绝对的标准,一般认为声源离麦克风阵列中心参考点的距离远大于信号波长时为远场;反之,则为近场。设均匀线性阵列相邻阵元之间的距离(又称阵列孔径)为D=n*d,n为阵列间距个数,一般是M-1;声源最高频率语音的波长(即声源的最小波长)为λmin,如果声源到阵列中心的距离大于2D2/λmin,则为远场模型,否则为近场模型,如图1所示。
图1 近场模型和远场模型
(2) 麦克风阵列拓扑结构
按麦克风阵列的维数,可分为一维、二维和三维麦克风阵列。这里只讨论有一定形状规则的麦克风阵列。
一维麦克风阵列,即线性麦克风阵列,其阵元中心位于同一条直线上。根据相邻阵元间距是否相同,又可分为均匀线性阵列(Uniform Linear Array,ULA)和嵌套线性阵列,如图2所示。均匀线性阵列是最简单的阵列拓扑结构,其阵元之间距离相等、相位及灵敏度一直。嵌套线性阵列则可看成几组均匀线性阵列的叠加,是一类特殊的非均匀阵。线性阵列只能得到信号的水平方向角信息。
图2 线性阵列拓扑结构
二维麦克风阵列,即平面麦克风阵列,其阵元中心分布在一个平面上。根据阵列的几何形状可分为等边三角形阵、T型阵、均匀圆阵、均匀方阵、同轴圆阵、圆形或矩形面阵等,如图3所示。平面阵列可以得到信号的水平方位角和垂直方位角信息。
图3 平面阵列拓扑结构
三维麦克风阵列,即立体麦克风阵列,其阵元中心分布在立体空间中。根据阵列的立体形状可分为四面体阵、正方体阵、长方体阵、球型阵等,如图4所示。立体阵列可以得到信号的水平方位角、垂直方位角和声源与麦克风阵列参考点距离这三维信息。
图4 立体阵列拓扑结构
2 波束形成
波束形成,是对各阵元的输出进行时延或相位补偿、幅度加权处理,以形成指向特定方向的波束。
在远场模型中,假设输入是一个平面波。设传播方向为θ,时域频率(弧度)为ω,声音在介质中的传播速度为c,对于在一个局部均匀的介质里传播的平面波,定义波束k为
k = ωsinθ/c = 2sinθ/λ,其中λ是对应于频率ω的波长。由于信号到达不同的传感器的时间不同,则阵列接收到的信号可表示为
f(t)=[f(t-τ0) f(t-τ1)…f(t-τN-1)]T=[exp(jω(t-kτ0)) exp(jω(t-kτ1))…exp(jω(t-kτN-1))]T
其中τn为第n个阵元接收到的信号相对于参考点的时延,N为阵元个数,T表示转置。
定义v(k) = [e-jωkτ0 e-jωkτ1 …e-jωkτN-1]T
矢量v包含了阵列的空间特征,称为阵列流行矢量。则f(t)可表示为f(t)
= ejωtv(k)。
阵列处理器对一个平面波的响应为y(t,k) =HT(ω) v(k)ejωt
其中H(ω)是滤波器系数向量的傅里叶变换。符号y(t,k)强调了输出和输入波数k的关系。时域上的相关性体现在输出是一个复指数,和输入平面波有相同的频率。在频域上式可表示为Y(ω,k) =HT(ω) v(k)。
注意此处ω对应单一的输入频率,所以是窄带的。阵列的空时处理关系完全可以由上式的右端描述,称为阵列的频率-波数响应函数。它描述了一个阵列对于时域频率为ω,波数为k的输入平面波的复增益。
阵列的波束方向图反映了平面波在一个局部均匀的介质中传播情况,它是用入射方向表示的频率-波数响应函数,可以写成B(ω:θ) = Y(ω,k)|k=sinθ。
阵列的波束方向图是确定阵列性能的关键要素,其主要参数有3dB带宽,到第一零点的距离,第一旁瓣高度,旁瓣衰减速度等。其幅度的平方定义为功率方向图,是常用的一种阵列性能度量。
相关文章推荐
- ios开发之级联菜单(两个tableView实现)
- 一起talk C栗子吧(第一百七十八回:C语言实例--字符和字符串输出函数一)
- Java 访问 HDFS操作
- 格式化IO
- 小米笔试题-懂二进制
- Builder模式
- windows7 x86_64系统安装xampp后apache无法启动,报Error: Apache shutdown unexpectedlyThis may be due to a blocked
- HDU5754 多校联合3 人生赢家Bo
- 列出一个目录中的所有文件
- OpenJ_POJ C16D Extracurricular Sports 找规律、大整数类
- 夏季集训前序
- Java中This ,Static,对象,对象的引用 等关键字的理解
- java中int和Integer的相互转化
- 关于MessageBox消息弹出框的制作
- hdu 2108
- 声场模型如何区分近场和远场
- Linux操作系统中JDK的安装
- HDU 3368 Reversi (暴力,DFS)
- Android Glide图片加载库的使用
- ServletInputStream的重复读取(多次读取)(转)