WO1999035748A1 - Procede de codage d'un vecteur d'un reseau representatif d'un signal quantifie et procede de decodage correspondant - Google Patents

Procede de codage d'un vecteur d'un reseau representatif d'un signal quantifie et procede de decodage correspondant Download PDF

Info

Publication number
WO1999035748A1
WO1999035748A1 PCT/FR1999/000017 FR9900017W WO9935748A1 WO 1999035748 A1 WO1999035748 A1 WO 1999035748A1 FR 9900017 W FR9900017 W FR 9900017W WO 9935748 A1 WO9935748 A1 WO 9935748A1
Authority
WO
WIPO (PCT)
Prior art keywords
vector
component
norm
equal
vectors
Prior art date
Application number
PCT/FR1999/000017
Other languages
English (en)
Inventor
Patrick Rault
Christine Guillemot
Original Assignee
France Telecom S.A.
Telediffusion De France S.A.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by France Telecom S.A., Telediffusion De France S.A. filed Critical France Telecom S.A.
Publication of WO1999035748A1 publication Critical patent/WO1999035748A1/fr

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/3082Vector coding

Definitions

  • the present invention relates to a method of coding a vector of a network representative of a quantized signal.
  • a vector is for example obtained by a vector quantization operation on a network. It can also be delivered by a vector or block data transmission system.
  • a method of vector quantization on a network is known and is generally used in systems for compressing audio, video and multimedia signals in the broad sense.
  • Lattice vector quantization is the multidimensional extension of uniform scalar quantization. The latter consists in separately quantizing a signal, for example representative of each pixel of an image, in 2-N levels where N is the number of bits allocated to the quantizer.
  • the quantification operation therefore consists in determining, from an original vector, each of the components of which is representative of the value taken by a signal to be coded and therefore belongs to an uncountable set, such as the set of real numbers R, a quantized vector x each of whose components belongs to a countable set such as the set of relative numbers Z.
  • an uncountable set such as the set of real numbers R
  • a quantized vector x each of whose components belongs to a countable set such as the set of relative numbers Z.
  • a network is a set of vectors of a space of dimension n forming an additive group, in the mathematical sense of the term. More details on the networks can be found in a book written by CO ⁇ WAY JH and SLOA ⁇ E NJA entitled "Sphere Packings, Lattices and groups" published in 1993 by Springer Nerlag (New York, NY).
  • the networks for which the present invention finds an optimal application satisfy the following condition: if a vector v, with n components, belongs to the network considered, then all the vectors u obtained by permutations carried out on the components of the vector v also belong to the network . For example, if the vector ⁇ 1, 2, 1, 0 ⁇ belongs to the network then the vector ⁇ 2, 1, 0, 1 ⁇ too.
  • the various conventional types of networks satisfying this present condition are those known in the literature under the names of network Z n , A originated, D n , the face-centered cubic network (D 3 ), and the network E 8 , or the Gosset network, which is described by T. GOSSET in an article entitled “On the regular and semi-regular figures in space of" dimensions "published in Messenger Math., vol 29, 1900
  • an indexing operation also called numbering or labeling of vectors
  • This indexing operation of a vector consists, starting from this, of searching for its index in a dictionary .
  • the reverse operation is carried out which is therefore done from an index and which makes it possible to find the vector considered in the same dictionary. Because in general the signals thus processed have particular statistical properties and, in order to reduce the costs of searching the dictionary which is generally large, special indexing methods are used.
  • leader vector a method which uses the notion of so-called leader vector. It is described by LAMBLIN and ADOUL in an article entitled “Spherical vector quantization algorithm from the Gosset network of order 8" published in the Annals of Telecommunications, vol. 43, n ° 3-4 of 1988.
  • the vector leader / chosen to represent the other vectors is the one whose n components are ordered in decreasing order such as 1 (0) ⁇ l (l)> ... l (n-l).
  • FIG. 1 a diagram illustrating a quantification and coding method.
  • the actual quantization operation is carried out, on the basis of a signal to be coded s, by a quantization unit 10 which delivers the quantized vector x.
  • a quantization unit 10 which delivers the quantized vector x.
  • This is the subject, on the one hand, of a search for the vector leader / representative of the set of vectors which have the same components as said vector quantized x by the unit 20 and, on the other hand, of a calculation of the rank t of this quantified vector x in this set by the unit 30.
  • a unit 40 determines the index / of the leader vector / found by the unit 20 and the unit 50 determines, from this index / ' and the rank t of the leader vector /, the code c of the quantized vector x.
  • FIG. 2 There is shown in FIG. 2 a diagram illustrating a decoding process.
  • the unit 60 determines from the code c received, on the one hand, the index / 'from which it deduces the vector leader /, and, on the other hand, the rank t. From these two elements / and t, a unit 70 determines the quantized vector x. Then a unit 80 reconstructs the signal s which had been coded at 10.
  • a dictionary of leading vectors / is used for the coding.
  • a dictionary of vector vectors / is also used for decoding, in particular for recovering from the index / deduced from the code c received, the vector leader / concerned.
  • the aim of the present invention is to propose a method which makes it possible to solve this problem and thus to avoid the use of a large memory capacity for the storage of the leading vectors.
  • a method of coding a vector known as a quantified vector, is characterized in that said index representative of said leader vector is determined from a dictionary giving for each leader vector having the same standard as said quantified vector its index , said vectors of said dictionary being determined by calculation and temporarily stored at the time of formation of said code.
  • said coding method consists in examining the space corresponding to the positive hypercadran of the hypersphere of radius equal to the desired standard and in memorizing, in a predetermined order, the vectors of this space which are absolute leading vectors. According to another characteristic of the invention, said coding method consists in examining the space corresponding to the hypersphere of radius equal to the desired standard and in memorizing, in a predetermined order, the vectors of this space which are leading vectors .
  • said method of coding a vector consists in considering, at each step of a scanning process consisting of successive steps, a vector and in not saving it in the dictionary unless it presents the desired standard, and in that said scanning process consists: in a first step, to consider the vector y ⁇ a, 0 0 ⁇ whose all components are zero except for the first component, whose standard
  • East less than or equal to the desired norm p and which is such that the norm of the vector l '(a + 1, 0, ..., 0) whose first component is equal to the value of the first component a increased by unit is greater than the desired norm p, at a second stage, to consider the vector / ⁇ a-1 a-1 ⁇ whose all components are equal to the first component of the vector previously considered decremented by a unit, to be decremented , in successive steps, by one unit each time, the last component of the vector considered until obtaining the value zero, while maintaining the other components at their respective values, then for
  • the process of scanning the vectors is interrupted when the vector considered is the zero vector.
  • the vector scanning process is interrupted when the vector considered is the vector of which, the first component being negative, the norm is higher than the desired norm.
  • said vectors of said dictionary are determined and stored by first considering the vector of which only the first component is not zero, the value of said first component being determined so, on the one hand , that the norm of said vector is less than the desired norm and, on the other hand, that the norm of the vector of which only the first component is not zero and is equal to said value increased by one unit is greater than said norm desired, then by launching a function S for a position variable equal to zero, for a given vector equal to said vector thus considered and for the desired standard, said function S, for the position variable equal to any value d and a vector given, being provided for a) determining a vector, called an analyzed vector, which, if the position variable is zero, is equal to said given vector and, which, otherwise equal to said given vector with the ith component equal to the (dl) th component of said given vector, b) memorizing said analyzed vector if its norm is equal to the desired norm, or, if the norm of said vector is less than the desired norm, launch
  • step d) of said method consists in starting again in step b) as long as the th component is not less than a value for which the norm of said vector analyzed is higher than the desired standard, otherwise exit the S function.
  • step d) it consists in starting again in step b) as long as the d , cme component is not zero, otherwise leaving the function S.
  • the present invention relates also a method of decoding a code normally consisting of an index representative of a vector, called the leading vector, the components of which are the components of the quantized vector to be recovered but not necessarily in the same order, and of a characteristic of said quantized vector to be recovered which discriminates it from other vectors belonging to the set formed of vectors which have the same components as said leader vector, said method consisting in determining, from said index the corresponding leader vector, then, from said characteristic and of said leader vector, said quantified vector to be recovered.
  • said decoding method is characterized in that said leading vector corresponding to the index contained in said code is determined from a dictionary giving for each leading vector having the same standard as said quantified vector its index, said vectors of said dictionary being determined by calculation and temporarily stored at the time of the search for said leading vector
  • said decoding method consists in examining the space corresponding to the positive hypercadran of the hypersphere of radius equal to the desired standard and in memorizing, in a predetermined order, the vectors of this space which are absolute leading vectors.
  • said decoding method consists in examining the space corresponding to the hypersphere of radius equal to the desired standard and in storing, in a predetermined order, the vectors of this space which are leading vectors.
  • the process of scanning the vectors is interrupted when the vector considered is the zero vector.
  • the vector scanning process is interrupted when the vector considered is the vector of which, the first component being negative, the norm is higher than the desired norm.
  • said vectors of said dictionary are determined and stored by first considering the vector of which only the first component is not zero, the value of said first component being determined so, on the one hand , that the norm of said vector is lower than the desired norm and, on the other hand, that the norm of the vector of which only the first component is not zero and is equal to said value increased by one unit is greater than said desired standard, then by launching a function S for a position variable equal to zero, for a given vector equal to said vector thus considered and for the desired standard, said function S, for the position variable equal to any value d and a given vector, being provided for a) determining a vector, called analyzed vector, which, if the position variable is zero, is equal to said given vector and, which, otherwise, is equal to said given vector with the ith component equal to (dl) , th component of said given
  • step d) it consists in starting again in step b) as long as the d ⁇ e e component is not less than a value for which the norm of said vector analyzed is greater to the required standard, if not out of the S. function Alternatively, in step d), it is to start from step b) as the component of ⁇ e e is not zero, otherwise leave the function S.
  • the present invention also relates to a method of developing a partial dictionary of vectors which all have as standard a desired standard, for example, the standard of a given vector and whose components are ordered in a decreasing order from left to the right, said vectors then being said to be leading vectors.
  • said method for developing a dictionary consists in considering, at each step of a scanning process consisting of successive steps, a vector and in not registering it in the dictionary unless it presents the desired norm, and in that said scanning process consists: in a first step, to consider the vector y ⁇ a, 0, ..., 0 ⁇ of which all the components are zero except for the first component, including the standard
  • the process of scanning the vectors is interrupted when the vector considered is the zero vector.
  • the vector scanning process is interrupted when the vector considered is the vector of which, the first component being negative, the norm is higher than the desired norm.
  • said vectors of said dictionary are determined and stored by first considering the vector of which only the first component is not zero, the value of said first component being determined so, on the one hand , that the norm of said vector is less than the desired norm and, on the other hand, that the norm of the vector of which only the first component is not zero and is equal to said value increased by one unit is greater than said norm desired, then by launching a function S for a position variable equal to zero, for a given vector equal to said vector thus considered and for the desired standard, said function S, for the position variable equal to any value d and a vector given, being provided for a) determining a vector, called an analyzed vector, which, if the position variable is zero, is equal to said given vector and, which, otherwise equal to said given vector with the d th component equal to the (dl) th component of said given vector, b) memorizing said analyzed vector if its norm is equal to the desired norm, or, if the norm of said vector is less than norm desired,
  • step d) it consists in starting again in step b) as long as the d th component is not less than a value for which the norm of said vector analyzed is greater than the desired standard, otherwise exit the S function.
  • step d) it consists in starting again in step b) as long as the th th component is not zero, otherwise leaving the function S.
  • FIG. 4 illustrates the process of scanning the space as it is operated according to a method according to the invention
  • FIG. 5 illustrates a method for determining a partial dictionary of leading vectors according to the invention
  • FIG. 6 is a flow diagram of the step of memorizing a method according to the invention
  • FIG. 7 is a flow diagram of a function which is implemented in a method for determining a partial dictionary of absolute leading vectors according to the invention
  • FIG. 8 is a flow diagram of a function which is implemented in a method for determining a partial dictionary of signed vector leaders according to the invention.
  • the dictionaries necessary for the coding operation or for the decoding operation are not permanently stored, but only part of them, at the time of their use, is calculated and then stored.
  • This Part of the dictionary is the one that lists all the leading vectors that have the same standard as the quantized vector.
  • vector leader / a vector which is the representative of a set of vectors which all have the same components, in a different order. What gives it its property as representative of this set is that its components are ordered, for example but not necessarily in the decreasing direction.
  • a vector ⁇ 1,2, -1,0 ⁇ it belongs to a set of vectors which have all the components 2,1,0 and -1 but in a different order from each other .
  • the vector ⁇ -1,2,0,1 ⁇ also belongs to this set.
  • This set is represented by the vector which also has the same components, but ordered, for example in the decreasing direction. This is therefore the vector, called the leading vector, ⁇ 2,1,0, -1 ⁇ .
  • FIG. 3b the list of vectors belonging to an equivalence class whose leading vector is ⁇ 2,1,0, -1 ⁇ as well as their respective ranks.
  • the signed leader vector is the vector ⁇ 2,1,0, -1 ⁇ .
  • the equivalence class will be called the set of vectors which have the same components as a given vector x and which are represented by the same signed leader vector /.
  • leader vector can be used for coding and decoding operations. These are the absolute leading vectors.
  • One calls vector absolute leader a vector which is deduced from a vector leader / by taking the absolute values of the components of this last, then by ordering them in the manner of the vector leaders.
  • the components of an absolute leader vector all belong to the set of whole numbers N.
  • the leader vectors of which are deduced the absolute leading vectors are called signed leading vectors, because their components belong to the set of relative numbers Z.
  • the method of the invention consists in examining the positive hypercadran of the hypersphere of radius equal to the desired norm. By this process of scrutiny, one searches for the leading vectors which have a desired standard and this, in a given order.
  • the vector considered is recorded.
  • the method of the invention consists in examining the complete hypersphere of radius equal to the desired standard. This process takes place in the manner described above concerning the dictionary of absolute leading vectors, with the difference that the successive decrementations of each component are stopped when the latter being negative, the norm of the vector considered is greater than the desired norm. .
  • a first step 100 is an initialization in which, on the one hand, a calculation variable d representative of the analyzed component as well as a variable of order I are equal to zero and, on the other hand, a vector l (a , 0, ..., 0) whose first component a is initialized to the value of an initialization variable such as the norm of this vector
  • is less than or equal to the desired norm p of the quantized vector x and that the norm of the vector V (a + 1, 0, ..., 0) whose first component is equal to the value of the initialization variable has increased of a unit is greater than the norm p of the quantified vector x.
  • a second step 200 consists in implementing a function S (d, l, p) which is a function of the value taken by the calculation variable d, of the leader vector considered / and of the norm p considered This function is recursive in the meaning that it calls itself This function is now described, in a first mode of implementation, in relation to FIG 6
  • a first step 10 it is verified that the value of the calculation variable d is less than the dimension of the network “, otherwise we leave the function S (d, l, p) by not performing any calculation
  • step 30 It is checked in step 30 that the th component of the vector 1 is not negative or zero, in this case we would leave the function S (d, l, p)
  • step 31 we compare the value of the norm
  • the vector / is a leading vector which can be stored in step 41, since precisely it has the norm p
  • step 32 If they are different, it is checked, in step 32, if the norm
  • of the vector / is less than the standard value p If this is the case, the function S (d + 1, l, p) is launched in step 42 for a calculation variable equal to the current value of d increased by one, for the vector / hitherto calculated and always for the value of the standard variable equal to We will note that it is by this call to the function S that we can say that it is recursive If this is not the case, we are led directly to the next step 50 In step 50, the th component of the vector / (l (d) l (d) -l) is decremented by one and is returned upstream of step 30
  • step 41 The memorization process of step 41 is explained in relation to FIG. 7
  • step 412 This actual storage process takes place in step 412 where the vector / considered is stored in an associated manner with the value taken by the order variable I It will be recalled that in the initialization step 100, the value of order variable I is initialized to zero In step 411 of the storage process 41, this variable I is incremented by one unit. Thus, at each new implementation of the storage, this variable is incremented by unit and gives consequently the serial number of the memorization considered
  • the association of the vector / stored and of the variable I is for example carried out, either explicitly in the sense that they are both stored in any single cell of a memory, or implicitly in the sense that the vector / is stored in a single cell of a memory whose address is obtained by adding a reference address with the value I
  • step 100 we therefore initialize the calculation variable d and the order variable I to the value 0 and the vector / is initialized to the vector ⁇ 5,0 ⁇ Indeed, we have
  • p
  • step 50 the th component of the vector / is decremented by one , so that the vector analyzed is now / - ⁇ 4, 0 ⁇
  • step 31 We are then brought back to step 31 which itself leads ( we have
  • 4 ⁇ p) in step 32
  • the second component of the vector / is positive, but its norm is greater than the value of the desired norm Step 50 is therefore implemented directly
  • the vector analyzed is then the vector ⁇ 4,3 ⁇ then, due to the same succession of steps, the vectors ⁇ 4,2 ⁇ and ⁇ 4,1 ⁇ are also analyzed.
  • This last vector has its norm
  • which is equal to p 5 It is therefore stored in step 41.
  • step 411 the variable I is incremented by one and becomes equal to 2.
  • step 50 the first component 1 (1) of the vector / is now decremented to become equal to 0.
  • the vector / therefore becomes the vector ⁇ 4,0 ⁇ .
  • step 30 we leave the function S (l, ⁇ 4,0 ⁇ , 5), which had been launched by step 42, to arrive at step 50 of the function S (0, ⁇ 4 , 0 ⁇ , 5).
  • Steps 31 and 32 then lead to step 42 where the function S (l, ⁇ 3,0 ⁇ ), 5) is implemented.
  • This vector has its norm which is higher than the desired norm p We are therefore taken directly to step 50 where the vector analyzed becomes the vector ⁇ 3,2 ⁇ .
  • the vector / analyzed becomes the vector ⁇ 3,1 ⁇ .
  • the function S (2, (3, l), 5) is now launched in step 42 but returns immediately insofar as the calculation variable d is equal to 2, the dimension of the network This return is made to the step 50 where the vector analyzed / becomes the vector ⁇ 3, 0 ⁇ We then leave the function S (l, ⁇ 3,0 ⁇ , 5)
  • the memorized vectors are leading vectors, that is to say that their components are ordered so that the components with the highest values are in the lowest positions and that, d on the other hand, themselves are ordained.
  • the space of the network which has been scanned by the process which has just been described is that for which all the components of the vectors which are there have positive values. Consequently, the partial dictionary thus calculated is a dictionary of absolute leading vectors.
  • step 30 the essential difference, visible in the diagram in FIG. 6, with respect to the method described in relation to FIG. 5 is in step 30 where it is now verified that when the Treatmente th component of the vector / is negative, the norm of the vector / is not greater than the desired norm. If this is the case, then we exit from the function S considered, otherwise we are led to step 31.
  • step 30 brings the process to scrutinize all of the leading vectors which are included in the space limited by the hypersphere of radius equal to the desired standard.
  • the standard is defined here as being the sum of the absolute values of the components of the vector considered.
  • step 100 the calculation variable d is therefore initialized to the value 0 and the vector / is initialized to the vector ⁇ 5.0 ⁇ .
  • step 200 the function S (0, ⁇ 5,0 ⁇ , 5) is launched.
  • d ⁇ n and d 0.
  • the th component of the vector / is positive (its norm
  • the vector / ⁇ 5, 0 ⁇ is stored.
  • step 31 which itself leads, since the standard
  • of the vector is equal to 4 and is therefore different from p, in step 32 and, from there, since the norm of the vector / is less than the value of the desired norm p, in step 42 where the function S ( d + 1, ⁇ 4,0 ⁇ , 5) S (l, ⁇ 4,0 ⁇ , 5) is implemented
  • the second component of the vector / is always positive so that we are led to step 31, then, the standard of this vector being different from the desired standard, in step 32 and finally, the standard being higher than the desired standard, in step 50 which is therefore implemented.
  • the vector analyzed is the vector ⁇ 4,3 ⁇ then, due to the same succession of steps, the vectors ⁇ 4,2 ⁇ and ⁇ 4, 1 ⁇ are then analyzed. This last vector has its norm
  • which is equal to p 5 It is therefore stored in step 41.
  • step 411 the variable I is incremented by one and becomes equal to 2.
  • step 50 the first component 1 (1) of the vector / is decremented to become equal to 0. The vector / therefore becomes the vector ⁇ 4,0 ⁇ .
  • step 10 is such that the output is immediate Step 50 of the function S (l, ⁇ 4,0 ⁇ , 5) is then implemented and the vector analyzed becomes the vector ⁇ 4, -1 ⁇
  • Step 50 of the function S (l, ⁇ 4,0 ⁇ , 5) is then implemented and the vector analyzed becomes the vector ⁇ 4, -1 ⁇
  • the th th component of the vector leader 1 analyzed is therefore negative
  • Its norm is however not higher than the desired norm p
  • the vector analyzed then becomes the vector ⁇ 3,0 ⁇ Its second component is positive but its norm
  • the memorized vectors are signed leading vectors, that is to say that their components are ordered and that, on the other hand, themselves are ordered. They therefore form a partial dictionary of signed leading vectors which can be used either in a coding process or in a decoding process.
  • the modes of implementation of the present invention make it possible to find the index of a signed or absolute leading vector without having recourse to a permanent dictionary of leading vectors.
  • partial dictionaries of leading vectors are used which require less memory capacity.
  • the fact of scanning only the network space limited to vectors of the same standard makes it possible to dispense with the use of large-capacity memories. Indeed, for example, in the case of a D 4 network, the size of the dictionary used is divided by 9 compared to that of an exhaustive dictionary.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

La présente invention concerne un tel procédé de codage d'un vecteur mais également un procédé de décodage correspondant et un procédé d'élaboration d'un dictionnaire de vecteurs partiels qui est utilisé, selon leur caractéristique, dans de tels procédés.

Description

Procédé de codage d'un vecteur d'un réseau représentatif d'un signal quantifié et procédé de décodage correspondant.
La présente invention concerne un procédé de codage d'un vecteur d'un réseau représentatif d'un signal quantifié. Un tel vecteur est par exemple obtenu par une opération de quantification vectorielle sur réseau. Il peut également être délivré par un système de transmission de vecteurs ou de blocs de données. Un procédé de quantification vectorielle sur réseau est connu et est généralement utilisé dans des systèmes de compression de signaux audio, vidéo et multimédia au sens large. La quantification vectorielle sur réseau est l'extension multidimensionnelle de la quantification scalaire uniforme. Cette dernière consiste à quantifier séparément un signal, par exemple représentatif de chaque pixel d'une image, en 2-N niveaux où N est le nombre de bits alloués au quantificateur. Quant à la quantification vectorielle sur réseau, elle est associée à un réseau régulier et permet de déterminer un vecteur de quantification, ou vecteur quantifié, appartenant au réseau en question dont les composantes sont représentatives des valeurs prises par les signaux à coder. Plus précisément, l'opération de quantification consiste donc à déterminer, à partir d'un vecteur originel dont chacune des composantes est représentative de la valeur prise par un signal à coder et appartient de ce fait à un ensemble non dénombrable, tel que l'ensemble des nombres réels R, un vecteur quantifié x dont chacune des composantes appartient à un ensemble dénombrable tel que l'ensemble des nombres relatifs Z. Un tel procédé est par exemple décrit par CON AY J.H et SLOANE N .A. dans un article intitulé "Fast quantizing and decoding algorithms for lattice quantizers and codes" paru dans IEEE Transaction on Information Theory de mars 1982. Par exemple, si le vecteur originel est le vecteur {1.3, 2.6, -3.2}, le vecteur quantifié sur un réseau D3 est le vecteur x = { 1 , 2, -3 } .
Un réseau est un ensemble de vecteurs d'un espace de dimension n formant un groupe additif, au sens mathématique du terme. On trouvera de plus amples détails sur les réseaux dans un livre écrit par COΝWAY J.H et SLOAΝE N.J.A. intitulé "Sphère Packings, Lattices and groups" paru en 1993 aux éditions Springer Nerlag (New- York, NY). Les réseaux pour lesquels la présente invention trouve une application optimale vérifient la condition suivante : si un vecteur v, à n composantes, appartient au réseau considéré, alors tous les vecteurs u obtenus par des permutations réalisées sur les composantes du vecteur v appartiennent également au réseau. Par exemple, si le vecteur {1, 2, 1, 0} appartient au réseau alors le vecteur {2, 1, 0, 1} aussi. Par exemple, les différents types classiques de réseaux vérifiant cette présente condition, sont ceux connus dans la littérature sous les noms de réseau Zn, A„, Dn, le réseau cubique à face centré (D3), et le réseau E8, ou le réseau de Gosset, qui est décrit par T. GOSSET dans un article intitulé "On the regular and semi-regular figures in space of « dimensions" paru dans Messenger Math., vol 29, 1900 Une fois le vecteur quantifié x obtenu, il reste à lui affecter, généralement par une opération d'indexation, encore appelée numérotage ou étiquetage de vecteurs, un code Cette opération d'indexation d'un vecteur consiste, à partir de celui-ci, à chercher son index dans un dictionnaire. Pour le décodage, on effectue l'opération inverse qui se fait donc à partir d'un index et qui permet de retrouver dans le même dictionnaire le vecteur considéré. Du fait qu'en général les signaux ainsi traités ont des propriétés statistiques particulières et, afin de diminuer les coûts de recherche dans le dictionnaire qui est en général de grande taille, on utilise des procédés d'indexation particuliers.
Un procédé connu sous le nom de procédé de codage produit à deux composantes, de codage polaire, ou de quantification vectorielle sphérique consiste à transmettre un code à deux composantes : l'une est relative à la norme du vecteur quantifié tandis que l'autre est relative à sa phase, appelée angle en dimension n = 2. On associe donc à tout vecteur quantifié x un code produit de la forme
Figure imgf000005_0001
. Si cette méthode permet d'obtenir un gain en terme de temps de calcul de la procédure de recherche du code et en terme de débit nécessaire à la transmission de ce code, il n'en reste pas moins qu'il est nécessaire d'avoir un dictionnaire comprenant tous les vecteurs susceptibles d'être utilisés par l'application.
On connaît également une méthode qui utilise la notion de vecteur dit leader. Elle est décrite par LAMBLIN et ADOUL dans un article intitulé "Algorithme de quantification vectorielle sphérique à partir du réseau de Gosset d'ordre 8" paru dans les Annales des Télécommunications, vol. 43, n° 3-4 de 1988.
Selon cette méthode, en partant de chaque vecteur du réseau, on considère l'ensemble des vecteurs qui sont obtenus par permutations des composantes dudit vecteur. Parmi ces vecteurs, on définit un représentant qui est alors nommé vecteur leader et qui est noté /. On peut montrer que cet ensemble de vecteurs est une classe d'équivalence, au sens mathématique du terme. Généralement, le vecteur leader / choisi pour représenter les autres vecteurs est celui dont les n composantes sont ordonnées de manière décroissante telles que 1(0) ≥l(l) >... l(n-l).
Dans la suite de la description, on désignera un ensemble dont les vecteurs qui le constituent ont des composantes identiques mais dans un ordre différent par le terme de classe d'équivalence.
On a représenté à la Fig. 1, un diagramme illustrant un procédé de quantification et codage. L'opération de quantification proprement dite est réalisée, à partir d'un signal à coder s, par une unité de quantification 10 qui délivre le vecteur quantifié x. Celui-ci fait l'objet, d'une part, d'une recherche du vecteur leader / représentant de l'ensemble des vecteurs qui ont les mêmes composantes que ledit vecteur quantifié x par l'unité 20 et, d'autre part, d'un calcul du rang t de ce vecteur quantifié x dans cet ensemble par l'unité 30. A partir du vecteur leader /, une unité 40 détermine l'indice / du vecteur leader / trouvé par l'unité 20 et l'unité 50 détermine, à partir de cet indice /' et du rang t du vecteur leader /, le code c du vecteur quantifié x.
On a représenté à la Fig. 2 un diagramme illustrant un procédé de décodage. L'unité 60 détermine à partir du code c reçu, d'une part, l'indice /' duquel elle déduit le vecteur leader /, et, d'autre part, le rang t. A partir de ces deux éléments / et t, une unité 70 détermine le vecteur quantifié x. Ensuite une unité 80 reconstitue le signal s qui avait été codé en 10.
Pour le codage, notamment pour la détermination de l'indice / du vecteur leader / correspondant au vecteur quantifié x, on utilise un dictionnaire de vecteurs leader /. De même, pour le décodage, notamment pour recouvrer à partir de l'indice / déduit du code c reçu, le vecteur leader / concerné, on utilise également un dictionnaire de vecteurs leader /.
Ces dictionnaires sont normalement, dans l'état de la technique antérieure, mémorisés de manière permanente dans des mémoires respectives du codeur et du décodeur utilisés. Or, même s'ils sont de dimension réduite par rapport à un dictionnaire exhaustif de vecteurs, les dictionnaires de vecteurs leaders obligent à la mise en œuvre d'une capacité de mémorisation relativement importante.
Le but de la présente invention est de proposer un procédé qui permette de résoudre ce problème et ainsi d'éviter l'utilisation d'une grande capacité de mémoire pour la mémorisation des vecteurs leaders.
A cet effet, un procédé de codage d'un vecteur, dit vecteur quantifié, est caractérisé en ce que ledit indice représentatif dudit vecteur leader est déterminé à partir d'un dictionnaire donnant pour chaque vecteur leader ayant même norme que ledit vecteur quantifié son indice, lesdits vecteurs dudit dictionnaire étant déterminés par calcul et stockés temporairement au moment de la formation dudit code.
Selon une autre caractéristique de l'invention, ledit procédé de codage consiste à scruter l'espace correspondant à l'hypercadran positif de l'hypersphère de rayon égal à la norme désirée et à mémoriser, dans un ordre prédéterminé, les vecteurs de cet espace qui sont des vecteurs leaders absolus. Selon une autre caractéristique de l'invention, ledit procédé de codage consiste à scruter l'espace correspondant à l'hypersphère de rayon égal à la norme désirée et à mémoriser, dans un ordre prédéterminé, les vecteurs de cet espace qui sont des vecteurs leaders.
Selon une autre caractéristique de l'invention, ledit procédé de codage d'un vecteur consiste à considérer, à chaque étape d'un processus de scrutation constitué d'étapes successives, un vecteur et à ne l'enregistrer dans le dictionnaire que s'il présente la norme désirée, et en ce que ledit processus de scrutation consiste : à une première étape, à considérer le vecteur y {a, 0 0} dont toutes les composantes sont nulles à l'exception de la première composante, dont la norme ||/|| est inférieure ou égale à la norme désirée p et qui est tel que la norme du vecteur l'(a + 1, 0, ..., 0) dont la première composante est égale à la valeur de la première composante a augmentée d'une unité soit supérieure à la norme désirée p, à une seconde étape, à considérer le vecteur / = {a-1 a-1} dont toutes les composantes sont égales à la première composante du vecteur précédemment considéré décrémentée d'une unité, à décrémenter, par étapes successives, d'une unité à chaque fois, la dernière composante du vecteur considéré jusqu'à obtenir la valeur zéro, tout en maintenant les autres composantes à leurs valeurs respectives, puis pour toutes les composantes des vecteurs ainsi obtenus, à décrémenter d'une unité la composante juste à gauche de la composante qui vient d'être annulée à l'étape précédente, puis égaler toutes les composantes à droite de ladite composante décrémentée à la valeur de ladite composante, à recommencer les étapes successives de décrémentation de la dernière composante.
Selon une autre caractéristique de l'invention, le processus de scrutation des vecteurs est interrompu lorsque le vecteur considéré est le vecteur nul.
Selon une variante, le processus de scrutation des vecteurs est interrompu lorsque le vecteur considéré est le vecteur dont, la première composante étant négative, la norme est supérieure à la norme désirée.
Selon une autre caractéristique de l'invention, lesdits vecteurs dudit dictionnaire sont déterminés et mémorisés en considérant d'abord le vecteur dont seule la première composante n'est pas nulle, la valeur de ladite première composante étant déterminée de manière, d'une part, que la norme dudit vecteur soit inférieure à la norme désirée et, d'autre part, que la norme du vecteur dont seule la première composante n'est pas nulle et est égale à ladite valeur augmentée d'une unité soit supérieure à ladite norme désirée, puis en lançant une fonction S pour une variable de position égale à zéro, pour un vecteur donné égal audit vecteur ainsi considéré et pour la norme désirée, ladite fonction S, pour la variable de position égale à une valeur quelconque d et un vecteur donné, étant prévue pour a) déterminer un vecteur, dit vecteur analysé, qui, si la variable de position est nulle, est égal audit vecteur donné et, qui, dans le cas contraire, est égal audit vecteur donné avec la dιeme composante égale à la (d-l)'eme composante dudit vecteur donné, b) mémoriser ledit vecteur analysé si sa norme est égale à la norme désirée, ou, si la norme dudit vecteur est inférieure à la norme désirée, lancer la même fonction S pour une valeur de la variable de position incrémentée d'une unité et pour un vecteur donné égal audit vecteur analysé, c) déterminer un nouveau vecteur analysé en décrémentant d'une unité la valeur de la d,eme composante et d) recommencer à l'étape b).
Selon une autre caractéristique de l'invention, à l'étape d) dudit procédé, il consiste à recommencer à l'étape b) tant que la dιeme composante n'est pas inférieure à une valeur pour laquelle la norme dudit vecteur analysée est supérieure à la norme désirée, sinon sortir de la fonction S.
Selon une autre caractéristique de l'invention, à l'étape d), il consiste à recommencer à l'étape b) tant que la d,cme composante n'est pas nulle, sinon sortir de la fonction S. La présente invention concerne également un procédé de décodage d'un code normalement constitué, d'un indice représentatif d'un vecteur, dit vecteur leader, dont les composantes sont les composantes du vecteur quantifié à recouvrer mais pas nécessairement dans le même ordre, et d'une caractéristique dudit vecteur quantifié à recouvrer qui le discrimine des autres vecteurs appartenant à l'ensemble formé des vecteurs qui ont les mêmes composantes que ledit vecteur leader, ledit procédé consistant à déterminer, à partir dudit indice le vecteur leader correspondant, puis, à partir de ladite caractéristique et dudit vecteur leader, ledit vecteur quantifié à recouvrer.
Selon l'invention, ledit procédé de décodage est caractérisé en ce que ledit vecteur leader correspondant à l'indice contenu dans ledit code est déterminé a partir d'un dictionnaire donnant pour chaque vecteur leader ayant même norme que ledit vecteur quantifié son indice, lesdits vecteurs dudit dictionnaire étant déterminés par calcul et stockés temporairement au moment de la recherche dudit vecteur leader
Selon une autre caractéristique de l'invention, ledit procédé de décodage consiste à scruter l'espace correspondant à l'hypercadran positif de l'hypersphère de rayon égal à la norme désirée et à mémoriser, dans un ordre prédéterminé, les vecteurs de cet espace qui sont des vecteurs leaders absolus. Selon une variante, ledit procédé de décodage consiste à scruter l'espace correspondant à l'hypersphère de rayon égal à la norme désirée et à mémoriser, dans un ordre prédéterminé, les vecteurs de cet espace qui sont des vecteurs leaders.
Selon une autre caractéristique de l'invention, ledit procédé de décodage consiste à considérer, à chaque étape d'un processus de scrutation constitué d'étapes successives, un vecteur et à ne l'enregistrer dans le dictionnaire que s'il présente la norme désirée, et en ce que ledit processus de scrutation consiste : à une première étape, à considérer le vecteur l = {a, 0, ..., 0} dont toutes les composantes sont nulles à l'exception de la première composante, dont la norme ||/|| est inférieure ou égale à la norme désirée p et qui est tel que la norme du vecteur l'(a + 1,
0, ..., 0) dont la première composante est égale à la valeur de la première composante augmentée d'une unité soit supérieure à la norme désirée p, à une seconde étape, à considérer le vecteur / = {a-1 a-1} dont toutes les composantes sont égales à la première composante du vecteur précédemment considéré décrémentée d'une unité, à décrémenter, par étapes successives, d'une unité à chaque fois, la dernière composante du vecteur considéré jusqu'à obtenir la valeur zéro, tout en maintenant les autres composantes à leurs valeurs respectives, puis pour toutes les composantes des vecteurs ainsi obtenus, à décrémenter d'une unité la composante juste à gauche de la composante qui vient d'être annulée à l'étape précédente, puis égaler toutes les composantes à droite de ladite composante décrémentée à la valeur de ladite composante, à recommencer les étapes successives de décrémentation de la dernière composante. Selon une autre caractéristique de l'invention, le processus de scrutation des vecteurs est interrompu lorsque le vecteur considéré est le vecteur nul.
Selon une variante, le processus de scrutation des vecteurs est interrompu lorsque le vecteur considéré est le vecteur dont, la première composante étant négative, la norme est supérieure à la norme désirée. Selon une autre caractéristique de l'invention, lesdits vecteurs dudit dictionnaire sont déterminés et mémorisés en considérant d'abord le vecteur dont seule la première composante n'est pas nulle, la valeur de ladite première composante étant déterminée de manière, d'une part, que la norme dudit vecteur soit inférieure à la norme désirée et, d'autre part, que la norme du vecteur dont seule la première composante n'est pas nulle et est égale à ladite valeur augmentée d'une unité soit supérieure à ladite norme désirée, puis en lançant une fonction S pour une variable de position égale à zéro, pour un vecteur donné égal audit vecteur ainsi considéré et pour la norme désirée, ladite fonction S, pour la variable de position égale à une valeur quelconque d et un vecteur donné, étant prévue pour a) déterminer un vecteur, dit vecteur analysé, qui, si la variable de position est nulle, est égal audit vecteur donné et, qui, dans le cas contraire, est égal audit vecteur donné avec la dιeme composante égale à la (d-l),eme composante dudit vecteur donné, b) mémoriser ledit vecteur analysé si sa norme est égale à la norme désirée, ou, si la norme dudit vecteur est inférieure à la norme désirée, lancer la même fonction S pour une valeur de la variable de position incrémentée d'une unité et pour un vecteur donné égal audit vecteur analysé, c) déterminer un nouveau vecteur analysé en décrémentant d'une unité la valeur de la d,eme composante et d) recommencer à l'étape b).
Selon une autre caractéristique de l'invention, à l'étape d), il consiste à recommencer à l'étape b) tant que la dιe e composante n'est pas inférieure à une valeur pour laquelle la norme dudit vecteur analysée est supérieure à la norme désirée, sinon sortir de la fonction S. Selon une variante, à l'étape d), il consiste à recommencer à l'étape b) tant que la dιe e composante n'est pas nulle, sinon sortir de la fonction S.
La présente invention concerne encore un procédé d'élaboration d'un dictionnaire partiel de vecteurs qui ont tous pour norme une norme désirée, par exemple, la norme d'un vecteur donné et dont les composantes sont ordonnées d'une manière décroissante de gauche vers la droite, lesdits vecteurs étant alors dits vecteurs leaders.
Selon une caractéristique de l'invention, ledit procédé d'élaboration d'un dictionnaire consiste a considérer, à chaque étape d'un processus de scrutation constitué d'étapes successives, un vecteur et à ne l'enregistrer dans le dictionnaire que s'il présente la norme désirée, et en ce que ledit processus de scrutation consiste : à une première étape, à considérer le vecteur y {a, 0, ..., 0} dont toutes les composantes sont nulles à l'exception de la première composante, dont la norme ||/|| est inférieure ou égale à la norme désirée p et qui est tel que la norme du vecteur l'( + 1, 0, ..., 0) dont la première composante est égale à la valeur de la première composante c augmentée d'une unité soit supérieure à la norme désirée p, à une seconde étape, à considérer le vecteur / = {a-1, ..., a-1} dont toutes les composantes sont égales à la première composante du vecteur précédemment considéré décrémentée d'une unité, à décrémenter, par étapes successives, d'une unité à chaque fois, la dernière composante du vecteur considéré jusqu'à obtenir la valeur zéro, tout en maintenant les autres composantes à leurs valeurs respectives, puis pour toutes les composantes des vecteurs ainsi obtenus, à décrémenter d'une unité la composante juste à gauche de la composante qui vient d'être annulée à l'étape précédente, puis égaler toutes les composantes à droite de ladite composante décrémentée à la valeur de ladite composante, à recommencer les étapes successives de décrémentation de la dernière composante.
Selon une autre caractéristique de l'invention, le processus de scrutation des vecteurs est interrompu lorsque le vecteur considéré est le vecteur nul. Selon une variante, le processus de scrutation des vecteurs est interrompu lorsque le vecteur considéré est le vecteur dont, la première composante étant négative, la norme est supérieure à la norme désirée.
Selon une autre caractéristique de l'invention, lesdits vecteurs dudit dictionnaire sont déterminés et mémorisés en considérant d'abord le vecteur dont seule la première composante n'est pas nulle, la valeur de ladite première composante étant déterminée de manière, d'une part, que la norme dudit vecteur soit inférieure à la norme désirée et, d'autre part, que la norme du vecteur dont seule la première composante n'est pas nulle et est égale à ladite valeur augmentée d'une unité soit supérieure à ladite norme désirée, puis en lançant une fonction S pour une variable de position égale à zéro, pour un vecteur donné égal audit vecteur ainsi considéré et pour la norme désirée, ladite fonction S, pour la variable de position égale à une valeur quelconque d et un vecteur donné, étant prévue pour a) déterminer un vecteur, dit vecteur analysé, qui, si la variable de position est nulle, est égal audit vecteur donné et, qui, dans le cas contraire, est égal audit vecteur donné avec la dιe e composante égale à la (d-l)ιeme composante dudit vecteur donné, b) mémoriser ledit vecteur analysé si sa norme est égale à la norme désirée, ou, si la norme dudit vecteur est inférieure à la norme désirée, lancer la même fonction S pour une valeur de la variable de position incrémentée d'une unité et pour un vecteur donné égal audit vecteur analysé, c) déterminer un nouveau vecteur analysé en décrémentant d'une unité la valeur de la d,eme composante et d) recommencer à l'étape b).
Selon une autre caractéristique de l'invention, à l'étape d), il consiste à recommencer à l'étape b) tant que la dlème composante n'est pas inférieure à une valeur pour laquelle la norme dudit vecteur analysée est supérieure à la norme désirée, sinon sortir de la fonction S.
Selon une variante, à l'étape d), il consiste à recommencer à l'étape b) tant que la d,eme composante n'est pas nulle, sinon sortir de la fonction S. Les caractéristiques de l'invention mentionnées ci-dessus, ainsi que d'autres, apparaîtront plus clairement à la lecture de la description suivante de deux exemples de mise en œuvre faite en relation avec les dessins joints parmi lesquels : la Fig. 1 est un diagramme illustrant un procédé de quantification et de codage pour lequel peut être mis en œuvre un procédé de l'invention, la Fig. 2 est un diagramme illustrant un procédé de décodage pour lequel peut être mis en œuvre un procédé de l'invention, les Figs. 3a et 3b sont des listes de vecteurs avec leurs rangs respectifs qui appartiennent à une même classe d'équivalence représentée respectivement par un vecteur leader / = {a, b, c, d} et un vecteur leader / = {2, 1, 0,-1} , la Fig. 4 illustre le processus de scrutation de l'espace tel qu'il est opéré selon un procédé selon l'invention, la Fig. 5 illustre un procédé de détermination de dictionnaire partiel de vecteurs leaders selon l'invention, la Fig. 6 est un organigramme de l'étape de mémorisation d'un procédé selon l'invention, la Fig. 7 est un organigramme d'une fonction qui est mise en œuvre dans un procédé de détermination de dictionnaire partiel de vecteurs leaders absolus selon l'invention, et la Fig. 8 est un organigramme d'une fonction qui est mise en œuvre dans un procédé de détermination de dictionnaire partiel de vecteurs leaders signés selon l'invention.
Selon l'invention, les dictionnaires nécessaires à l'opération de codage ou à l'opération de décodage ne sont pas mémorisés de manière permanente mais, seule une partie de ceux-ci, au moment de leur utilisation, est calculée et puis mémorisée. Cette partie du dictionnaire est celle qui répertorie tous les vecteurs leaders qui ont même norme que le vecteur quantifié.
Dans la suite de la description, on appellera vecteur leader / un vecteur qui est le représentant d'un ensemble de vecteurs qui ont tous les mêmes composantes, dans un ordre différent. Ce qui lui confère sa propriété de représentant de cet ensemble, c'est que ses composantes sont ordonnées, par exemple mais non nécessairement dans le sens décroissant.
Par exemple, si l'on considère un vecteur {1,2,-1,0}, il appartient à un ensemble de vecteurs qui ont tous les composantes 2,1,0 et -1 mais dans un ordre différent les uns des autres. Ainsi, le vecteur {-1,2,0,1} appartient également à cet ensemble. Cet ensemble est représenté par le vecteur qui a également les mêmes composantes, mais ordonnées, par exemple dans le sens décroissant. Il s'agit donc ici du vecteur, dit vecteur leader, {2,1,0,-1}.
On peut montrer que l'ensemble des vecteurs qui ont mêmes composantes et qui sont représentés par un même vecteur leader / forme une classe d'équivalence, au sens mathématique du terme. De plus, tous les vecteurs qui appartiennent à une même classe d'équivalence peuvent être ordonnés si bien qu'il est possible de leur associer un rang, noté r, qui correspond à leur numéro d'ordre dans la classe d'équivalence à laquelle ils appartiennent. A titre d'exemple, on donne à la Fig. 3a, la liste des vecteurs appartenant à une classe d'équivalence dont le vecteur leader est {a,b,c,d} ainsi que leurs rangs respectifs.
On donne également à la Fig. 3b, la liste des vecteurs appartenant à une classe d'équivalence dont le vecteur leader est {2,1,0,-1} ainsi que leurs rangs respectifs. On notera que le vecteur leader signé est le vecteur {2,1,0,-1}. Dans la suite de la description, on nommera classe d'équivalence, l'ensemble des vecteurs qui ont même composantes qu'un vecteur x donné et qui sont représentés par un même vecteur leader signé /.
Un autre type de vecteur leader peut être utilisé pour les opérations de codage et de décodage. Il s'agit des vecteurs leaders absolus. On appelle vecteur leader absolu un vecteur qui se déduit d'un vecteur leader / en prenant les valeurs absolues des composantes de ce dernier, puis en les ordonnant à la manière des vecteurs leaders. Les composantes d'un vecteur leader absolu appartiennent toutes à l'ensemble des nombres entiers N. Les vecteurs leaders desquels sont déduits les vecteurs leaders absolus sont dits vecteurs leaders signés, car leurs composantes appartiennent à l'ensemble des nombres relatifs Z.
On peut montrer que l'ensemble constitué de l'union de toutes les classes d'équivalence engendrées par les vecteurs leaders signés / desquels on peut déduire un unique vecteur leader absolu / forme également une classe d'équivalence, dit également surclasse d'équivalence, dont ledit vecteur leader absolu peut être le représentant. De plus, toutes les classes d'équivalence qui appartiennent à une même surclasse d'équivalence sont ordonnés et il est ainsi possible de leur associer un rang qui correspond à leur numéro d'ordre dans la surclasse d'équivalence à laquelle ils appartiennent.
L'utilisation des vecteurs leaders absolus, au lieu de vecteurs leaders signés, pour les opérations de codage et de décodage présente un avantage certain car leur dictionnaire est nécessairement restreint par rapport à un dictionnaire de vecteur leaders signés. On notera que dans ce cas, les unités 40 et 60 des Figs. 1 et 2 déterminent un vecteur leader absolu au lieu d'un vecteur leader signé.
Pour la création d'un dictionnaire de vecteurs leaders absolu de même norme égale à une norme désirée, le procédé de l'invention consiste à scruter l'hypercadran positif de l'hypersphère de rayon égal à la norme désirée. Par ce processus de scrutation, on recherche les vecteurs leaders qui ont une norme désirée et ce, dans un ordre donné.
Pour ce faire, dans une première étape (voir Fig. 4), on commence par considérer le vecteur / = {a, 0, .... 0} dont toutes les composantes sont nulles à l'exception de la première composante, dont la norme ||/|| est inférieure ou égale à la norme désirée p et qui est tel que la norme du vecteur l'(a . 1, 0 0) dont la première composante est égale à la valeur de la première composante a augmentée d'une unité soit supérieure à la norme désirée p. Puis, on considère, dans une seconde étape, le vecteur / = {a-1,..., a-1} dont toutes les composantes sont égales à la première composante du vecteur précédemment considéré décrémentée d'une unité. On va ensuite, dans des étapes suivantes successives, décrémenter d'une unité à chaque fois la dernière composante du vecteur considéré jusqu'à ce qu'elle devienne nulle, tout en maintenant les autres composantes à leurs valeurs respectives. On a alors le vecteur / = {a-1,..., a-1, 0}. L'avant-dernière composante est ensuite décrémentée d'une unité et la composante sur sa droite est égalée à elle. On a maintenant le vecteur / = {a-1 a-2, a-2}. Comme précédemment, on décrémente ensuite de nouveau la dernière composante du vecteur considéré d'une unité à chaque fois jusqu'à ce qu'elle devienne nulle, tout en maintenant les autres composantes à leurs valeurs respectives.
L'avant-dernière composante est de nouveau décrémentée d'une unité. Le même processus est mis en œuvre jusqu'à ce que cette avant-dernière composante devienne elle aussi nulle. On a alors le vecteur / = {a-1 a-1, 0, 0}. Alors, c'est la composante qui se trouve toute de suite à la gauche des deux composantes nulles qui est décrémentée et les composantes sur sa droite sont égalées à elle.
On a alors le vecteur / = {a-1, ..., a-2, a-2, a-2}. Le processus recommence. De manière générale, lorsque toutes les composantes à droite d'une composante d'ordre i sont nulles, cette composante est décrémentée d'une unité et toutes celles qui se trouvent à sa droite sont égalées à elle. Puis, on décrémente d'une unité à chaque fois la dernière composante jusqu'à ce qu'elle devienne égale à zéro.
A chaque étape du processus de scrutation tel qu'il vient d'être décrit, si la norme est égale à la norme désirée, on enregistre le vecteur considéré.
Pour la création d'un dictionnaire de vecteurs leaders signés, le procédé de l'invention consiste à scruter l'hypersphère complète de rayon égal à la norme désirée. Ce procédé se déroule de la manière décrite ci-dessus concernant le dictionnaire de vecteurs leaders absolus à la différence que l'on stoppe les décrémentations successives de chaque composante lorsque celle-ci étant négative, la norme du vecteur considérée est supérieure à la norme désirée.
On va décrire, en relation avec la Fig. 5, une mise en œuvre particulière du procédé de détermination d'un dictionnaire partiels de vecteurs leaders selon l'invention. Une première étape 100 est une initialisation dans laquelle, d'une part, une variable de calcul d représentative de la composante analysée ainsi qu'une variable d'ordre I sont égalées à zéro et, d'autre part, un vecteur l(a,0,...,0) dont la première composante a est initialisée à la valeur d'une variable d'initialisation telle que la norme de ce vecteur ||/|| soit inférieure ou égale à la norme désirée p du vecteur quantifié x et que la norme du vecteur V(a + 1, 0, ..., 0) dont la première composante est égale à la valeur de la variable d'initialisation a augmentée d'une unité soit supérieure à la norme p du vecteur quantifié x. On a donc :
Figure imgf000015_0001
Une seconde étape 200 consiste à mettre en œuvre une fonction S(d, l, p) qui est fonction de la valeur prise par la variable de calcul d, du vecteur leader considéré / et de la norme p considérée Cette fonction est récursive dans le sens qu'elle s'appelle elle- même Cette fonction est maintenant décrite, dans un premier mode de mise en œuvre, en relation avec la Fig 6
Préliminairement, on appelle composante l(d) d'un vecteur / sa dιerac composante comptée à partir de la gauche, celle complètement à gauche ayant le numéro d'ordre 0 Ainsi, pour un vecteur égal à l(x,y,z,w), on a 1(0) = x i(D - y
1(2) = z
1(3) ≈ w
Dans une première étape 10, on vérifie que la valeur de la variable de calcul d est inférieure à la dimension du réseau «, sinon on sort de la fonction S(d, l, p) en n'effectuant aucun calcul A l'étape 20, on vérifie que la valeur de la variable de calcul d est égale à zéro Si oui, cela signifie, comme on le comprendra par la suite que c'est la première fois que la fonction S est appelée Dans ce cas, on garde les coordonnées du vecteur / telles qu'elles ont été définies lors de l'initialisation ou lors des étapes précédentes Sinon, à l'étape 21, la dιeme composante du vecteur 1 est égalée à la valeur de la (d-l)'eme composante du vecteur / l(d) = l(d-l)
On vérifie à l'étape 30 que la dιeme composante du vecteur 1 n'est pas négative ou nulle, dans ce cas on sortirait de la fonction S(d, l, p)
A l'étape 31, on compare la valeur de la norme ||/|| du vecteur 1 calculé jusqu'ici avec la valeur de la variable norme p
Si ces deux valeurs sont égales, alors le vecteur / est un vecteur leader qui peut être mémorisé à l'étape 41 , puisque précisément il a la norme p
Si elles sont différentes, on vérifie, à l'étape 32, si la norme ||/|| du vecteur / est inférieure à la valeur de norme p Si tel est le cas, on lance, à l'étape 42, la fonction S(d+1, l, p) pour une variable de calcul égale à la valeur actuelle de d augmentée d'une unité, pour le vecteur / jusqu'ici calculé et toujours pour la valeur de la variable norme égale à On notera que c'est par cet appel de la fonction S que l'on peut dire qu'elle est récursive Si tel n'est pas le cas, on est conduit directement à l'étape suivante 50 A l'étape 50, on décrémente d'une unité la d,eme composante du vecteur / (l(d) = l(d)-l) et on s'en retourne en amont de l'étape 30
On explicite en relation avec la Fig 7 le processus de mémorisation de l'étape 41
Ce processus de mémorisation proprement dit a lieu à l'étape 412 où le vecteur / considéré est mémorisé de manière associée avec la valeur prise par la variable d'ordre I On rappelle qu'à l'étape d'initialisation 100, la valeur de variable d'ordre I est initialisée à zéro A l'étape 411 du processus de mémorisation 41, cette variable I est incrémentée d'une unité Ainsi, à chaque nouvelle mise en œuvre de la mémorisation, cette variable est incrémentée d'unité et donne par conséquent le numéro d'ordre de la mémorisation considérée
On notera que l'association du vecteur / mémorisé et de la variable I est par exemple réalisée, soit explicitement dans le sens où ils sont tous les deux mémorisés dans une unique case quelconque d'une mémoire, soit implicitement dans le sens où le vecteur / est mémorisé dans une seule case d'une mémoire dont l'adresse est obtenue par addition d'une adresse de référence avec la valeur I
A titre d'exemple, on va maintenant considérer la création du dictionnaire partiel de vecteurs leader de dimension 2 dont la norme est 5 On définit la norme ici comme étant la somme des valeurs absolues des composantes
A l'étape 100, on initialisé donc la variable de calcul d et la variable d'ordre I à la valeur 0 et le vecteur / est initialisé au vecteur {5,0} En effet, on a |{5,θ}| < 5 < ||{6,θ}|
A l'étape 200, la fonction S(0,{5,0},5) est lancée On a d<n et d=0 On est donc conduit à l'étape 30 où la d,eme composante du vecteur / est positive (l(d) >0) si bien que l'on est conduit à l'étape 31 Là, puisque la norme du vecteur / est égale à la valeur de la norme désirée p ||/|| = On est donc conduit à l'étape 41 où le vecteur / =- {5,0} est mémoπsé puisqu'il a la norme désiré ||/| = p
A l'étape 411, la vaπable d'ordre I devient égale à 1 et le vecteur / - {5,0} est mémorisé associé à la valeur I = 1
A l'étape 50, on décrémente d'une unité la d,eme composante du vecteur / si bien que le vecteur analysé est maintenant / - {4, 0} On est ensuite ramené à l'étape 31 qui elle-même conduit (on a ||/|| = 4 ≠ p) à l'étape 32 La norme du vecteur / étant positive, la fonction S(d+1, {4,0},5) = S(l, {4,0},5) est mise en œuvre
A l'étape 21 de la fonction S(l,(4,0),5), la valeur 1(1) de la première composante du vecteur / est égalée à celle de la composante d'ordre zéro 1(0) (1(1) = 1(0)), si bien que le nouveau vecteur / analysé est maintenant le vecteur {4, 4} La dιeme composante du vecteur / est positive, mais sa norme est supérieure à la valeur de la norme désirée L'étape 50 est donc mise en œuvre directement
Le vecteur analysé est ensuite le vecteur {4,3} puis, du fait d'une même succession d'étapes, les vecteurs {4,2} et {4,1} sont également analysés. Ce dernier vecteur a sa norme ||/|| qui est égale à p = 5 II est donc mémorisé à l'étape 41.
A l'étape 411, la variable I est incrémentée d'une unité et devient égale à 2. A l'étape 412, le vecteur {4,1} est mémorisé en association avec la valeur 1 = 2.
A l'étape 50, la première composante 1(1) du vecteur / est maintenant décrémentée pour devenir égale à 0. Le vecteur / devient donc le vecteur {4,0}. A l'étape 30, on sort de la fonction S(l, {4,0},5), qui avait été lancée par l'étape 42, pour arriver à l'étape 50 de la fonction S(0, {4,0},5). La composante 1(0) d'ordre zéro du vecteur / est alors décrémentée d'une unité et le vecteur / analysé devient / = {3,0}. Les étapes 31 et 32 conduisent alors à l'étape 42 où la fonction S(l, {3,0}),5) est mise en œuvre. Là, à l'étape 21 de la fonction S(d+1, {3,0},5), la première composante 1(1) du vecteur / est égalée à la composante d'ordre zéro du vecteur / (1(1) = 1(0)) si bien que le nouveau vecteur / analysé est maintenant le vecteur {3,3}.
Ce vecteur a sa norme qui est supérieure à la norme désirée p On est donc conduit directement à l'étape 50 où le vecteur analysé devient le vecteur {3,2}. Ce vecteur a sa norme qui est égale à 5 si bien qu'on est conduit à l'étape 31 qui elle-même conduit à l'étape 41 où le vecteur / = {3,2} est alors mémorisé avec la valeur de la variable I = 3. A l'étape 50, le vecteur / analysé devient le vecteur {3,1}. La fonction S(2,(3,l),5) est maintenant lancée à l'étape 42 mais revient immédiatement dans la mesure où la variable de calcul d est égale à 2, la dimension du réseau Ce retour se fait à l'étape 50 où le vecteur analysé / devient le vecteur {3, 0} On sort alors de la fonction S(l, {3,0},5)
On comprendra que le processus se poursuit jusqu'à ce que le dernier vecteur analysé soit le vecteur {0,0}. On sort donc de l'étape 200 de la Fig 4 Les vecteurs suivants ont donc été stockés de manière à être associés à la valeur de la variable I qui donne l'ordre de ces vecteurs :
ordre I = 1 {5,0} ordre 1 = 2 {4,1} ordre 1 = 3 {3,2} Cela constitue un dictionnaire partiel de vecteurs leaders absolus qui peut être utilisé dans un procédé de codage ou dans un procédé de décodage.
On remarquera, d'une part, que les vecteurs mémorisés sont des vecteurs leaders, c'est-à-dire que leurs composantes sont ordonnées de manière que les composantes de valeurs les plus élevées soient dans les positions les plus faibles et que, d'autre part, eux-mêmes sont ordonnés.
On remarquera que l'espace du réseau qui a été scruté par le procédé qui vient d'être décrit est celui pour lequel toutes les composantes des vecteurs qui s'y trouvent ont des valeurs positives. En conséquence, le dictionnaire partiel ainsi calculé est un dictionnaire de vecteurs leaders absolus.
On décrit maintenant, en relation avec la Fig. 6, un second mode de mise en œuvre d'une fonction qui est utilisé dans un procédé selon l'invention qui diffère du précédent en ce que l'espace qui est scruté est celui pour lequel les composantes des vecteurs peuvent prendre des valeurs négatives. En conséquence, il permet la formation d'un dictionnaire partiel de vecteurs leaders signés.
La différence essentielle, visible sur le diagramme de la Fig. 6, par rapport au procédé décrit en relation avec la Fig. 5 se trouve dans l'étape 30 où l'on vérifie maintenant que lorsque dιeme composante du vecteur / est négative, la norme du vecteur / n'est pas supérieure à la norme désirée. Si tel est le cas, alors on sort de la fonction S considérée, sinon on est conduit à l'étape 31.
Comme on le verra par la suite, cette nouvelle condition de l'étape 30, amène le procédé à scruter l'ensemble des vecteurs leaders qui sont compris dans l'espace limité par l'hypersphère de rayon égal à la norme désirée. A titre d'exemple, on a considéré ia création du dictionnaire partiel de vecteurs leader de dimension 2 dont la norme est 5. On définit la norme ici comme étant la somme des valeurs absolues des composantes du vecteur considéré.
A l'étape 100, on initialisé donc la variable de calcul d à la valeur 0 et le vecteur / est initialisé au vecteur {5,0} . En effet, on a |{5,θ}|| < 5 < ||{6,θ}|| A l'étape 200, la fonction S(0, {5,0},5) est lancée. On a d<n et d=0. De plus, la dιeme composante du vecteur / est positive (sa norme ||/| est inférieure à la norme désirée p) si bien que l'on est conduit à l'étape 31. Là, puisque la norme du vecteur / est égale à la valeur de la norme désirée p(\\l\\ = p), on est conduit à l'étape 41 où le vecteur / = {5, 0} est mémorisé. A l'étape 411, la variable d'ordre I devient égale à 1 et le vecteur / = {5,0} est mémorisé associé à la valeur 1 = 1
A l'étape 50, on décrémente d'une unité la dιeme composante du vecteur 1 si bien que le vecteur analysé est maintenant / = {4,0}. On est ensuite ramené à l'étape 31 qui elle-même conduit, puisque la norme |/|| du vecteur est égale à 4 et est donc différente de p, à l'étape 32 et, de là, puisque la norme du vecteur / est inférieure à la valeur de la norme désirée p, à l'étape 42 où la fonction S(d+1, {4,0},5) = S(l, {4,0},5) est mise en œuvre
A l'étape 21 de la fonction S( 1,(4,0), 5), la valeur 1(1) de la première composante du vecteur / est égalée à celle de la composante d'ordre zéro 1(0) (1(1) = 1(0)), si bien que le nouveau vecteur / analysé est maintenant le vecteur {4,4} La dιeme composante du vecteur / est toujours positive si bien que l'on est conduit à l'étape 31, puis, la norme de ce vecteur étant différente de la norme désirée, à l'étape 32 et enfin, la norme étant supérieure à la norme désirée, à l'étape 50 qui est donc mise en œuvre. Le vecteur analysé est le vecteur {4,3} puis, du fait d'une même succession d'étapes, les vecteurs {4,2} et {4, 1} sont ensuite analysés Ce dernier vecteur a sa norme ||/|| qui est égale à p = 5 II est donc mémorisé à l'étape 41.
A l'étape 411, la variable I est incrémentée d'une unité et devient égale à 2. A l'étape 412, le vecteur {4,1} est mémorisé en association avec la valeur 1 = 2 A l'étape 50, la première composante 1(1) du vecteur / est décrémentée pour devenir égale à 0. Le vecteur / devient donc le vecteur {4,0}.
Suite aux résultats des différentes étapes 30, 31, 32 et 33, la fonction S(2, {4,0}, 5) est mise en œuvre Néanmoins, dans celle-ci, l'étape 10 est telle que la sortie est immédiate L'étape 50 de la fonction S(l, {4,0},5) est alors mise en œuvre et le vecteur analysé devient le vecteur {4,-1} La d'eme composante du vecteur leader 1 analysé est donc négative Sa norme n'est pourtant pas supérieure à la norme désirée p A l'étape 30 on est donc conduit à l'étape 31 où, puisque la norme du vecteur / est égale à la norme désirée, l'on est conduit à l'étape 41 où ce vecteur est mémorisé avec la valeur de la variable 1 = 3
Le vecteur suivant est le vecteur {4,-2} dont la dιeme composante est négative et dont la norme égale à 6 est supérieure à la norme désirée p = 5. Il en résulte que l'on sort de la fonction S(l, {4,0},5) où l'on se retrouve à l'étape 50 de la fonction S(0,{4,0},5) qui est donc mise en œuvre Le vecteur analysé devient alors le vecteur {3,0} Sa dιeme composante est positive mais sa norme ||/|| est inférieure à p, si bien que la fonction S(l, {3,0}, 5) est lancée à l'étape 42
A l'étape 21 de cette fonction S(l, {3,0},5), le nouveau vecteur analysé devient le vecteur {3,3}. Sa dιeme composante est positive mais sa norme est supérieure à la norme désirée si bien que l'on est directement conduit à l'étape 50 Là, le vecteur analysé devient le vecteur {3,2} dont la norme est égale à la valeur de la norme désirée p = 5, si bien qu'il est enregistré à l'étape 41, avec la valeur de la variable I qui est égale à 4 Puis, vont être analysés successivement les vecteurs {3,1}, {3,0} et {3,-1} pour lesquels la norme est inférieure à la norme désirée p = 5, si bien que la fonction S avec d= 2 est lancée (la sortie est immédiate) Puis vient le vecteur {3,-2} dont la norme est égale à la norme désirée p = 5 Ce vecteur est alors enregistré à l'étape 41 avec la valeur de la variable I = 4 Le vecteur {3,-3} est ensuite analysé mais, sa dιeme composante étant négative et sa norme étant supérieure à la norme désirée, on sort de la fonction S pour venir analyser les vecteurs dont la composante d'ordre zéro est 2 Ainsi, seront analysés les vecteurs {2,2}, {2,1}, {2,0}, {2,-1}, {2,-2} et {2,-3} Ce dernier est le seul enregistré de cette liste et, ce avec la valeur 1 = 5
Le processus se poursuit comme il vient d'être décrit Les vecteurs {1,-4}, {0,-5}, {-1,-4} et {-2,-3} sont alors enregistrés avec respectivement les valeurs de la variable d'ordre I égales à 6, 7, 8 et 9 On sort alors de l'étape 200 Les vecteurs suivants ont été mémorisés, et ce dans cet ordre
0 {5,0}
1 {4,1}
2 {4,-1}
3 {3,2}
4 {3,-2}
5 {2,-3}
6 0,-4}
7 {0,-5}
8 {-1,-4}
9 {-2,-3} Comme précédemment, on remarquera, d'une part, que les vecteurs mémorisés sont des vecteurs leaders signés, c'est-à-dire que leurs composantes sont ordonnées et que, d'autre part, eux-mêmes sont ordonnés. Ils forment donc un dictionnaire partiel de vecteurs leaders signés qui peut être utilisé, soit dans un procédé de codage, soit dans un procédé de décodage.
Les modes de mise en œuvre de la présente invention permettent de trouver l'indice d'un vecteur leader signé ou absolu sans avoir recours à un dictionnaire permanent de vecteurs leaders. Par contre, sont utilisés des dictionnaires partiels de vecteurs leaders qui nécessitent une capacité mémoire moindre. Ainsi, le fait de ne scruter que l'espace du réseau limité aux vecteurs de même norme permet de s'affranchir de l'utilisation de mémoires de grande capacité. En effet, par exemple, dans le cas d'un réseau D4, la taille du dictionnaire utilisé est divisée par 9 par rapport à celle d'un dictionnaire exhaustif.

