CN111812588B - 多设备语音唤醒实现方法及设备、电子设备和介质 - Google Patents
多设备语音唤醒实现方法及设备、电子设备和介质 Download PDFInfo
- Publication number
- CN111812588B CN111812588B CN202010699259.5A CN202010699259A CN111812588B CN 111812588 B CN111812588 B CN 111812588B CN 202010699259 A CN202010699259 A CN 202010699259A CN 111812588 B CN111812588 B CN 111812588B
- Authority
- CN
- China
- Prior art keywords
- signal source
- audio signal
- equipment
- microphones
- distance
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 49
- 230000005236 sound signal Effects 0.000 claims abstract description 145
- 238000005070 sampling Methods 0.000 claims description 8
- 238000004891 communication Methods 0.000 claims description 7
- 230000015654 memory Effects 0.000 claims description 6
- 230000004044 response Effects 0.000 claims description 6
- 230000003993 interaction Effects 0.000 abstract description 3
- 230000008569 process Effects 0.000 description 5
- 230000003936 working memory Effects 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000032683 aging Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000005484 gravity Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000010267 cellular communication Effects 0.000 description 1
- 238000005314 correlation function Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S5/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S5/18—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using ultrasonic, sonic, or infrasonic waves
- G01S5/22—Position of source determined by co-ordinating a plurality of position lines defined by path-difference measurements
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
- G10L2015/223—Execution procedure of a spoken command
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Measurement Of Velocity Or Position Using Acoustic Or Ultrasonic Waves (AREA)
Abstract
本公开提供一种多设备语音唤醒实现方法及设备、电子设备和介质。本公开涉及语音交互领域。根据本公开的多设备语音唤醒实现方法包括:获取由第一设备中的多个不同麦克风接收的从音频信号源发出的包含相应唤醒词的音频信号;基于不同麦克风接收的音频信号的相位差确定不同麦克风与该音频信号源之间的距离差;基于该距离差定位音频信号源的位置;确定第一设备中多个不同麦克风的几何中心以作为第一设备的位置;以及根据音频信号源的位置和第一设备的位置,控制第一设备做出应答。
Description
技术领域
本公开涉及语音交互领域,特别涉及多设备语音唤醒实现方法及设备、电子设备和介质。
背景技术
智能设备一般是支持语音唤醒的,当用户语音输出相应的唤醒词时,该智能设备能够被语音唤醒。但在例如家庭局域网络环境下,如果家庭中有多台相同厂家的智能设备,常规的做法是这些设备可以支持同时被语音唤醒,而这种情况往往是不符合用户预期的。
在此部分中描述的方法不一定是之前已经设想到或采用的方法。除非另有指明,否则不应假定此部分中描述的任何方法仅因其包括在此部分中就被认为是现有技术。类似地,除非另有指明,否则此部分中提及的问题不应认为在任何现有技术中已被公认。
发明内容
根据本公开的一个方面,提供了一种多设备语音唤醒实现方法,包括:获取由第一设备中的多个不同麦克风接收的从音频信号源发出的包含相应唤醒词的音频信号;基于不同麦克风接收的该音频信号的相位差确定不同麦克风与音频信号源之间的距离差;基于该距离差定位所述音频信号源的位置;根据第一设备中多个不同麦克风的位置定位第一设备的位置;以及根据音频信号源的位置和第一设备的位置,控制第一设备做出应答。
根据本公开的另一个方面,提供了一种多设备语音唤醒实现设备,包括:音频接收单元,配置为获取由第一设备中的多个不同麦克风接收的从音频信号源发出的包含相应唤醒词的音频信号;计算单元,配置为基于不同麦克风接收的音频信号的相位差确定不同麦克风与音频信号源之间的距离差;第一定位单元,配置为基于该距离差定位音频信号源的位置;第二定位单元,配置为根据第一设备中多个不同麦克风的位置定位第一设备的位置;以及确定单元,配置为根据音频信号源的位置和第一设备的位置,控制第一设备做出应答。
根据本公开的另一个方面,提供了一种电子设备,包括:处理器;以及存储程序的存储器,该程序包括指令,该指令在由处理器执行时使处理器执行本公开中所述的多设备语音唤醒实现方法。
根据本公开的另一个方面,提供了一种存储程序的计算机可读存储介质,该程序包括指令,该指令在由电子设备的处理器执行时,致使电子设备执行本公开中所述的多设备语音唤醒实现方法。
根据本公开的另一个方面,提供了一种计算机程序产品,包括计算机程序,该计算机程序在被处理器执行时实现本公开中所述的多设备语音唤醒实现方法。
根据本公开的一个方面,能够实现在多设备环境中将合适设备进行优先唤醒,避免了环境中的所有设备被同时唤醒。
根据本公开另一方面,能够有效避免因器件老化程度不同、一致性差异等导致的设备个体差异。
根据在下文中所描述的实施例,本公开的这些和其它方面将是清楚明白的,并且将参考在下文中所描述的实施例而被阐明。
附图说明
附图示例性地示出了实施例并且构成说明书的一部分,与说明书的文字描述一起用于讲解实施例的示例性实施方式。所示出的实施例仅出于例示的目的,并不限制权利要求的范围。在所有附图中,相同的附图标记指代类似但不一定相同的要素。
图1是示出示例性实施例的多设备语音唤醒实现方法的流程图;
图2是示出示例性实施例的根据控制第一设备做出应答的流程图;
图3是示出示例性实施例的包含第一夹角和第二夹角的示意图;
图4是示出示例性实施例的多设备语音唤醒实现设备的示意图;以及
图5是示出能够应用于示例性实施例的示例性计算设备的结构框图。
具体实施方式
在本公开中,除非另有说明,否则使用术语“第一”、“第二”等来描述各种要素不意图限定这些要素的位置关系、时序关系或重要性关系,这种术语只是用于将一个元件与另一元件区分开。在一些示例中,第一要素和第二要素可以指向该要素的同一实例,而在某些情况下,基于上下文的描述,它们也可以指代不同实例。
在本公开中对各种所述示例的描述中所使用的术语只是为了描述特定示例的目的,而并非旨在进行限制。除非上下文另外明确地表明,如果不特意限定要素的数量,则该要素可以是一个也可以是多个。此外,本公开中所使用的术语“和/或”涵盖所列出的项目中的任何一个以及全部可能的组合方式。
现有的智能设备(下面也称为设备,比如智能音箱)一般是支持语音唤醒的,比如设定唤醒词为:“小度小度”,当用户语音输出:小度小度时,智能音箱就可以被语音唤醒了。但在家庭局域网络环境下,如果家庭中有多台智能设备,当用户语音输出唤醒词时这些智能设备可以支持同时被语音唤醒,但这往往是不符合用户预期的。用户的心里预期可能是其中某一台智能设备(例如距离用户最近的)被唤醒,而其他的智能设备不会被唤醒。
图1是示出示例性实施例的多设备语音唤醒实现方法的流程图。如图1所示,该方法包括:获取由第一设备中的多个不同麦克风接收的从音频信号源发出的包含相应唤醒词的音频信号(步骤110);基于不同麦克风接收的音频信号的相位差确定不同麦克风与音频信号源之间的距离差(步骤120);基于该距离差定位音频信号源的位置(步骤130);根据第一设备中多个不同麦克风的位置定位第一设备的位置(步骤140);以及根据音频信号源的位置和第一设备的位置,控制第一设备做出应答(步骤150)。
在步骤110中,获取由第一设备中的多个不同麦克风接收的从音频信号源发出的包含相应唤醒词的音频信号。
其中,该音频信号源为用户,用户喊出相应的唤醒词即发出音频信号,该音频信号可以被设备的麦克风接收。
在步骤120中,基于不同麦克风接收的音频信号的相位差确定不同麦克风与音频信号源之间的距离差。
根据一些实施例,基于不同麦克风接收的音频信号的相位差确定不同麦克风与音频信号源之间的距离差包括:获取至少两个不同的组中的麦克风所接收音频信号的相位差,其中,每一个组包括两个麦克风;以及根据该相位差和第一设备采集音频信号的采样频率确定每一个组中的两个麦克风与音频信号源的距离差。
根据一些实施例,利用相关函数计算每一组中的两个麦克风所接收的音频信号的相关性,当两个麦克风所接收的音频信号的相关系数最大时,能够获得该两个麦克风所接收的音频信号的时间差,基于该时间差和声波的速度即可得到该两个麦克风与音频信号源的距离差。
根据一些实施例,第一设备的麦克风至少为3个。
在一些示例中,例如该设备包括三个麦克风,其分别为M1、M2以及M3,至少两个不同的组即:由M1和M2、M1和M3、以及M2和M3所形成的组中的至少两组。
在步骤130中,基于该距离差定位音频信号源的位置。
根据一些实施例,基于该距离差定位音频信号源的位置包括:根据每一个组所对应的距离差分别绘制双曲线;以及基于双曲线的交点定位音频信号源的位置。
其中,双曲线为与两个固定的点(叫做焦点)的距离差是常数的点的轨迹。所以,以每一个组的两个麦克风以焦点,可以绘制出距离该两个麦克风的距离差为上述计算得到的距离差的一组点的轨迹(即可能的音频信号源位置的组合),也即绘制出一条双曲线。两条不同的双曲线的交点即为定位出的音频信号源的位置。
在步骤140中,根据第一设备中多个不同麦克风的位置定位第一设备的位置。
根据一些实施例,可以将该多个不同麦克风所形成多边形的几何中心作为第一设备的位置点。或者,在一些示例中,也可以将该多个不同麦克风所形成多边形的几何重心作为第一设备的位置点。或者,在一些示例中,也可以根据该多个不同麦克风的坐标的平均值定位第一设备的位置。或者,在一些示例中,也可以将其中一个麦克风的位置作为第一设备的位置。应当理解,其他可以用来定位第一设备的位置的方法也是可能的。
在步骤150中,根据音频信号源的位置和第一设备的位置,控制第一设备做出应答。
根据一些实施例,根据音频信号源的位置和第一设备的位置,控制第一设备做出应答包括:基于音频信号源的位置和第一设备的位置确定第一设备与音频信号源之间的距离;接收第二设备与音频信号源之间的距离,其中第二设备为局域网内除第一设备以外的其他设备;比较第一设备与音频信号源之间的距离以及获取的第二设备与音频信号源之间的距离;以及响应于最小的距离所对应的设备为第一设备,控制第一设备做出应答。
根据一些实施例,还包括:将第一设备的IP地址和端口号通过UDP组播方式发送到第二设备,以基于该IP地址和端口号与第二设备通信;以及接收第二设备定时通过UDP组播方式发送的心跳包,以确定第二设备当前在线。
在一些示例中,预先将第一设备的局域网IP地址和端口号进行封包通过UDP组播方式发送出去,局域网内的第二设备接收到该UDP组播数据包并对数据包进行解包,获取到第一设备的IP地址和端口号信息并保存。即,局域网内的每一台智能设备均将预先设定好的UDP组播数据包信息发送出去;接收到UDP组播数据包的其他智能设备,对数据包进行解包,在解包数据时就可以获取到其他智能设备的局域网IP和PORT端口号信息。这样,局域网内的所有智能设备之间就可以相互发现了。局域网内这些智能设备能发现对方后(知道对方的局域网IP和PORT端口号),就可以将一些需要的信息进行数据封包进行传输到其他的智能设备上,这里主要通过UDP单播的方式进行数据传输,这种传输方式的效率比较高,速度比较快。
在一些示例中,每个智能设备通过上述过程计算其与音频信号源之间的距离,并将该计算后的距离值根据对方设备的IP地址和端口号通过UDP单播方式发送到局域网内的其他智能设备上,这样,局域网内的每台智能设备上就都存在自身设备与音频信号源的距离值以及其他所有智能设备与音频信号源的距离值了。在每台智能设备上进行比较计算,比较其存储的所有距离值并找到最小的距离值,当该最小的距离值对应于其自身时,做出应答,此时该设备真正被唤醒,可以接受用户的语音交互请求,对用户的语音请求做出应答回复等操作。在一些示例中,每台智能设备定时(例如每隔10秒)通过UDP组播方式向局域网内发送心跳包,以表示其在线。该心跳包可以被局域网内的其他在线设备接收到,即获知发送该心跳包的设备在线的信息。其中,每台智能设备将其与音频信号源的距离值发送到在线设备上,即如果设备在发送其距离值之前已长时间(例如1分钟、2分钟等等)未接收到某一台设备的心跳包,则不将该距离值发送到该某一台设备上。
根据一些实施例,还包括循环执行以下操作:使得第一设备的多个不同麦克风接收从第二设备发出的音频信号,其中,第二设备为局域网内除第一设备以外的其他设备;获取至少两个不同的组中的麦克风所接收音频信号的相位差,其中,每一个组包括两个麦克风;根据相位差和第一设备采集音频信号的采样频率确定每一个组中的两个麦克风与第二设备的距离差;以及根据每一个组所对应的距离差分别绘制双曲线以基于双曲线的交点定位第二设备的位置并保存,直到第一设备保存所有第二设备的位置。
在一些示例中,使局域网内的所有智能设备依次发出音频信号,例如依次播放歌曲,其他智能设备在唤醒状态下接收该音频信号并进行计算,以定位出该正在发出音频信号的设备的位置,直到每一台设备上均保存有局域网内的其他所有设备的位置信息。此后,就可以根据该保存的位置信息实施本公开所述的多设备语音唤醒实现方法了。
根据一些实施例,如图2所示,根据音频信号源的位置和第一设备的位置,控制第一设备做出应答包括:根据第一设备的位置、第二设备的位置以及音频信号源的位置,依次确定每一个设备对中以第一设备为原点,第二设备和音频信号源之间的第一夹角,其中,设备对为第一设备与每一个当前在线的第二设备组成(步骤210);根据第一设备的位置、第二设备的位置以及音频信号源的位置,依次确定每一个设备对中以第二设备为原点、第一设备和音频信号源之间的第二夹角(步骤220);以及根据第一夹角和第二夹角控制第一设备做出应答。
根据一些实施例,根据第一夹角和第二夹角控制第一设备做出应答包括:如果每一个设备对中的第一夹角均大于第二夹角且其角度差值均大于阈值,确定第一设备为与音频信号源距离最近的设备并使第一设备做出应答(步骤240,“是”);以及如果每一个设备对中的第一夹角均大于第二夹角且存在一个或多个设备对中的其角度差值不大于阈值(步骤250,“是”),执行以下操作:获取所述一个或多个设备对中的第二设备的音量值,其中音量值为设备中所有麦克风所接收到的包含相应唤醒词的音频信号的幅值平均值(步骤260);分别比较一个或多个设备对中的第一设备所接收的音量值和第二设备所接收的音量值的大小;以及如果一个或多个设备对中的第一设备所接收的音量值均大于第二设备所接收的音量值,控制第一设备做出应答(步骤270,“是”)。
在只比较音量值时,可能会由于器件老化程度不同、一致性差异等导致的设备个体差异造成较大误差。相比只比较多个设备所接收音量值(即唤醒能量值)而实现的多设备语音唤醒方法,本公开实现的多设备语音唤醒方法将更加的精确,从而将合适的设备唤醒。
另外,在本公开的实施例中,设定夹角差值阈值并在差值小于阈值时进一步比较音量值,更进一步提高了准确性。
根据一些实施例,在确定每个设备的夹角之前,还包括确定当前在位的第二设备(步骤210)。在一些示例中,第二设备定时(例如每个10秒)通过UDP组播方式向局域网内发送心跳包,以表示其在线。该心跳包可以被第一设备接收到,即获知发送该心跳包的第二设备在线的信息。如果第一设备已长时间(例如1分钟、2分钟等等)未接收到某一台第二设备的心跳包,则说明该第二设备已不在线,此时,第一设备不与该第二设备作为一个设备对来根据其之间的位置计算第一夹角和第二夹角,即不在线的第二设备不参与后续计算。从而,节省了设备的计算资源并提高了运行效率。
根据一些实施例,还包括:将第一设备的IP地址和端口号通过UDP组播方式发送到第二设备,以基于IP地址和端口号与第二设备通信;以及接收所述第二设备定时通过UDP组播方式发送的心跳包,以确定所述第二设备当前在线。在一些示例中,音量值可基于IP地址和端口号通过UDP单播方式进行传输。
在一些示例中,3所示,以设备2为例(即设备2为第一设备),在设备1和设备3均在线时,设备2和设备1组成一个设备对、设备2和设备3组成一个设备对。其中,在设备2和设备1组成的设备对中,第一夹角为角A1、第二夹角为角B1;在设备2和设备3组成的设备对中,第一夹角为角A2、第二夹角为角B2。
根据本公开的另一方面,如图4所示,还提供一种多设备语音唤醒实现设备,包括:
音频接收单元410,配置为获取由第一设备中的多个不同麦克风接收的从音频信号源发出的包含相应唤醒词的音频信号;计算单元420,配置为基于不同麦克风接收的音频信号的相位差确定不同麦克风与音频信号源之间的距离差;第一定位单元430,配置为基于该距离差定位音频信号源的位置;第二定位单元440,配置为根据第一设备中多个不同麦克风的位置定位第一设备的位置;以及确定单元450,配置为根据音频信号源的位置和第一设备的位置,控制第一设备做出应答。
根据一些实施例,计算单元配置为执行以下操作:获取至少两个不同的组中的麦克风所接收音频信号的相位差,其中,每一个组包括两个麦克风;以及根据相位差和第一设备采集所述音频信号的采样频率确定每一个所述组中的两个麦克风与音频信号源的距离差。
根据一些实施例,第一定位单元配置为执行以下操作:根据每一个组所对应的距离差分别绘制双曲线;以及基于双曲线的交点定位音频信号源的位置。
根据一些实施例,第二定位单元配置为将该多个不同麦克风所形成多边形的几何中心作为第一设备的位置点。或者,在一些示例中,也可以配置为将该多个不同麦克风所形成多边形的几何重心作为第一设备的位置点。或者,在一些示例中,也可以配置为根据该多个不同麦克风的坐标的平均值定位第一设备的位置。或者,在一些示例中,也可以配置为将其中一个麦克风的位置作为第一设备的位置。应当理解,其他可以用来定位第一设备的位置的其他配置也是可能的。
根据一些实施例,确定单元配置为执行以下操作:基于音频信号源的位置和第一设备的位置确定第一设备与音频信号源之间的距离;接收第二设备与音频信号源之间的距离,其中第二设备为局域网内除第一设备以外的其他设备;比较第一设备与音频信号源之间的距离以及获取的第二设备与音频信号源之间的距离;以及响应于最小的距离所对应的设备为第一设备,控制第一设备做出应答。
根据一些实施例,还包括第三定位单元,配置为循环执行以下操作:使得第一设备的多个不同麦克风接收从第二设备发出的音频信号,其中,第二设备为局域网内除第一设备以外的其他设备;获取至少两个不同的组中的麦克风所接收音频信号的相位差,其中,每一个组包括两个麦克风;根据相位差和第一设备采集音频信号的采样频率确定每一个组中的两个麦克风与第二设备的距离差;以及根据每一个组所对应的距离差分别绘制双曲线以基于双曲线的交点定位第二设备的位置并保存,直到第一设备保存所有第二设备的位置。
根据一些实施例,确定单元配置为执行以下操作:根据第一设备的位置、第二设备的位置以及音频信号源的位置,依次确定每一个设备对中以第一设备为原点,第二设备和音频信号源之间的第一夹角,其中,设备对为第一设备与每一个当前在线的第二设备组成;根据第一设备的位置、第二设备的位置以及音频信号源的位置,依次确定每一个设备对中以第二设备为原点、第一设备和音频信号源之间的第二夹角;以及根据第一夹角和第二夹角控制第一设备做出应答。
根据一些实施例,确定单元还配置为执行以下操作:响应于每一个设备对中的第一夹角均大于第二夹角且其角度差值均大于阈值,确定第一设备为与音频信号源距离最近的设备并使第一设备做出应答;以及响应于每一个设备对中的第一夹角均大于第二夹角且存在一个或多个设备对中的其角度差值不大于阈值,执行以下操作:获取该一个或多个设备对中的第二设备的音量值,其中音量值为设备中所有麦克风所接收到的包含相应唤醒词的音频信号的幅值平均值;分别比较一个或多个设备对中的第一设备所接收的音量值和第二设备所接收的音量值的大小;以及响应于该一个或多个设备对中的第一设备所接收的音量值均大于第二设备所接收的音量值,控制第一设备做出应答。
根据一些实施例,还包括通信单元,通信单元配置为执行以下操作:将第一设备的IP地址和端口号通过UDP组播方式发送到第二设备,以基于IP地址和端口号与第二设备通信;以及接收第二设备定时通过UDP组播方式发送的心跳包,以确定第二设备当前在线。
根据一些实施例,第一设备的麦克风至少为3个。
这里,多设备语音唤醒实现设备400的上述各单元的操作分别与前面描述的步骤的操作类似,在此不再赘述。
根据本公开的另一方面,还提供一种电子设备,可以包括:处理器;以及存储程序的存储器,所述程序包括指令,所述指令在由所述处理器执行时使所述处理器执行根据上述的多设备语音唤醒实现方法。
根据本公开的另一方面,还提供一种存储程序的计算机可读存储介质,所述程序包括指令,所述指令在由电子设备的处理器执行时,致使所述电子设备执行根据上述的多设备语音唤醒实现方法。
参见图5所示,现将描述计算设备2000,其是可以应用于本公开的各方面的硬件设备(电子设备)的示例。计算设备2000可以是被配置为执行处理和/或计算的任何机器,可以是但不限于工作站、服务器、台式计算机、膝上型计算机、平板计算机、个人数字助理、机器人、智能电话、车载计算机或其任何组合。上述多设备语音唤醒实现方法可以全部或至少部分地由计算设备2000或类似设备或系统实现。
计算设备2000可以包括(可能经由一个或多个接口)与总线2002连接或与总线2002通信的元件。例如,计算设备2000可以包括总线2002、一个或多个处理器2004、一个或多个输入设备2006以及一个或多个输出设备2008。一个或多个处理器2004可以是任何类型的处理器,并且可以包括但不限于一个或多个通用处理器和/或一个或多个专用处理器(例如特殊处理芯片)。输入设备2006可以是能向计算设备2000输入信息的任何类型的设备,并且可以包括但不限于鼠标、键盘、触摸屏、麦克风和/或遥控器。输出设备2008可以是能呈现信息的任何类型的设备,并且可以包括但不限于显示器、扬声器、视频/音频输出终端、振动器和/或打印机。计算设备2000还可以包括非暂时性存储设备2010或者与非暂时性存储设备2010连接,非暂时性存储设备可以是非暂时性的并且可以实现数据存储的任何存储设备,并且可以包括但不限于磁盘驱动器、光学存储设备、固态存储器、软盘、柔性盘、硬盘、磁带或任何其他磁介质,光盘或任何其他光学介质、ROM(只读存储器)、RAM(随机存取存储器)、高速缓冲存储器和/或任何其他存储器芯片或盒、和/或计算机可从其读取数据、指令和/或代码的任何其他介质。非暂时性存储设备2010可以从接口拆卸。非暂时性存储设备2010可以具有用于实现上述方法和步骤的数据/程序(包括指令)/代码。计算设备2000还可以包括通信设备2012。通信设备2012可以是使得能够与外部设备和/或与网络通信的任何类型的设备或系统,并且可以包括但不限于调制解调器、网卡、红外通信设备、无线通信设备和/或芯片组,例如蓝牙TM设备、1302.11设备、WiFi设备、WiMax设备、蜂窝通信设备和/或类似物。
计算设备2000还可以包括工作存储器2014,其可以是可以存储对处理器2004的工作有用的程序(包括指令)和/或数据的任何类型的工作存储器,并且可以包括但不限于随机存取存储器和/或只读存储器设备。
软件要素(程序)可以位于工作存储器2014中,包括但不限于操作系统2016、一个或多个应用程序2018、驱动程序和/或其他数据和代码。用于执行上述方法和步骤的指令可以被包括在一个或多个应用程序2018中,并且上述多设备语音唤醒实现方法可以通过由处理器2004读取和执行一个或多个应用程序2018的指令来实现。更具体地,上述多设备语音唤醒实现方法中,步骤110~步骤150可以例如通过处理器2004执行具有步骤110~步骤150的指令的应用程序2018而实现。此外,上述多设备语音唤醒实现方法中的其它步骤可以例如通过处理器2004执行具有执行相应步骤中的指令的应用程序2018而实现。软件要素(程序)的指令的可执行代码或源代码可以存储在非暂时性计算机可读存储介质(例如上述存储设备2010)中,并且在执行时可以被存入工作存储器2014中(可能被编译和/或安装)。软件要素(程序)的指令的可执行代码或源代码也可以从远程位置下载。
还应该理解,可以根据具体要求而进行各种变型。例如,也可以使用定制硬件,和/或可以用硬件、软件、固件、中间件、微代码,硬件描述语言或其任何组合来实现特定元件。例如,所公开的方法和设备中的一些或全部可以通过使用根据本公开的逻辑和算法,用汇编语言或硬件编程语言(诸如VERILOG,VHDL,C++)对硬件(例如,包括现场可编程门阵列(FPGA)和/或可编程逻辑阵列(PLA)的可编程逻辑电路)进行编程来实现。
还应该理解,前述方法可以通过服务器-客户端模式来实现。例如,客户端可以接收用户输入的数据并将所述数据发送到服务器。客户端也可以接收用户输入的数据,进行前述方法中的一部分处理,并将处理所得到的数据发送到服务器。服务器可以接收来自客户端的数据,并且执行前述方法或前述方法中的另一部分,并将执行结果返回给客户端。客户端可以从服务器接收到方法的执行结果,并例如可以通过输出设备呈现给用户。
还应该理解,计算设备2000的组件可以分布在网络上。例如,可以使用一个处理器执行一些处理,而同时可以由远离该一个处理器的另一个处理器执行其他处理。计算系统2000的其他组件也可以类似地分布。这样,计算设备2000可以被解释为在多个位置执行处理的分布式计算系统。
虽然已经参照附图描述了本公开的实施例或示例,但应理解,上述的方法、系统和设备仅仅是示例性的实施例或示例,本发明的范围并不由这些实施例或示例限制,而是仅由授权后的权利要求书及其等同范围来限定。实施例或示例中的各种要素可以被省略或者可由其等同要素替代。此外,可以通过不同于本公开中描述的次序来执行各步骤。进一步地,可以以各种方式组合实施例或示例中的各种要素。重要的是随着技术的演进,在此描述的很多要素可以由本公开之后出现的等同要素进行替换。
Claims (18)
1.一种多设备语音唤醒实现方法,包括:
获取由第一设备中的多个不同麦克风接收的从音频信号源发出的包含相应唤醒词的音频信号;
基于所述不同麦克风接收的所述音频信号的相位差确定所述不同麦克风与所述音频信号源之间的距离差;
基于所述距离差定位所述音频信号源的位置;
根据所述第一设备中所述多个不同麦克风的位置定位所述第一设备的位置;
获取所述第一设备的多个不同麦克风接收的从第二设备发出的音频信号,其中,所述第二设备为局域网内除所述第一设备以外的其他设备;
获取至少两个不同的组中的麦克风所接收音频信号的相位差,其中,每一个所述组包括两个麦克风;
根据所述相位差和所述第一设备采集所述音频信号的采样频率确定每一个所述组中的两个麦克风与所述第二设备的距离差;
根据每一个所述组所对应的距离差分别绘制双曲线以基于所述双曲线的交点定位所述第二设备的位置并保存,直到所述第一设备保存所有所述第二设备的位置;以及
根据所述音频信号源的位置、所述第二设备的位置和所述第一设备的位置,控制所述第一设备做出应答。
2.如权利要求1所述的方法,基于所述不同麦克风接收的所述音频信号的相位差确定所述不同麦克风与所述音频信号源之间的距离差包括:
获取至少两个不同的组中的麦克风所接收音频信号的相位差,其中,每一个所述组包括两个麦克风;以及
根据所述相位差和所述第一设备采集所述音频信号的采样频率确定每一个所述组中的两个麦克风与所述音频信号源的距离差。
3.如权利要求2所述的方法,基于所述距离差定位所述音频信号源的位置包括:
根据每一个所述组所对应的距离差分别绘制双曲线;以及
基于所述双曲线的交点定位所述音频信号源的位置。
4.如权利要求1所述的方法,根据所述音频信号源的位置、所述第二设备的位置和所述第一设备的位置,控制所述第一设备做出应答包括:
基于所述音频信号源的位置和所述第一设备的位置确定所述第一设备与所述音频信号源之间的距离;
接收所述第二设备与所述音频信号源之间的距离,其中所述第二设备为局域网内除所述第一设备以外的其他设备;
比较所述第一设备与所述音频信号源之间的距离以及获取的所述第二设备与所述音频信号源之间的距离;以及
响应于最小的所述距离所对应的设备为所述第一设备,控制所述第一设备做出应答。
5.如权利要求1所述的方法,根据所述音频信号源的位置、所述第二设备的位置和所述第一设备的位置,控制所述第一设备做出应答包括:
根据所述第一设备的位置、所述第二设备的位置以及所述音频信号源的位置,依次确定每一个设备对中以所述第一设备为原点,所述第二设备和所述音频信号源之间的第一夹角,其中,所述设备对为所述第一设备与每一个当前在线的所述第二设备组成;
根据所述第一设备的位置、所述第二设备的位置以及所述音频信号源的位置,依次确定每一个所述设备对中以所述第二设备为原点、所述第一设备和所述音频信号源之间的第二夹角;以及
根据所述第一夹角和所述第二夹角控制所述第一设备做出应答。
6.如权利要求5所述的方法,根据所述第一夹角和所述第二夹角控制所述第一设备做出应答包括:
响应于每一个所述设备对中的所述第一夹角均大于所述第二夹角且其角度差值均大于阈值,确定所述第一设备为与所述音频信号源距离最近的设备并使所述第一设备做出应答;以及
响应于每一个所述设备对中的所述第一夹角均大于所述第二夹角且存在一个或多个所述设备对中的其角度差值不大于所述阈值,执行以下操作:
获取所述一个或多个设备对中的所述第二设备的音量值,其中所述音量值为设备中所有麦克风所接收到的包含相应唤醒词的音频信号的幅值平均值;
分别比较所述一个或多个设备对中的所述第一设备所接收的音量值和所述第二设备所接收的音量值的大小;以及
响应于所述一个或多个设备对中的所述第一设备所接收的音量值均大于所述第二设备所接收的音量值,控制所述第一设备做出应答。
7.如权利要求4或6所述的方法,还包括:
将所述第一设备的IP地址和端口号通过UDP组播方式发送到所述第二设备,以基于所述IP地址和端口号与所述第二设备通信;以及
接收所述第二设备定时通过UDP组播方式发送的心跳包,以确定所述第二设备当前在线。
8.如权利要求1所述的方法,所述第一设备的麦克风至少为3个。
9.一种多设备语音唤醒实现设备,包括:
音频接收单元,配置为获取由第一设备中的多个不同麦克风接收的从音频信号源发出的包含相应唤醒词的音频信号;
计算单元,配置为基于所述不同麦克风接收的所述音频信号的相位差确定所述不同麦克风与所述音频信号源之间的距离差;
第一定位单元,配置为基于所述距离差定位所述音频信号源的位置;
第二定位单元,配置为根据所述第一设备中所述多个不同麦克风的位置定位所述第一设备的位置;
第三定位单元,配置为循环执行以下操作:
使得所述第一设备的多个不同麦克风接收从第二设备发出的音频信号,其中,所述第二设备为局域网内除所述第一设备以外的其他设备;
获取至少两个不同的组中的麦克风所接收音频信号的相位差,其中,每一个所述组包括两个麦克风;
根据所述相位差和所述第一设备采集所述音频信号的采样频率确定每一个所述组中的两个麦克风与所述第二设备的距离差;以及
根据每一个所述组所对应的距离差分别绘制双曲线以基于所述双曲线的交点定位所述第二设备的位置并保存,直到所述第一设备保存所有所述第二设备的位置;以及
确定单元,配置为根据所述音频信号源的位置、所述第二设备的位置和所述第一设备的位置,控制所述第一设备做出应答。
10.如权利要求9所述的设备,所述计算单元配置为执行以下操作:
获取至少两个不同的组中的麦克风所接收音频信号的相位差,其中,每一个所述组包括两个麦克风;以及
根据所述相位差和所述第一设备采集所述音频信号的采样频率确定每一个所述组中的两个麦克风与所述音频信号源的距离差。
11.如权利要求10所述的设备,所述第一定位单元配置为执行以下操作:
根据每一个所述组所对应的距离差分别绘制双曲线;以及
基于所述双曲线的交点定位所述音频信号源的位置。
12.如权利要求9所述的设备,所述确定单元配置为执行以下操作:
基于所述音频信号源的位置和所述第一设备的位置确定所述第一设备与所述音频信号源之间的距离;
接收第二设备与所述音频信号源之间的距离,其中所述第二设备为局域网内除所述第一设备以外的其他设备;
比较所述第一设备与所述音频信号源之间的距离以及获取的所述第二设备与所述音频信号源之间的距离;以及
响应于最小的所述距离所对应的设备为所述第一设备,控制所述第一设备做出应答。
13.如权利要求9所述的设备,所述确定单元配置为执行以下操作:
根据所述第一设备的位置、所述第二设备的位置以及所述音频信号源的位置,依次确定每一个设备对中以所述第一设备为原点,所述第二设备和所述音频信号源之间的第一夹角,其中,所述设备对为所述第一设备与每一个当前在线的所述第二设备组成;
根据所述第一设备的位置、所述第二设备的位置以及所述音频信号源的位置,依次确定每一个所述设备对中以所述第二设备为原点、所述第一设备和所述音频信号源之间的第二夹角;以及
根据所述第一夹角和所述第二夹角控制所述第一设备做出应答。
14.如权利要求13所述的设备,所述确定单元还配置为执行以下操作:
响应于每一个所述设备对中的所述第一夹角均大于所述第二夹角且其角度差值均大于阈值,确定所述第一设备为与所述音频信号源距离最近的设备并使所述第一设备做出应答;以及
响应于每一个所述设备对中的所述第一夹角均大于所述第二夹角且存在一个或多个所述设备对中的其角度差值不大于所述阈值,执行以下操作:
获取所述一个或多个设备对中的所述第二设备的音量值,其中所述音量值为设备中所有麦克风所接收到的包含相应唤醒词的音频信号的幅值平均值;
分别比较所述一个或多个设备对中的所述第一设备所接收的音量值和所述第二设备所接收的音量值的大小;以及
响应于所述一个或多个设备对中的所述第一设备所接收的音量值均大于所述第二设备所接收的音量值,控制所述第一设备做出应答。
15.如权利要求12或14所述的设备,还包括通信单元,所述通信单元配置为执行以下操作:
将所述第一设备的IP地址和端口号通过UDP组播方式发送到所述第二设备,以基于所述IP地址和端口号与所述第二设备通信;以及
接收所述第二设备定时通过UDP组播方式发送的心跳包,以确定所述第二设备当前在线。
16.如权利要求9所述的设备,所述第一设备的麦克风至少为3个。
17.一种电子设备,包括:
处理器;以及
存储程序的存储器,所述程序包括指令,所述指令在由所述处理器执行时使所述处理器执行根据权利要求1-8中任一项所述的方法。
18.一种存储程序的计算机可读存储介质,所述程序包括指令,所述指令在由电子设备的处理器执行时,致使所述电子设备执行根据权利要求1-8中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010699259.5A CN111812588B (zh) | 2020-07-20 | 2020-07-20 | 多设备语音唤醒实现方法及设备、电子设备和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010699259.5A CN111812588B (zh) | 2020-07-20 | 2020-07-20 | 多设备语音唤醒实现方法及设备、电子设备和介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111812588A CN111812588A (zh) | 2020-10-23 |
CN111812588B true CN111812588B (zh) | 2023-08-18 |
Family
ID=72865850
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010699259.5A Active CN111812588B (zh) | 2020-07-20 | 2020-07-20 | 多设备语音唤醒实现方法及设备、电子设备和介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111812588B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112889299B (zh) * | 2021-01-12 | 2022-07-22 | 华为技术有限公司 | 评估传声器阵列一致性的方法和装置 |
CN114915916B (zh) * | 2021-02-08 | 2023-08-22 | 华为技术有限公司 | 定向控制电子设备的方法及电子设备、可读介质 |
CN115482811A (zh) * | 2021-05-31 | 2022-12-16 | 华为技术有限公司 | 一种语音交互应答方法和电子设备 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107271963A (zh) * | 2017-06-22 | 2017-10-20 | 广东美的制冷设备有限公司 | 声源定位的方法和装置及空调器 |
CN107767868A (zh) * | 2017-10-23 | 2018-03-06 | 深圳北鱼信息科技有限公司 | 麦克风阵列及语音控制系统 |
CN109215663A (zh) * | 2018-10-11 | 2019-01-15 | 北京小米移动软件有限公司 | 设备唤醒方法及装置 |
CN109901698A (zh) * | 2017-12-08 | 2019-06-18 | 深圳市腾讯计算机系统有限公司 | 一种智能交互方法、可穿戴设备和终端以及系统 |
CN110062309A (zh) * | 2019-04-28 | 2019-07-26 | 百度在线网络技术(北京)有限公司 | 用于控制智能音箱的方法和装置 |
CN110085233A (zh) * | 2019-04-08 | 2019-08-02 | 广东美的制冷设备有限公司 | 语音控制方法及其装置、电子设备和计算机可读存储介质 |
CN110488221A (zh) * | 2019-08-27 | 2019-11-22 | 宁波方太厨具有限公司 | 多设备场景中的设备定位方法和系统 |
CN110554357A (zh) * | 2019-09-12 | 2019-12-10 | 苏州思必驰信息科技有限公司 | 声源定位方法和装置 |
CN111323753A (zh) * | 2018-12-13 | 2020-06-23 | 蔚来汽车有限公司 | 定位汽车内语音源的方法 |
-
2020
- 2020-07-20 CN CN202010699259.5A patent/CN111812588B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107271963A (zh) * | 2017-06-22 | 2017-10-20 | 广东美的制冷设备有限公司 | 声源定位的方法和装置及空调器 |
CN107767868A (zh) * | 2017-10-23 | 2018-03-06 | 深圳北鱼信息科技有限公司 | 麦克风阵列及语音控制系统 |
CN109901698A (zh) * | 2017-12-08 | 2019-06-18 | 深圳市腾讯计算机系统有限公司 | 一种智能交互方法、可穿戴设备和终端以及系统 |
CN109215663A (zh) * | 2018-10-11 | 2019-01-15 | 北京小米移动软件有限公司 | 设备唤醒方法及装置 |
CN111323753A (zh) * | 2018-12-13 | 2020-06-23 | 蔚来汽车有限公司 | 定位汽车内语音源的方法 |
CN110085233A (zh) * | 2019-04-08 | 2019-08-02 | 广东美的制冷设备有限公司 | 语音控制方法及其装置、电子设备和计算机可读存储介质 |
CN110062309A (zh) * | 2019-04-28 | 2019-07-26 | 百度在线网络技术(北京)有限公司 | 用于控制智能音箱的方法和装置 |
CN110488221A (zh) * | 2019-08-27 | 2019-11-22 | 宁波方太厨具有限公司 | 多设备场景中的设备定位方法和系统 |
CN110554357A (zh) * | 2019-09-12 | 2019-12-10 | 苏州思必驰信息科技有限公司 | 声源定位方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111812588A (zh) | 2020-10-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111812588B (zh) | 多设备语音唤醒实现方法及设备、电子设备和介质 | |
US9437193B2 (en) | Environment adjusted speaker identification | |
CN111566730B (zh) | 低功率设备中的语音命令处理 | |
US20160162469A1 (en) | Dynamic Local ASR Vocabulary | |
EP2669889B1 (en) | Method and apparatus for executing voice command in an electronic device | |
JP2023174674A (ja) | 複数のデバイス上でのホットワード検出 | |
EP3639051B1 (en) | Sound source localization confidence estimation using machine learning | |
US11087763B2 (en) | Voice recognition method, apparatus, device and storage medium | |
US20170280235A1 (en) | Creating an audio envelope based on angular information | |
CN111007999A (zh) | 用户自适应音量选择 | |
CN110018735A (zh) | 智能个人助理接口系统 | |
US20180211668A1 (en) | Reduced latency speech recognition system using multiple recognizers | |
WO2016094418A1 (en) | Dynamic local asr vocabulary | |
KR20220117282A (ko) | 오디오 디바이스 자동-로케이션 | |
JP2020038709A (ja) | 人工知能機器における連続会話機能 | |
US20170206898A1 (en) | Systems and methods for assisting automatic speech recognition | |
CN111176744A (zh) | 电子设备控制方法、装置、终端及存储介质 | |
US10070244B1 (en) | Automatic loudspeaker configuration | |
CN113138559A (zh) | 设备交互方法、装置、电子设备及存储介质 | |
CN109791476B (zh) | 通信装置 | |
US11398070B1 (en) | Boundary approximation utilizing radar | |
CN113593619B (zh) | 用于录制音频的方法、装置、设备和介质 | |
CN114023303A (zh) | 语音处理方法、系统、装置、电子设备以及存储介质 | |
US11381326B1 (en) | Dynamic transmission unit size | |
US12015663B1 (en) | Authenticating users using localization of speech or correlations in audio data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20210510 Address after: 100085 Baidu Building, 10 Shangdi Tenth Street, Haidian District, Beijing Applicant after: BAIDU ONLINE NETWORK TECHNOLOGY (BEIJING) Co.,Ltd. Applicant after: Shanghai Xiaodu Technology Co.,Ltd. Address before: 100085 Baidu Building, 10 Shangdi Tenth Street, Haidian District, Beijing Applicant before: BAIDU ONLINE NETWORK TECHNOLOGY (BEIJING) Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |