WO2009006819A1 - Procédé de recherche de livre de code fixe, système de recherche et support lisible par ordinateur - Google Patents

Procédé de recherche de livre de code fixe, système de recherche et support lisible par ordinateur Download PDF

Info

Publication number
WO2009006819A1
WO2009006819A1 PCT/CN2008/071485 CN2008071485W WO2009006819A1 WO 2009006819 A1 WO2009006819 A1 WO 2009006819A1 CN 2008071485 W CN2008071485 W CN 2008071485W WO 2009006819 A1 WO2009006819 A1 WO 2009006819A1
Authority
WO
WIPO (PCT)
Prior art keywords
search
pulses
code book
codebook
pulse
Prior art date
Application number
PCT/CN2008/071485
Other languages
English (en)
French (fr)
Inventor
Dejun Zhang
Lixiong Li
Original Assignee
Huawei Technologies Co., Ltd.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co., Ltd. filed Critical Huawei Technologies Co., Ltd.
Priority to JP2009548568A priority Critical patent/JP5166447B2/ja
Priority to EP08773063A priority patent/EP2101321A4/en
Priority to KR1020097012233A priority patent/KR101169969B1/ko
Publication of WO2009006819A1 publication Critical patent/WO2009006819A1/zh
Priority to US12/477,989 priority patent/US8515743B2/en

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/08Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
    • G10L19/10Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a multipulse excitation
    • G10L19/107Sparse pulse excitation, e.g. by using algebraic codebook
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/08Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
    • G10L19/10Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a multipulse excitation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/08Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L2019/0001Codebooks
    • G10L2019/0013Codebook search algorithms

