Generating head-related filter model based on weighted training data

By weighting the sample points in the HR filter model, the weight value is calculated based on the density of the sample points in the region, and a more accurate HR filter model is generated, which solves the problem of insufficient modeling of low-density regions and improves the quality of the rendered audio source.

CN120419213APending Publication Date: 2025-08-01TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202380086284.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2022-12-14
Filing Date
2023-12-08
Publication Date
2025-08-01

AI Technical Summary

Technical Problem

The existing HR filter model has insufficient modeling accuracy in low-density areas, resulting in low subjective quality of the rendered audio source and failing to meet the desired level of accuracy.

Method used

By weighting the sample points in the HR filter model, the weight value is calculated based on the density changes of the sample points in the region to generate a more accurate HR filter model.

Benefits of technology

Improves the modeling accuracy of low-density areas while maintaining low modeling errors in other areas, providing more consistent modeling performance.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120419213A_ABST
    Figure CN120419213A_ABST
Patent Text Reader

Abstract

A method for generating a head-related (HR) filter model for a set of HR filters is provided. The method includes obtaining HR filter data indicating a plurality of sample points associated with a plurality of HR filters, where the plurality of sample points includes a first sample point. The method further includes calculating a first weight value for the first sample point, wherein the first weight value varies based on a density of the sample points within the region containing the first sample point. The method further includes generating an HR filter model based on the calculated first weight value. (Fig. 11).
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to generating a head-related (HR) filter model based on weighted training data. Background Art

[0002] The human auditory system is equipped with two ears that collect sound waves propagating towards a listener. Figure 4 Shown are sound waves propagating from a direction of arrival (DoA) specified by a pair of elevation and azimuth angles in a spherical coordinate system towards a listener. Along the propagation path towards the listener, each sound wave interacts with the listener's upper torso, head, outer ear, and surrounding material before reaching our left and right eardrums. This interaction causes changes in the waveforms arriving at the left and right eardrums in terms of time and spectrum, some of which are DoA-related. The human auditory system has learned to interpret these changes to infer various spatial characteristics of the sound waves themselves and the acoustic environment in which the listener is located.

[0003] This ability is called spatial hearing, which involves how to evaluate spatial cues embedded in binaural signals (i.e., sound signals in the right and left ear canals) to infer the location of an auditory event caused by a sound event (e.g., a physical sound source) and the acoustic characteristics caused by the physical environment (e.g., a small room, a tiled bathroom, an auditorium, a cave, etc.). This human ability (spatial hearing) can in turn be used to create a spatial audio scene by reintroducing the spatial cues in the binaural signals, thereby generating a spatial perception of sound.

[0004] The main spatial cues include: 1) angle-related cues: binaural cues, i.e., interaural level difference (ILD) and interaural time difference (ITD), and monaural (or spectral) cues; 2) distance-related cues: intensity and direct-to-reverberant (D / R) energy ratio. The mathematical representation of the short-time DoA-related time and spectral changes (1 - 5 milliseconds) of a waveform is the so-called HR filter. The frequency-domain (FD) representation of these filters is the so-called head-related transfer function (HRTF), and the time-domain (TD) representation is the head-related impulse response (HRIR). Figures 19A to 19E Shown is an example of an HR filter that collects ITD and spectral cues of sound waves propagating towards a listener. These four figures show the time-domain and frequency-domain responses of a pair of HR filters obtained at an elevation angle of 0 degrees and an azimuth angle of 40 degrees (data from the CIPIC database: subject ID 28. The database is publicly available and can be accessed from the link https: / / www.ece.ucdavis.edu / cipic / spatial-sound / hrtf-data / ).

[0005] HR filters are typically estimated from acoustic measurements as the impulse response of a linear dynamic system that transforms an original sound signal (input signal) into a left-ear signal and a right-ear signal (output signals), which can be measured at a predefined set of elevation and azimuth angles on a spherical surface at a constant radius from a listening object (e.g., an artificial head, a mannequin, or a human subject) within the ear canal of the listening object.

[0006] HR filters estimated by measurement or by digital simulation are typically provided as finite impulse response (FIR) filters and can be used directly in that format. To achieve efficient binaural rendering, a pair of HRTFs can be transformed into an interaural transfer function (ITF) or a modified ITF to prevent sudden spectral peaks. Alternatively, HRTFs can be described by parametric representations. Such parametric HRTFs are easily integrated with parametric multi-channel audio encoders (e.g., Moving Picture Experts Group (MPEG) Surround and Spatial Audio Object Coding (SAOC)).

[0007] Rendering spatial audio signals to provide a realistic spatial perception of sound at any location in space requires a pair of HR filters at the corresponding location and thus a set of HR filters can be provided at finely sampled positions on a two-dimensional (2D) sphere. Note that in the present disclosure, a 2D sphere means the surface or boundary of a virtual three-dimensional (3D) sphere that can surround a listener. The minimum audible angle (MAA) characterizes the sensitivity of the human auditory system to angular displacements of sound events

[0008] Regarding localization in azimuth, it has been observed that the MAA is minimum in front of and behind the listener (about 1 degree) and much larger for lateral sound sources of broadband noise bursts (about 10 degrees). The MAA in the median plane increases with elevation angle. An MAA as small as 4 degrees has been observed using broadband noise bursts. There are some publicly available databases of HR filters that are densely sampled in space, such as the SADIE database, the CIPIC database. However, none of these databases fully meet the MAA requirements, especially regarding elevation sampling. Although the SADIE dataset for the artificial head Neumann KU100 and the KEMAR mannequin contains more than 8000 measurements, the sampling resolution in elevation between -15 degrees and 15 degrees is 15 degrees, while a sampling resolution of 4 degrees is required according to MAA studies. Inevitably, angular interpolation of HR filters is needed so that sound sources can be rendered at positions where the actual filters have not been measured.

[0009] To obtain an HR filter for positions of an actual filter that are not measured, an HR filter model can be used to model the HR filter. The HR filter model can be a function of elevation and azimuth and can be configured to calculate an HR filter corresponding to a specific elevation and a specific azimuth. Methods for modeling an HR filter to generate an HR filter model are disclosed in PCT / EP2022 / 074787, WO 2022 / 223132, WO2022 / 008549, WO 2021 / 254652, and WO 2021 / 074294. SUMMARY OF THE INVENTION

[0010] There are certain challenges at present. For example, it has been observed that the modeling accuracy of the HR filter model (i.e., how well it indicates the modeling of multiple HR filters) may not meet the desired accuracy level in those regions (e.g., regions of a 2D sphere or regions of the elevation-azimuth plane with a relatively low (or lowest) HR filter density). These regions generally correspond to spatial regions in the 2D sphere or elevation-azimuth plane with elevations below -60 degrees and elevations above 60 degrees.

[0011] Due to the inability to meet the desired accuracy level, in those spatial regions rendered using the HR filter model, the subjective quality of the rendered audio source is much lower compared to other spatial regions with high modeling accuracy of the HR filter.

[0012] One explanation for the poor modeling accuracy of the HR filter model in those regions is that those regions do not contribute as much to the total modeling error measurement compared to regions with a high sampling density, because the number of sample points in those regions is much less than the number of sample points in regions with a high sampling density. Similarly, regions farther from the equator (towards the poles) of the sphere of sample points will contribute less to the total modeling error metric, even if the density on the sphere is equal. Thus, regions with a low sampling density and / or regions represented by a relatively small number of sample points are modeled with lower accuracy.

[0013] Accordingly, in some embodiments of the present disclosure, by weighting the sample points in a region (e.g., assigning more weight to sample points in a region of a 2D sphere or a region of the elevation-azimuth plane with a relatively low density of HR filters than to sample points in a region with a relatively high density of HR filters), the modeling accuracy of the HR filter model can be improved while minimizing an increase in modeling error in other regions.

