MXPA06008536A - Dimensional vector and variable resolution quantisation - Google Patents

Dimensional vector and variable resolution quantisation

Info

Publication number
MXPA06008536A
MXPA06008536A MXPA/A/2006/008536A MXPA06008536A MXPA06008536A MX PA06008536 A MXPA06008536 A MX PA06008536A MX PA06008536 A MXPA06008536 A MX PA06008536A MX PA06008536 A MXPA06008536 A MX PA06008536A
Authority
MX
Mexico
Prior art keywords
dimension
dictionary
vector
resolution
index
Prior art date
Application number
MXPA/A/2006/008536A
Other languages
Spanish (es)
Inventor
Massaloux Dominique
Lamblin Claude
Virette Davidd
Kovesi Balazs
Original Assignee
France Telecom
Kovesi Balazs
Lamblin Claude
Massaloux Dominique
Virette David
Filing date
Publication date
Application filed by France Telecom, Kovesi Balazs, Lamblin Claude, Massaloux Dominique, Virette David filed Critical France Telecom
Publication of MXPA06008536A publication Critical patent/MXPA06008536A/en

Links

Abstract

The invention relates to compression coding and/ or decoding of digital signals, in particular by vector variable-rate quantisation defining a variable resolution. For this purpose an impulsion dictionary comprises:for a given dimension, increasing resolution dictionaries imbricated into each other and, for a given dimension, a union of:a totality (D'iN) of code-vectors produced, by inserting elements taken in a final set (A) into smaller dimension code-vectors according to a final set of predetermined insertion rules (F1) and a second totality of code-vectors (Y') which are not obtainable by insertion into the smaller dimension code vectors according to said set of the insertion rules.

Description

