An audio device positioning system, method and related product
By calculating the time difference between the speaker and the acoustic acquisition module and registering the anchor point coordinates, high-precision audio device positioning without human intervention or global clock synchronization is achieved. This solves the problems of inefficiency and low precision caused by manual measurement in existing technologies and improves the automation level and accuracy of device positioning.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- YEALINK (XIAMEN) NETWORK TECHNOLOGY CO LTD
- Filing Date
- 2026-04-03
- Publication Date
- 2026-07-14
AI Technical Summary
Existing audio equipment positioning solutions rely on manual measurement and calibration, resulting in low positioning accuracy, low efficiency, and a lack of adaptability to dynamic changes in equipment position. This makes it difficult to achieve efficient and accurate equipment positioning, especially in scenarios such as large conference rooms or high-density deployment of multiple devices.
By calculating the time difference between the loudspeaker and the acoustic acquisition module, a set of relative position points is constructed. Spatial coordinate registration is then performed using the actual position coordinates of at least three non-collinear anchor points to generate a device position distribution map, achieving high-precision automatic positioning without human intervention or global clock synchronization.
Achieving high-precision automatic positioning of multiple devices in complex acoustic environments improves deployment efficiency and positioning reliability, and solves the problems of complexity of manual operation and insufficient positioning accuracy in traditional solutions.
Smart Images

