一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

设备间的相对位置检测方法及装置与流程

2022-08-17 10:53:37 来源:中国专利 TAG:


1.本技术涉及定位领域,尤其涉及一种设备间的相对位置检测方法及装置。


背景技术:

2.空间交互是指基于空间位置感知(包括人与设备、设备与设备之间的相对位置和角度,绝对位置和角度等)的人机交互技术和方法,为了实现更好的使用体验,用户的多个设备之间需要实现空间感知,如苹果公司使用超宽带(ultra-wideband,uwb)技术实现airdrop定向分享功能;如设备间使用wifi、蓝牙进行接近检测。
3.在一个方案中,使用多个超声波定位模块发送超声波信号,超声波信号在遇到用户手部后产生反射,反射信号经过控制与处理模块滤波,输出给计算机主机,产生用户手部的姿态、位置等信息。但是仅仅依靠反射,不能实现设备间相对位置的确定。


技术实现要素:

4.本技术实施例提供一种设备间的相对位置检测方法及装置,采用本技术实施例可以在不增加额外硬件的情况下,实现以低成本高精度确定设备间的相对位置。
5.第一方面,本技术实施例提供一种设备间的相对位置检测方法,包括:
6.通过设备b的第一麦克风获取第一目标音频信号,第一目标音频信号是根据设备a的第一扬声器发出的第一音频信号和第二扬声器发出的第二音频信号获取的;根据第一目标时刻和第一目标音频信号确定第一音频片段和第二音频片段,第一目标时刻为第一目标音频信号中根据目标幅值确定的时刻,第一音频片段为第一目标音频信号中与第一音频信号相关的片段,第二音频片段为第一目标音频信号中与第二音频信号中相关的片段;分别对第一音频片段和第二音频片段进行搜索,以得到第一到达时刻和第二到达时刻,其中,第一到达时刻为第一目标波峰对应的时刻,第二到达时刻为第二目标波峰对应的时刻,第一目标波峰为第一音频片段中信号幅度大于第一预设幅度的波峰中接收时间最早的波峰,第二目标波峰为第二音频片段中信号幅度大于第二预设幅度的波峰中接收时间最早的波峰;根据第一到达时刻和第二到达时刻确定设备a和设备b之间的相对位置。
7.其中,在第一目标音频信号中第一音频片段对应的时间区间与第二音频片段对应的时间区间不重叠。
8.可选地,设备a的第一扬声器在发出第一音频信号的时间,与设备a的第二扬声器发出第二音频信号的时间可以重叠,也可以不重叠。上述第一预设幅度与第二预设幅度可以相同,也可以不相同。
9.可选地,第一目标时刻为第一目标音频信号中根据目标幅值确定的时刻,具体包括:目第一目标时刻为第一目标音频信号中最高信号幅度对应的时刻,或者在第一目标音频信号中,存在多个信号幅度超过目标幅度的波峰,第一目标时刻为这些波峰中,接收时间最早的波峰对应的时刻。可选地,目标波峰还可为第一音频信号中,多个波峰的平均值、最大值或者其他值。
10.通过设备b的第一麦克风采集到的设备a的第一扬声器和第二扬声器发出的音频信号确定设备a和设备b之间的相对位置,实现了在不增加额外硬件的情况下确定设备间的相对位置;通过对设备a的第一扬声器和第二扬声器产生的音频信号进行搜索,得到第一到达时刻和第二到达时刻,并基于第一到达时刻和第二到达时刻确定设备a和设备b之间的相对位置,避免了音频信号在空间传输过程中的多路径干扰,进而提高了设备间相对位置的精度。
11.在一个可行的实施例中,根据第一目标时刻和第一目标音频信号确定第一音频片段和第二音频片段,包括:
12.根据第一目标时刻、设备a的第一扬声器和第二扬声器之间的距离及设备b的第一麦克风的采样频率从第一目标音频信号中确定第一音频片段;根据第一目标时刻、设备a的第一扬声器和第二扬声器之间的距离、设备b的第一麦克风的采样频率及设备a的第一扬声器产生第一音频信号和第二扬声器产生第二音频信号的时间间隔从第一目标音频信号中确定第二音频片段。
13.通过基于第一目标音频信号中的最大信号幅度对应的时刻(即第一目标时刻)、设备a的两个扬声器之前的距离及设备b的第一麦克风的采样频率从第一目标音频信号中确定出第一音频片段和第二音频片段,为后续确定第一到达时刻和第二到达时刻提供便利,进而避免了音频信号在空间传输过程中的多路径干扰,进而提高了设备间相对位置的精度。
14.在一个可行的实施例中,根据第一目标时刻、设备a的第一扬声器和第二扬声器之间的距离及设备b的第一麦克风的采样频率从第一目标音频信号中确定第一音频片段,包括:
15.根据第一目标时刻、设备a的第一扬声器和第二扬声器之间的距离及设备b的第一麦克风的采样频率确定第一时间区间;第一时间区间的起始时刻为ind_max-2*(d/v)*f,终止时刻为ind_max 2*(d/v)*f;ind_max为第一目标时刻,d为第一预设距离、d为设备a的第一扬声器和第二扬声器之间的距离,v为音速,f为设备b的第一麦克风的采样频率;根据第一时间区间从第一目标音频信号中确定第一音频片段,该第一音频片段为第一目标音频信号中第一时间区间对应的音频片段。
16.可选地,第一预设距离可以是预设值,可以是根据应用场景预先设定的,比如在空旷场景下,预设距离为10m,在房间的场景下,预设距离为5m;当然这个预设距离还是基于预先设定的时间与音速的乘积确定的。
17.在一个可行的实施例中,根据第一目标时刻、第一扬声器和第二扬声器之间的距离、第一麦克风的采样频率及第一扬声器产生第一音频信号和所述第二扬声器产生第二音频信号的时间间隔从第一目标音频信号中确定第二音频片段,包括:
18.根据第一目标时刻、第一扬声器和第二扬声器之间的距离、第一麦克风的采样频率及时间间隔确定第二时间区间;其中,第二时间区间的起始时刻为ind_max-2*(d/v)*f-t1,终止时刻为ind_max 2*(d/v)*f-t1;ind_max为第一目标时刻,d为第一预设距离,所述d为第一扬声器和第二扬声器之间的距离,v为音速,f为第一麦克风的采样频率,t1为时间间隔;根据第二时间区间从第一目标音频信号中确定第二音频片段,该第二音频片段为第二目标音频信号中第二时间区间对应的音频片段。
19.在一个可行的实施例中,根据第一目标时刻、设备a的第一扬声器和第二扬声器之间的距离、设备b的第一麦克风的采样频率及设备a的第一扬声器产生第一音频信号和第二扬声器产生第二音频信号的时间间隔从第一目标音频信号中确定第二音频片段,包括:
20.根据第一目标时刻、设备a的第一扬声器和第二扬声器之间的距离、设备b的第一麦克风的采样频率及上述时间间隔确定第三时间区间和第四时间区间;其中,第三时间区间的起始时刻为ind_max-2*(d/v)*f t1,终止时刻为ind_max t1 2*(d/v)*f;第四时间区间的起始时刻为ind_max-2*(d/v)*f-t1,终止时刻为ind_max-t1 2*(d/v)*f;ind_max为第一目标时刻,d为上述第一预设距离,d为设备a的第一扬声器和第二扬声器之间的距离,v为音速,f为设备b的第一麦克风的采样频率,t1为时间间隔;从第三音频片段和第四音频片段中确定出第二音频片段,其中,第二音频片段为第三音频片段和第四音频片段中最大信号幅度与los信号幅度的比值在预设范围内的音频片段,其中,第三音频片段为第一目标音频信号中第三时间区间对应的音频片段,第四音频片段为第一目标音频信号中第四时间区间对应的音频片段。
21.通过第一目标时刻等信息确定第一时间区间的起始时刻和终止时刻,进而基于第一时间区间从第一目标音频信号中确定出第一音频片段,及先基于第一目标时刻等信息确定第三音频片段和第四音频片段,然后再从第三音频片段和第四音频片段中确定出第二音频片段,为后续确定第一到达时刻和第二到达时刻提供便利,进而避免了音频信号在空间传输过程中的多路径干扰,进而提高了设备间相对位置的精度。
22.在一个可行的实施例中,第一目标音频信号包括第三音频信号和第四音频信号,第三音频信号为设备b的第一麦克风接收到的设备a的第一扬声器发出的第一音频信号,第四音频信号为设备b的第一麦克风接收到的设备a的第二扬声器发出的第二音频信号,根据第一目标时刻和第一目标音频信号确定第一音频片段和第二音频片段,包括:
23.根据第一目标时刻和预设时间阈值确定第五时间区间;根据第二目标时刻和预设时间阈值确定第六时间区间;其中,第一目标时刻为在第三音频信号中根据目标幅值确定的时刻,第二目标时刻为在第四音频信号中根据目标幅值确定的时刻,第五时间区间的终止时刻为第一目标时刻,第六时间区间的终止时刻为第二目标时刻,第五时间区间和第六时间区间的时长均为预设时间阈值;根据第五时间区间从第三音频信号中获取第一音频片段,根据第六时间区间从第四音频信号获取第二音频片段,第一音频片段为第三音频信号中第五时间区间对应的音频信号片段,第二音频片段为第四音频信号中第六时间区间对应的音频信号片段。
24.通过第一目标时刻确定第五时间区间的起始时刻和终止时刻,并通过第二目标时刻确定第六时间区间的起始时刻和终止时刻,进而确定第五时间区间和第六时间区间,再基于第五时间区间和第六时间区间分别从第三音频信号和第四音频信号中确定出第一音频片段和第二音频片段,为后续确定第一到达时刻和第二到达时刻提供便利,进而避免了音频信号在空间传输过程中的多路径干扰,进而提高了设备间相对位置的精度。
25.在一个可行的实施例中,预设时间阈值是根据第一预设距离和设备a的第一扬声器产生第一音频信号和第二扬声器产生第二音频信号的时间间隔确定的。
26.在一个可行的实施例中,根据第一到达时刻和第二到达时刻确定设备a与设备b之间的相对位置,包括:
27.根据第一到达时刻和第二到达时刻构建第一双曲线函数;根据第一双曲线函数及第一扬声器和第二扬声器之间的距离确定设备a与设备b之间的相对位置。
28.在一个可行的实施例中,本技术方法还包括:
29.获取第三到达时刻和第四到达时刻,第三到达时刻和第四到达时刻分别底第三目标波峰对应的时刻和第四目标波峰对应的时刻,第三目标波峰为第五音频片段中信号幅度大于第三预设幅度的波峰中接收时间最早的波峰,第四目标波峰为第六音频片段中信号幅度大于第四预设幅度的波峰中接收时间最早的波峰,第五音频片段为第二目标音频信号中与所述第一音频信号相关的片段,第六音频片段为第二目标音频信号中与第二音频信号中相关的片段,第二目标音频信号为设备b的第二麦克风根据设备a的第一扬声器发出的第一音频信号和设备a的第二扬声器发出的第二音频信号获得的;
30.根据第一到达时刻和第二到达时刻确定设备a与设备b之间的相对位置,包括:
31.根据第一到达时刻、第二到达时刻、第三到达时刻、第四到达时刻、第一扬声器和第二扬声器之间的距离及第一麦克风与第二麦克风的之间的距离确定设备a与设备b之间的相对位置。
32.可选地,第三预设幅度与第四预设幅度可以相同,也可以不相同。
33.需要指出的是,第三到达时刻和第四到达时刻的确定方式可参见第一到达时刻和第二到达时刻的确定方式。通过引入的设备b的第二麦克风,提高了设备间的相对位置的精度。
34.在一个可行的实施例中,设备b的第一麦克风满足以下条件:
35.条件1:设备b的多个麦克风中与第一扬声器之间的距离和与第二扬声器之间距离的差值最大,且该差值大于第二预设距离的麦克风;或者,
36.条件2:设备b的多个麦克风中相对于第一扬声器和第二扬声器,被设备b遮挡程度最小的麦克风。
37.在此需要说明的是,设备b中存在满足条件1和条件2的麦克风,按照条件的优先级选择满足高优先级的条件的麦克风作为设备b的第一麦克风。可选地,条件1的优先级高于或者低于条件2的优先级。
38.在一个可行的实施例中,设备b的第一麦克风和第二麦克风满足以下条件:
39.条件3:设备b的多个麦克风中距离最远的两个麦克风;或者,
40.条件4:设备b的多个麦克风中与第一扬声器之间的距离和与第二扬声器之间距离的差值大于第二预设距离的两个麦克风;或者,
41.条件5:设备b的多个麦克风中相对于设备a的第一扬声器和第二扬声器,被设备b遮挡程度最小的两个麦克风。
42.在此需要说明的是,当设备b满足上述条件3、条件4和条件5的麦克风有多对(其中,每对包括两个麦克风)时,可以按照条件3、条件4和条件5的优先级选择满足高优先级条件的一对麦克风作为设备b的第一麦克风和第二麦克风。
43.可选地,条件3的优先级高于条件4的优先级,条件4的优先级高于条件5的优先级;或者条件5的优先级高于条件4的优先级,条件4的优先级高于条件3的优先级,或者条件4的优先级高于条件5的优先级,条件5的优先级高于条件3的优先级。应理解,这只是一个示例,不是对本技术的限定,当然条件3、条件4和条件5优先级的高低还可以是其他形式。
44.按照上述方式选择合适的麦克风来接收设备a 的第一扬声器和第二扬声器的音频信号,可以降低设备a和设备b的功耗,同时也可以提高设备间的相对位置的精度。
45.在一个可行的实施例中,设备a为投屏设备,设备b为被投屏设备,根据第一到达时刻和第二到达时刻确定设备a与设备b之间的相对位置之后,本技术的方法还包括:
46.在设备b的显示界面的预设区域显示设备a显示界面上所显示的内容;预设区域在设备b的显示界面中的位置与设备a相对于设备b的位置相同。
47.通过确定设备a和设备b之间的相对位置,使得在多屏协同工作时,设备b可以基于设备a与设备b之间的相对位置将设备a的内容显示设备b的显示界面上的对应位置;比如设备a位于设备b的右边,设备b在显示界面的右边区域显示设备a的显示界面上所显示的内容,提高了用户投屏体验。
48.第二方面,本技术实施例提供一种检测设备,包括:
49.获取单元,用于通过设备b的第一麦克风获取第一目标音频信号,第一目标音频信号是根据设备a的第一扬声器发出的第一音频信号和第二扬声器发出的第二音频信号获取的;
50.确定单元,用于根据第一目标时刻和第一目标音频信号确定第一音频片段和第二音频片段,第一目标时刻为在第一目标音频信号中根据目标幅值确定的时刻,第一音频片段为第一目标音频信号中与第一音频信号相关的片段,第二音频片段为第一目标音频信号中与第二音频信号相关的片段;在第一目标音频信号中第一音频片段对应的时间区间与第二音频片段对应的时间区间不重叠;
51.搜索单元,用于分别对第一音频片段和第二音频片段进行搜索,以得到第一到达时刻和第二到达时刻,其中,第一到达时刻为第一目标波峰对应的时刻,第二到达时刻为第二目标波峰对应的时刻,第一目标波峰为第一音频片段中信号幅度大于第一预设幅度的波峰中接收时间最早的波峰,第二目标波峰为第二音频片段中信号幅度大于第二预设幅度的波峰中接收时间最早的波峰;
52.确定单元,还用于根据第一到达时刻和第二到达时刻确定设备a与设备b之间的相对位置。
53.在一个可行的实施例中,确定单元具体用于:
54.根据第一目标时刻、设备a的第一扬声器和第二扬声器之间的距离及设备b的第一麦克风的采样频率从第一目标音频信号中确定第一音频片段;根据第一目标时刻、设备a的第一扬声器和第二扬声器之间的距离、设备b的第一麦克风的采样频率及设备a的第一扬声器产生所述第一音频信号和设备b的第二扬声器产生第二音频信号的时间间隔从第一目标音频信号中确定第二音频片段。
55.在一个可行的实施例中,在根据第一目标时刻、设备a的第一扬声器和第二扬声器之间的距离及设备b的第一麦克风的采样频率从第一目标音频信号中确定第一音频片段的方面,确定单元具体用于:
56.根据第一目标时刻、设备a的第一扬声器和第二扬声器之间的距离及设备b的第一麦克风的采样频率确定第一时间区间,第一时间区间的起始时刻为ind_max-2*(d/v)*f,终止时刻为ind_max 2*(d/v)*f;ind_max为第一目标时刻,d为第一预设距离,d为设备a的第一扬声器和第二扬声器之间的距离,v为音速,f为设备b的第一麦克风的采样频率;根据第
一时间区间从第一目标音频信号中确定第一音频片段,第一音频片段为第一目标音频信号中第一时间区间对应的音频片段。
57.在一个可行的实施例中,在根据第一目标时刻、第一扬声器和第二扬声器之间的距离、第一麦克风的采样频率及第一扬声器产生第一音频信号和所述第二扬声器产生第二音频信号的时间间隔从第一目标音频信号中确定第二音频片段的方面,确定单元具体用于:
58.根据第一目标时刻、第一扬声器和第二扬声器之间的距离、第一麦克风的采样频率及时间间隔确定第二时间区间;其中,第二时间区间的起始时刻为ind_max-2*(d/v)*f-t1,终止时刻为ind_max 2*(d/v)*f-t1;ind_max为第一目标时刻,d为第一预设距离,所述d为第一扬声器和第二扬声器之间的距离,v为音速,f为设备b的第一麦克风的采样频率,t1为时间间隔;根据第二时间区间从第一目标音频信号中确定第二音频片段,该第二音频片段为第二目标音频信号中第二时间区间对应的音频片段。
59.在一个可行的实施例中,在根据第一目标时刻、设备a的第一扬声器和第二扬声器之间的距离、设备b的第一麦克风的采样频率及设备a的第一扬声器和第二扬声器产生音频信号的时间间隔从第一目标音频信号中确定第二音频片段的方面,确定单元具体用于:
60.根据第一目标时刻、设备a的第一扬声器和第二扬声器之间的距离、设备b的第一麦克风的采样频率及设备a的第一扬声器产生所述第一音频信号和设备b的第二扬声器产生第二音频信号的时间间隔确定第三时间区间和第四时间区间;其中,第三时间区间的起始时刻为ind_max-2*(d/v)*f t1,终止时刻为ind_max t1 2*(d/v)*f;第四时间区间的起始时刻为ind_max-2*(d/v)*f-t1,终止时刻为ind_max-t1 2*(d/v)*f;ind_max为第一目标时刻,d为第一预设距离,d为设备a的第一扬声器和第二扬声器之间的距离,v为音速,f为设备b的第一麦克风的采样频率,t1为时间间隔;从第三音频片段和第四音频片段中确定出第二音频片段,其中,第二音频片段为第三音频片段和第四音频片段中最大信号幅度与los信号幅度的比值在预设范围内的音频片段,其中,第三音频片段为第一目标音频信号中第三时间区间对应的音频片段,第四音频片段为第一目标音频信号中第四时间区间对应的音频片段。
61.在一个可行的实施例中,第一目标音频信号包括第三音频信号和第四音频信号,第三音频信号为设备b的第一麦克风接收的设备a的第一扬声器发出的第一音频信号,第四音频信号为设备b的第一麦克风接收的设备a的第二扬声器发出的第二音频信号,在根据第一目标时刻和第一目标音频信号确定第一音频片段和第二音频片段的方面,确定单元具体用于:
62.根据第一目标时刻和预设时间阈值确定第五时间区间;根据第二目标时刻和预设时间阈值确定第六时间区间;其中,第一目标时刻为第三音频信号中目标幅度对应的时刻,第二目标时刻为第四音频信号中目标幅值对应的时刻,第五时间区间的终止时刻为第一目标时刻,第六时间区间的终止时间为第二目标时刻;其中,第五时间区间和第六时间区间的时长均为预设时间阈值,;根据第五时间区间从第三音频信号中获取第一音频片段,根据第六时间区间从第四音频信号获取第二音频片段,第一音频片段为第三音频信号中第五时间区间对应的音频信号片段,第二音频片段为第四音频信号中第六时间区间对应的音频信号片段。
63.在一个可行的实施例中,预设时间阈值是根据第一预设距离和设备a的第一扬声器产生第一音频信号和设备a的第二扬声器产生第二音频信号的时间间隔确定的。
64.在一个可行的实施例中,在根据第一到达时刻和第二到达时刻确定设备a与设备b之间的相对位置的方面,确定单元具体用于:
65.根据第一到达时刻、第二到达时刻构建第一双曲线函数;根据第一双曲线函数及设备a的第一扬声器和第二扬声器之间的距离确定设备a与设备b之间的相对位置。
66.在一个可行的实施例中,检测设备还包括:
67.获取单元,用于获取第三到达时刻和第四到达时刻,第三到达时刻为第三目标波峰对应的时刻,第四到达时刻为第四目标波峰对应的时刻,第三目标波峰为第五音频片段中信号幅度大于第三预设幅度的波峰中接收时间最早的波峰;第四目标波峰为第六音频片段中信号幅度大于第四预设幅度的波峰中接收时间最早的波峰;第五音频片段为第二目标音频信号中与第一音频信号相关的片段,第六音频片段为第二目标音频信号中与第二音频信号中相关的片段;第二目标音频信号是设备b的第二麦克风根据设备a的第一扬声器产生的第一音频信号和设备a的第二扬声器产生的第二音频信号获得的;
68.在根据第一到达时刻和第二到达时刻确定设备a与设备b之间的相对位置的方面,确定单元具体用于:
69.根据第一到达时刻、第二到达时刻、第三到达时刻、第四到达时刻、设备a的第一扬声器和第二扬声器之间的距离,及第一麦克风与第二麦克风的之间的距离确定设备a与设备b之间的相对位置。
70.在一个可行的实施例中,设备b的第一麦克风为:
71.设备b的多个麦克风中与第一扬声器之间的距离和与第二扬声器之间距离的差值最大,且该差值大于预设距离的麦克风;或者,设备b的多个麦克风中相对于第一扬声器和第二扬声器,被设备b遮挡程度最小的麦克风。
72.在一个可行的实施例中,设备b的第一麦克风和第二麦克风包括:
73.设备b的多个麦克风中距离最远的两个麦克风;或者,设备b的多个麦克风中与第一扬声器之间的距离和与第二扬声器之间距离的差值大于预设距离的两个麦克风;或者,设备b的多个麦克风中相对于设备a的第一扬声器和第二扬声器,被设备b遮挡程度最小的两个麦克风。
74.在一个可行的实施例中,设备a为投屏设备,设备b为被投屏设备,检测装置还包括:
75.控制单元,用于在根据第一到达时刻和第二到达时刻确定设备a与设备b之间的相对位置之后,在设备b的显示界面的预设区域显示设备a显示界面上所显示的内容;预设区域在设备b的显示界面中的位置与设备a相对于设备b的位置相同。
76.第三方面,本技术实施例提供一种检测装置,包括:
77.存储器,用于存储指令;以及与存储器耦合的处理器;
78.其中,当处理器执行指令时,执行如第一方面所述方法的部分或全部。
79.第四方面,本技术实施例提供一种芯片系统,该芯片系统应用于电子设备;芯片系统包括一个或多个接口电路,以及一个或多个处理器;所述接口电路和所述处理器通过线路互联;所述接口电路用于从所述电子设备的存储器接收信号,并向所述处理器发送所述
信号,所述信号包括所述存储器中存储的计算机指令;当所述处理器执行所述计算机指令时,所述电子设备执行如第一方面所述方法的部分或全部。
80.第五方面,本技术实施例提供一种计算机可读存储介质,该计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如第一方面所述方法的部分或全部。
81.第六方面,本技术实施例提供一种计算机程序产品,其特征在于,包括计算机指令,当所述计算机指令在推荐装置上运行时,使得所述推荐装置执行如第一方面所述方法的部分或全部。
82.本技术的这些方面或其他方面在以下实施例的描述中会更加简明易懂。
附图说明
83.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
84.图1a为申请实施例提供的一种系统架构示意图;
85.图1b为申请实施例提供的另一种系统架构示意图;
86.图2a为申请实施例提供的另一种系统架构示意图;
87.图2b为申请实施例提供的另一种系统架构示意图;
88.图3为本技术实施例提供的一种设备b的麦克风位置示意图;
89.图4为本技术实施例提供的一种麦克风选择策略原理示意图;
90.图5为本技术实施例提供的另一种麦克风选择策略原理示意图;
91.图6a为设备间的相对位置示意图;
92.图6b为设备的结构示意图;
93.图7为本技术实施例提供的一种设备间的相对位置检测方法的流程示意图;
94.图8a为音频信号与音频片段的关系示意图;
95.图8b为第一音频片段和第二音频片段关系示意图;
96.图8c为第一音频片段与第三音频片段和第四音频片段关系示意图;
97.图8d为声音传输时间差确定原理示意图;
98.图9为本技术实施例提供的一种确定到达时刻的原理示意图;
99.图10为本技术实施例提供的发声流程示意图;
100.图11为第一双曲线与第一扬声器和第二扬声器的位置关系示意图;
101.图12为本技术实施例提供的另一发声流程示意图;
102.图13为第一双曲线、第二双曲线与第一扬声器和第二扬声器的位置关系示意图;
103.图14a为一种基于设备间的相对位置的应用场景示意图;
104.图14b为另一种基于设备间的相对位置的应用场景示意图;
105.图15为本技术实施例提供的一种检测设备的结构示意图;
106.图16为本技术实施例提供的一种检测装置的结构示意图。
具体实施方式
107.以下分别进行详细说明。
108.本技术的说明书和权利要求书及所述附图中的术语“第一”、“第二”、“第三”和“第四”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
109.在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本发明的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
[0110]“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
[0111]
下面结合附图对本技术的实施例进行描述。
[0112]
参见图1a,图1a为本技术实施例提供的一种系统架构示意图。如图1a所示,该系统架构包括设备a和设备b,其中,设备a包括至少两个扬声器,在图1a中只示意出了设备a的两个扬声器,包括第一扬声器和第二扬声器;可选地,第一扬声器和第二扬声器的参数一致,且第一扬声器和第二扬声器在设备a是呈对称分布的;设备b包括至少一个麦克风,在图1a中只示意出了设备b的一个麦克风,该麦克风为第一麦克风;
[0113]
设备a的至少两个扬声器中的两个扬声器按照先后顺序发出音频信号,该音频信号可以是超声波,也可以是频率低于超声波频率的音频信号,比如可被人听见的音频信号、频率低于可被人听见的音频信号的频率的音频信号;
[0114]
设备b的至少一个麦克风中的第一麦克风采集到设备a的两个麦克风发出的音频信号,设备b基于采集到的音频信号确定设备b与设备a之间的相对位置。
[0115]
可选地,当设备b中的麦克风的数量大于1时,设备b的第一麦克风满足以下条件:
[0116]
条件1:设备b的多个麦克风中与第一扬声器之间的距离和与第二扬声器之间距离的差值最大,且该差值大于第二预设距离的麦克风;或者,
[0117]
条件2:设备b的多个麦克风中相对于第一扬声器和第二扬声器,被设备b遮挡程度最小的麦克风。
[0118]
在此需要说明的是,设备b中存在满足条件1和条件2的麦克风,按照条件的优先级选择满足高优先级的条件的麦克风作为设备b的第一麦克风。可选地,条件1的优先级高于或者低于条件2的优先级。
[0119]
可选地,为了提高确定的设备b与设备a之间的相对位置的精度,设备b包括至少两个麦克风,图1b中示意出了设备b的两个麦克风,包括第一麦克风和第二麦克风;设备b的第一麦克风和第二麦克风采集设备a的两个扬声器产生的音频信号;基于设备b的第一麦克风和第二麦克风采集得到音频信号确定设备a与设备b之间的相对位置。
[0120]
在一个可行的实施例中,当设备b包括的麦克风的数量大于2时,设备b的第一麦克风和第二麦克风满足:
[0121]
条件3:设备b的多个麦克风中距离最远的两个麦克风,或者;
[0122]
条件4:设备b的多个麦克风中与设备a的第一扬声器之间的距离和与设备a的第二扬声器之间的距离的差值大于第二预设距离的两个麦克风,或者;
[0123]
条件5:设备b的多个麦克风中相对于设备a的第一扬声器和第二扬声器,被设备b遮挡程度最小的两个麦克风。
[0124]
在此需要说明的是,当设备b满足上述条件3、条件4和条件5的麦克风有多对(其中,每对包括两个麦克风)时,可以按照条件3、条件4和条件5的优先级选择满足高优先级条件的一对麦克风作为设备b的第一麦克风和第二麦克风。
[0125]
可选地,条件3的优先级高于条件4的优先级,条件4的优先级高于条件5的优先级;或者条件5的优先级高于条件4的优先级,条件4的优先级高于条件3的优先级,或者条件4的优先级高于条件5的优先级,条件5的优先级高于条件3的优先级。应理解,这只是一个示例,不是对本技术的限定,当然条件3、条件4和条件5优先级的高低还可以是其他形式。
[0126]
其中,确定设备b的麦克风相对于设备a,被设备b遮挡的程度,可以基于以下两种方式来确定:
[0127]
方式1、确定以麦克风和扬声器为起点和终点的连线中穿过设备b的线段的长度,该线段越长,该麦克风别设备b遮挡的程度越高;如图4中的a图所示,mic0与第一扬声器之间的连线穿过设备b的线段的长度小于mic3与第一扬声器之间的连线穿过设备b的线段的长度,因此相对于第一扬声器,mic0被设备b遮挡的程度低于mic3倍设备b遮挡的程度。
[0128]
方式2、获取麦克风接收到的第一扬声器的音频信号,然后对按照本技术的预处理方式对该音频信号进行处理,得到处理后的音频信号;再按照本技术的方式从处理后的音频信号中获取音频片段,然后再该音频片段中峰值超过预设幅度的波峰的数量;该数量越大,该麦克风被设备b遮挡的程度越高;
[0129]
方式3、设备b利用默认的麦克风采集设备a的第一扬声器发出的第一音频信号和第二扬声器发出的第二音频信号,然后再按照本技术的方法确定一个精度低的相对位置关系;由于设备b知晓设备a的类型,比如是华为笔记本电脑,华为手机等,因此设备b知晓设备a的扬声器的位置,也可以知晓设备a的第一扬声器和第二扬声器之间的距离,从而在精度低的相对位置关系的前提下,按照方式1从设备b中选择遮挡程度最低的一个或两个麦克风。
[0130]
具体地,设备b的第一麦克风和第二麦克风为设备b的多个麦克风中与设备a的第一扬声器之间的距离和与设备a的第二扬声器之间的距离的差值大于第二预设距离的两个麦克风,包括:当在设备b的多个麦克风中,与设备a的第一扬声器之间的距离和与设备a的第二扬声器之间的距离的差值大于第二预设距离的麦克风有多个时,从该多个麦克风随机选择两个麦克风作为设备b的第一麦克风和第二麦克风,或者从该多个麦克风中,选取差值最大的两个麦克风作为设备b的第一麦克风和第二麦克风。
[0131]
需要说明的是,本技术的方案中,可以基于麦克风与两个扬声器之间距离的差值确定设备a和设备b之间的相对位置,在该差值较小时,就无法准确地确定设备a和设备b之间的相对位置。
[0132]
举例说明,以设备a为笔记本电脑,设备b为pad为例说明如何选择麦克风:笔记本电脑位于桌面上,pad包含5个麦克风,分别为mic0,mic1,mic2,mic3和mic4,该5个麦克风的
位置如图3所示;
[0133]
当pad放置在位于桌子上的支架上,且mic0、mic1、mic2和mic3朝下(即朝向桌面)时,由于mic4在pad的背面,被pad完全遮挡,mic1和mic2可能被支架遮挡,因此在选择麦克风时不考虑mic4、mic1和mic2,第一麦克风和第二麦克风为mic0和mic3,进一步地,选择mic0和mic3为第一麦克风和第二麦克风的原因是mic0和mic3为mic0、mic1、mic2和mic3中距离最远的两个麦克风,进一步地,mic0和mic3为mic0、mic1、mic2和mic3中距离最远的两个麦克风,且mic0与笔记本电脑的两个扬声器之间的距离的差值和mic3与笔记本电脑的两个扬声器之间的距离的差值均大于第二预设距离;
[0134]
当pad放置在位于桌子上的支架上,且mic0、mic1、mic2和mic3朝上(即朝向天花板或者天空)时,由于mic4在pad的背面,被pad完全遮挡,因此在选择麦克风时不考虑mic4,第一麦克风和第二麦克风为mic0和mic3,选择mic0和mic3为第一麦克风和第二麦克风的原因是mic0和mic3为mic0、mic1、mic2和mic3中距离最远的两个麦克风,进一步地,mic0和mic3为mic0、mic1、mic2和mic3中距离最远的两个麦克风,且mic0与笔记本电脑的两个扬声器之间的距离的差值和mic3与笔记本电脑的两个扬声器之间的距离的差值均大于第二预设距离;
[0135]
当pad放置在位于桌子上的支架上,且mic0、mic1、mic2和mic3左边或右边时,若mic0与笔记本电脑的两个扬声器之间的距离的差值和mic4与笔记本电脑的两个扬声器之间的距离的差值均大于第二预设距离,则选择mic1和mic2为第一麦克风和第二麦克风;
[0136]
当pad平放于桌面,且mic0、mic1、mic2和mic3朝向远离笔记本电脑的方向,或者pad平放于桌面,且mic0、mic1、mic2和mic3朝向笔记本电脑的方向时,由于mic4在pad的背面,被pad完全遮挡,因此在选择麦克风时不考虑mic4,第一麦克风和第二麦克风为mic0和mic3,选择mic0和mic3为第一麦克风和第二麦克风的原因是mic0和mic3为mic0、mic1、mic2和mic3中距离最远的两个麦克风,进一步地,mic0和mic3为mic0、mic1、mic2和mic3中距离最远的两个麦克风,且mic0与笔记本电脑的两个扬声器之间的距离的差值和mic3与笔记本电脑的两个扬声器之间的距离的差值均大于第二预设距离;
[0137]
当pad平放于桌面,且mic0、mic1、mic2和mic3朝向右边时,将mic2和mic3作为第一麦克风和第二麦克风。如果选择mic0和mic1,可能导致当pad位于笔记本电脑的前方和右前方时,如图4中的a图和b图所示,mic0与笔记本电脑的第一扬声器之间的距离和与第二扬声器之间的距离的差值小于第二预设距离,从而导致mic0接收到第一扬声器发生音频信号的时刻与接收到第二扬声器发生音频信号的时刻的差值较小,因此无法基于该差值计算出pad相对于笔记本电脑的位置;因此选择mic2和mic3作为第一麦克风和第二麦克风,其中,mic2与笔记本电脑的两个扬声器之间的距离的差值和mic3与笔记本电脑的两个扬声器之间的距离的差值均大于第二预设距离,mic2和mic3接收到两个扬声器所产生音频信号的时刻的差值较大,进而可以基于该差值计算出pad相对于笔记本电脑的位置;
[0138]
当pad平放于桌面,且mic0、mic1、mic2和mic3朝向左边时,将mic0和mic1作为第一麦克风和第二麦克风。如果选择mic2和mic3,可能导致当pad位于笔记本电脑的前方和左前方时,如图5中的a图和b图所示,mic3与笔记本电脑的第一扬声器之间的距离和与第二扬声器之间的距离的差值小于第二预设距离,从而导致mic3接收到第一扬声器发生音频信号的时刻与接收到第二扬声器发生音频信号的时刻的差值较小,因此无法基于该差值计算出
pad相对于笔记本电脑的位置;因此选择mic0和mic1作为第一麦克风和第二麦克风,其中,mic0与笔记本电脑的两个扬声器之间的距离的差值和mic1与笔记本电脑的两个扬声器之间的距离的差值均大于第二预设距离,mic0和mic1接收到两个扬声器所产生音频信号的时刻的差值较大,进而可以基于该差值计算出pad相对于笔记本电脑的位置。
[0139]
可选地,上述设备b的麦克风可以是按照上述方式人工预先确定的,也可是设备b按照上述选择策略选择的。
[0140]
在此需要指出的是,设备b可以基于用户的指令选择设备b的第一麦克风,或者第一麦克风和第二麦克风,可选地,在进行一次设备间的相对位置后自动重新选择设备b设备的第一麦克风,或者第一麦克风和第二麦克风。
[0141]
在一个可行的实施例,当设备b的算力较低时,设备b将采集到的音频信号发送至设备c,设备c基于设备b采集的音频信号确定设备b与设备a之间的相对位置,设备c将设备b与设备a之间的相对位置发送至设备c,如图2a和图2b所示。
[0142]
在此需要指出的是,设备b与设备a之间的相对位置包括设备b相对于设备a的位置;在确定设备b相对于设备a的位置后,可以基于设备b相对于设备a的位置确定设备a相对于设备b的位置。
[0143]
如图6a所示,设备b相对于设备a的位置包括设备b在设备a的前方、后方、左边、右边、左前方、左后方、右前方和右后方。可选地,在执行本技术的算法得到的是用于表征相对位置的标识,在该标识取不同值的情况下,用于表示不同的相对位置。比如该标识的取值范围为[1,2,3,4,5,6,7,8],分别用于表示上述8种相对位置。
[0144]
在一个可行的实施例中,当设备a检测到用户触发的方位感知指令时,设备a生成方位感知请求,并向设备b发送该方位感知请求;其中,上述方位感知指令可以是用户的预设手势、用户针对设备a的显示界面的触控指令或者用户的语音指令;当然还可以是基于其他方式的指令;设备a的第一扬声器和第二扬声器分别产生第一音频信号和第二音频信号;设备b接收到设备a发送的方位感知请求后,按照上述方式选择麦克风或者用户默认设置的麦克风获取目标音频信号,该目标音频信号是根据设备a的第一扬声器产生的第一音频信号和第二扬声器产生的第二音频信号获取的。可选地,上述方位感知请求携带设备a的第一扬声器发出第一音频信号的时刻和第二扬声器发出第二音频信号的时刻;可选地,上述方位感知请求中还携带有设备a的第一扬声器与第二扬声器之间的距离。
[0145]
可选地,当设备b检测到用户触发的方位感知指令时,设备b生成方位感知请求,并向设备a发送该方位感知请求;设备b按照上述方式选择麦克风或者用户默认设置的麦克风接收第一扬声器和第二扬声器产生的音频信号;设备a接收到方位感知请求后,设备a的第一扬声器和第二扬声器按照时间间隔先后产生音频信号;
[0146]
可选地,当设备c检测到用户触发的方位感知指令时,设备c生成方位感知请求,并向设备a和设备b发送该方位感知请求;设备b接收到方位感知请求后,按照上述方式选择麦克风或者用户默认设置的麦克风获取目标音频信号,目标音频信号是根据设备a的第一扬声器产生的第一音频信号和第二扬声器产生的第二音频信号获取的;设备a接收到方位感知请求后,设备a的第一扬声器和第二扬声器分别产生第一音频信号和第二音频信号;
[0147]
设备b的麦克风获取目标音频信号,然后设备b可以基于获取的目标音频信号按照本技术的方法确定出设备a和设备b之间的相对位置;在设备b还可以将获取的目标音频信
号发送至设备a或者设备c,设备a或者设备c按照本技术的方法确定出设备a和设备b之间的相对位置;若设备a在确定出设备a和设备b之间的相对位置,则设备a在确定出设备a和设备b之间的相对位置后,将相对位置发送至设备b;若设备c在确定出设备a和设备b之间的相对位置,则设备c在确定出设备a和设备b之间的相对位置后,将设备a与设备b之间的相对位置发送至设备a和设备b。
[0148]
可选地,当执行图7所示实施例的主体为设备b或设备c时,设备a还可以向设备b或设备c发送设备a的第一扬声器发出第一音频信号的时刻和第二扬声器发出第二音频信号的时刻;可选地,设备a还可以向设备b或设备c发送设备a的第一扬声器与第二扬声器之间的距离。
[0149]
可选地,上述目标音频信号包括第一目标音频信号,可选地,该目标音频信号还包括第二目标音频信号;其中,第一目标音频信号为设备b的第一麦克风根据设备a的第一扬声器发出的第一音频信号和第二扬声器发出的第二音频信号获取的,第二目标音频信号为设备b的第二麦克风根据设备a的第一扬声器发出的第一音频信号和第二扬声器发出的第二音频信号获取的。
[0150]
在一个可选的实施例中,如图6b所示,设备a包括发生系统和通信系统,设备b包括收声系统和通信系统,若设备a基于设备b获取的目标音频信号按照本技术的方法确定出设备a和设备b之间的相对位置,设备a还包括计算系统,设备a的通信系统接收设备b通过通信系统发送的目标音频信号,设备a的计算系统基于获取的目标音频信号按照本技术的方法确定出设备a和设备b之间的相对位置,并通过通信系统将设备a和设备b之间的相对位置发送至设备b,设备b通过通信系统接收设备a发送的设备a和设备b之间的相对位置;
[0151]
若设备b基于获取的目标音频信号按照本技术的方法确定出设备a和设备b之间的相对位置,设备b还包括计算系统,设备b的计算系统基于获取的目标音频信号按照本技术的方法确定出设备a和设备b之间的相对位置,并通过通信系统将设备a和设备b之间的相对位置发送至设备a,设备a通过通信系统接收设备a发送的设备a和设备b之间的相对位置;可选地,设备a通过设备a的通信系统向设备b发送设备a的第一扬声器发出第一音频信号的时刻和第二扬声器发出第二音频信号的时刻;可选地,设备a通过设备a的通信系统向设备b发送设备a的第一扬声器与第二扬声器之间的距离。
[0152]
可选地,设备a和设备b还均包括显示系统,设备a的显示系统和设备b的显示系统基于设备a和设备b之间的相对位置显示内容。
[0153]
下面介绍如何基于设备b的麦克风获取的音频信号确定设备a和设备b之间的相对位置。
[0154]
参见图7,图7为本技术实施例提供的一种设备间的相对位置检测方法的流程示意图。如图7所示,该方法包括:
[0155]
s701、获取设备b的第一麦克风获取第一目标音频信号,该第一目标音频信号是根据设备a的第一扬声器发出的第一音频信号和第二扬声器发出的第二音频信号获得的。
[0156]
其中,设备a的第一扬声器发出第一音频信号的时间与第二扬声器发出第二音频信号的时间可以重叠,也可以不重叠。
[0157]
可选地,设备a的第一扬声器的参数和第二扬声器的参数相同或者不同;设备a的第一扬声器和第二扬声器在设备a上呈对称分布,如图1a,图1b,图2a和图2b所示,设备a的
第一扬声器和第二扬声器以经过设备a中心点的垂直线为对称轴在设备a上呈对称分布,应理解,这只是一个示例,不是对本技术的限定,设备a的第一扬声器和第二扬声器可以按照其他方式在设备a上分布。
[0158]
具体地,通过设备b的第一麦克风获取第一目标音频信号,包括:
[0159]
通过设备b接收设备a的第一扬声器发出的第一音频信号和第二扬声器发出的第二音频信号,对接收到的音频信号进行滤波处理,得到滤波后的音频信号;可选地,将接收到的音频信号输入到带通滤波器中进行处理,得到滤波后的音频信号,进行滤波的目的是滤除接收到的音频信号中非工作频率的噪声;然后从时序上将接收到的音频信号进行分段,得到多个音频片段;再判断多个音频片段中每个音频片段的能量是否超过预设能量阈值;将能量未超过预设能量阈值的音频片段从过滤后的音频信号中删除,得到能量过滤的音频信号;其中,音频片段的能量定义为该音频片段的声音强度在时间上的积分;对能量过滤的音频信号进行匹配滤波,以得到匹配滤波后的音频信号;可选地,可以基于音频信号的类型采取与该类型相对应的匹配滤波方式;比如当接收到的音频信号为调制信号时,采用与该调制信号对应的匹配滤波方式进行滤波,以得到匹配滤波后的音频信号,采用此方式进行滤波,可使得非调制的音频信号的信号强度衰减,调制的音频信号的信号强度增强;该匹配滤波后的音频信号为上述第一目标音频信号;
[0160]
可选地,调制信号可以为线性啁啾(chirp)信号或者非线性的啁啾信号。
[0161]
s702、根据第一目标时刻和第一目标音频信号确定第一音频片段和第二音频片段。
[0162]
其中,第一目标时刻为第一目标音频信号中目标幅值对应的时刻,当第一目标音频信号中目标幅值对应的时刻有多个时,第一目标时刻为该多个时刻中最早的时刻;第一音频片段和第二音频片段分别为对应第一目标音频信号中第一音频信号中的片段和第二音频信号中的片段。上述目标幅值可以为上述第一目标音频信号中所有波峰的平均值,也可以为第一目标音频信号中最大信号幅值。
[0163]
在一个可行的实施例中,可以采用第一种方式确定第一音频片段和第二音频片段,具体过程如下:
[0164]
根据第一目标时刻、设备a的第一扬声器和第二扬声器之间的距离及设备b的第一麦克风的采样频率从第一目标音频信号中确定第一音频片段,根据第一目标时刻、、设备a的第一扬声器和第二扬声器之间的距离、设备b的第一麦克风的采样频率和设备a的第一扬声器发出第一音频信号与第二扬声器发出第二音频信号的时间间隔从第一目标音频信号中确定出第二音频片段。
[0165]
进一步地,根据第一目标时刻、设备a的第一扬声器和第二扬声器之间的距离及设备b的第一麦克风的采样频率从第一目标音频信号中确定第一音频片段,包括:
[0166]
根据第一目标时刻、设备a的第一扬声器和第二扬声器之间的距离及设备b的第一麦克风的采样频率确定第一时间区间;其中,第一时间区间的起始时刻为ind_max-2*(d/v)*f,终止时刻为ind_max 2*(d/v)*f,ind_max为第一目标时刻,d为第一预设距离,d为设备a的第一扬声器与第二扬声器之间的距离,v为音速,f为设备b的第一麦克风的采样频率;根据第一时间区间从第一目标音频信号确定出第一音频片段,第一音频片段为第一目标音频信号中第一时间区间对应的音频片段。
[0167]
可选地,第一预设距离可以是预设值,可以是根据应用场景预先设定的,比如在空旷场景下,预设距离为10m,在房间的场景下,预设距离为5m;当然这个预设距离还是基于预先设定的时间与音速的乘积确定的
[0168]
举例说明第一目标音频信号、第一时间区间和第一音频片段之间的关系。如图8a所示,第一时间区间为[t0,t1],第一音频片段为第一目标音频信号中第一时间区间[t0,t1]所对应的音频信号片段。
[0169]
在一个可行的实施例中,根据第一目标时刻、第一扬声器和第二扬声器之间的距离、第一麦克风的采样频率及第一扬声器产生第一音频信号和所述第二扬声器产生第二音频信号的时间间隔从第一目标音频信号中确定第二音频片段,包括:
[0170]
根据第一目标时刻、第一扬声器和第二扬声器之间的距离、第一麦克风的采样频率及时间间隔确定第二时间区间;其中,第二时间区间的起始时刻为ind_max-2*(d/v)*f-t1,终止时刻为ind_max 2*(d/v)*f-t1;ind_max为第一目标时刻,d为第一预设距离,所述d为第一扬声器和第二扬声器之间的距离,v为音速,f为第一麦克风的采样频率,t1为上述时间间隔;根据第二时间区间从第一目标音频信号中确定第二音频片段。
[0171]
如图8b所示,假设设备a的第一扬声器先发出第一音频信号,第二扬声器后发出第二音频信号;如图8b所示,对于设备b的第一麦克风的第一目标音频信号中,第一音频片段在前,第二音频信号在后;在确定第一音频信号后,基于第一音频片段对应的时间区间[t
b’,tb]和时间间隔t1可知第二音频片段在第一目标音频信号中的时间区间为[tb’‑
t1,t
b-t1],进而可从第一目标音频信号中确定第二音频片段。
[0172]
可选地,根据第一目标时刻、设备a的第一扬声器和第二扬声器之间的距离、设备b的第一麦克风的采样频率及时间间隔从第一音频信号中确定出第二音频信号,包括:
[0173]
根据第一目标时刻、设备a的第一扬声器和第二扬声器之间的距离、设备b的第一麦克风的采样频率及上述时间间隔确定第三时间区间和第四时间区间;其中,第三时间区间的起始时刻为ind_max-2*(d/v)*f t1,终止时刻为ind_max t1 2*(d/v)*f;第四时间区间的起始时刻为ind_max-2*(d/v)*f-t1,终止时刻为ind_max-t1 2*(d/v)*f;从第三音频片段和第四音频片段中获取第二音频片段,其中,第二音频片段为第三音频片段和第四音频片段中最大信号幅度与los信号幅度的比值在预设范围内的音频片段,其中,第三音频片段为第一目标音频信号中第三时间区间对应的音频片段,第四音频片段为第一目标音频信号中第四时间区间对应的音频片段。
[0174]
下面具体介绍如何基于第一目标时刻、设备a的第一扬声器和第二扬声器之间的距离、设备b的第一麦克风的采样频率和设备a的第一扬声器和第二扬声器产生音频信号的时间间隔从第一目标音频信号中确定第二音频片段。
[0175]
由于对于设备b来说,不知道设备a的第一扬声器和第二扬声器的发声顺序,第二音频片段可能位于第一音频片段之前,也可能位于第一音频片段之后,因此在确定从第一目标音频信号中确定出第一音频片段后,会在第一音频片段的前后寻找第二音频片段;如图8c所示,在确定第一音频信号后,基于第一音频片段对应的时间区间[t
b’,tb]和时间间隔t1可知第三音频片段在第一目标音频信号中的时间区间为[t
b’ t1,tb t1]和第四音频片段在第一目标音频信号中的时间区间为[tb’‑
t1,t
b-t1],然后再从第三音频片段和第四音频片段中确定出第二音频片段。具体按照如下方式:
[0176]
根据第一目标时刻、设备a的第一扬声器和第二扬声器之间的距离、设备b的第一麦克风的采样频率和上述时间间隔确定第三时间区间和第四时间区间,其中,第三时间区间的起始时刻为:ind_max-2*(d/v)*f t1,终止时刻为:ind_max t1 2*(d/v)*f;第四时间区间的起始时刻为ind_max-2*(d/v)*f-t1,终止时刻为ind_max-t1 2*(d/v)*f;ind_max为上述第一目标时刻,d为第一预设距离,d为设备a的第一扬声器和第二扬声器之间的距离,v为音速,f为设备b的第一麦克风的采样频率,t1为上述时间间隔;分别根据第三时间区间和第四时间区间从第一目标音频信号中中确定出第三音频片段和第四音频片段,第三音频片段和第四音频片段分别为第一目标音频信号中中第三时间区间和第四时间区间对应的音频片段;然后从第三音频片段和第四音频片段中选择出满足预设条件的音频片段,该音频片段为第二音频片段;其中,预设条件包括:音频片段中最大信号幅度与los信号幅度的比值在预设范围内;可选地,该预设范围可以为[0.4,0.6],当然还可以为其他范围,los信号为不经过障碍物反射以最小路径传输至接收端的信号。
[0177]
其中,上述t
b’=ind_max-2*(d/v)*f,tb=ind_max 2*(d/v)。
[0178]
可选地,在确定第三时间区间和第四时间区间后,先根据第三时间区间和第四时间区间中任一时间区间从第一目标音频信号中获取该任一时间区间对应的音频片段,再判断该音频片段是否满足上述预设条件;当该音频片段满足上述预设条件时,将该音频片段作为上述第二音频片段;当上述音频片段不满足上述预设条件时,将第三时间区间和第四时间区间中另一时间区间对应的音频片段作为上述第二音频片段。
[0179]
应理解,在第一目标音频信号中上述第三时间区间和第四时间区间对应的音频片段中,必然有一个音频信号满足上述预设条件,因此在确定一个时间区间对应的音频片段满足上述预设条件后,就不用再对另一时间区间对应的音频片段进行判断。
[0180]
在一个可行的实施例中,可以采用第二种方式确定第一音频片段和第二音频片段,具体过程如下:
[0181]
第一目标音频信号包括第三音频信号和第四音频信号,第三音频信号为设备b的第一麦克风接收到的设备a的第一扬声器发出的第一音频信号,第四音频信号为设备b第一麦克风接收到的设备a的第二扬声器发出的第二音频信号,根据第一目标时刻和预设时间阈值确定第五时间区间;根据第二目标时刻和预设时间阈值确定第六时间区间;其中,第一目标时刻为在第三音频信号中根据目标幅值确定的时刻,第二目标时刻为在第四音频信号中根据目标幅值确定的时刻,第五时间区间的终止时刻为第一目标时刻,第六时间区间的终止时刻为第二目标时刻,第五时间区间和第六时间区间的时长均为预设时间阈值;根据第五时间区间从第三音频信号中获取第一音频片段,根据第六时间区间从第四音频信号获取第二音频片段,第一音频片段为第三音频信号中第五时间区间对应的音频信号片段,第二音频片段为第四音频信号中第六时间区间对应的音频信号片段。
[0182]
其中,预设时间阈值是根据第一预设距离和设备a的第一扬声器产生第一音频信号和第二扬声器产生第二音频信号的时间间隔得到的。
[0183]
具体地,在获取第一目标时刻ind_max和第二目标时刻后ind_max’后,根据第一目标时刻ind_max和第二目标时刻后ind_max’及预设时间阈值ta确定第五时间区间和第六时间区间,其中,第五时间区间的起始时刻为ind_max-ta,终止时刻为ind_max,第二时间区间的起始时刻为ind_max
’‑
ta,终止时刻为ind_max’,其中预设时间阈值ta=t1 2*d/v,t1为上
述时间间隔,d为预设距离,v为音速;ta大于去除多路径干扰时的范围的终止时刻与起始时刻的差值;再根据第五时间区间从第三音频信号中获取第一音频片段,根据第六时间区间从第四音频信号中获取第二音频片段,其中,第一音频片段为第三音频信号中第五时间区间对应的音频信号片段,第二音频片段为第四音频信号中第六时间区间对应的音频信号片段。
[0184]
s703、分别对第一音频片段和第二音频片段进行搜索,以得到第一到达时刻和第二到达时刻。
[0185]
其中,第一到达时刻为第一音频信号中信号幅度大于第一预设幅度的波峰中接收时间最早的波峰,第二到达时刻为第二音频信号中信号幅度大于第二预设幅度的波峰中接收时间最早的波峰。
[0186]
可选地,上述第一预设幅度和第二预设幅度可以相同,也可以不相同。
[0187]
具体地,在确定第一音频片段后,在第一音频片段中,搜索信号幅度大于第一预设幅度的波峰,然后再从信号幅度大于第一预设幅度的波峰中选择接收时间最早的波峰,并将该波峰对应的时刻作为第一到达时刻,同理,在第二音频信号中,搜索信号幅度大于第二预设幅度的波峰,然后再从信号幅度大于第二预设幅度的波峰中选择接收时间最早的波峰,并将该波峰对应的时刻作为第二到达时刻。
[0188]
举例说明,第一音频片段如图9所示,该音频片段对应的时间区间为[ind_max-ta,ind_max],在第一音频片段中,超过第一预设幅度的波峰包括波峰1和波峰2,其中,波峰2的接收时间早于波峰1的接收时间,因此将波峰2对应的时刻t1’
作为第一到达时刻。
[0189]
按照上述方式可基于第二音频片段确定第二到达时刻。
[0190]
可选地,第一预设幅度为a1*目标幅值,第二预设幅度为a2*目标幅值,a1和a2为常数;可选地,a1和a2可以相等,也可以不相等。
[0191]
s704、根据第一到达时刻和第二到达时刻确定设备a和设备b之间的相对位置。
[0192]
在一个可行的实施例中,根据第一到达时刻和第二到达时刻确定设备a和设备b之间的相对位置,包括:
[0193]
根据第一到达时刻、第二到达时刻构建第一双曲线函数;根据第一双曲线函数及第一扬声器与第二扬声器之间的距离确定设备a与设备b之间的相对位置。
[0194]
根据第一到达时刻、第二到达时刻、第一时刻和第二时刻构建第一双曲线函数;根据第一双曲线函数及第一扬声器与第二扬声器之间的距离确定设备a与设备b之间的相对位置。
[0195]
可选地,第一时刻可以为第一扬声器产生第一音频信号的时刻,第二时刻可以为第二扬声器产生第二音频信号的时刻,此时第一时刻和第二时刻是设备a通过无线方式向设备b发送的,设备a还可以通过此种方式将第一扬声器和第二扬声器之间的距离发送至设备b;该无线方式包括蓝牙,wifi等方式;第一时刻可以为第一扬声器产生第一音频信号的时刻的预估值,第二时刻可以为第二扬声器产生第二音频信号的时刻的预估值;
[0196]
如图10所示,第一扬声器的发声时刻或者第一扬声器的发声时刻的预估值为上述第一时刻,第二扬声器的发声时刻或者第二扬声器的发声时刻的预估值为上述第二时刻;基于声音传播的原理,第一到达时刻与第一时刻的差值与设备a的第一扬声器与设备b的第一麦克风之间的距离成正比,第二到达时刻与第二时刻的差值与设备a的第二扬声器与设
备b的第一麦克风之间的距离成正比;因此基于(第二到达时刻-第二时刻)-(第一到达时刻-第一时刻)等于固定值构建第一双曲线,如图11所示,点f1和点f2分别表示设备a的第一扬声器和第二扬声器所在的位置,f1和f2也为第一双曲线的焦点,第一双曲线上的点为设备b的第一麦克风的所在的位置,第一双曲线可以看成设备b的第一麦克风的位置轨迹;在选择第二麦克风时,用户一般会选择在设备b上与第一麦克风在同一水平线或者垂直线上麦克风作为第二麦克风,此时第一麦克风和第二麦克风可以看成对称分布,因此在确定第一麦克风的位置后,可以基于对称关系确定第二麦克风的位置,进而可确定设备a与设备b的相对位置;假设在图11的坐标系中,设备b的第一麦克风的位置为图11中的p点,与第二麦克风的位置以y轴对称,则设备b的第二麦克风的位置为图11中的p1点,基于p1点和p点与f1和f2位置关系可以确定设备b位于设备a的左边;设备b的第一麦克风的位置为图11中的p点,与第二麦克风的位置以x轴对称,则设备b的第二麦克风的位置为图11中的p2点,基于p2点和p点与f1和f2位置关系可以确定设备b位于设备a的后方;
[0197]
按照上述方式可以确定设备b相对于设备a的位置,但只局限于确定设备b位于设备a的前方、后方、左边和右边。
[0198]
可选地,由于基于一个麦克风只能确定出设备b位于设备a的前方,后方、左边和右边,这样的结果精度较低;为了提升精度,引入设备b的第二麦克风,并按照上述方式确定第三到达时刻和第四到达时刻,其中,第三到达时刻和第四到达时刻分别底第三目标波峰对应的时刻和第四目标波峰对应的时刻,第三目标波峰为第五音频片段中信号幅度大于第三预设幅度的波峰中接收时间最早的波峰,第四目标波峰为第六音频片段中信号幅度大于第四预设幅度的波峰中接收时间最早的波峰,第五音频片段为第二目标音频信号中与所述第一音频信号相关的片段,第六音频片段为第二目标音频信号中与第二音频信号中相关的片段,第二目标音频信号为设备b的第二麦克风根据设备a的第一扬声器发出的第一音频信号和设备a的第二扬声器发出的第二音频信号获得的,根据第一到达时刻和第二到达时刻确定设备a和设备b之间的相对位置,包括:
[0199]
根据第一到达时刻、第二到达时刻、第三到达时刻、第四到达时刻、第一扬声器和第二扬声器之间的距离及第一麦克风与第二麦克风的之间的距离确定设备a与设备b之间的相对位置。
[0200]
具体地,根据第一到达时刻、第二到达时刻、第一时刻和第二时刻构建第一双曲线函数;根据第三到达时刻、第四到达时刻、第一时刻和第二时刻构建第二双曲线函数;在同一坐标系下,根据第一双曲线函数的图形和第二双曲线函数的图形之间的位置关系,第一扬声器和第二扬声器之间的距离及设备b的第一麦克风与第二麦克风的之间的距离确定设备a与设备b之间的相对位置。
[0201]
在此需要指出的是,上述第三到达时刻和第四到达时刻的确定方式与上述第一到达时刻和第二到达时刻的确定方式相同,在此不再叙述。
[0202]
如图12所示,第一扬声器的发声时刻或者第一扬声器的发声时刻的预估值为上述第一时刻,第二扬声器的发声时刻或者第二扬声器的发声时刻的预估值为上述第二时刻;基于声音传播的原理,第一到达时刻与第一时刻的差值与设备a的第一扬声器与设备b的第一麦克风之间的距离成正比,第二到达时刻与第二时刻的差值与设备a的第二扬声器与设备b的第一麦克风之间的距离成正比,第三到达时刻与第一时刻的差值与设备a的第一扬声
器与设备b的第二麦克风之间的距离成正比,第四到达时刻与第二时刻的差值与设备a的第二扬声器与设备b的第二麦克风之间的距离成正比;因此基于(第二到达时刻-第二时刻)-(第一到达时刻-第一时刻)等于一个固定值构建第一双曲线,如图13中的实线所示,基于(第四到达时刻-第二时刻)-(第三到达时刻-第一时刻)等于另一个固定值构建第二双曲线,如图13中的虚线所示;其中,第一双曲线和第二双点f1和点f2分别表示设备a的第一扬声器和第二扬声器所在的位置,点f1和点f2为第一双曲线和第二双曲线的焦点,第一双曲线和第二双曲线可以分别看成设备b的第一麦克风和第二麦克风的位置轨迹;基于设备b的第一麦克风和第二麦克风的相对位置在第一双曲线和第二双曲线确定出符合第一麦克风和第二麦克风的相对位置关系的两个点,如图13所示,设备b的第一麦克风和第二麦克风分别为mic0和mic3,基于mic0和mic3之间的位置关系确定第一双曲线和第二双曲线位于坐标系的第一象限和第四象限的部分可以找到符合mic0和mic3的位置关系的两点;当符合mic0和mic3的位置关系的两点在上述坐标系的第一象限时,mic0和mic3相对于设备a会被设备b遮挡,不符合上述麦克风选择标准,因此符合mic0和mic3的位置关系的两点不可能在上述坐标系的第一象限上,只能在第四象限,从而基于第一双曲线和第二双曲线在坐标系的第四象限上的两点与点f1和点f2的位置关系确定设备b相对与设备a的位置关系,位置关系包括前方、后方、左边、右边、左后方、左前方、右后方和右前方八个方位。相对于基于一个麦克风,基于两个麦克风确定的位置信息更加精确。
[0203]
进一步地,在确定设备b相对于设备a的位置后,可以基于该位置确定设备a相对于设备a的位置。
[0204]
由上述描述可知,在构建上述双曲线时,利用到(第二到达时刻-第二时刻)-(第一到达时刻-第一时刻)这个差值;在一个可行的示例中,可以按照如下方式获取这个差值:
[0205]
如图8d所示,设备a的扬声器sa发出音频信号s1,过了时间t
a1
,该音频信号s1被设备a的麦克风接收到,过了时间t
a3
,该音频信号s1被设备b的麦克风接收到;设备b的扬声器sb发出音频信号s2,过了时间t
b3
,该音频信号s2被设备b的麦克风接收到,过了时间t
b1
,该音频信号s2被设备a的麦克风接收到;两个设备间的往返距离为两段浅灰色块所示时间之和,数学原理可证明其约等于两段深灰色块所示时间之差,即(x1 x2)=(y1-y2),这样便将计算对端发声到自身收声的时间差转换为了计算自身两次收声的时间和。
[0206]
在此需要指出的是,一个设备的扬声器发声被另一设备的麦克风接收到的时刻可以参见本技术中计算第一到达时间或者第二到达时间的过程,在此不再叙述。
[0207]
在一个可行的实施例中,设备a为投屏设备,设备b为被投屏设备,根据第一到达时刻和第二到达时刻确定设备a与设备b之间的相对位置后,本技术的方法还包括:
[0208]
在设备b的显示界面的预设区域显示设备a的显示界面上所显示的内容,该设备b的预设区域在设备b的显示界面上的位置与设备a相对于设备b的位置相同。
[0209]
以设备a为手机,设备b为笔记本电脑为例进行说明,如图14a所示,手机位于笔记本电脑的右边;手机的显示界面上显示的内容投屏到笔记本电脑的显示界面的预设区域;其中,笔记本电脑的显示界面上的预设区域位于显示界面的右边,与手机相对于笔记本电脑的位置相同。
[0210]
在投屏领域,如果使用uwb技术,需要设备都具有uwb芯片,成本较高;如果使用蓝牙技术和wifi技术,由于电磁波传输速度为光速,在没有非常好的时钟同步机制下对于小
距离检测的精度不够,无法确定方位,只能在固定某一投屏方向;而采用本技术的方法,可实现在不增加额外硬件的情况下,低成本高精度实现了设备间的相对位置,进而实现了任意方向的投屏。
[0211]
以设备a为pad,设备b为笔记本电脑为例进行说明,如图14b所示,pad在笔记本电脑的左边;基于pad和笔记本电脑之间的相对位置,pad的显示界面显示的浏览器部分内容显示在笔记本电脑的显示界面上,且显示在笔记本电脑的显示界面的左边,笔记本电脑的显示界面作为pad的扩展屏,且笔记本电脑用于显示pad所显示的浏览器的部分的显示区域在笔记本电脑的显示界面上的位置与pad在笔记本电脑的位置相同。
[0212]
在此需要指出的是,图14a和图14b所示应用场景只是一个具体的示例,不是对本技术的限定的。
[0213]
可以看出,在本技术的方案中,通过设备b的麦克风采集到的设备a的第一扬声器和第二扬声器发出的音频信号确定设备a和设备b之间的相对位置,实现了在不增加额外硬件的情况下确定设备间的相对位置;基于第一到达时刻和第二到达时刻确定设备a和设备b之间的相对位置,避免了音频信号在空间传输过程中的多路径干扰,进而提高了设备间相对位置的精度。在选择设备b的麦克风时,按照本技术公开的方式选择合适麦克风来接收设备a的第一扬声器和第二扬声器的音频信号,可以降低设备a和设备b的功耗,同时也可以提高设备间的相对位置的精度。
[0214]
参见图15,图15为本技术实施例提供的一种检测设备的结构示意图。如图15所示,该检测设备1500包括:
[0215]
获取单元1501,用于通过设备b的第一麦克风获取第一目标音频信号,第一目标音频信号是根据设备a的第一扬声器发出的第一音频信号和第二扬声器发出的第二音频信号获取的;
[0216]
确定单元1502,用于根据第一目标时刻和第一目标音频信号确定第一音频片段和第二音频片段,第一目标时刻为在第一目标音频信号中根据目标幅值确定的时刻,第一音频片段为第一目标音频信号中与第一音频信号相关的片段,第二音频片段为第一目标音频信号中与第二音频信号相关的片段;在第一目标音频信号中第一音频片段对应的时间区间与第二音频片段对应的时间区间不重叠;
[0217]
搜索单元1503,用于分别对第一音频片段和第二音频片段进行搜索,以得到第一到达时刻和第二到达时刻,其中,第一到达时刻为第一目标波峰对应的时刻,第二到达时刻为第二目标波峰对应的时刻,第一目标波峰为第一音频片段中信号幅度大于第一预设幅度的波峰中接收时间最早的波峰,第二目标波峰为第二音频片段中信号幅度大于第二预设幅度的波峰中接收时间最早的波峰;
[0218]
确定单元1502,还用于根据第一到达时刻和第二到达时刻确定设备a与设备b之间的相对位置。
[0219]
在一个可行的实施例中,确定单元1502具体用于:
[0220]
根据第一目标时刻、设备a的第一扬声器和第二扬声器之间的距离及设备b的第一麦克风的采样频率从第一目标音频信号中确定第一音频片段;根据第一目标时刻、设备a的第一扬声器和第二扬声器之间的距离、设备b的第一麦克风的采样频率及设备a的第一扬声器产生第一音频信号与设备a的第二扬声器产生第二音频信号的时间间隔从第一目标音频
信号中确定第二音频片段。
[0221]
在一个可行的实施例中,在根据第一目标时刻、设备a的第一扬声器和第二扬声器之间的距离及设备b的第一麦克风的采样频率从第一目标音频信号中确定第一音频片段的方面,确定单元1502具体用于:
[0222]
根据第一目标时刻、设备a的第一扬声器和第二扬声器之间的距离及设备b的第一麦克风的采样频率确定第一时间区间,第一时间区间的起始时刻为ind_max-2*(d/v)*f,终止时刻为ind_max 2*(d/v)*f;ind_max为第一目标时刻,d为第一预设距离,d为设备a的第一扬声器和第二扬声器之间的距离,v为音速,f为设备b的第一麦克风的采样频率;根据第一时间区间从第一目标音频信号中确定第一音频片段,第一音频片段为第一目标音频信号中第一时间区间对应的音频片段。
[0223]
在一个可行的实施例中,在根据第一目标时刻、第一扬声器和第二扬声器之间的距离、第一麦克风的采样频率及第一扬声器产生第一音频信号和所述第二扬声器产生第二音频信号的时间间隔从第一目标音频信号中确定第二音频片段的方面,确定单元1502具体用于:
[0224]
根据第一目标时刻、第一扬声器和第二扬声器之间的距离、第一麦克风的采样频率及时间间隔确定第二时间区间;其中,第二时间区间的起始时刻为ind_max-2*(d/v)*f-t1,终止时刻为ind_max 2*(d/v)*f-t1;ind_max为第一目标时刻,d为第一预设距离,所述d为第一扬声器和第二扬声器之间的距离,v为音速,f为设备b的第一麦克风的采样频率,t1为时间间隔;根据第二时间区间从第一目标音频信号中确定第二音频片段,该第二音频片段为第二目标音频信号中第二时间区间对应的音频片段。
[0225]
在一个可行的实施例中,在根据第一目标时刻、设备a的第一扬声器和第二扬声器之间的距离、设备b的第一麦克风的采样频率及设备a的第一扬声器产生第一音频信号和设备a的第二扬声器产生第二音频信号的时间间隔从第一目标音频信号中确定第二音频片段的方面,确定单元1502具体用于:
[0226]
根据第一目标时刻、设备a的第一扬声器和第二扬声器之间的距离、设备b的第一麦克风的采样频率及设备a的第一扬声器产生第一音频信号与设备a的第二扬声器产生第二音频信号的时间间隔确定第三时间区间和第四时间区间;其中,第三时间区间的起始时刻为ind_max-2*(d/v)*f t1,终止时刻为ind_max t1 2*(d/v)*f;第四时间区间的起始时刻为ind_max-2*(d/v)*f-t1,终止时刻为ind_max-t1 2*(d/v)*f;ind_max为第一目标时刻,d为第一预设距离,d为设备a的第一扬声器和第二扬声器之间的距离,v为音速,f为设备b的第一麦克风的采样频率,t1为时间间隔;从第三音频片段和第四音频片段中确定出第二音频片段,其中,第二音频片段为第三音频片段和第四音频片段中最大信号幅度与los信号幅度的比值在预设范围内的音频片段,其中,第三音频片段为第一目标音频信号中第三时间区间对应的音频片段,第四音频片段为第一目标音频信号中第四时间区间对应的音频片段。
[0227]
在一个可行的实施例中,第一目标音频信号包括第三音频信号和第四音频信号,第三音频信号为设备b的第一麦克风接收的设备a的第一扬声器发出的第一音频信号,第四音频信号为设备b的第一麦克风接收到的设备a的第二扬声器发出的第二音频信号接收到的音频信号,在根据第一目标时刻和第一目标音频信号确定第一音频片段和第二音频片段
的方面,确定单元1502具体用于:
[0228]
根据第一目标时刻和预设时间阈值确定第五时间区间;根据第二目标时刻和预设时间阈值确定第六时间区间;其中,第一目标时刻为在第三音频信号中根据目标幅度确定的时刻,第二目标时刻为在第四音频信号中根据目标幅值确定的时刻,第五时间区间的终止时刻为第一目标时刻,第六时间区间的终止时间为第二目标时刻;其中,第五时间区间和第六时间区间的时长为预设时间阈值;根据第五时间区间从第三音频信号中获取第一音频片段,根据第六时间区间从第四音频信号获取第二音频片段,第一音频片段为第三音频信号中第五时间区间对应的音频信号片段,第二音频片段为第四音频信号中第六时间区间对应的音频信号片段。
[0229]
在一个可行的实施例中,预设时间阈值是根据预设距离和设备a的第一扬声器和第二扬声器产生音频信号的时间间隔确定的。
[0230]
在一个可行的实施例中,在根据第一到达时刻和第二到达时刻确定设备a与设备b之间的相对位置的方面,确定单元1502具体用于:
[0231]
根据第一到达时刻、第二到达时刻构建第一双曲线函数;根据第一双曲线函数及设备a的第一扬声器和第二扬声器之间的距离确定设备a与设备b之间的相对位置。
[0232]
在一个可行的实施例中,获取单元1501,还用于获取第三到达时刻和第四到达时刻,第三到达时刻为第三目标波峰对应的时刻,第四到达时刻为第四目标波峰对应的时刻,第三目标波峰为第五音频片段中信号幅度大于第三预设幅度的波峰中接收时间最早的波峰;第四目标波峰为第六音频片段中信号幅度大于第四预设幅度的波峰中接收时间最早的波峰;第五音频片段为第二目标音频信号中与第一音频信号相关的片段,第六音频片段为第二目标音频信号中与第二音频信号中相关的片段;第二目标音频信号是设备b的第二麦克风根据设备a的第一扬声器发出的第一音频信号和设备a的第二扬声器发出的第二音频信号获得的;
[0233]
在根据第一到达时刻和第二到达时刻确定设备a与设备b之间的相对位置的方面,确定单元1502具体用于:
[0234]
根据第一到达时刻、第二到达时刻、第三到达时刻、第四到达时刻、设备a的第一扬声器和第二扬声器之间的距离,及第一麦克风与第二麦克风的之间的距离确定设备a与设备b之间的相对位置。
[0235]
在一个可行的实施例中,设备b的第一麦克风为:
[0236]
设备b的多个麦克风中与第一扬声器之间的距离和与第二扬声器之间距离的差值最大,且该差值大于预设距离的麦克风;或者,设备b的多个麦克风中相对于第一扬声器和第二扬声器,被设备b遮挡程度最小的麦克风。
[0237]
在一个可行的实施例中,设备b的第一麦克风和第二麦克风包括:
[0238]
设备b的多个麦克风中距离最远的两个麦克风;或者,设备b的多个麦克风中与第一扬声器之间的距离和与第二扬声器之间距离的差值大于预设距离的两个麦克风;或者,设备b的多个麦克风中相对于设备a的第一扬声器和第二扬声器,被设备b遮挡程度最小的两个麦克风。
[0239]
在一个可行的实施例中,设备a为投屏设备,设备b为被投屏设备,检测装置还包括:
[0240]
控制单元1504,用于在根据第一到达时刻和第二到达时刻确定设备a与设备b之间的相对位置之后,在设备b的显示界面的预设区域显示设备a显示界面上所显示的内容;预设区域在设备b的显示界面中的位置与设备a相对于设备b的位置相同。
[0241]
需要说明的是,上述各单元(获取单元1501、确定单元1502、搜索单元1503和控制单元1504)用于执行上述方法的相关步骤。比如获取单元1501用于执行s701的相关内容,确定单元1502、获取单元1501和控制单元1504用于执行s702和s704的相关内容,搜索单元1503用于执行s703的相关内容。
[0242]
在本实施例中,检测设备1500是以单元的形式来呈现。这里的“单元”可以指特定应用集成电路(application-specific integrated circuit,asic),执行一个或多个软件或固件程序的处理器和存储器,集成逻辑电路,和/或其他可以提供上述功能的器件。此外,以获取单元1501、确定单元1502、搜索单元1503和控制单元1504可通过图16所示的检测装置的处理器1601来实现。
[0243]
如图16所示检测装置1600可以以图16中的结构来实现,该检测装置1600包括至少一个处理器1601,至少一个存储器1602以及至少一个通信接口1603。所述处理器1601、所述存储器1602和所述通信接口1603通过所述通信总线连接并完成相互间的通信。
[0244]
处理器1601可以是通用中央处理器(cpu),微处理器,特定应用集成电路(application-specific integrated circuit,asic),或一个或多个用于控制以上方案程序执行的集成电路。
[0245]
通信接口1603,用于与其他设备或通信网络通信,如以太网,无线接入网(ran),无线局域网(wireless local area networks,wlan)等。
[0246]
存储器1602可以是只读存储器(read-only memory,rom)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,ram)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only memory,eeprom)、只读光盘(compact disc read-only memory,cd-rom)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过总线与处理器相连接。存储器也可以和处理器集成在一起。
[0247]
其中,所述存储器1602用于存储执行以上方案的应用程序代码,并由处理器1601来控制执行。所述处理器1601用于执行所述存储器1602中存储的应用程序代码。
[0248]
存储器1602存储的代码可执行以上提供的任一种设备间的相对位置检测方法,在处理器1601执行存储器1602存储的代码时,处理器1601执行如下方法:
[0249]
获取设备b的第一麦克风获取第一目标音频信号,第一目标音频信号是根据设备a的第一扬声器发出的第一音频信号和第二扬声器发出的第二音频信号获取的;根据第一目标时刻和第一目标音频信号确定第一音频片段和第二音频片段,第一目标时刻为在第一目标音频信号中根据目标幅值确定的时刻,第一音频片段为第一目标音频信号中与第一音频信号相关的片段,第二音频片段为第一目标音频信号中与第二音频信号相关的片段,在第一目标音频信号中第一音频片段对应的时间区间与第二音频片段对应的时间区间不重叠;
分别对第一音频片段和第二音频片段进行搜索,以得到第一到达时刻和第二到达时刻,其中,第一到达时刻为第一目标波峰对应的时刻,第二到达时刻为第二目标波峰对应的时刻,第一目标波峰为第一音频片段中信号幅度大于第一预设幅度的波峰中接收时间最早的波峰,第二目标波峰为第二音频片段中信号幅度大于第二预设幅度的波峰中接收时间最早的波峰;根据第一到达时刻和第二到达时刻确定设备a和设备b之间的相对位置。
[0250]
在一个可行的实施例中,在根据第一目标时刻和第一目标音频信号确定第一音频片段和第二音频片段的方面,处理器1601具体用于:
[0251]
根据第一目标时刻、设备a的第一扬声器和第二扬声器之间的距离及设备b的第一麦克风的采样频率从第一目标音频信号中确定第一音频片段;根据第一目标时刻、设备a的第一扬声器和第二扬声器之间的距离、设备b的第一麦克风的采样频率及设备a的第一扬声器产生第一音频信号和第二扬声器产生第二音频信号的时间间隔从第一目标音频信号中确定第二音频片段。
[0252]
在一个可行的实施例中,在根据第一目标时刻、设备a的第一扬声器和第二扬声器之间的距离及设备b的第一麦克风的采样频率从第一目标音频信号中确定第一音频片段的方面,处理器1601具体用于:
[0253]
根据第一目标时刻、设备a的第一扬声器和第二扬声器之间的距离及设备b的第一麦克风的采样频率确定第一时间区间;第一时间区间的起始时刻为ind_max-2*(d/v)*f,终止时刻为ind_max 2*(d/v)*f;ind_max为第一目标时刻,d为第一预设距离、d为设备a的第一扬声器和第二扬声器之间的距离,v为音速,f为设备b的第一麦克风的采样频率;根据第一时间区间从第一目标音频信号中确定第一音频片段,其中,该第一音频片段为第一目标音频信号中第一时间区间对应的音频片段。
[0254]
在一个可行的实施例中,在根据第一目标时刻、第一扬声器和第二扬声器之间的距离、第一麦克风的采样频率及第一扬声器产生第一音频信号和所述第二扬声器产生第二音频信号的时间间隔从第一目标音频信号中确定第二音频片段的方面,处理器1601具体用于:
[0255]
根据第一目标时刻、第一扬声器和第二扬声器之间的距离、第一麦克风的采样频率及时间间隔确定第二时间区间;其中,第二时间区间的起始时刻为ind_max-2*(d/v)*f-t1,终止时刻为ind_max 2*(d/v)*f-t1;ind_max为第一目标时刻,d为第一预设距离,所述d为第一扬声器和第二扬声器之间的距离,v为音速,f为第一麦克风的采样频率,t1为时间间隔;根据第二时间区间从第一目标音频信号中确定第二音频片段,该第二音频片段为第二目标音频信号中第二时间区间对应的音频片段.
[0256]
在一个可行的实施例中,在根据第一目标时刻、设备a的第一扬声器和第二扬声器之间的距离、设备b的第一麦克风的采样频率及设备a的第一扬声器产生第一音频信号和第二扬声器产生第二音频信号的时间间隔从第一目标音频信号中确定第二音频片段的方面,处理器1601具体用于:
[0257]
根据第一目标时刻、设备a的第一扬声器和第二扬声器之间的距离、设备b的第一麦克风的采样频率及时间间隔确定第三时间区间和第四时间区间;其中,第三时间区间的起始时刻为ind_max-2*(d/v)*f t1,终止时刻为ind_max t1 2*(d/v)*f;第四时间区间的起始时刻为ind_max-2*(d/v)*f-t1,终止时刻为ind_max-t1 2*(d/v)*f;ind_max为第一目标
时刻,d为第一预设距离,d为设备a的第一扬声器和第二扬声器之间的距离,v为音速,f为设备b的第一麦克风的采样频率,t1为时间间隔;从第三音频片段和第四音频片段中确定出第二音频片段,其中,第二音频片段为第三音频片段和第四音频片段中最大信号幅度与los信号幅度的比值在预设范围内的音频片段,其中,第三音频片段为第一目标音频信号中第三时间区间对应的音频片段,第四音频片段为第一目标音频信号中第四时间区间对应的音频片段。
[0258]
在一个可行的实施例中,第一目标音频信号包括第三音频信号和第四音频信号,第三音频信号为设备b的第一扬声器接收到的设备a的第一扬声器发出的第一音频信号,第四音频信号为设备b的第一麦克风接收到的设备a的第二扬声器发出的第二音频信号,在根据第一目标时刻和第一目标音频信号确定第一音频片段和第二音频片段的方面,处理器1601具体用于:
[0259]
根据第一目标时刻和预设时间阈值确定第五时间区间;根据第二目标时刻和预设时间阈值确定第六时间区间;其中,第一目标时刻为在第三音频信号中根据目标幅值确定的时刻,第二目标时刻为在第四音频信号中根据目标幅值确定的时刻,第五时间区间的终止时刻为第一目标时刻,第六时间区间的终止时刻为第六目标时刻,第五时间区间和第六时间区间的时长为预设时间阈值,根据第五时间区间从第三音频信号中获取第一音频片段,根据第六时间区间从第四音频信号获取第二音频片段,第一音频片段为第三音频信号中第五时间区间对应的音频信号片段,第二音频片段为第四音频信号中第六时间区间对应的音频信号片段。
[0260]
在一个可行的实施例中,预设时间阈值是根据预设距离和设备a的第一扬声器产生第一音频信号和设备a的第二扬声器产生第二音频信号的时间间隔。
[0261]
在一个可行的实施例中,在根据第一到达时刻和第二到达时刻确定设备a与设备b之间的相对位置的方面,处理器1601具体用于:
[0262]
根据第一到达时刻和第二到达时刻构建第一双曲线函数;根据第一双曲线函数及第一扬声器和第二扬声器之间的距离确定设备a与设备b之间的相对位置。
[0263]
在一个可行的实施例中,处理器1601还具体用于:
[0264]
获取第三到达时刻和第四到达时刻,第三到达时刻和第四到达时刻分别底第三目标波峰对应的时刻和第四目标波峰对应的时刻,第三目标波峰为第五音频片段中信号幅度大于第三预设幅度的波峰中接收时间最早的波峰,第四目标波峰为第六音频片段中信号幅度大于第四预设幅度的波峰中接收时间最早的波峰,第五音频片段为第二目标音频信号中与第一音频信号相关的片段,第六音频片段为第二目标音频信号中与第二音频信号相关的片段,第二目标音频信号为设备b的第二麦克风根据设备a的第一扬声器发出的第一音频信号和设备a的第二麦克风发出的第二音频信号获得的;
[0265]
在根据第一到达时刻和第二到达时刻确定设备a与设备b之间的相对位置的方面,处理器1601具体用于:
[0266]
根据第一到达时刻、第二到达时刻、第三到达时刻、第四到达时刻、第一扬声器和第二扬声器之间的距离及第一麦克风与第二麦克风的之间的距离确定设备a与设备b之间的相对位置。
[0267]
在一个可行的实施例中,设备b的第一麦克风为:
[0268]
设备b的多个麦克风中与第一扬声器之间的距离和与第二扬声器之间距离的差值最大,且该差值大于预设距离的麦克风;或者,设备b的多个麦克风中相对于第一扬声器和第二扬声器,被设备b遮挡程度最小的麦克风。
[0269]
在一个可行的实施例中,设备b的第一麦克风和第二麦克风包括:
[0270]
设备b的多个麦克风中距离最远的两个麦克风;或者,设备b的多个麦克风中与第一扬声器之间的距离和与第二扬声器之间距离的差值大于预设距离的两个麦克风;或者,设备b的多个麦克风中相对于设备a的第一扬声器和第二扬声器,被设备b遮挡程度最小的两个麦克风。
[0271]
在一个可行的实施例中,设备a为投屏设备,设备b为被投屏设备,处理器1601还用于:
[0272]
在根据第一到达时刻和第二到达时刻确定设备a与设备b之间的相对位置之后,在设备b的显示界面的预设区域显示设备a显示界面上所显示的内容;预设区域在设备b的显示界面中的位置与设备a相对于设备b的位置相同。
[0273]
本发明实施例还提供一种计算机存储介质,其中,该计算机存储介质可存储有程序,该程序执行时包括上述方法实施例中记载的任何一种设备间的相对位置检测方法的部分或全部步骤。
[0274]
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
[0275]
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
[0276]
在本技术所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
[0277]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0278]
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0279]
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体
现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储器包括:u盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
[0280]
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储器中,存储器可以包括:闪存盘、只读存储器(英文:read-only memory,简称:rom)、随机存取器(英文:random access memory,简称:ram)、磁盘或光盘等。
[0281]
以上对本发明实施例进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献