(AM, AZ, BY, KG, KZ, MD, RU, TJ, TM). européen (AT) Concerning the codes a deux letlres et autres abrévia- BE, BG, CH, CY, CZ. DE DK. EE ES ES. Fl, FR GB. GR. nons. éféférer aux "Notes explicaltves relalives aux codes el HU. IE, IT, LU, MC, NL. PT. RO. SE, YES. SK, TR), OAP1 abiéviaiw s "will appear au débm de choque num ro ordi air de (BF, BJ, CF, CG, Cl, CM, GA, GN, GQ, ML, MR, NE, Gazeue du PCT, SN, TD, TG) Declaration in vertical of regulation 4.17: - relative? the qualit d'i venieui (regle 4 17 iv)) for US seulemeni Publi? e: - avec rapport de recherche internaiionale (57) Abrégé: The present invention relates to codage et / o décodage in compression of numerical signatures. in parliculier par quantification vectorielle á débit variable définissant une variable resolution. Elle vise á cet effet a dictionnaire á impulsions com-portanl d'une part. pour un dimension donnée, des dictionnaires de résolution croissante imbriques les uns dans les autres, et, d'autre part, for a dimension donpée, a union d'un ensemble (D ', N) of vecleurs-codes construits en insérant, dans des vecteurs-codes of dimension infépeure, des élémenls pris dans ensemble fini (A) selon un jeu f? ni of regles d'insertion prédélerminées (Fl), the d'un deuxiéme ensemble constituted of vecteurs-codes (Y ') ne pouvanl étre obtenus parinsertion dans des vecteurs-codes of dimension inférieure selon ce jeu de regles d'insertiop.
QUANTIFICATION OF VARIABLE RESOLUTION AND DIMENSIONAL VECTOR Field of the Invention The present invention relates to the encoding and / or decoding of compression of digital signals, such as audio, video signals and more generally, multimedia signals for storage and / or transmission. Background of the Invention A very widespread solution in the compression of digital signals, is the quantification of the vector. A first incentive to use vector quantification can be found in the block coding theory developed by Shannon according to which better performance can be achieved by boosting the size of the vectors to be encoded. The quantization of the vector consists of representing an input vector by a vector of a similar dimension selected from a finite set. Therefore, providing a quantifier with M levels, (or code vectors) adds to the creation of the non-bijective mapping of the set of input vectors (usually the real Euclidean space with n dimensions Rn, or plus a subset of Rn) in a finite subset of Y of Rn. The subset Y then comprises different M elements: Y =. { yi, y2, ... and M +} .
And it is called the reproduction alphabet, or in addition the dictionary, or in addition the directory. The elements of Y are called "code vectors", "code words", "exit points" or in addition "representative". The index by dimension (r) of the quantifier (or in addition its "resolution") are defined by: r = - log, M n In quantifying the vector, a block of n samples is processed as a vector of dimension n. The vector is encoded by selecting a code vector from a dictionary of M-code vectors, to which one has to "look like" more. In general, an exhaustive search is made among all the elements of the dictionary to select the dictionary element that minimizes a measure of the distance between it and the input vector. According to the theory of source coding, when the dimension becomes too large, the operation of the quantization of the vector approaches a limit called "index distortion limit at the source". Apart from the dimensionality of the space, the quantization of the vector can also use the properties of the source to be encoded, for example, non-linear and / or linear dependencies, or in addition the form of the probability distribution. In general, dictionaries of vector quantifiers are designed based on procedures statistics, such as Lloyd's generalized algorithm (called GLA). This algorithm, well known, is based on the conditions necessary for the optimal quantification of a vector. The dictionary is constructed in an iterative way based on a training sequence representative of the source to be encoded and of an initial dictionary. Each iteration comprises two steps: the construction of the quantification regions by the quantization of the sequence of training in accordance with the rule of the nearest neighbor, and the improvement of the dictionary by replacing the old code vectors with the centroids of the regions (according to the centroid rule). To avoid convergence with a local minimum of this determinant iterative algorithm, the so-called "stochastic relaxation" variants (indicated as SKA) have been proposed for the "Stochastic K-media algorithm" inspired by the simulated annealing technique introducing randomness in the construction step of the centroids and / or in the construction step of the classes. The statistical vector quantifiers obtained in this way have no structure whatsoever, thus presenting their expensive exploration in terms of calculations and memory avidity. Specifically, the complexity of both coding and storage is proportional to n.2pr. This exponential increase as a function of the dimension of vectors and of the index limit the use of unstructured vector quantifiers to small dimensions and / or low indices so as to be able to implement them in real time. Quantification of scale, which quantifies the samples individually, is not as effective as the quantification of the vector, because it can only use the shape of the probability distribution of the source and the linear dependence. However, quantification of scale is less expensive in terms of calculations and memory than quantification of the vector. In addition, the scale quantification associated with the entropy coding must achieve good performance even at moderate resolutions. In order to avoid size and dimension restrictions, several variants of the basic quantification of the vector were studied, in an attempt to remedy the absence of dictionary structure and thus, were successful in reducing complexity to the detriment of the quality. However, the performance / complexity compromise is improved and it is possible to increase in this way the distance of the resolutions and / or the dimensions to which the quantification of the vector must be applied effectively in terms of calculation and memory cost . In the literature, numerous schemes of structured vector quantifiers have been proposed. The main ones are the following: the tree vector quantifier which imposes a hierarchical tree structure in the dictionary: the The search procedure is simplified, but the quantifier requires more memory for storage, the multistage vector quantifier which has cascades of vector quantifiers of lower levels: the dictionaries are small and effective with respect to the calculation time and the cost of memory, the vector quantifier called the "Cartesian Product" of the classical vector quantifiers N of smaller dimensions and sizes: the input vector is decomposed into N subvectors, each subvector being quantified independently of the others, the The quantizer of the "gain / orientation" vector constitutes a particular case of the "Cartesian product" vector quantifier: two quantifiers are provided, a scale quantizer and a vector quantifier which are separately coded independently of each other, the gain (or the norm) of the vector and its orientation (considering the normalized input vector). This type of quantification of the vector is also called "spherical" vector quantifier or "polar" vector quantization, the vector quantifier of "permutation code", whose code vectors are obtained by permutations of the components of a main vector and its generalization for the compounds (or the union) of permutation codes. The techniques described above, all are within a statistical method. Another radically different method has also been proposed.
This is the quantification of the algebraic vector which uses highly structured dictionaries, which arise from the regular lattices of codes of points or error correctors. By virtue of the algebraic properties of their dictionaries, algebraic vector quantifiers are simple to implement and do not have to be stored in memory. The use of the regular structure of these dictionaries really allows the development of optimal and fast search algorithms, and of the mechanisms to associate, in particular, an index with a corresponding code vector (for example, through a formula) . Algebraic vector quantifiers are less complex to implement and require less memory. However, they are optimal only for a uniform distribution of the source (either in space or on the surface of a hypersphere). Being a generalization of the quantizer of uniform scale, the algebraic vector quantifier is more difficult to design for the distribution of the source through the technique called "compression-expansion".
It has also been recalled that the indexing (or numbering) of the code vectors and the inverse operation (decoding) requires more calculations than in the case of vector statistical quantifiers, for which these operations are performed by simple readings of a table . Certain aspects of the variable dimension quantification and the problems encountered are presented below. First, it is indicated that quantification of the vector is a well-known and effective technique for coding blocks of fixed length samples. However, in many digital signal compression applications, the signal to be encoded is designed by a sequence of variable length parameters. Effective compression of these variable-dimension vectors crucial for the design of many multimedia encoders, such as voice or audio encoders ("MBE" encoder, harmonic encoder, sinusoidal encoder, transformation-based encoder, encoder based on interpolation of prototype waveforms). In sinusoidal encoders, the number of extracted sinusoids depends on the number of sinusoidal peaks detected in the signal, whose number varies over time as a function of the nature of the audio signal. In addition, numerous voice compression techniques use the long-term periodicity of the signal. This is the case of harmonic encoders where the spectrum components of the set of frequencies, which are encoded the harmonies of the fundamental period of the exponent. The number of harmonic peaks of the spectrum, being proportionally inverse to the fundamental frequency, since this fundamental period varies according to the speaker (generally, children who have a higher frequency of vibration of the oral cords than adults), and With the passage of time, the number of components that are going to be quantified frame by frame also changes with the passage of time. This is also the case with PWI encoders (called "Prototype Waveform Interpolation"), where prototype waveforms are extracted in segments of length equal to the step period and hence, which are also temporarily variable. Of the PWI encoders, the quantization of these variable length waveforms is done by means of the gain coding (or "RMS", starting for "Root-Average-Square") separately and the normalized vector form which is by itself decomposed into two waveforms of the same variable length: the waveform REW ("Waveform of Rapid Evolution") and the waveform SEW ("The Waveform of Slow Evolution"). For a fixed-length frame, the number of prototypes is variable and hence the number of REW and SEW gains is also variable, as is the dimension of the REW and SEW waveforms. In other types of encoders, such as the encoders of audio based on the transformation, where the number of transformation coefficients obtained in the fixed length frame lengths is imposed, but it is usual to group these coefficients in frequency bands for their quantification. In a conventional way, this division is made in bands of unequal widths to use the physico-acoustic properties of the human ear following the critical bands of the ear. The distance of the variation of the dimensions of these vectors of the transformation coefficients generally varies from 3 (for the lowest frequency bands) to 15 (for the high frequency bands), in the broadband encoder (50 Hz- 7000 Hz), and even up to 24 on an FM band encoder (covering the audible range of 20 Hz to 16000 Hz). Theoretically, the variable-dimension optimal vector quantifier would use a set of fixed-dimension dictionaries, one for each possible dimension in the input vector. For example, in harmonic encoders, for a period of 60 to 450 Hz, the number of harmonic peaks in the telephone band varies from 7 for high-pass voices (children) to 52, for low-pass voices (adults) ) and it would be necessary to build, place in memory and implement 46 vector quantifiers (46 = 52-7). The design of each dictionary requires a learning sequence long enough to correctly represent the statistics of the input vectors. In addition, the storage of all the dictionaries becomes not practical and very expensive in the memory. Therefore, it has been found that in the case of the variable dimension, it is difficult to collect the advantages of quantizing the vector while complying with the memory storage restrictions and also the training sequences. Below are certain aspects of a quantification with a variable resolution and the problems encountered. Firstly, it is pointed out that the variability of the input signal is not only manifested through the variation in the number of parameters that are going to be encoded, but also through the variation of the amount of binary information that will be transmitted for a certain quality. For example, in case of voice, presentations, voice sounds and non-voice sounds, the same index is not required for one and the same quality. Relatively unpredictable presentations require a higher index than voice sounds that are more stable and whose seasonality should be exploited by "predictors" which make it possible to reduce the index. Finally, non-voice sounds do not require high coding accuracy and hence need a low index. To use the temporal variation of the characteristics of multimedia signals, such as voice and video signals, it is wise to design variable index encoders. These variable index coders are especially suitable for communications on lattices in the form of packages, such as the Internet, ATM, or others. Specifically, the packet change makes it possible to handle and process the information bits in a more flexible manner and hence increase the capacity of the channel by reducing the average rate. The use of variable index coders is also an effective means to combat system congestion and / or accommodate the diversity of access conditions. In multimedia communications, variable index quantifiers also make it possible to optimize the distribution of the index between: source and channel encodings: as in the concept of AMR ("Multi Adaptable Index"), the index can be changed in each box 20-ms to be dynamically adapted to traffic conditions and channel error. Therefore, ss improves the overall quality of the voice by ensuring good pction against errors, while reducing the index for source coding, if the channel is degraded; - the different types of media signals (such as voice and video signals in video conferencing applications); the different parameters of one and the same signal: the audio encoders based on the transformation, for example, it is usual to dynamically distribute the bits between the wrapping of the spectrum and the different bands of coefficients. An entropy coding of the envelope is often done first and its objective is to use the non-uniform distribution of the code words by assigning variable length codes to the code words, with the most probable ones having a shorter length than the least likely ones , thus leading to the minimization of the average length of code words. In addition, to use the physico-acoustic properties of the human ear, the remaining (variable) index is dynamically distributed in the frequency bands of coefficients as a function of its perceptual meaning. New multimedia coding applications (such as audio and video) require highly flexible quantifications both in terms of dimension and index. The index range also has to make it possible to achieve high quality, and these multi-dimensional and multi-resolution quantifiers must be focused on high resolutions. The complexity barrier imposed by these vector quantifiers remains, per se, and the operation that is going to be achieved despite the increase in the processing powers and memory capacities of the new technologies. As can be seen below, most of the proposed source coding techniques are focused, since either to solve the problems related to the variable dimension or the problems related to the variable resolution. Few of the techniques proposed to date make it possible to solve these problems jointly. With respect to the quantification of the vector with variable dimension, known, the variability of the dimension of the parameters to be encoded constitutes per se an obstacle to the use of the quantification of the vector. Therefore, the first versions of the encoder based on the transformation use the Lloyd-Max scale quantifiers. An encoder of this type, called "TDAC", developed by the Applicant, is described in particular in: "Coding of High Quality Audio Transformation in 64 kbit / s", by Y. Mahieux, J. P. Petit, published in I EEE Trans. Commun, Vol. 42, No. 1 1, pages 301 0 to 301 9, November 1 994. Other solutions have been proposed to solve this problem of vector quantization of variable dimension. The "I MBE" encoder uses a complicated coding scheme with binary distributions of the variables and a hybrid scaling / vector quantification. A very commonly used method for quantizing variable-dimension vectors consists in pre-processing the variable-dimension vector so as to convert it to another fixed-dimensional vector before quantization. There are several variants of this vector quantification technique associated by the dimension conversion (this type of quantification being called Vector as DCVQ "Quantization of Conversion Vector Dimension"). Among the different dimension conversion methods proposed, mention may be made in particular of: truncation, sub-sampling, interpolation, "length deformation". For sinusoidal voice coders or MBEs, it has been proposed that the spectrum coefficients be approximated by a model of all the poles of a fixed order and then a quantization of the fixed dimension vector of the parameters of the model to be performed. Another vector quantification technique by means of a non-square matrix transformation solves the problem of the quantization of the variable dimension vector L, combining a quantization of the fixed dimension vector K (K < L), with a linear matrix transformation square (LxK). There is also another type of vector quantization associated with a dimension conversion, which still uses a fixed-dimension vector quantifier K, but the conversion of the dimension is applied to the coding vectors to obtain coding vectors having the same dimension as the input vector. The disadvantage of quantizing the vector associated with a dimension conversion is that the total distortion has two components: one due to quantization and the other, to dimension conversion. To avoid this distortion due to the dimension conversion, another method of quantifying the vector of Variable dimension consists in considering each variable dimension input vector L as being formed of a subset of components of an "underlying" vector of dimensions K (L <K), and in the design, using only a single "universal" dictionary "of fixed dimension K, which nevertheless covers the total distance of dimensions of the input vectors, the correspondence between the input vectors being affected by a selector. However, this "universal" dictionary that includes all the other dictionaries of lower dimensions does not seem to be optimal for the lower dimensions. In particular, the maximum resolution rma per dimension is limited by the storage constraint by the parameter vector index. For a dictionary of a size 2Krmax, the amount of memory required to store this dictionary is K2Krmax values and its index per parameter vector is Krma? - Therefore, for one and the same dictionary size (and hence one and the same index per parameter vector and per frame), a vector of dimension L (L <K) could have a resolution (or an index per dimension) K / L times larger, and this for K / L by the smaller than a volume of information is going to be stored. Regarding the quantification of the vector with known variable resolution, a solution always consists, as in the case of the quantization of the vector with variable dimension, to use a scale quantization, as for example, the first versions of the encoder based on the TDAC transformation.
However, the use of an entire resolution by samples comprises a coarse granularity of resolution per band of coefficients which hinders the effectiveness of the binary dynamic distribution procedure. Therefore, the use of scale quantizers with an integer not of reconstruction levels has been proposed, in combination with a procedure for adapting the coded indices as a binary train link. The finer granularity of the presented resolution is more propitious for the binary distribution procedure and has made it possible to improve the quality, at the cost of the complexity of the algorithm to combine the indices, this algorithm being necessary for the rearrangement of a binary train for that is effective in terms of the index. However, for high frequency waves having a large number of coefficients, the restriction of the whole number of levels per sample, due to the quantization of scale, is still manifested through too coarse granularity of the resolutions per band. Quantification of the vector makes it possible to avoid this restriction of a number of integer levels per sample and allows a fine granularity of the available resolutions. On the other hand, the complexity of quantifying the vector often limits the number of available indexes. For example, the multiple index voice encoder AMR-NB based on the well-known ACELP technique comprises eight fixed ranges in a range of 12.2 kbit / s to 4.75 kbit / s, each having a different level of protection against errors in virtue of a different distribution of the index between source coding and channel coding. For each of the ACELP encoder parameters (LSP, LTP timers, excitation gains, fixed excitation), dictionaries of different resolutions have been built. However, the number of indices available for each of these parameters is limited by the storage complexity of non-algebraic vector quantifiers. In addition, the AMR-WB multiple index encoder comprising nine indices in a range of 6.60 to 23.85 kbit / s, the variation of the indexes is essentially ensured by the algebraic excitation dictionaries which do not require storage. There are eight dictionaries and, therefore, eight indices for fixed excitation while the other parameters used by stochastic dictionaries (LSP), earnings, differential and absolute delays) have only two possible indices. It has been indicated that the stochastic vector quantifiers used for AMR multiple index coders are vector quantifiers with restricted structures (the Cartesian product and multiple stages). A large family of variable index quantifiers can in fact be based on constrained structure vector quantifiers, such as the aforementioned quantifiers having multiple stages, Cartesian products, but also tree-based vector quantifiers. The use of these tree-based vector quantifiers for variable index coding has been the subject of numerous studies. He Vector quantifier based on binary tree was the first to be introduced. This naturally derives from the LBG algorithm to design a vector quantifier by means of successive divisions of the centroids based on the "root" node, the barycenter of the training sequence. Variant tree type vectors, proposed based on reduction or on the contrary, based on the branching of certain tree nodes according to their attributes, such as their distortion, their population leading to vector quantifiers based on tree not binary and / or unbalanced. Figures 1 a and 1 b represent the tree-structured vector quantifiers. More particularly, Figure 1 a represents a balanced binary tree, while Figure 1 b represents a non-binary and unbalanced tree. The multiple resolution vector quantifiers are easily constructed based on the quantifier of the tree type vector, selecting the number of corresponding nodes for the different desired resolutions. The tree-like hierarchical structure is attractive and simplifies the search procedure. On the other hand, it includes the suboptimal search for a significant increase in the necessary memory, since all the nodes of the tree must be stored from the root node to the terminal nodes, passing through all the nodes of the intermediate levels. Also, since the set of nodes in a lower resolution dictionary is not included in the higher resolution dictionaries, the decrease in the quantification error as a function of the increase in the vector quantifier index is not guaranteed locally. In addition, the way to construct the variable resolution quantifiers based on the algebraic codes is known, in particular, algebraic vector quantifiers embedded EAVQ, which use subsets of spherical codes of the regular Gosset lattice in dimension 8. In the document : "A broadband voice codec of 16, 24, 32 kbit / s based on ACELP" by P. Combescure, J. Schnitzler, K. Fischer, R. Kircherr, C. Lamblin, A. Le Guyader, D. Massaloux, C. Quinquis, J. Stegmann, P. Vary, in the Act of the IEEE International Conference on Acoustics, Voice and Signal Processing, Vol. 1, pages 5 to 8, 1999, this method of quantification of embedded algebraic vector has been extended to the variable dimension quantification using algebraic codes of different dimensions. Although this generalization of EAVQ quantification makes it possible to quantify vectors of variable dimension in variable resolutions, it has disadvantages. The distribution of the input vectors must be uniform. However, adapting the source distribution to this restriction is a very difficult task. The design of algebraic quantifiers based on regular lattices also has the problem of truncating and designing the regions of different lattices regular to obtain the different desired resolutions, doing this for the different dimensions. Brief Description of the Invention The objectives of the present invention are to improve the situation. One of the objects of the present invention is, in a general way, to propose an effective and economic solution (in particular, in terms of storage memory) to the problem of the variable index quantization of the variable dimension vectors. Another object of the present invention is, in a non-limiting manner, to propose a vector quantization that advantageously accommodates the coding and decoding of digital signals using a quantization of the spectrum amplitudes of the harmonic encoders and / or the coefficients of transformation of frequency encoders, in particular voice and / or audio signals. For this purpose, a dictionary comprising variable-dimensional code vectors is proposed and is intended to be used in an apparatus for the coding and / or decoding of digital signal compression, by means of the vector coding of a variable index defining a variable resolution, the dictionary comprises: on the one hand, for inter-embedded dictionaries of a certain dimension of increasing resolution, and, on the other hand, for a variable dimension, a union: of a first set consisting of code vectors constructed by inserting into the code vectors of lower dimension dictionaries, elements taken from a finite set of real numbers according to a finite collector of predetermined insertion rules, and of a second set consisting of code vectors that may not be obtained by inserting in lower-dimensional code vectors into the elements of said finite set according to the collection of the insertion rules. Preferably, said collection of rules of insertion is formulated based on the elementary rules consisting of inserting a single element of a finite set of reals in the set of components in a determined position of a vector. Each elementary rule is preferably defined by a pair of representative positive integers: from a classification of the element in the finite set, and an insertion position. It should be understood that the insertion rules characterized in this way are read and are directly reduced from the actual structure of the dictionary within the meaning of the invention. Of course, in a purely reversible way, it is possible to define elimination rules consisting of eliminating one or more elements of a finite set of given dimensions N 'as to achieve a lower dimension N (N <N'). The present invention also aims at a method for forming a dictionary according to the invention, in which, for a given dimension: a) a first set consisting of code vectors formed by inserting / removing within / code vectors of lower / higher dimension item dictionaries taken from a finite set of real numbers according to a finite collection of the default insertion / deletion rules, b) a first intermediate dictionary is constructed for that given dimension which comprises less said first set, c) and, adapting the dictionary to a use with at least a certain resolution, a second definitive dictionary is constructed based on the intermediate dictionary, embedding / simplifying the dictionaries of increasing / decreasing resolutions, the dictionaries being inter-embedded of resolutions increasing from dictionary to smaller resolutions until the higher resolution dictionary. Of course, the terms "embedding a set A into a set B" are meant to imply the fact that set A is included in set B. In addition, the terms "simplification of set A to obtain set B" are intended to mean the fact that the set A includes the set B. As a variant or supplement, it is understood that the steps a), and b), on the one hand, and step c) on the other, can be substantially invested to adapt said dictionary for a use with a given dimension N of code vectors. In this case: in step c), a first intermediate dictionary is constructed, still of dimension N 'but of a resolution rN higher / lower based on an initial dictionary of resolution G and dimension N' by means of the inlay / simplification of the dictionaries of increasing / decreasing resolutions, such as to achieve substantially the resolution rN of the first dictionary, in step a), to achieve a certain dimension N, a first set consisting of code vectors formed by inserting / removing is constructed , within / of the code vectors of the first dictionary of the dimension N 'lower / higher than said dimension N the elements formed of the finite set of real numbers according to a finite collection of predetermined insertion / deletion rules, - and , in step b), after a possible step of definitive adaptation of the rN resolution, a second definitive dictionary is constructed that includes we said the first set for said determined dimension N. It is possible to implement step a) by increasing successive dimensions. In this case, for a given dimension N: aO) is obtained an initial dictionary of initial dimensions n, less than the determined dimension N, a1) a first set is constructed consisting of vector code of dimension n + i forming by inserting in the code vectors of the initial elements of the dictionary taken from a finite set of real numbers according to a finite collection of predetermined insertion arrays, a2) a second consistent set of dimension vectors n + i is provided which may not be obtained by inserting the code vectors of the initial dictionary of the elements of the finite set with said collection of rules of insertion, a3) an intermediate dictionary is constructed, of dimension n + i comprising a union of first set and the second set, and steps a1) to a3) they are repeated, at most Nn-1 times in which case (i = 1), with the intermediate dictionary in the components of the initial dictionary, until said dime Nsión n determined. It is also possible to implement step a) by decreasing successive dimensions. In this case, for a given dimension N: a'0) we obtain an initial dictionary of initial dimension n, higher than the dimension N, determined, and a'1) a first set of dimension neither, it is constructed by selecting and making the extraction of possible code vectors of the dimension nor of the dictionary of dimension n, of In accordance with a finite collection of predetermined deletion rules, a'2) a second set of consistent dimension vectors is provided, which can not be obtained simply by removing the vectors of the initial dictionary code from the elements of said finite set with the collection of elimination rules, a'3) an intermediate dictionary is constructed, of dimension neither that includes a union of the first set and the second set, and the steps of a '1) are repeated to a'3 ) when much nN-1 times in which case (i = 1), with said intermediate dictionary in the initial dictionary set up to a certain dimension N. To obtain a plurality of N dictionaries of successive dimensions from 1 to N, it is possible to combine the steps from a1) to a3), and steps from a '1) to a'3), preferably based on an initial dictionary of dimension n (n < N) and through the repeated implementation of steps a1) through a3) for dimensions from n + 1 to N, and through the repeated implementation of steps a '1) through a' 3) for dimensions from n-1 to 1. Therefore, you get all or part of N dictionaries of which the largest dimension dictionary has the dimensions N. The finite set and the collection of insertion / deletion rules are used to build dictionaries of successive dimensions and can be defined as: a priori, before constructing the dictionary by means of the analysis of a source that is going to be quantified, or a posteriori, after the construction of the dictionaries, preferably by means of the embedding / simplification of the dictionaries of successive resolutions, this construction being then followed by a statistical analysis of these dictionaries constructed in this way. It is indicated that the source to be quantified is preferably modeled by a learning sequence and the definition "a priori" of the finite set and the collection of insertion / elimination rules is preferably affected by the statistical analysis of the source. The aforementioned finite set of preference is selected by estimating a one-dimensional probability density of the source to be quantized. Combining the a priori and posteriori definitions of the finite set and the rules of insertion: a first set and a first collection of insertion / elimination rules can be selected in a profitable manner a priori by analyzing the learning sequence, as to form one or more intermediate dictionaries, at least a part of said first set and / or said first collection of insertion / deletion rules is updated by an ex post analysis of said one or more intermediate dictionaries, and, as appropriate, at least a part of the set of code vectors forming said one or more intermediate dictionaries is also updated. Preferably, step c) of adaptation to a given resolution comprises the following operations, to achieve increasing resolutions: cO) an initial initial resolution dictionary rn is obtained, lower than said determined resolution rN, d) based on the initial dictionary, build an intermediate dictionary of resolution rn +? greater than the initial resolution rn, c2) operation d) are repeated until the determined rN resolution has been achieved. Advantageously, for each iteration of operation d), a construction of classes and centroids is provided, in which the centroids belonging to at least the higher resolution dictionaries than a current resolution r, are recalculated and updated. In addition, the centroids belonging to the lower resolution dictionaries that the current resolution r, are preferably updated only if the total distortions of all the lower resolution dictionaries are decreasing from one update to the next. As a variant supplement, step c) comprises the following operations, now to achieve the descending resolutions: c'O) an initial initial resolution dictionary rn is obtained, higher than the determined rN resolution, c '1) based on the initial dictionary, an intermediate resolution dictionary rn-1 smaller than the initial resolution rn is constructed, dividing the initial dictionary into several subsets ordered according to a previously determined criterion , and c'2) operation c '1) is repeated until the determined GN resolution is achieved. Advantageously, this division may use the partial composition by controlled extension within the meaning of steps a) and b), using at least a part of the insertion / removal rules implemented. To obtain a plurality of N successive dictionaries of respective resolutions of the rN on the basis of an initial intermediate resolution dictionary rn between the ri and GN resolutions, it is advantageously possible to implement a repetition of step d) for the increasing resolutions rn +? to GN, and through the repeated implementation of step c'1) for the descending resolutions of the rn-? a r < \ It should be understood that the finite set and the collection of insertion / deletion rules can be selected in a useful way through a study, a posteriori, of a statistic of the dictionaries obtained in this way of different resolutions and dimensions to form a dictionary within the meaning of the invention of the desired dimensions and resolutions.
According to one of the advantages provided by the present invention, the storage of memory required for the implementation of the encoding / decoding can be reduced considerably. Specifically and profitably and once and for all, said collection of insertion / elimination rules is stored in a memory, each identified by an index and by a certain dimension: a second set consisting of code vectors that may not be obtained by applying the insert / delete rules to the code vectors of higher / lower dimension than the given dimension, as well as at least one correspondence table that makes it possible to reconstitute any dictionary code vector of a given dimension , using the indexes of the insertion / elimination rules and the indices that identify the elements of said second set. Therefore, the complete storage of the dictionary for said given dimension is avoided, simply by storing the elements of the second set and the links in the correspondence table for accessing these elements and the associated insert / delete rules. Therefore, it should be understood that, for a given dimension, the aforementioned second set may advantageously consist of "second" subsets of dimensions lower than a certain dimension. In one embodiment, the insertion / deletion mechanism itself can be stored in the set of routines of the program, while the insertion / deletion parameters, for a given insertion / deletion rule can be stored in a general correspondence table (in principle, different from the aforementioned correspondence table), in combination with the index of the given insertion / deletion rule. Preferably, the correspondence tables for each index of a code vector of a dictionary of a given dimension which can be reconstructed based on the elements of the current indices in the second current dimension set, are formulated beforehand through a tabulation of three integer scale values that represent: a current dimension of said second set, a current index of an element of said set, an index of the insertion / deletion rule, contributing at least this insertion / elimination rule to reconstitute the dictionary code vector of a given dimension, applying the insertion / deletion to the element corresponding to the current index and the current dimension. These latter features can be usefully implemented in a compression encoding / decoding method, as described below.
In this aspect, the present invention also aims at the use of a dictionary according to the invention and which is obtained through the implementation of the steps mentioned above, for the encoding / decoding of digital signal compression, by means of the quantification of the vector in a variable index that defines a variable resolution. In particular, a search is made of the code vector which is the nearest neighbor of an input vector y = (y0 and k Yj-i) in a dictionary of a given dimension j. This use then implements the following steps: C01) for a current index of said predicted code vector, the at least partial reconstitution of an index code vector corresponding to the current index, at least through the previous reading of the indexes that appear in the correspondence tables and, where appropriate, an element of the second set making it possible to formulate said dictionary, continuing the method with the appropriate coding / decoding steps, which comprise: C02) at least in the coding, the calculation of a distance between the input vector and the code vector reconstituted in step C01), C03) for at least the coding, the repetition of steps C01) and C02), for all current indices of the dictionary, C04) at least in coding, identifying the index of the at least partially reconstituted code vector whose distance is the smallest, calculated in the course of one of the iterations of step C02) with the input vector, and C05) at least in decoding, determining the nearest neighbor of the input vector (y) in the set of code vectors whose index has been identified in step C04). As indicated above, it is recalled that the aforementioned "second" set preferably consists of a "second" subset of dimensions lower than a given dimension of the second set. In a particular embodiment, step C01), at least in the decoding, comprises: C01 1) the reading, in the correspondence tables of the indexes representative of the links to the second set and the rules of insertion and includes: - the index of a current dimension of a subset of the second set, the current index of an element of said subset, and the index of the insertion rule appropriate for the construction of the dictionary code vector of a given dimension, based on said element , C012) the reading, in the subset identified by its current dimension, of said element identified by its current index, C013) the complete reconstitution of the code vector to said determined dimension applying the reading of the element of the step C012) to the appropriate insertion rule identified by its reading of the index in step C01 1). In a particular embodiment, in the coding, * Step C01) comprises: C01 1) the reading, in the correspondence tables of the indexes representative of the links to the second set and the rules of insertion including: the index of a current dimension of a subset of the second set, - the current index of an element of said subset, and the index of the insertion rule appropriate for the construction of the dictionary code vector of a given dimension, based on said element, C012) reading, in the subset identified by its current dimension, of said element identified by its current index, * in step C02), said distance is calculated as a function of the distortion criterion calculated as a function of: said insertion rule, and said element. Therefore, it is possible to provide only a partial reconstruction of the code vector with said dimension determined in step C01), simply reserving the complete reconstruction for decoding. In a profitable modality, a property is provided of supplementary structuring according to a union of the permutation codes and the index of that union of the permutation codes is used in the implementation of the following steps: CP1) based on a current signal, is formed in an input vector y = (y0, ..., yk Yj-i) defined by its absolute vector | y | = (| yo |, • • -, | yk |, • • • > | yj-? |) and by the vector of the sign e = (e0, ..., ek, ..., e) with ek = ± 1, CP2) the components of the vector | y | they are classified by rising values, by means of the permutation, to obtain a leading vector | y | , CP3) the nearest neighbor xJ 'of the leader vector | y | is determined from the leading dictionary vectors D] ¡of dimension j, CP4) an index of the nearest neighbor classification xJ 'is determined in the dictionary Dj¡, CP5) and an effective coding / decoding value is applied to the input vector, which depends on the index determined in step CP4), in said permutation determined in step CP2) and in said sign vector determined in step CP1). According to another advantageous aspect of the present invention, for coding / decoding and possibly for the construction of the dictionary or dictionaries, there is the provision to store the correspondence tables and the elements of the second set mentioned above, in particular, in a memory of a compression coding / decoding apparatus. In this aspect, the present invention also has the purpose as such of an encoding / decoding apparatus. The present invention also aims at a computer program product for storage in a memory of a processing unit, in particular of a computer or a mobile terminal, or in a removable memory medium for cooperating with a reader of the processing unit, this program comprising instructions for the implementation of the construction method of the aforementioned dictionaries. The subject of the present invention is also a program of this type, in particular a computer program product to be stored in a memory of a particular processing unit, a computer or a mobile terminal that integrates the coding apparatus. decoding, or in a removable memory means for cooperating with a reader of the processing unit, then this program comprises instructions for implementation of the application to compression coding / decoding mentioned above. Brief Description of the Drawings Other features and advantages of the present invention are may be appreciated by examining the following detailed description, and the accompanying drawings in which, apart from the figures 1 a and 1 b described above: Figure 2a illustrates the embedding property of a dictionary within the meaning of the present invention, for a given dimension N, Figure 2b illustrates the property of the partial composition by extension Controlled Dictionary Within the Meaning of the Present Invention, Figure 3 illustrates the embedding of dictionaries as a function of increasing resolutions, Figure 4 illustrates the composition of code vectors of a dictionary based on dictionary code vectors of lower dimensions and the rules of insertion, Figure 5 illustrates the construction according to increasing resolutions of embedded dictionaries without re-updating the lower resolution dictionaries, Figure 6 illustrates a block diagram of an encoder "TDAC", Figures 7a through 7g represent the use of a vector quantizer for the broadband TDAC encoder within the meaning of the invention, illustrating the adaptations respectively: * a division into 32 bands (Figure 7a) , * resolutions by dimension (figure 7b), * the memory gain provided by the embedding property (figure 7c), * the memory gain provided by the two scaling and controlled extension properties (figure 7d), * the memory gain provided by the two structuring properties as an index dimension function, respectively with respect to the size of the memory required for the storage of a dictionary without using these two properties (figure 7e), * the first leaders of the set L ° in dimensions 1, 2 and 3 (figure 7f), and * the leaders of the permutation codes of the dictionaries in dimension 3 (figure 7g), figures 8a and 8b represent the FM band TDAC encoder, which respectively illustrate the adaptations: * a division into 52 bands (figure 8a), and * resolutions by dimension (figure 8b). Detailed Description of the Invention Referring first to Figures 2a and 2b which illustrate two main properties of a D DN dictionary within the meaning of the present invention. In figure 2a, for a given dimension N, the dictionaries D-? N, D2N, ..., D¡N of respective increasing resolutions n, r2, ..., r¡ are embedded among them. Therefore, the dictionary D¡N of maximum resolution r¡ makes it possible to determine a dictionary Lower Resolution DjN r (j < i), as will be seen later. This first property, indicated with PR, is called in the following "embedding property". Referring now to Figure 2b, any dictionary D¡N of a given dimension N and resolution rj is the union of two disjoint sets: Or a first set D'¡N consisting of constructed YN code vectors (arrow F3) ) by inserting, in the code vectors YN "1, the D¡N" 1 dictionaries of lowest dimension N-1 of the Xj elements taken (arrow F2) of a finite set A of real numbers according to the finite collection of insertion rules . { Rm} , determining an insertion rule R '(j, k) the elements Xj to be inserted (arrow F1) and the way to insert them (for example, in a position k of the vector YN under construction), O and a second set D1¡N consisting of vectors Y 'that can not be obtained by inserting it into the lowest dimension element code vectors of this finite set according to the aforementioned insert rule collection. This second property, indicated PD, is hereinafter referred to as "property of partial composition by controlled extension". In figures 2a and 2b, and in the brief description of the invention mentioned above, the indices for the resolution and / or for the dimension begin, by way of example, from the integer 1 to a given integer (i, n or N as the case may be). An expert in the programming technique, particularly in the C ++ language, will understand that these indexes can start rather from 0 and reach i-1, n-1 or N-1, according to the context. Therefore, in the example of figure 3 which will be described later, the highest resolution reached is Nj-1, starting from 0. The following describes a method of constructing a dictionary that has two structuring properties PR and PD, in particular, algorithms for the construction of these dictionaries structured in this way. The links induced by the two structuring properties are used profitably to develop algorithms for the construction of said dictionaries adapting iterative construction algorithms and generally used and described above, such as "GLA" or "SKA". In a general manner, it is indicated that: - interrelated dictionaries of different resolutions and of the same dimension are successively constructed using the PR embedding property, as a variant supplement, dictionaries of different dimensions are constructed, interrelated by the PD property of partial composition by means of the controlled extension, and said dictionaries of various dimensions and resolutions having the two structuring properties PD and PR are obtained. In general, to build embedded dictionaries with increasing resolution for a given dimension (PR), three construction methods are proposed. A first method is to build the dictionaries according to the increasing resolutions (from the lowest resolution to the maximum resolution). On the contrary, a second method is to build dictionaries according to descending resolutions (from the maximum resolution to the smallest resolution). A third method is to build dictionaries based on an intermediate resolution dictionary by lowering the resolutions to the minimum resolution and increasing them to the maximum resolution. This process is particularly beneficial when the nominal resolution of the variable resolution vector quantifier is the aforementioned intermediate resolution Finally, the property PR of embedding the dictionaries for a dimension j is obtained by: D0j Ü! J ... D¡ j DW .. DjNj-? Writing: j the number of resolutions (or possible indices in a variable index encoder) for dimension j, - the set of resolutions for dimension j, Rj =. { roj, r? ..., rj, rji +? , - • •, rjNj-1} , with red < r1j < ... < r &j < rj¡ +? < - - - < rjNj-? D¡j the dictionary of dimension j, of resolution r¡J T¡j the size of the dictionary of resolution . 1 r1Y T¡ '= 2' rr i. e. r3i = - log2TA) j Figure 3 illustrates the embedding of dictionaries as a function of increasing resolutions. The flow chart of the algorithm for construction according to the increasing resolutions without the new update of the lower resolution dictionaries is provided in figure 5. Referring to figure 5, the dictionary D0j of resolution is first constructed more low, after the initialization step 51 and 52 where the first place i = 0 and the iteration index of the iter = 0 circuit is set. Then the lower resolution dictionary D0j is being set, and the immediately higher resolution dictionary D-? J is constructed with the aid of a variant of a conventional construction algorithm described below. The method is repeated until the maximum resolution dictionary DjNj-? . Therefore, in step 53 where, by means of an iterative process, it is sought to construct a dictionary Dj based on an initial dictionary Dj (0) formed by attaching the vectors (Tp'-TiA) to the dictionary DiA of lowest resolution r.
The algorithm for the construction of classes 54 is identical to the conventional algorithm, but the algorithm for the construction of the centroids Tj 55 is modified. Specifically, the centroids (TjJjj) that do not belong to the dictionaries of lower resolution are recalculated and updated, while the centroids (T¡_? J ') of the lower resolution dictionaries are not updated again. A variant allows the new update of the centroids of the lower resolution dictionaries in the case where the total distortions of all the lower resolution dictionaries decrease or remain constant. In this case, dictionaries of lower resolutions are modified accordingly. The repetition of the circuit index is subsequently increased (step 56) to a number Niter (i, j) depending on the 1st resolution and the dimension j (step 57). Once the desired resolution Nj (step 58) is reached, we will obtain the dictionary in this resolution Nj (final step 59), and from there, that the set of dictionaries Dj of dimension r, being the range for i of 1 to Nj. To build dictionaries according to decreasing resolutions, first build the highest resolution dictionary. The latter being fixed, a division of the latter is carried out in different subsets that are ordered according to certain criteria. Several criteria can be used to order the division. For example, it is possible to order the subsets according to their cardinal numbers, their invocation in the learning sequence (that is, the cardinal number of the quantization regions), their contribution to the total distortion or more precisely to the decrease of this distortion. It is obviously possible to combine several criteria and weigh their respective importance. In a similar way, the division of the dictionary can be done in different ways: from an elementary division (one element of each subset) to a more elaborate division. This ordered division is based on the construction of the embedded dictionaries through the progressive union of their ordered classes. Preferably, the division can be based on the PD property of the partial composition by controlled extension by grouping the elements based on the extension of one and the same code vector based on a subset of the collection of insertion rules (possibly equal to this set itself). It should be noted that it is possible to do several iterations alternating the different procedures. For example, embedded dictionaries are built according to the increasing resolution procedure and then the descending resolution procedure is applied. Combining the two previous methods, the dictionaries embedded by the resolution are built based on an intermediate resolution dictionary rl. This first dictionary is therefore first constructed. Then, based on this dictionary, the lower resolution dictionaries are built with the help of the second method of descending resolutions and dictionaries of higher resolutions with the help of the first method of increasing resolutions. In a general way, three methods are also proposed to build dictionaries of different dimensions by partial composition by controlled extension (PD property). A first method is to increase the dimensions. Another method is to decrease them. Finally, the last method consists of starting by building the dictionary of an intermediate dimension and constructing, by means of successive increases and decreases, the dimension of the dictionaries of larger or smaller dimensions. The partial composition by controlled extension has led to a fine-tuning of the procedures to determine the finite set of reals and the collection of insertion rules that can be seen later. It is simply indicated here that, preferably, the proportion of "extended" elements (number of elements of the first set with respect to the cardinal number of the dictionary) is increasing with the dimension, thereby making it possible to reduce the storage cost of the second set, growing with the dimension. This proportion can be set a priori by the application's complexity constraints (memory / computing power) or it can be left "free". In the latter case, the construction algorithm advantageously favors the elements of the first set comprising elements obtained by controlled extension, as will be appreciated later. Therefore, the second PD property of partial composition by controlled extension is finally carried out by: writing: D'j¡ the set of code vectors of D¡J which can be obtained by inserting the code vectors of the dictionaries of elements of lower dimensions taken from a finite set A of R according to a collection of the insertion rules. { Rm} , - Dut its complement in DJ, the set of code vectors D, J that can not be obtained by inserting the code vectors of elements with the lowest dimension of A according to the collection of insertion rules. { Rm} . An example of the insertion rules to verify the second PD property is described below. First, a collection of elementary insertion rules is defined: each elementary rule consists of inserting one and only one element of the finite set of reals A as the component in a given position of a vector. Each elementary rule is provided by a pair of positive integers, giving one the classification of the element in the finite set and the other, the insertion position. Based on this collection of elementary rules, it is possible to compose any elaboration rules for the insertion components. Of course, in a purely reversible way, it is possible to define elimination rules that consist in eliminating one or more elements of a finite set of a given dimension N to reach a lower dimension N-n. To define an insertion rule, then we write: Na the cardinal of A and ai is its 1st element: A =. { a0, a-i, ..., a¡ ..., aNa- ?} , R '(im, pm) the elementary insertion rule which is to insert aim in the pm position. Therefore, the maximum dimension is jmax, the number of possible elementary rules is Na * jma? - For example, for Na = 2 and jmax = 3, six possible elementary rules are counted: R '(0, 0) : insert a0 in position 0, R '(1, 0): insert ai in position 0, R' (0, 1): insert a0 in position 1, R '(1, 1): insert a-¡ in position 1, R '(0,2): insert a0 in position 2, R' (1, 2): insert ai in position 2 The composition of the rules R '(0,0) and R' ( 0, 1) provide the rule: insert a0 in positions 0 and 1. This makes it possible to obtain in this way a code vector of dimension j + 2 based on the dimension code vectors j.
The composition of the rules R '(1, 0) and R' (0.29) provides the rule: insert ai in position 0 and a0 in position 2. This makes it possible to obtain in this way a vector code of dimension j +2 based on the dimension code vector j.More generally, we write R (n, { (Im, pm).}. M = 0, n = 1) for the composition of n elementary rules R '(im , pm) (from m = 0 to n-1) which makes it possible to obtain a vector code of dimension j + n based on the code vector of dimension j It should be noted that the im are not necessarily different, in contrast, the n pm positions are different Preferably, the pm positions are arranged in ascending order, ie: Po <P ...> ... pm ... <pn-> Figure 4 illustrates the composition of vectors of dictionary code based on the code vectors of the lower-dimensional dictionary and the insertion rules, as well as various modalities for the construction of d In different dimensions, unions of two disjoint sets, a first set consists of constructed code vectors by inserting them into the dictionary code vectors of the lowest dimension elements taken from a finite set of real numbers according to a collection of rules of insertion, being the second set of vectors that can not be obtained, inserted into the code vectors of the lowest dimension elements of this finite set of real numbers according to this collection of insertion rules.
The first set requires the determination of the finite set of reals (that is, its cardinal and its values) as well as the collection of insertion rules. The construction of this finite set and the formulation of the collection of insertion rules are made: either "a priori": the finite set and the collection of insertion rules are determined before the dictionaries are built. This choice is preferably based on an analysis of the statistics of the source to be quantified, for example, modeled by a learning sequence. For example, the choice of the finite set can be based on a one-dimensional density of the source's probability (or its histogram); or "a posteriori": the embedded dictionaries are first constructed by solving all the dimensions without imposing the need to follow the rule of partial composition by controlled extension. The choice of the finite set and the collection of insertion rules is then made by a study of the statistics of these "initial" dictionaries. The two solutions "a priori" or "a posteriori" can be used successively and / or combined. For example, you can select a first set and a first collection of insertion rules by analyzing the learning sequence, and then after a first construction of the dictionaries, an analysis of these dictionaries can lead to a total or partial update of the set A and / or the collection of insertion rules. It should be noted that the finite set and / or the collection of insertion rules may depend on the dimensions or other parameter. Then it is also possible to determine a collection and / or set that is specific to each pair of dimensions (j, j '), or a collection and / or set that is specific by dimension difference or to determine a global set. Here again, an a priori choice is made or after the statistical analysis of the learning sequence and / or the dictionaries. To build the dictionaries according to the increasing dimensions, the dictionary of the smallest dimension is first constructed by a conventional procedure of a vector quantization design as indicated above. Then, after this dictionary has been built, the dictionary of an immediately larger dimension is constructed with the help of a variant of a conventional construction algorithm. Based on the dictionary of the lowest dimension, all the possible initial code vectors are composed by applying the rules of insertion and this dictionary can possibly be supplemented with "free" code vectors (ie, those that can not be obtained through the extension). It should be noted that the initial dictionary size may be larger than the desired size. Based on the initial dictionary, then a variant of an iterative algorithm is applied to construct a vector quantifier. The Classes are constructed by quantifying the learning sequence and the centroids are updated, collecting with the controlled extension the restriction is for the code vector of the first set. For these code vectors of the first set, it is possible either to not recalculate the components obtained by inserting or to recalculate all the components without modifying the code vectors obtained in this way so as to return the components obtained by the rules of insertion Therefore, empty classes are deleted in this manner if the dictionary size is larger than the desired size. If at the end of the algorithm, the dictionary size is larger than the desired resolution, a procedure is applied to classify the dictionary elements so as to retain only the first code vectors. Possibly the iterative algorithm is executed again. Then we move on to the construction of the dictionary of a higher dimension, and then the initial dictionary is constructed by controlled extension based on the two dictionaries of the two smaller dimensions and supplemented with "free" code vectors and then applied the variant of the iterative algorithm to construct a vector quantifier. Then the method is repeated, until a dictionary of the maximum size is built. As a variant, to build the dictionaries according to the descending dimensions, first build the dictionary of the largest dimension. Then, from the last one that is being fixed, the possible vectors of the largest dimension are extracted low. Advantageously, the extraction procedure is facilitated by modifying the code vectors of the larger dimensions so as to remove the elements of A as the components of these code vectors. In a complementary variant, several iterations are performed advantageously by alternating the two constructions according to the increasing dimensions, on the one hand, and according to the descending dimensions on the other. To facilitate the controlled extension process, the invention can further carry out a transformation of the components of the code vectors. An example transformation is a scale resolution at a high resolution. It is beneficial to build "dictionaries" of smaller dimensions even if these dimensions are not used directly by the quantification of the vector. For example, it is possible to start with dimension 1 although the quantification of scale is not used. In a similar way, it is also beneficial to build dictionaries of intermediate dimensions. These "dictionaries" are also used profitably by the controlled extension procedure to reduce storage complexity and calculations. In addition, as indicated by means of a judicious combination of the algorithms to build the dictionaries by embedding them by resolution (PR) with construction algorithms by partial composition by controlled extension (PD), several construction methods can be developed. Must also It should be noted that the algorithms being iterative, several techniques can be alternated. For example, one begins with the construction of the maximum resolution dictionary for the smallest dimension and from this the embedded dictionaries are derived by means of the descending resolutions (PR property) and then the maximum resolution dictionary is constructed for the immediately higher dimension in by virtue of the PD property, for this dimension the embedded dictionaries are built by resolution and repeated until the dictionaries (embedded by resolution) of maximum dimension are obtained. I know it uses a preferential construction in the modality that is described below, which combines the techniques of construction of the dictionary according to the increasing dimensions and the resolutions of floods to build the set of dictionaries. { DJ} i = o, • -. , Nj.-i, j = jmin jma? Next, compression coding / decoding of digital signals (audio, video, etc.) is described, using dictionaries within the meaning of the present invention, in particular, the coding and decoding algorithms that use the structure of the dictionaries (the incrustation and partial composition by controlled extension). It should be understood in a general way, that the optimization of the compromise between memory / calculations in the encoder and / or in the decoder, is carried out in accordance with the restrictions of the application.
By way of example, below is considered the audio encoder called "TDAC encoder" used to encode digital audio signals sampled at 16 kHz (in the broadband). This encoder is an encoder based on a transformation, which can operate in different indices. In particular, the index can be set before establishing communication or vary from frame to frame in the course of communication. Figure 6 is a block diagram of this TDAC encoder. A limited band of audio signal x (n) at 7 kHz and sampled at 16 kHz is divided into frames of 320 samples (20 ms). A modified separate cosine transformation 61 is applied to the blocks of the input signal of 640 samples with an overlap of 50% (ie, a reminder of the MDCT analysis every 20 ms). The spectrum obtained y (k) is limited to 7225 Hz, zeroing the last 31 coefficients (only the first 289 coefficients are different from 0). A concealment curve is determined by the concealment module 62 which then performs the operation of zeroing the hidden coefficients. The spectrum is divided into thirty-two bands of equal widths. The hidden bands, if any, are determined as a function of the transformed coefficients of the signal x (n). The energy of the MDCT coefficients is calculated for each band of the spectrum (we are talking about scale factors). The thirty-two scale factors constitute the envelope of the signal spectrum which subsequently it is quantified, coded and transmitted in the box (block 63). This quantification and this coding use a Huffman coding. The variable number of bits remaining after the quantization of the envelope of the spectrum in the variable index is then calculated. These bits are distributed for the quantization of the vector 65 of the MDCT coefficients of the spectrum. The envelope of the de-quantized spectrum serves to calculate the set of masking thresholds as bands and this masking curve determines the dynamic distribution of the bits 64. The calculation of this masking curve band by the band and in the base The envelope of the quantized spectrum avoids the transmission of auxiliary information related to the binary distribution. Specifically, the decoder calculates the dynamic distribution of the bits in a manner identical to the encoder. The MDCT coefficients are normalized by the unquantized scale factors of their band and are quantified by the variable-dimension and variable-index vector quantifiers. Finally, the binary train is multiplexed 66 of the information on the envelope of the spectrum and these bandwidths are normalized coefficients, coded and transmitted in a frame. It is indicated that reference 67 and 68 of Figure 6 correspond to the known steps, per se, of detecting a voice or non-voice signal x (n) and tone detection (determination of tonal frequencies), respectively . The following describes the vector quantifiers with variable index based on the bands of unequal widths of the MDCT coefficients and in the TDAC encoder. The band-like quantization of the standardized MDCT coefficients in the form of a band uses particular dictionaries constructed in accordance with the present invention. The division into bands of unequal widths leads in fact to vectors of different dimensions. The adaptation of figure 7a which provides the band division used also indicates the resulting dimension of the coefficient vector, ie the number of coefficients, as indicated by the third column. The variable number of bits remaining after the Huffman coding of the envelope of the spectrum is dynamically distributed in different bands. The adaptation of Figure 7b gives the numbers of resolutions Nj and the sets of indices per band j * Rj (hence the values of the resolutions per bands) for the dimensions j, for j in a range of one to 1 5. It should be noted that in order to usefully utilize the structuring property of the partial composition by controlled extension, the vector quantifiers have been constructed in dimensions 1, 2, 6, 1 1, which, however, do not correspond to width of any band, but whose elements serve to compose larger dimension code vectors. The tuning of the granularity of the resolutions should also be noted even for large dimensions. Zero positioning of the hidden coefficients of module 62 leads to the choice during the analysis of the normalized MDCT coefficients, as they start with the set A =. { 0.}. and as the collection of rules of insertion of all possible compounds of the elementary insertion rules. This is the result of inserting zeros in an arbitrary position. However, a finer analysis composes an additional structural constraint in dictionaries using dictionaries formed by a union of standardized permutation codes, of type I I, according to which all permutations and all signs are allowed. For each permutation code of type I I, the largest vector within the lexical sense is called the absolute leader and is obtained by ordering the absolute values of the components in descending order. The construction of the dictionaries is equivalent to determining their normalized absolute leaders. The application of controlled extension to these absolute leaders is then to insert zeros in them as the last components. In addition, the distortion criterion is set. Preferably, the selection criterion chosen here is the Euclidean distance. The dictionary being normalized, the search for the code vector that minimizes the Euclidean distance with an input vector that is to be quantified arrives at the quantity to look for the code vector that maximizes the product of the scale with this input vector. In addition, the dictionary being the union of the permutation codes, the search for the code vector that maximizes the The product of the scale with an input vector is equal to the search between the absolute leaders of the dictionary by which the product of the scale is maximized with the absolute leader of this input vector (which is also obtained by the permutation of the absolute values of its components so as to classify them in descending order). Next, the learning sequence for the design of vector quantifiers within the meaning of the present invention is defined. As indicated above, it is preferred to determine a learning sequence for the design of a quantizer. First, a long sequence consisting of 289 MDCT coefficients normalized by the scale factor of its band is obtained on the basis of numerous samples of the audio signals of the bandwidth. Then, for each normalized vector of coefficients, the absolute leader is deduced. Based on the set of absolute leaders of different dimensions, two categories of multidimensional learning sequences S ° and S1 are created: S ° = S. { S °,} j e [1, 15], S0, the set of all the vectors formed by the first j components of the absolute leaders that have coefficients j that are not zero. Therefore, S ° j consists of the absolute leaders of dimension j that have zero coefficient and those of dimension j + 1 that have zero simple coefficients, those of dimension j + 2 that have two zero coefficients, ... those 15-j of dimension 15 that have coefficient zero, and S1 =. { S1j} j e [3, 4, 5, 7, 8, 9, 10, 12, 13, 14, 15,], where S1 j is the set of all the absolute leaders of the bands that has coefficients j. For example, based on the normalized vector of the coefficients (0, 0. 6, 0., 0.8), we deduce its absolute leader (0.8, 0.6, 0., 0., 0.), which belongs to the sequence S15 and an element of S ° 2, (0.8; 0.6) formed by the first two components that are not zero of its absolute leader. The first category of sequences is preferably used to determine the initial dictionaries of the leaders of j i. The second category is preferably used to build multidimensional and multiple resolution dictionaries that have the two structuring properties. Based on the first category of sequence S °, the first dictionary of absolute leaders normalized by each dimension j (j in a range of 1 to 15) is obtained by applying to the sequence S ° j a conventional algorithm such as the so-called "algorithm of averages k ". These leaders with positive real components are modified by pressing the components below a predetermined threshold with respect to the first component (that is, the largest component). This procedure called "central support" makes it possible to bring the zeros and extract the absolute leaders without a zero component of a lower dimension. An additional factor to further favor the controlled extension, applies a transformation of components of these leaders extracted. For this purpose, a normalization of each leader is used for its smaller non-zero component followed by a uniform scale quantization of interval 1 with integer reconstruction levels (reaching an amount for rounding to the nearest whole of the components of each leader). This transformation also brings a reduction that can be measured in the memory size of the leaders, therefore, the absolute leaders can be stored in the form of integers by introducing a corrective normalization factor in the distance calculation. It should be noted that the different real leaders obtained or otherwise based on the different S ° j sequences can be transformed into one and the same whole leader. Then a procedure is provided to eliminate the L '° = YL' "possible redundancy and to form the set Jf, 5) 7, of the absolute leaders with integer components that are not zero being L '° j the consistent subset of these leaders of dimension j. This construction technique L '° takes its inspiration from the technique of building dictionaries by partial composition by controlled extension according to the descending dimensions. It should also be noted that the choice of the set A made, a priori, could be revised a posteriori, so as to attach to it the element "1" since all the leaders have L '° and have at least one "1" as the last component. The set L ° serves as a basis for the composition of the initial dictionaries of leaders for the design of vector quantifiers and multiple dimensions and resolutions that possess the two structuring properties of PR embedding and partial composition by means of the PD controlled extension. Based on the sequence S1, the algorithm to build these quantifiers proceeds through increasing dimensions and descending resolution. For a dimension j, the initial dictionary of leaders L'1j is formed by all the leaders of L '° j, and by all the leaders obtained by the controlled extension of the leaders in the smallest dimensions j' (j '< j), inserting (j-j ') zeros with the leaders of the sets L' ° j. For example, in dimension 3, a leader dictionary is composed of the controlled extension based on L '° 1 =. { (1 )} , L '° 2 =. { (1 1), (21), (31), (41), (51), (91)} , supimented with the leaders of L '° 3. For each dimension j, the union of the permutation codes, characterized by L, 1 j constitutes a high resolution dictionary, possibly greater than the desired maximum resolution. Therefore, these permutation codes perform a natural division of this dictionary, each class of this division being a permutation code represented by its leader. The construction of the regions of the nearest neighbors corresponding to the classes of this division is then carried out by means of the quantization of the sequence S1. the division is ordered according to the increase in the cardinal number of the permutation codes. In case of equality of the cardinals of the permutation codes, the codes of the leaders obtained by controlled extension are favored with respect to those of the leaders of L '° j as indicated above. In case of cardinal equality of two classes that belong to the same set (either aj -i, or for £) ".)> The classes are ordered according to a criterion that combines the cardinal of their quantification region and their contribution to the decrease in the total distortion The aggregate of the cardinalities of the permutation codes ordered in this way is calculated by each permutation code as the corresponding index per vector.We indicate by means of L1j the set of ordered leaders of this way of L'V To avoid a procedure to accommodate the coded indices as a set binary train, the use of integer resolutions is only selected.The multiple resolution dictionaries embedded by the resolution, with reference to the adaptation of figure 7c, therefore, they are constituted by selecting as the last permutation code of each different resolution whose index of the aggregate of the cardinal is the closest to the immediately higher whole. If the resolution of the dictionaries characterized by L1j is greater than the maximum resolution desired, the last unused permutation codes are eliminated. We indicate by Lj (? Z L ¡-), the final ordered set of the leaders of Dj NJ-I - at the end of the iterations of the dimensions, if Certain leaders are not used to compose the leaders of. { Lj} j e. { 3, 4, 5, 7, 8, 9, 1 0, 12, 1 3, 14, 1 5.}. , the set L '° is updated by eliminating them. We write this set as L ° = i /. and "[I .... I5] The adaptations of FIGS. 7c to FIG. 7e show the memory savings provided by the embedding property, and the partial composition property by controlled extension. The adaptation of Figure 7c compares vector quantifiers with multiple resolutions of different dimensions: the first quantifier simply structured as permutation code junctions, and the second quantifier which also has the embedding property by resolution. In figure 7c, we write: -j: the dimension, -Nj: the resolution number in dimension j, ~ DJ: e 'number of dictionary leaders DJ ¡, - L: the number of dictionary leaders DJ N -1, -i ^? L? - the memory (in number of words) required to store the leaders of all dictionaries in dimension j without the embedding property, -j LDJ: the memory required to store the leaders of all dictionaries in dimension j with the property of incrustation. The adaptation of Figure 7d compares the latter quantifiers used for multiple dimensions with quantifiers that also possess the structuring property of partial composition by controlled extension. In figure 7d, we write: -j: the dimension _ T: the number of leaders of the dictionary Dj nj-1, D '-YL,' • Ca sum of the numbers of the leaders of the dictionaries of maximum resolution of the dimensions of 1 aj, j ~? ^ _ J *: the memory required to store these leaders without k = \ ownership of the partial composition by controlled extension, -LJ: the number of leaders of the set L ° j, - fY-¡ L k: its sum for the dimensions of 1 aj, ~, kLk; the memory required to store the leaders of all the dictionaries of dimensions from 1 to j with the ownership of the partial composition by controlled extension. The adaptation of figure 7e compares vector quantifiers with multiple resolutions and dimensions: the first quantifier structured simply as a union of permutation codes and the second quantifier which also possesses the structuring properties of incrustation by resolution of the composition partial by controlled extension. In figure 7e, we write: -j: the dimension -NJ: the number of resolutions in dimension j Nj _ * r: the number of leaders in dimension j that are going to be / = I stored in the Nj resolutions without the embedding property 0 the controlled partial extension property Nj - j? L, '•' to memory (the number of words) required for ; '= 1 store these leaders of all dictionaries in dimension j without these two properties j Ni -? &Zy: the memory (number of words) required for * = 1 i = l store the leaders of all the dictionaries of dimensions of the 1 to j without these two properties LJ: the number of leaders of the set L ° j -? ¿,: Su su for ... dimensions of,. 1 a, a J -? / TA: the memory required to store the leaders * =? of all dictionaries of the dimensions from 1 to j without the two properties of incrustation and partial composition by controlled extension. In these three adaptations, the last column shows the importance of the memory reduction factor. The embedding property alone makes it possible to reduce the memory by a factor of more than 3 in dimension 3, 5 in dimension 7, 7 in dimension 15. By virtue of the embedding property, instead of storing all the leaders of the Dj for the set of resolutions in dimension j, we store only the leaders Dj Nj-_? (the leaders of Lj). Attaching the partial composition by controlled extension makes it possible to further reduce the memory as shown in the last column of the adaptation of Figure 7d. The additional savings achieved by this property are by a greater factor of: 1.5 in dimension 4, 3 in dimension 8, and 7 in dimension 1 5. As shown in figure 7e, with respect to quantifiers structured simply as a union of permutation codes, the use of quantifiers that have in addition to the two properties of incrustation by resolution and partial composition by controlled extension makes it possible to reduce memory by a factor 4 to dimension 3, 13 in dimension 7 and by a factor greater than 35 for the dimensions greater than 1 1. With the ownership of the partial composition by controlled extension, only the leaders of L ° need to be stored, leaders being recovered from. { Lj} of a correspondence table of the indexes of the leaders Lj with the indices of the leaders L °. Now we will describe how to effectively implement vector quantifiers. To implement a vector quantizer in dimension j and resolution r, it is necessary to solve the following three problems: find the nearest neighbor of an input vector in Dj, - look up the index of a vector code of Dj! and conversely, look up the Dj code vector based on its index. As far as the indexing is concerned, it is indicated that there are several known means of indexing the code vectors of a dictionary, the union of type II permutation codes. The numbering used in the modality takes its inspiration from the one used to index the spherical codes of the Gosset lattice. For any dimension, j (j e. {3, 4, 5, 7, 8, 9, 10, 12, 13, 14, 15.}.), Each code vector Dj nj-1 is indexed by a characteristic of compensation of its permutation code, of a binary index that provides its combination of signs and its classification in its permutation code. The compensation of a permutation code is the addition of the cardinalities of the preceding permutation codes in DJ Nj-1. Among the formulas for numbering permutations we have selected the formula called Schalkwijk. In addition to this conventional numeration of the Dj code vectors nj-? > we use a correspondence table of the indexes of the leaders Lj with the indexes of the leaders of L °. Therefore the leaders of L ° that are being stored, have a greater freedom of indexing of L ° available. For example, it is possible to classify these leaders with the integer components that are not zero by increasing the dimension. With each index? Tij of a leader xJ of Lj is associated an index 1 m, of the leader xJ 'of L °. At the base of this index 1 m, we recover the dimension j 'of the leader xj' and the leader same. The leader xj is then retrieved by inserting (j-j ') zeros as the last components of xj'. The adaptation of Figure 7f provides the first 23 leaders of L °. The adaptation of figure 7g provides the leaders of the permutation codes of the dictionaries in dimension 3 indicating for each leader x3, that the leader has been extended xj of L ° j, of dimension j '(j' <j ) for get It. It is pointed out that if j = j ', then xj' = x3. In figure 7f, we write: -1: the index of the leader L ° (among the 51 6), -j: its dimension, -1j: its index in the leaders of L ° j. In figure 7g, we write: -m3: the leader index x3 among the 23 leaders of D 3 N3, -i: the index of the smallest resolution dictionary to which the leader belongs (ie, x3 e D3 and x3e D3 ¡), -jr ¡: the index per vector for this dictionary D3¡, -j ': the dimension of the leader xj' of L ° (number of components that are not zero), -1 m: the index of xj 'of the 51 6 leaders of L °. Next, the appropriate encoding and decoding algorithms are described in the general case, and we will next see the particular advantages of each case where an additional structural constraint has been added (union of the permutation codes).
It is indicated first that they preferentially use the dictionary structure induced in particular by the controlled extension property which makes it possible to reduce the search algorithm complexity of the nearest neighbor. In particular, code vectors having the same insertion rule can be grouped together. For example, in the case of a Euclidean distance distortion criterion which will be discussed in detail later, if the code vectors L. { xA 1 = 0, 1, ..., L-1} of the j dimension of a Dj dictionary are obtained by the same insertion rule, R (n),. { (im, pm)} m = 0, n-1) based on the vectors of the code L xÁ "of the dimension jn of a dictionary Di 'j" n, the calculation of the distances L of the code vectors xi of an input vector y: Dist (y, X? J) =? 0 '* ~ * «) 2 can be accelerated nl by first calculating the term? OvO2, then calculating the distances L of the code vectors xi j" p of the vector y' of the dimension (jn) obtained by lifting y to the n components ypm: Dist (y ', x1j-n) =? Ov- * .7") 2- As indicated above, only a part of the maximum resolution dictionary needs to be stored for each dimension, the other code vectors being deduced based on the elements taken from the lower resolution maximum resolution dictionaries and the insertion rules. The following is an exemplary detailed embodiment of compression encoding / decoding in the use of the dictionary creation method according to the present invention. invention. In the first place it is indicated that instead of storing, for all the dimensions j that are going to be considered, the set of all the dictionaries. { DJ?} ¡= 1 Nj > we store only the { D'N} , as well as the correspondence tables. These tables make it possible to reconstitute the DJNj code vector based on its index. As described above, there are several ways to formulate these tables and then to store them. For example, we can for all the dimensions j that are going to be considered, tabulate for each index mj (of a code vector xj of DjNj) three scale integer values: j ', m', and 1 r, where 1 r is the number of the insertion rule that makes it possible to reconstitute xj by the partial composition by controlled extension applied to the index element m 'of the set of D'i. Now the correspondence tables only require the words alm (remember that t j is the size of the dictionary D j). As regards the correct storage of the dictionaries of a vector quantifier with resolution and multiple dimensions, the case of a vector quantifier that does not require possesses the two properties of embedding structuring by resolution and partial composition by extension, while storing dictionaries of vector quantifiers that possess these two structuring properties requires only? J'T'i, words, writing TjNj for the size of the set D, JNj (T'JN¡ = TjNj). However, in a general way, , xj is much smaller than TjNj, because one is, for Of course, looking for the factor of the set D'J Nj with respect to the set D "NJ.A few numerical examples of a saving of storage will be provided in the modality described later.The coding algorithm that consists in finding the closest neighbor x In D j of an input vector y = (y0, ..., yky j--?) it preferably comprises the following steps: The COO step consists of an initialization step where we put: dmin = VALMAX; mmin = -1; mj = 0 for each index mje [0, TJ ¡]: The next step CO1) consists of the reconstitution of the code vector xj of the index mjy is preferentially carried out in the following way: a) reading the three indices] ', m', and 1 r in the correspondence tables associated with D 'Nj, b) reading in the set j and _ of the vector xj' of the dimension j 'and of the index m', c) the reconstitution of the code vector x J through the application x J 'of the partial composition property by controlled extension according to the insertion rule of index 1 r. Step CO2) consists of calculating the distance d (y, x J) between y x j according to the selected distortion criterion. The next steps of CO3) and CO4) consist in repeating the operations of CO1 and CO2) to identify the vector index whose Entrance vector distance is minimal. Therefore: if d (y, x J) < dmm then dmin = d (y, x j) and mmin = mj * then, we increase m j: mj = j + 1 * the final proof is given: yes m¡ < TJ¡ goes to step CO 1), more: detention. In end step CO5); the code vector is determined which is the nearest neighbor of the input vector and in the whole of the code vector whose index mmin has been identified in correspondence with the distance dmin smaller with the input vector y. Therefore, the algorithm continues with the step CO5: * End the nearest neighbor xj of y in D j ¡is the code vector of the mmin index The decoding algorithm that consists in the search of the DJ code vector ¡en base to its index is provided by step CO1) of the coding algorithm. It has been indicated in particular that the decoding comprises the complete reconstitution of the code vector x J (step c) of step CO 1)), independently of the index to be decoded. On the other hand, this reconstitution may be partial in the coding. Especially, it can sometimes be omitted if the criterion of the distortion in the calculation of the distance of the CO2 passage) it can be decomposed into two terms: one depends only on the index of the insertion rule, and the other, the code vector xJ. For example, in the case of the Euclidean criterion of distance distortion, it is possible in the initialization step COO), to calculate y- -l previously, the distance dir =? Ov ~ a, 2 for each rule of insertion of the index 1 r used in Dj (if the index insertion rule 1 r, consists of inserting j-j 'components aim in the positions pm, m in a range of 0 to j-j' then the quantities to calculate the where: xr is the vector obtained in step b) of step CO1) and y 'is the vector of dimension j', obtained by elevating it to the jj 'components ypm, - then the distance d (y, xj) is obtained by the simple sum d (y ', xj) = d [r + d (y', xr). This is the reason why we previously defined as "partial" the reconstruction of a vector of code xr of the dimension j 'lower than the dimension j (which could be the dimension of a vector of code xJ completely reconstructed), during the coding process. In addition, if a vector xj 'intervenes several times in the composition of code vectors of Dij (with several insertion rules), we can also calculate previously in the initialization step, the terms d (y', xr). Therefore you can see that, the compromise between storage (temporal) / complexity of the coding can be designed, according to the requirement of the application. In a similar way, the compromise between storage / indexing complexity can also be designed according to the requirement of the application. For coding, in the case of the additional restriction of a permutation code union, as mentioned above, the nearest neighbor search algorithm, for the spherical codes of the Gosset regular lattice in dimension 8, is generalized easily simplifying it for these dictionaries, by joining type II permutation codes. Said search algorithm is described in particular in: - "Algoritme Sphérique pr le Réseu de Gosset E8", C.
Lamblin, JP Adoul, Annales Des Télécommunications, No. 3-4, 1 988"Spherical Algorithm of Quantification of the Albegratic Vector of the Gosset E8 lattice" ("Spherical algebraic vector quantization algorithm by the E8 Gosset lattice"). is presented by the "freedom" of the signs of permutation codes of type II that are not possessed by the permutation codes of the Gosset lattice with nones components.A second simplification is presented by the consideration of the number of components that are not zero of each leader for the calculation of the product of scale.This illustrates the use of the structure induced by the partial composition property by controlled extension of the coding algorithm. A last modification takes into account the storage in the form of integers of the leaders of L °, leading in this way to the introduction in the calculation of the product of scale of a corrective factor equal to the inverse of the Euclidean norm of these leaders strictly with components of positive integers. Next, a modality is described in which the search for the nearest neighbor of an input vector and dimension j in the dictionary Dj uses, in addition to the two structuring properties of the present invention, the structure previously mentioned as a union of the permutation codes. Globally three additional steps are provided: The two preliminary steps (before the reconstruction step CO 1) above)) to determine the absolute leader \ y \ and the sign vector e of the vector to be encoded (steps CP1) and CP2 )), - and a final step to calculate the classification of its closest neighbor in the dictionary (step CP5). The search described above is no longer performed between the code vectors Tj J of the Dj (ie no longer for mJ e [0, Tj]], but only in the set Lj (i) of the LDj leaders. From D to J (for mJ, e [0, L [t writing LD] for the number of leaders or codes of permutation of D j). In this mode, the search for the nearest neighbor and in D¡ j is equivalent to looking first for the nearest neighbor of, I and | in the set Lj (i) (from among the first leaders L ^, _ of L j). As described above, it is not necessary to completely reconstruct these leaders (operation c) of step CO 1)), the distortion criterion being calculated (here the modified scale product) only in the non-zero components of each leader. Therefore, it is sufficient to determine the corresponding leaders in L ° for each leader using the correspondence table of the leaders' indices of Lj with the indices of the leaders of L ° that are associated with each index m¡ of a leader xj of Lj, an index lm of a leader xr of L °. Then the algorithm is executed preferably according to the following example: • CP Step 1): The step of the input vector y = (y0, ..., and k and j--?) To its absolute vector | and | = (| y0 |, ---, I ykl > •••. I and j-? l) and its sign vector e = (e0, ..., ek, •• -. e) if ek = 1 yk > 0 and e k = -1 in addition. * Step CP2): Find the leader I and I of | and | by permutation of its components to accommodate them in descending order Step CP3): * Step CoO '): I initialization: psmax = -1.; mmax = -1; m j = 0 for each index m J e t '' z and t. * Step CO 1 '): reconstruction of the leader of the mj index: a) read the index 1 m of the leader xj' associated with the leader of the index m J of L j, in the correspondence table that associates the leaders of L j with those of L °, determine the dimension j 'of the leader l / -? x J and read the corrective factor a with (with ~ = J? (Jf *) 2 'b) Read in the set L ° of the leader x j' of the dimension j 'and the index 1 m. * CO2 step ') calculation of the modified scale product between The next steps consist of repeating the operations of CO1 ') and CO2') to identify the index of the leader of the code whose product of scale modified with the absolute leader of the input vector is maximum. Therefore: if ps (I and I, x ^ ') > psr.ax, then, psmax = Ps (I> 'I r * 3') and, mmax = m j * then, we increase m J = m j +1 * end of the test if m- < ^ r > go to step CO 1 '), and also stop, In this final step, we calculate the index of the nearest neighbor of y in Dj¡ by the indexing procedure of the permutation code union based on the number of mmax permutation codes found in step CP3), as well as the classification of the permutation made in step CP2) and the sign vector determined with step CP 1).
It should be noted that step CP2) can be accelerated. Specifically, if nj is the maximum number of non-zero components of the leaders of Lj (i), it is sufficient to look for the largest n, J components of | y | . There are several variants of the CP3 'step depending on the desired complexity / storage commitment. If we want to minimize the number of calculations, we can tabulate in all the leaders of L ° simply its dimension j 'and its corrective factor. The determination j 'mentioned in step CP3 consists in this case of reading the correspondence tables. On the contrary, if it is desired to reduce the memory this determination is carried out based on the index 1 m. In a similar way, the corrective factor can be calculated after reading the leader xA Therefore, the algorithm for the search of the nearest neighbor of an input vector and of dimension j in the dictionary D, J, using a structure as a union of permutation codes can be summarized preferably as follows: CP1) we passed the input vector y = (y0, ..., yk, •• -, y¡-?) to its absolute vector | y | = (| yo | | y? l I j - -i I) and its vector sign e = (e0 ek, ..., e) with ek = 1 if yk = 0 and ek = -1, in addition, CP2) we look for the leader | y | of | y | by permutation of its components to accommodate them in descending order, CP3) we look for the nearest neighbor of | y | in the set Lj (i) of the leaders of Dj¡ (in fact among the first leaders Mj¡ of Lj by writing Mj for the number of permutation codes of Dj). As indicated above, this step is added to the search for the leader L ° which maximizes the product of the modified scale between the list of leaders MJ of L ° indicated by the correspondence table of the indices of the leaders of Lj to the indexes of the leaders of L °. If the dimension of a leader xj 'of L ° is j' (j '= j), the calculation of its product of scale with | and | is realized only in the first components j ', of | and | , then multiplied by the inverse of the Euclidean norm of xj '. CP4) and we calculate the index of the classification of this nearest neighbor of and in D¡J by means of the procedure of indexing a union of permutation codes based on the number of the permutation code found in the previous step, of the classification of the permutation performed in step CP2) and the sign vector determined in step CP1). Briefly, step CP2) can be accelerated. Specifically, if nj is the maximum number of non-zero components of the leaders of Lj (i), it is sufficient to look for the largest nJ components of | y | . A decoding algorithm is now described within the general sense, without necessarily necessarily limiting a permutation code binding indexation described above as an advantageous embodiment. The decoding algorithm preferably takes the following form. Based on a received mj index, it is determined if this index corresponds to a code vector that belongs D .t or for D '. { ,,. In the first case, mj is associated with a unique index in £ > '.',, and the code vector is obtained through reading ? 'and-I simple of the correspondence table. In the second case, mj points to an element D f! "(J '< j), and to an insertion rule. belongs to D'JNJ.-I OR ITS complement can be realized in different ways. For example, it is possible to use the binary indication for each index. It is also possible, for each resolution r, to index the elements of the complement D'J M in Dj, starting with the elements obtained by the prolonged extension belonging to D'j, followed by the "free" elements belonging to £ > ';' . Membership in D'J Nj--? or in D "NH then it is taken through simple tests, in a similar way, the insertion rule can be indexed explicitly or otherwise, for example, in the modalities described below, the insertion rule is implicitly recovered in It can also be understood that the commitment of storage / indexing complexity can be designed as a function of the requirements of the application, here we return to the particular case of the additional restriction defined by the union of the permutation codes. , the decoding algorithm takes its inspiration of the document: "Algorithme of Quantification Vectorielle Algébrique Sphérique par le Réseau de Gosset E8", by C. Lamblin, J. P. Adoul, Annales Des Télécommunications, Nos. 3 to 4, 1988, also using the correspondence table of the Lj leaders' indices for those of L °. Based on the index of a DJ code vector, we determine the index of its leader, in Lj (i), its classification in its permutation code and the sign of non-zero components. The correspondence table then provides the index of the leader in L ° which is then obtained through the simple reading of a table stored in the memory, as well as its normalization factor which makes it possible to normalize the decoded code vector. Another exemplary implementation of the present invention is provided below. This example is also based on the coder based on the TDAC type transformation, but for a use for the digital audio code signals sampled at 32 kHz and the 15 kHz bandwidth (FM band), contrary to the example given above. of the use of the TDAC encoder in a bandwidth for digital code audio signals sampled at 16 kHz. The principle of this encoder is similar to the TDAC broadband encoder at 16 kHz. In the audio signal, the limited band of 16 kHz and now sampled at 32 kHz, is also divided into 20 ms boxes. This leads later to the transformation of MDCT to obtain 640 coefficients. The spectrum is divided into 52 bands of unequal widths, the division of the broadband being identical to the division made by the broadband TDAC encoder. The adaptation of Figure 8a provides the band division used and the resulting dimension of the vector of coefficients (corresponding to the number of coefficients indicated in the third column). The quantization of the envelope of the spectrum also uses a Huffman coding and the remaining variable index is dynamically distributed to the coefficients based on the dequantized version of this envelope of the spectrum. The quantification of MDCT coefficients uses dictionaries constructed in accordance with the present invention. As in the case described above, the dictionaries are also structured as a union of permutation codes. For smaller dimensions of 15, the vector quantifiers are the same as those for broadband. Therefore, we build dictionaries for dimensions 16, 17, 18, 19, 20 and 24. For dimension 24, this structure has also been combined with a Cartesian product structure. The last upper band of the 24 coefficients is the division into two vectors of dimension 12: one is made up of the seven coefficients, the other of the non-coefficients. In this case, constructed vector quantifiers have been used for the dimension 12. The adaptation of figure 8b provides the number of different resolutions, as well as their values for the dimensions from 1 to 24. Therefore, the present invention provides an effective solution to the problem of quantification of the vector in a variable variable variable index. The present invention solves together the two problems of variable resolution and variable dimension by providing a vector quantifier whose dictionaries, for the different dimensions and resolutions, possesses the structuring properties PR and PD mentioned above. For a given dimension, the embedding of the dictionaries guarantees, on the one hand, the total reduction of the distortion as a function of the resolution and on the other hand, reduces in a remarkable way, the amount of memory required for the storage since the dictionaries of smaller resolutions do not have to be stored, all the elements of these dictionaries are in fact in the dictionary of maximum resolution. As compared to the structured vector quantizer as a tree of Figures 1 a and 1 b, therefore, the choice of embedding dictionaries already produces two advantages: the assurance of a decrease in local distortion as a function of the Increased resolutions and reduced storage. It also allows a greater tuning of the resolution with, if it is