Claims

REVENDICATIONS
1) Procédé de codage d'un vecteur, dit vecteur quantifié, obtenu par quantification vectorielle sur un réseau d'un signal, ledit procédé consistant à déterminer un vecteur, dit vecteur leader, qui comporte les mêmes composantes que ledit vecteur quantifié mais ordonnées, à déterminer une caractéristique dudit vecteur quantifié qui le discrimine des autres vecteurs appartenant à l'ensemble formé des vecteurs qui ont les mêmes composantes que ledit vecteur leader, et à former un code à partir, d'une part, d'un indice représentatif dudit vecteur leader, et, d'autre part, de ladite caractéristique dudit vecteur quantifié, caractérisé en ce que ledit indice représentatif dudit vecteur leader est déterminé à partir d'un dictionnaire donnant pour chaque vecteur leader ayant même norme que ledit vecteur quantifié son indice, lesdits vecteurs dudit dictionnaire étant déterminés par calcul et stockés temporairement au moment de la formation dudit code.
2) Procédé de codage d'un vecteur selon la revendication 1, caractérisé en ce que ledit vecteur leader comporte les mêmes composantes que ledit vecteur quantifié mais arrangées dans un ordre décroissant dans l'ordre croissant des composantes, par exemple de gauche vers la droite.
3) Procédé de codage d'un vecteur selon la revendication 1 ou 2, caractérisé en ce qu'il consiste à scruter l'espace correspondant à l'hypercadran positif de l'hypersphère de rayon égal à la norme désirée et à mémoriser, dans un ordre prédéterminé, les vecteurs de cet espace qui sont des vecteurs leaders absolus.
4) Procédé de codage d'un vecteur selon la revendication 1 ou 2, caractérisé en ce qu'il consiste à scruter l'espace correspondant à l'hypersphère de rayon égal à la norme désirée et à mémoriser, dans un ordre prédéterminé, les vecteurs de cet espace qui sont des vecteurs leaders. 5) Procédé de codage d'un vecteur selon une des revendications 3 ou 4, caractérisé en ce qu'il consiste à considérer, à chaque étape d'un processus de scrutation constitué d'étapes successives, un vecteur et à ne l'enregistrer dans le dictionnaire que s'il présente la norme désirée, et en ce que ledit processus de scrutation consiste : à une première étape, à considérer le vecteur / = {a, 0 0} dont toutes les composantes sont nulles à l'exception de la première composante, dont la norme ||/|| est inférieure ou égale à la norme désirée p et qui est tel que la norme du vecteur l'(a + 1, 0 0) dont la première composante est égale à la valeur de la première composante a augmentée d'une unité soit supérieure à la norme désirée p, à une seconde étape, à considérer le vecteur / = {a-1, ..., a-1} dont toutes les composantes sont égales à la première composante du vecteur précédemment considéré décrémentée d'une unité, à décrémenter, par étapes successives, d'une unité à chaque fois, la dernière composante du vecteur considéré jusqu'à obtenir la valeur zéro, tout en maintenant les autres composantes à leurs valeurs respectives, puis pour toutes les composantes des vecteurs ainsi obtenus, à décrémenter d'une unité la composante juste à gauche de la composante qui vient d'être annulée à l'étape précédente, puis égaler toutes les composantes à droite de ladite composante décrémentée à la valeur de ladite composante, à recommencer les étapes successives de décrémentation de la dernière composante. 6) Procédé de codage selon la revendication 5, caractérisé en ce que le processus de scrutation des vecteurs est interrompu lorsque le vecteur considéré est le vecteur nul.
7) Procédé de codage selon la revendication 5, caractérisé en ce que le processus de scrutation des vecteurs est interrompu lorsque le vecteur considéré est le vecteur dont, la première composante étant négative, la norme est supérieure à la norme désirée.
8) Procédé de codage selon la revendication 2, caractérisé en ce que lesdits vecteurs dudit dictionnaire sont déterminés et mémorisés en considérant d'abord le vecteur dont seule la première composante n'est pas nulle, la valeur de ladite première composante étant déterminée de manière, d'une part, que la norme dudit vecteur soit inférieure à la norme désirée et, d'autre part, que la norme du vecteur dont seule la première composante n'est pas nulle et est égale à ladite valeur augmentée d'une unité soit supérieure à ladite norme désirée, puis en lançant une fonction S pour une variable de position égale à zéro, pour un vecteur donné égal audit vecteur ainsi considéré et pour la norme désirée, ladite fonction S, pour la variable de position égale à une valeur quelconque d et un vecteur donné, étant prévue pour a) déterminer un vecteur, dit vecteur analysé, qui, si la variable de position est nulle, est égal audit vecteur donné et, qui, dans le cas contraire, est égal audit vecteur donné avec la d'ème composante égale à la (d-l)ιeme composante dudit vecteur donné, b) mémoriser ledit vecteur analysé si sa norme est égale à la norme désirée, ou, si la norme dudit vecteur est inférieure à la norme désirée, lancer la même fonction S pour une valeur de la variable de position incrémentée d'une unité et pour un vecteur donné égal audit vecteur analysé, c) déterminer un nouveau vecteur analysé en décrémentant d'une unité la valeur de la dιemc composante et d) recommencer à l'étape b).
9) Procédé de codage selon la revendication 8, caractérisé en ce qu'à l'étape d), il consiste à recommencer à l'étape b) tant que la d,eme composante n'est pas inférieure à une valeur pour laquelle la norme dudit vecteur analysée est supérieure à la norme désirée, sinon sortir de la fonction S. 10) Procédé de codage selon la revendication 8, caractérisé en ce qu'à l'étape d), il consiste à recommencer à l'étape b) tant que la dιeme composante n'est pas nulle, sinon sortir de la fonction S.
11) Procédé de décodage d'un code à des fins de recouvrer un vecteur quantifié représentatif d'un signal qui a été quantifié sur un réseau, ledit code étant normalement constitué, d'un indice représentatif d'un vecteur, dit vecteur leader, dont les composantes sont les composantes du vecteur quantifié à recouvrer mais pas nécessairement dans le même ordre, et d'une caractéristique dudit vecteur quantifié à recouvrer qui le discrimine des autres vecteurs appartenant à l'ensemble formé des vecteurs qui ont les mêmes composantes que ledit vecteur leader, ledit procédé consistant à déterminer, à partir dudit indice le vecteur leader correspondant, puis, à partir de ladite caractéristique et dudit vecteur leader, ledit vecteur quantifié à recouvrer, caractérisé en ce que ledit vecteur leader correspondant à l'indice contenu dans ledit code est déterminé à partir d'un dictionnaire donnant pour chaque vecteur leader ayant même norme que ledit vecteur quantifié son indice, lesdits vecteurs dudit dictionnaire étant déterminés par calcul et stockés temporairement au moment de la recherche dudit vecteur leader.
12) Procédé de décodage selon la revendication 1 1, caractérisé en ce qu'il consiste à scruter l'espace correspondant à l'hypercadran positif de l'hypersphère de rayon égal à la norme désirée et à mémoriser, dans un ordre prédéterminé, les vecteurs de cet espace qui sont des vecteurs leaders absolus.
13) Procédé de décodage selon la revendication 11, caractérisé en ce qu'il consiste à scruter l'espace correspondant à l'hypersphère de rayon égal à la norme désirée et à mémoriser, dans un ordre prédéterminé, les vecteurs de cet espace qui sont des vecteurs leaders.
14) Procédé de décodage selon une des revendications 12 ou 13, caractérisé en ce qu'il consiste à considérer, à chaque étape d'un processus de scrutation constitué d'étapes successives, un vecteur et à ne l'enregistrer dans le dictionnaire que s'il présente la norme désirée, et en ce que ledit processus de scrutation consiste : à une première étape, à considérer le vecteur y {a, 0, ..., 0} dont toutes les composantes sont nulles à l'exception de la première composante, dont la norme || || est inférieure ou égale à la norme désirée p et qui est tel que la norme du vecteur l'( + 1,
0, ..., 0) dont la première composante est égale à la valeur de la première composante a augmentée d'une unité soit supérieure à la norme désirée p, à une seconde étape, à considérer le vecteur / = {a-1, ..., cc-1} dont toutes les composantes sont égales à la première composante du vecteur précédemment considéré décrémentée d'une unité, à décrémenter, par étapes successives, d'une unité à chaque fois, la dernière composante du vecteur considéré jusqu'à obtenir la valeur zéro, tout en maintenant les autres composantes à leurs valeurs respectives, puis pour toutes les composantes des vecteurs ainsi obtenus, à décrémenter d'une unité la composante juste à gauche de la composante qui vient d'être annulée à l'étape précédente, puis égaler toutes les composantes à droite de ladite composante décrémentée à la valeur de ladite composante, à recommencer les étapes successives de décrémentation de la dernière composante.
15) Procédé de décodage selon la revendication 14, caractérisé en ce que le processus de scrutation des vecteurs est interrompu lorsque le vecteur considéré est le vecteur nul.
16) Procédé de décodage selon la revendication 14, caractérisé en ce que le processus de scrutation des vecteurs est interrompu lorsque le vecteur considéré est le vecteur dont, la première composante étant négative, la norme est supérieure à la norme désirée. 17) Procédé de décodage selon la revendication 11, caractérisé en ce que lesdits vecteurs dudit dictionnaire sont déterminés et mémorisés en considérant d'abord le vecteur dont seule la première composante n'est pas nulle, la valeur de ladite première composante étant déterminée de manière, d'une part, que la norme dudit vecteur soit inférieure à la norme désirée et, d'autre part, que la norme du vecteur dont seule la première composante n'est pas nulle et est égale à ladite valeur augmentée d'une unité soit supérieure à ladite norme désirée, puis en lançant une fonction S pour une variable de position égale à zéro, pour un vecteur donné égal audit vecteur ainsi considéré et pour la norme désirée, ladite fonction S, pour la variable de position égale à une valeur quelconque d et un vecteur donné, étant prévue pour a) déterminer un vecteur, dit vecteur analysé, qui, si la variable de position est nulle, est égal audit vecteur donné et, qui, dans le cas contraire, est égal audit vecteur donné avec la dιeme composante égale à la (d-l)1eme composante dudit vecteur donné, b) mémoriser ledit vecteur analysé si sa norme est égale à la norme désirée, ou, si la norme dudit vecteur est inférieure à la norme désirée, lancer la même fonction S pour une valeur de la variable de position incrémentée d'une unité et pour un vecteur donné égal audit vecteur analysé, c) déterminer un nouveau vecteur analysé en décrémentant d'une unité la valeur de la dième composante et d) recommencer à l'étape b).
18) Procédé de décodage selon la revendication 17, caractérisé en ce qu'à l'étape d), il consiste à recommencer à l'étape b) tant que la dιeme composante n'est pas inférieure à une valeur pour laquelle la norme dudit vecteur analysée est supérieure à la norme désirée, sinon sortir de la fonction S.
19) Procédé de décodage selon la revendication 17, caractérisé en ce qu'à l'étape d), il consiste à recommencer à l'étape b) tant que la d,eme composante n'est pas nulle, sinon sortir de la fonction S.
20) Procédé d'élaboration d'un dictionnaire partiel de vecteurs utilisable pour la mise en œuvre d'un procédé de codage de signaux qui ont été quantifiés sur un réseau selon une des revendications 1 à 10 ou pour la mise en œuvre d'un procédé de décodage de vecteurs en vue de recouvrer des signaux quantifiés sur un réseau selon une des revendications 11 à 19, lesdits vecteurs partiels ayant pour norme une norme désirée, par exemple, la norme d'un vecteur donné et dont les composantes sont arrangées d'une manière décroissante de gauche vers la droite, lesdits vecteurs étant alors dits vecteurs leaders, caractérisé en ce qu'il consiste à considérer, à chaque étape d'un processus de scrutation constitué d'étapes successives, un vecteur et à ne l'enregistrer dans le dictionnaire que s'il présente la norme désirée, et en ce que ledit processus de scrutation consiste : à une première étape, à considérer le vecteur l = {a, 0, ..., 0} dont toutes les composantes sont nulles à l'exception de la première composante, dont la norme ||/|| est inférieure ou égale à la norme désirée p et qui est tel que la norme du vecteur l'(a + 1,
0, ..., 0) dont la première composante est égale à la valeur de la première composante a augmentée d'une unité soit supérieure à la norme désirée p, à une seconde étape, à considérer le vecteur / = {a-1, .... a-1} dont toutes les composantes sont égales à la première composante du vecteur précédemment considéré décrémentée d'une unité, à décrémenter, par étapes successives, d'une unité à chaque fois, la dernière composante du vecteur considéré jusqu'à obtenir la valeur zéro, tout en maintenant les autres composantes à leurs valeurs respectives, puis pour toutes les composantes des vecteurs ainsi obtenus, à décrémenter d'une unité la composante juste à gauche de la composante qui vient d'être annulée à l'étape précédente, puis égaler toutes les composantes à droite de ladite composante décrémentée à la valeur de ladite composante, à recommencer les étapes successives de décrémentation de la dernière composante.
21) Procédé d'élaboration d'un dictionnaire selon la revendication 20, caractérisé en ce que le processus de scrutation des vecteurs est interrompu lorsque le vecteur considéré est le vecteur nul.
22) Procédé d'élaboration d'un dictionnaire selon la revendication 20, caractérisé en ce que le processus de scrutation des vecteurs est interrompu lorsque le vecteur considéré est le vecteur dont, la première composante étant négative, la norme est supérieure à la norme désirée. 23) Procédé d'élaboration d'un dictionnaire selon la revendication 20, caractérisé en ce que lesdits vecteurs dudit dictionnaire sont déterminés et mémorisés en considérant d'abord le vecteur dont seule la première composante n'est pas nulle, la valeur de ladite première composante étant déterminée de manière, d'une part, que la norme dudit vecteur soit inférieure à la norme désirée et, d'autre part, que la norme du vecteur dont seule la première composante n'est pas nulle et est égale à ladite valeur augmentée d'une unité soit supérieure à ladite norme désirée, puis en lançant une fonction S pour une variable de position égale à zéro, pour un vecteur donné égal audit vecteur ainsi considéré et pour la norme désirée, ladite fonction S, pour la variable de position égale à une valeur quelconque d et un vecteur donné, étant prévue pour a) déterminer un vecteur, dit vecteur analysé, qui, si la variable de position est nulle, est égal audit vecteur donné et, qui, dans le cas contraire, est égal audit vecteur donné avec la dιeme composante égale à la (d-l)ιeme composante dudit vecteur donné, b) mémoriser ledit vecteur analysé si sa norme est égale à la norme désirée, ou, si la norme dudit vecteur est inférieure à la norme désirée, lancer la même fonction S pour une valeur de la variable de position incrémentée d'une unité et pour un vecteur donné égal audit vecteur analysé, c) déterminer un nouveau vecteur analysé en décrémentant d'une unité la valeur de la dιeme composante et d) recommencer à l'étape b).
24) Procédé d'élaboration d'un dictionnaire selon la revendication 23, caractérisé en ce qu'à l'étape d), il consiste à recommencer à l'étape b) tant que la d,eme composante n'est pas inférieure à une valeur pour laquelle la norme dudit vecteur analysée est supérieure à la norme désirée, sinon sortir de la fonction S.
25) Procédé d'élaboration d'un dictionnaire selon la revendication 23, caractérisé en ce qu'à l'étape d), il consiste à recommencer à l'étape b) tant que la d,eme composante n'est pas nulle, sinon sortir de la fonction S.
PCT/FR1999/000017 1998-01-12 1999-01-07 Procede de codage d'un vecteur d'un reseau representatif d'un signal quantifie et procede de decodage correspondant WO1999035748A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR9800394A FR2773659B1 (fr) 1998-01-12 1998-01-12 Procede de codage d'un vecteur d'un reseau representatif d'un signal quantifie et procede de decodage correspondant
FR98/00394 1998-01-12