[0014] More specifically, in one aspect of some embodiments of the present disclosure, a method for generating an HR filter model for a set of head-related (HR) filters is provided. The method includes obtaining HR filter data that indicates a plurality of sample points associated with a plurality of HR filters, where the plurality of sample points includes a first sample point. The method further includes calculating a first weight value for the first sample point, where the first weight value varies based on the density of the sample points within a region that includes the first sample point. The method further includes generating an HR filter model based on the calculated first weight value.

[0015] In another aspect, a computer program is provided, including instructions that, when executed by a processing circuitry, cause the processing circuitry to perform the method of any one of the above embodiments.

[0016] In another aspect, a carrier is provided, including the computer program of the above embodiments, where the carrier is one of the following: an electronic signal, an optical signal, a radio signal, a computer-readable storage medium.

[0017] In another aspect, an apparatus for generating an HR filter model for a set of head-related HR filters is provided. The apparatus is configured to obtain HR filter data that indicates a plurality of sample points associated with a plurality of HR filters, where the plurality of sample points includes a first sample point. The apparatus is further configured to calculate a first weight value for the first sample point, where the first weight value varies based on the density of the sample points within a region that includes the first sample point. The apparatus is further configured to generate an HR filter model based on the calculated first weight value.

[0018] In another aspect, an apparatus is provided, including: a processing circuitry; and a memory that includes instructions executable by the processing circuitry, whereby the apparatus is operable to perform the method of at least one of the above embodiments.

[0019] Some embodiments of the present disclosure provide more consistent modeling performance on a set of non-uniformly distributed HR filters by improving the modeling accuracy in those regions with relatively low density HR filters while maintaining low modeling error in other spatial regions. BRIEF DESCRIPTION OF THE DRAWINGS

[0020] The drawings are incorporated herein and form a part of the specification, and the drawings illustrate various embodiments.

[0021] Figure 1 A system according to some embodiments is shown.

[0022] Figure 2A 、 Figure 2B 、 Figure 3A and Figure 3BShows the concept of the HR filter.

[0023] Figure 4 Shows the direction of arrival of the audio wave observed from the listener within a three-dimensional (3D) space.

[0024] Figure 5 Shows a set of HR filters located on a 2D sphere.

[0025] Figure 6 Shows the distribution of sample points associated with the HR filter.

[0026] Figure 7 Shows the distribution of sample points associated with the HR filter.

[0027] Figure 8 Shows a process according to some embodiments.

[0028] Figure 9 Shows a method for determining the boundary of a sample point region according to some embodiments.

[0029] Figure 10 Shows a method for determining the boundary of a sample point region according to some embodiments.

[0030] Figure 11 Shows an example sample point region of the sample points.

[0031] Figure 12 Shows Figure 6 The sample point region count distribution of the complete set of elevation-azimuth sample points shown in

[0032] Figure 13 Shows Figure 6 The cumulative sample point region count distribution of the complete set of elevation-azimuth sample points shown in

[0033] Figure 14 Shows an example weight count distribution.

[0034] Figure 15 Shows an example cumulative weight count distribution.

[0035] Figure 16 Shows the variation of the weight value depending on the size of the sample point region.

[0036] Figure 17 Shows a process according to some embodiments.

[0037] Figure 18 Shows a device according to some embodiments.

[0038] Figures 19A to 19EShows sound waves propagating to a listener, interacting with the head and ears, and the resulting ITD. Detailed Description

[0039] Figure 1 Shows an example system 100 according to some embodiments. The system 100 includes headphones 106, an audio rendering unit 112, and a server 114. The server 114 is configured to transmit audio data 116 to the audio rendering unit 112 via a network 110. The network 110 can be a wired network or a wireless network. Alternatively or additionally, the network 110 can be a cloud, and the audio data 116 is transmitted from the server 114 to the audio rendering unit 112 via the cloud. In the present disclosure, audio data is defined as data for providing an audio experience to a listener as if the listener were in a three-dimensional (3D) space where the (multiple) audio sources are located after rendering (e.g., processed with (multiple) HR filters). The audio data includes audio samples of source signals corresponding to the (multiple) audio sources. In some embodiments, the audio data may additionally include HR filter information indicating the HR filter.

[0040] After receiving the audio data 116, the audio rendering unit 112 can generate a binaural audio signal and transmit the generated audio signal to the headphones 106. The headphones 106 are configured to generate audio based on the audio signal, thereby providing an audio (also referred to as spatial audio) experience to the listener 102. In some embodiments, instead of the headphones 106, other audio generation devices, such as a speaker array, can be used. The number of speakers in the array can be any number greater than 2.

[0041] In some embodiments, the system 100 may optionally include extended reality (XR), such as a virtual reality, mixed reality, or augmented reality display headset 104. The XR display headset 104 can be configured to generate different views of a virtual reality (VR) environment based on the head orientation of the listener 102.

[0042] The XR display headset 104 can be communicatively coupled to the headphones 106. For example, the XR display headset 104 can detect the head orientation of the listener 102, and the XR display headset 104 can display different views of the VR environment based on the detected head orientation of the listener 102, and can trigger the audio rendering unit 112 to generate different audio signals corresponding to the different views, such that the listener 102 can hear different audio based on the head orientation of the listener 102.

[0043] Figure 2A 、 Figure 2B 、 Figure 3A and Figure 3B Shows the basic concept of HR filtering.