Claims (31)

  1. necessary, a smaller granularity of a bit, facilitating the choice of dictionaries of sizes that are not necessarily equal to the powers of 2. This fine granularity of the resolutions is particularly beneficial if several vectors of variable dimension and / or are going to be quantified. variable resolution per frame, associating an algorithm to accommodate the indexes as a binary train with these vectors that are not integers based on the index quantifiers. The PR embedding property of the dictionaries implies that it is only necessary to store the maximum resolution dictionaries. Under the second PD property, the amount of storage memory is still reduced further. Specifically, part of the elements of the maximum resolution dictionaries do not need to be stored, since it is deduced from the elements taken from the maximum resolution dictionaries, but of a smaller dimension, taking into account the previously defined insertion rules (Rm) . The proportion of elements structured in this way can be easily adapted and makes it possible to fine-tune the amount of storage memory. Therefore, the structure induced by these two properties PR and PD makes it possible to usefully reduce the storage memory required. Obviously, this can be achieved better by imposing additional structural constraints on dictionaries, such as the one already mentioned in the part of introduction with reference to the prior art in the present document. In the preferred embodiments, there is a stipulation, for example, for the use of the spherical vector quantifiers, the binding of permutation codes, combined as appropriate with a Cartesian product structure that was described above. Compared to the algebraic vector quantifiers, this structure of dictionaries that is induced by the two properties offers a great flexibility of design, both with respect to the selection of dimensions and in what refers to the selection of resolutions. In addition, these vector quantifiers are adapted to the source statistics to be encoded and therefore avoid the tricky design problem of a "vector expansion" that is mandatory in the quantification of the algebraic vector, so that the distribution of the source to be encoded is uniform. CLAIMS 1. A dictionary which comprises variable-dimensional code vectors and which is intended to be used in an apparatus for encoding compression and / or decoding of digital signals, by means of the vector quantifier in a variable index defining a variable resolution, characterized in that it comprises : on the one hand, for a given dimension, inter-crushed dictionaries of increasing resolution, and, on the other hand, for a given dimension, a union: of a first set consisting of vectors of codes constructed by inserting, in the code vectors of smaller dimension dictionary, elements taken from a finite set of real numbers according to a finite collection of previously determined insertion rules, and from a second set consisting of code vectors that can not be obtained by inserting them into vectors of smaller dimension code of the elements of said set finite according to the collection of insertion rules.
  2. 2. The dictionary as described in claim 1, characterized in that the collection of insertion rules is formulated based on the elementary rules that consist in inserting a single element of the finite set of real numbers in the set of components in a given position of a vector.
  3. 3. The dictionary as described in claim 2, characterized in that each elementary rule is defined by a pair of two representative positive integers: of a classification of the element in said finite set, and from an insertion position.
  4. 4. A method for forming a dictionary according to one of claims 1 to 3, the dictionary comprising variable-dimensional code vectors and which is intended to be used in an apparatus for encoding and / or decoding digital signals, by quantizing the vector in a variable index that defines a variable resolution, in which, for a given dimension: a) a first set consisting of code vectors formed by inserting / deleting in / from the dictionary code vectors of elements of smaller / larger dimension taken from a finite set of real numbers according to a finite collection of previously determined insertion / elimination rules, b) a first intermediate dictionary is constructed comprising at least the first set for said determined dimension, c) and, said dictionary is adapted to a use with at least a certain resolution, it is c build a second dictionary definitive, based on the intermediate dictionary, by means of the embedding / simplification of the dictionaries of increasing / decreasing resolutions, being the dictionaries of increasing resolutions interincrustados of the dictionary of smaller resolution until the dictionary of the greater resolution. The method as described in claim 4, in which, for a given dimension N: aO) an initial dictionary of an initial dimension n smaller than said determined dimension N is obtained, a) a first one is constructed set consists of dimension vectors n + i formed by inserting the code vectors of the initial elements of the dictionary taken from the finite set of real numbers according to a finite collection of previously determined insertion rules, a2) a second set is provided consisting of code vectors of the dimension n + i that can not be obtained by inserting code vectors from the initial dictionary of the elements of the finite set with said collection of insertion rules, a3) an intermediate dictionary of dimension n is constructed + i comprising a union of the first set and the second set, and the steps from a 1) to a3) are repeated, as long as Nn-1 vec is, with said intermediate dictionary in the initial dictionary set up to a determined dimension N. 6. The method as described in claim 4, wherein, for a dimension N: a'O) an initial dictionary of an initial n dimension, larger than the determined dimension N, a'1) is constructed a first dimension set ni, by selecting and extracting possible dimension vectors or from the dimension dictionary n, according to a finite collection of previously determined elimination rules, a'2) a second set consisting of of vectors of dimension code ni, of the elements of the finite set with said collection of elimination rules that can not be obtained by eliminating the code vectors of the initial dictionary, a'3) an intermediate dictionary is constructed, of dimension nor that comprises a union of the first set and the second set, and the steps of a'1) are repeated a'3), when much nN-1 times, with the intermediate dictionary in the set from the initial dictionary to a certain dimension N. 7. The method as described in claims 5 and 6, in which N successive dictionaries of the respective dimensions from 1 to N are obtained based on the initial dictionary of dimension n, through the implementation repeated from steps a1) to a3) for the dimensions from n + 1 to N, and through the repeated implementation of the steps from a'1) to a'3) for the dimensions from n-1 to 1. 8. The method as described in claims 4 to 7, characterized in that said collection of insertion / elimination rules is formulated based on the elementary rules consisting of the insertion / deletion of a single element of the finite set of elements. Real numbers in the set of components in a position previously determined for the vector. The method as described in claim 8, wherein each elementary rule is defined by a pair of representative positive integers: - of a classification of the element in the finite set, and of an insertion / deletion position. The method as described in any of claims 4 to 9, characterized in that the finite set and the collection of insertion / deletion rules are defined a priori, before constructing the dictionary by analyzing a source that is going to be quantified. eleven . The method as described in claim 10, wherein said source is modeled by the learning sequence and the definition of the finite set and the collection of insertion / deletion rules is performed by the statistical analysis of the source. The method as described in any of claims 10 and 11, in which the finite set is chosen by calculating a one-dimensional probability density of the source. 13. The method as described in any of claims 4 to 9, in which the finite set and the collection of insertion / deletion rules are defined a posteriori after the construction of the dictionaries by embedding / simplification of dictionaries of successive resolutions, followed by a statistical analysis of these dictionaries constructed in this way. The method as described in claims 10 and 13, wherein: - a first set and a first collection of rules of insertion / elimination are selected a priori by analyzing a learning sequence, such as to form one or more intermediate dictionaries, at least a part of the first set and / or of the first collection of insertion / deletion rules is updated by an ex post analysis of said one or more intermediate dictionaries, and, as appropriate, is also updating at least a part of the set of code vectors forming said one or more intermediate dictionaries. 15. The method as described in any of claims 4 to 14, wherein step c) comprises the following operations: cO) an initial initial resolution dictionary rn is obtained, smaller than the resolution rN determined, d) based on the initial dictionary, an intermediate resolution dictionary rn + -? greater than the initial resolution rn, c2) operation d) is repeated until the determined resolution GN is achieved. The method as described in claim 15, wherein for each iteration of step d), a class and centroid construction is provided, in which the centroids belonging at least to the dictionaries of resolution larger than the resolution r, current, are calculated again and updated. The method as described in claim 16, in which the centroids belonging to the resolution dictionaries smaller than the current resolution r are updated only if the total distortions of all the lower resolution dictionaries are decreasing from one update to the next. 18. The method as described in any of claims 4 to 14, wherein step c) comprises the following operations: c'O) an initial dictionary of an initial resolution rn is obtained, larger that the resolution rN, determined, c'1) based on the initial dictionary, builds an intermediate dictionary of resolution rp-1 lower than the initial resolution rn, by dividing the initial dictionary into several subsets ordered according to a criterion previously determined, and c'2) operation c'1) is repeated until the determined resolution GN is achieved. The method as described in claim 18, wherein said criterion is selected from among the cardinals of the subsets, an invocation of the subsets in the learning sequence, a contribution of the subsets to a total distortion or preferably to a decrease of this distortion. The method as described in any of claims 18 and 19, wherein the division uses at least part of said insert / delete rules. twenty-one . The method as described in claims 15 and 18, in which N successive dictionaries of respective resolutions ri a rN are obtained based on an initial intermediate resolution dictionary rn, by repeated implementation of step d) for increasing resolutions from rn + a rN, and through the repeated implementation of step c'1) for the descending resolutions from rn-1 to r- | . 22. The method as described in any of claims 4 to 21, wherein, to adapt the dictionary to a use with a given dimension N of code vectors, steps a) and b), by a part, and on the other hand, step c), are substantially inverted so that: in step c), a first intermediate dictionary is still constructed of dimension N 'but of a resolution rN more high / smaller on the basis of an initial dictionary of resolution rn and dimension N 'by embedding / simplifying the dictionaries of increasing / decreasing resolution, such as to achieve substantially the resolution rN of the first dictionary, - in step a), to achieve the determined dimension N, a first set consisting of code vectors formed by the insertion / deletion is constructed, within / of the code vectors of the first dictionary of dimension N 'smaller / larger than the elements N of certain dimension taken from the finite set of real numbers according to the finite collection of previously determined insertion / elimination rules, and, in step b), after a possible step of definitive adaptation to resolution rN, a second definitive dictionary comprising at least the first set for said determined dimension N. 23. The method as described in any of claims 4 to 22, in which the collection of insertion / deletion rules, each identified by an index, is stored in a memory, once and for all. (1 r) and for a given dimension: the second set consisting of code vectors that can not be obtained by applying the insertion / deletion of the code vectors of the dimension smaller / larger than the dimension determined in accordance with the collection of insertion / deletion rules, as well as at least one correspondence table that makes it possible to reconstitute any dictionary code vector of a given dimension using the indexes of the insertion / deletion rules and the indices that identify the elements of the second set, thus making it possible to avoid full storage of the dictionary for the given dimension, simply by storing the elements of the second set and the links of the correspondence table for access to these elements and the associated insertion / deletion rules. The method as described in claim 23, in which the correspondence tables are formulated previously, for each index (mj) of the code vector xj of the dictionary (DJNj) of determined dimension (J) which can be reconstructed based on the elements of the current indices (m ') in the second set of the current dimension (J'), through a tabulation of three values of scale integers representing: a current dimension (J ') of the second set, a current index (m ') of an element of the second set, and the index of an insertion / deletion rule (1 r), this insertion / deletion rule contributes at least to reconstructing the code vector (Xj) ) of the dictionary (DjNj) of a given dimension (J), applying the insertion / deletion to the current index element (m ') and the current dimension (J'). 25. A use of a dictionary obtained through the implementation of the method as described in any of claims 23 and 24, in the coding / decoding of digital signal compression, by means of the quantization of the vector in a variable index that defines a variable resolution, in which a search is made for the code vector (xJ) which is the nearest neighbor of an input vector y = (I, •••, Yk and j-i) in a dictionary (D ') j) of a given dimension (J), and comprising the following steps: CO1) for a current index (m) of the expected code vector (xJ), the at least partial reconstitution of an index vector (m ') corresponding to the current index (mJ), at least through the previous reading of the indexes (J ', m', 1 r) appearing in the correspondence tables which make it possible to formulate the dictionary, CO2) at least in the coding, the calculation of the distance between the input ector and the code vector reconstituted in step CO1), CO3) at least in the coding, the repetition of steps CO1) and CO2), of all the current indexes in said dictionary, CO4) at least in the coding, the identification of the index (mm / n) of the at least partially reconstituted code vector whose distance (dm / n), calculated in the course of one of the iterations of the CO2 step), with the input vector that is he smaller, and CO5) at least in the decoding, determining the nearest neighbor of the input vector (y) in the set of code vectors (xJ) whose index (mmn) has been identified in step CO4) . 26. The use as described in claim 25, wherein step CO 1), at least in decoding, comprises: CO 1 1) the reading in the correspondence table of the indexes representative of the links of the second set and of the insertion / elimination rules and that includes: the index of a current dimension of a subset of said second set, the current index of an element of said subset, and the index of the appropriate insertion / deletion rule for the construction of the dictionary code vector of a given dimension, based on said element, CO 12) the reading, in the subset identified by its current dimension, of the element identified by its current index, CO 1 3) the complete reconstitution of the code vector to said determined dimension applying to said reading of the element of step CO 1 2) the appropriate insertion / deletion rule identified by its reading of the index in step CO 1 1). 27. Use as described. in claim 25, wherein, during coding, * step CO1) comprises: CO1 1) the reading in the correspondence tables of the indexes representative of the links of the second set and of the insertion / elimination rules and that includes: the index of a current dimension of a subset of said second set, the current index of an element of said subset, and the index of the insertion / deletion rule appropriate for the construction of the code vector of the given dimension dictionary, CO12) the reading in the subset identified by its current dimension, of the element identified by its current index , * in the CO2 step), the distance is calculated as a function of a distortion criterion calculated as a function of: the index of the insertion / deletion rule, - and one of the elements of the subset identified by its current index, making it possible in this way to only partially build the code vector with the dimension determined in step CO1), reserving the reconstruction Complete simply for decoding. The use as described in any of claims 25 to 27, wherein a supplementary structuring property according to a permutation code union and using an index of said code union is further provided. of permutation, and in which: CP 1) based on the input signal, an input vector is formed y = (y0, ..., y yj- defined by its absolute vector I and I = ( I I, • -. , I and k I I yj-i I) and by a sign vector ™ = (™ 0, ..., ™ k, ..., ™ J-1) with ™ k = ± 1, CP2) the components of vector I and I are classified by descending values, by means of the permutation to obtain a leading vector lyl, CP3) the nearest neighbor is determined xJ 'of the leading vector l and l between the leaders of the DJ-dictionary of dimension J, CP4) an index of the classification of the nearest neighbor xJ' is determined in the dictionary DJ, CP5) and an effective coding / decoding value is applied to the input vector, which depends on the index determined in step CP4), on the permutation determined in step CP2) and on the sign vector determined in step CP 1). 29. The use as described in any of claims 25 to 28, wherein at least the correspondence tables are stored in the memory of an encoding / decoding apparatus. 30. A computer program product to be stored in a memory of a processing unit, in particular of a computer or a mobile terminal, or in a removable memory medium and intended to cooperate with the reader of a processing unit , characterized in that it comprises instructions for implementation of the method as described in any of claims 4 to 24. 31. A computer program product to be stored in a memory of a processing unit, in particular of a computer or mobile terminal that integrates an encoding / decoding apparatus or a removable memory means and is intended to cooperate with a reader of the processing unit, characterized in that it comprises instructions for implementation of the application to compression encoding / decoding as described in any of the claims from 25 to 29.