Definitions

  • the present invention relates to vector coding techniques, and more particularly to a fixed codebook search method, searcher, and computer readable medium.
  • one of the fixed codebooks is often used - the digital book encodes the adaptively filtered residual signal.
  • the generation of digital books focuses on the pulse position of the target signal.
  • the amplitude of the pulse is defaulted to 1, so only the sign and position of the pulse need to be quantized; of course, different amplitudes can be represented by superimposing multiple pulses at the same position.
  • searching for the position of each pulse of the best generation digital book corresponding to the target signal is a very important part.
  • the Depth-First Tree Search Procedure method is taken as an example to illustrate a suboptimal search method used in the current generation of digital book pulse position search.
  • the number of pulses to be searched varies depending on the code rate, assuming N. If you do not impose other restrictions, searching for N pulses in 64 locations is computationally too complex. To this end, the pulse position of the generation digital book is constrained, and 64 positions are divided into M tracks (Track). A typical track division method is shown in Table 1.
  • Tl 1 5, 9, 13, 17, 21, 25, 29, 33, 37, 41, 45, 49, 53, 57, 61 T2 2, 6, 10, 14, 18, 22, 26, 30, 34, 38, 42, 46, 50, 54, 58, 62
  • the first level search is performed on T0-T1, T2-T3.
  • P1 searches among the 16 positions of the track T1; the optimal positions of P0 and P1 are determined from the searched 4x16 position combinations according to the set evaluation criteria.
  • the second level search is performed on T1-T2, T3-T0, and the process is similar to the first level search.
  • the third level search is also performed on T2-T3, T0-T1, and the fourth level search is performed on T3-T0, T1-T2.
  • the inventors of the present invention found that although the above search algorithm can obtain good speech quality under various code rates, the search frequency is large and the operation complexity is large. .
  • Embodiments of the present invention provide a fixed codebook search method, a fixed codebook searcher, and a computer readable Storage media, with lower computational complexity, achieve better voice quality.
  • an embodiment of the present invention provides a fixed codebook search method, including: acquiring a basic codebook, where the basic codebook includes position information of N pulses on M tracks, where N and M are positive integers; One pulse is used as a search pulse, the n pulses are part of the N pulses, and n is a positive integer less than N
  • the number of the n search pulses is replaced with another position on the track to obtain a search code book; the above search process is performed K times, K is a positive integer greater than or equal to 2, wherein at least one search process Two or more search pulses are selected, and the search pulses selected in each search are not all the same; the best codebook of the current round is selected from the basic code book and the search code book according to the set evaluation criteria.
  • the embodiment of the invention further provides a fixed codebook searcher, comprising: a basic codebook unit,
  • I provides a base code book
  • the basic code book includes position information of N pulses on M tracks, N and M are positive integers; a number of cycle units for selecting a search pulse, and determining the search pulse in a round
  • the number of times of the loop is K times, and the following operations are performed: n pulses are selected as search pulses, the n pulses are portions of the N pulses, n is a positive integer smaller than N; K is a positive integer greater than or equal to 2
  • selecting at least one of K times to select two or more search pulses, the search pulse selected in each search is not all-phase
  • a search unit configured to replace the positions of the n search pulses with other positions on the track according to the selection of the cycle unit by the number of times, to obtain a search code book;
  • the predetermined evaluation criterion selects the best codebook of the current round from the basic codebook and the search code book provided by the search unit through K cycles.
  • Embodiments of the present invention provide a computer readable storage medium, including computer program code,
  • the computer program code is executed by a computer unit such that the computer unit:
  • the basic code book includes position information of N pulses on M tracks, and N and M are positive integers;
  • N pulses are selected as search pulses, the n pulses being part of the N pulses, and n being a positive integer less than N;
  • K is a positive integer greater than or equal to 2, wherein at least one search pulse selects two or more search pulses, and the search pulses selected in each search are not all the same;
  • the best codebook of the current round is selected from the basic code book and the search code book according to the set evaluation criteria.
  • the above method or apparatus selects the best code book by performing a replacement search on different pulse combinations starting from the code book, and at least one of the searches is performed on a plurality of pulses. Since the best codebook is selected from a plurality of different combinations of replacements, it can ensure the globality of the search as much as possible; reduce the number of searches; optimize the selection of search pulses by successively selecting different combinations of search pulses. , making the search process more efficient, thus improving the quality of search results.
  • FIG. 1 is a schematic diagram of a conventional depth-first tree search method
  • FIG. 2 is a schematic flow chart of a method for searching for a fixed codebook according to an embodiment of the present invention
  • FIG. 3 is a schematic flowchart of a method for searching for a fixed codebook according to Embodiment 2 of the present invention
  • FIG. 4 is a schematic flow chart of a method for searching for a fixed codebook according to Embodiment 3 of the present invention.
  • FIG. 5 is a schematic flowchart of a method for searching for a fixed codebook according to Embodiment 4 of the present invention.
  • FIG. 6 is a schematic flow chart of a method for searching for a fixed codebook according to Embodiment 5 of the present invention.
  • FIG. 7 is a schematic diagram showing the logical structure of a fixed codebook searcher according to Embodiment 6 of the present invention.
  • FIG. 8 is a schematic diagram of a logical structure of a fixed codebook searcher according to Embodiment 7 of the present invention.
  • FIG. 9 is a schematic diagram showing the logical structure of a fixed codebook searcher according to an eighth embodiment of the present invention.
  • FIG. 10 is a schematic diagram showing the logical structure of a fixed codebook searcher according to Embodiment 9 of the present invention.
  • Embodiments of the present invention provide a fixed codebook search method. Starting from a basic codebook, an optimal codebook is selected by performing a search search for different I pulse combinations, and at least one search performs at least one pulse. .
  • the embodiment of the invention also provides a corresponding fixed codebook searcher.
  • Embodiment 1 A fixed codebook search method, as shown in FIG. 2, includes:
  • A1 Acquire a basic codebook, where the basic codebook includes position information of N pulses on M tracks, and N and M are positive integers.
  • the basic codebook referred to herein is an initial codebook used as a basis for search when performing a round of search.
  • the number distribution of the pulses to be searched on the respective tracks has been determined based on the information such as the code rate.
  • obtaining the base code book is to obtain the initial position of each pulse on each track.
  • the initial position of the pulse can be determined by any of the following methods, which is not limited in this embodiment. E.g:
  • an optional reference signal is a "pulse position maximum likelihood function" (also called a pulse amplitude selection signal), and the function can be expressed as:
  • d(i) is the dimensional component of the vector signal d determined by the target signal to be quantized, and can generally be expressed as a convolution of the target signal with the impulse response of the pre-filtered weighted synthesis filter
  • r LTP (i ) is the dimensional component of the residual signal r predicted for a long time
  • E d is the energy of the signal d
  • E r is the energy of the signal r
  • a is a scaling factor, which controls the dependence of the reference signal d(i)
  • Different code rates may have different values. You can calculate the different values of b(i) at 64 positions, and select the position where b(i) has the largest value in TO ⁇ T3.
  • I is the initial position of the pulse.
  • selecting n pulses as search pulses the n pulses being part of the N pulses, n being a positive integer smaller than N
  • the specific process is: selecting n pulses from the Ns pulses as search pulses,
  • the Ns pulses are all or part of the N pulses, Ns is a positive integer less than or equal to N, and n is a positive integer less than Ns; the position of the pulse other than the n search pulses in the fixed base codebook
  • the positions of the n search pulses are respectively replaced with other positions on the track to obtain a search code.
  • the pulse that can be selected as the search pulse can be all Ns pulses, or just some of them
  • a set consisting of "pulses that can be selected as search pulses” is called “Ns set”.
  • Ns set a set consisting of "pulses that can be selected as search pulses”
  • Selecting n pulses from the Ns pulses as the search pulse can be performed by various selection methods, which are not limited in the examples. For example, you can:
  • n is greater than or equal to 2, randomly select the combination of search pulses
  • the possible choices include: the search pulse is P0, Pl, P2; the search pulse is P0, P2, P3; The search pulses are P0, Pl, P3; the search pulses are PI, P2, P3.
  • the corresponding position in the base code book is replaced with other positions on its track to obtain a search code book.
  • step A3 The search process of step A2 is performed K times as a round.
  • the selected search pulses are not all the same, K is a positive integer greater than or equal to 2, wherein at least one search process selects; two or two The above search pulse.
  • the number of times K2 is executed in the loop A can be an upper limit value of the specific setting.
  • K search process it is considered that a round of search is completed.
  • the embodiment of the present invention may also not limit the K value, that is, the value of K is uncertain, and some search is performed.
  • the termination condition is used to judge whether the search is completed or not. For example, when the selected search pulse has traversed the Ns set, it can be judged that the search is completed.
  • the search termination condition is not fulfilled and is considered to be completed.
  • the embodiment requires that at least one of the K search processes be performed on two or more pulses, and the selected search pulses may be distributed in the same or different tracks. on.
  • the process of comparing and evaluating the search code book and the base code book can be performed in synchronization with the process of the step A2 search.
  • a "preferred code book" can be set and its value initialized to the base code book; then, after obtaining a search code book, it is compared with the current preferred code book, if it is determined that the search code book is better than the preferred code book.
  • the book replaces the current preferred code book with the search code book; until all K search processes are completed; the obtained preferred code book is the best code book of the current round. It should be noted that the basis of each search process is still the basic code book, but the object of comparative evaluation is the preferred code book.
  • K search process It is also possible to focus on the comparison of the results of the K search process. For example, a preferred codebook obtained for each search process can be saved, and then K preferred codebooks are collectively compared, from which the best codebook of the current round is selected.
  • the criteria for the comparison and evaluation of the search code book and the basic code book may be determined according to the application, and the embodiment is not limited.
  • a cost function (Qk) which is usually used to measure the quality of a digital book, can be used for comparison. It is generally considered that the larger the Qk value is, the better the codebook quality is. Therefore, a codebook having a large Qk value can be selected as a preferred codebook.
  • This embodiment selects the best codebook by performing a replacement search on different combinations of pulses, and at least one of the searches is performed on a plurality of pulses. Since the best codebook is selected from a plurality of different combinations of replacements; obtaining, the number of searches can be reduced while ensuring the globality of the search as much as possible; and since at least one search is performed on a plurality of pulses, the correlation between the pulses is made. The impact of sex on search results can be considered to further ensure the quality of search results.
  • Embodiment 2 A method for searching for a fixed codebook. This embodiment provides a method based on the first embodiment. A specific search pulse selection method. The process is shown in Figure 3, including the steps:
  • Bl Acquire a basic codebook, where the basic codebook includes position information of N pulses on M tracks, and N and M are positive integers.
  • This step can be performed by referring to step A1 in the first embodiment.
  • select ⁇ ⁇ search pulses from Ns pulses; Ns has the same meaning as in the first embodiment, ⁇ is a value greater than or equal to 2, and remains unchanged in the current round of search; selected ⁇ search pulses may be all kinds of C s a combination thereof, selection is not repeated.
  • step B3 the search process of step B2 is performed K times as one round, and in each search process, the selected search; the cable impulses are not all the same, 2 ⁇ K ⁇ C S , wherein at least one search process selects two or more Search pulse.
  • n Since the value of n is fixed, and each chosen combination of search pulses are not repeated, so most search C s Ns times can traverse the entire set of possible combinations.
  • the upper limit of the K value it is also possible to limit the upper limit of the K value to less than C s , at which point all possible combinations will not be fully traversed, but the selected search pulse may still traverse the Ns set.
  • I B4. Select the best code book of the current round from the basic code book and the search code book according to the set evaluation criteria.
  • This step can be performed by referring to step A4 in the first embodiment.
  • a method of fixing n values in a round search and sequentially selecting different search pulse combinations is adopted, and the selection method of the search pulses is optimized, so that the search process is more effective, and if further searching, the possible combinations of the cable pulses can be Further enhance the global significance of search results and improve the quality of search results.
  • Embodiment 3 A fixed codebook search method, which provides a method for performing multiple rounds of execution on the basis of Embodiments 1 and 2.
  • the process is shown in Figure 4, including the steps: Cl, acquiring a basic code book, where the basic code book includes position information of N pulses on M tracks,
  • N, M are positive integers.
  • This step can be performed by referring to step A1 in the first embodiment.
  • This step can be performed by referring to steps ⁇ 2 to ⁇ 4 in the first embodiment, or referring to the steps in the second embodiment.
  • the search pulse can be selected from all pulses in the base codebook.
  • the determined values of n may be the same or different in different rounds.
  • step C3. Determine whether the number of rounds of the search G reaches the set upper limit of the G value, and if yes, execute step C5, otherwise, execute step C4.
  • step C4 Replace the original base code book with the best code book as a new base code book, and return to step C2 to continue searching for a new round of the best code book.
  • the multi-round search method is used to obtain the final best code book, which can further improve the quality of the search result.
  • the search method provided by embodiment one or two may also be used in only one round of search, and other search methods may be employed in other rounds before or after.
  • Embodiment 4 A fixed codebook search method, which provides another method of cyclically executing multiple rounds on the basis of Embodiments 1 and 2. The process is shown in Figure 5, including the steps:
  • D1 Acquire a basic code book, where the basic code book includes position information of N pulses on M tracks, and N and M are positive integers.
  • This step can be performed by referring to step A1 in the first embodiment.
  • This step can be performed by referring to steps A2 to A4 in the first embodiment, or by referring to steps B2 to B4 in the second embodiment.
  • Ns N can be set in the first round of search.
  • step D3 Determine whether the number of rounds of the search G reaches the set upper limit of the G value, or determine whether the Ns set of the next round is empty. If yes, execute step D5, otherwise execute step D4.
  • the Ns set of each round can be determined according to the search result of the previous round, and the specific determining manner is shown in step D4. If the Ns set is empty, the search may be considered complete; or the search completion may be determined when the Ns set is not empty according to the set upper limit of the G value. D4, replacing the original basic code book with the best code book as a new basic code book, to obtain a pulse with a fixed position and belonging to the original Ns pulse in the search process of the best code book as a new Ns pulses, return to step D2 to continue searching for a new round of the best codebook.
  • Each combination is divided into 'J: P0, PI; P0, P2; P0, P3; Pl, P2; Pl, P3; P2, P3.
  • the best codebook obtained in the first round is obtained by searching with P0 and P3 combinations, it can be known that the pulses of the Ns set belonging to the first round are fixed, so the Ns set of the second round is For Pl, P2.
  • the multi-round search method is used to obtain the final best code book, which can further improve the quality of the search result, and reduce the range of the Ns set in the next round search according to the search result of the previous round, which can effectively reduce the calculation amount.
  • Embodiment 5 A fixed codebook search method, which provides a specific acquisition method of an initial base code book based on the foregoing various embodiments.
  • the flow is shown in Figure 6, including the steps: I El, to obtain the number distribution of N pulses on M orbits.
  • the total number of pulses N to be searched and the number of pulses distributed on each track are determined.
  • E2 Determine a centralized search range for each track according to a plurality of extreme values of the known reference signals on the respective tracks, the centralized search range including at least one position on the track.
  • Reference signal optional pulse position maximum likelihood function b(i) can calculate different values of b(i) at all pulse positions, and select several positions with the largest value of b(i) on each track as Centralized search range for each track.
  • the number of locations included in the centralized search range for each track may be the same or different.
  • M 4 tracks TO, Tl, ⁇ 2, ⁇ 3
  • the position division on each track is as shown in Table 1, and the pulse position on each track is re-according to the absolute value of b(i) from large to small. Sort the order. Assume that the sorted orbital position is:
  • the centralized search range of the basic code book is:
  • the centralized search range is usually small, a full search can be performed therein to obtain a better base code book.
  • a total of 4x4x4x4 256 times is required to obtain the base codebook.
  • This step can be performed by referring to steps ⁇ 2 to ⁇ 4 in the first embodiment, or by referring to steps ⁇ 2 to ⁇ 4 in the second embodiment.
  • a centralized search method is used to obtain an initial base code book, which can obtain a higher quality.
  • the basic code book further improves the quality of search results.
  • the software implementing the fixed codebook search method of the present invention can be stored in a computer readable medium.
  • the method includes the following steps: acquiring a basic codebook, where the basic codebook includes position information of N pulses on M tracks, N and M are positive integers; and selecting n pulses as search pulses; The n pulses are part of the N pulses, n is a positive integer smaller than N; replacing the positions of the n search pulses with other positions on the track to obtain a search code book; performing the above search process K times as a round, K is a positive integer greater than or equal to 2, wherein at least one search pulse selects two or more search pulses, and the search pulses selected in each search are not all the same; according to the set evaluation criteria
  • the best codebook of the current round is selected in the basic code book and the search code book.
  • the readable medium such as: ROM/RAM, disk, optical disk, and the like.
  • the position on each orbit is divided as shown in Table 1.
  • the search steps include:
  • the initial base code book is completely searched from the centralized search range of 4 positions per track, and is assumed to be ⁇ 32, 33, 2, 35 ⁇ .
  • I is performed in 12 positions of a track (the number of statistical positions already includes the pulse position in the base code book, and the position for searching on the selected track can be similar to the method of determining the centralized search range of the base code book).
  • the best codebook obtained in the first round of search is ⁇ 32, 33, 6, 35 ⁇ , and the best codebook is obtained when the fixed pulse is ⁇ 0, PI.
  • search pulse set Ns is empty, that is, the positions of all the basic codebook pulses are searched, so the final optimal codebook is ⁇ 32, 33, 6, 35 ⁇ .
  • the fixed codebook searcher of the embodiment of the present invention will be described in detail below.
  • Embodiment 6 A fixed codebook searcher 10, as shown in FIG. 7, includes:
  • the basic codebook unit 11 is configured to provide a basic codebook, where the basic codebook includes position information of N pulses on M tracks, and N and M are positive integers.
  • the I-number loop unit 12 is configured to select a search pulse, and determine that the number of times the search pulse is looped in one round is K times, and the following operations are performed: n pulses are selected as search pulses, and the n pulses are the N The portion of the pulse, n is a positive integer less than N; K is a positive integer greater than or equal to 2, and two or more search pulses are selected at least once in K times, and the search pulses selected in each search are not all the same.
  • the number of times of the cycle unit selecting n pulses as the search pulse is specifically:
  • Ns pulses are all or part of the N pulses, Ns is a positive integer less than or equal to N, and n is a positive integer less than Ns; the position of the other pulses except the n search pulses in the fixed base codebook.
  • the searching unit 13 is configured to, according to the selection of the number of loop units 12 each time, fix the positions of the pulses other than the n search pulses in the base code book provided by the base codebook unit 11, and set the n search pulses I The location is replaced with another location on the track to obtain a search code book.
  • the calculation unit 14 is configured to select the best codebook of the current round from the search codebook provided by the base codebook and the search unit 13 through K cycles in accordance with the set evaluation criteria.
  • the fixed codebook searcher of this embodiment can be used to execute the fixed codebook search method provided in the first embodiment.
  • Embodiment 7 A fixed codebook searcher 20, as shown in FIG. 8, includes:
  • the basic codebook unit 21 is configured to provide a basic codebook, where the basic codebook includes position information of N pulses on M tracks, and N and M are positive integers.
  • the combination providing unit 221 is configured to provide a selection of n pulses from the Ns pulses as the search pulse Part C s may be combined, n is greater than or equal to 2; the Ns pulses are all or part of the N pulses, and Ns is a positive integer less than or equal to N;
  • Loop execution unit 222 for K cyclic times, without overlapping, sequentially or randomly selecting a combination of C s to provide all types of units 221 may be provided in a combined, 2 ⁇ K ⁇ C s.
  • a searching unit 23 configured to fix, according to the selection of the number of loop units 22 each time, the positions of the other samples except the n search pulses in the basic code book provided by the basic codebook unit 21, and the n search pulses The location is replaced with another location on the track to obtain a search code book.
  • the calculating unit 24 is configured to select the best codebook of the current round from the search codebook provided by the basic codebook and the search unit 23 through K cycles according to the set evaluation criteria.
  • the fixed codebook searcher of this embodiment can be used to perform the fixed codebook search method provided in the second embodiment.
  • Embodiment 8 A fixed codebook searcher 30, as shown in FIG. 9, includes:
  • the basic codebook unit 31 is configured to provide a basic codebook, where the basic codebook includes position information of N pulses on M tracks, and N and M are positive integers.
  • the number looping unit 32 is configured to select a search pulse, and determine that the search pulse is circulated in one round; the number of times is K times, and the following operations are performed: n pulses are selected as search pulses, and the n pulses are the N The portion of the pulse, n is a positive integer less than N; K is a positive integer greater than or equal to 2, and two or more search pulses are selected at least once in K times, and the search pulses selected in each search are not all the same.
  • the specific process of selecting the n pulses as the search pulse by the number of cycles unit 32 is: selecting n pulses from the Ns pulses as search pulses, and the Ns pulses are all of the N pulses I Or part, Ns is a positive integer less than or equal to N, n is a positive integer less than Ns, and the position of the other pulses except the n search pulses in the fixed base code book.
  • the searching unit 33 is configured to fix the positions of the n search pulses in the basic code book provided by the basic codebook unit 31 according to the selection of the number of times of the cycle unit 32 each time.
  • the search code book is obtained by replacing it with another location on the track.
  • a calculating unit 34 configured to pass the basic code book and the search unit 33 according to the set evaluation criteria
  • the round number loop unit 35 is configured to replace the original base code book provided by the base code book unit 31 with the best code book of the current round obtained by the calculation unit 34, and the trigger number loop unit 32 performs the loop of the next round.
  • the round-number loop unit may further reset the Ns set in the number-of-times loop unit, and delete the pulse that has been determined through the last round search position.
  • the number of loop units can determine whether to continue the number of times the loop unit enters the next round by the number of Ns, or according to the set number of rounds.
  • the fixed codebook searcher of this embodiment can be used to perform the fixed codebook search method provided in the third or fourth embodiment.
  • Embodiment 9 A fixed codebook searcher 40, as shown in FIG. 10, includes:
  • the base codebook unit 41 includes:
  • the code book providing unit 411 is configured to provide a base code book, where the providing the basic code book comprises: acquiring a quantity distribution of the N pulses on the M tracks, and randomly setting positions of the respective pulses on the respective tracks;
  • the initial calculation unit 412 is configured to calculate and initialize a base codebook in the codebook providing unit 411.
  • the number loop unit 42 is configured to perform the following operations by looping K times in one round: selecting n pulses from the Ns pulses as search pulses, the Ns pulses being all or part of the N pulses, and Ns being less than A positive integer equal to N, n is a positive integer less than Ns; K is a positive integer greater than or equal to 2, and two or more search pulses are selected at least once in K times, and the search pulses selected in each search are not all the same .
  • the searching unit 43 is configured to fix the positions of the n search pulses in the basic code book provided by the basic codebook unit 41 according to the selection of the number of pulses other than the n search pulses.
  • the search code book is obtained by replacing it with another location on the track.
  • the calculating unit 44 is configured to select the best codebook of the current round from the search codebook provided by the basic codebook and the search unit 43 through K cycles according to the set evaluation criteria.
  • the fixed codebook searcher of this embodiment can be used to perform the fixed codebook search method provided in the fifth embodiment.
  • the embodiment of the present invention selects an optimal codebook by performing a search search for different combinations of pulses, and at least one of the searches performs for a plurality of pulses. Since the optimal codebook is selected from a plurality of different combinations of replacements, the number of searches can be reduced while ensuring the globality of the search as much as possible; and since the correlation is performed on at least one search for a plurality of pulses, the correlation between the pulses is made. The impact on search results can be considered to further ensure the quality of the search results.
  • the search is optimized.
  • the selection method of the cable makes the search process more effective. If it can further traverse all possible combinations of search pulses, it can further enhance the global significance of the search results and improve the quality of the search results. If the multi-round search method is used to obtain the final best code book, the quality of the search result can be further improved.
  • the search method provided by embodiment one or two may also be used in only one round of search, and other search methods may be employed in other rounds before or after.
  • the range of the Ns set in the next round of search is reduced according to the search result of the previous round, which can effectively reduce the calculation amount. If the initial base code book is further obtained by the centralized search method, a higher quality base code book can be obtained, and the quality of the search result is further improved.