Publications (1)

Publication Number Publication Date
WO1999035748A1 true WO1999035748A1 (fr) 1999-07-15

Family

ID=9521819

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FR1999/000017 WO1999035748A1 (fr) 1998-01-12 1999-01-07 Procede de codage d'un vecteur d'un reseau representatif d'un signal quantifie et procede de decodage correspondant

Country Status (2)

Country Link
FR (1) FR2773659B1 (fr)
WO (1) WO1999035748A1 (fr)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4939555A (en) * 1987-05-13 1990-07-03 At&T Bell Laboratories Trellis coding arrangement

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4939555A (en) * 1987-05-13 1990-07-03 At&T Bell Laboratories Trellis coding arrangement

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ADOUL ET AL.: "Nearest neighbor algorithm for spherical codes from the Leech lattice", IEEE TRANSACTIONS ON INFORMATION THEORY, vol. 34, no. 5II, September 1988 (1988-09-01), NY US, pages 1188 - 1202, XP000008914 *
LAMBLIN ET AL.: "Algorithme de quantification vectorielle sphérique à partir du réseau de Gosset d'ordre 8", ANNALES DES TÉLÉCOMMUNICATIONS, vol. 43, no. 3-41, 1988, Paris, F, pages 172 - 186, XP000572495 *

Also Published As

