本发明涉及一种检测装置,尤其涉及一种距离检测装置及其距离检测方法。
背景技术:
一般来说,在三维空间中求取座标位置需要许多的麦克风搭配,例如当只有一个喇叭作为信号源时,需要大于四个以上的麦克风,才能通过每一个麦克风与喇叭的距离以及麦克风彼此之间的距离,来计算出特定麦克风的三维位置。
技术实现要素:
本发明提供一种距离检测装置及其距离检测方法,可减少距离测量所需的声音接收器数量。
本发明的距离检测装置包括扬声器、声音接收器以及处理器。扬声器配置于反射板的一侧,输出预设声音信号,反射板反射预设声音信号而产生反射声音信号。处理器将声音接收器所接收到的声音信号与预设声音信号进行交叉相关运算,以产生交叉相关信号,其中交叉相关信号包括对应预设声音信号的第一峰值以及对应反射声音信号的第二峰值,处理器依据扬声器输出预设声音信号的时间点、对应第一峰值的第一声音接收时间以及对应第二峰值的第二声音接收时间计算第一距离以及第二距离,并依据第一距离以及第二距离计算声音接收器与反射板间的距离。
在本发明的一实施例中,上述的第一距离为声音接收器与扬声器间的距离,第二距离为声音接收器与虚拟扬声器间的距离,扬声器与虚拟扬声器相对于反射板呈对称,扬声器与虚拟扬声器间相隔第三距离,处理器依据第一距离、第二距离以及第三距离计算声音接收器在反射板的法线方向上与反射板间的距离。
在本发明的一实施例中,上述的预设声音信号具有时变的振幅与频率,预设声音信号经低通滤波后所得到的第一低通滤波信号与预设声音信号之间具有时间差值,处理器对声音接收器所接收到的声音信号进行低通滤波以产生第二低通滤波信号,处理器依据时间差值与第二低通滤波信号预估声音接收器接收到预设声音信号与反射声音信号时的时间。
在本发明的一实施例中,上述的时间差值为扬声器输出预设声音信号的封包振幅峰值的时间与第一低通滤波信号的封包振幅峰值所对应的时间差值。
在本发明的一实施例中,上述的低通滤波为无限脉冲响应滤波。
在本发明的一实施例中,上述的交叉相关运算为快速交叉相关运算。
本发明还提供一种距离检测装置的距离检测方法,距离检测装置包括扬声器以及声音接收器,扬声器配置于反射板的一侧,用以输出预设声音信号,反射板反射预设声音信号而产生反射声音信号,距离检测装置的距离检测方法包括下列步骤。将声音接收器所接收到的声音信号与预设声音信号进行交叉相关运算,以产生交叉相关信号,其中交叉相关信号包括对应预设声音信号的第一峰值以及对应反射声音信号的第二峰值。依据扬声器输出预设声音信号的时间点、对应第一峰值的第一声音接收时间以及对应第二峰值的第二声音接收时间计算第一距离以及第二距离。依据第一距离以及第二距离计算声音接收器与反射板间的距离。
在本发明的一实施例中,上述的第一距离为声音接收器与扬声器间的距离,第二距离为声音接收器与虚拟扬声器间的距离,扬声器与虚拟扬声器相对于反射板呈对称,扬声器与虚拟扬声器间相隔第三距离,距离检测装置的距离检测方法包括,依据第一距离、第二距离以及第三距离计算声音接收器在反射板的法线方向上与反射板间的距离。
在本发明的一实施例中,上述的预设声音信号具有时变的振幅与频率,预设声音信号经低通滤波后所得到的第一低通滤波信号与预设声音信号之间具有时间差值,距离检测装置的距离检测方法包括下列步骤。对声音接收器所接收到的声音信号进行低通滤波以产生第二低通滤波信号。依据时间差值与第二低通滤波信号预估声音接收器接收到预设声音信号与反射声音信号时的时间。
在本发明的一实施例中,上述的时间差值为扬声器输出预设声音信号的封包振幅峰值的时间与第一低通滤波信号的封包振幅峰值所对应的时间差值。
在本发明的一实施例中,上述的低通滤波为无限脉冲响应滤波。
在本发明的一实施例中,上述的交叉相关运算为快速交叉相关运算。
基于上述,本发明的实施例将声音接收器所接收到的声音信号与预设声音信号进行交叉相关运算,以产生交叉相关信号,依据扬声器输出预设声音信号的时间点、交叉相关信号中对应第一峰值的第一声音接收时间以及对应第二峰值的第二声音接收时间计算第一距离以及第二距离,并依据第一距离以及第二距离计算声音接收器与反射板间的距离,如此可减少距离测量所需的声音接收器数量。
为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合附图作详细说明如下。
附图说明
图1是依照本发明一实施例的距离检测装置的示意图;
图2是依照本发明一实施例的交叉相关信号的波形示意图;
图3a是依照本发明一实施例的扬声器输出的预设声音信号的波形示意图;
图3b是依照本发明一实施例的声音接收器所接收到的声音信号的波形示意图;
图4是依照本发明一实施例的距离检测装置的距离检测方法的流程图。
附图标号说明:
102、102’:扬声器
104:声音接收器
106:处理器
a1:反射板
d、r、r1、r2、h:距离
s(t):预设声音信号
ta、tb、t_tx、t_max、t_tx_iir、t_rx_iir:时间
t1:时间差值
ta、t_c、t_n:时间长度
tx_iir:第一低通滤波信号
rx_iir:第二低通滤波信号
y(t):声音信号
s402~s406:距离检测装置的距离检测方法步骤
具体实施方式
图1是依照本发明一实施例的距离检测装置的示意图,请参照图1。距离检测装置包括扬声器102、声音接收器104以及处理器106,其中处理器106耦接声音接收器104,扬声器102与声音接收器104的相对距离r1可例如为固定,然不以此为限。扬声器102配置于反射板a1的一侧,扬声器102可输出预设声音信号,反射板a1可反射预设声音信号而产生反射声音信号,其中预设声音信号具有时变的振幅与频率,也就是说,预设声音信号在不同时间点可对应不同的振幅与频率,对应地,反射声音信号也具有时变的振幅与频率。声音接收器104用以接收声音信号,处理器106可用以对预设声音信号以及声音接收器104所接收到的声音信号进行信号处理。声音接收器104所接收到的声音信号可包括扬声器102输出的预设声音信号以及反射板a1反射预设声音信号而产生的反射声音信号,其中反射声音信号可等效于以反射板a1为中心,而与扬声器102呈对称配置的虚拟扬声器102’所输出,如图1所示,扬声器102与虚拟扬声器102’相对于反射板a1呈对称,且皆与反射板a1相距距离d。
处理器106可例如包括中央处理器、或是其他可程序化的一般用途或特殊用途的微处理器(microprocessor)、数码信号处理器(digitalsignalprocessor,dsp)、控制器、特殊应用集成电路(applicationspecificintegratedcircuit,asic)、可程序化逻辑装置(programmablelogicdevice,pld)或其他类似装置或这些装置的组合。此外,处理器106中可配置有随机存取存储器(ram)或只读存储器(rom)等易失性存储媒体,处理器106可例如与声音接收器104整合在同一电子装置(例如可携式电子装置)中,亦或是与声音接收器104分别配置在不同的电子装置中。在部分实施例中,处理器106也可通过网络或其它方式以有线或无线的方式与扬声器102以及声音接收器104进行信号传输。
处理器106可将声音接收器104所接收到的声音信号与扬声器所输出的预设声音信号进行交叉相关运算,以产生交叉相关信号,其中交叉相关运算可例如为快速交叉相关运算,然不以此为限。图2是依照本发明一实施例的交叉相关信号的波形示意图。如图2所示,由于声音接收器104所接收到的声音信号包括扬声器102输出的预设声音信号以及反射板a1反射预设声音信号而产生的反射声音信号,因此交叉相关信号将包括对应预设声音信号的第一峰值以及对应反射声音信号的第二峰值,其中第一峰值对应的声音接收时间ta以及第二峰值对应声音接收时间tb。处理器106可依据声音接收时间ta来计算声音接收器104与扬声器102之间的距离r1,并依据声音接收时间tb来计算声音接收器104与虚拟扬声器102’之间的距离r2。如此处理器106便可依据距离r1、距离r2以及扬声器102与虚拟扬声器102’之间的距离计算声音接收器104与反射板a1间的距离,例如计算声音接收器104与扬声器102与虚拟扬声器102’的中点间的距离r,或是计算声音接收器104在反射板a1的法线方向上与反射板a1间的距离h。由上述内容可知,本实施例的距离检测装置可仅使用一个声音接收器104获得声音接收器104与反射板a1间的距离r或距离h,相较于现有技术可使用更少的声音接收器便可达到距离测量的目的。
详细来说,声音接收器104与扬声器102之间的距离r1以及声音接收器104与虚拟扬声器102’之间的距离r2,可分别以下列式子获得:
r1=c·(tb-ta)(1)
r2=c·(tb-ta)(2)
其中c为声速。此外,声音接收器104与扬声器102与虚拟扬声器102’的中点间的距离r以及声音接收器104与反射板a1间的距离h可例如分别由下列式子获得:
如此将声音接收器104所接收到的声音信号与预设声音信号进行交叉相关运算来产生交叉相关信号,依据扬声器102输出预设声音信号的时间点、交叉相关信号中对应第一峰值的声音接收时间ta以及对应第二峰值的声音接收时间tb计算距离r1以及距离r2,便可依据距离r1以及距离r2计算声音接收器104与反射板a1间的距离,而有效地减少距离测量所需的声音接收器数量。
在部分实施例中,处理器106可例如通过网络传输的方式与扬声器102进行数据传输,以得知扬声器102输出预设声音信号的时间点。其中,预设声音信号经低通滤波后(例如对预设声音信号进行无限脉冲响应滤波,然不以此为限)所得到的第一低通滤波信号与预设声音信号之间具有时间差值,处理器106可依据此时间差值预估声音接收器104接收到预设声音信号的封包振幅峰值时所对应的时间,并依据声音接收器104接收到预设声音信号的封包振幅峰值的准确时间与扬声器102输出预设声音信号的封包振幅峰值的时间计算扬声器102与声音接收器104间的距离r1。举例来说,图3a是依照本发明一实施例的扬声器输出的预设声音信号的波形示意图。在图3a中,预设声音信号s(t)的封包振幅峰值对应时间t_tx,而预设声音信号s(t)经低通滤波后所得到的第一低通滤波信号tx_iir(如虚线所示)的振幅峰值对应时间t_tx_iir,则第一低通滤波信号tx_iir与预设声音信号s(t)之间的时间差值t1等于t_tx_iir-t_tx。
处理器106可对声音接收器104所接收到的声音信号进行低通滤波(例如进行与预设声音信号所进行的低通滤波相同的低通滤波处理)以产生第二低通滤波信号,处理器106依据时间差值与第二低通滤波信号预估声音接收器104接收到预设声音信号的封包振幅峰值时所对应的第二时间。举例来说,图3b是依照本发明一实施例的声音接收器所接收到的声音信号的波形示意图。在图3b中,声音接收器104所接收到的声音信号y(t)经低通滤波后所得到的第二低通滤波信号rx_iir(如虚线所示)的振幅峰值对应时间t_rx_iir,处理器106可将时间t_rx_iir减去时间差值t1,以预估声音接收器104接收到预设声音信号的封包振幅峰值时所对应的时间t_max。
处理器106可判断对应时间t_max的声音接收器104接收到的声音信号y(t)的频率值与对应时间t_tx的扬声器102输出的预设声音信号s(t)的频率值间的差值是否超出预设范围。详细来说,处理器106可对以时间t_max为基准(例如以时间t_max为中心,然不以此为限)的时间长度t_c内的声音接收器104所接收到的声音信号y(t)进行傅立叶转换运算,并判断在以时间t_tx为基准(例如以时间t_tx为中心,然不以此为限)的时间长度t_c内声音接收器104所接收到的声音信号y(t)在频域中具有最大振幅的频域信号的频率值与对应时间t_tx的扬声器102输出的预设声音信号s(t)的频率值间的差值是否超出预设范围。当对应时间t_max的声音接收器104接收到的声音信号y(t)的频率值与对应时间t_tx的扬声器102输出的预设声音信号s(t)的频率值间的差值未超出预设范围时,代表声音接收器104已接收到预设声音信号s(t)。其中时间长度t_c可例如设定为对应预设声音信号s(t)的封包振幅小于预设值的时间长度,也就是说仅利用预设声音信号s(t)中封包振幅较大的部分来进行频率值的比较,以提高比较结果的精确度,此外亦可减少处理器106的运算量。
处理器106可在对应时间t_max的声音接收器104接收到的声音信号y(t)的频率值与对应时间t_tx的扬声器102输出的预设声音信号s(t)的频率值间的差值未超出预设范围时,将以时间t_tx为基准的时间长度t_c内的扬声器102输出的预设声音信号s(t)与以时间t_max为基准的时间长度t_n内的声音接收器104所接收到的声音信号进行交叉相关运算,以产生交叉相关信号,其中交叉相关运算可例如为快速交叉相关运算,然不以此为限,此外时间长度t_n大于时间长度t_c,时间长度t_n可例如设定为大于等于预设声音信号s(t)的时间长度ta,但须小于预设声音信号s(t)传递扬声器102与声音接收器104在使用空间中能够配置的最远的相对距离所需的时间。处理器106可依据交叉相关信号的振幅峰值所对应的时间t_rx(亦即声音接收器104接收到预设声音信号s(t)的封包振幅峰值的准确时间,其可作为图1实施例的时间ta)与时间t_tx计算扬声器102与声音接收器104间的距离r1。举例来说,扬声器102与声音接收器104间的距离r1可等于(t_rx-t_tx)/c,其中c为声速。
值得注意的是,在部分实施例中,时间长度t_n亦可被设定为小于时间长度ta,例如将时间长度t_n设定为对应预设声音信号s(t)的封包振幅小于另一预设值的时间长度。如此将时间长度t_n设定为小于预设声音信号s(t)传递扬声器102与声音接收器104在使用空间中能够配置的最远的相对距离所需的时间,处理器106便不需如现有技术般对预设声音信号s(t)与声音接收器104在长时间(至少需时间长度ta加上预设声音信号s(t)传递扬声器102与声音接收器104在使用空间中能够配置的最远的相对距离所需的时间)内所接收到的声音信号y(t)进行交叉相关运算,而可大幅地减少处理器106将预设声音信号s(t)与声音信号y(t)进行交叉相关运算的时间。而且,由于处理器106已经先判断出以时间t_tx为基准的时间长度t_c内声音接收器104所接收到的声音信号y(t)在频域中具有最大振幅的频域信号的频率值与对应时间t_tx的扬声器102输出的预设声音信号s(t)的频率值间的差值未超出预设范围,因此亦可确保声音接收器104已接收到预设声音信号s(t),进而可精确地得到声音接收器104接收到预设声音信号s(t)的封包振幅峰值的时间t_rx,进而计算出扬声器102与声音接收器104间的距离r1。
以此类推,虚拟扬声器102’与声音接收器104间的距离r2间的距离亦可以类似的方式获得,本领域具通常知识者应可通过上述实施例得知其实施方式,因此在此不再赘述。
在部分实施例中,在扬声器102与声音接收器104间的相对速度不为0的情形下。处理器106也可利用都普勒效应来修正计算出的扬声器102与声音接收器104间的距离。举例来说,扬声器102可例如每隔一个时段输出一个预设声音信号,在本实施例中,预设声音信号s(t)可以下列式子表示:
s(t)=a(t)·cos[2π·f(t)·t](5)
其中t为时间,a(t)为预设声音信号s(t)的振幅,而f(t)为预设声音信号s(t)的频率。每个时段的时间长度可例如设定为预设声音信号s(t)的时间长度加上预设声音信号s(t)传递扬声器102与声音接收器104在使用空间中能够配置的最远的相对距离所需的时间,如此可确保声音接受器104在每个时段中皆可接收到扬声器102所发出的预设声音信号s(t)。
假设扬声器102在第m个时段输出预设声音信号s(t),其中m为大于1的整数,且预设声音信号s(t)在预设声音信号s(t)的封包振幅峰值对应时间t_tx以及频率f_tmax,另外声音接收器104接收到的预设声音信号y(t)在时间t_max对应频率f_tmax。其中频率f_rmax可例如通过处理器106对以时间t_max为基准(例如以时间t_max为中心,然不以此为限)的时间长度t_c内声音接收器104所接收到的声音信号y(t)进行傅立叶转换运算而求得。频率f_rmax可例如为声音信号y(t)在频域中具有最大振幅的频域信号的频率值,然不以此为限。在部分实施例中,处理器106亦可进一步依据进行傅立叶转换运算后所得到的多个频域信号进行内插运算(例如多项式内差运算,然不以此为限),以得到更精确的频率f_rmax。其中时间长度t_c可例如设定为对应预设声音信号s(t)的封包振幅小于预设值的时间长度,通过仅利用预设声音信号s(t)中封包振幅较大的部分来进行频率值的比较,可提高计算频率的精确度,同时并可减少处理器106的运算量。
处理器106可依据前次计算出的扬声器102与声音接收器104间的相对速度利用都普勒效应修正预设声音信号s(t)的频率值,举例来说,处理器106例如以下列式子修正预设声音信号s(t)的频率f(t):
其中f’(t)为修正后的频率,
扬声器102与声音接收器104间的初始相对速度(k等于1时的相对速度)可由处理器106依据频率f_rmax与频率f_tmax计算而得,例如可依据下列式子计算而得。
其中
举例来说,第m个时段的第k阶的修正相对距离
处理器106可依据对应第m个时段的扬声器102与声音接收器104间的修正相对距离与对应第m-1个时段的扬声器102与声音接收器104间的修正相对距离计算对应第m个时段的扬声器102与声音接收器104间的相对速度。举例来说,第m个时段的第k阶的相对速度
其中td为各个时段的时间长度,rm-1为第m-1个时段所计算出的相对距离。处理器106可在得到初始相对速度
其中thv为预设的门槛值,当
am=(vm-vm-1)/td(12)
以此类推,第m个时段的虚拟扬声器102’与声音接收器104间的最终确定相对距离、最终确定相对速度以及最终确定相对加速度亦可以类似的方式获得,本领域具通常知识者应可通过上述实施例得知其实施方式,因此在此不再赘述。
图4是依照本发明一实施例的距离检测装置的距离检测方法的流程图,请参照图3。在本实施例中,扬声器配置于反射板的一侧,且扬声器与虚拟扬声器相对于反射板呈对称,扬声器可输出预设声音信号,反射板可反射预设声音信号而产生反射声音信号。扬声器输出的预设声音信号具有时变的振幅与频率,对应地,反射声音信号也具有时变的振幅与频率。由上述实施例可知,距离检测装置的距离检测方法可至少包括下列步骤。首先,将声音接收器所接收到的声音信号与预设声音信号进行交叉相关运算,以产生交叉相关信号,其中交叉相关信号包括对应预设声音信号的第一峰值以及对应反射声音信号的第二峰值(步骤s402),交叉相关运算可例如为快速交叉相关运算,然不以此为限。接着,依据扬声器输出预设声音信号的时间点、对应第一峰值的第一声音接收时间以及对应第二峰值的第二声音接收时间计算第一距离以及第二距离(步骤s404),其中第一距离为声音接收器与扬声器间的距离,第二距离为声音接收器与虚拟扬声器间的距离,扬声器与虚拟扬声器间相隔一段第三距离。然后,依据第一距离以及第二距离计算声音接收器与反射板间的距离(步骤s406),例如可依据所述第一距离、第二距离以及第三距离计算声音接收器在反射板的法线方向上与反射板间的距离。
其中,预设声音信号经低通滤波后所得到的第一低通滤波信号与预设声音信号之间具有时间差值,其中时间差值可例如为扬声器输出预设声音信号的封包振幅峰值的时间与第一低通滤波信号的封包振幅峰值所对应的时间差值。在部分实施例中,可对声音接收器所接收到的声音信号进行低通滤波以产生第二低通滤波信号,并依据时间差值与第二低通滤波信号预估声音接收器接收到预设声音信号与反射声音信号时的时间,以依据扬声器输出预设声音信号的封包振幅峰值的时间与声音接收器接收到预设声音信号与反射声音信号时的时间来计算声音接收器与反射板间的距离。
综上所述,本发明的实施例将声音接收器所接收到的声音信号与预设声音信号进行交叉相关运算,以产生交叉相关信号,依据扬声器输出预设声音信号的时间点、交叉相关信号中对应第一峰值的第一声音接收时间以及对应第二峰值的第二声音接收时间计算第一距离以及第二距离,并依据第一距离以及第二距离计算声音接收器与反射板间的距离,如此可减少距离测量所需的声音接收器数量。
虽然本发明已以实施例揭示如上,然其并非用以限定本发明,任何所属技术领域中技术人员,在不脱离本发明的精神和范围内,当可作些许的更改与润饰,故本发明的保护范围当视权利要求书所界定的为准。