Description

固定码书搜索方法、 搜索器及计算机可读介质
本申请要求于 2007 年 7 月 11 日提交中国专利局、 申请号为 200710130517.2、 发明名称为"固定码书搜索方法及搜索器 "的中国专利申请的 优先权, 其全部内容通过引用结合在本申请中。
技术领域 本发明涉及矢量编码技术,特别是一种固定码书搜索方法、搜索器及计算 机可读介质。
背景技术 在矢量编码技术中,常常使用固定码书中的一种—— ^数码书对自适应滤 波后的残差信号进行量化编码。代数码书关注目标信号的脉冲位置,对脉冲的 幅度则默认为 1, 因此只需要量化脉冲的符号和位置; 当然, 可以通过在相同 的位置叠加多个脉冲来表示不同的幅度。在利用代数码书进行量化编码时,搜 索目标信号所对应的最佳代数码书的各个脉冲的位置是非常重要的一个环节。 一般而言, 在寻找脉冲的最佳位置时, 进行全搜索(即遍历所有可能的位置组 合情况)的运算复杂度很大, 因此需要寻找次优搜索算法。 在保证搜索结果质 量的前提下, 尽量减少搜索次数, 降低计算复杂度, 是搜索算法研究与发展的 主要目标之一。
下面以深度优先树搜索( Depth-First Tree Search Procedure )方法为例, 说 明现有代数码书脉冲位置搜索所采用的一种次优搜索方法。
假设语音子帧长度为 64, 根据编码码率不同, 需要搜索的脉冲数目也不 同, 假设为 N。 如果不加其他限制, 在 64个位置中搜索 N个脉冲则运算复杂 度过高。 为此, 对代数码书的脉冲位置进行约束, 将 64个位置划分为 M个轨 道(Track )。 一种典型的轨道划分方式如表 1所示。
表 1
Track Positions
TO 0, 4, 8, 12, 16, 20, 24, 28, 32 36, 40, 44, 48, 52, 56, 60
Tl 1, 5, 9, 13, 17, 21, 25, 29, 33, 37, 41, 45, 49, 53, 57, 61 T2 2, 6, 10, 14, 18, 22, 26, 30, 34, 38, 42, 46, 50, 54, 58, 62
T3 3, 7, 11, 15, 19, 23, 27, 31, 35, 39, 43, 47, 51, 55, 59, 63
表 1中, "TO" ~ "Τ3"为 4个轨道, "Positions"为各个轨道上包含的位置编 号。 由表 1可以看出, 64个位置被划分为 4个轨道, 每个轨道有 16个位置, 4个轨道的脉冲位置相互交错, 最大限度的保证对各种脉冲位置的组合。
需要搜索的 N个脉冲按照一定的数量分布被约束在 M = 4个轨道上。下面 ; 以 N = 4, 每个轨道上搜索 1个脉冲的情况来进行说明, 其他情况可类推。
假设在 T0 ~ T3上搜索的脉冲分别为 Ρ0 ~ Ρ3,在搜索过程中,每次搜索相 邻两个轨道上的两个脉冲 ,例如 T0-T1, T1-T2, Τ2-Τ3, Τ3-Τ0。通过四级( Level ) 搜索得到最终的最佳码书。 具体过程如图 1所示, 包括步骤:
①第一级搜索在 T0-T1 , T2-T3上进行。 首先在 T0-T1上搜索 P0和 P1的 I 位置, 其中 P0在轨道 TO的 16个位置中的 4个位置进行搜索, 这 4个位置由 已知的参考信号在该轨道上的极值来确定, P1在轨道 T1的 16个位置中进行 搜索; 按照设定的评价标准从搜索到的 4x16种位置组合中确定最佳的 P0和 P1的位置。 然后在 T2-T3上搜索 P2和 P3的位置, 其中 P2在轨道 T2的 16 个位置中的 8个位置进行搜索 ,这 8个位置由已知的参考信号在该轨道上的极 ; 值来确定, P3在轨道 T3的 16个位置中进行搜索, 最后确定出最佳的 P2和 P3的位置, 完成这一级的搜索。
②第二级搜索在 T1-T2, T3-T0上进行, 过程与第一级搜索类似。
③同样在 T2-T3 , T0-T1上进行第三级搜索, 在 T3-T0, T1-T2上进行第 四级搜索。
I ④最后, 从四级搜索的四个结果中选择一个最优的结果作为最佳代数码 书。 总共搜索的次数为 4χ(4χ16 + 8χ16) = 768次。
在对现有技术的研究与实践的过程中,本发明的发明人发现,上述搜索算 法虽然能在各种码率情况下获得良好的语音质量,但是其搜索次数较多,运算 复杂度较大。
; 发明内容
本发明实施例提供一种固定码书搜索方法、固定码书搜索器及计算机可读 存储介质, 以较低运算复杂度, 获得较好的语音质量。
为此, 本发明实施例提供一种固定码书搜索方法, 包括: 获取基础码书, 所述基础码书包括 N个脉冲在 M个轨道上的位置信息, N、 M为正整数; 选择 n 个脉冲作为搜索脉冲, 所述 n个脉冲为所述 N个脉冲的部分, n为小于 N的正整
; 数; 将所述 n个搜索脉冲的位置分别用所在轨道上的其他位置进行替换得到搜 索码书; 将上述搜索过程执行 K次, K为大于等于 2的正整数, 其中至少一次搜 索过程中选择两个或两个以上的搜索脉冲,每次搜索中选择的搜索脉冲不全相 同; 按照设定的评价标准从所述基础码书与搜索码书中选择本轮的最佳码书。
本发明实施例还提供一种固定码书搜索器, 包括: 基础码书单元, 用于提
I 供基础码书, 所述基础码书包括 N个脉冲在 M个轨道上的位置信息, N、 M为 正整数; 次数循环单元, 用于选择搜索脉冲, 并确定所述搜索脉冲在一轮中循 环的次数为 K次, 执行如下操作: 选择 n个脉冲作为搜索脉冲, 所述 n个脉冲为 所述 N个脉冲的部分, n为小于 N的正整数; K为大于等于 2的正整数, 且 K次中 至少一次选择两个或两个以上的搜索脉冲,每次搜索中选择的搜索脉冲不全相
; 同; 搜索单元, 用于按照所述次数循环单元每次的选择, 将所述 n个搜索脉冲 的位置分别用所在轨道上的其他位置进行替换得到搜索码书; 计算单元, 用于 按照设定的评价标准从所述基础码书与所述搜索单元经过 K次循环提供的搜 索码书中选择本轮的最佳码书。
本发明实施例在提供一种计算机可读存储介质, 包括计算机程序代码,该
I 计算机程序代码由一个计算机单元执行, 使得该计算机单元:
获取基础码书, 所述基础码书包括 N个脉冲在 M个轨道上的位置信息, N、 M为正整数;
选择 n个脉冲作为搜索脉冲, 所述 n个脉冲为所述 N个脉冲的部分, n为小 于 N的正整数;
; 将所述 n个搜索脉冲的位置分别用所在轨道上的其他位置进行替换得到搜 索码书;
将上述搜索过程执行 K次, K为大于等于 2的正整数, 其中至少一次搜索过 程中选择两个或两个以上的搜索脉冲, 每次搜索中选择的搜索脉冲不全相同; 按照设定的评价标准从所述基础码书与搜索码书中选择本轮的最佳码书。 上述方法或装置采用从^ 5出码书出发,通过对不同的脉冲组合进行替换搜 索的方法选择最佳码书, 且其中至少一次搜索对多个脉冲进行。 由于最佳码书 从多个不同组合的替换中选择获得 ,能够在尽可能保证搜索的全局性的前提下 ; 减少搜索次数; 通过逐次选取不同搜索脉冲组合的方法,优化了搜索脉冲的选 取方式, 使得搜索过程更加有效, 从而提高了搜索结果的质量。
附图说明 图 1是现有深度优先树搜索方法示意图;
图 2是本发明实施例一固定码书搜索方法流程示意图;
I 图 3是本发明实施例二固定码书搜索方法流程示意图;
图 4是本发明实施例三固定码书搜索方法流程示意图;
图 5是本发明实施例四固定码书搜索方法流程示意图;
图 6是本发明实施例五固定码书搜索方法流程示意图;
图 7是本发明实施例六固定码书搜索器逻辑结构示意图;
; 图 8是本发明实施例七固定码书搜索器逻辑结构示意图;
图 9是本发明实施例八固定码书搜索器逻辑结构示意图;
图 10是本发明实施例九固定码书搜索器逻辑结构示意图。
具体实施方式 本发明实施例提供一种固定码书搜索方法,从基础码书出发,通过对不同 I 的脉冲组合进行替换搜索的方法选择最佳码书,且其中至少一次搜索对多个脉 冲进行。本发明实施例还提供相应的固定码书搜索器。 以下分别对本发明实施 例的方法和装置进行伴细说明。
实施例一、 一种固定码书搜索方法, 如图 2所示, 包括:
A1、获取基础码书,所述基础码书包括 N个脉冲在 M个轨道上的位置信息, ; N、 M为正整数。
本文中所称基础码书是在进行一轮搜索时所使用的作为搜索基础的初始 码书。 通常, 在进行代数码书脉冲位置搜索前, 已根据码率等信息确定了需要 搜索的脉冲在各个轨道上的数量分布。例如, 以语音量化编码中的脉冲搜索为 例, 假设 64个位置按照表 1所示的方式划分为 M = 4个轨道, 分别为 T0、 Tl、 Τ2、 Τ3 , 则根据码率的不同, 脉冲数量的分布可能为: Ν = 4, 在每个轨道上 分别搜索 1个脉冲; Ν = 8, 在每个轨道上分别搜索 2个脉冲; 或 Ν = 5, 在 Τ0、 Tl、 Τ2上分别搜索 1个脉冲, 在 Τ3上搜索 2个脉冲等。
; 确定 Ν个脉冲在 Μ个轨道上的数量分布后, 获取基础码书就是获取各个轨 道上的各个脉冲的初始位置。 可通过下述任意一种方式来确定脉冲的初始位 置, 本实施例不作限定。 例如:
①随机选择脉冲所在轨道上的任意位置作为脉冲的初始位置;
②按照某个已知的参考信号在各个轨道上的若干个极值确定相应轨道上 I 的各个脉冲的位置;
③通过某种计算方式来获得脉冲的初始位置(即基础码书)。
其中, 一种可选的参考信号为"脉冲位置最大似然函数"(也叫脉冲幅度选 择信号), 该函数可表示为:
Figure imgf000007_0001
; 其中 , d(i)是由待量化的目标信号确定的矢量信号 d的各维分量,通常可表现为 目标信号与经过预滤波的加权合成滤波器的脉冲响应的卷积; rLTP(i)为长时预 测的残差信号 r的各维分量; Ed是信号 d的能量; Er是信号 r的能量; a为比例因 子, 它控制了参考信号 d(i)的依赖程度, 对于不同的码率其取值可有所不同。 可计算出 b(i)在 64个位置上的不同取值 ,分别选择 TO ~ T3中 b(i)取值最大的位置
I 作为脉冲的初始位置。
A2、 选择 n个脉冲作为搜索脉冲, 所述 n个脉冲为所述 N个脉冲的部分, n 为小于 N的正整数, 具体的过程为: 从 Ns个脉冲中选择 n个脉冲作为搜索脉冲, 所述 Ns个脉冲为所述 N个脉冲的全部或部分, Ns为小于等于 N的正整数, n为 小于 Ns的正整数; 固定基础码书中除所述 n个搜索脉冲外其他脉冲的位置, 将
; 所述 n个搜索脉冲的位置分别用所在轨道上的其他位置进行替换得到搜索码 书。
能够被选为搜索脉冲的脉冲可以是所有 Ns个脉冲, 也可以只是其中的部 分, 以下将由"能够被选为搜索脉冲的脉冲 "组成的集合称为" Ns集合"。 从含义 上看, N个脉冲中如果有不属于 Ns集合的脉冲, 表明其位置已是优选的位置, 可以不再进行搜索。
从 Ns个脉冲中选择 n个脉冲作为搜索脉冲, 可采用各种选择方法, 本实施 ; 例中不作限定。 例如可以:
①随机选择 n的数值以及搜索脉冲的组合;
以 Ns集合中共有 P0、 Pl、 P2共 3个脉冲为例, 则可能的选择包括: n = l, 搜索脉冲为 PI; n = 2, 搜索脉冲为 P0、 P2; n = 2, 搜索脉冲为 PI、 P2等。
②确定 n的数值, n大于等于 2, 随机选择搜索脉冲的组合;
I 以 Ns集合中共有 P0、 Pl、 P2、 P3共 4个脉冲, 且确定 n = 3为例, 则可能的 选择包括: 搜索脉冲为 P0、 Pl、 P2; 搜索脉冲为 P0、 P2、 P3; 搜索脉冲为 P0、 Pl、 P3; 搜索脉冲为 PI、 P2、 P3。
选好搜索脉冲组合后 ,即用其所在轨道上的其他位置替换其在基础码书中 的对应位置, 得到搜索码书。
; 以基础码书共有 Ν = 4个脉冲 Ρ0、 Pl、 Ρ2、 Ρ3 , 分别位于 Μ = 4个轨道 Τ0、
Tl、 Τ2、 Τ3上, 每个轨道上 1个脉冲为例。 若在一次搜索过程中选择出的搜索 脉冲为 Ρ2、 Ρ3 , 则固定基础码书中 P0、 PI的位置, 将 P2的位置分别用 T2上的 其他位置来替换(假设有 t2个),将 P3的位置分别用 T3上的其他位置来替换(假 设有 t3个), 则共可对应 (t2 + l)x(t3 + 1) - 1 = t2xt3 + t2 + t3个搜索码书。 需要说 I 明的是,被搜索的轨道上用于替换的位置可以是该轨道上的全部位置,也可以 仅仅包括设定的可选范围中的位置,例如可以根据某个已知的参考信号的取值 从被搜索的轨道中选择一部分位置用于替换。
A3、 将步骤 A2的搜索过程执行 K次作为一轮, 在每次搜索过程, 选择的 搜索脉冲不全相同, K为大于等于 2的正整数, 其中至少一次搜索过程中选择 ; 两个或两个以上的搜索脉冲。
步骤 A2循环执行的次数 K可以是具体设定的一个上限值 , 当执行 K次搜索 过程后即认为完成一轮搜索。
此外, 本发明实施例也可以对 K值不作限定, 即不确定 K值, 而由某种搜 索终结条件来判断一轮搜索的完成与否 , 例如当所选择的搜索脉冲已遍历 Ns 集合时, 可判断完成一轮搜索。 当然, 还可以综合上述两种方式, 即以搜索终 结条件的达成与否来判断一轮搜索是否完成,但同时搜索过程的次数不得大于 设定的 K值上限, 若已达到 K值上限则即便搜索终结条件未达成也认为完成一
; 轮搜索。 具体规则可根据实际应用的情况设置, 本实施例不作限定。
为了使搜索结果体现脉冲之间的关联关系 , 本实施例要求 K次搜索过程中 的至少一次对两个或两个以上的脉冲进行,此时所选择的搜索脉冲可以分布在 相同或不同的轨道上。
A4、 按照设定的评价标准从所述基础码书与搜索码书中选择本轮的最佳
I 码书。
对搜索码书与基础码书进行比较评价的过程可与步骤 A2搜索的过程同步 执行。 例如, 可设置一个"优选码书", 并将其值初始化为基础码书; 然后在获 得一个搜索码书后, 即与当前的优选码书进行比较评价, 若确定该搜索码书优 于优选码书, 就用该搜索码书替换当前的优选码书; 直到全部 K次搜索过程结 ; 束, 所得到的优选码书即为本轮的最佳码书。 需要注意的是, 各次搜索过程的 基础仍然是基础码书 , 只是比较评价的对象为优选码书。
也可以集中对 K次搜索过程的结果进行比较评价。 例如, 可保存每次搜索 过程得到的优选码书,然后集中比较 K个优选码书,从中选择本轮的最佳码书。
对搜索码书与基础码书进行比较评价的标准具体可根据应用情况进行确 I 定, 本实施例不作限定。 例如, 可采用通常用来衡量代数码书质量的代价函数 ( Qk )来进行比较, 一般认为 Qk值越大, 码书质量越好, 因此可选择 Qk值大 的作为优选码书。
本实施例通过对不同的脉冲组合进行替换搜索的方法选择最佳码书 ,且其 中至少一次搜索对多个脉冲进行。由于最佳码书从多个不同组合的替换中选择 ; 获得, 能够在尽可能保证搜索的全局性的前提下减少搜索次数; 而且由于至少 一次搜索对多个脉冲进行,使得脉冲之间的相关性对搜索结果的影响能够被考 虑到, 进一步保证了搜索结果的质量。
实施例二、一种固定码书搜索方法,本实施例在实施例一的基础上提供一 种具体的搜索脉冲选择方法。 流程如图 3所示, 包括步骤:
Bl、获取基础码书,所述基础码书包括 N个脉冲在 M个轨道上的位置信息, N、 M为正整数。
此步骤可参照实施例一中的步骤 A1执行。
; B2、从 Ns个脉冲中选择 η = ηθ个搜索脉冲; Ns的含义与实施例一中的相同, ηθ为大于等于 2的值, 且在当前一轮搜索中保持不变; 所选择的 ηθ个搜索脉冲 是全部 C s种可能组合中的一种, 且不重复选择。
假设 Ns集合中共有 P0、 Pl、 P2、 P3共 4个脉冲, 分别位于 M = 4个轨道 T0、 Tl、 Τ2、 Τ3上, 每个轨道上 1个脉冲。 确定 η = η0 = 2, 则从 Ns集合中选择 2个 I 搜索脉冲共有 C s = 6种组合, 包括: P0、 PI; P0、 P2; P0、 P3; Pl、 P2; Pl、 P3; P2、 P3。 可以随机或顺序的从这 6种组合中进行选择; 为使得每次的选择 不重复,可按组合的变化规律依次进行选择,也可保存全部组合或对全部组合 进行编号, 将选择过的组合(或编号)删除。
B3、将步骤 B2的搜索过程执行 K次作为一轮, 在每次搜索过程, 选择的搜 ; 索脉冲不全相同, 2≤K≤C S,其中至少一次搜索过程中选择两个或两个以上 的搜索脉冲。
由于 n值固定,且每次选取的搜索脉冲组合均不重复,因此最多搜索 C s次 就可以遍历 Ns集合中的全部可能组合。 当然, 也可以限制 K值上限小于 C s , 此时将不完全遍历全部可能组合, 但所选择的搜索脉冲仍可能遍历 Ns集合。
I B4、 按照设定的评价标准从所述基础码书与搜索码书中选择本轮的最佳 码书。
此步骤可参照实施例一中的步骤 A4执行。
本实施例采用在一轮搜索中固定 n值且逐次选取不同搜索脉冲组合的方 法, 优化了搜索脉冲的选取方式, 使得搜索过程更加有效, 若进一步能遍历搜 ; 索脉冲的全部可能组合, 能够进一步增强搜索结果的全局意义,提高搜索结果 的质量。
实施例三、一种固定码书搜索方法,本实施例在实施例一和二的基础上提 供一种循环多轮执行的方法。 流程如图 4所示, 包括步骤: Cl、获取基础码书,所述基础码书包括 N个脉冲在 M个轨道上的位置信息,
N、 M为正整数。
此步骤可参照实施例一中的步骤 A1执行。
C2、 Ns = N, 执行一轮 K次搜索, 获得本轮的最佳码书。
此步骤可参照实施例一中的步骤 Α2 ~ Α4执行, 或参照实施例二中的步骤
Β2 ~ Β4执行。 由于 Ns = N, 搜索脉冲可在基础码书的全部脉冲中选取。 对于 实施例二中的方法而言, 在不同的轮中, 确定的 n值可以相同也可以不同。
C3、 判断搜索的轮数 G是否达到设定的 G值上限, 若是则执行步骤 C5, 若 否则执行步骤 C4。
C4、 以所述最佳码书替换原有基础码书作为新的基础码书, 返回步骤 C2 继续搜索新一轮的最佳码书。
C5、 获取本轮的最佳码书作为最终最佳码书。
本实施例采用多轮搜索的方法获取最终最佳码书,能进一步提高搜索结果 的质量。 当然, 也可以仅在一轮搜索中使用实施例一或二提供的搜索方法, 而 在之前或之后的其他轮中采用其他搜索方法。
实施例四、一种固定码书搜索方法,本实施例在实施例一和二的基础上提 供另一种循环多轮执行的方法。 流程如图 5所示, 包括步骤:
D1、获取基础码书,所述基础码书包括 N个脉冲在 M个轨道上的位置信息, N、 M为正整数。
此步骤可参照实施例一中的步骤 A1执行。
D2、 执行一轮 K次搜索, 获得本轮的最佳码书。
此步骤可参照实施例一中的步骤 A2 ~ A4执行, 或参照实施例二中的步骤 B2 ~ B4执行。 在第一轮搜索中可设置 Ns = N。
D3、 判断搜索的轮数 G是否达到设定的 G值上限, 或者判断下一轮的 Ns集 合是否为空, 若是则执行步骤 D5, 若否则执行步骤 D4。
在本实施例中,每一轮的 Ns集合可根据上一轮的搜索结果来确定,具体确 定方式见步骤 D4。 若 Ns集合为空, 则可认为搜索完成; 或者也可以根据设定 的 G值上限在 Ns集合非空时判断搜索完成。 D4、 以所述最佳码书替换原有基础码书作为新的基础码书, 以获得所述 最佳码书的那次搜索过程中位置被固定且属于原有 Ns个脉冲的脉冲作为新的 Ns个脉冲, 返回步骤 D2继续搜索新一轮的最佳码书。
假设第一轮搜索中 Ns = N = 4, Ns集合中共有 P0、 Pl、 P2、 P3共 4个脉冲,
; 分别位于 M = 4个轨道 T0、 Tl、 Τ2、 Τ3上, 每个轨道上 1个脉冲。 确定第一轮 η = ηθ = 2, 采用实施例二中的遍历全部搜索脉冲组合的方式进行 Κ = 6次搜索。 各次组合分另 'J : P0、 PI ; P0、 P2; P0、 P3; Pl、 P2; Pl、 P3; P2、 P3。 假设 第一轮获得的最佳码书为采用 P0、 P3组合时搜索得到的, 则可知被固定的, 且 属于第一轮的 Ns集合的脉冲为 Pl、 P2, 因此第二轮的 Ns集合即为 Pl、 P2。 若
I 确定第二轮 n = n0 = 2, 则需进行 K = l次搜索, 显然第二轮获得的最佳码书为 采用 Pl、 Ρ2组合时搜索得到的, 该次搜索被固定的脉冲为 Ρ0、 Ρ3 , 但显然该 两个脉冲均不属于第二轮的 Ns集合, 因此可判断第三轮的 Ns集合为空, 从而 确定搜索完成。
D5、 获取本轮的最佳码书作为最终最佳码书。
; 本实施例采用多轮搜索的方法获取最终最佳码书,能进一步提高搜索结果 的质量,且根据上一轮的搜索结果缩小下一轮搜索中 Ns集合的范围, 能有效降 低计算量。
实施例五、一种固定码书搜索方法,本实施例在前述各个实施例的基础上 提供一种初始的基础码书的具体获取方法。 流程如图 6所示, 包括步骤: I El、 获取 N个脉冲在 M个轨道上的数量分布。
即根据码率等相关信息, 确定需要搜索的脉冲的总数量 N以及各个轨道上 分布的脉冲数量。
E2、按照已知的参考信号在各个轨道上的若干个极值,确定各个轨道的集 中搜索范围, 所述集中搜索范围至少包括该轨道上的一个位置。
; 参考信号可选脉冲位置最大似然函数 b(i),可计算出 b(i)在全部脉冲位置上 的不同取值 , 分别选择各个轨道上 b(i)取值最大的若干个位置作为各个轨道的 集中搜索范围。每个轨道的集中搜索范围所包含的位置数目可以相同也可以不 同。 假设共有 M = 4个轨道 TO、 Tl、 Τ2、 Τ3上, 每个轨道上的位置划分如表 1 所示, 将每个轨道上的脉冲位置重新按照 b(i)的绝对值从大到小的顺序进行排 序。 假设经过排序后的轨道位置为:
{ T0, T1, T2, Τ3} =
; {
{0, 36, 32, 4, 40, 28, 16, 8, 20, 52, 44, 48, 12, 56, 24, 60}, { 1, 33, 37, 5, 29, 41, 17, 9, 49, 21, 53, 25, 13, 45, 57, 61 }, {34, 2, 38, 30, 6, 18, 42, 50, 26, 14, 10, 22, 54, 46, 58, 62}, {35, 3, 31, 39, 7, 19, 27, 51, 15, 43, 55, 47, 23, 11, 59, 63}
» }
则, 若选取每个轨道上 b(i)的绝对值最大的 4个位置为该轨道的集中搜索范围, 可得基础码书的集中搜索范围为:
{
{0, 36, 32, 4},
; { 1, 33, 37, 5},
{34, 2, 38, 30},
{35, 3, 31, 39}
}
E3、 在所述 M个集中搜索范围中按照 N个脉冲的数量分布进行全搜索, 按 I 照设定的评价标准从所有可能的位置组合中选择基础码书。
由于集中搜索范围通常较小,因此可在其中进行全搜索以获得较佳的基础 码书。 例如, 假设羞 ^码书共有 N = 4个脉冲 P0、 Pl、 P2、 P3 , 分别位于 M = 4 个轨道 T0、 Tl、 Τ2、 Τ3上, 每个轨道上 1个脉冲; 则对于步骤 Ε2中给出的示例 几种搜索范围, 共需要搜索 4x4x4x4 = 256次即可获得基础码书。
; Ε4、 基于所述基础码书进行第一轮 Κ次搜索, 获得本轮的最佳码书。
此步骤可参照实施例一中的步骤 Α2 ~ Α4执行, 或参照实施例二中的步骤 Β2 ~ Β4执行。
本实施例采用集中搜索的方法获取初始的基础码书,能够得到较高质量的 基础码书, 进一步提高搜索结果的质量。
应当理解,实现本发明固定码书搜索方法的软件可以存储于计算机可读介 质中。 该软件在执行时, 包括如下步骤: 获取基础码书, 所述基础码书包括 N 个脉冲在 M个轨道上的位置信息, N、 M为正整数;选择 n个脉冲作为搜索脉冲, ; 所述 n个脉冲为所述 N个脉冲的部分, n为小于 N的正整数; 将所述 n个搜索脉冲 的位置分别用所在轨道上的其他位置进行替换得到搜索码书;将上述搜索过程 执行 K次作为一轮, K为大于等于 2的正整数, 其中至少一次搜索过程中选择两 个或两个以上的搜索脉冲,每次搜索中选择的搜索脉冲不全相同; 按照设定的 评价标准从所述基础码书与搜索码书中选择本轮的最佳码书。 所述的可读介 I 质, 如: ROM/RAM、 磁碟、 光盘等。
为更好的理解上述实施例, 下面给出一个计算实例。
假设共有 N = 4个脉冲 P0、 Pl、 P2、 P3 , 分别位于 M = 4个轨道 T0、 Tl、 Τ2、 Τ3上, 每个轨道上 1个脉冲, 每个轨道上的位置划分如表 1所示; 搜索步 骤包括:
; ①按照实施例五提供的初始基础码书的计算方法, 从每个轨道包括 4个位 置的集中搜索范围中全搜索出初始的基础码书,假设为 {32, 33, 2, 35}。 需要的 搜索次数为 4x4x4x4 = 256次。
②开始第一轮搜索,确定第一轮 η = η0 = 2, 采用实施例二中的遍历全部搜 索脉冲组合的方式进行 Κ = 6次搜索。 每次搜索分别在一个轨道的 4个位置和另
I 一个轨道的 12个位置中进行(所统计位置数已包括基础码书中的脉冲位置,选 择轨道上用于搜索的位置可采用和确定基础码书的集中搜索范围类似的方 法)。 假定第一轮搜索得到的最佳码书为 {32, 33, 6, 35} , 是在固定脉冲为 Ρ0、 PI时得到该最佳码书的。 需要的搜索次数为 6χ(4χ12) = 288次。
③开始第二轮搜索, 确定第二^ n = n0 = 2, 固定 P2、 P3的位置 {6,35} , 对 ; P0、 PI组合进行 K = 1次搜索。 该次搜索分别在 T0、 T1的 4个位置中进行。 假定 第二轮搜索得到的最佳码书为 {32, 33, 6, 35}。 需要的搜索次数为 4x4 = 16次。
④判断搜索脉冲集合 Ns为空, 即所有基础码书脉冲的位置都搜索完成, 因 此最终最佳码书即为 {32, 33, 6, 35}。 总共需要的搜索次数为 256 + 288 + 16 = 560次。
将上述计算例中的方法应用于对由 24个男生序列和 24个女生序列组成的 测试序列进行语音编码,将编码结果与现有深度优先树搜索方法的编码结果进 行客观语音质量比较, 两种方法获得的语音质量相当。 而上述方法的搜索次数 ; 为 560次, 远小于深度优先树搜索方法的搜索次数 768次。
下面对本发明实施例的固定码书搜索器进行伴细说明。
实施例六、 一种固定码书搜索器 10, 如图 7所示, 包括:
基础码书单元 11 , 用于提供基础码书, 所述基础码书包括 N个脉冲在 M个 轨道上的位置信息, N、 M为正整数。
I 次数循环单元 12, 用于选择搜索脉冲, 并确定所述搜索脉冲在一轮中循环 的次数为 K次执行如下操作: 选择 n个脉冲作为搜索脉冲, 所述 n个脉冲为所述 N个脉冲的部分, n为小于 N的正整数; K为大于等于 2的正整数, 且 K次中至少 一次选择两个或两个以上的搜索脉冲, 每次搜索中选择的搜索脉冲不全相同。
优选的, 所述次数循环单元选择 n个脉冲作为搜索脉冲具体为:
; 所述次数循环单元, 用于从 Ns个脉冲中选择 n个脉冲作为搜索脉冲, 所述
Ns个脉冲为所述 N个脉冲的全部或部分, Ns为小于等于 N的正整数, n为小于 Ns的正整数; 固定基础码书中除所述 n个搜索脉冲外其他脉冲的位置。
搜索单元 13 , 用于按照次数循环单元 12每次的选择, 固定基础码书单元 11 提供的基础码书中除所述 n个搜索脉冲外其他脉冲的位置,将所述 n个搜索脉冲 I 的位置分别用所在轨道上的其他位置进行替换得到搜索码书。
计算单元 14,用于按照设定的评价标准从所述基础码书与搜索单元 13经过 K次循环提供的搜索码书中选择本轮的最佳码书。
本实施例固定码书搜索器可用于执行实施例一提供的固定码书搜索方法。 实施例七、 一种固定码书搜索器 20, 如图 8所示, 包括:
; 基础码书单元 21 , 用于提供基础码书, 所述基础码书包括 N个脉冲在 M个 轨道上的位置信息, N、 M为正整数。
次数循环单元 22, 包括:
组合提供单元 221 ,用于提供从 Ns个脉冲中选择 n个脉冲作为搜索脉冲的全 部 C s种可能组合, n大于等于 2;所述 Ns个脉冲为所述 N个脉冲的全部或部分, Ns为小于等于 N的正整数;
循环执行单元 222, 用于循环 K次, 不重复地、 顺序或随机地选择组合提 供单元 221提供的全部 C s种可能组合中的一种, 2≤ K≤ C s
; 搜索单元 23 , 用于按照次数循环单元 22每次的选择, 固定基础码书单元 21 提供的基础码书中除所述 n个搜索脉冲外其他脉冲的位置,将所述 n个搜索脉冲 的位置分别用所在轨道上的其他位置进行替换得到搜索码书。
计算单元 24,用于按照设定的评价标准从所述基础码书与搜索单元 23经过 K次循环提供的搜索码书中选择本轮的最佳码书。
I 本实施例固定码书搜索器可用于执行实施例二提供的固定码书搜索方法。
实施例八、 一种固定码书搜索器 30, 如图 9所示, 包括:
基础码书单元 31 , 用于提供基础码书, 所述基础码书包括 N个脉冲在 M个 轨道上的位置信息, N、 M为正整数。
次数循环单元 32, 用于选择搜索脉冲, 并确定所述搜索脉冲在一轮中循环 ; 次数为 K次, 执行如下操作: 选择 n个脉冲作为搜索脉冲, 所述 n个脉冲为所述 N个脉冲的部分, n为小于 N的正整数; K为大于等于 2的正整数, 且 K次中至少 一次选择两个或两个以上的搜索脉冲, 每次搜索中选择的搜索脉冲不全相同。
优选的, 所述次数循环单元 32选择 n个脉冲作为搜索脉冲的具体过程为: 用于从 Ns个脉冲中选择 n个脉冲作为搜索脉冲, 所述 Ns个脉冲为所述 N个脉冲 I 的全部或部分, Ns为小于等于 N的正整数, n为小于 Ns的正整数, 固定基础码 书中除所述 n个搜索脉冲外其他脉冲的位置。
搜索单元 33 , 用于按照次数循环单元 32每次的选择, 固定基础码书单元 31 提供的基础码书中除所述 n个搜索脉冲外其他脉冲的位置,将所述 n个搜索脉冲 的位置分别用所在轨道上的其他位置进行替换得到搜索码书。
; 计算单元 34,用于按照设定的评价标准从所述基础码书与搜索单元 33经过
K次循环提供的搜索码书中选择本轮的最佳码书。
轮数循环单元 35,用于以计算单元 34得到的本轮的最佳码书替换基础码书 单元 31提供的原有基础码书, 并触发次数循环单元 32执行下一轮的循环。 根据具体模式设置,轮数循环单元在触发次数循环单元执行下一轮的循环 时,还可以重新设置次数循环单元中的 Ns集合,从中删除经过上轮搜索位置已 经被确定下来的脉冲。轮数循环单元可以通过 Ns的数目来确定是否继续触发次 数循环单元进入下一轮的循环, 也可根据设定的轮数上限值来判断。
本实施例固定码书搜索器可用于执行实施例三或四提供的固定码书搜索 方法。
实施例九、 一种固定码书搜索器 40, 如图 10所示, 包括:
基础码书单元 41 , 包括:
码书提供单元 411, 用于提供基础码书, 所述提供基础码书包括: 获取 N 个脉冲在 M个轨道上的数量分布随机设置各个轨道上的各个脉冲的位置;
初始计算单元 412, 用于计算并初始化码书提供单元 411中的基础码书。 次数循环单元 42, 用于在一轮中循环 K次执行如下操作: 从 Ns个脉冲中选 择 n个脉冲作为搜索脉冲, 所述 Ns个脉冲为所述 N个脉冲的全部或部分, Ns为 小于等于 N的正整数, n为小于 Ns的正整数; K为大于等于 2的正整数, 且 K次 中至少一次选择两个或两个以上的搜索脉冲,每次搜索中选择的搜索脉冲不全 相同。
搜索单元 43 , 用于按照次数循环单元 42每次的选择, 固定基础码书单元 41 提供的基础码书中除所述 n个搜索脉冲外其他脉冲的位置,将所述 n个搜索脉冲 的位置分别用所在轨道上的其他位置进行替换得到搜索码书。
计算单元 44,用于按照设定的评价标准从所述基础码书与搜索单元 43经过 K次循环提供的搜索码书中选择本轮的最佳码书。
本实施例固定码书搜索器可用于执行实施例五提供的固定码书搜索方法。 通过上述实施例可以看出,本发明实施例通过对不同的脉冲组合进行替换 搜索的方法选择最佳码书,且其中至少一次搜索对多个脉冲进行。 由于最佳码 书从多个不同组合的替换中选择获得,能够在尽可能保证搜索的全局性的前提 下减少搜索次数; 而且由于至少一次搜索对多个脉冲进行,使得脉冲之间的相 关性对搜索结果的影响能够被考虑到,进一步保证了搜索结果的质量。若进一 步采用在一轮搜索中固定 n值且逐次选取不同搜索脉冲组合的方法, 优化了搜 索脉冲的选取方式,使得搜索过程更加有效, 若进一步能遍历搜索脉冲的全部 可能组合, 能够进一步增强搜索结果的全局意义, 提高搜索结果的质量。 若进 一步采用多轮搜索的方法获取最终最佳码书, 能进一步提高搜索结果的质量。 当然,也可以仅在一轮搜索中使用实施例一或二提供的搜索方法, 而在之前或 之后的其他轮中采用其他搜索方法。若进一步在采用多轮搜索的方法获取最终 最佳码书时,根据上一轮的搜索结果缩小下一轮搜索中 Ns集合的范围, 能有效 降低计算量。若进一步采用集中搜索的方法获取初始的基础码书, 能够得到较 高质量的基础码书, 进一步提高搜索结果的质量。
以上对本发明所提供的固定码书搜索方法及固定码书搜索器进行了详细 施例的说明只是用于帮助理解本发明的方法及其核心思想; 同时,对于本领域 的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改 变之处, 综上所述, 本说明书内容不应理解为对本发明的限制。