[0044] Figure 2A shows an audio wave 202 propagating in a first direction and reaching the right ear of a listener 102, and Figure 2B shows an audio wave 212 propagating in a second direction (different from the first direction) and reaching the right ear of the listener 102. As Figure 2A and 2B shown, depending on the direction of arrival (DoA) of the audio wave (relative to the center of the listener 102's head), the audio wave diffracts and / or reflects in different ways (see the paths formed by the dashed arrows in Figure 2A and 2B ). For simplicity of illustration, only reflections are shown in Figure 2A and 2B .

[0045] An HR filter is used to generate audio effects in which these different diffractions and reflections caused by different DoAs are taken into account. In other words, depending on the DoA of the audio wave, the audio wave undergoes different temporal and spectral changes before being perceived by the listener 102, and the mathematical representation of this temporal and spectral change is called an HR filter. Note that Figure 2A and Figure 2B the reflection paths shown in are for illustrative purposes only and may be different from the actual reflection paths in a real-world environment.

[0046] Figure 3A shows an example time-domain response of an HR filter for the audio wave 202, and Figure 3B shows an example time-domain response of an HR filter for the audio wave 212. As shown, due to the different temporal and spectral changes experienced by the audio waves, the waveforms, including amplitude and time of arrival (TOA) or onset delay, are different for the audio wave 202 and the audio wave 212. Note that Figure 3A and Figure 3B the responses shown in are provided only to illustrate some aspects of the effect of the HR filter and may therefore be different from the actual response.

[0047] As described above, the temporal and spectral changes of an audio wave (i.e., "sound wave") caused by HR filtering vary depending on the direction of arrival (DoA) of the audio wave as observed from the listener.

[0048] In Figure 4 , the direction of arrival (DoA) vector 402 indicates the propagation direction of the audio wave within a 3D space defined by three axes 412, 414, and 416, where the axis 412 is the axis in front of the listener. The DoA vector 402 can be defined using two angles - azimuth and elevation . The azimuth is the angle between axis 412 (e.g., the x-axis) and the projection vector 404, where the projection vector 404 corresponds to the projection of the DoA vector 402 onto the plane formed by axis 412 and axis 414. Elevation angle is the angle between the DoA vector 402 and the projection vector 404.

[0049] Since the temporal and spectral variations of the audio wave can depend on the azimuth angle ( or φ) and the elevation angle ( or θ), in some embodiments, different HR filters (representing such temporal and spectral variations) are provided for different sets of the azimuth angle and the elevation angle. The different sets of the azimuth angle and the elevation angle define different HR filters.

[0050] Figure 5 FIG. shows an example position (i.e., sample point 502) of a set of HR filters (i.e., HR filters arranged on a two-dimensional (2D) sphere surrounding the listener 102). As Figure 4 shown, each sample point (e.g., 490) can be defined by a pair of azimuth angles and elevation angles. The azimuth angle is the angle between axis 412 and the projection (e.g., 404) of the line (e.g., 402, formed by the sample point (e.g., 490) and the center (e.g., 494) of the 2D sphere) onto the plane formed by axis 412 and axis 414. The elevation angle is the angle between the line (e.g., 402) and the projection (e.g., 404). In some embodiments, the center of the 2D sphere can correspond to the center of the listener 102's head. Since each sample point can be defined by a pair of elevation and azimuth angles on the 2D sphere, as Figure 6 shown, each sample point can also be defined in a 2D plane defined by the elevation and azimuth angles.

[0051] Depending on the orientation of the listener 102's head, the set of HR filters can be used to generate audio. For example, the HR filter at sample point 512 can be used to generate audio corresponding to a first set (φ1, θ1) of azimuth and elevation angles, which corresponds to the first DoA of the listener 102, while the HR filter at sample point 514 included in the set of HR filters can be used to generate audio corresponding to a second set (φ2, θ2) of azimuth and elevation angles, which corresponds to the second DoA of the listener 102.

[0052] As mentioned above, the HR filter is usually estimated from acoustic measurements as the impulse response of a linear dynamic system that converts the original sound signal (input signal) into left and right ear signals (output signals) that can be measured at a predefined set of elevation and azimuth angles within the ear canal of the listening subject. Figure 5 As shown in , the density of sample points in one region of the 2D sphere may be different from the density of sample points in another region of the 2D sphere.

[0053] Alternatively or additionally, such as Figure 6 As shown in , the density of sample points in one region of the elevation-azimuth plane may be different from the density of sample points in another region of the elevation-azimuth plane. Note that in this disclosure, the density of sample points and the density of HR filters may be used interchangeably, since each sample point corresponds to the position of each HR filter.

[0054] Figure 6 Detailed view of the distribution of sample points is shown, where the HR filter is located on the elevation-azimuth plane. In this disclosure, the elevation-azimuth plane refers to a plane corresponding to the surface of a 2D sphere when the surface of the sphere is unfolded on the plane. Figure 6 As shown, the area between 30° elevation angle and 60° elevation angle (i.e. Figure 7 702) and the region between -30° elevation and -60° elevation (i.e., Figure 7 The density of sample points in each of the regions 712 in FIG. 1 is lower than that in the region between -30° elevation angle and 30° elevation angle (ie, Figure 7 The density of sample points in the area 704 in .

[0055] Similarly, the area between 60° elevation and 90° elevation (i.e. Figure 7 706) and the area between -60° elevation and -90° elevation (i.e., Figure 7 The density of sample points in each of the regions 716 in FIG. 1 is lower than that in the region between -30° elevation angle and 30° elevation angle (ie, Figure 7 The density of sample points in the area 704 in .

[0056] As described above, initially, the HR filters are obtained by performing acoustic measurements. Therefore, as shown in the table provided below, each measured HR filter may correspond to a different position (φ n ,θ n ) at the acoustic measurement. <![CDATA[HR filter measured at (φ1,θ1)]]> <![CDATA[Acoustic measurement at (φ1,θ1)]]> <![CDATA[HR filter measured at (φ2, θ2)]]> <![CDATA[Acoustic measurement at (φ2,θ2)]]> … … <![CDATA[HR filter measured at (φ N , θ N )]]> <![CDATA[(φ N , θ N ) Acoustic measurement at where N is the total number of HR filters measured.

[0057] These measured HR filters can be modeled by determining an HR filter model with a set of model parameters. The HR filter model is used to generate a modeled HR filter at any location (φ, θ) based on the values φ and θ.

[0058] The HR filter model can be determined such that, given a particular model structure, the difference between the measured HR filter and the modeled HR filter is minimized. In other words, during the modeling of the measured HR filter, a set of model parameters can be determined that minimizes the difference between the measured HR filter and the modeled HR filter.

[0059] However, due to the imbalance between the densities of the sample points in the different regions discussed above (i.e., Figure 5 the regions of the 2D sphere shown in Figure 6 or the regions of the elevation-azimuth plane shown in

[0060]

[0061] the determined HR filter model (i.e., the set of determined model parameters) may be optimal only for generating HR filters in regions with a high density of sample points, but may not be optimal for generating HR filters in regions with a low density of sample points.

[0060] More specifically, due to the imbalance, the modeling process can tend to find a set of model parameters for generating an HR filter that is very similar to the HR filters in the regions with a high density of sample points. Therefore, the generated HR filter model may not be optimal for generating HR filters, i.e., the HR filters similar to the measured HR filters in the regions with a low density of HR filters are very similar to the measured HR filters.

[0061] To improve the modeling accuracy of the HR filter model in those regions with a low sample point density, the process 800 shown in Figure 8 can be executed. The process 800 can start from step s802. Step s802 includes determining a spatial region, that is, the sample point region of the sample points associated with each HR filter included in the set of HR filters containing multiple measured HR filters. One way to determine the sample point region of the sample points (hereinafter referred to as the "SP region") is to equally divide the region located between two adjacent sample points.

[0062] The sample point region can be determined for samples represented on a sphere or for samples represented in an elevation-azimuth plane. An advantage of representing samples in the elevation-azimuth plane is that samples that are further from the equator of the sphere (i.e., closer to the poles) will be spread out and thus represented by a larger SP region than samples that are closer to the equator of the sphere (i.e., further from the poles). This means that sample points in regions with low sampling density and / or regions represented by a relatively small number of samples will correspond to a larger SP region compared to sample points in regions with high sampling density and / or regions represented by a relatively large number of samples. According to some embodiments herein, this allows sample points in regions with low sampling density to be weighted more than sample points in regions with high sampling density.

[0063] Figure 9 Illustrates a method of dividing the region between two adjacent sample points having the same elevation (e n ) but different azimuths (a n,m-1 , a n,m and a n,m+1 ).

[0064] As Figure 5 and Figure 9 shown, sample point 552 and sample point 554 are at the same elevation but different azimuths. In this case, the right boundary of the SP region of sample point 552 can be determined based on the distance (e.g., defined by elevation or azimuth) between sample point 552 and sample point 554. More specifically, the right boundary of the SP region of sample point 552 can be determined such that the right boundary aligns with the midpoint 902 between sample point 552 and sample point 554. Similarly, sample point 552 and sample point 556 are at the same elevation but different azimuths. Here, the left boundary of the SP region of sample point 552 can be determined based on the distance between sample point 552 and sample point 556. More specifically, the left boundary of the SP region of sample point 552 can be determined such that the left boundary aligns with the midpoint 904 between sample point 552 and sample point 556.

[0065] Figure 10 Illustrates a method of dividing the region between two adjacent sample points having different elevations (e n-1 , e n , e n+1 ). As Figure 5 and Figure 10As shown, sample point 552 and sample point 574 are at different elevation angles and different azimuth angles. In this case, the upper boundary of sample point 552 can be determined based on the difference between the elevation angle of sample point 552 and the elevation angle of sample point 574. More specifically, the upper boundary of sample point 552 can be determined such that the upper boundary aligns with the midpoint 1004 between sample point 552 and sample point 574. Similarly, sample point 552 and sample point 572 are at different elevation angles and different azimuth angles. In this case, the lower boundary of sample point 552 can be determined based on the difference between the elevation angle of sample point 552 and the elevation angle of sample point 572. More specifically, the lower boundary of sample point 552 can be determined such that the lower boundary aligns with the midpoint 1002 between sample point 552 and sample point 572.

[0066] Figure 11 is shown from Figure 9 and Figure 10 the SP region 1100 of sample point 552 obtained by the method shown. As described above, the left and right boundaries of the SP region 1100 are determined using the method shown in Figure 9 , and the upper and lower boundaries of the SP region 1100 are determined using the method shown in Figure 10 .

[0067] Note that even though Figures 9 to 11 shows that the shape of the SP region of sample point 552 is rectangular, the shape of the SP region can also be any polygon. Additionally, in other embodiments, the shape of the SP region can be circular or elliptical. In any of those embodiments, the size of the SP region can be determined based on any one or more of the distances between sample point 552 and any one or more of the sample points adjacent to sample point 552 (e.g., sample point 554, sample point 556, sample point 572, and / or sample point 574).

[0068] Figure 11 The scenario shown is a general scenario. Therefore, further clarification is needed in some specific scenarios. For example, since the azimuth angle is circular, the minimum elevation angle is -90 degrees (- radians), and the maximum elevation angle is 90 degrees ( radians). The circularity of the azimuth angle means that for any positive or negative integer value k, an azimuth angle of a degrees is equal to a + k * 360, where the corresponding equation for a in radians is a + k * 2π.

[0069] In one example, Figure 11 the azimuth angle of sample point 556--a n,m-1 -- in n,m-1 can be a negative azimuth angle value, which can be mapped to a positive azimuth angle value of 360 + a. Figure 6This example is shown. When the sample point with an elevation angle of -60 degrees and an azimuth angle of 0 degrees is Figure 11 the sample point 552 in, the sample point with an elevation angle of -60 degrees and an azimuth angle of 345 degrees can correspond to the sample point 556.

[0070] In another example, Figure 11 the sample point 554 in, that is, a n,m+1 the azimuth angle of can be a value greater than or equal to 360 degrees, which can be mapped to a n,m+1 positive azimuth angle value in the range [0, 360) of - 360. Figure 6 This example is shown. When the sample point with an elevation angle of -60 degrees and an azimuth angle of 345 degrees is Figure 11 the sample point 552 in, then the sample point with an elevation angle of -60 degrees and an azimuth angle of 0 degrees can correspond to the sample point 554.

[0071] In some scenarios, Figure 11 the sample point 552 in can be the only sample point at the elevation angle e n For example, the sample point 552 can be at θ = -70, In this example, the azimuth angle span of the sample point 552 (corresponding to the width of the SP region 1100) can be set to 360 degrees or 2 × π radians, and the elevation angle span of the sample point 552 (corresponding to the height of the SP region 1100) can be determined as described above regarding Figure 10 i.e.,

[0072] In Figure 10 the sample point 552 has adjacent sample points at the elevation angles in two opposite directions. More specifically, the sample point 574 is the sample point adjacent to the sample point 552 in the positive direction of the elevation angle (meaning e n+1 > e n ), and the sample point 572 is the sample point adjacent to the sample point 552 in the negative direction of the elevation angle (meaning e n-1 < e n ).

[0073] However, in some scenarios, when the sample point 552 is in a specific region (e.g., region 690 or region 692) in the elevation - azimuth plane, the sample point 552 can have adjacent sample points only in one direction of the elevation angle.

[0074] For example, when the sample point 552 is at θ = -90, In the case where there is no sample point adjacent to the sample point 552 in the negative direction of the elevation angle, because there is no sample point at θ < -90. In this case, the elevation angle span of the sample point 552 (corresponding to the height of the SP region 1100) can be determined as 1 / 2 of the difference between the elevation angle of the sample point 552 and the elevation angle of the sample point adjacent to the sample point 552 in one direction of the elevation angle (for example, corresponding to Figure 10 the upper boundary 1004 shown, because when the sample point 552 is at θ = -90, there will be no sample point at the elevation angle of the sample point 572).

[0075] In another example, when the sample point 552 is at θ = 90, there is no sample point adjacent to the sample point 552 in the positive direction of the elevation angle, because there is no sample point at θ > 90. In this case, the elevation angle span of the sample point 552 (corresponding to the height of the SP region 1100) can be determined as 1 / 2 of the difference between the elevation angle of the sample point 552 and the elevation angle of the sample point adjacent to the sample point 552 in one direction of the elevation angle (for example, corresponding to Figure 10 the lower boundary 1002 shown, because when the sample point 552 is at θ = 90, there will be no sample point at the elevation angle of the sample point 574).

[0076] Figure 6 An example of a sample point region showing multiple sample points is shown.

[0077] Returning to reference Figure 8 , after performing step s802, the process 800 can proceed to step s804. Step s804 includes dividing the set of HR filters into a subset of HR filters for training the HR filter model (i.e., the "training subset of HR filters") and a subset of HR filters for testing the generated HR filter model (i.e., the "testing subset of HR filters"). In other words, the training subset of HR filters is used to generate the HR filter model, and the testing subset of HR filters is used to test (i.e., verify / check) the generated HR filter model at sample points not used for training the HR filter model.

[0078] As described above, due to the low modeling accuracy of the HR filter model, i.e., not reaching the desired or acceptable level, in regions with low sample point density, according to some embodiments, all HR filters at the sample points located in those regions are included in the training subset of the HR filters and are thus used to generate the HR filter model. In addition to the HR filters at the sample points located in those regions, at least some HR filters at the sample points located in regions with high sample point density can also be included in the training subset of the HR filters and are thus used to generate the HR filter model.

[0079] According to some embodiments, a set of HR filters can be partitioned into a training subset of HR filters and a test subset of HR filters based on the cumulative count distribution of the sample point regions of all available HR filters.

[0080] Figure 12 shows Figure 6 the SP region count distribution of an example set of elevation-azimuth sample points shown in Figure 13 shows Figure 6 the cumulative SP region count distribution of an example set of elevation-azimuth sample points shown in , including the training set specification based on the cumulative distribution.

[0081] Before selecting the training subset of HR filters, after obtaining the SP region of each sample point in step S802, the HR filters can be arranged based on the size of the SP region. For example, the HR filters can be arranged in descending order of the spatial region. The table provided below shows the order of arranging the HR filters according to the size of the SP region. In the following table, the size of the SP region of each HR filter is indicated by the size of the table cell corresponding to each HR filter. HR1 HR2 HR3 HR4 HR5 HR6 HR7 HR8 …

[0082] More specifically, in the above table, the size of the SP region of HR filter 1 > the size of the SP region of HR filter 2 > the size of the SP region of HR filter 3 >... In some cases, the SP regions of two or more HR filters have the same size. For example, in the table provided above, the size of the SP region of HR filter 5 is the same as the size of the SP region of HR filter 6 and the size of the SP region of HR filter 7. In this case, the HR filters with SP regions of the same size can be arranged in any order. Thus, the size of the SP region of HR filter 1 > the size of the SP region of HR filter 2 > the size of the SP region of HR filter 3 > the size of the SP region of HR filter 4 > the size of the SP region of HR filter 5 = the size of the SP region of HR filter 6 = the size of the SP region of HR filter 7 > the size of the SP region of HR filter 8. In summary, the HR filters can be arranged such that the size of SP region 1 ≥ the size of SP region 2 ≥ the size of SP region 3 ≥ the size of SP region 4...

[0083] One way to select a training subset of HR filters in step s802 is to first select the first m HR filters in the ordered list or the first p m % of the total number of HR filters, and then select n remaining HR filters (or the remaining p n % of the HR filters) after the first m HR filters in the ordered list, and include the selected HR filters in the training subset of HR filters. In one example, m is equal to 1 / 2 (50%) of the total number of sample points, and n corresponds to the remaining 50% of the HR filters. n and m can be any positive values.

[0084] Another way to select a training subset of HR filters in step s802 is to select all HR filters located at sample points of each SP region having a size greater than the threshold ψ, and then select q% of the HR filters located at sample points of each SP region having a size equal to or less than the threshold ψ, where the q% of the HR filters can be randomly or pseudo-randomly selected.

[0085] For example, assume that each HR filter included in half of the given HR filters (i.e., the first set of HR filters) has an SP region larger than the threshold SP region size, and each HR filter included in the remaining half of the given HR filters (i.e., the second set of HR filters) has an SP region smaller than or equal to the threshold SP region size. In such an example, the first set of HR filters and any HR filter randomly selected from the second set of HR filters are selected and included in the training subset of the HR filters. The number / percentage of HR filters to be randomly selected can be configured to any number. In one example, 50% of the HR filters located at sample points with an SP region equal to or smaller than the threshold ψ are selected to be included in the training subset of the HR filters.

[0086] In some embodiments, instead of randomly selecting p n % or q% of the HR filters, different methods can be used to select p n % or q% of the HR filters. For example, the selected p n % or q% of the HR filters can correspond to HR filters uniformly distributed in azimuth. More specifically, from the HR filters each having an SP region smaller than or equal to the threshold SP region size, one or more sets of HR filters (e.g., 602 and / or 604) are identified, where the HR filters in each set of HR filters have the same size as the SP region. Then, p n % or q% of the HR filters (e.g., 622, 624, 626, 628) can be selected from within each set such that the selected HR filters are uniformly distributed in azimuth.

[0087] Once the training subset of the HR filters is selected, the remaining HR filters included in the set of HR filters can be used as the test subset of the HR filters.

[0088] After performing step s804, process 800 can proceed to step s806. Step s806 includes determining a weight value for each HR filter included in the training subset of the HR filters. In some embodiments, the weight value of the sample point is determined based on the size of the SP region of the sample point determined in step s802. However, in other embodiments, the weight value of the sample point is determined based on the size of the updated SP region of the sample point determined in step s805, which will be explained in detail below.

[0089] More specifically, in some embodiments, the weight vector T including the weight values of N HR filters included in the training subset of the HR filters can be obtained as the SP region vector function, which includes N T The size of the SP region of the HR filter. The weight vector can be a function of the SP region vector, which means w = f(a), where the HR filter with a larger SP region has a higher weight compared to the HR filter with a smaller SP region.

[0090] In one example, the weight vector can be determined as follows: where w N is the weight value of the nth HR filter included in the training subset of the HR filters, a n is the size of the SP region of the nth HR filter, a T is the total area of the elevation-azimuth plane or the part of the elevation-azimuth plane being modeled. For example, Figure 6 the sum of the SP regions of the HR filters shown, and N T is the total number of HR filters included in the training subset of the HR filters.

[0091] In another example, the weight vector can be determined as follows:

[0092] In yet another example, the weight vector can be determined as follows:

[0093] In yet another example, the weight vector can be determined as follows:

[0094] Figure 14 shows the weight count distribution according to some embodiments, and Figure 15 shows the cumulative weight count distribution according to some embodiments.

[0095] Figure 16 shows the SP region of the training set and the change in the weight value determined based on the size of the SP region. In Figure 16 each rectangle, the points included represent the weight values. The larger the point, the higher the weight value. As Figure 16 shown, the larger the SP region, the higher the weight value.

[0096] As described above, in some embodiments, the weight value of each HR filter included in the training subset can be determined based on the size of the SP region of the HR filter determined in step s802. However, in other embodiments, the updated SP region can be determined for each HR filter included in the training subset, and the weight value of the HR filter can be determined based on the updated SP region. In such embodiments, optional step s805 can be performed. Step s805 includes determining the updated SP region of the sample points associated with each HR filter included in the training subset. In step s802, the original SP region of the sample points associated with each HR filter can be determined based on the distance between the HR filter and the (multiple) adjacent HR filters adjacent to the HR filter in the set of initial HR filters. However, in step s805, the updated SP region of the sample points associated with each HR filter can be determined based on the distance between the HR filter and the (multiple) adjacent HR filters adjacent to the HR filter in the training subset of HR filters. In summary, in step s802, the SP region of the sample points of the HR filter is determined based on the relationship between the HR filter and the other HR filters included in the set of initial HR filters, while in step s805, the SP region of the sample points of the HR filter is determined based on the relationship between the HR filter and the other HR filters included in the training subset of HR filters.

[0097] After performing step s806, process 800 can proceed to step s808. Step s808 includes generating an HR filter model using the weight values obtained in step s806.

[0098] A given training subset of HR filters is where each in is an HR filter vector of dimension K indicating a specific elevation angle θ n and a specific azimuth angle φ n at, then the modeled HR filter for modeling each in can be determined as follows each in where {Θ p : p = 1, …, P} is a set of P basis functions in the elevation angle dimension, {Φ q : q = 1, …, Q} is a set of Q basis functions in the azimuth angle dimension, {e k : k = 1, …, K} is a set of K-dimensional basis vectors spanning the K-dimensional vector space, and α = {α p,q,k:p = 1, …, P; q = 1, …, Q; k = 1, …, K} is a set of model parameters for forming an HR filter model.

[0099] The HR filter model (i.e., the set α of optimal modeling parameters of the HR filter model) can be obtained by minimizing the modeling error on the HR filter in the training subset. Here, the modeling error indicates the difference between the measured HR filter and the modeled HR filter that models the measured HR filter. Therefore, the closer the modeled HR filter is to the measured HR filter, the smaller the modeling error, which means that the HR filter model is well modeled.

[0100] In some embodiments, the HR filter The modeling error on the HR filter in the training subset can be calculated as a weighted modeling error as follows: where J w (α) is the weighted modeling error of the HR filter set model with the set of model parameters (α), N T is the number of HR filters included in the training subset of the HR filter, w n is the weight value for the nth HR filter in the training subset of the HR filter, μ is a measure of the modeling error vector, is the nth HR filter in the training subset of the HR filter, and is the modeled HR filter that models the nth HR filter in the training subset of the HR filter using the set of model parameters (α).

[0101] Commonly used μ measures are the p-norms when p = 1 and p = 2, where the p-norm of a K-dimensional vector x is given by:

[0102] Using the above equation for calculating the modeling error, the set of model parameters (α) that produces the minimum modeling error is determined, thereby determining the HR filter model.

[0103] When calculating the modeling error, by giving more weight to the difference between the measured HR filter and the modeled HR filter in the region with low sample point density, that is, compared to the difference between the measured HR filter and the modeled HR filter in the region with high sample point density, a set of model parameters can be obtained, which is more conducive to reducing the difference between the measured HR filter and the modeled HR filter in the region with low sample point density. Therefore, the obtained HR filter model will generate an HR filter that more accurately models the measured HR filter in those regions with low sample point density.

[0104] Figure 17 Process 1700 for generating an HR filter model for a set of head-related (HR) filters according to some embodiments is shown. Process 1700 may begin at step S1702. Step S1702 includes obtaining HR filter data that indicates a plurality of sample points associated with a plurality of HR filters, where the plurality of sample points includes a first sample point. The plurality of HR filters associated with the plurality of sample points indicated by the HR filter data is a subset of the set of HR filters. Step S1704 includes calculating a first weight value for the first sample point, where the first weight value varies based on the density of sample points within a region that includes the first sample point. Step S1706 includes generating an HR filter model based on the calculated first weight value.

[0105] In some embodiments, the region that includes the first sample point is a region of a virtual 2D sphere around the listener or a region of an elevation-azimuth plane corresponding to the unfolding of the surface of the virtual 2D sphere into a plane.

[0106] In some embodiments, process 1700 includes calculating one or more distances between the first sample point and one or more sample points, where the first weight value is based on the one or more distances.

[0107] In some embodiments, process 1700 includes determining the size of a first sample point region that includes the first sample point, where the size of the first sample point region is based on one or more distances and the first weight value is based on the size of the first sample point region. The first sample point region is a part of the region that includes the first sample point, which is discussed in step S1704.

[0108] In some embodiments, the first sample point region contains only the first sample point and does not contain any other sample points.

[0109] In some embodiments, process 1700 includes: for each sample point included in the plurality of sample points, determining the size of a sample point region that includes the sample point; and for each sample point included in the plurality of sample points, calculating a weight value for the sample point based on the determined size of the sample point region that includes the sample point, where the HR filter model is generated based on the calculated weight values.

[0110] In some embodiments, the size of the first sample point region that includes the first sample point is determined based on one or more distances between the first sample point and one or more sample points adjacent to the first sample point.

[0111] In some embodiments, the size of the first sample point region containing the first sample point is determined based on: the distance between the first sample point and an adjacent sample point adjacent to the first sample point in a specific direction; and a preset value associated with 360 degrees or 2×π radians.

[0112] In some embodiments, the size of the first sample point region containing the first sample point is determined based on: a first distance between the first sample point and a first adjacent sample point adjacent to the first sample point in a first direction; a second distance between the first sample point and a second adjacent sample point adjacent to the first sample point in a second direction; a third distance between the first sample point and a third adjacent sample point adjacent to the first sample point in a third direction; and a fourth distance between the first sample point and a fourth adjacent sample point adjacent to the first sample point in a fourth direction.

[0113] In some embodiments, the first direction and the second direction are opposite to each other, and the third direction and the fourth direction are opposite to each other.

[0114] In some embodiments, the sample points are defined by an elevation angle and an azimuth angle, and the first sample point, the first adjacent sample point, and the second adjacent sample point have the same elevation angle but different azimuth angles.

[0115] In some embodiments, the sample points are defined by an elevation angle and an azimuth angle, and the first sample point, the third adjacent sample point, and the fourth adjacent sample point have different elevation angles.

[0116] In some embodiments, the first sample point, the third adjacent sample point, and the fourth adjacent sample point have different azimuth angles, the third distance between the first sample point and the third adjacent sample point is the difference between the elevation angle of the first sample point and the elevation angle of the third adjacent sample point, and the fourth distance between the first sample point and the fourth adjacent sample point is the difference between the elevation angle of the first sample point and the elevation angle of the fourth adjacent sample point.

[0117] In some embodiments, the shape of the first sample point region containing the first sample point is a polygon, and the dimension of the polygon is determined based on one or more distances.

[0118] In some embodiments, the shape of the first sample point region containing the first sample point is a rectangle having a first dimension and a second dimension. The first dimension of the rectangle is determined based on 1 / 2 of the first distance and 1 / 2 of the second distance, and the second dimension of the rectangle is determined based on 1 / 2 of the third distance and 1 / 2 of the fourth distance.

[0119] In some embodiments, process 1700 includes obtaining HR filter data indicative of a set of sample points associated with a set of HR filters; and arranging the sample points included in the set of sample points based on the size of the sample point region of each sample point included in the set of sample points, thereby obtaining an ordered list of sample points, wherein a plurality of sample points are selected from the ordered list of sample points.

[0120] In some embodiments, in the ordered list, the sample points are arranged in descending order of the size of the sample point region containing the sample points, and the plurality of sample points correspond to the first m sample points included in the ordered list or correspond to the first p m % of the sample points, and m is a positive integer and / or p m is a positive real number.

[0121] In some embodiments, process 1700 includes selecting a first set of sample points from the ordered list of sample points; and selecting a second set of sample points from the ordered list of sample points that is other than the first set of sample points, wherein in the ordered list, the sample points are arranged in descending order of the size of the sample point region containing the sample points, the first set of sample points corresponds to the first m1 sample points included in the ordered list or corresponds to the first % of the sample points, the second set of sample points corresponds to m2 sample points included in the ordered list that are other than the first set of sample points or corresponds to % of the sample points included in the ordered list that are other than the first set of sample points, and the plurality of sample points includes the first set of sample points and the second set of sample points.

[0122] In some embodiments, the second set of sample points corresponds to: the first m2 sample points included in the ordered list that are other than the first set of sample points or the first % of the sample points included in the ordered list that are other than the first set of sample points, or m2 randomly selected sample points included in the ordered list that are other than the first set of sample points or randomly selected % of the sample points included in the ordered list that are other than the first set of sample points.

[0123] In some embodiments, the first weight value is calculated based on f(a1, a T ), where a1 corresponds to the size of the first sample point region containing the first sample point, and a T corresponds to the size of the region containing the plurality of sample points.

[0124] In some embodiments, where N T is the total number of sample points included in the plurality of sample points.

[0125] In some embodiments, the HR filter model is generated based on minimizing the modeling error over a plurality of sample points, and the modeling error is calculated based on a first weight value.

[0126] In some embodiments, the HR filter model is generated based on minimizing the modeling error over a plurality of sample points, and the modeling error is calculated based on a weight value.

[0127] In some embodiments, where J w (α) is the modeling error, α is a set of model parameters of the HR filter model, w n is the weight value associated with the nth sample point, N T is the total number of the plurality of sample points, is the modeled HR filter associated with the elevation angle θ n , the azimuth angle and the set of model parameters α, and h n is the measured HR filter associated with the elevation angle θ n and the azimuth angle and μ is a measure of the modeling error vector.

[0128] Figure 18 is a block diagram of an apparatus 1800 for performing the method described above for processes 800 as shown, for example, in Figure 8 or processes 900 as shown in Figure 9 according to some embodiments. As Figure 18As shown, the apparatus 1800 may include: processing circuitry (PC) 1802, which may include one or more processors (P) 1855 (e.g., general-purpose microprocessors and / or one or more other processors such as application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), etc.), which may be co-located in a single enclosure or a single data center, or may be geographically distributed (i.e., the apparatus 1800 may be a distributed computing device); at least one network interface 1848, each network interface 1848 including a transmitter (Tx) 1845 and a receiver (Rx) 1847 for enabling the apparatus 1800 to send data to and receive data from other nodes connected to a network 110 (e.g., an Internet Protocol (IP) network), the network interface 1848 being directly or indirectly connected to the network 110, for example, the network interface 1848 may be wirelessly connected to the network 110, in which case the network interface 1848 is connected to an antenna arrangement; and one or more storage units, i.e., a “data storage system” 1808, which may include one or more non-volatile storage devices and / or one or more volatile storage devices. In embodiments where the PC 1802 includes a programmable processor, a computer program product (CPP) 1841 may be provided. The CPP 1841 includes a computer-readable medium (CRM) 1842 storing a computer program (CP) 1843 including computer-readable instructions (CRI) 1844. The CRM 1842 may be a non-transitory computer-readable medium such as a magnetic medium for a hard disk, an optical medium, a memory device for a random access memory, a flash memory, etc. In some embodiments, the CRI 1844 of the computer program 1843 is configured such that when executed by the PC 1802, the CRI causes the apparatus 1800 to perform the steps described herein, e.g., the steps described with reference to the flowcharts herein. In other embodiments, the apparatus 1800 may be configured to perform the steps described herein without code. That is, for example, the PC 1802 may consist of only one or more ASICs. Thus, the features of the embodiments described herein may be implemented in hardware and / or software.

[0129] Overview of the Embodiment A1. A method (1700) for generating an HR filter model for a set of head-related HR filters, the method comprising: acquiring (s1702) HR filter data indicating a plurality of sample points associated with a plurality of HR filters, wherein the plurality of sample points includes a first sample point; calculating (s1704) a first weight value for the first sample point, wherein the first weight value varies based on the density of sample points within a region containing the first sample point; and Generate (s1706) an HR filter model based on the calculated first weight value. A1a. The method according to embodiment A1, wherein the region is a region of a virtual 2D sphere around the listener or a region of an elevation-azimuth plane corresponding to the unfolding of the surface of the virtual 2D sphere into a plane. A2. The method according to embodiment A1 or A1a, the method comprising: Calculating one or more distances between a first sample point and one or more sample points, wherein The first weight value is based on the one or more distances. A3. The method according to embodiment A2, the method comprising: Determining the size of a first sample point region containing the first sample point, wherein The size of the first sample point region is based on the one or more distances, and The first weight value is based on the size of the first sample point region. A4. The method according to embodiment A3, wherein the first sample point region contains only the first sample point and does not contain any other sample points. A5. The method according to embodiment A4, the method comprising: For each sample point included in a plurality of sample points, determining the size of a sample point region containing each sample point; and For each sample point included in a plurality of sample points, calculating a weight value for each sample point based on the determined size of the sample point region containing each sample point, wherein The HR filter model is generated based on the calculated weight values. A6. The method according to any one of embodiments A3 to A5, wherein the size of the first sample point region containing the first sample point is determined based on two or more distances between the first sample point and two or more sample points adjacent to the first sample point. A7. The method according to embodiment A6, wherein the size of the first sample point region containing the first sample point is determined based on: A first distance between the first sample point and a first adjacent sample point adjacent to the first sample point in a first direction; A second distance between the first sample point and a second adjacent sample point adjacent to the first sample point in a second direction; A third distance between the first sample point and a third adjacent sample point adjacent to the first sample point in a third direction; and A fourth distance between the first sample point and a fourth adjacent sample point adjacent to the first sample point in a fourth direction. A8. The method according to embodiment A7, wherein The first direction and the second direction are opposite to each other, and the third direction and the fourth direction are opposite to each other. A9. The method according to embodiment A7 or A8, wherein the sample points are defined by elevation angles and azimuth angles, and the first sample point, the first adjacent sample point, and the second adjacent sample point have the same elevation angle but different azimuth angles. A10. The method according to any one of embodiments A7 to A9, wherein the sample points are defined by elevation angles and azimuth angles, and the first sample point, the third adjacent sample point, and the fourth adjacent sample point have different elevation angles. A11. The method according to embodiment A10, wherein the first sample point, the third adjacent sample point, and the fourth adjacent sample point have different azimuth angles, the third distance between the first sample point and the third adjacent sample point is the difference between the elevation angle of the first sample point and the elevation angle of the third adjacent sample point, and the fourth distance between the first sample point and the fourth adjacent sample point is the difference between the elevation angle of the first sample point and the elevation angle of the fourth adjacent sample point. A12. The method according to any one of embodiments A3 to A11, wherein the shape of the first sample point region containing the first sample point is a polygon, and the dimension of the polygon is determined based on one or more distances. A13. The method according to any one of embodiments A7 to A12, wherein the shape of the first sample point region containing the first sample point is a rectangle having a first dimension and a second dimension, the first dimension of the rectangle is determined based on 1 / 2 of the first distance and 1 / 2 of the second distance, and the second dimension of the rectangle is determined based on 1 / 2 of the third distance and 1 / 2 of the fourth distance. A13a. The method according to any one of embodiments A1 to A13, the method comprising: obtaining HR filter data indicating a set of sample points associated with a set of HR filters; and arranging the sample points included in the set of sample points based on the size of the SP region of each sample point included in the set of sample points, thereby obtaining an ordered list of sample points, wherein a plurality of sample points are selected from the ordered list of sample points. A14. The method according to embodiment A13a, wherein In the ordered list, the sample points are arranged in descending order of the size of the sample point regions containing the sample points. A plurality of sample points correspond to the first m sample points included in the ordered list or correspond to the first p m % of the sample points, and m is a positive integer and / or p m is a positive real number. A14a. The method according to embodiment A13a, the method comprising: selecting a first set of sample points from the ordered list of sample points; and selecting a second set of sample points from the ordered list of sample points other than the first set of sample points, wherein in the ordered list, the sample points are arranged in descending order of the size of the sample point regions containing the sample points, the first set of sample points corresponds to the first m1 sample points included in the ordered list or corresponds to the first % of the sample points included in the ordered list, the second set of sample points corresponds to m2 sample points included in the ordered list other than the first set of sample points or corresponds to the % of the sample points included in the ordered list other than the first set of sample points; and a plurality of sample points includes the first set of sample points and the second set of sample points. A14b. The method according to embodiment A14a, wherein the second set of sample points corresponds to: the first m2 sample points included in the ordered list or the first % of the sample points included in the ordered list other than the first set of sample points, or m2 randomly selected sample points included in the ordered list other than the first set of sample points or the % of the sample points randomly selected from the ordered list other than the first set of sample points. A15. The method according to any one of embodiments A3 to A14b, wherein the first weight value is calculated based on f(a1, a T ), where a1 corresponds to the size of the first sample point region containing the first sample point, and a T corresponds to the size of the region containing the plurality of sample points. A16. The method according to embodiment A15, wherein where N T is the total number of sample points included in the plurality of sample points. A17. The method according to any one of embodiments A1 to A16, wherein The HR filter model is generated based on minimizing the modeling error over a plurality of sample points, and the modeling error is calculated based on a first weight value. A18. The method according to any one of embodiments A5 to A16, wherein the HR filter model is generated based on minimizing the modeling error over a plurality of sample points, and the modeling error is calculated based on a weight value. A19. The method according to embodiment A18, wherein wherein J w (α) is the modeling error, α is a set of model parameters of the HR filter model, w n is the weight value associated with the nth sample point, N T is the total number of the plurality of sample points, is the modeled HR filter associated with the elevation angle θ n , the azimuth angle and the set of model parameters α, and h n is the measured HR filter associated with the elevation angle θ n and the azimuth angle and, and μ is a measure of the modeling error vector. B1. A computer program (1800) comprising instructions (1844) that, when executed by a processing circuitry (1802), cause the processing circuitry to perform the method according to any one of embodiments A1 to A19. B2. A carrier containing the computer program of embodiment B1, wherein the carrier is one of the following: an electrical signal, an optical signal, a radio signal, a computer-readable storage medium. C1. An apparatus (1800) for generating an HR filter model for a set of head-related HR filters, the apparatus being configured to: obtain (s1702) HR filter data indicating a plurality of sample points associated with a plurality of HR filters, wherein the plurality of sample points includes a first sample point; calculate (s1704) a first weight value for the first sample point, wherein the first weight value varies based on the density of sample points within a region containing the first sample point; and generate (s1706) an HR filter model based on the calculated first weight value. C2. The apparatus according to embodiment C1, wherein the apparatus is configured to perform the method according to at least one of embodiments A2 to A19. D1. An apparatus (1800) comprising: processing circuitry (1802); and a memory (1841) containing instructions executable by the processing circuitry, whereby the apparatus is operable to perform the method according to at least one of embodiments A1 to A19.

[0130] Conclusion

[0131] Although various embodiments are described herein, it should be understood that they are presented by way of example and not limitation. Thus, the breadth and scope of the present disclosure should not be limited by any of the above example embodiments. Additionally, unless otherwise stated herein or clearly contradicted by the context, the present disclosure encompasses any combination of the above elements in all possible variations thereof.

[0132] Additionally, although the processes shown above and in the figures are shown as sequences of steps, this is for illustrative purposes only. Thus, it is contemplated that some steps may be added, some steps may be omitted, the order of steps may be rearranged, and some steps may be performed in parallel.

Claims

1. A method (1700) for generating an HR filter model for a set of head-related HR filters, the method comprising: Obtaining (s1702) HR filter data that indicates a plurality of sample points associated with a plurality of HR filters, wherein the plurality of sample points includes a first sample point; Calculating (s1704) a first weight value for the first sample point, wherein the first weight value varies based on the density of sample points within a region containing the first sample point; and Generating (s1706) the HR filter model based on the calculated first weight value.

2. The method according to claim 1, wherein the region containing the first sample point is a region of a virtual 2D sphere around a listener or a region of an elevation-azimuth plane corresponding to the unfolding of the surface of the virtual 2D sphere into a plane.

3. The method according to claim 1 or 2, the method comprising: Calculating one or more distances between the first sample point and one or more sample points, wherein The first weight value is based on the one or more distances.

4. The method according to claim 3, the method comprising: Determining the size of a first sample point region containing the first sample point, wherein The size of the first sample point region is based on the one or more distances, and The first weight value is based on the size of the first sample point region.

5. The method according to claim 4, wherein the first sample point region contains only the first sample point and does not contain any other sample points.

6. The method according to claim 5, the method comprising: For each sample point included in the plurality of sample points, determining the size of a sample point region containing the sample point; And For each sample point included in the plurality of sample points, calculating a weight value for the sample point based on the determined size of the sample point region containing the sample point, wherein The HR filter model is generated based on the calculated weight values.

7. The method according to any one of claims 4 to 6, wherein the size of the first sample point region containing the first sample point is determined based on one or more distances between the first sample point and one or more sample points adjacent to the first sample point.

8. The method according to claim 7, wherein the size of the first sample point region containing the first sample point is determined based on: The distance between the first sample point and an adjacent sample point adjacent to the first sample point in a specific direction; and A preset value associated with 360 degrees or 2×π radians.

9. The method according to claim 7, wherein the size of the first sample point region containing the first sample point is determined based on: A first distance between the first sample point and a first adjacent sample point adjacent to the first sample point in a first direction; A second distance between the first sample point and a second adjacent sample point adjacent to the first sample point in a second direction; a third distance between the first sample point and a third adjacent sample point adjacent to the first sample point in a third direction; and a fourth distance between the first sample point and a fourth adjacent sample point adjacent to the first sample point in a fourth direction.

10. The method according to claim 9, wherein the first direction and the second direction are opposite to each other, and the third direction and the fourth direction are opposite to each other.

11. The method according to claim 9 or 10, wherein each of the first sample point, the first adjacent sample point, and the second adjacent sample point is defined by an elevation angle and an azimuth angle, and the first sample point, the first adjacent sample point, and the second adjacent sample point have the same elevation angle but different azimuth angles.

12. The method according to any one of claims 9 to 11, wherein each of the third adjacent sample point and the fourth adjacent sample point is defined by an elevation angle and an azimuth angle, and the first sample point, the third adjacent sample point, and the fourth adjacent sample point have different elevation angles.

13. The method according to claim 12, wherein the first sample point, the third adjacent sample point, and the fourth adjacent sample point have different azimuth angles, the third distance between the first sample point and the third adjacent sample point is the difference between the elevation angle of the first sample point and the elevation angle of the third adjacent sample point, and the fourth distance between the first sample point and the fourth adjacent sample point is the difference between the elevation angle of the first sample point and the elevation angle of the fourth adjacent sample point.

14. The method according to any one of claims 4 to 13, wherein the shape of the first sample point region containing the first sample point is a polygon, and the dimension of the polygon is determined based on the one or more distances.

15. The method according to any one of claims 9 to 14, wherein the shape of the first sample point region containing the first sample point is a rectangle having a first dimension and a second dimension, the first dimension of the rectangle is determined based on 1 / 2 of the first distance and 1 / 2 of the second distance, and the second dimension of the rectangle is determined based on 1 / 2 of the third distance and 1 / 2 of the fourth distance.

16. The method according to any one of claims 1 to 15, the method comprising: obtaining HR filter data indicating a set of sample points associated with the set of HR filters; and arranging the sample points included in the set of sample points based on the size of the sample point region of each sample point included in the set of sample points, so as to obtain an ordered list of sample points, wherein the plurality of sample points are selected from the ordered list of sample points.

17. The method according to claim 16, wherein in the ordered list, the sample points are arranged in descending order of the size of the sample point region containing the sample points, The plurality of sample points corresponds to the first m sample points included in the ordered list or corresponds to the first p m % of the sample points, and m is a positive integer and / or p m is a positive real number.

18. The method according to claim 16, the method comprising: selecting a first set of sample points from the ordered list of sample points; and Select a second set of sample points from the ordered list of the sample points other than the first set of the sample points, wherein in the ordered list, the sample points are arranged in descending order of the size of the sample point regions containing the sample points, The first set of the sample points corresponds to the first m1 sample points included in the ordered list or corresponds to the sample points of the first in the ordered list. The second set of the sample points corresponds to m2 sample points included in the ordered list other than the first set of the sample points or corresponds to the sample points other than the first set of the sample points included in the ordered list ; and the plurality of sample points includes the first set of the sample points and the second set of the sample points.

19. The method according to claim 18, wherein the second set of the sample points corresponds to: The first m2 sample points included in the ordered list except for the first set of the sample points, or the first sample points included in the ordered list except for the first set of the sample points, or m2 randomly selected sample points other than the first set of sample points included in the ordered list or randomly selected sample points other than the first set of sample points included in the ordered list.

20. The method according to any one of claims 4 to 19, wherein the first weight value is calculated based on f(a1, a T ), where a1 corresponds to the size of the first sample point region containing the first sample point, and a T corresponds to the size of the region containing the plurality of sample points.

21. The method according to claim 20, wherein where N T is the total number of sample points included in the plurality of sample points.

22. The method according to any one of claims 1 to 21, wherein the HR filter model is generated based on minimizing the modeling error on the plurality of sample points, and the modeling error is calculated based on the first weight value.

23. The method according to any one of claims 6 to 21, wherein the HR filter model is generated based on minimizing the modeling error on the plurality of sample points, and the modeling error is calculated based on the weight value.

24. The method according to claim 23, wherein J w (α) is the modeling error, α is a set of model parameters of the HR filter model, w n is the weight value associated with the nth sample point, N T is the total number of the plurality of sample points, is a modeled HR filter associated with the elevation angle θ n , the azimuth angle and the set α of said model parameters, and h n is the HR filter of the measurement associated with the elevation angle θ n and the azimuth angle and μ is a measure of the modeling error vector.

25. A computer program (1800) comprising instructions (1844) which, when executed by a processing circuitry (1802), cause the processing circuitry to perform the method according to any one of claims 1 to 24.

26. A carrier containing the computer program according to claim 25, wherein the carrier is one of the following: an electrical signal, an optical signal, a radio signal, a computer-readable storage medium.

27. An apparatus (1800) for generating an HR filter model for a set of head-related HR filters, the apparatus being configured to: obtain (s1702) HR filter data indicating a plurality of sample points associated with a plurality of HR filters, wherein the plurality of sample points includes a first sample point; calculate (s1704) a first weight value for the first sample point, wherein the first weight value varies based on the density of the sample points within the region containing the first sample point; and generate (s1706) the HR filter model based on the calculated first weight value.

28. The apparatus according to claim 27, wherein the apparatus is configured to perform the method according to at least one of claims 2 to 24.

29. An apparatus (1800) comprising: a processing circuitry (1802); and a memory (1841) containing instructions executable by the processing circuitry, whereby the apparatus is operable to perform the method according to at least one of claims 1 to 24.

Citation Information

Patent Citations

  • Modeling of the head-related impulse responses

    WO2021074294A1

  • Head-related (HR) filters

    WO2021254652A1

  • Efficient head-related filter generation

    WO2022008549A1

  • Error correction of head-related filters

    WO2022223132A1