Figure CN122386239A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of audio device positioning technology, specifically to an audio device positioning system, method, and related products. Background Technology
[0002] In modern conference rooms, lecture halls, and multi-functional halls, the precise positioning of audio devices such as microphones and speakers is the technical foundation for achieving high-quality audio signal acquisition, sound field optimization, real-time speaker tracking, and automatic mixing.
[0003] Currently, common audio device positioning solutions typically rely on manual setup. During system deployment, staff usually need to manually measure distances and azimuths between devices, and then input coordinates and calibrate the system based on this information. This method is not only cumbersome and time-consuming, but also prone to human error, making it difficult to guarantee positioning accuracy. The inefficiencies and inaccuracies of traditional solutions are particularly pronounced in large conference rooms with numerous devices and complex spatial structures, or in scenarios with high-density deployment of multiple devices. Furthermore, existing systems often lack the ability to adapt to dynamic changes in device positions. Once the layout is adjusted or devices are moved, a complete set of manual calibrations is usually required, resulting in insufficient convenience for system maintenance and updates.
[0004] Therefore, there is an urgent need for a device positioning solution to improve the automation level of audio system deployment and operation, and to provide reliable spatial location information support for subsequent sound field processing and audio optimization. Summary of the Invention
[0005] This application provides an audio device positioning system, method, and related products to achieve accurate positioning of devices in a preset area (such as a conference room).
[0006] On the one hand, this application provides an audio device positioning system, including a processing device, a speaker and an acoustic acquisition module, wherein the acoustic acquisition module includes at least two microphones, and the speaker and the acoustic acquisition module are arranged in a preset area; The processing device is configured to: Control the speaker to play audio signals and acquire the corresponding first-time data; Acquire audio data containing second time data generated by each microphone in the acoustic acquisition module after receiving the audio signal; Based on one or more of the first time data and the second time data, the relative positional relationship between the loudspeaker and the acoustic acquisition module is obtained, and a set of relative position points containing the positions of all acoustic devices and / or their geometrically derived reference points is constructed; Obtain the actual position coordinates of at least three non-collinear anchor points, where the anchor points are selected from the set of relative position points; Based on the actual position coordinates of at least three non-collinear anchor points, spatial coordinate registration is performed on the relative position point set to generate a device location distribution map of the preset area.
[0007] In one possible design, the processing device is used to obtain time difference information based on first time data of audio signals played by the same speaker and second time data of audio signals played by the speaker received by different microphones in the acoustic acquisition module; and based on the time difference information and the spatial positional relationship between the microphones in the acoustic acquisition module, to obtain the relative positional relationship of the speaker with respect to the acoustic acquisition module.
[0008] In one possible design, the processing device is used to integrate the relative positional relationships of various acoustic devices within a preset area to obtain a set of acoustic device position points; and / or combine the geometrical arrangement relationships between the devices in the set of acoustic device position points to generate geometrically derived reference points, thereby obtaining the geometrically derived reference points to form the set of relative position points.
[0009] In one possible design, there are multiple speakers. The first time data of each speaker playing audio signals and the second time data of different microphones in the acoustic acquisition module receiving the signals are obtained to obtain multiple sets of time difference information to determine the relative positional relationship between the speakers. The multiple sets of time difference information include the propagation time of each audio signal received by the acoustic acquisition module and the time difference of each audio signal arriving at different microphones.
[0010] In one possible design, the acoustic acquisition module includes at least one first microphone array; wherein the clock of the first microphone array is synchronized with the clock of the speaker. The processing device is used for: For any first microphone array, time difference information is obtained based on the second time data difference between at least two microphones within it and the first time of the speaker; Based on the time difference information, the relative position of the speaker with respect to the first microphone array is determined.
[0011] In one possible design, the acoustic acquisition module includes at least one second microphone array; wherein the clock of the second microphone array is not synchronized with the clock of the speaker. Based on the second time data of the audio signal of each speaker arriving at each microphone in the second microphone array, multiple sets of time difference information of each microphone in the second microphone array relative to each speaker are obtained; Based on the multiple sets of time difference information and the relative positions of the speakers, the relative position between the second microphone array and the speakers is determined. Optionally, the processing device may or may not be located in a preset area.
[0012] In one possible design, the system further includes a camera device; the camera device is used to acquire the actual position data of the at least three anchor points, including: The camera device captures an image of a preset area and sends the image to the processing device; The processing device is also used to receive images sent by the camera device; The actual position data of the at least three anchor points are obtained by locating the images sent by the camera device.
[0013] In one possible design, the camera device is integrated with the aforementioned second microphone array into a single device.
[0014] In one possible design, there are multiple camera devices, and the processing device is further configured to perform positioning based on images sent by the multiple camera devices to obtain the actual position data of the at least three anchor points.
[0015] On the other hand, this application provides an audio device positioning method, applied to a processing device, the method comprising: Control the speakers within the preset area to play audio signals and acquire their corresponding first-time data; Acquire audio data containing second time data generated by each microphone in the acoustic acquisition module within the preset area after receiving the audio signal; Based on one or more of the first time data and the second time data, the relative positional relationship between the loudspeaker and the acoustic acquisition module is obtained, and a set of relative position points containing the positions of all acoustic devices and / or their geometrically derived reference points is constructed; Obtain the actual position coordinates of at least three non-collinear anchor points, wherein the anchor points are selected from the set of relative position points; Based on the actual position coordinates of the at least three non-collinear anchor points, spatial coordinate registration is performed on the set of relative position points to generate a device location distribution map of the preset area.
[0016] In one possible design approach, the method further includes: Acquire images of a preset area captured by a camera device; Based on the image, the actual position data of the at least three anchor points are obtained.
[0017] On the other hand, this application provides an electronic device including a memory, a communication module, and a processor. The communication module is used to communicate with other devices. The memory stores a computer program or instructions. When the computer program or instructions are executed by the processor, the processor performs the method described above.
[0018] On the other hand, this application provides a computer-readable storage medium having a computer program or instructions stored thereon, which, when executed by a processor, implement the method described above.
[0019] On the other hand, this application provides a computer program product that, when run on an electronic device, causes the electronic device to perform the method described above.
[0020] The audio device positioning system provided in this application integrates loudspeakers and acoustic acquisition modules into a unified signal interaction framework. Utilizing first-time data synchronously recorded when the loudspeakers play audio signals, and second-time data generated by multiple microphones within the acoustic acquisition module when receiving signals, the system can calculate the relative spatial geometric relationships between devices based on the time differences in the arrival times of the same signal at different microphones, without relying on independent time systems. Furthermore, the system constructs a relative position point set containing the locations of all acoustic devices and their geometrically derived reference points. Using the actual position coordinates of at least three non-collinear anchor points, it performs spatial coordinate registration, mapping the relative positional relationships to the absolute coordinate system of a preset area, thereby generating a complete device location distribution map. The entire process requires no manual intervention for benchmark calibration or coordinate measurement, nor does it require strict clock synchronization between the acoustic acquisition modules and loudspeakers. Through internal data collaboration and algorithm fusion, it achieves high-precision automatic positioning of multiple devices in complex acoustic environments, significantly improving deployment efficiency and positioning reliability. Attached Figure Description
[0021] To more clearly illustrate the technical solutions in the embodiments of this application, the drawings used in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0022] Figure 1 This is a schematic diagram of the structure of an audio device positioning system provided in the embodiments of this application; Figure 2 This is a schematic diagram of location fusion provided in an embodiment of this application; Figure 3 This is a flowchart illustrating an audio device positioning method provided in an embodiment of this application. Figure 1; Figure 4 This is a flowchart illustrating an audio device positioning method provided in an embodiment of this application. Figure 2 ; Figure 5 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application; Figure 6 This is a schematic diagram of the structure of a chip system provided in an embodiment of this application. Detailed Implementation
[0023] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0024] In the following description, specific embodiments of the invention will be illustrated with reference to steps and symbols performed by one or more computers, unless otherwise stated. Therefore, these steps and operations will be referred to several times as being performed by a computer, and computer execution as referred to herein includes operations by a computer processing unit representing electronic signals of data in a structured format. This operation transforms the data or maintains it at a location in the computer's memory system, which can be reconfigured or otherwise alter the operation of the computer in a manner well known to those skilled in the art. The data structure maintained by the data is the physical location of the memory, which has specific characteristics defined by the data format. However, the principles of the invention described above are not intended to be limiting, and those skilled in the art will understand that many of the steps and operations described below can also be implemented in hardware.
[0025] The terms "module" or "unit" used herein can be considered as software objects executing on the computing system. The different components, modules, engines, and services described herein can be considered as implementation objects on the computing system. The device and equipment positioning methods described herein are preferably implemented in software, but can also be implemented in hardware, both of which are within the scope of this invention.
[0026] Those skilled in the art will understand that, unless specifically stated otherwise, the singular forms “a,” “an,” “the,” and “the” used herein may also include the plural forms. It should be further understood that the term “comprising” as used in this specification means the presence of the stated features, integers, steps, operations, elements, and / or components, but does not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof. It should be understood that when an element is “connected” or “coupled” to another element, it may be directly connected or coupled to the other element, or there may be intermediate elements. Furthermore, “connected” or “coupled” as used herein may include wireless connections or wireless coupling. The term “and / or” as used herein includes all or any units and all combinations of one or more associated listed items.
[0027] In audio application scenarios such as conference rooms and lecture halls, device positioning technology is the technological foundation for achieving accurate audio signal acquisition, sound field optimization, and speaker tracking. For a long time, mainstream technical solutions in this field have revolved around manually involved positioning processes. Conventional industry improvements have focused on optimizing manual measurement and calibration processes and improving the efficiency of single-point location parameter input, aiming to reduce the complexity of manual operation. Even though some solutions attempt to optimize positioning through algorithms, they still rely on staff manually measuring device distances, calibrating coordinate benchmarks, and inputting key location parameters. Such solutions not only consume significant manpower and time costs but are also prone to decreased positioning accuracy due to human error. In large conference rooms and scenarios with densely deployed multiple devices, the shortcomings in efficiency and accuracy are even more pronounced.
[0028] However, in real-world multi-device deployment scenarios in conference rooms, the inventors of this application discovered a long-overlooked underlying problem with the aforementioned technical logic: when the system needs to simultaneously locate multiple devices (such as multiple speakers or multiple microphone arrays) and generate a complete device location distribution map covering the entire preset area, relying solely on the angle estimation of a single speaker by a single microphone array cannot establish spatial relationships between multiple devices. The traditional "receiver-centric" positioning mode essentially only outputs the direction line of the sound source relative to the receiving array, failing to incorporate the relative positional relationships between multiple transmitters (speakers) into the same coordinate system, let alone correlate the positions of multiple receivers (microphone arrays). This means that even if each microphone array can accurately estimate the speaker's direction relative to itself, the system still cannot know the actual distances and spatial layouts between different speakers or different microphone arrays, thus failing to generate a globally comprehensive device location distribution map. Furthermore, the inventors recognized that the industry has long implicitly associated "automated positioning" with "large-scale integrated equipment." Existing solutions for batch equipment positioning or spatial layout mapping mostly employ dedicated equipment integrated with large sorting machines and automated testing platforms. Their design logic presupposes that positioning operations must be performed at fixed workstations in ideal environments by professional personnel. This path dependence has led the industry to generally overlook the need for "lightweight, desktop-based, and one-click" equipment positioning in scenarios such as ward nurse stations, small meeting rooms, and flexible office spaces. In other words, the industry has long failed to distinguish between the two different dimensions of technical issues: "high-precision positioning capabilities in a laboratory environment" and "convenient deployment and operational efficiency in real clinical / office scenarios."
[0029] Furthermore, regarding the technical premise of clock synchronization, existing positioning solutions typically assume that all participating devices (speakers and microphone arrays) can achieve precise clock synchronization, and treat synchronization errors as minor factors that can be eliminated through hardware calibration. However, in actual multi-device deployments, different devices may struggle to establish stable and reliable synchronized clocks due to differences in hardware performance, power supply methods, and signal transmission paths. If the traditional clock-synchronization-dependent positioning logic continues to be used, time difference calculation will introduce uncontrollable deviations, thereby affecting the accuracy of position estimation. This problem signifies a fundamental limitation in the applicability of traditional solutions in multi-device, non-ideal hardware environments.
[0030] Against this backdrop, the inventors of this application broke away from the technological inertia of traditional "receiver-centric" positioning and re-examined the essence of the technical problem of device positioning: when it is necessary to construct a global device location distribution map covering a preset area, the real difficulty lies not in the angle estimation accuracy of a single device, but in how to establish the spatial geometric relationship between all devices without relying on external benchmarks, demanding global clock synchronization, or requiring manual intervention. This discovery breaks the industry's conventional understanding that "improving the accuracy of a single device can solve the positioning problem," and also breaks through the established technological mindset that "automated positioning must rely on large-scale dedicated equipment or strict synchronization conditions."
[0031] In view of this, this application proposes a two-stage positioning architecture with "relative position point set construction" and "anchor point coordinate registration" as the core, so as to realize high-precision automatic positioning of multiple devices and generation of global position distribution map without human intervention or global clock synchronization.
[0032] The audio device positioning system described above will be explained in detail below. For example... Figure 1 As shown, the audio device positioning system includes an acoustic acquisition module, a processing device, and a speaker; the acoustic acquisition module contains at least two microphones, and the speaker and the acoustic acquisition module are arranged in a preset area; The processing device is configured to: Control the speaker to play audio signals and acquire the corresponding first-time data; Acquire audio data containing second time data generated by each microphone in the acoustic acquisition module within the preset area after receiving the audio signal; Based on one or more of the first time data and the second time data, the relative positional relationship between the loudspeaker and the acoustic acquisition module is obtained, and a set of relative position points containing the positions of all acoustic devices and / or their geometrically derived reference points is constructed; Obtain the actual position coordinates of at least three non-collinear anchor points, wherein the anchor points are selected from the set of relative position points; Based on the actual position coordinates of the at least three non-collinear anchor points, spatial coordinate registration is performed on the set of relative position points to generate a device location distribution map of the preset area.
[0033] For example, an acoustic device includes a loudspeaker, an acoustic acquisition module, and a microphone (i.e., an acoustic acquisition point) within the acoustic acquisition module. An acoustic acquisition module represents a device / mechanism capable of acquiring sound, i.e., audio signals. Optionally, the acoustic acquisition module may include a microphone array.
[0034] Geometrically derived reference points represent virtual position points calculated based on the known geometric relationships (such as spacing between devices, relative angles, structural symmetry, etc.) of the original devices within a preset area. Geometrically derived reference points include at least one of the following: the midpoint / division point of the spacing between device units, the symmetry point / centroid point of the device array shape, and the extension point of the virtual connection between the relative positions of multiple devices.
[0035] The relative position point set contains the set of relative coordinates of all devices (speakers, microphones) within a preset area. The scale, angles, and shapes within the relative position point set are correct, but its position, orientation, and size relative to the actual conference room walls and floor are unknown.
[0036] In this embodiment, the loudspeaker acts as the transmitter of the audio signal, playing the audio signal within a preset area according to preset rules, and simultaneously acquiring first time data related to the audio signal, sending the first time data to the processing device. At least two microphones (or acoustic acquisition points) of the acoustic acquisition module receive the audio signal from the loudspeaker, simultaneously acquire second time data related to receiving the audio signal, and report the audio data including the second time data to the processing device.
[0037] Optionally, the speaker can report first audio data, including the played audio signal and first time data, to the processing device. The audio data (or second audio data) includes the received audio signal and the corresponding second time data. Simply put, the first time data represents the time the speaker played the audio signal. The second time data represents the time the microphone received the audio signal. Additionally, the audio data includes the corresponding speaker identifier and the microphone identifier from the acoustic acquisition module, enabling the processing device to perform subsequent data association.
[0038] For example, there are multiple speakers. Each speaker plays an audio signal sequentially; wherein the time difference between the playback of audio signals between adjacent speakers is greater than a preset time. In this embodiment, as an example, multiple speakers are deployed in a preset area, and calibration audio signals are played sequentially in a preset order. The playback order is pre-stored in a processing device, and the processing device sends playback control signals to each speaker to control the playback timing of each speaker.
[0039] Optionally, the processing device employs a non-fixed time threshold, dynamically calculating based on the spatial size of the preset area and the ambient noise level. Regarding spatial size, it calculates the complete attenuation period of the audio signal from the playback point to the area boundary using an acoustic propagation model. Regarding ambient noise level, it determines the critical duration for the signal to attenuate below the background noise threshold through real-time noise sampling, ultimately generating a "customized preset time" adapted to the current scenario. This ensures that the sound pressure level of the audio signal played by the previous speaker drops to a safe range, completely avoiding signal crosstalk risks from the parameter design perspective. Based on this, the processing device sends control signals containing the playback order and start time to each speaker, constructing a closed-loop process of "sequential start - interval waiting - cyclic execution": after the previous speaker finishes playing, the system automatically enters a preset time waiting phase. Only after detecting that the attenuation of the previous signal meets the interference threshold requirements is the playback command for the next speaker triggered. This timing control mode completely avoids the superposition of audio signals from different speakers in the time dimension, ensuring that the signal from each speaker can be clearly captured by the acoustic acquisition module with complete and distortion-free characteristics. It eliminates the need for complex preprocessing such as signal separation and noise reduction, and directly provides high-purity data input for the processing device to calculate the "speaker-microphone" time difference, significantly reducing the error in time difference calculation. At the same time, it ensures the accuracy of the relative positions between multiple speakers and the derivation of the relative positions between the acoustic acquisition module and the speakers. Especially in the conference room scenario where multiple devices are densely deployed, it can significantly improve the accuracy of generating the device location distribution map, laying a stable foundation for subsequent functions such as accurate audio signal acquisition and sound field optimization.
[0040] In this embodiment, after receiving the first time data corresponding to the speaker and the second time data corresponding to each microphone, the processing device receives the first time data sent by the speaker and the second time data sent by each microphone in the acoustic acquisition module. Then, the processing device can perform time delay calculations based on the first time data and one or more second time data to determine the relative position between the speaker and the acoustic acquisition module, or determine the relative position between the speaker and the acoustic acquisition module solely through time delay calculations of multiple second time data.
[0041] Subsequently, the processing device constructs a set of relative position points based on the relative positional relationship between each acoustic acquisition point in the speaker and microphone array, and selects at least three physical position points from the set of relative position points as non-collinear anchor points.
[0042] For example, the selected at least three non-collinear anchor points can be combined as follows: they can be three microphones in different locations within the same acoustic acquisition module; they can be three different acoustic acquisition devices deployed within a preset area; they can also be a speaker, an acoustic acquisition device, and three location points formed by the center of the line connecting the two, etc.
[0043] Subsequently, based on the actual position coordinates of at least three anchor points in the world coordinate system, the entire set of relative position points is registered in three-dimensional space, and all position points in the set of relative position points are mapped to the world coordinate system to realize the mapping from relative position to absolute position. Finally, a device position distribution map containing the physical position of all acoustic devices and geometrically derived reference points is generated in the coordinate system.
[0044] In some embodiments, the process of obtaining the relative positional relationship between the loudspeaker and the acoustic acquisition module based on one or more of the first time data and the second time data may include: Based on the first time data of the audio signal played by the same speaker and the second time data of the audio signal played by the same speaker received by different microphones in the acoustic acquisition module, time difference information is obtained. Based on the time difference information and the spatial positional relationship between the microphones in the acoustic acquisition module, the relative positional relationship of the speaker with respect to the acoustic acquisition module is obtained.
[0045] For example, time difference information includes absolute time differences in synchronous scenarios and / or relative time differences in asynchronous scenarios.
[0046] In this embodiment, the processing device can calculate the time difference between the speaker and each microphone based on the first time data corresponding to the speaker and / or the second time data corresponding to each microphone. Then, for each microphone, the speaker calculates the relative positional relationship between the speaker and each acoustic acquisition point in the acoustic acquisition module based on the time difference between the speaker and the microphone, combined with the speed of sound in air. The speed of sound can be corrected according to environmental parameters within a preset area, including temperature and humidity. The processing device acquires temperature and humidity data through a sensor interface and calculates the corrected speed of sound based on the correlation between temperature / humidity and the speed of sound. Furthermore, the relative positional relationship can include not only the distance between the speaker and the acoustic acquisition point but also the spatial angle of the speaker relative to the microphone. Based on the known geometry of the acoustic acquisition module (such as the spacing and array shape of the four microphones), the processing device calculates the spatial angle using the TDOA / DOA algorithm, combined with the distance / time delay difference between different microphones and the same speaker. Thus, by integrating this straight-line distance and spatial angle, the relative positional relationship between the microphone and the speaker is formed. For example, the straight-line distance between the speaker and the M1 microphone in the acoustic acquisition module is 0.3464m, the azimuth angle is 30°, and the elevation angle is 15°. In general, the relative positional relationship represents the three-dimensional spatial relative pose relationship between the speaker and the microphone.
[0047] The process of constructing the set of relative positions containing all acoustic device locations and / or their geometrically derived reference points may include: By integrating the relative positional relationships of various acoustic devices within a preset area, a set of acoustic device location points is obtained; And / or combine the geometric arrangement relationship between devices in the acoustic device location point set to generate geometrically derived reference points, and obtain a relative location point set formed by the geometrically derived reference points.
[0048] In this embodiment, the processing device integrates the relative positional relationships of acoustic devices within a preset area into a local coordinate system to obtain a set of acoustic device location points, which includes the location points of the actual acoustic devices. For example, the relative positional relationships between speakers and acoustic acquisition modules, the relative positional relationships between multiple speakers, and the relative positional relationships between each microphone (i.e., acoustic acquisition point) and each speaker in the acoustic acquisition module are integrated into the same local coordinate system.
[0049] The local coordinate system refers to taking any acoustic device within the preset area as the origin, such as establishing a loudspeaker as the origin. It is used to describe the relative coordinates between acoustic devices and does not correspond to the actual physical location of the preset area.
[0050] After determining the set of acoustic device location points, virtual location points, or geometrically derived reference points, are generated using the fixed geometric relationships between the devices. These reference points are then used to generate corresponding relative location point sets using the acoustic device location point set and / or the geometrically derived reference points.
[0051] In some embodiments, the number of speakers is multiple. A processing device is configured to acquire first time data of audio signals played by each speaker and second time data of audio signals received by different microphones within the acoustic acquisition module, obtain multiple sets of time difference information, and determine the relative positional relationship between each speaker.
[0052] The multiple sets of time difference information include the propagation time of each audio signal received by the acoustic acquisition module and the time difference between the arrival times of each audio signal at different microphones. In other words, the multiple sets of arrival time differences refer to the difference in the second time data of the audio data from the same speaker received by each microphone in the acoustic acquisition module.
[0053] For example, the relative positional relationship between the speakers is determined based on multiple sets of arrival time differences and propagation times.
[0054] In this embodiment, for each speaker, based on the time between the audio signal played by the speaker and different microphones in the acoustic acquisition module, i.e., the second time data corresponding to different microphones, the difference in the second time data between any two microphones is calculated to obtain the arrival time difference. For example, the acoustic acquisition module includes microphones M1-M4. The difference in the second time data corresponding to M1 and M2 is calculated to obtain the arrival time difference between M1 and M2; the difference in the second time data corresponding to M1 and M3 is calculated to obtain the arrival time difference between M1 and M3; the difference in the second time data corresponding to M1 and M4 is calculated to obtain the arrival time difference between M1 and M4; the difference in the second time data corresponding to M2 and M3 is calculated to obtain the arrival time difference between M2 and M3; the difference in the second time data corresponding to M2 and M4 is calculated to obtain the arrival time difference between M2 and M4; the difference in the second time data corresponding to M3 and M4 is calculated to obtain the arrival time difference between M3 and M4.
[0055] Additionally, for each loudspeaker, the time difference between the loudspeaker and a microphone in the acoustic acquisition module is calculated to obtain the propagation time between the loudspeaker and the acoustic acquisition module, so as to obtain the distance from the loudspeaker to the acoustic acquisition module using the propagation time.
[0056] Then, based on the speed of sound as described above, the time difference of arrival is converted into a spatial distance difference, resulting in a set of distance differences between the loudspeaker and each microphone in the acoustic acquisition module.
[0057] Subsequently, based on the propagation time of each speaker and the corresponding time difference of arrival, the processing device calculates the distance difference between each speaker and each microphone in the acoustic acquisition module using the TDOA positioning algorithm. With the acoustic acquisition module as the reference origin, based on trigonometric functions and spatial geometric relationships, the three-dimensional relative distance and relative angle between the speakers are derived respectively, thereby determining the relative positional relationship between the speakers and thus determining the speaker layout.
[0058] In some embodiments, the acoustic acquisition module includes at least one first microphone array; wherein the clock of the first microphone array is synchronized with the clock of the speaker.
[0059] Accordingly, the process of determining the relative positions between the microphone array and each speaker may include: For any given first microphone array, time difference information is obtained based on the difference in second time data between at least two microphones and the first time data of the speaker. Based on the time difference information, the relative position of the speaker with respect to the first microphone array is determined. This time difference information can represent the absolute time difference under the aforementioned synchronization scenario. This absolute time difference includes: the difference between the first time data and the second time data of any microphone (i.e., propagation time) and / or the difference between the second time data of at least two microphones (i.e., arrival time difference). The arrival time difference can also be used to determine the corresponding angle data.
[0060] In this embodiment, the optional first microphone array establishes a clock synchronization connection with the speaker's clock module through a built-in clock synchronization module, and uses a preset clock synchronization protocol to achieve clock calibration, ensuring that the clock of the first microphone array is consistent with the clock of the speaker. Besides the above clock synchronization method, other existing clock synchronization technologies can also be used, which will not be elaborated here.
[0061] After receiving the first and second time data, the processing device classifies and stores the data according to the first microphone array identifier, speaker identifier, and microphone identifier, establishing a data index table for easy and quick retrieval. Since the clock of the first microphone array is synchronized with the clock of the speaker, the parsed first and second time data sequences have the same time base, eliminating the need for clock offset compensation.
[0062] For a microphone in the first microphone array, the processing device can align the second audio signal in the audio data corresponding to the microphone with the first audio signal in the first audio data corresponding to the speaker, and match the corresponding signal segments based on the frequency characteristics and waveform characteristics of the signals, align the two audio signals on the time axis, or align the signals through the timestamp data in the signals.
[0063] After alignment, the processing device calculates the time difference between each corresponding signal segment to form a time difference sequence. The time difference sequence is then filtered and denoised to remove outliers. The average time difference is then calculated to obtain the time difference between the speaker and the microphone. In this way, the time difference between the speaker and the first microphone array is obtained, which is the propagation time.
[0064] And for each speaker, the arrival time difference between the speaker and the first microphone array is obtained based on the time between the audio signal played by the speaker and at least two microphones in the first microphone array, i.e., the difference in the second time data corresponding to each microphone.
[0065] Subsequently, the processing device constructs a set of hyperbolic positioning equations for TDOA based on the arrival time difference between the speaker and the first microphone array and the propagation time between the speaker and the first microphone array, combined with the known layout of the microphones. The equations are solved by the least squares method to obtain the three-dimensional coordinates of the speaker relative to the first microphone array. The straight-line distance, horizontal azimuth angle, and vertical elevation angle of the speaker relative to the first microphone array are extracted from the three-dimensional coordinates to realize the relative positional relationship of the speaker relative to the first microphone array.
[0066] Next, any speaker is selected from all the speakers as a reference point. Based on the three-dimensional coordinates of the reference speaker relative to the first microphone array, the three-dimensional coordinates of the first microphone array relative to the reference speaker are derived in reverse. From the derived coordinates, the straight-line distance, azimuth angle, and elevation angle of the first microphone array relative to the reference speaker are extracted to obtain the relative position of the first microphone array in the device location distribution map.
[0067] Alternatively, based on the actual position coordinates of the anchor points and the known relative positions of the speakers, the global coordinates (i.e., actual position coordinates) of all speakers can be derived. Then, based on the global coordinates of the speakers and their three-dimensional coordinates relative to the first microphone array, the global coordinates of the first microphone array are determined, thus determining the absolute position of the first microphone array.
[0068] In some embodiments, the number of speakers is multiple, and the acoustic acquisition module includes at least one second microphone array; wherein the clock of the second microphone array is not synchronized with the clock of the speakers.
[0069] Accordingly, the process of determining the relative position between the second microphone array and the speaker may include: Based on the second time data of the audio signal of each speaker arriving at each microphone in the second microphone array, multiple sets of time difference information of each microphone in the second microphone array relative to each speaker are obtained; Based on the multiple sets of time difference information and the relative positions of the speakers, the relative position between the second microphone array and the speakers is determined. Here, the time difference information represents the relative time difference in an asynchronous scenario. Specifically, this includes the difference between second time data from multiple microphones within the same audio data. In this embodiment, a second microphone array is deployed in a conference room. This second microphone array contains multiple microphone units. Due to hardware limitations, such as the lack of a high-precision clock module in low-cost devices, and the influence of the deployment environment, such as complex electromagnetic interference with clock synchronization signals, the clock of this second microphone array cannot be synchronized with the speaker or other devices, or even after synchronization, there will still be a certain clock deviation. This deviation is sufficient to cause position calculation errors in audio positioning scenarios, and these errors far exceed the positioning accuracy requirements of scenarios such as conference rooms. This core contradiction of clock asynchrony directly leads to two major technical challenges: First, clock reference deviation causes the absolute time difference to become invalid. Due to the time axis of the second microphone array and the speaker being inconsistent, the absolute time difference calculated directly from "speaker playback time (first time data) - microphone reception time (second time data)" has random offsets and cannot be directly used for distance derivation. Second, the multi-device collaborative positioning logic breaks down. Traditional positioning relies on the synchronization of the entire system's clock to build a unified coordinate reference, but the asynchronous nature of the second microphone array breaks this reference, causing its positional association with the speaker and other devices to be impossible to establish directly through conventional triangulation, and may even lead to completely distorted positioning results due to accumulated deviations. However, through the aforementioned targeted processing logic, accurate position estimation can still be achieved.
[0070] Each speaker sequentially plays a calibration audio signal, generating corresponding first audio data. This first audio data includes the played audio signal (i.e., the first audio signal) and first time data. Each speaker sends its first audio data to the processing device (or alternatively, sends its first time data to the processing device). Each microphone in the second microphone array receives the audio signals from all the speakers. Each microphone performs preprocessing operations such as filtering, noise reduction, and analog-to-digital conversion on the received audio signal, synchronously recording the second time data to generate corresponding audio data. Then, the second microphone array encapsulates the microphone audio data, adds a second microphone array identifier and a microphone identifier, and sends it to the processing device. Alternatively, the second microphone array sends the second time data to the processing device.
[0071] After receiving the first audio data and the audio data, the processing device determines the first audio signal (i.e., the first audio signal sequence) and its corresponding first time data sequence, the second audio signal (i.e., the second audio signal sequence) and its corresponding second time data sequence. At this point, the problem of unifying the time axis of asynchronous data needs to be solved first: although the clocks of each microphone are not synchronized with the speaker, the clock deviations of each microphone within the same second microphone array are consistent (belonging to the same hardware characteristics of the device). The processing device needs to align the audio signal segments received by different microphones from the same speaker on the time axis through characteristic matching of audio signals (such as signal peaks and frequency inflection points), eliminate the small time offsets within the array, and build a relatively unified local time reference for subsequent calculations.
[0072] Because the clock of the second microphone array is out of sync with the clock of the speaker, there is a time reference discrepancy between the first and second time data sequences. Therefore, for each speaker, the processing device extracts the first audio signal sequence corresponding to that speaker and the second audio signal sequence corresponding to each microphone in the second microphone array. It then uses signal feature matching to find the corresponding signal segments and calculates the time difference between the received signal segment and the played signal segment for each microphone. The core of this process is to eliminate clock deviation interference: since the time difference between the audio signal sent by the same speaker arriving at different microphones in the second microphone array is determined only by the physical distance between the microphones and the spatial position of the speaker, and is unrelated to the "clock deviation between the second microphone array and the speaker," this time difference is the only effective positioning parameter unaffected by the desynchronization problem. However, the calculation needs to overcome interference from environmental noise and signal reflection. Wall reflections and furniture obstructions in scenarios such as conference rooms can cause multipath propagation of the audio signal. False signal segments need to be removed using filtering algorithms to ensure that the extracted time difference is the true interval of the direct sound signal. Based on the time difference and the known relative positions of each microphone in the second microphone array (which are calibrated at the factory), the processing device determines the angle of the speaker relative to the second microphone array through spatial geometry calculation. The calculation requires calling the microphone array calibration parameters stored at the factory to avoid angle deviation caused by microphone spacing errors.
[0073] Next, the processing device selects two clock-synchronized speakers from multiple speakers as reference speakers. This step requires overcoming the bottleneck of coordinate association between asynchronous and synchronous devices: the processing device calculates the difference in the second time data (i.e., the time difference of arrival) between the two reference speakers and each microphone in the second microphone array. Combining the relative positions between the reference speakers and the relative positions of each microphone in the second microphone array, the device calculates the positional relationship of the second microphone array relative to the two reference speakers using the principle of triangulation. This solves the problem that a single reference point cannot determine the two-dimensional / three-dimensional position: a single reference speaker can only determine the distance range of the second microphone array (a circle / sphere centered on the reference speaker), while two reference speakers can construct two circles / spheres, and their intersection is the possible position of the second microphone array. Combined with the angle information of the microphone array, its spatial coordinates can be uniquely determined, overcoming the positional ambiguity caused by asynchrony.
[0074] Subsequently, the processing device combines the positional relationship between the second microphone array and the reference speaker, as well as the relative positions of other speakers and the reference speaker, to deduce the relative positions of the second microphone array and other speakers. During this process, the processing device eliminates the influence of clock deviations on the calculation results through cross-validation of multiple time difference data, ensuring the accuracy and reliability of the relative position calculation results between the second microphone array and each speaker. Ultimately, this allows the inclusion of asynchronous devices into the overall system positioning framework, thus solving the technical problem of inaccurate positioning of asynchronous devices.
[0075] In this embodiment, the processing device controls each speaker to sequentially play a quasi-audio signal and acquires second time data of the audio signals received by each microphone in the second microphone array from each speaker. For each speaker, the difference in the second time data of the audio signals played by the speaker received by any two microphones in the second microphone array is calculated to obtain multiple sets of arrival time differences between the speaker and the second microphone array.
[0076] Subsequently, the processing device uses the relative positional relationship between the speakers as a fixed spatial constraint; with the relative position of the speakers as a reference, combined with multiple sets of time differences of arrival, the spatial angle of each speaker relative to the second microphone array is determined by the DOA positioning algorithm; then, using the spatial geometric relationship and the positional constraint of multiple speakers, the three-dimensional relative distance and relative angle between the second microphone array and each speaker are derived; finally, by combining all the calculation results, the relative positional relationship between the second microphone array and each speaker is determined.
[0077] In some embodiments, the audio device positioning system described above may further include a camera device. The actual position of the anchor point in the preset area can be determined by spatial positioning using images captured by the camera device. For example, the camera device captures an image of the preset area and sends the image to a processing device; The processing device is also used to receive images sent by the camera device. Based on the images sent by the camera device, it performs positioning to determine the actual position data of the above-mentioned at least three anchor points, such as the actual position of the device in the preset area. This enables the determination of the actual position of the anchor points in the preset area without the need for manual input of the actual position of the anchor points, thereby achieving automatic determination of the device location distribution map.
[0078] Optionally, both the aforementioned camera device and the second microphone array are part of the first device; that is, the camera device and the second microphone array can be integrated into a single device, such as a microphone-camera integrated device. Based on this, deploying a single device can simultaneously achieve image acquisition and sound pickup within a preset area. Furthermore, the actual position of the microphone-camera integrated device obtained through image positioning is fused with the relative positional relationship between the second microphone array and the speaker within the microphone-camera integrated device (see [link to documentation]). Figure 2 This allows us to determine the location of each device within a preset area and generate a device location distribution map. Additionally, Figure 2 The relative positions of the first microphone array and the speaker are also shown.
[0079] Of course, the aforementioned camera device and the second microphone array can also be independent devices, and this application does not impose any restrictions.
[0080] Optionally, when both the camera device and the second microphone array are part of the first device, and there are multiple camera devices (i.e., multiple first devices exist within the preset area), the processing device is further configured to perform positioning based on the images transmitted by the multiple camera devices to determine the actual position data of the at least three anchor points. Based on this, the electronic device can determine the actual position of any anchor point (or device) within the preset area.
[0081] Optionally, the device used by the processing unit to determine the actual location can be the location of the microphone array, such as the location of the second microphone array.
[0082] In some embodiments, when the number of the first devices is a single unit, if the processing device wants to determine its actual position, it can determine the actual position of the anchor point based on the size information of a preset area provided by the user (such as the ceiling height of the preset area), or determine the actual position of the first device through the image captured by the camera device in the first device, that is, determine the actual position of the microphone array in the first device.
[0083] It should be noted that the self-positioning of the single device through its own camera is not a simple matter of image acquisition and position calculation, but requires overcoming three core technical challenges: Firstly, there is the challenge of missing depth information in single-view images. A single camera device can only acquire two-dimensional planar images and cannot directly perceive the three-dimensional distance between the device and its surrounding environment, such as walls, tables, chairs, and ceilings. It is necessary to perform triangulation by combining image features such as geometric structures like corners and door / window edges with pre-defined area size information. For example, the vertical distance from the device to the ground can be deduced from the pixel ratio of the ceiling to the ground captured by the camera device, and then the horizontal position can be calculated by combining the pixel offset of the wall texture. In this process, it is necessary to solve the positioning deviation caused by the accumulation of pixel errors and to optimize the feature extraction accuracy through edge detection algorithms to ensure that the derivation results conform to the actual spatial scale. Secondly, there is the challenge of device feature recognition under environmental interference. In conference room scenarios, images captured by cameras may contain objects that resemble the appearance of the equipment. If the device itself cannot be accurately distinguished from the interfering objects, it will lead to incorrect positioning anchor points. At the same time, changes in light intensity, such as curtains blocking the light or light switches, can distort the surface texture and color features of the equipment, further increasing the difficulty of recognition. It is necessary to train the device-specific features through AI image recognition models to achieve accurate device recognition in complex environments and provide reliable anchor points for self-localization. Thirdly, there is a coordinate fusion deviation between image positioning and audio positioning. The camera module integrated into the first device and the second microphone array have physical distances (e.g., the camera module is on top of the device, and the second microphone array is on the side). Their coordinate origins do not coincide. If the device position obtained from image positioning is directly combined with the relative position calculated from audio, fusion errors will occur due to the inconsistent coordinate references. It is necessary to establish a coordinate transformation relationship between the camera module and the second microphone array using calibration parameters before the device leaves the factory, mapping the positioning results of both to the same coordinate system. Then, a weighted fusion algorithm is used to eliminate the deviation, ensuring that the final output device position combines the absolute coordinate advantages of image positioning with the relative accuracy advantages of audio positioning.
[0084] This design breaks through the limitations of traditional positioning solutions, bringing multiple key benefits: First, it eliminates reliance on multiple devices, enabling independent positioning of a single device. There's no need to deploy multiple reference devices or manually set positioning anchors; a single device can achieve self-positioning through image and audio collaboration, significantly reducing deployment costs and complexity in scenarios such as small meeting rooms and temporary office spaces. Second, it improves adaptability to complex environments. Compared to relying solely on audio positioning, which is susceptible to noise and echo interference, or relying solely on multi-camera positioning, which requires dense device deployment, this solution maintains positioning stability in scenarios with changing lighting and complex sound fields through complementary fusion of images and audio. For example, when excessive environmental noise causes deviations in audio time difference calculations, the position data can be corrected using image positioning results. Third, it simplifies the positioning process, achieving full automation. From image acquisition, feature recognition, coordinate derivation to audio data fusion, no manual intervention is required. The processing device can automatically complete all calculation steps, avoiding human error and shortening positioning time to meet the needs of rapid device deployment.
[0085] In some embodiments, there are multiple camera devices, each capturing images of a preset area and sending them to a processing device. The processing device performs joint positioning based on the multiple frames of images sent by the multiple camera devices, and obtains the actual position coordinates of at least three non-collinear anchor points from the set of relative position points, thus completing the determination of the actual position data of the anchor points.
[0086] When there are multiple first devices, each first device integrates a camera device and a second microphone array. The multiple camera devices capture images of a preset area from different angles and send the images to the processing device. The processing device performs joint positioning and cross-verification based on the multiple frames of images sent by the multiple camera devices, obtains the actual position coordinates of at least three non-collinear anchor points from the set of relative position points, completes the determination of the actual position data of the anchor points, and then determines the actual position of each first device in the preset area.
[0087] The process described above illustrates how the processing device determines the relative positions of devices within a preset area using time differences. The following example, for ease of description, uses a microphone array as the acoustic acquisition module, containing four microphones (microphone 1, microphone 2, microphone 3, and microphone 4) and two speakers (speaker 1 and speaker 2) to illustrate this process of determining relative positions.
[0088] 1) Speaker 1 playback and microphone array data acquisition and processing: Speaker 1 plays an audio signal (i.e., the first audio signal), forming corresponding first audio data.
[0089] The four microphones (microphones 1-4) in the microphone array synchronously receive the first audio signal. Each microphone performs preprocessing such as filtering, noise reduction, and analog-to-digital conversion on the acquired first audio signal to generate its own audio data, which together form the sequence TOA1-4. The specific correspondence is as follows: TOA1-1 (audio data generated by microphone 1 based on the sound played by speaker 1), TOA1-2 (audio data generated by microphone 2 based on the sound played by speaker 1), TOA1-3 (audio data generated by microphone 3 based on the sound played by speaker 1), and TOA1-4 (audio data generated by microphone 4 based on the sound played by speaker 1).
[0090] 2) Speaker 2 sound playback and microphone array data acquisition and processing: Speaker 2 plays an audio signal (i.e., the first audio signal), forming corresponding first audio data.
[0091] The four microphones (microphones 1-4) in the microphone array still receive the first audio signal corresponding to the playback synchronously with the same parameters. After the same preprocessing, each microphone generates its own audio data, which together form the sequence TOA2-4. The specific correspondence is as follows: TOA2-1 (audio data generated by microphone 1 based on the playback of speaker 2), TOA2-2 (audio data generated by microphone 2 based on the playback of speaker 2), TOA2-3 (audio data generated by microphone 3 based on the playback of speaker 2), and TOA2-4 (audio data generated by microphone 4 based on the playback of speaker 2).
[0092] 3) Alignment operation of TOA1-4 and TOA2-4 by the processing device The processing device uses a unified time axis as a reference to perform full time alignment on TOA1-4 (audio data generated by four microphones receiving sound from speaker 1) and TOA2-4 (audio data generated by four microphones based on sound from speaker 2), ensuring that the time dimension of all data in the two sets of sequences is completely consistent.
[0093] After alignment, all data from both sets of sequences are mapped to the same time scale. The specific correspondences are as follows: TOA1-1 (microphone 1-speaker 1, which is the time difference between microphone 1 and speaker 1) and TOA2-1 (microphone 1-speaker 2), TOA1-2 (microphone 2-speaker 1) and TOA2-2 (microphone 2-speaker 2), TOA1-3 (microphone 3-speaker 1) and TOA2-3 (microphone 3-speaker 2), TOA1-4 (microphone 4-speaker 1) and TOA2-4 (microphone 4-speaker 2), and all data are calibrated based on the same time reference.
[0094] 4) Processing device calculation time difference Based on the aligned 4 frames of data, the time difference is calculated in two categories: TOA1-4 sequence internal time difference: Taking TOA1-1 (microphone 1 - speaker 1) as the reference, calculate the difference between the data of other microphones and it when the same speaker 1 is playing, that is, TOA1-2 - TOA1-1 (time difference between microphone 2 and microphone 1 receiving sound from speaker 1), TOA1-3 - TOA1-1 (time difference between microphone 3 and microphone 1 receiving sound from speaker 1), TOA1-4 - TOA1-1 (time difference between microphone 4 and microphone 1 receiving sound from speaker 1). Time difference between frames corresponding to TOA1-4 and TOA2-4: Calculate the difference in sound data received from two speakers using the same microphone. First, calculate the time difference TOA1-1 - TOA2-1 (the time difference between the sound received by microphone 1 from speaker 1 and speaker 2). Additionally, the processing device can further calculate TOA1-2 - TOA2-2 (the time difference corresponding to microphone 2), TOA1-3 - TOA2-3 (the time difference corresponding to microphone 3), and TOA1-4 - TOA2-4 (the time difference corresponding to microphone 4).
[0095] Based on these two types of time differences, the processing device can determine the relative position between the microphone array and the speakers. Additionally, it can also determine the relative position between the speakers.
[0096] Corresponding to the aforementioned audio device positioning system, this application also provides an audio device positioning method. The executing entity of this method is a processing device. For example... Figure 3 As shown, the method may include: S301. Control the speakers in the preset area to play audio signals and obtain their corresponding first-time data.
[0097] Optionally, the speaker may send first audio data to the processing device, the first audio data including the audio signal played by the speaker and its corresponding first time data.
[0098] S302. Obtain audio data containing second time data generated by each microphone in the acoustic acquisition module within the preset area after receiving audio signals.
[0099] S303. Based on one or more of the first time data and the second time data, obtain the relative positional relationship between the loudspeaker and the acoustic acquisition module, and construct a set of relative position points containing the positions of all acoustic devices and / or their geometrically derived reference points.
[0100] S304. Obtain the actual position coordinates of at least three non-collinear anchor points, which are selected from a set of relative position points.
[0101] S305. Based on the actual position coordinates of at least three non-collinear anchor points, perform spatial coordinate registration on the set of relative position points to generate a device location distribution map of the preset area.
[0102] The implementation process of S301-S305 can be found in the previous section on the audio device positioning system, and will not be repeated here.
[0103] In some embodiments, the actual location of the aforementioned device may be determined by the processing device. For example... Figure 4 As shown, the process of determining the actual location of the device may include: S401. Acquire an image of a preset area captured by a camera device.
[0104] S402. Based on the image, locate the location and obtain the actual position data of at least three anchor points.
[0105] The implementation process of S401-S402 can be referred to the relevant content on determining the actual position of the anchor point mentioned above, and will not be repeated here.
[0106] It should be noted that S401-S402 only need to be executed before S304, and this application does not impose any restrictions on the specific timing of execution.
[0107] Figure 5 This is a schematic diagram of the structure of a processing device provided in some embodiments of this application. Figure 5 The dashed line in the text indicates that the unit or module is optional. Figure 5 The processing device 700 can be used to implement the methods described in the above method embodiments. The processing device 700 can be a processor, chip, computer, conference room host, server, or other device with data processing capabilities.
[0108] The processing device 700 may include one or more processors 710. The processor 710 can support the processing device 700 in implementing the methods described in the preceding method embodiments. The processor 710 may be a general-purpose processor or a special-purpose processor. For example, the processor may be a central processing unit (CPU). Alternatively, the processor may be other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor may be a microprocessor or any conventional processor.
[0109] The processing device 700 may also include one or more memories 720. Computer programs are stored on the memories 720. The memories 720 may be independent of the processor 710 or integrated into the processor 710.
[0110] The processing device 700 may also include a transceiver 730. The processor 710 can communicate with other devices or chips via the transceiver (or communication module) 730. For example, the processor 710 can send and receive data with other devices or chips via the transceiver 730.
[0111] The computer program in memory 720 can be executed by processor 710, causing processor 710 to perform the following steps: Control the speaker to play audio signals and acquire the corresponding first-time data; Acquire audio data containing second time data generated by each microphone in the acoustic acquisition module after receiving the audio signal; Based on one or more of the first time data and the second time data, the relative positional relationship between the loudspeaker and the acoustic acquisition module is obtained, and a set of relative position points containing the positions of all acoustic devices and / or their geometrically derived reference points is constructed; Obtain the actual position coordinates of at least three non-collinear anchor points, wherein the anchor points are selected from the set of relative position points; Based on the actual position coordinates of the at least three non-collinear anchor points, spatial coordinate registration is performed on the set of relative position points to generate a device location distribution map of the preset area.
[0112] It is understood that the structures illustrated in the embodiments of this application do not constitute a specific limitation on the electronic device. In other embodiments of this application, the electronic device may include... Figure 5 The diagram shows more or fewer components, or combinations of components, or separate components, or different arrangements of components. The components shown can be implemented in hardware, software, or a combination of both.
[0113] This application also provides a chip system, such as... Figure 6As shown, the chip system includes at least one processor 2301 and at least one interface circuit 2302. The processor 2301 and the interface circuit 2302 are interconnected via lines. For example, the interface circuit 2302 can be used to receive signals from other devices. As another example, the interface circuit 2302 can be used to send signals to other devices (e.g., the processor 2301). Exemplarily, the interface circuit 2302 can read instructions stored in memory and send those instructions to the processor 2301. When the instructions are executed by the processor 2301, the electronic device can perform the various steps performed by the electronic device in the above embodiments. Of course, the chip system may also include other discrete devices, and this application embodiment does not specifically limit this.
[0114] Optionally, the chip system may contain one or more processors. These processors can be implemented in hardware or software. When implemented in hardware, the processor can be a logic circuit, an integrated circuit, etc. When implemented in software, the processor can be a general-purpose processor, implemented by reading software code stored in memory.
[0115] Optionally, the chip system may contain one or more memories. The memory may be integrated with the processor or disposed separately from it; this application does not limit this. For example, the memory may be a non-transient processor, such as read-only memory (ROM), which may be integrated with the processor on the same chip or disposed separately on different chips. This application does not specifically limit the type of memory or the arrangement of the memory and processor.
[0116] It should be understood that each step in the above method embodiments can be completed by integrated logic circuits in the processor hardware or by instructions in software form. The method steps disclosed in the embodiments of this application can be directly manifested as being executed by a hardware processor, or being executed by a combination of hardware and software modules in the processor.
[0117] Those skilled in the art will understand that all or part of the steps in the various methods of the above embodiments can be performed by instructions, or by instructions controlling related hardware. These instructions can be stored in a computer-readable storage medium and loaded and executed by a processor.
[0118] Therefore, embodiments of this application provide a computer-readable storage medium storing a computer program thereon, which is loaded by a processor to perform the steps described in the above-described method embodiments of this application. For example, the computer program loaded by the processor can perform the method as described above.
[0119] For details on the implementation of each of the above operations / steps, please refer to the previous examples, which will not be repeated here.
[0120] The computer-readable storage medium may include: read-only memory, random access memory (RAM), disk or optical disk, etc.
[0121] Since the computer program stored in the computer-readable storage medium can execute the steps in any of the above method embodiments provided in the embodiments of this application, the beneficial effects that the methods described in any of the above method embodiments can achieve can be realized, as detailed in the preceding embodiments, and will not be repeated here.
[0122] This application also provides a computer program product or computer program that includes computer instructions stored in a computer-readable storage medium. A processor of a processing device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the processing device to perform the methods provided in the various optional implementations of the above embodiments.
[0123] The above provides a detailed description of an audio device positioning system, method, and related products provided in the embodiments of this application. Specific examples have been used to illustrate the principles and implementation methods of the present invention. The descriptions of the above embodiments are only for the purpose of helping to understand the method and core ideas of the present invention. At the same time, for those skilled in the art, there will be changes in the specific implementation methods and application scope based on the ideas of the present invention. Therefore, the content of this specification should not be construed as a limitation of the present invention.
Claims
1. An audio device positioning system, characterized in that, It includes a processing device, a loudspeaker, and an acoustic acquisition module, wherein the acoustic acquisition module contains at least two microphones, and the loudspeaker and the acoustic acquisition module are arranged in a preset area; The processing device is configured to: Control the speaker to play audio signals and acquire the corresponding first-time data; Acquire audio data containing second time data generated by each microphone in the acoustic acquisition module after receiving the audio signal; Based on one or more of the first time data and the second time data, the relative positional relationship between the loudspeaker and the acoustic acquisition module is obtained, and a set of relative position points containing the positions of all acoustic devices and / or their geometrically derived reference points is constructed; Obtain the actual position coordinates of at least three non-collinear anchor points, wherein the anchor points are selected from the set of relative position points; Based on the actual position coordinates of the at least three non-collinear anchor points, spatial coordinate registration is performed on the set of relative position points to generate a device location distribution map of the preset area.
2. The audio device positioning system according to claim 1, characterized in that, Obtaining the relative positional relationship between the loudspeaker and the acoustic acquisition module based on one or more of the first time data and the second time data includes: Based on the first time data of the audio signal played by the same speaker and the second time data of the audio signal played by the same speaker received by different microphones in the acoustic acquisition module, time difference information is obtained. Based on the time difference information and the spatial positional relationship between the microphones in the acoustic acquisition module, the relative positional relationship of the speaker with respect to the acoustic acquisition module is obtained.
3. The audio device positioning system according to claim 1, characterized in that, The construction of the relative position point set containing all acoustic device locations and / or their geometrically derived reference points includes: By integrating the relative positional relationships of various acoustic devices within a preset area, a set of acoustic device location points is obtained; And / or combine the geometric arrangement relationship between devices in the acoustic device location point set to generate geometrically derived reference points, and obtain a relative location point set formed by the geometrically derived reference points.
4. The audio device positioning system according to claim 2, characterized in that, The number of speakers is multiple: The processing device is specifically used to: acquire first time data of audio signals played by each speaker and second time data of audio signals received by different microphones in the acoustic acquisition module, obtain multiple sets of time difference information, and determine the relative positional relationship between each speaker; The multiple sets of time difference information include the propagation time of each audio signal received by the acoustic acquisition module and the time difference between the arrival of each audio signal at different microphones.
5. The audio device positioning system according to claim 2, characterized in that, The acoustic acquisition module includes at least one first microphone array; wherein the clock of the first microphone array is synchronized with the clock of the speaker; The processing device is used for: For any of the first microphone arrays, time difference information is obtained based on the second time data difference between at least two microphones within it and the first time data of the speaker; Based on the time difference information, the relative position of the speaker with respect to the first microphone array is determined.
6. The audio device positioning system according to claim 4, characterized in that, The acoustic acquisition module includes at least one second microphone array; wherein the clock of the second microphone array is not synchronized with the clock of the speaker; The processing device is specifically used for: Based on the second time data of the audio signal of each speaker arriving at each microphone in the second microphone array, multiple sets of time difference information of each microphone in the second microphone array relative to each speaker are obtained; The relative position between the second microphone array and the speaker is determined based on the multiple sets of time difference information and the relative positions between the speakers.
7. The audio device positioning system according to claim 1, characterized in that, The system also includes a camera device. The camera device is used to acquire the actual position data of the at least three anchor points, including: The camera device captures an image of a preset area and sends the image to the processing device; The processing device is also used to receive images sent by the camera device; The actual position data of the at least three anchor points are obtained by locating the images sent by the camera device.
8. The audio device positioning system according to claim 7, characterized in that, The camera device and the second microphone array are integrated into a single unit.
9. The audio device positioning system according to claim 7 or 8, characterized in that, The camera devices are multiple, and the processing device is also used to locate based on the images sent by the multiple camera devices and obtain the actual position data of the at least three anchor points.
10. A method for locating an audio device, characterized in that, include: Control the speakers within the preset area to play audio signals and acquire their corresponding first-time data; Acquire audio data containing second time data generated by each microphone in the acoustic acquisition module within the preset area after receiving the audio signal; Based on one or more of the first time data and the second time data, the relative positional relationship between the loudspeaker and the acoustic acquisition module is obtained, and a set of relative position points containing the positions of all acoustic devices and / or their geometrically derived reference points is constructed; Obtain the actual position coordinates of at least three non-collinear anchor points, wherein the anchor points are selected from the set of relative position points; Based on the actual position coordinates of the at least three non-collinear anchor points, spatial coordinate registration is performed on the set of relative position points to generate a device location distribution map of the preset area.
11. The audio device positioning method according to claim 10, characterized in that, The method further includes: Acquire images of a preset area captured by a camera device; Based on the image, the actual position data of the at least three anchor points are obtained.
12. An electronic device, characterized in that, The device includes a memory, a communication module, and a processor. The communication module is used to communicate with other devices. The memory stores a computer program or instructions, which, when executed by the processor, cause the processor to perform the method as described in claim 10 or 11.
13. A computer-readable storage medium, characterized in that, It stores computer programs or instructions that, when executed by a processor, implement the method as described in claim 10 or 11.
14. A computer program product, characterized in that, When the computer program product is run on an electronic device, it causes the electronic device to perform the method as described in claim 10 or 11.