Claims

权 利 要 求
1、 一种固定码书搜索方法, 其特征在于, 包括:
获取基础码书, 所述基础码书包括 N个脉冲在 M个轨道上的位置信息, N、 M为正整数;
; 选择 n个脉冲作为搜索脉冲, 所述 n个脉冲为所述 N个脉冲的部分, n为小 于 N的正整数;
将所述 n个搜索脉冲的位置信息分别用所在轨道上的其他位置信息进行替 换得到搜索码书;
将上述搜索过程执行 K次, K为大于等于 2的正整数, 其中至少一次搜索过 I 程中选择两个或两个以上的搜索脉冲, 每次搜索中选择的搜索脉冲不全相同; 按照设定的评价标准从所述基础码书与搜索码书中选择最佳码书。
2、 根据权利要求 1所述的固定码书搜索方法, 其特征在于: 所述选择 n个 脉冲作为搜索脉冲具体包括:
从 Ns个脉冲中选择 n个脉冲作为搜索脉冲 , 所述 Ns个脉冲为所述 N个脉冲 ; 的全部或部分, Ns为小于等于 N的正整数, n为小于 Ns的正整数; 固定基础码 书中除所述 n个搜索脉冲外其他脉冲的位置。
3、 根据权利要求 2所述的固定码书搜索方法, 其特征在于:
所述从 Ns个脉冲中选择 n个脉冲作为搜索脉冲包括:
随机选择 n的数值以及脉冲的组合作为搜索脉冲; 或者, 确定 n的数值, 根 I 据 n的数值随机选择脉冲的组合作为搜索脉冲, 其中 n大于等于 2;
所述搜索过程执行 K次包括: 到设定的 K值上限为止; 或者为, 到确定所
4、 根据权利要求 3所述的固定码书搜索方法, 其特征在于:
所述从 Ns个脉冲中选择 n个脉冲作为搜索脉冲包括: 确定 n的数值, n大于 ; 等于 2, 在每次搜索过程中不重复地、 顺序或随机地选择全部 C s种可能组合 中的一种;
所述搜索过程的执行 K次为, K≤C S
5、 根据权利要求 2所述的固定码书搜索方法, 其特征在于, 所述将 n个搜 索脉冲的位置分别用所在轨道上的其他位置进行替换的步骤为: 将 n个搜索脉 冲的位置分别用所在轨道上预先设定范围中的位置逐一进行替换。
6、 根据权利要求 2 ~ 5任意一项所述的固定码书搜索方法, 其特征在于, 所述搜索过程执行 K次作为一轮, 当所述 Ns = N时, 所述固定码书搜索方法还 包括:
以所述最佳码书替换原有基础码书作为新的基础码书,继续搜索新一轮的 最佳码书;
重复执行所述以最佳码书替换原有基础码书的过程 , 直到搜索的轮数 G达 到设定的 G值上限。
7、 根据权利要求 2 ~ 5任意一项所述的固定码书搜索方法, 其特征在于, 还包括:
以所述最佳码书替换原有基础码书作为新的基础码书,并以获得所述最佳 码书中位置被固定且属于原有 Ns个脉冲的脉冲作为新的 Ns个脉冲, 继续搜索 新一轮的最佳码书;
重复执行所述以最佳码书替换原有基础码书的过程 , 直到搜索的轮数 G达 到设定的 G值上限。
8、 根据权利要求 1 ~ 5任意一项所述的固定码书搜索方法, 其特征在于, 所述获取基础码书的步骤包括:
获取 N个脉冲在 M个轨道上的数量分布;
随机设置各个轨道上的各个脉冲的位置;或者按照已知的参考信号在各个 轨道上的若干个极值 , 确定相应轨道上的各个脉冲的位置。
9、 根据权利要求 1 ~ 5任意一项所述的固定码书搜索方法, 其特征在于, 所述获取基础码书的步骤包括:
获取 N个脉冲在 M个轨道上的数量分布;
按照已知的参考信号在各个轨道上的若干个极值,确定各个轨道的集中搜 索范围, 所述集中搜索范围至少包括该轨道上的一个位置;
在所述 M个集中搜索范围中按照 N个脉冲的数量分布进行全搜索 , 按照设 定的评价标准从所有的位置组合中选择 出码书。
10、 一种固定码书搜索器, 其特征在于, 包括:
基础码书单元, 用于提供基础码书, 所述基础码书包括 N个脉冲在 M个轨 道上的位置信息, N、 M为正整数;
次数循环单元, 用于选择搜索脉冲, 并确定所述搜索脉冲在一轮中循环的 ; 次数为 K次, 执行如下操作: 选择 n个脉冲作为搜索脉冲, 所述 n个脉冲为所述 N个脉冲的部分, n为小于 N的正整数; K为大于等于 2的正整数, 且 K次中至少 一次选择两个或两个以上的搜索脉冲, 每次搜索中选择的搜索脉冲不全相同; 搜索单元, 用于按照所述次数循环单元每次的选择, 将所述 n个搜索脉冲 的位置分别用所在轨道上的其他位置进行替换得到搜索码书;
I 计算单元,用于按照设定的评价标准从所述基础码书与所述搜索单元经过
K次循环提供的搜索码书中选择本轮的最佳码书。
11、根据权利要求 10所述的固定码书搜索器, 其特征在于, 所述次数循环 单元选择 n个脉冲作为搜索脉冲具体为:
所述次数循环单元, 用于从 Ns个脉冲中选择 n个脉冲作为搜索脉冲, 所述 ; Ns个脉冲为所述 N个脉冲的全部或部分, Ns为小于等于 N的正整数, n为小于 Ns的正整数; 固定基础码书中除所述 n个搜索脉冲外其他脉冲的位置。
12、根据权利要求 11所述的固定码书搜索器, 其特征在于, 所述次数循环 单元包括:
组合提供单元, 用于提供从 Ns个脉冲中选择 n个脉冲作为搜索脉冲的全部 I C s种组合, n大于等于 2;
循环执行单元,用于循环 K次,不重复地、顺序或随机地选择所述全部 C s 种组合中的一种, K≤C S
13、 根据权利要求 10所述的固定码书搜索器, 其特征在于, 还包括: 轮数循环单元,用于以所述计算单元得到的本轮的最佳码书替换所述基础 ; 码书单元提供的原有基础码书, 并触发所述次数循环单元执行下一轮的循环。
14、 根据权利要求 10 ~ 13任意一项所述的固定码书搜索器, 其特征在于, 所述基础码书单元包括:
码书提供单元, 用于提供基础码书, 所述提供基础码书包括: 获取 N个脉 冲在 M个轨道上的数量分布随机设置各个轨道上的各个脉冲的位置, N、 M为 正整数;
初始计算单元, 用于计算并初始化所述码书提供单元中的基础码书。
15、 一种计算机可读存储介质, 其特征在于, 包括计算机程序代码, 该计 算机程序代码由一个计算机单元执行, 使得该计算机单元:
获取基础码书, 所述基础码书包括 N个脉冲在 M个轨道上的位置信息, N、
M为正整数;
选择 n个脉冲作为搜索脉冲, 所述 n个脉冲为所述 N个脉冲的部分, n为小 于 N的正整数;
将所述 n个搜索脉冲的位置分别用所在轨道上的其他位置进行替换得到搜 索码书;
将上述搜索过程执行 K次, K为大于等于 2的正整数, 其中至少一次搜索过 程中选择两个或两个以上的搜索脉冲, 所述搜索脉冲不全相同;
按照设定的评价标准从所述基础码书与搜索码书中选择本轮的最佳码书。
PCT/CN2008/071485 2007-07-11 2008-06-30 Procédé de recherche de livre de code fixe, système de recherche et support lisible par ordinateur WO2009006819A1 (fr)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2009548568A JP5166447B2 (ja) 2007-07-11 2008-06-30 固定コードブック探索方法、探索装置、およびコンピュータ可読媒体
EP08773063A EP2101321A4 (en) 2007-07-11 2008-06-30 SEARCH METHOD WITH DEFINED CODE BOOK, SEARCH DEVICE AND COMPUTER READABLE MEDIUM
KR1020097012233A KR101169969B1 (ko) 2007-07-11 2008-06-30 고정 코드북을 탐색하는 방법 및 장치
US12/477,989 US8515743B2 (en) 2007-07-11 2009-06-04 Method and apparatus for searching fixed codebook

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CNB2007101305172A CN100530357C (zh) 2007-07-11 2007-07-11 固定码书搜索方法及搜索器
CN200710130517.2 2007-07-11

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US12/477,989 Continuation US8515743B2 (en) 2007-07-11 2009-06-04 Method and apparatus for searching fixed codebook