MXPA/A/2006/008536A 2006-07-28 Dimensional vector and variable resolution quantisation MXPA06008536A (en)

Publications (1)

Publication Number Publication Date
MXPA06008536A true MXPA06008536A (en) 2007-04-10

Family

ID=

Similar Documents

Publication Publication Date Title
US7680670B2 (en) Dimensional vector and variable resolution quantization
US7149683B2 (en) Method and device for robust predictive vector quantization of linear prediction parameters in variable bit rate speech coding
KR101180202B1 (en) Method and apparatus for generating an enhancement layer within a multiple-channel audio coding system
KR101175651B1 (en) Method and apparatus for multiple compression coding
CN103280221B (en) A kind of audio lossless compressed encoding, coding/decoding method and system of following the trail of based on base
CN101430881B (en) Encoding, decoding and encoding/decoding method, encoding/decoding system and correlated apparatus
US20030110027A1 (en) Method and system for information signal coding using combinatorial and huffman codes
WO2007083264A1 (en) Audio coding
Soong et al. Optimal quantization of LSP parameters using delayed decisions
CN1112674C (en) Predictive split-matrix quantization of spectral parameters for efficient coding of speech
CN101266795B (en) An implementation method and device for grid vector quantification coding
Das et al. Variable-dimension vector quantization of speech spectra for low-rate vocoders
MXPA06008536A (en) Dimensional vector and variable resolution quantisation
Mohammadi et al. Low cost vector quantization methods for spectral coding in low rate speech coders
Amro et al. Speech compression exploiting linear prediction coefficients codebook and hamming correction code algorithm
CA2511516C (en) Method and device for robust predictive vector quantization of linear prediction parameters in variable bit rate speech coding
Bouzid et al. Channel optimized switched split vector quantization for wideband speech LSF parameters
Mohammadi Combined scalar-vector quantization: a new spectral coding method for low rate speech coding
KR20010040902A (en) A system and method for providing split vector quantization data coding
Mohammadi et al. Efficient Two-Step Spectrum Quantization Methods For Low Rate Speech Coding
KR100322702B1 (en) Method of quantizing and decoding voice signal using spectrum peak pattern
Jahangiri et al. Scalable speech coding at rates below 900 BPS
Mohammadi Spectral coding of speech based on generalized sorted codebook vector quantization
Hwang et al. An MPEG-4 Twin-VQ based high quality audio codec design
Merouane ROBUST ENCODING OF THE FS1016 LSF PARAMETERS: APPLICATION OF THE CHANNEL OPTIMIZED TRELLIS CODED VECTOR QUANTIZATION