Publication number Publication date
FR2773659A1 (fr) 1999-07-16
FR2773659B1 (fr) 2000-02-11

Similar Documents

Publication Publication Date Title
EP0484259B1 (fr) Procédé de codage binaire à taux de basculement des éléments binaires sensiblement uniforme, et procédés d&#39;incrémentation et de décrémentation correspondants
EP0189703B1 (fr) Procédé adaptatif de codage et de décodage d&#39;une suite d&#39;images par transformation, et dispositifs pour la mise en oeuvre de ce procédé
EP3443678B1 (fr) Methode de décodage d&#39;un code polaire avec inversion de bits peu fiables
EP0331236A1 (fr) Procédé et dispositif de codage de signaux vidéo numériques, et dispositif de décodage correspondant
EP2183851A1 (fr) Codage/decodage par plans de symboles, avec calcul dynamique de tables de probabilites
EP0670663A1 (fr) Procédé et dispositif de codage de signaux numériques représentatifs d&#39;une séquence d&#39;images
EP0329533B1 (fr) Procédé de codage et procédé de décodage à longueur variable, dispositif de codage et dispositif de décodage pour la mise en oeuvre de ce procédé
EP2289171B1 (fr) Procède de traitement de donnees numeriques
EP1692687A1 (fr) Transcodage entre indices de dictionnaires multi-impulsionnels utilises en codage en compression de signaux numeriques
EP1603341A1 (fr) Procede et dispositif pour les systemes d&#39;interpolation d&#39;images par estimation et compensation de mouvement.
WO1989010042A1 (fr) Procede de codage et de decodage d&#39;informations, par blocs, et dispositifs de codage et de decodage, pour la mise en oeuvre de ce procede
EP0053064A1 (fr) Système de transmission numérique à codage adaptatif d&#39;informations analogiques échantillonnées et transformées par transformation orthogonale
EP3632103B1 (fr) Procédés et dispositifs de codage et de décodage d&#39;un flux de données représentatif d&#39;au moins une image
WO1999035748A1 (fr) Procede de codage d&#39;un vecteur d&#39;un reseau representatif d&#39;un signal quantifie et procede de decodage correspondant
WO2018073523A1 (fr) Procédé de codage et de décodage de paramètres d&#39;image, dispositif de codage et de décodage de paramètres d&#39;image et programmes d&#39;ordinateur correspondants
EP2289172B1 (fr) Procédé de dénombrement des vecteurs dans les réseaux réguliers de points
FR2543384A1 (fr) Procede de codage adaptatif, et de decodage, d&#39;une image de television, et dispositifs pour la mise en oeuvre de ce procede
WO1999033185A1 (fr) Procede de codage d&#39;un vecteur d&#39;un reseau representatif d&#39;un signal quantifie et procede de decodage correspondant
WO2017129880A1 (fr) Procédé de codage et décodage de données, dispositif de codage et décodage de données et programmes d&#39;ordinateur correspondants
FR2842671A1 (fr) Compression de donnees numeriques robuste au bruit de transmission
EP0982866B1 (fr) Procédé de codage convolutif et de transmission par paquets d&#39;un flux série de données numériques, procédé et dispositif de décodage correspondants
WO1999033186A1 (fr) Procede de codage d&#39;un vecteur d&#39;un reseau representatif d&#39;un signal quantifie et procede de decodage correspondant
EP0667680A1 (fr) Procédé et dispositif de quantification vectorielle d&#39;un signal numérique, notamment appliqué à la compression d&#39;images numériques
EP0762658B1 (fr) Procédé de codage de données numériques représentées par des vecteurs et procédé de décodage des données codées selon ledit procédé de codage
EP4295575A1 (fr) Determination d&#39;un mode de codage d&#39;image

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): JP US

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
121 Ep: the epo has been informed by wipo that ep was designated in this application
122 Ep: pct application non-entry in european phase