Publications (1)

Publication Number Publication Date
WO2009006819A1 true WO2009006819A1 (fr) 2009-01-15

Family

ID=40113735

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2008/071485 WO2009006819A1 (fr) 2007-07-11 2008-06-30 Procédé de recherche de livre de code fixe, système de recherche et support lisible par ordinateur

Country Status (6)

Country Link
US (1) US8515743B2 (zh)
EP (1) EP2101321A4 (zh)
JP (2) JP5166447B2 (zh)
KR (1) KR101169969B1 (zh)
CN (1) CN100530357C (zh)
WO (1) WO2009006819A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7908136B2 (en) 2007-11-12 2011-03-15 Huawei Technologies Co., Ltd. Fixed codebook search method and searcher

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2529292T3 (es) 2007-04-29 2015-02-18 Huawei Technologies Co., Ltd. Método de codificación y de decodificación
CN102299760B (zh) 2010-06-24 2014-03-12 华为技术有限公司 脉冲编解码方法及脉冲编解码器
CN103098128B (zh) * 2011-06-15 2014-06-18 松下电器产业株式会社 脉冲位置搜索装置、码本搜索装置及其方法
EP3038278B1 (en) 2011-09-23 2017-07-26 LG Electronics, Inc. Method for transmitting control information and apparatus thereof
CN107832439B (zh) * 2017-11-16 2019-03-08 百度在线网络技术(北京)有限公司 多轮状态追踪的方法、系统及终端设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1181151A (zh) * 1995-03-10 1998-05-06 舍布鲁克大学 快速语音编码的代数码书深度优先搜索
US20030033136A1 (en) 2001-05-23 2003-02-13 Samsung Electronics Co., Ltd. Excitation codebook search method in a speech coding system
CN1547193A (zh) * 2003-12-03 2004-11-17 北京首信股份有限公司 一种用于语音编码的固定码本快速搜索算法
CN1766988A (zh) * 2005-10-31 2006-05-03 连展科技(天津)有限公司 一种新型的快速固定码本搜索方法
WO2007027005A1 (en) * 2005-07-13 2007-03-08 Samsung Electronics Co., Ltd. Method and apparatus for searching fixed codebook
CN101118748A (zh) * 2006-08-04 2008-02-06 北京工业大学 一种代数码本的搜索方法、装置及语音编码器

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5202953A (en) * 1987-04-08 1993-04-13 Nec Corporation Multi-pulse type coding system with correlation calculation by backward-filtering operation for multi-pulse searching
CA2010830C (en) * 1990-02-23 1996-06-25 Jean-Pierre Adoul Dynamic codebook for efficient speech coding based on algebraic codes
US5754976A (en) * 1990-02-23 1998-05-19 Universite De Sherbrooke Algebraic codebook with signal-selected pulse amplitude/position combinations for fast coding of speech
US5187745A (en) * 1991-06-27 1993-02-16 Motorola, Inc. Efficient codebook search for CELP vocoders
US5822724A (en) * 1995-06-14 1998-10-13 Nahumi; Dror Optimized pulse location in codebook searching techniques for speech processing
JP3137176B2 (ja) * 1995-12-06 2001-02-19 日本電気株式会社 音声符号化装置
JP3238063B2 (ja) * 1996-01-31 2001-12-10 株式会社東芝 ベクトル量子化方法および音声符号化方法
JPH11119799A (ja) * 1997-10-14 1999-04-30 Matsushita Electric Ind Co Ltd 音声符号化方法および音声符号化装置
US6480822B2 (en) * 1998-08-24 2002-11-12 Conexant Systems, Inc. Low complexity random codebook structure
CA2327041A1 (en) 2000-11-22 2002-05-22 Voiceage Corporation A method for indexing pulse positions and signs in algebraic codebooks for efficient coding of wideband signals
DE10140507A1 (de) * 2001-08-17 2003-02-27 Philips Corp Intellectual Pty Verfahren für die algebraische Codebook-Suche eines Sprachsignalkodierers
KR100463559B1 (ko) * 2002-11-11 2004-12-29 한국전자통신연구원 대수 코드북을 이용하는 켈프 보코더의 코드북 검색방법
KR100463419B1 (ko) * 2002-11-11 2004-12-23 한국전자통신연구원 적은 복잡도를 가진 고정 코드북 검색방법 및 장치
US7249014B2 (en) * 2003-03-13 2007-07-24 Intel Corporation Apparatus, methods and articles incorporating a fast algebraic codebook search technique
KR100556831B1 (ko) * 2003-03-25 2006-03-10 한국전자통신연구원 전역 펄스 교체를 통한 고정 코드북 검색 방법
US7719292B2 (en) 2007-10-12 2010-05-18 Honeywell International Inc. Method and apparatus for electrochemical corrosion monitoring
EP2100920A1 (en) 2008-03-13 2009-09-16 Stichting Dutch Polymer Institute Polyamide with reduced crystallinity

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1181151A (zh) * 1995-03-10 1998-05-06 舍布鲁克大学 快速语音编码的代数码书深度优先搜索
US20030033136A1 (en) 2001-05-23 2003-02-13 Samsung Electronics Co., Ltd. Excitation codebook search method in a speech coding system
CN1547193A (zh) * 2003-12-03 2004-11-17 北京首信股份有限公司 一种用于语音编码的固定码本快速搜索算法
WO2007027005A1 (en) * 2005-07-13 2007-03-08 Samsung Electronics Co., Ltd. Method and apparatus for searching fixed codebook
CN1766988A (zh) * 2005-10-31 2006-05-03 连展科技(天津)有限公司 一种新型的快速固定码本搜索方法
CN101118748A (zh) * 2006-08-04 2008-02-06 北京工业大学 一种代数码本的搜索方法、装置及语音编码器

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP2101321A4 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7908136B2 (en) 2007-11-12 2011-03-15 Huawei Technologies Co., Ltd. Fixed codebook search method and searcher

