Generating a head-related filter model based on weighted training data
By weighting sample points in regions with low HR filter density, the HR filter model achieves improved accuracy and consistent spatial audio rendering, addressing the accuracy issues in low-density regions.
Patent Information
- Application Number
- JP2025533617
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2022-12-14
- Filing Date
- 2023-12-08
- Publication Date
- 2025-12-05
AI Technical Summary
Existing HR filter models exhibit poor modeling accuracy in regions with low density of HR filters, leading to lower subjective quality of rendered audio sources in those spatial regions.
Weighting sample points in regions with low HR filter density more heavily during HR filter model generation to improve modeling accuracy while minimizing error in other areas.
Enhances modeling accuracy in regions with low HR filter density, resulting in more consistent and improved subjective quality of spatial audio rendering across the entire spatial domain.
Smart Images

Figure 2025539542000001_ABST
Abstract
Description
[Technical Field]
[0001] The present disclosure relates to generating head-related (HR) filter models based on weighted training data. [Background technology]
[0002] The human auditory system is equipped with two ears that capture sound waves propagating toward a listener. Figure 4 shows sound waves propagating toward a listener from a direction of arrival (DoA) specified by an elevation angle and azimuth angle pair in a spherical coordinate system. On their propagation path toward the listener, each sound wave interacts with the listener's upper torso, head, outer ear, and surrounding materials before reaching the listener's left and right eardrums. This interaction produces temporal and spectral variations in the waveforms reaching the left and right eardrums, some of which are DoA-dependent. The human auditory system has learned to interpret these variations to infer various spatial properties of the sound waves themselves as well as the acoustic environment in which the listener finds themselves.
[0003] This ability is called spatial hearing, and spatial hearing relates to how spatial cues embedded in binaural signals, i.e., sound signals in the right and left ear canals, are evaluated to infer the location of sound events, e.g., auditory events evoked by a physical sound source and the acoustic characteristics caused by a physical environment, e.g., a small room, a tiled bathroom, an auditorium, a windowless cave, etc. This human ability, spatial hearing, can be exploited to create spatial audio scenes by reintroducing spatial cues into the binaural signals, which will result in a spatial perception of sound.
[0004] The primary spatial cues include 1) angular cues: binaural cues, i.e., interaural level difference (ILD) and interaural time difference (ITD), as well as monaural (or spectral) cues; and 2) distance cues: intensity and direct-to-reverberant (D / R) energy ratio. The mathematical representations of short-term DoA-dependent temporal and spectral changes in waveforms (1–5 ms) are so-called HR filters. Their frequency-domain (FD) representations are so-called head-related transfer functions (HRTFs), and their time-domain (TD) representations are head-related impulse responses (HRIRs). Figures 19A–19E show an example of an HR filter capturing the ITD and spectral cues of sound waves propagating toward the listener. The four plots show the time-domain and frequency-domain responses of a pair of HR filters acquired at 0 degree elevation and 40 degree azimuth (data is from the CIPIC database: subject ID 28. The database is publicly available and can be accessed at the link https: / / www.ece.ucdavis.edu / cipic / spatial-sound / hrtf-data / ).
[0005] HR filters are often estimated from acoustic measurements as the impulse response of a linear dynamic system that transforms the original sound signal (input signal) into left and right ear signals (output signals), which may be measured in the ear channels of a listening subject, e.g., an artificial head, a mannequin, or a human subject, at a predefined set of elevation and azimuth angles on a sphere of constant radius from the listening subject.
[0006] HR filters, estimated either by measurement or numerical simulation, are often provided as finite impulse response (FIR) filters and can be used directly in that format. To achieve efficient binaural rendering, HRTF pairs can be converted to interaural transfer functions (ITFs) or modified ITFs to prevent sharp spectral peaks. Alternatively, HRTFs can be described by parametric expressions. Such parameterized HRTFs are easily integrated with parametric multichannel audio coders, such as Moving Picture Experts Group (MPEG) Surround and Spatial Audio Object Coding (SAOC).
[0007] Rendering a spatial audio signal to provide a convincing spatial perception of sounds at arbitrary locations in space requires a pair of HR filters at corresponding locations, and therefore a set of HR filters at finely sampled locations on a two-dimensional (2D) sphere may be provided. Note that in this disclosure, a 2D sphere refers to the surface or boundary of a virtual three-dimensional (3D) ball that may surround the listener. The minimum audible angle (MAA) characterizes the sensitivity of the human auditory system to the angular displacement of a sound event.
[0008] Regarding azimuth localization, MAA has been observed to be smallest (approximately 1 degree) in front and behind the listener for broadband noise bursts and much larger (approximately 10 degrees) for lateral sound sources. MAA in the median plane increases with elevation angle. MAA as small as 4 degrees on average in elevation angle has been observed for broadband noise bursts. There are several publicly available HR filter databases that are densely sampled in space, such as the SADIE database and the CIPIC database. However, none of them fully meet the MAA requirements, especially with regard to elevation sampling. The SADIE dataset of the Neumann KU100 artificial head and the KEMAR mannequin contains over 8,000 measurements, but its sampling resolution at elevation angles between -15 and 15 degrees is 15 degrees, whereas MAA studies require 4 degrees. Naturally, angular interpolation of the HR filters is required so that sound sources can be rendered in locations where no actual filters were measured.
[0009] To obtain an HR filter for a location where an actual filter was not measured, an HR filter model can be used to model the HR filter. This HR filter model can be a function of elevation angle and azimuth angle and can be configured to calculate an HR filter corresponding to a specific elevation angle and a specific azimuth angle. Methods for modeling HR filters and thereby generating HR filter models are disclosed in PCT / EP2022 / 074787, WO2022 / 223132, WO2022 / 008549, WO2021 / 254652, and WO2021 / 074294. Summary of the Invention
[0010] Currently, there are several challenges. For example, it has been observed that the modeling accuracy of an HR filter model, i.e., the modeling accuracy indicating how well the HR filter model models multiple HR filters, may not meet the desired accuracy level in regions with a relatively low (or lowest) density of HR filters, for example, in regions of a 2D sphere or in regions of an elevation-azimuth plane. These regions generally correspond to spatial regions on the 2D sphere or in the elevation-azimuth plane with elevation angles below -60 degrees and spatial regions with elevation angles above 60 degrees.
[0011] As a result of failing to meet the desired level of accuracy, the subjective quality of the rendered audio source in those spatial regions rendered using the HR filter model is much lower compared to other spatial regions where the HR filter is more accurately modeled.
[0012] One explanation for the poor modeling accuracy of the HR filter model in those regions is that the number of sample points in those regions is much smaller than the number of sample points in regions with high sampling density, so those regions contribute less to the total modeling error measure compared to regions with high sampling density. Similarly, regions further away from the equator of the sample point sphere (towards the poles) will contribute less to the total modeling error measure, even if the density on the sphere is equal. Therefore, regions with low sampling density and / or represented by a relatively small number of sample points will be modeled with less accuracy.
[0013] Thus, in some embodiments of the present disclosure, the modeling accuracy of the HR filter model may be improved by weighting sample points in regions with a relatively low density of HR filters, e.g., either regions of the 2D sphere or regions of the elevation-azimuth plane, more heavily than sample points in regions with a relatively high density of HR filters, while minimally increasing modeling error in other areas.
[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 acquiring HR filter data indicative of a plurality of sample points associated with a plurality of HR filters, the plurality of sample points including a first sample point. The method further includes calculating a first weight value for the first sample point, the first weight value varying based on a density of the sample points in an area encompassing the first sample point. The method further includes generating the HR filter model based on the calculated first weight value.
[0015] In another aspect, there is provided a computer program comprising instructions which, when executed by a processing circuit, cause the processing circuit to perform a method according to any one of the embodiments described above.
[0016] In another aspect, there is provided a carrier containing the computer program according to the above embodiments, wherein the carrier is one of an electronic signal, an optical signal, a radio signal, and a computer-readable storage medium.
[0017] In another aspect, an apparatus is provided for generating an HR filter model for a set of head-related (HR) filters. The apparatus is configured to: acquire HR filter data indicative of a plurality of sample points associated with a plurality of HR filters, the plurality of sample points including a first sample point. The apparatus is further configured to calculate a first weight value for the first sample point, the first weight value varying based on a density of the sample points in an area encompassing the first sample point. The apparatus is further configured to generate the HR filter model based on the calculated first weight value.
[0018] In another aspect, there is provided an apparatus comprising a processing circuit and a memory, said memory including instructions executable by said processing circuit, whereby the apparatus is operable to perform a method according to at least one of the embodiments described above.
[0019] Some embodiments of the present disclosure provide more consistent modeling performance across a set of unevenly distributed HR filters by improving modeling accuracy in regions with a relatively low density of HR filters while maintaining low modeling error in other spatial regions.
[0020] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate various embodiments. [Brief explanation of the drawings]
[0021] [Figure 1] FIG. 1 illustrates a system, according to some embodiments. [Figure 2A-2B] FIG. 1 is a diagram illustrating the concept of an HR filter. [Figure 3A-3B] FIG. 1 is a diagram illustrating the concept of an HR filter. [Figure 4] 1 is a diagram illustrating the directions of arrival of audio waves in three-dimensional (3D) space as observed by a listener. [Figure 5] FIG. 1 illustrates a set of HR filters located on a 2D sphere. [Figure 6] FIG. 10 illustrates the distribution of sample points associated with an HR filter. [Figure 7] FIG. 10 illustrates the distribution of sample points associated with an HR filter. [Figure 8] FIG. 1 illustrates a process, according to some embodiments. [Figure 9] FIG. 1 illustrates a method for determining the boundaries of a sample point area, according to some embodiments. [Figure 10] FIG. 1 illustrates a method for determining the boundaries of a sample point area, according to some embodiments. [Figure 11]FIG. 2 illustrates an exemplary sample point area of a sample point. [Figure 12] FIG. 7 illustrates the sample point area count distribution for the complete set of elevation-azimuth sample points shown in FIG. 6. [Figure 13] FIG. 7 illustrates the cumulative sample point area count distribution for the complete set of elevation-azimuth sample points shown in FIG. 6. [Figure 14] FIG. 1 illustrates an exemplary weight count distribution. [Figure 15] FIG. 1 illustrates an exemplary cumulative weight count distribution. [Figure 16] FIG. 10 illustrates the variation of weight values depending on the size of the sample point area. [Figure 17] FIG. 1 illustrates a process, according to some embodiments. [Figure 18] FIG. 1 illustrates an apparatus, according to some embodiments. [Figures 19A-19E] FIG. 1 illustrates sound waves propagating towards a listener interacting with the head and ears and the resulting ITD. DETAILED DESCRIPTION OF THE INVENTION
[0022] FIG. 1 illustrates an exemplary 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 may be a wired or wireless network. Alternatively or additionally, the network 110 may be a cloud via which the audio data 116 is transmitted from the server 114 to the audio rendering unit 112. In this disclosure, audio data is defined as data that, after rendering (e.g., processing with one or more HR filters), is used to provide a listener with an audio experience as if the listener were located in a three-dimensional (3D) space in which the audio source(s) are located. The audio data includes audio samples of a source signal corresponding to the audio source(s). In some embodiments, the audio data may further include HR filter information indicating an HR filter.
[0023] After receiving the audio data 116, the audio rendering unit 112 may generate binaural audio signals and transmit the generated audio signals to the headphones 106. The headphones 106 are configured to generate audio based on the audio signals, thereby providing an audio experience (also called spatial audio) to the listener 102. In some embodiments, other audio generating devices, such as an array of speakers, may be used instead of the headphones 106. The number of speakers in the array may be any number greater than two.
[0024] In some embodiments, the system 100 may optionally include an extended reality (XR), such as virtual reality, mixed reality, or augmented reality, display headset 104. The XR display headset 104 may be configured to generate different views of a virtual reality (VR) environment based on the head orientation of the listener 102.
[0025] The XR display headset 104 may be communicatively coupled to the headphones 106. For example, the XR display headset 104 may detect a head orientation of the listener 102, and based on the detected head orientation of the listener 102, the XR display headset 104 may display different views of the VR environment and trigger the audio rendering unit 112 to generate different audio signals corresponding to the different views so that the listener 102 can hear different audio based on the head orientation of the listener 102.
[0026] 2A, 2B, 3A, and 3B illustrate the basic concept of HR filtering.
[0027] Figure 2A shows an audio wave 202 propagating in a first direction and reaching the right ear of 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 listener 102. As shown in Figures 2A and 2B, depending on the direction of arrival (DoA) of the audio wave (relative to the center of the head of listener 102), the audio wave is diffracted and / or reflected differently (see the paths formed by the dashed arrows in Figures 2A and 2B). For simplicity of illustration, only reflections are shown in Figures 2A and 2B.
[0028] HR filters are used to generate audio effects that take into account these different diffractions and reflections caused by different DoAs. In other words, depending on the DoA of the audio waves, the audio waves experience different temporal and spectral changes before being perceived by the listener 102, and the mathematical representation of such temporal and spectral changes is called an HR filter. Note that the reflection paths shown in Figures 2A and 2B are provided for illustrative purposes only and may differ from the actual reflection paths in a real-world environment.
[0029] 3A shows an example time-domain response of an HR filter for audio wave 202, and FIG. 3B shows an example time-domain response of an HR filter for audio wave 212. As shown in the figures, due to the different temporal and spectral changes that the audio waves experience, the waveforms, including amplitude and time of arrival (TOA) or onset delay, are different for audio wave 202 and audio wave 212. Note that the responses shown in FIGS. 3A and 3B are provided merely to illustrate some aspects of the effect of the HR filter and may therefore differ from real-world responses.
[0030] As explained above, the temporal and spectral changes in audio waves, also known as "sound waves," caused by HR filtering vary depending on the direction of arrival (DoA) of the audio waves as observed by the listener.
[0031] 4, a direction of arrival (DoA) vector 402 indicates the propagation direction of an audio wave in a 3D space defined by three axes 412, 414, and 416, where axis 412 is the front axis of the listener. The DoA vector 402 may be defined using two angles: an azimuth angle (φ) and an elevation angle (Θ). The azimuth angle (φ) is the angle between the axis 412, e.g., the x-axis, and a projection vector 404 corresponding to the projection of the DoA vector 402 onto the plane formed by axes 412 and 414. The elevation angle (Θ) is the angle between the DoA vector 402 and the projection vector 404.
[0032] In some embodiments, because the temporal and spectral variations of audio waves may vary depending on the azimuth angle (φ or Φ) and elevation angle (Θ or θ), different HR filters (representing such temporal and spectral variations) are provided for different combinations of azimuth angle (φ) and elevation angle (Θ).
[0033] 5 illustrates exemplary locations, also known as sample points 502, of a set of HR filters, also known as an HR filter set, on a two-dimensional (2D) sphere surrounding the listener 102. As shown in FIG. 4, each sample point (e.g., 490) may be defined by a pair of azimuth (φ) and elevation (Θ) angles. The azimuth angle is the angle between the axis 412 and the projection (e.g., 404) of a 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 the axes 412 and 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 may correspond to the center of the head of the listener 102. Since each sample point can be defined by a pair of elevation and azimuth angles on a 2D sphere, each sample point can also be defined in a 2D plane defined by an elevation and azimuth angle, as shown in FIG. 6.
[0034] The HR filter set may be used to generate audio depending on the head orientation of the listener 102. For example, the HR filter at sample point 512 may be used to generate audio corresponding to a first combination of azimuth and elevation angles (Φ1, θ1) corresponding to a first DoA of the listener 102, and the HR filter at sample point 514 included in the HR filter set may be used to generate audio corresponding to a second combination of azimuth and elevation angles (Φ2, θ2) corresponding to a second DoA of the listener 102.
[0035] As explained above, HR filters are often estimated from acoustic measurements as the impulse response of a linear dynamic system that transforms the original sound signal (input signal) into left and right ear signals (output signals), which may be measured in the ear channels of a listening subject at a predefined set of elevation and azimuth angles. However, as shown in Figure 5, the density of sample points in one region of a 2D sphere may differ from the density of sample points in another region of the 2D sphere.
[0036] Alternatively or additionally, 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, as shown in Figure 6. Note that in this disclosure, the density of sample points and the density of HR filters are used interchangeably, as each sample point corresponds to the location of each HR filter.
[0037] 6 shows a detailed view of the distribution of sample points where the HR filter is located across the elevation-azimuth plane. In this disclosure, the elevation-azimuth plane refers to the plane corresponding to the surface of a 2D sphere when the surface of the sphere is unfolded on a flat surface. As shown in FIG. 6, the density of sample points in the region between 30° and 60° elevation angles (i.e., region 702 in FIG. 7) and the region between −30° and −60° elevation angles (i.e., region 712 in FIG. 7) is lower than the density of sample points in the region between −30° and 30° elevation angles (i.e., region 704 in FIG. 7).
[0038] Similarly, the density of sample points in each of the regions between elevation angles of 60° and 90° (i.e., region 706 in FIG. 7 ) and between elevation angles of −60° and −90° (i.e., region 716 in FIG. 7 ) is lower than the density of sample points in the region between elevation angles of −30° and 30° (i.e., region 704 in FIG. 7 ).
[0039] As explained above, first, the HR filters are obtained by performing acoustic measurements. Thus, each measured HR filter is measured at a different location (Φ n ,θ n ) can correspond to acoustic measurements in TIFF2025539542000002.tif23170 where N is the total number of measured HR filters.
[0040] These measured HR filters can be modeled by determining an HR filter model having a set of model parameters for generating a modeled HR filter at any location (Φ, θ) based on the values of Φ and θ.
[0041] The HR filter model can be determined such that, given a certain model structure, the difference between the measured HR filter and the modeled HR filter is minimized. In other words, during modeling of the measured HR filter, a set of model parameters can be determined that results in the smallest difference between the measured HR filter and the modeled HR filter. TIFF2025539542000003.tif38170
[0042] However, due to the above-described imbalance between the densities of sample points in different regions, i.e., either the region of the 2D sphere shown in FIG. 5 or the region of the elevation-azimuth plane shown in FIG. 6, the determined HR filter model, i.e., the determined set of model parameters, may only be optimal 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.
[0043] More specifically, due to the imbalance, the modeling process may be adapted to find a set of model parameters to generate an HR filter that closely resembles an HR filter in regions where the density of sample points is high. As a result, the generated HR filter model may not be optimal for generating an HR filter similar to a measured HR filter that closely resembles a measured HR filter in regions where the density of HR filters is low.
[0044] To improve the modeling accuracy of the HR filter model in regions with low sample point density, a process 800 shown in Figure 8 may be performed. Process 800 may begin with step s802, which involves determining the spatial area, also known as the sample point area, of a sample point associated with each HR filter included in a set of HR filter sets that includes multiple measured HR filters. One way to determine the sample point area, hereafter the "SP area" of a sample point, is by equally dividing the area located between two adjacent sample points.
[0045] Sample point areas may be determined for samples represented on a sphere or in an elevation-azimuth plane. One advantage of representing samples in an elevation-azimuth plane is that samples farther from the equator of the sphere, i.e., closer to the poles, will be spread out and thereby represented by a larger SP area than samples closer to the equator of the sphere, i.e., farther from the poles. This means that sample points in both regions with low sampling density and regions represented by a relatively small number of sample points will correspond to a larger SP area than sample points in regions with high sampling density and / or represented by a relatively high number of samples. According to some embodiments herein, this allows sample points in regions with low sampling density to be weighted more heavily than sample points in regions with high sampling density.
[0046] Figure 9 shows the same elevation angle (e n ) but with different azimuth angles (a n,m-1 ,a n,m , and a n,m+1 ) to show how to divide the area between two adjacent sample points.
[0047] 5 and 9 , sample point 552 and sample point 554 are located at the same elevation angle but different azimuth angles. In this case, the right boundary of the SP area of sample point 552 can be determined based on the distance between sample point 552 and sample point 554, for example, defined in elevation angle or azimuth angle. More specifically, the right boundary of the SP area of sample point 552 can be determined so that the right boundary aligns with midpoint 902 between sample point 552 and sample point 554. Similarly, sample point 552 and sample point 556 are located at the same elevation angle but different azimuth angles. Here, the left boundary of the SP area 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 area of sample point 552 can be determined so that the left boundary aligns with midpoint 904 between sample point 552 and sample point 556.
[0048] Figure 10 shows the different elevation angles (e n-1 ,e n ,e n+15 and 10 , sample point 552 and sample point 574 are located at different elevation angles and different azimuth angles. In this case, the upper boundary of sample point 552 may 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 may be determined such that the upper boundary aligns with midpoint 1004 between sample point 552 and sample point 574. Similarly, sample point 552 and sample point 572 are located at different elevation angles and different azimuth angles. Here, the lower boundary of sample point 552 may 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 may be determined such that the lower boundary aligns with midpoint 1002 between sample point 552 and sample point 572.
[0049] 11 shows the SP area 1100 of the sample point 552 obtained from the method shown in FIG. 9 and FIG. 10. As explained above, the left and right boundaries of the SP area 1100 are determined using the method shown in FIG. 9, and the top and bottom boundaries of the SP area 1100 are determined using the method shown in FIG. 10.
[0050] 9-11 show that the shape of the SP area of sample point 552 is rectangular, it should be noted that the shape of the SP area may be any polygonal shape. Also, in other embodiments, the shape of the SP area may be circular or elliptical. In any of these embodiments, the size of the SP area may 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 points 554, 556, 572, and / or 574).
[0051] The scenario shown in Figure 11 is a general scenario. Therefore, some specific scenarios require further clarification. For example, when the azimuth angle is circular, the minimum elevation angle is -90 degrees ( TIFF2025539542000004.tif8170 radians) and the maximum elevation angle is 90 degrees ( TIFF2025539542000005.tif8170 radians). An azimuth angle is circular if it means that an azimuth angle of a degrees is equal to a+k*360 for any positive or negative integer value k, where the corresponding equation for a in radians is a+k*2π.
[0052] In one example, the azimuth angle of the sample point 556 in FIG. n,m-1 can be a negative azimuth value, which is 360+a n,m-1 An example of this is shown in Figure 6. When a sample point with an elevation angle of -60 degrees and an azimuth angle of 0 degrees is sample point 552 in Figure 11, a sample point with an elevation angle of -60 degrees and an azimuth angle of 345 degrees may correspond to sample point 556.
[0053] In another example, the azimuth angle of the sample point 554 in FIG. n,m+1 can be greater than or equal to 360 degrees, which means that a n,m+1 11. A sample point having an elevation angle of -60 degrees and an azimuth angle of 345 degrees may correspond to sample point 554.
[0054] In some scenarios, the sample point 552 in FIG. 11 is at an elevation angle e n For example, sample point 552 may be at θ=−70, φ=0. In this example, the azimuth span of sample point 552 (corresponding to the width of SP area 1100) may be set to be 360 degrees or 2×π radians, and the elevation span of sample point 552 (corresponding to the height of SP area 1100) may be determined as described above with respect to FIG. 10 (i.e., elevation span of sample point 552 = TIFF2025539542000006.tif8170).
[0055] In Figure 10, sample point 552 has adjacent sample points in two opposite elevation angles. More specifically, sample point 574 has adjacent sample points in the positive elevation angle direction (e n+1 >e n ) and sample point 572 is a sample point adjacent to sample point 552 in the negative direction of the elevation angle (e n-1 <e n 552 is a sample point adjacent to sample point 552 in the
[0056] However, in some scenarios, sample point 552 may have neighboring sample points in only one direction of elevation when sample point 552 is located in a certain area in the elevation-azimuth plane (e.g., area 690 or 692).
[0057] For example, if sample point 552 is at θ=−90, φ=0, there is no sample point adjacent to sample point 552 in the negative direction of the elevation angle, since no sample points exist at θ<−90. In such a case, the elevation span (corresponding to the height of SP area 1100) of sample point 552 may be determined as ½ of the difference between the elevation angle of sample point 552 and the elevation angle of the sample point adjacent to sample point 552 in one direction of the elevation angle (e.g., elevation span of sample point 552 = TIFF2025539542000007.tif8170, which corresponds to the upper boundary 1004 shown in FIG. 10 because if sample point 552 were at θ=−90, there would be no sample point at the elevation angle of sample point 572.
[0058] In another example, if sample point 552 is at θ=90, φ=0, there is no sample point adjacent to sample point 552 in the positive direction of the elevation angle because no sample points exist at θ>90. In such a case, the elevation span (corresponding to the height of SP area 1100) of sample point 552 may be determined as ½ of the difference between the elevation angle of sample point 552 and the elevation angle of the sample point adjacent to sample point 552 in one direction of the elevation angle (e.g., elevation span of sample point 552 = TIFF2025539542000008.tif8170, which corresponds to the lower boundary 1002 shown in FIG. 10 because if sample point 552 were at θ=90, there would be no sample point at the elevation angle of sample point 574.
[0059] FIG. 6 shows an example of a sample point area for multiple sample points.
[0060] Referring again to FIG. 8, after performing step s802, process 800 may proceed to step s804. Step s804 involves dividing the set of HR filters into a subset of HR filters for training an HR filter model, also known as a "training subset of HR filters," and a subset of HR filters for testing the generated HR filter model, also known as a "testing subset of HR filters." In other words, the training subset of HR filters is for generating an HR filter model, and the testing subset of HR filters is for testing, i.e., verifying / confirming, the generated HR filter model at sample points that were not used in training the HR filter model.
[0061] As explained above, since the modeling accuracy of the HR filter model is low, i.e., does not reach a desired or acceptable level, in regions with low sampling point density, according to some embodiments, all HR filters located at sample points in those regions are included in the training subset of HR filters and are therefore used when generating the HR filter model. In addition to the HR filters located at sample points in those regions, at least some HR filters located at sample points in regions with high sampling point density may also be included in the training subset of HR filters and are therefore used when generating the HR filter model.
[0062] According to some embodiments, the set of HR filters may be split into a training subset of HR filters and a test subset of HR filters based on the cumulative count distribution of the sample point areas of all available HR filters.
[0063] FIG. 12 shows the SP area count distribution for the exemplary set of elevation-azimuth sample points shown in FIG. 6, and FIG. 13 shows the cumulative SP area count distribution for the exemplary set of elevation-azimuth sample points shown in FIG. 6, including a training set specification based on the cumulative distribution.
[0064] After obtaining the SP area of each sample point in step s802, and before selecting a training subset of HR filters, the HR filters may be sorted based on the size of their SP area. For example, the HR filters may be sorted in descending order of spatial area. The table provided below shows the order in which the HR filters are sorted according to the size of their SP area. In the table below, the size of the SP area of each HR filter is indicated by the size of the table cell corresponding to each HR filter. TIFF2025539542000009.tif7170
[0065] More specifically, in the above table, the size of the SP area of HR filter 1 > the size of the SP area of HR filter 2 > the size of the SP area of HR filter 3... In some cases, the SP areas of two or more HR filters may have the same size. For example, in the table provided above, the size of the SP area of HR filter 5 is the same as the size of the SP area of HR filter 6 and the size of the SP area of HR filter 7. In such cases, HR filters having the same size SP area can be arranged in any order. Thus, the size of the SP area of HR filter 1 > the size of the SP area of HR filter 2 > the size of the SP area of HR filter 3 > the size of the SP area of HR filter 4 > the size of the SP area of HR filter 5 = the size of the SP area of HR filter 6 = the size of the SP area of HR filter 7 > the size of the SP area of HR filter 8. In summary, the HR filters can be arranged such that the size of SP area 1 ≥ the size of SP area 2 ≥ the size of SP area 3 ≥ the size of SP area 4...
[0066] One way to select the training subset of HR filters in step s802 is to first select the first m of the HR filters in the ordered list, or the first p of the total number of HR filters. m %, then select n of the remaining HR filters (or p of the remaining HR filters following the first m of the HR filters in the ordered list). n %) 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 50% of the remaining HR filters. n and m can be any positive value.
[0067] Another way to select the training subset of HR filters in step s802 is to select all HR filters located at sample points each having an SP area greater than the threshold Ψ, and then select q% of the HR filters located at sample points each having an SP area equal to or less than the threshold Ψ, where q% can be selected randomly or pseudo-randomly.
[0068] For example, assume that half of the HR filters, i.e., the first group of HR filters, each have an SP area greater than a threshold SP area size, and the other half of the HR filters, i.e., the second group of HR filters, each have an SP area less than or equal to the threshold SP area size. In such an example, the first group of HR filters and any HR filters randomly selected from the second group of HR filters are selected and included in the training subset of HR filters. The number / percentage of HR filters to be randomly selected can be set to any number. In one example, 50% of the HR filters located at sample points with SP areas equal to or less than the threshold value Ψ are selected to be included in the training subset of HR filters.
[0069] In some embodiments, the p of the HR filter n Instead of randomly selecting % or q%, the p of the HR filter n Different methods can be used to select the % or q%. For example, the selected p of the HR filter n % or q% may correspond to HR filters that are evenly distributed across the azimuth. More specifically, one or more groups (e.g., 602 and / or 604) of HR filters are identified from among the HR filters each having an SP area less than or equal to a threshold SP area size, with the HR filters in each group having the same size of SP area. Then, from within each group, p of the HR filters are n% or q% (e.g., 622, 624, 626, 628) may be selected such that the selected HR filters are evenly distributed across the azimuth angle.
[0070] Once the training subset of HR filters is selected, the remainder of the HR filters included in the set of HR filters may be used as a test subset of HR filters.
[0071] After performing step s804, process 800 may proceed to step s806. Step s806 includes determining a weight value for each HR filter included in the training subset of HR filters. In some embodiments, the weight value of a sample point is determined based on the size of the SP area of the sample point determined in step s802. However, in other embodiments, the weight value of a sample point is determined based on the size of the updated SP area of the sample point determined in step s805, which will be described in detail below.
[0072] More specifically, in some embodiments, N included in the training subset of HR filters T a weight vector containing the weight values of the HR filters TIFF2025539542000010.tif7170 is the SP area vector TIFF2025539542000011.tif7170, which can be obtained as a function of N T The weight vector may be a function of the SP area vector, which means that w=f(a), where HR filters with larger SP areas have higher weights compared to HR filters with smaller SP areas.
[0073] In one example, the weight vector may be determined as follows: TIFF2025539542000012.tif25170where, w nis the weight value of the n-th HR filter included in the training subset of HR filters, and a n is the size of the SP area of the nth HR filter, and a T is the total area of the elevation-azimuth plane, or part of the elevation-azimuth plane, being modeled, e.g., the sum of the SP areas of the HR filter shown in Figure 6, and N T is the total number of HR filters included in the training subset of HR filters.
[0074] In another example, the weight vector may be determined as follows: TIFF2025539542000013.tif25170
[0075] In a further example, the weight vector may be determined as follows: TIFF2025539542000014.tif20170
[0076] In a further example, the weight vector may be determined as follows: TIFF2025539542000015.tif20170
[0077] FIG. 14 shows a weight count distribution according to some embodiments, and FIG. 15 shows a cumulative weight count distribution according to some embodiments.
[0078] FIG. 16 shows the SP areas of the training set and the weight value variation determined based on the size of the SP area. In FIG. 16, the dots contained in each rectangle represent the weight value. The larger the dot, the higher the weight value. As shown in FIG. 16, the larger the SP area, the higher the weight value.
[0079] As described above, in some embodiments, the weight value of each HR filter included in the training subset may be determined based on the size of the SP area of the HR filter determined in step s802. However, in other embodiments, an updated SP area may be determined for each HR filter included in the training subset, and the weight value of the HR filter may be determined based on the updated SP area. In such embodiments, optional step s805 may be performed. Step s805 includes determining an updated SP area of the sample points associated with each HR filter included in the training subset. In step s802, the original SP area of the sample points associated with each HR filter may be determined based on the distance between the HR filter and its neighboring HR filter(s) in the initial set of HR filters. However, in step s805, the updated SP area of the sample points associated with each HR filter may be determined based on the distance between the HR filter and its neighboring HR filter(s) in the training subset of HR filters. In summary, in step s802, the SP area of the sample points of the HR filter is determined based on the relationship between the HR filter included in the initial set of HR filters and other HR filters, and in step s805, the SP area of the sample points of the HR filter is determined based on the relationship between the HR filter included in the training subset of HR filters and other HR filters.
[0080] After performing step s806, process 800 may proceed to step s808, which includes using the weight values obtained in step s806 in generating the HR filter model.
[0081] The training subset of HR filters is TIFF2025539542000016.tif7170, where Each of TIFF2025539542000017.tif7170 has an elevation angle θn and a certain azimuth angle φ n is a K-dimensional HR filter vector representing the HR filter in Modeled HR filters that model each of TIFF2025539542000018.tif7170 TIFF2025539542000019.tif7170 can be determined as follows: TIFF2025539542000020.tif8170 where {θ p :p=1,...,P} is a set of P basis functions across the elevation dimension, and {Φ q :q=1,...,Q} is the set of Q basis functions across the azimuthal dimension, and {e k :k=1,...,K} is the 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 the HR filter model.
[0082] The HR filter model (i.e., a set of optimal modeling parameters for the HR filter model, α) can be obtained by minimizing the modeling error across the HR filters in the training subset. Here, the modeling error indicates the difference between the measured HR filter and a modeled HR filter that models the measured HR filter. Thus, the closer the modeled HR filter is to the measured HR filter, the smaller the modeling error, which means better modeling of the HR filter model.
[0083] In some embodiments, the training subset H of HR filters T The modeling error across the HR filters in can be calculated as the weighted modeling error as follows: TIFF2025539542000021.tif8170 where J w(α) is the weighted modeling error of the HR filter set model with the set of model parameters (α), and N T is the number of HR filters included in the training subset of HR filters, and w n is the weight value for the nth HR filter in the training subset of HR filters, μ is a measure of the modeling error vector, and h n (θ n ,φ n ) is the nth HR filter in the training subset of HR filters, TIFF2025539542000022.tif7170 is a modeled HR filter that uses the set (α) model parameters to model the nth HR filter in the training subset of HR filters.
[0084] An often used μ-measure is the p-norm for p=1 and p=2, such that the p-norm of a K-dimensional vector x is Given by TIFF2025539542000023.tif7170.
[0085] Using the above equation to calculate the modeling error, the set of model parameters (α) that results in the minimum modeling error is determined, thereby determining the HR filter model.
[0086] By giving a greater weight to the difference between the measured HR filter and the modeled HR filter in regions with low sample point density, i.e., by giving a greater weight to the difference between the measured HR filter and the modeled HR filter in regions with high sample point density, a set of model parameters that is better adapted to reduce the difference between the measured HR filter and the modeled HR filter in regions with low sample point density can be obtained when calculating the modeling error. Thus, the resulting HR filter model will produce an HR filter that more accurately models the measured HR filter in regions with low sample point density.
[0087] FIG. 17 shows a process 1700 for generating an HR filter model for a set of head-related (HR) filters, according to some embodiments. Process 1700 may begin at step s1702. Step s1702 includes obtaining HR filter data indicating a plurality of sample points associated with a plurality of HR filters, the plurality of sample points including a first sample point. The plurality of HR filters associated with the plurality of sample points indicated by the HR filter data are a subset of the set of HR filters. Step s1704 includes calculating a first weight value for the first sample point, the first weight value varying based on the density of sample points in an area encompassing the first sample point. Step s1706 includes generating an HR filter model based on the calculated first weight value.
[0088] In some embodiments, the area encompassing the first sample point is the area of a virtual 2D sphere surrounding the listener, or the area in the elevation-azimuth plane corresponding to unfolding the surface of the virtual 2D sphere onto a flat surface.
[0089] In some embodiments, the process 1700 includes calculating one or more distances between the first sample point and one or more sample points, and the first weight value is based on the one or more distances.
[0090] In some embodiments, process 1700 includes determining a size of a first sample point area encompassing the first sample point, the size of the first sample point area being based on the one or more distances, and the first weight value being based on the size of the first sample point area, the first sample point area being a portion of the area encompassing the first sample point described in step s1704.
[0091] In some embodiments, the first sample point area encompasses only the first sample point and no other sample points.
[0092] In some embodiments, the process 1700 includes, for each sample point included in the plurality of sample points, determining a size of a sample point area that encompasses 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 area that encompasses the sample point, and the HR filter model is generated based on the calculated weight values.
[0093] In some embodiments, the size of the first sample point area encompassing 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.
[0094] In some embodiments, the size of the first sample point area encompassing 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 certain direction and a preset value related to 360 degrees or 2×π radians.
[0095] In some embodiments, the size of a first sample point area encompassing a 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.
[0096] 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.
[0097] In some embodiments, the sample points are defined by an elevation angle and an azimuth angle, and a first sample point, a first adjacent sample point, and a second adjacent sample point have the same elevation angle but different azimuth angles.
[0098] In some embodiments, the sample points are defined by an elevation angle and an azimuth angle, and a first sample point, a third adjacent sample point, and a fourth adjacent sample point have different elevation angles.
[0099] In some embodiments, the first sample point, the third adjacent sample point, and the fourth adjacent sample point have different azimuth angles, a 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 a 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.
[0100] In some embodiments, the shape of the first sample point area encompassing the first sample point is a polygon, and dimensions of the polygon are determined based on said one or more distances.
[0101] In some embodiments, the shape of the first sample point area encompassing the first sample point is a rectangle having a first dimension and a second dimension, the first dimension of the rectangle being determined based on 1 / 2 of the first distance and 1 / 2 of the second distance, and the second dimension of the rectangle being determined based on 1 / 2 of the third distance and 1 / 2 of the fourth distance.
[0102] In some embodiments, the process 1700 includes obtaining HR filter data indicating a set of sample points associated with a set of HR filters, and ordering the sample points included in the set of sample points based on the size of the sample point area of each sample point included in the set of sample points, thereby obtaining an ordered list of sample points, and a plurality of sample points are selected from the ordered list of sample points.
[0103] In some embodiments, the sample points in the ordered list are ordered in descending order of the size of the sample point area that encompasses the sample points, and the plurality of sample points may be the first m of the sample points contained in the ordered list, or the first p of the sample points contained in the ordered list. m %, m is a positive integer, and / or p m is a positive real number.
[0104] In some embodiments, the process 1700 includes selecting a first group of sample points from an ordered list of sample points, and selecting a second group of sample points from the ordered list of sample points excluding the first group of sample points, wherein the sample points are arranged in the ordered list in descending order of size of a sample point area that encompasses the sample points, and the first group of sample points is the first m1 of the sample points included in the ordered list, or the first m2 of the sample points included in the ordered list. TIFF2025539542000024.tif7170%, and the second group of sample points is m2 of the sample points in the ordered list excluding the first group of sample points, or m1 of the sample points in the ordered list excluding the first group of sample points. TIFF2025539542000025.tif7170%, and the plurality of sample points includes a first group of sample points and a second group of sample points.
[0105] In some embodiments, the second group of sample points may be the first m2 of the sample points in the ordered list excluding the first group of sample points, or the first m2 of the sample points in the ordered list excluding the first group of sample points. TIFF2025539542000026.tif7170%, or m2 randomly selected sample points included in the ordered list excluding the first group of sample points, or m2 randomly selected sample points included in the ordered list excluding the first group of sample points TIFF2025539542000027.tif7170% corresponds to randomly selected sample points.
[0106] In some embodiments, the first weight value is f(a1,a T ), where a1 corresponds to the size of the first sample point area encompassing the first sample point, and a T corresponds to the size of the area that encompasses multiple sample points.
[0107] In some embodiments, TIFF2025539542000028.tif8170, where N T is the total number of sample points included in the plurality of sample points.
[0108] In some embodiments, the HR filter model is generated based on minimizing a modeling error over a plurality of sample points, the modeling error being calculated based on the first weight value.
[0109] In some embodiments, the HR filter model is generated based on minimizing a modeling error over multiple sample points, where the modeling error is calculated based on weight values.
[0110] In some embodiments, TIFF2025539542000029.tif8170, where J w(α) is the modeling error, α is the set of model parameters of the HR filter model, and w n is the weight value associated with the nth sample point, and N T is the total number of sample points, TIFF2025539542000030.tif7170 is an elevation angle θ n and the azimuth angle φ n and a modeled HR filter associated with a set of model parameters α, where h n is the elevation angle θ n and azimuth angle φ n is the measured HR filter associated with and μ is a measure of the modeling error vector.
[0111] Figure 18 is a block diagram of an apparatus 1800, according to some embodiments, for performing the methods described above, for example, for process 800 shown in Figure 8 or process 900 shown in Figure 9. As shown in Figure 18, the apparatus 1800 includes a processing circuit (PC) 1802 that may include one or more processors (P) 1855 (e.g., a general-purpose microprocessor and / or one or more other processors, such as an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), etc.), which may be co-located in a single housing or in a single data center or may be geographically distributed (i.e., the apparatus 1800 may be a distributed computing device), and at least one network interface 1848, each network interface 1848 configured to enable the apparatus 1800 to communicate with the network interface The PC 1802 may comprise at least one network interface 1848 and one or more storage units, a.k.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, which stores a computer program (CP) 1843 comprising computer-readable instructions (CRI) 1844. The CRM 1842 may be a non-transitory computer-readable medium, such as a magnetic medium, eg, a hard disk, an optical medium, a memory device, eg, a random access memory, a flash memory, or the like.In some embodiments, the CRI 1844 of the computer program 1843, when executed by the PC 1802, configures the CRI to cause the device 1800 to perform the steps described herein, e.g., the steps described herein with reference to flowcharts. In other embodiments, the device 1800 may be configured to perform the steps described herein without the need for code. That is, for example, the PC 1802 may simply consist of one or more ASICs. Thus, features of the embodiments described herein may be implemented in hardware and / or software.
[0112] Overview of the embodiment A1. A method (1700) for generating a head-related (HR) filter model for a set of HR filters, the method comprising: obtaining HR filter data indicative of a plurality of sample points associated with a plurality of HR filters (s1702), the plurality of sample points including a first sample point; Calculating a first weight value for the first sample point (s1704), the first weight value varying based on a density of the sample point in an area encompassing the first sample point; generating an HR filter model based on the calculated first weight values (s1706); A method (1700) comprising: A1a. The method of embodiment A1, wherein the area is the area of a virtual 2D sphere surrounding the listener or the area in the elevation-azimuth plane corresponding to unfolding the surface of the virtual 2D sphere onto a flat surface. A2. The method is Calculating one or more distances between the first sample point and one or more sample points. Including, The method of embodiment A1 or A1a, wherein a first weight value is based on the one or more distances. A3. The method is Determining a size of a first sample point area encompassing the first sample point. Including, a size of a first sample point area based on the one or more distances; The method of embodiment A2, in which the first weight value is based on the size of the first sample point area. A4. The method of embodiment A3, in which the first sample point area encompasses only the first sample point and no other sample points. A5. The method is determining, for each sample point included in the plurality of sample points, a size of a sample point area that includes each sample point; For each sample point included in the plurality of sample points, calculating a weight value for each sample point based on the determined size of a sample point area that includes each sample point; Including, The method of embodiment A4, in which an HR filter model is generated based on the calculated weight values. A6. A method according to any one of embodiments A3 to A5, wherein the size of a first sample point area encompassing 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 size of the first sample point area that includes the first sample point is 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 the 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; a fourth distance between the first sample point and a fourth adjacent sample point adjacent to the first sample point in the fourth direction; The method of embodiment A6, wherein the method is determined based on the following: A8. the first direction and the second direction are opposite to each other; The third direction and the fourth direction are opposite to each other. The method of embodiment A7. A9. The sample points are defined by elevation and azimuth angles; The first sample point, the first adjacent sample point, and the second adjacent sample point have the same elevation angle but different azimuth angles. The method of embodiment A7 or A8. A10. The sample points are defined by elevation and azimuth angles; the first sample point, the third adjacent sample point, and the fourth adjacent sample point have different elevation angles; The method of any one of embodiments A7 to A9. A11. the first sample point, the third adjacent sample point, and the fourth adjacent sample point have different azimuth angles; a third distance between the first sample point and a third adjacent sample point is a difference between an elevation angle of the first sample point and an elevation angle of the third adjacent sample point; a fourth distance between the first sample point and a 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; The method of embodiment A10. A12. the shape of the first sample point area that includes the first sample point is a polygon; dimensions of the polygon are determined based on said one or more distances; The method of any one of embodiments A3 to A11. A13. a shape of the first sample point area that includes the first sample point is a rectangle having a first dimension and a second dimension; a first dimension of the rectangle is determined based on one-half of the first distance and one-half of the second distance; a second dimension of the rectangle is determined based on 1 / 2 of the third distance and 1 / 2 of the fourth distance; The method of any one of embodiments A7 to A12. A13a. The method is obtaining HR filter data indicative of a set of sample points associated with a set of HR filters; ordering the sample points included in the set of sample points based on the size of the SP area of each sample point included in the set of sample points, thereby obtaining an ordered list of the sample points; Including, The method of any one of embodiments A1 to A13, wherein the plurality of sample points is selected from an ordered list of sample points. A14. In the ordered list, the sample points are arranged in descending order of the size of the sample point area that encompasses the sample points; The sample points are the first m of the sample points in the ordered list, or the first p of the sample points in the ordered list. m corresponds to %, m is a positive integer, and / or p m is a positive real number, The method of embodiment A13a. A14a. The method is selecting a first group of sample points from the ordered list of sample points; selecting a second group of sample points from the ordered list of sample points excluding the first group of sample points; Including, In the ordered list, the sample points are arranged in descending order of the size of the sample point area that encompasses the sample points; The first group of sample points is the first m1 sample points in the ordered list, or the first m1 sample points in the ordered list. TIFF2025539542000031.tif7170% compatible, The second group of sample points may be m2 of the sample points in the ordered list excluding the first group of sample points, or m3 of the sample points in the ordered list excluding the first group of sample points. TIFF2025539542000032.tif7170% compatible, The method of embodiment A13a, in which the plurality of sample points includes a first group of sample points and a second group of sample points. A14b. The second group of sample points is The first m2 sample points in the ordered list, or the first m sample points in the ordered list excluding the first group of sample points TIFF2025539542000033.tif7170%, or m randomly selected sample points contained in the ordered list excluding the first group of sample points, or m randomly selected sample points contained in the ordered list excluding the first group of sample points TIFF2025539542000034.tif7170% randomly selected sample points The method according to embodiment A14a, corresponding to A15. The first weight value is f(a1,a T ), where a1 corresponds to the size of the first sample point area encompassing the first sample point, and a T The method of any one of embodiments A3 to A14b, wherein x corresponds to the size of an area encompassing the plurality of sample points. A16. TIFF2025539542000035.tif8170, where N T The method of embodiment A15, wherein σ is the total number of sample points included in the plurality of sample points. A17. An HR filter model is generated based on minimizing the modeling error over multiple sample points; A modeling error is calculated based on the first weight value. The method of any one of embodiments A1 to A16. A18. An HR filter model is generated based on minimizing the modeling error over multiple sample points; A modeling error is calculated based on the weight values. The method of any one of embodiments A5 to A16. A19. TIFF2025539542000036.tif8170J w (α) is the modeling error, α is the 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 sample points, TIFF2025539542000037.tif7170 is an elevation angle θ n and the azimuth angle φ n and a modeled HR filter associated with a set of model parameters α, h n But the elevation angle θ n and azimuth angle φ n is the measured HR filter associated with μ is a measure of the modeling error vector, The method of embodiment A18. B1. A computer program (1800) comprising instructions (1844) that, when executed by a processing circuit (1802), cause the processing circuit to perform a 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 an electronic signal, an optical signal, a radio signal, and a computer-readable storage medium. C1. An apparatus (1800) for generating a head-related (HR) filter model for a set of HR filters, the apparatus comprising: obtaining HR filter data indicative of a plurality of sample points associated with a plurality of HR filters (s1702), the plurality of sample points including a first sample point; Calculating a first weight value for the first sample point (s1704), the first weight value varying based on a density of the sample point in an area encompassing the first sample point; generating an HR filter model based on the calculated first weight values (s1706); The apparatus (1800) is configured to perform the above. C2. An apparatus as described in embodiment C1, wherein the apparatus is configured to perform a method as described in at least one of embodiments A2 to A19. D1. An apparatus (1800) comprising: A processing circuit (1802); Memory (1841) and and wherein the memory includes instructions executable by the processing circuitry, such that the apparatus is operable to perform a method according to at least one of embodiments A1 to A19.
[0113] conclusion
[0114] While various embodiments have been described herein, it should be understood that these embodiments have been presented by way of example only, and not limitation. Thus, the breadth and scope of the present disclosure should not be limited by any of the above-described exemplary embodiments. Moreover, unless otherwise indicated herein or clearly contradicted by context, any combination of the above-described elements in all possible variations thereof is encompassed by the present disclosure.
[0115] Additionally, while the processes described above and illustrated in the figures have been shown as a sequence of steps, this has been done for purposes of illustration only, and it is therefore 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 a head-related (HR) filter model for a set of HR filters, the method comprising: obtaining HR filter data indicative of a plurality of sample points associated with a plurality of HR filters (s1702), the plurality of sample points including a first sample point; Calculating a first weight value for the first sample point (s1704), the first weight value varying based on a density of sample points in an area encompassing the first sample point; generating the HR filter model based on the calculated first weight values (s1706); The method (1700) includes:
2. 2. The method of claim 1 , wherein the area encompassing the first sample point is an area of a virtual 2D sphere surrounding the listener, or an area in an elevation-azimuth plane corresponding to unfolding the surface of the virtual 2D sphere onto a flat surface.
3. The method comprises: Calculating one or more distances between the first sample point and one or more sample points. Including, The method of claim 1 or 2, wherein the first weight value is based on the one or more distances.
4. The method comprises: determining a size of a first sample point area that encompasses the first sample point; Including, the size of the first sample point area is based on the one or more distances; The method of claim 3 , wherein the first weight value is based on the size of the first sample point area.
5. The method of claim 4 , wherein the first sample point area encompasses only the first sample point and no other sample points.
6. The method comprises: determining, for each sample point included in the plurality of sample points, a size of a sample point area that includes the sample point; 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 area containing the sample point; Including, The method of claim 5 , wherein the HR filter model is generated based on the calculated weight values.
7. 7. The method of claim 4, wherein the size of the first sample point area encompassing 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 size of the first sample point area that includes the first sample point is a distance between the first sample point and an adjacent sample point adjacent to the first sample point in a certain direction; A preset value related to 360 degrees or 2 x π radians The method of claim 7 , wherein the determination is based on:
9. The size of the first sample point area that includes the first sample point is 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; a fourth distance between the first sample point and a fourth adjacent sample point adjacent to the first sample point in a fourth direction; The method of claim 7 , wherein the determination is based on:
10. the first direction and the second direction are opposite to each other; the third direction and the fourth direction are opposite to each other; 10. The method of claim 9.
11. 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; the first sample point, the first adjacent sample point, and the second adjacent sample point have the same elevation angle but different azimuth angles; 11. The method according to claim 9 or 10.
12. each of the third adjacent sample point and the fourth adjacent sample point is defined by an elevation angle and an azimuth angle; the first sample point, the third adjacent sample point, and the fourth adjacent sample point have different elevation angles; 12. The method according to any one of claims 9 to 11.
13. 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; 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; The method of claim 12.
14. the shape of the first sample point area that includes the first sample point is a polygon; the dimensions of the polygon are determined based on the one or more distances; 14. The method according to any one of claims 4 to 13.
15. the shape of the first sample point area that includes 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 one-half of the first distance and one-half of the second distance; the second dimension of the rectangle is determined based on 1 / 2 of the third distance and 1 / 2 of the fourth distance; 15. The method according to any one of claims 9 to 14.
16. The method comprises: obtaining HR filter data indicative of a set of sample points associated with said set of HR filters; ordering the sample points included in the set of sample points based on the size of a sample point area of each sample point included in the set of sample points, thereby obtaining an ordered list of sample points; Including, The method of claim 1 , wherein the plurality of sample points are selected from the ordered list of sample points.
17. In the ordered list, the sample points are arranged in descending order of the size of the sample point area that contains the sample points; The plurality of sample points may be the first m of the sample points in the ordered list or the first p of the sample points in the ordered list. m corresponds to %, m is a positive integer, and / or p m is a positive real number, 17. The method of claim 16.
18. The method comprises: selecting a first group of sample points from the ordered list of sample points; selecting a second group of sample points from the ordered list of sample points excluding the first group of sample points; Including, In the ordered list, the sample points are arranged in descending order of the size of the sample point area that contains the sample points; The first group of sample points is the first m sample points included in the ordered list. 1 or the first of the sample points contained in said ordered list corresponds to %, The second group of sample points is m of the sample points included in the ordered list excluding the first group of sample points. 2 or all of the sample points included in the ordered list excluding the first group of sample points. corresponds to %, The method of claim 16 , wherein the plurality of sample points includes the first group of sample points and the second group of sample points.
19. The second group of sample points comprises: The first m of the sample points included in the ordered list excluding the first group of sample points 2 or the first of the sample points included in the ordered list excluding the first group of sample points. %,or m included in the ordered list excluding the first group of sample points 2 randomly selected sample points or sample points included in the ordered list excluding the first group of sample points % of randomly selected sample points 20. The method of claim 18, corresponding to
20. The first weight value is f(a 1 , a T ) where a 1 corresponds to the size of the first sample point area that includes the first sample point, and a T 20. The method of claim 4, wherein σ corresponds to the size of an area encompassing the plurality of sample points.
21. wherein N T The method of claim 20 , wherein is the total number of sample points included in the plurality of sample points.
22. the HR filter model is generated based on minimizing a modeling error across the plurality of sample points; the modeling error is calculated based on the first weight value; 22. The method of any one of claims 1 to 21.
23. the HR filter model is generated based on minimizing a modeling error across the plurality of sample points; the modeling error is calculated based on the weight values; 22. The method of any one of claims 6 to 21.
24. 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, But the elevation angle θ n and the azimuth angle φ n and a modeled HR filter associated with said set of model parameters α, h n But the elevation angle θ n and azimuth angle φ n is the measured HR filter associated with μ is a measure of the modeling error vector, 24. The method of claim 23.
25. A computer program (1800) comprising instructions (1844) that, when executed by a processing circuit (1802), cause the processing circuit to perform the method of any one of claims 1 to 24.
26. 26. A carrier containing the computer program of claim 25, wherein the carrier is one of an electronic signal, an optical signal, a radio signal, and a computer readable storage medium.
27. 1. An apparatus (1800) for generating a head-related (HR) filter model for a set of HR filters, the apparatus comprising: obtaining HR filter data indicative of a plurality of sample points associated with a plurality of HR filters (s1702), the plurality of sample points including a first sample point; Calculating a first weight value for the first sample point (s1704), the first weight value varying based on a density of sample points in an area encompassing the first sample point; generating the HR filter model based on the calculated first weight values (s1706); The apparatus (1800) is configured to perform the above.
28. 28. Apparatus according to claim 27, wherein the apparatus is configured to carry out a method according to at least one of claims 2 to 24.
29. An apparatus (1800) comprising: A processing circuit (1802); Memory (1841) and 25. An apparatus (1800) comprising: