The present invention relates to a method and system for determining the positions of sound-emitting transducers, such as loudspeakers, for instance in a listening room, one aim of this position estimation being to be able to carry out room corrections of the loudspeakers based on knowledge of the position of the loudspeakers in the room.
Often there is a disparity between recommended, i.e. acoustically optimal, location of loudspeakers for an audio reproduction system and the locations of loudspeakers that are practically possible in a given environment. Restrictions on loudspeaker placement in a domestic environment typically occur due to room shape and furniture arrangement. Consequently, it may be desirable to modify signals from a pre-recorded media in order to improve on the staging and imaging characteristics of a system that has been configured incorrectly, i.e. to apply room correction means for instance in the form of digital correction filters to the various input signals prior to the application of these signals to the individual loudspeakers in a practical loudspeaker set-up. The determination of the characteristics of such room correction means, for instance the frequency responses of filters used to shape the response of the individual loudspeakers in the practical set-up, can be based on the knowledge of the room-related co-ordinates of the individual loudspeakers, such as the (x,y,z) co-ordinates in a co-ordinate system in a fixed relationship to the particular room. It is hence needed to be able to determine these co-ordinates, preferably in an automated manner and preferably without the need to utilise separate measurement means, such as a separate microphone or dedicated microphone system. It should thus preferably be possible to provide the characteristics of said room correction means using the loudspeaker system itself.
High-end audio reproduction systems have traditionally found application in homes. Such systems are increasingly concentrating on the imaging characteristics and “sound staging.” It is generally a challenge to achieve staging similar to that intended by the recording engineer due to the actual locations of the various loudspeakers in a real listening room for instance at home.
On the above background it is an object of the present invention to provide a method and system for determining the position of each of a number of sound-emitting transducers, such as loudspeakers, relative to each other. These relative co-ordinates can, if needed, be converted to a room-related co-ordinate system for a given room by a suitable linear transformation.
The above and other objects are in the broadest aspect of the invention attained by a method for estimating the position of N sound-emitting transducers, such as loudspeakers, where N≧2, where the method comprises the following steps:
According to a specific embodiment of the invention, the above and other objects are attained by a method for estimating the position of N sound-emitting transducers, such as loudspeakers, where N≧2, where the method comprises the following steps:
The above impulse responses can in practice be determined using many different techniques, but according to a presently preferred embodiment of the method according to the invention the impulse responses IRij(t) are determined using the known maximum length sequence (MLS) technique.
In the method according to the invention, a suitable sound signal is emitted from a given transducer Ti and recorded at a given second transducer Tj of the total set of N transducers. At said second transducer Tj, the emitted sound can be recorded either using a microphone that may be provided as an integral part of the second transducer or by the second transducer itself, for instance when the transducer is an electrodynamical loudspeaker, in which case the loudspeaker can both act as a sound emitter and as a sound receptor. The emitted sound signal reaching the N−1 second transducers Tj can either be recorded at one transducer at a time or at all of these N−1 transducers simultaneously.
According to one embodiment of the invention, said propagation times tij for sound propagation from any given sound-emitting transducer (Ti) to any other given sound-emitting transducer (Tj) are determined based on the corresponding impulse responses IRij(t) by determining the maximum or minimum value of the impulse response and determining the sample where the impulse response reaches a value that is V % of said maximum or minimum value, whichever has the greatest absolute value, thereby implicitly assuming that this time value corresponds to the time when the first wave front from a given sound-emitting transducer impinges on a given of said other transducers. Specifically V can be chosen to approximately 10%.
A special case arises where the shape of the listening room and the actual positions of given loudspeakers within the room are such that sound emitted from one or more given loudspeakers in a loudspeaker set-up can not propagate directly to one or more other loudspeakers of the set-up due to wall portions preventing direct sound propagation. This situation could for instance occur in a listening room of an L-shape. This situation results in at least one of the distances between a given pair of loudspeakers determined based for instance on the corresponding measured impulse response being erroneous, thereby leading to an erroneous estimation of the individual co-ordinates of the loudspeakers when the erroneous distance matrix is used by the MDS algorithm to estimate the co-ordinates. An L-shaped room is only one specific case, where such problems could occur, and also other room shapes or obstacles in the room, such as large furniture pieces, could lead to similar problems. According to the invention, this problem is solved by utilising the MDS method's measure of goodness of fit (termed “stress” values within this technique), which is a measure of how well or poorly a given set of determined co-ordinates will reproduce the observed individual distances, i.e. the distance matrix used as input to the MDS algorithm. Thus, if the MDS algorithm is used on an entire set of loudspeakers characterised by a first given distance matrix, where one of the measured distances is erroneous, the MDS algorithm provides a first relatively large stress value for the determined co-ordinates. The MDS algorithm does not, however, provide information on which of the distances of the distance matrix M is/are erroneous. According to the invention, there is provided an error correction method generally comprising subdividing the entire set-up of N transducers in smaller sub-groups of transducers and by means of the MDS algorithm calculating the corresponding stress value of each particular sub-group of transducers.
For the case where all of the transducers are actually located in a plane, i.e. a two dimensional case, as for instance a set-up in a room, where all transducers (loudspeakers) are located at a certain height above the floor, i.e. where the position of all loudspeakers can be defined by co-ordinate sets (x, y, constant), the smallest possible sub-group that can be applied is a four-transducer constellation, as a group of two or three transducers will always have a mapping solution with a stress value of zero. This is analogue to multiple points in a plane. There will be multiple planes that contain the same two points and every three-point constellation will have one possible plane that comprises these three points, no matter how they are located in space. However, for four points, provided they are not located in a two-dimensional plane, it is not possible to find a plane that contains all four points. Therefore, in two dimensions, the stress value can be seen as an indication of how far the points are away from the ideal two-dimensional plane that would contain all points, i.e. bow far the points would be displaced into the third dimension. In case of a three dimensional set-up of transducers (in practice for instance placement of loudspeakers at different heights above the floor of a room), the sub-groups must comprise at least five transducers. In general a sub-group must comprise N>Ndim+1 transducers, where Ndim, is the number of dimensions, i.e. the number of co-ordinates that are not restricted a-priory and that are determined by using the MDS technique according to the method of the present invention.
Thus, according to a specific embodiment of the error correction method of the invention, the total set-up of sound-emitting transducers N (where N>4) is subdivided into all possible transducer constellations consisting of at least four loudspeakers and the MDS algorithm is applied on each of the corresponding distance matrixes Msub (or matrixes of other quantities, such as said tij, as mentioned previously). If the stress value of a given sub-set of transducers is less than the first stress value, the transducer(s) that was/were removed from the previous set must have been contributing significantly to the overall error of the co-ordinate estimation. This process of estimation of co-ordinates based on sub-sets of transducers is then repeated for each transducer of the total set of transducers, which makes it possible to determine the contribution to the overall error made by any given transducer. An example of the result of applying the error correction method according to the invention will be given in the detailed description of the invention.
The present invention furthermore relates to a system for estimating the position of N sound-emitting transducers, such as loudspeakers, where N≧2, where the system in its broadest aspect comprises:
It is noted that as well as in the method according to the invention, as described previously, the said MDS means can alternatively be applied on for instance the individual propagation times tij in stead of being applied on the derived distances, and the dimensions/co-ordinates that result from the application of the MDS algorithm can subsequently be converted to space-related co-ordinates or dimensions, e.g. quantities measured in meters.
According to a specific embodiment of a system according to the invention the system comprises:
According to one specific embodiment of the system of the invention, the generator/analysis means, the propagation time determining means, the distance determining means and the multidimensional scaling (MDS) means can be integrated as a common position estimating processor means that can be provided at a convenient place in the overall system. One possibility would be to provide this processing means as an integral part of one of the sound-emitting transducers, but it could also be provided elsewhere in the system, for instance as a part of amplifier or pre-amplifier means used to drive the sound-emitting transducers or to process audio signals prior to delivery to these transducers. The various of the above mentioned means could alternatively be distributed over the total system.
According to an embodiment of the invention, sound reception at a second location in space is carried out by a microphone at said second location in space, but—as mentioned previously—it would for some sound-emitting transducers also be possible to use the individual transducers as sound receptors instead of separate microphones.
The system according to the present invention may furthermore comprise means for storing said set of measured impulse responses IRij(t) and/or said distance matrix M and/or said relative co-ordinates (xi′, yi′, zi′) and/or said room-related co-ordinates (x, y, z). The system may furthermore be provided with means for carrying out the error corrections mentioned previously either automatically or on request of or guided by a user.
The invention will be better understood with reference to the following detailed description of specific embodiments of the invention in conjunction with the figures, where:
With reference to
Referring to
Based on measured impulse responses, a distance matrix can be calculated by multiplication of each of the estimated propagation times tij determined for instance as described above by c, where c is the propagation speed of sound, whereby a distance matrix M comprising all individual distances dij is obtained, the diagonal elements in the matrix being of course exactly equal to zero. In TABLE 1 below there is shown an example of a distance matrix for a six-loudspeaker set-up, where the first row and column of the matrix corresponds to the first loudspeaker, etc. and where the values in this example are given in meters. Thus for instance, the distance between the first and second loudspeaker is calculated to 0.8711 and 0.8944 meters, respectively (d12 and d21, respectively), the difference of approximately 0.02 meters being caused by measurement uncertainty of the applied method.
Using the above distance matrix as input to the MDS algorithm, an estimate of the relative co-ordinates of each of the six loudspeakers can be obtained. Referring to
It is understood that the exact locations of the loudspeakers and the corresponding distances shown in
The estimated co-ordinates of the loudspeakers shown in
The determination of the acoustic centres of the various loudspeakers applying the method according to the invention is quite accurate, on one hand due to the large amount of measurements that are provided to the MDS algorithm and on the other hand due to the additional possibility of making the measurements in an up-sampled mode (with a sampling frequency of 44.1 kHz, one sample is only 0.7 cm long). Applying the method according to the invention it has been found possible to determine the co-ordinates of the loudspeakers with an accuracy of down to 5 cm.
It was initially mentioned that certain room-shapes or the presence of obstacles, such as furniture etc. in the room, could lead to problems of accurately determining the positions of the loudspeakers in the room. The following numerical example is an illustration of the determination of loudspeaker co-ordinates in the special case of an L-shaped room, where sound emitted by a given loudspeaker for measuring the corresponding impulse response can not propagate directly to one or more given other loudspeakers. This special situation was briefly mentioned in the summary of the invention and the result in practice of using the proposed correction method based on the stress values provided by the MDS algorithm will be dealt with in more detail in the following, where illustrative examples will also be given.
As the stress value of the MDS algorithm is an indicator used to judge the goodness of fit of the calculated mapping solution, i.e. the calculated relative co-ordinates of the transducers, this value has to be reduced in order to increase the goodness (accuracy of the determination of the relative co-ordinates) in an error correction process.
The MDS algorithm does not provide an indication of from which distance measurement an error originates, as the error can only generally be seen as a large stress value. According to the invention, there is provided an error correction method comprising breaking up the transducer constellation into smaller subgroups of transducers and analysing the stress values corresponding to each of these subgroups. As mentioned previously, the smallest possible subgroup for a two-dimensional set-up of loudspeakers will be a four-transducer constellation, as a group of two or three transducers will always have a mapping solution with a stress value of zero.
In the following, two examples illustrating the error correction method according to the invention will be given.
This example relates to a set-up comprising seven loudspeakers. The correct (x, y) co-ordinates of the seven loudspeakers and the corresponding, correct distance matrix are shown in TABLE 2 and TABLE 3 below.
Based on the impulse response measuring technique described above, the erroneous distance matrix Merr shown in TABLE 4 has been obtained, the distances between loudspeakers 6 and 7 being in this example erroneously estimated due to the placement in an L-shaped room, where the direct propagation path between loudspeakers 6 and 7 is blocked due to the boundaries of the room:
When the above erroneous distance matrix Merr is entered into the MDS algorithm and an attempt is made by the algorithm to describe this matrix by the co-ordinates of seven loudspeakers, the following erroneous estimate of co-ordinates of the loudspeakers shown in TABLE 5 is obtained:
The MDS algorithm provides a stress value, which in the case of the co-ordinates given in TABLE 5 is equal to 0.0481, which indicates that the MDS algorithm has not been able to provide an acceptable fit of the estimated co-ordinates of loudspeakers corresponding to the distances given in the matrix of TABLE 4.
Comparing the above erroneously estimated co-ordinates with the correct co-ordinates given in TABLE 2, it immediately appears that the co-ordinates of loudspeakers 6 and 7 deviate much more from the correct co-ordinates of TABLE 2 than the co-ordinates of loudspeakers 1, 2, 3 and 4. This comparison is carried out in TABLE 6:
Now, applying the correction method according to the invention based on successive removal of a loudspeaker from the total set of loudspeakers, as described previously, the set of corrected co-ordinates with a stress value of 0.000807 shown in TABLE 7 is arrived at:
That the above set of corrected co-ordinates indeed represents a very satisfactory estimation of the correct co-ordinates of the seven loudspeakers appears from TABLE 8, where the difference between correct and corrected co-ordinates is given.
Referring to TABLE 8, the positions of the individual loudspeakers have thus been estimated with a maximum error of less than 6 cm.
With reference to
Referring to
The actually determined and erroneous distances between each of the loudspeakers are given in TABLE 10:
4.2000
4.2000
It appears from the results of TABLE 10 and from the representation of
The stress value is the indicator used according to the invention for judging the goodness of fit of the calculated mapping solution. Therefore, it is this value that has to be reduced to gain an increase in the quality of the solution during an error correction process. Considering all possible four-loudspeaker constellations in the set-up shown in
The error correction method according to the invention uses the stress value found in all four-loudspeaker constellations. However, the stress value is independent on the actual misplacement (being in this case defined as the distance between the actual and the calculated loudspeaker locations), but dependent on the overall scale of the set-up.
Multiplication of all distances in the set-up by a scaling factor will result in the same stress value but a greater displacement. Depending on the size of a set-up, it is thus possible to obtain an ideal stress value, but at the same time arrive at a misplacement that is outside given, defined tolerances. Consequently, according to a preferred embodiment of error detection according to the invention more information is included in the error detection. Such information is according to an embodiment obtained by integration of the averaged distances between the loudspeakers into the error detection algorithm, thereby taking the scaling factor into account.
Thus, in the present five-loudspeaker example, taking the independent stress values for the four-loudspeaker constellations and multiplying these by the average distance between those speakers, size-dependent error values for the actual misplacement in the groups are derived.
The summation of all values in an error matrix results in an error value for the correspondent distance matrix value. The highest value in the error matrix corresponds to the largest error in the distance matrix. An error matrix for the distance matrix with errors shown in TABLE 10 and obtained along the lines outlined above is shown in TABLE 11:
0.6816
0.6816
The entire error correction method according to the invention comprises basically two steps: (1) Error detection, including identification of those distances of the distance matrix that are erroneous; and (2) Error correction. Error detection and identification of erroneous distances was exemplified above.
Step 2, i.e. the error correction step is a mathematical optimisation problem, generally consisting of maximising or minimising the return of a function by systematically choosing values for the variables. In the present context, the value which must be minimised is the stress value derived from the MDS algorithm. The function is the MDS algorithm itself, and the variables are the distances found by the error detection algorithm, as described above. There exist several systematic methods for solving optimisation problems, such as the Nelder-Mead optimisation method.
Applying the optimisation algorithm it is necessary to implement the process in a loop, as often a desired maximum stress value (of for instance 0.01, which is the value used for arriving at the corrected locations of loudspeakers in
If the optimisation algorithm stopped due to one of a set of termination criteria and the desired stress value was not yet reached, the error detection algorithm was according to an embodiment of the error correction method of the invention again repeated utilising the previously corrected distance matrix.
From the resulting altered distance matrix, the error detection algorithm computes a new (different) error matrix and a different threshold value for the determination of the distances to correct (i.e. those distances that need correction), giving the minimisation algorithm new values to optimise.
If this algorithm still does not result in a decrease of the overall stress value, the threshold level for the error matrix is lowered, so that more distances are corrected on the basis of the identical error matrix.
If even this approach does not result in the desired maximum stress value, the entire set of distances can be provided as variables to the optimisation algorithm. However, investigations have shown that in most scenarios, the desired maximum stress value was already reached after the second iteration of the optimisation algorithm. The application of the above outlined method of error correction according to the invention is shown in
Referring to
The erroneous co-ordinate matrix is provided to the error detection algorithm 26 described previously resulting in the error matrix 27. The error matrix 27 and the overall stress value 24 are provided to the optimisation algorithm 28, which optimises the distance matrix 22. An iterative loop is thus established, where an updated, corrected distance matrix forms the basis for the determination of an updated co-ordinate matrix and corresponding overall stress value. If this updated stress value is below a given acceptable limit, the final co-ordinate matrix is provided (reference numeral 21) as the result of the iterative process.
Referring to
As previously mentioned, the MDS algorithm may alternatively be applied directly on the propagation times in stead of being applied on the corresponding distances. Thus, the input to the MDS algorithm could alternatively be a propagation time matrix T instead of the distance matrix M and the conversion to co-ordinates in meters could be performed after the application of the MDS algorithm 18 and the corresponding co-ordinate correction 19.
Number | Date | Country | Kind |
---|---|---|---|
PA 2007 01060 | Jul 2007 | DK | national |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/IB2007/054476 | 11/5/2007 | WO | 00 | 1/14/2010 |