Also Published As

Publication number Publication date
CN100530357C (zh) 2009-08-19
JP2013050732A (ja) 2013-03-14
JP5345725B2 (ja) 2013-11-20
US8515743B2 (en) 2013-08-20
JP2010518430A (ja) 2010-05-27
JP5166447B2 (ja) 2013-03-21
KR20090085103A (ko) 2009-08-06
US20090240493A1 (en) 2009-09-24
CN101303856A (zh) 2008-11-12
KR101169969B1 (ko) 2012-08-06
EP2101321A1 (en) 2009-09-16
EP2101321A4 (en) 2010-01-13

Similar Documents

Publication Publication Date Title
WO2009059513A1 (fr) Procédé de codage, codeur et support lisible par ordinateur
WO2009006819A1 (fr) Procédé de recherche de livre de code fixe, système de recherche et support lisible par ordinateur
KR101190875B1 (ko) 차원 벡터 및 가변 분해능 양자화
CN110313183A (zh) 用于对视频内容进行编码的迭代技术
RU2462769C2 (ru) Способ и устройство кодирования кадров перехода в речевых сигналах
CN101430881B (zh) 一种编码、解码、编解码方法、编解码系统以及相关装置
US7574354B2 (en) Transcoding between the indices of multipulse dictionaries used in compressive coding of digital signals
CN106537500B (zh) 周期性综合包络序列生成装置、周期性综合包络序列生成方法、记录介质
CN110401836A (zh) 一种图像解码、编码方法、装置及其设备
KR20040083903A (ko) 전역 펄스 교체를 통한 고정 코드북 검색 방법
CN105960676B (zh) 线性预测分析装置、方法以及记录介质
CN1271925A (zh) 用于码激励线性预测语音编码的整形的固定码簿搜索
CN105493106B (zh) 用于基于梯度直方图编码图像描述符的图像处理装置和方法
KR101621331B1 (ko) 펄스 인코딩 방법 및 장치와, 펄스 디코딩 방법 및 장치
CN110415715A (zh) 线性预测分析装置、方法、程序以及记录介质
WO2009071018A1 (fr) Dispositif et procédé de recherche dans un répertoire codé de séquences fixes
KR100813260B1 (ko) 코드북 탐색 방법 및 장치
KR101181027B1 (ko) 디지털 신호 정렬을 위한 시스템, 방법 및/또는 장치
Byun et al. An Embedded ACELP Speech Coding Based on the AMR‐WB Codec

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 08773063

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2128/KOLNP/2009

Country of ref document: IN

ENP Entry into the national phase

Ref document number: 2009548568

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 1020097012233

Country of ref document: KR

WWE Wipo information: entry into national phase

Ref document number: 2008773063

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE