EP1829377A1 - Method for a variable bit rate transmission through a transmission channel - Google Patents

Method for a variable bit rate transmission through a transmission channel

Info

Publication number
EP1829377A1
EP1829377A1 EP05818148A EP05818148A EP1829377A1 EP 1829377 A1 EP1829377 A1 EP 1829377A1 EP 05818148 A EP05818148 A EP 05818148A EP 05818148 A EP05818148 A EP 05818148A EP 1829377 A1 EP1829377 A1 EP 1829377A1
Authority
EP
European Patent Office
Prior art keywords
vector
quality
transmission
parameter
video
Prior art date
Legal status (The legal status 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 status listed.)
Withdrawn
Application number
EP05818148A
Other languages
German (de)
French (fr)
Inventor
Pierre Bretillon
Antoine Pesme
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Telediffusion de France ets Public de Diffusion
Original Assignee
Telediffusion de France ets Public de Diffusion
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 Telediffusion de France ets Public de Diffusion filed Critical Telediffusion de France ets Public de Diffusion
Publication of EP1829377A1 publication Critical patent/EP1829377A1/en
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/26Flow control; Congestion control using explicit feedback to the source, e.g. choke packets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/29Flow control; Congestion control using a combination of thresholds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/38Flow control; Congestion control by adapting coding or compression rate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/154Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/164Feedback from the receiver or from the transmission channel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/94Vector quantisation

Definitions

  • Operators involved in the distribution of services including video must provide the end user a level of quality given at the terminal so as not to devalue the content of the service.
  • BER bit error rate
  • BLER bit error rate
  • SIR Signal / Interference
  • Measurements at the network / transport level are generally related to more structured information elements such as packets: packet loss rate, payload, transmission delay, transmission delay variation. - At the level of the decoded image, objective quality measurements are sometimes made, but they are not used to achieve resource allocation. Video image complexity measurements are also used in statistical multiplexing methods (see L. Bôrôczky, "Statistical Multiplexing Using MPEG-2 Encoders", IBM J.Res., Vol 43 No. 4 JuM 999). , in order to adjust the flow.
  • the rate reduction coding level the coding rate, the number of layers in the case of a scalable encoder.
  • the retransmission of an incorrectly received or received packet the modification of the level of data protection against errors by correction mechanisms, the differentiated protection data according to their importance, the priority of data transmission, the power of emission.
  • resource allocation or optimization processes There are two types of resource allocation or optimization processes:
  • Binary processes engaging an action or allocation of a resource from an event signaled by one of the measures An example is the triggering of the retransmission of a packet by the network when it is reported missing or erroneous by the receiver.
  • the transmission parameters of a service on a UMTS network are defined according to the type of service.
  • variable rate reduction coding and statistical multiplexing methods makes it possible to obtain a variable bit rate depending solely on the content of the video. However, it is still necessary to manually set a minimum flow rate and a maximum allowable flow, chosen according to the content of the program.
  • variable rate reduction coding and statistical multiplexing methods makes it possible to obtain a variable bit rate depending on the content of the video.
  • the quality criterion used to adjust the coding rate is a parameter of complexity of the image, and not a measure of quality perceived after coding.
  • the existing techniques for automatic allocation of transmission resources are all based on transmission quality measurements at the network level. However, this type of measurement is not well representative of the perceptual quality returned to the user. It follows from the use of these non-perceptual measures an unsecured quality restituted to the end user, and therefore a non-optimal use of transmission resources. This prevents an operator from guaranteeing a given level of perceived quality, and from using the transmission resources optimally.
  • the present invention provides a method and system for selecting the rate reduction video coding configuration and resource allocation at the transmission network.
  • the goal is to restore a given video quality level at the terminal and optimize the use of storage resources and / or transmission.
  • the method combines techniques for measuring video perceptual quality and, where appropriate, vector quantization optimization.
  • the present invention provides a method and system for selecting the rate-reducing video coding configuration as well as the allocation of resources at the transmission network level based on the perceived quality at the terminal and optionally the characteristics of the transmission. terminal of the user.
  • the goal is to restore a given video quality level at the terminal and optimize the use of storage resources and / or transmission.
  • the method combines techniques for measuring video perceptual quality and optimization. Measurements of perceived quality can be obtained from the decoded video images, and not from the compressed video stream.
  • the invention thus relates to a method for transmitting a variable bit rate video program through a transmission channel, characterized in that it implements an adjustment of at least one coding and / or transmission parameter. function of at least one setpoint vector with at least one dimension representing a reception quality desired by said end user.
  • a said transmission parameter may be the bit rate and / or the type of modulation and / or the transmission power.
  • Said adjustment is made from a deterministic relationship between the desired reception quality and the encoding and / or transmission parameter (s).
  • said adjustment is implemented as a function of a distance between said target vector and a measurement vector representing said quality of reception measured at said final user. Said reception quality may be measured on a fixed duration sequence of said program.
  • said adjustment is made by modifying the transmission power P as a function of a distance between the reference vector and the measurement vector.
  • said adjustment can be made also according to at least one parameter of the content of the program.
  • a parameter of the content may be an activity parameter and / or a parameter assigned to the name of the program and / or the type of program, said adjustment may also be made according to a characteristic parameter of the terminal.
  • a characteristic parameter of the terminal may be the resolution of an image displayed on said terminal and / or the bandwidth.
  • the method can implement the development of a dictionary from a learning set comprising NZ vectors R characterizing the NZ test data, each Rz vector (Z ranging from 1 to NZ) of a rank test z, resulting from the union of a vector Qz representing the perceived quality of this rank test z, and a vector Pz representing the coding and / or transmission parameter or parameters of this rank z test, and possibly a vector Tz representing the parameter or parameters of the terminal of this rank test z, and / or a vector C z representing the content parameter or parameters of said program.
  • the dictionary is obtained by a vector classification algorithm from said learning set, and is consisting of a group of N vectors (with N ⁇ NZ) having a minimum mean distortion with respect to the NZ vectors of the training set.
  • the number of N vectors of the dictionary to be used is strongly dependent on the characteristics of the application and the implementation constraints (as well as for the choice of NZ for the first variant), but also on a compromise between the precision of the dictionary and its size.
  • the adjustment can be made by determining by vector quantization the dictionary vector corresponding best to a constraint vector representing at least the desired quality.
  • the constraint vector may consist of the union of one of the vectors representing the desired quality with a vector representing at least one content parameter and / or a vector representing at least one parameter of the terminal.
  • the method is characterized in that a said adjustment for example of the transmission power P , is performed by step DP according to the difference between the measured perceived quality Q and the target quality QC for the video program.
  • the step DP is variable according to a type of content associated with the video program.
  • FIG. 2 illustrates a relationship between the coding rate and the perceived quality, depending on the content
  • FIG. 3 illustrates a gain in flow rate with reference to FIG. 2;
  • FIG. 4 is an illustration of the method according to the invention.
  • FIG. 5 illustrates a vector quantization coding
  • FIG. 6 illustrates the procedure for constructing a dictionary
  • FIG. 7 illustrates the dictionary development method in the case of the present invention
  • FIGS. 8 and 9 illustrate the search sub-steps of the coding and transmission configuration in the case of a vector quantization
  • FIG. 10 illustrates the search procedure of the coding and transmission configuration in the case of the use of a deterministic law
  • FIG. 11 and 12 illustrate the constitution of a dictionary respectively without classification and classification
  • FIG. 13 illustrates the selection of the optimal coding rate as a function of the resolution of the terminal and the quality requested;
  • FIG. 16 illustrates, for example, the impact of packet losses on the proportion of lost video images, depending on the type of sequence (slow or fast).
  • the quality of a video service rendered at the end-user level is significantly influenced by the coding process at rate reduction, the resources allocated to this service in the transmission network, and the capabilities of the display terminal.
  • Figure 1 shows the main elements involved in the provision of a video service, namely video compression (or rate reduction coding, transmission to the terminal by the transmission network, and finally the terminal).
  • Video compression or rate reduction coding methods 1) Video compression or rate reduction coding methods:
  • the importance of the visibility of coding impairments varies according to many parameters: the content of the video signal, the bit rate of the coded bitstream, the spatial resolution, the refresh rate of the images, and so on. In order to restore a desired level of quality, the parameters of the rate reduction coding method must therefore be carefully selected.
  • This transport may be accompanied by loss of binary information.
  • the methods of reception and decoding of the stream at the terminal then restore video signals that can be affected by visible impairments, which has an impact on the quality of the service rendered at the end-user level.
  • the importance of the visibility of transmission impairments varies according to many parameters: video signal content, bit rate or transmission power allocated, transmission protocol (per packet, with or without a correction method, etc.), distribution and importance of losses, type of information lost, etc.
  • the invention proposes to maintain the level of quality returned to the user, while minimizing the use of network resources by adjusting the parameters of the transmission to the quality required or the quality measured in comparison with the requested quality.
  • the characteristics of the bitstream and the video must be adapted to the processing and display capabilities of the display terminal. For example, it is unnecessary to send a video stream of resolution greater than the resolution of the screen of the terminal, or which requires calculation capacities exceeding those necessary to receive or decode the stream.
  • the characteristics of the terminal therefore constitute constraints to be taken into account when choosing the parameters of the video compression method.
  • the selection of the parameters of the rate reduction coding method relative to a quality level according to the invention enables the video service provider to commit to perceived quality. In addition, this selection taking into account the characteristics of the terminal, it allows the operator to minimize the resources required for storage and / or transmission of this service.
  • the adjustment of the transmission parameters makes it possible to adapt to a change in the characteristics of the transmission channel in order to maintain the quality perceived.
  • the invention makes it possible to obtain significant flow rate gains. Indeed, the quality perceived at the end of a rate reduction coding is highly dependent on the coding rate. The type of content and in particular the presence of movements and fine details in the scene require a greater flow rate than a non-animated scene (so-called less complex) to obtain a given level of quality.
  • Figure 2 shows the perceived quality variation for three sequences I, II, III of increasing complexity as a function of coding rate.
  • FIG. 3 shows the gains in flow compared with the "III" sequence of FIG. 2, which shows a very significant gain in flow between 20% and 50%.
  • the sensitivity of a video stream transmitted over a digital network varies according to the type of video content. The presence of motion greatly influences the visibility of the damage caused by transmission errors. In the case of transmission over an IP (Internet Protocol) network, it can be observed that for the same number of lost IP packets, the drop in quality is greater for video sequences having a high-motion content.
  • IP Internet Protocol
  • FIG. 4 illustrates an exemplary system according to the invention. It is essentially:
  • a device 1 for measuring the perceptual quality of a video signal in a transmission or broadcasting network This equipment makes its measurements from the video signals decoded by the terminal. It can possibly be integrated into the terminal.
  • the parameter optimization equipment consists of a DB database entity and a decision entity RECH.
  • the applicable video perceptual quality measurement methods are those that exploit data from the video decoding process:
  • the purpose of the optimization procedure is to control the use of resources by searching for a coding or transmission configuration to achieve a given level of perceived quality.
  • One or other of the following two techniques can be used:
  • the optimization procedure can be performed by vector quantization.
  • Vector quantization is a technique that associates a point X (or vector) of a space with t dimensions at the nearest point
  • This technique for modeling complex processes has for example been used in image coding.
  • the image is previously subdivided into subsets such as rectangular blocks of pixels, the vector quantization is to search for each block of pixels the block of pixels of the dictionary (called vector) closest. Only an index or address of the vector is transmitted to the decoder of the image, decoder which reconstructs the image thanks to the knowledge of the dictionary and the identifiers of the corresponding vectors.
  • Figure 5 shows the principle of the principle of encoding and decoding by vector quantization.
  • X is the vector to be encoded
  • quadratic error is among those most used for vector quantization.
  • the use of the vector quantization technique involves two main interrelated steps: 1. The formation of the dictionary from a set of learning
  • the development of the DB dictionary constitutes a step prior to any optimization of the coding and transmission configuration by vector quantization.
  • Each of the NZ tests is identified by its z number.
  • Each test gives a particular case of the relationship between the measured perceived quality Q 2 and the coding and transmission parameters P 2 for the characteristics of the terminal T 2 and the video content C 2 given.
  • the choice of the different tests carried out leads to a powerful dictionary.
  • the parameters P 2 , T 2 and C 2 are varied on the one hand over a range corresponding to the operating conditions in practice, and on the other hand in order to obtain the desired perceived quality levels Q 2 (FIG. 7).
  • Qz, Pz, T 2 and C 2 are vectors in the most general case:
  • Q 2 (VQ l2 , .., VQ nq> 2 ) Eq. 5 with nq: number of quality parameters and VQi .. nq ⁇ 2 : quality parameters for the z-test
  • T 2 (VT 11 , .., VT n J Eq 7 with nt: number of terminal parameters and VTi .. nt , 2 : terminal parameters for z test
  • C 2 (VC 12 , .., VC n J Eq.8 with ne: number of parameters of the content and VCi .. nc , z: content parameters for the test z
  • Each learning vector R 2 of dimension t is resulting from the union of Q 2 , P 2 , T 2 and C 2. It characterizes all the data associated with the z-test (perceived quality, coding and transmission parameters, terminal parameters, and content parameters):
  • Table 1 Data constituting the learning set
  • the set of vectors R 2 , 1 ⁇ z ⁇ NZ constitutes the learning set (Table 1).
  • a specific procedure is applied to the learning set in order to elaborate the dictionary of representative cases Uk with 1 ⁇ k ⁇ N. Two cases are possible:
  • Case 1 (corresponding to the first variant without a vector classification): the number of combinations between the quality levels, the coding and transmission configurations and the characteristics of the terminal and the content is limited (for example NZ ⁇ 100).
  • the dictionary UI..N can simply be equal to the training set:
  • the limit to the number of combinations can be freely set, for example according to implementation criteria such as the size of the database or the computing power necessary for the optimization module to find the optimal configuration.
  • Case 2 (corresponding to the second variant with vector classification): the number NZ of combinations R 2 contained in the training set is very large. An analysis procedure is necessary to generate the N vectors £ ⁇ .. ⁇ /. of the dictionary that best represent the initial vector set R 2 .
  • This group of vectors is the one that has the smallest mean distortion with respect to all the vectors of the training set, among the other possible candidate dictionaries. The vectors of this group are then the best representative vectors of the training set, and therefore the relationship between quality and configuration of coding and transmission and the characteristics of the terminal and the content.
  • the dictionary resulting from the classification procedure constitutes the database DB (FIG. 7).
  • the parameters of the terminal need to be taken into account only in the case of a variety of users in the intended application and when it is possible to know the terminal parameter of a given user.
  • the next step is a search for the encoding and transmission configuration.
  • the first step has generated a dictionary representative of the relationship between the perceived perceived quality and the coding configuration or the transmission network for certain characteristics of the video content and the data terminal.
  • the second step uses this dictionary to find a coding and transmission configuration that assures a certain QC target quality at the end-user level. For this, the RECH module looks for this configuration in the DB database (FIG. 4).
  • the data shown in ( Figure 4) is defined below:
  • the vector Q contains the parameters of measured current perceived quality. It is identical to the vector defined by the relation Eq. 5.
  • Q ⁇ yQ ⁇ , .., VQ nq ) where nq: number of quality parameters VQi Eq. 11
  • the QC vector defines the target perceived quality parameters to achieve. All QC VQQ parameters characterizing the target quality exist in Q, but can of course be of different values. But conversely, all the VO, - Q parameters characterizing the measured quality do not necessarily exist in QC.
  • the vector Q must necessarily contain an audiovisual quality value gq obtained by measurement to enable the vector quantization optimization process to work, by comparing gq and gqc.
  • Q can be larger than the dimension nqc of
  • the vector T contains the characteristic parameters of the terminal. It is identical to the vector defined by the relation Eq. 7.
  • nt number of parameters characteristic of the terminal VT 1 Eq. 13
  • the vector C defines the parameters of the video content. It is identical to the vector defined by the relation Eq. 8.
  • ne 1 parameter VCi: activity of a video sequence or type of sequence (slow, fast, average).
  • the vector P defines the desired coding and transmission parameters. It is identical to the vector defined by the relation Eq. 6.
  • P ⁇ p x , .., VP np ) where np: number of coding and transmission parameters VPj Eq. 15
  • np 1, 2 or 3 VPi, VP 2 , VP 3 : transmission power and / or bit rate and / or bandwidth.
  • the process of searching for the optimal coding and transmission configuration is to extract the P vector giving the coding and transmission pattern to be used to provide the quality level at the user level defined by the quality representative QC vector. under the current constraint conditions represented by the vectors Q, T, and C.
  • the advantage of the vectorization method is that it is not need to measure the perceived quality Q than during the constitution of the dictionary.
  • the research process is subdivided into three sub-steps: a. Formation of a vector of constraints O.
  • the date associated with the vector Q is associated with the vector of constraints O. This date is representative of the date of presentation of the video content.
  • b. Vector quantization on the vector of constraints O to find the vector U k of the dictionary corresponding best to the constraint vector O presented as input.
  • vs. Extraction of the vector P of parameters of the coding and transmission system.
  • the vector O representing the set of the current constraints of operation of the system is constituted, in the most powerful case of the union of the vectors T, C, and of a combination Q 'Q and QC vectors. Indeed, each parameter of the vector O must be unique, while the parameters of the vector QC are all present in the vector Q.
  • the final objective is to find the vectors of coding parameters P making it possible to obtain a target quality defined by QC.
  • the vector O is formed by union of T, C, Q '.
  • the resulting vector is of dimension h.
  • the vector quantization corresponds to the vector O of parameters VO, - in input, the vector U of the dictionary corresponding to the better to the constraint vector O presented as input.
  • the actual vector quantization is performed on a sub vector S k of each vector U k .
  • the vector O contains only a subset of the parameters of the vectors U k .
  • the parameters of U k not present in O are the P k parameters of coding and transmission associated with this set of constraints O.
  • Sub-step c) Extraction of the coding and transmission parameters.
  • the parameters of U not present in O are the coding and transmission parameters P associated with this set of constraints O. It is therefore sufficient to extract from U the vector P representing the coding parameters and which is therefore defined by
  • the parameters of the vector P found, as well as some parameters of the vector U found by vector quantization in substep b if necessary, can then be applied to the rate reduction coding process and the transmission process.
  • the resolution parameter becomes a constraint for the coding method of the rate reduction video.
  • the only parameter of the vector P will therefore be the coding rate.
  • the coding resolution (imposed by the terminal) must also be applied to the coding process so that the optimization method is exhaustive.
  • the DB database also has a function of storing the data generated by the perceived quality measurement module, as well as the optimization decisions made by the module RECH.
  • the database DB stores the vectors O and P, represented in FIG. 9, accompanied by the date representative of the date of presentation of the video content which is associated with the vector O.
  • An alternative to vector quantization is the computation by a law determined logically or empirically in advance, giving the relationship between the perceived quality and the coding configuration or transmission network considered.
  • the optimization procedure f gives the coding and transmission parameters P to be used to obtain a target quality QC, given the characteristics of the terminal T and the video content C 1 and the current quality level measured Q (FIG. 10).
  • the variables P, QC, T, C, and Q are defined by the equations Eq. 11 to Eq. 15, p. 15.
  • P f (QC, Q, T, c) Eq.
  • all the knowledge necessary for the optimization procedure is therefore contained in the deterministic law, located in the module RECH.
  • the DB database does not contain data relating to the optimization procedure.
  • the optimization approach according to a deterministic law is advantageous because it does not require a database, which can be important. On the other hand, a deterministic law can be easily determined only in the case of a low number of configurations.
  • the invention is particularly applicable to the provision of video sequences on demand from a server by using the vector quantization of the optimal coding rate according to the resolution of the terminal and the quality requested by the end user, depending on the type of sequence desired.
  • This application uses the invention to select the bit rate of video sequences pre-coded and stored on a video server among a number of possible values.
  • the resolution of the user's terminal as well as the desired level of quality are taken into account in order to minimize the throughput required to provide the service, resulting in an optimal use of the transmission network.
  • the transmission network used is, for example, IP (Internet Protocol) DVB (Digital Video Broadcasting) or UMTS (Universal Mobile Telecommunications System).
  • This application can use an optimization procedure based on vector quantization, as described above.
  • this application defines the parameters Q, QC, T, P and C as:
  • the quality measurement method integrates, for example, the method according to PCT patent application WO 2004/047451 mentioned above filed by TDF.
  • T Terminal screen resolution, for example CIF (352 x 288) or QCIF (176 x 144)
  • C type of content (sport, news, %), to characterize the video content, by type of sequence.
  • a number of source video signals are acquired and encoded by rate reduction.
  • the coding is performed according to all the possible resolutions at the terminals, and according to one or more selected bit rates in a range corresponding to the possibilities of the terminals and the transmission network.
  • the CIF and QCIF resolutions have been used, and transmission channel rates ranging from 48 kbit / s to 384 kbit / s, for example in 10 kbit / s steps, have been applied in each of these. two cases.
  • Each flow is evaluated by the perceived quality measurement module.
  • the quality Q z characterizing the coded video sequence is the average quality measured on the sequence.
  • Encoded video streams are stored on a video server.
  • the other data is the dictionary stored in DB: quality Q, transmission channel rate P, terminal resolution T, content name C. It is therefore not necessary to use a classification procedure here, since the size of the dictionary remains modest.
  • This dictionary can then be used by the RECH module to find the necessary flow, as explained above.
  • a second variant using the type of content instead of the name of the content is described in relation to FIG. 12.
  • the mode of construction of the dictionary is similar: the sequences are coded in all the desired configurations and their quality Q z evaluated. The difference comes from the use of content type information (eg sport or news) rather than the name.
  • content type information eg sport or news
  • the impact of the bit-rate video coding on the perceived quality varies greatly depending on the type of content of the sequence, particularly the presence of additional defects introduced by the transmission channel. For example, sports footage usually requires higher throughput because of more animated content. It is possible to use this property to match a content type to the encoding rate needed for a given quality obtained at reception.
  • a classification procedure is preferable in order to group the various quality measurements Q 2 carried out under the same viewing conditions T 2 and P 2 coding for several different sequences but of the same type C z , into a single vector Q, T, P 1 C.
  • the classification procedure used is preferably the LBG algorithm with the distance of Eq. 21.
  • Figure 13 details the implementation of the optimization procedure, during a request submitted by a user.
  • the user accesses a list of contents stored on a video server, identified by their name and type, for example through an Internet browser; the user selects a desired content and quality level and sends his request.
  • the mechanism using the invention takes place in three stages without user intervention:
  • the user terminal sends to the RECH module its characteristics, the characteristics of the chosen content, the desired quality level QC, and possibly the last quality measure Q in date.
  • the module RECH searches by vector quantization in the database the existing coding rate P for the content C on the video server which provides the QC quality requested, for the resolution imposed by the terminal, and returns this information to the terminal.
  • the parameters received and sent to the terminal are also stored in the database, for example for later analysis.
  • the user terminal accesses the content C selected by the user at the rate P selected by RECH and the user obtains the requested content at a quality QC.
  • M Figure 14 shows the sequence of operations performed by the module RECH.
  • RECH receives the characteristics of the terminal T and the content C and possibly the Q quality measurements. It stores these measurements in the database DB via a database management system (DBMS). RECH then performs a search for the best coding or P-transmission configuration from the dictionary also stored in DB. The configuration P is sent to the equipment concerned.
  • DBMS database management system
  • the method according to the invention is used to minimize the coding bit rate of video sequences by taking only the level of quality to be achieved, resulting in an optimal use of the transmission network. This approach is particularly applicable when the conditions of use of the video service - including the type of terminal - and the content of the service are not very variable. This is for example the case for a video-on-demand service intended to be viewed on television type terminals by the users.
  • the invention uses the same optimization procedure based on the vector quantization, as described above for said first application, and the same notations.
  • the main difference is that the parameters T and P are empty.
  • the vector quantization is then based on:
  • the quality measurement method integrates, for example, the method according to PCT Application WO / 2004/047451 mentioned above.
  • the same methods of dictionary construction and parameter optimization P, here reduced to the encoding rate, are usable.
  • the method according to the invention makes it possible, for example, to adjust the transmission power as a function of the desired quality and possibly of the type of content, without implementation of a vector quantization.
  • This application adjusts the transmission power level of the service from a UMTS access network transmitter based on the perceived quality instead of the standard network level parameters used in the network.
  • UMTS such as the signal-to-noise ratio Eb / No.
  • the goal is to maintain a given quality level and not a target bit error rate.
  • the sensitivity of a video stream transmitted on a digital network varies according to the type of video content.
  • the presence of motion greatly influences the visibility of the damage caused by transmission errors.
  • the invention takes advantage of this property to react only when it is necessary to maintain the perceived quality.
  • the invention can use in such a case an optimization procedure based on a deterministic algorithm, as described above.
  • the perceived quality measurement method incorporates the method of PCT Patent Application WO 2004/047451 cited above. Q also integrates other measures: the actual rate received by the terminal, and the rate of erroneous data packets received.
  • Figure 13 shows a preferred mode of operation of the application.
  • the user accesses a list of contents stored on a video server, identified by their name and type, for example through an Internet browser; the user chooses a desired content and quality level. Then, the mechanism using the invention takes place in three stages without user intervention:
  • the terminal periodically sends to the module RECH the last quality measurement Q dated, the desired quality level QC and, in the second variant, the characteristics C of the chosen content.
  • the RECH module applies the optimization procedure from C 1 QC and Q to find the power P necessary to ensure the quality QC requested under the current perceived quality conditions for the content C. This power P is applied in the network at the broadcast of the video service.
  • the parameters received from the terminal and then sent to the network are also stored in the database, for example for later analysis.
  • This optimization procedure which does not implement the vector quantization acts on the power as a function of the perceived quality Q measured.
  • the procedure periodically calculates the new power P, for example every second, from the current power PoId. It can be summarized as follows:
  • the method can also be implemented to take into account both the quality measured at the terminal and the type of content, without resorting to vector quantization.
  • This variant takes advantage of the sensitivity variation of a video stream to transmission errors depending on the type of video content. Indeed, in the case of a transmission over an IP or UMTS network, it is observed that for the same number of lost IP packets, the drop in quality is greater for video sequences having a high-motion content.
  • FIG. 16 shows this phenomenon by taking as a criterion of degradation the proportion of video images lost by transmission: the loss of images is greater for the very animated sequences, which corresponds to a lower quality.
  • This second variant of optimization procedure takes advantage of this property through the following precursor:
  • Example 1 For the first variant of the first application (selection of the optimal coding rate according to the resolution of the terminal and the requested quality, using the name of the content)
  • the table shows a real-world example of a portion of a dictionary used to search for optimal throughput based on a target quality and named content, with a display resolution constraint.
  • the illustrated extract is valid for 5 different encoded contents according to a combination of two resolutions and four rates. These contents are denominated: football ("Foot”), Kayak, Wood, TV Newspaper and Comic Strip (BD).
  • Table 1 Example of dictionary extract (variant 1)
  • the application of the vector quantization procedure with a QC vector containing a target quality value of pqos then makes it possible to select the optimum value of the "bit rate” parameter.
  • the distance between two coordinates "image size" (or “bit rate”) is zero if the two coordinates of the same vector are equal, otherwise it can be chosen for example equal to 100 so as to be of an order of magnitude comparable to the coordinate pqos.
  • the encoding configuration sent to the encoder is composed of the vector P and possibly some elements of the vector U: in this case, the parameters "image size” or "bit rate” is this configuration.
  • Example II For the second variant of the first application (selection of the optimal coding rate according to the resolution of the terminal and the requested quality, using the type of content)
  • the table shows a real-world example of a dictionary used to find the optimal throughput based on a target quality and a content type (news or "News" and "Sport”), with a display resolution constraint.
  • the coding configuration sent to the encoder is composed of the vector P and possibly some elements of the vector U: in this case, the parameters "bit rate” and "image size" constitute this configuration.

Abstract

The invention relates to a method for transmitting an audio and/or video program through an adjustable variable bit rate transmission channel consisting in adjusting at least one encoding and/or transmission parameter according to at least one instruction vector to at least one dimension representing a reception quality desired by an end user.

Description

PROCEDE DE TRANSMISSION A DEBIT BINAIRE VARIABLE A TRAVERSMETHOD OF TRANSMITTING VARIABLE BIT RATE THROUGH THROUGH
UN CANAL DE TRANSMISSION.A CHANNEL OF TRANSMISSION.
Les opérateurs impliqués dans la distribution de services notamment vidéo doivent fournir à l'utilisateur final un niveau de qualité donné au niveau du terminal afin de ne pas dévaloriser le contenu du service.Operators involved in the distribution of services including video must provide the end user a level of quality given at the terminal so as not to devalue the content of the service.
Ils doivent également minimiser les coûts de stockage et/ou d'acheminement du service en contrôlant un procédé de codage vidéo à réduction de débit utilisé, ainsi que les ressources du réseau de transmission allouées pour acheminer le service vidéo. Ces procédés de codage et de transmission ont un impact variable sur la qualité restituée à l'utilisateur suivant leur configuration et le contenu du service vidéo.They should also minimize storage and / or service delivery costs by controlling a used rate-reducing video coding method, as well as allocated transmission network resources to carry the video service. These coding and transmission methods have a variable impact on the quality returned to the user according to their configuration and the content of the video service.
Par ailleurs, le développement des technologies numériques a abouti à la mise à disposition du public d'une grande diversité de terminaux capables de restituer des images vidéo. Ces terminaux ont des capacités très diverses, allant par exemple du petit écran d'un terminal portable au grand écran d'un téléviseur.In addition, the development of digital technologies has resulted in the provision to the public of a wide variety of terminals capable of rendering video images. These terminals have very diverse capabilities, ranging from the small screen of a portable terminal to the big screen of a TV.
Il existe de nombreux procédés connus d'allocation de ressources pour le codage à réduction de débit ou la transmission numérique. Les différences entre ces méthodes résident dans les mesures de qualité utilisées, les moyens d'action sur la qualité (c'est à dire les ressources sur lesquelles les méthodes agissent), parfois les algorithmes d'optimisation mis en œuvre.There are many known resource allocation methods for rate reduction coding or digital transmission. The differences between these methods lie in the quality measures used, the means of action on quality (ie the resources on which the methods operate), sometimes the optimization algorithms implemented.
Il existe principalement trois types connus de mesures de qualité :There are mainly three known types of quality measures:
Les mesures au niveau physique se traduisent par des informations relatives à des unités d'information élémentaires comme les le taux d'erreur binaire (ou « Bit Error Rate », BER) ou le taux d'erreur par bloc de bits (BLER) dans le canal de transmission, le débit du canal, la bande passante, la puissance transmise, le rapport Signal/Interférence (SIR), etc. Le taux d'erreur binaire (désigné par BER par la suite) est la mesure la plus utilisée dans la littérature pour caractériser les erreurs du canal.Measurements at the physical level result in information relating to basic information units such as bit error rate (BER) or bit error rate (BLER) in the transmission channel, the channel rate, the bandwidth, the transmitted power, the Signal / Interference (SIR) ratio, etc. The bit error rate (subsequently referred to as BER) is the most widely used measure in the literature for characterizing channel errors.
Les mesures au niveau réseau/transport sont en général relatives à des éléments d'information plus structurés comme des paquets : taux de pertes de paquets, débit utile, délai de transmission, variation du délai de transmission. - Au niveau de l'image décodée, des mesures de qualité objective sont parfois effectuées, mais elles ne sont pas exploitées pour réaliser une allocation de ressources. Des mesures de complexité de l'image vidéo sont également utilisées dans les procédés de multiplexage statistique (voir L. Bôrôczky, « Statistical multiplexing using MPEG-2 encoders », IBM J. res. develop. Vol. 43 No. 4 JuM 999), dans le but d'ajuster le débit.Measurements at the network / transport level are generally related to more structured information elements such as packets: packet loss rate, payload, transmission delay, transmission delay variation. - At the level of the decoded image, objective quality measurements are sometimes made, but they are not used to achieve resource allocation. Video image complexity measurements are also used in statistical multiplexing methods (see L. Bôrôczky, "Statistical Multiplexing Using MPEG-2 Encoders", IBM J.Res., Vol 43 No. 4 JuM 999). , in order to adjust the flow.
Ces mesures sont exploitées pour piloter divers mécanismes d'action sur le flux vidéo codé :These measures are exploited to control various mechanisms of action on the coded video stream:
Au niveau du codage à réduction de débit : le débit de codage, le nombre de couches dans le cas d'un codeur échelonnable (scalable).At the rate reduction coding level: the coding rate, the number of layers in the case of a scalable encoder.
Au niveau de l'interface entre le codeur et le réseau, et dans le réseau : la retransmission d'un paquet non reçu ou reçu erroné, la modification du niveau de protection des données contre les erreurs par des mécanismes de correction, la protection différenciée des données suivant leur importance, la priorité de transmission des données, la puissance d'émission. Les procédés d'allocation ou d'optimisation de ressources sont de deux types :At the interface between the encoder and the network, and in the network: the retransmission of an incorrectly received or received packet, the modification of the level of data protection against errors by correction mechanisms, the differentiated protection data according to their importance, the priority of data transmission, the power of emission. There are two types of resource allocation or optimization processes:
Les procédés binaires engageant une action ou l'allocation d'une ressource à partir d'un événement signalé par une des mesures. Un exemple est le déclenchement de la retransmission d'un paquet par le réseau lorsque celui-ci est signalé manquant ou erroné par le récepteur.Binary processes engaging an action or allocation of a resource from an event signaled by one of the measures. An example is the triggering of the retransmission of a packet by the network when it is reported missing or erroneous by the receiver.
Les procédés de pilotage d'une ressource à partir d'une loi pré déterminée de manière logique ou empirique. Un exemple de cette approche est illustré dans le document 3GPP Technical Spécification 23.107The methods of piloting a resource from a law determined in a logical or empirical manner. An example of this approach is illustrated in 3GPP Technical Specification 23.107
V5.12.0, « Quality of Service (QoS) concept and architecture », 3rdV5.12.0, "Quality of Service (QoS) concept and architecture", 3rd
Génération Partnership Project : les paramètres de transmission d'un service sur un réseau UMTS sont définies en fonction du type de service.Generation Partnership Project: The transmission parameters of a service on a UMTS network are defined according to the type of service.
Un domaine particulier qui utilise des techniques d'ajustement de ressources est la télévision numérique. Aujourd'hui, l'ajustement du débit de codage ne prend pas en compte les caractéristiques de plusieurs types de terminaux possibles, et est au moins en partie manuel :One particular area that uses resource adjustment techniques is digital television. Today, the adjustment of the coding rate does not take into account the characteristics of several types of possible terminals, and is at least partially manual:
Les opérateurs peuvent décider du débit de codage pour chaque programme selon son contenu et éventuellement l'ajuster manuellement en fonction du retour d'expérience. Alternativement, l'utilisation de procédés de codage à réduction de débit variable et multiplexage statistique permet d'obtenir un débit variable en fonction seulement du contenu de la vidéo. Cependant, il est toujours nécessaire de fixer manuellement un débit minimal et un débit maximal admissibles, choisis en fonction du contenu du programme.Operators can decide the coding rate for each program according to its content and possibly adjust it manually based on feedback. Alternatively, the use of variable rate reduction coding and statistical multiplexing methods makes it possible to obtain a variable bit rate depending solely on the content of the video. However, it is still necessary to manually set a minimum flow rate and a maximum allowable flow, chosen according to the content of the program.
Les opérateurs impliqués dans la distribution de services vidéo devraient fournir à l'utilisateur final un niveau de qualité donné, tout en minimisant les coûts de stockage et/ou d'acheminement du service, qui passe par l'ajustement de l'utilisation des ressources. Il existe ainsi que montré ci- dessus, des techniques au moins en partie manuelles et des techniques d'allocation automatique de ressources. Toutes ces techniques connues présentent au moins un inconvénient.Operators involved in the distribution of video services should provide the end user with a given level of quality, while minimizing the costs of storage and / or routing of the service, which involves adjusting the use of resources . As shown above, there are at least partly manual techniques and automatic resource allocation techniques. All these known techniques have at least one drawback.
Beaucoup de techniques d'ajustement des ressources de codage sont aujourd'hui au moins en partie manuelles. Par exemple, les opérateurs de télévision numérique décident du débit de codage pour chaque programme ou chaque type de programme et mettent en œuvre ce paramétrage de manière manuelle. En pratique, les programmes très animés tels que les retransmissions sportives demandent un débit supérieur aux autres. Alternativement, l'utilisation de procédés de codage à réduction de débit variable et multiplexage statistique permet d'obtenir un débit variable en fonction du contenu de la vidéo. Cependant, il est toujours nécessaire de fixer manuellement un débit minimal et un débit maximal admissibles. Par ailleurs, le critère de qualité utilisé pour ajuster le débit de codage est un paramètre de complexité de l'image, et non pas une mesure de qualité perçue après codage. Enfin, ce procédé ne prend pas en compte les caractéristiques propres du terminal pour ajuster les paramètres de codage.Many coding resource adjustment techniques are now at least partly manual. For example, digital television operators decide the coding rate for each program or program type and implement this setting manually. In practice, very animated programs such as sports broadcasts require a higher speed than others. Alternatively, the use of variable rate reduction coding and statistical multiplexing methods makes it possible to obtain a variable bit rate depending on the content of the video. However, it is still necessary to manually set a minimum flow rate and maximum allowable flow. Moreover, the quality criterion used to adjust the coding rate is a parameter of complexity of the image, and not a measure of quality perceived after coding. Finally, this method does not take into account the characteristics of the terminal to adjust the coding parameters.
Les techniques existantes d'allocation automatique de ressources de transmission sont toutes basées sur des mesures de qualité de la transmission au niveau du réseau. Or, ce type de mesure n'est pas bien représentatif de la qualité perceptuelle restituée à l'utilisateur. Il découle de l'utilisation de ces mesures non perceptuelles une non garantie de la qualité restituée à l'utilisateur final, et par conséquent une utilisation des ressources de transmission non optimale. Ceci empêche un opérateur de garantir un niveau de qualité perçue donné, et d'utiliser les ressources de transmission de manière optimale. La présente invention propose un procédé et un système réalisant la sélection de la configuration de codage vidéo à réduction de débit ainsi que l'allocation de ressources au niveau du réseau de transmission.The existing techniques for automatic allocation of transmission resources are all based on transmission quality measurements at the network level. However, this type of measurement is not well representative of the perceptual quality returned to the user. It follows from the use of these non-perceptual measures an unsecured quality restituted to the end user, and therefore a non-optimal use of transmission resources. This prevents an operator from guaranteeing a given level of perceived quality, and from using the transmission resources optimally. The present invention provides a method and system for selecting the rate reduction video coding configuration and resource allocation at the transmission network.
Le but recherché est de restituer un niveau de qualité vidéo donné au niveau du terminal et d'optimiser l'utilisation des ressources de stockage et/ou transmission. Pour cela, la méthode associe des techniques de mesure de la qualité perceptuelle vidéo et le cas échéant d'optimisation par quantification vectorielle.The goal is to restore a given video quality level at the terminal and optimize the use of storage resources and / or transmission. For this, the method combines techniques for measuring video perceptual quality and, where appropriate, vector quantization optimization.
La présente invention propose une méthode et un système réalisant Ia sélection de la configuration de codage vidéo à réduction de débit ainsi que l'allocation de ressources au niveau du réseau de transmission se basant sur la qualité perçue au niveau du terminal et éventuellement les caractéristiques du terminal de l'utilisateur.The present invention provides a method and system for selecting the rate-reducing video coding configuration as well as the allocation of resources at the transmission network level based on the perceived quality at the terminal and optionally the characteristics of the transmission. terminal of the user.
Le but recherché est de restituer un niveau de qualité vidéo donné au niveau du terminal et d'optimiser l'utilisation des ressources de stockage et/ou transmission.The goal is to restore a given video quality level at the terminal and optimize the use of storage resources and / or transmission.
Pour cela, la méthode associe des techniques de mesure de la qualité perceptuelle vidéo et d'optimisation. Des mesures de qualité perçue peuvent être obtenues à partir des images vidéo décodées, et non pas à partir du flux vidéo compressé.For this, the method combines techniques for measuring video perceptual quality and optimization. Measurements of perceived quality can be obtained from the decoded video images, and not from the compressed video stream.
L'invention concerne ainsi un procédé de transmission d'un programme vidéo à débit binaire variable à travers un canal de transmission, caractérisé en ce qu'il met en œuvre un ajustement d'au moins un paramètre de codage et/ou de transmission en fonction d'au moins un vecteur de consigne à au moins une dimension représentant une qualité de réception souhaitée par ledit utilisateur final.The invention thus relates to a method for transmitting a variable bit rate video program through a transmission channel, characterized in that it implements an adjustment of at least one coding and / or transmission parameter. function of at least one setpoint vector with at least one dimension representing a reception quality desired by said end user.
Un dit paramètre de transmission peut être le débit binaire et/ou le type de modulation et/ou la puissance de transmission.A said transmission parameter may be the bit rate and / or the type of modulation and / or the transmission power.
Ledit ajustement est réalisé à partir d'une relation déterministe entre la qualité de réception souhaitée et Ie ou les paramètres de codage et/ou de transmission.Said adjustment is made from a deterministic relationship between the desired reception quality and the encoding and / or transmission parameter (s).
Alternativement, ledit ajustement est mis en œuvre en fonction d'une distance entre ledit vecteur de consigne et un vecteur de mesure représentant ladite qualité de réception mesurée au niveau dudit utilisateur final. Ladite qualité de réception peut être mesurée sur une séquence de durée déterminée dudit programme. En particulier ledit ajustement est réalisé en modifiant la puissance d'émission P en fonction d'une distance entre le vecteur de consigne et le vecteur de mesure. Dans tous les cas, ledit ajustement peut être réalisé également en fonction d'au moins un paramètre du contenu du programme. Un paramètre du contenu peut être un paramètre d'activité et/ou un paramètre attribué au nom du programme et/ou au type de programme, ledit ajustement peut être réalisé également en fonction d'un paramètre caractéristique du terminal.Alternatively, said adjustment is implemented as a function of a distance between said target vector and a measurement vector representing said quality of reception measured at said final user. Said reception quality may be measured on a fixed duration sequence of said program. In particular, said adjustment is made by modifying the transmission power P as a function of a distance between the reference vector and the measurement vector. In any case, said adjustment can be made also according to at least one parameter of the content of the program. A parameter of the content may be an activity parameter and / or a parameter assigned to the name of the program and / or the type of program, said adjustment may also be made according to a characteristic parameter of the terminal.
Un paramètre caractéristique du terminal peut être la résolution d'une image affichée sur ledit terminal et/ou la bande passante.A characteristic parameter of the terminal may be the resolution of an image displayed on said terminal and / or the bandwidth.
Le procédé peut mettre en œuvre l'élaboration d'un dictionnaire à partir d'un ensemble d'apprentissage comprenant NZ vecteurs R caractérisant les données de NZ tests, chaque vecteur Rz (Z variant de 1 à NZ) d'un test de rang z, résultant de l'union d'un vecteur Qz représentant la qualité perçue de ce test de rang z, et d'un vecteur Pz représentant le ou les paramètres de codage et/ou de transmission de ce test de rang z, et éventuellement d'un vecteur Tz représentant le ou les paramètres du terminal de ce test de rang z, et/ou d'un vecteur Cz représentant le ou les paramètres de contenu dudit programme.The method can implement the development of a dictionary from a learning set comprising NZ vectors R characterizing the NZ test data, each Rz vector (Z ranging from 1 to NZ) of a rank test z, resulting from the union of a vector Qz representing the perceived quality of this rank test z, and a vector Pz representing the coding and / or transmission parameter or parameters of this rank z test, and possibly a vector Tz representing the parameter or parameters of the terminal of this rank test z, and / or a vector C z representing the content parameter or parameters of said program.
Selon une première variante applicable au cas où le nombre NZ n'est pas très élevé, le dictionnaire est constitué par les vecteurs de l'ensemble d'apprentissage. Il est constitué d'un groupe de N vecteurs (N = NZ). Le nombre NZ maximal de vecteurs pour lequel cette variante est applicable est fortement dépendant des caractéristiques de l'application (par exemple le nombre de requêtes de recherche du vecteur optimal par seconde) et des contraintes d'implémentation (par exemple les capacités de calcul et de mémoire qu'il est possible d'affecter au processus de recherche du vecteur optimal). Par exemple, si l'on souhaite ne réaliser que 10 000 comparaisons vectorielles par seconde, il ne sera possible de réaliser que 100 recherches de vecteurs optimaux par seconde dans une liste de NZ = 100 vecteurs, ou bien seulement 50 recherches de vecteurs optimaux par seconde parmi NZ = 200 vecteurs. Sinon, le dictionnaire est obtenu par un algorithme de classification vectorielle à partir dudit ensemble d'apprentissage, et est constitué par un groupe de N vecteurs (avec N < NZ) présentant une distorsion moyenne minimale par rapport aux NZ vecteurs de l'ensemble d'apprentissage. Le nombre de vecteurs N du dictionnaire à utiliser est fortement dépendant des caractéristiques de l'application et des contraintes d'implémentation (de même que pour le choix de NZ pour la première variante), mais aussi fonction d'un compromis entre la précision du dictionnaire et sa taille. Plus le dictionnaire est grand, et plus il est précis, ce qui donne une performance supérieure au système. En pratique, un dictionnaire de N = 20 à 40 vecteurs convient pour un ensemble d'apprentissage de 10 séquences codées différentes à deux résolutions différentes et 10 débits différents (soit NZ = 200 configurations).According to a first variant applicable to the case where the number NZ is not very high, the dictionary is constituted by the vectors of the training set. It consists of a group of N vectors (N = NZ). The maximum NZ number of vectors for which this variant is applicable is strongly dependent on the characteristics of the application (for example the number of search queries for the optimal vector per second) and implementation constraints (for example the computing and of memory that it is possible to assign to the search process of the optimal vector). For example, if it is desired to make only 10,000 vector comparisons per second, it will be possible to perform only 100 optimal vector searches per second in a list of NZ = 100 vectors, or only 50 optimal vector searches per second. second of NZ = 200 vectors. Otherwise, the dictionary is obtained by a vector classification algorithm from said learning set, and is consisting of a group of N vectors (with N <NZ) having a minimum mean distortion with respect to the NZ vectors of the training set. The number of N vectors of the dictionary to be used is strongly dependent on the characteristics of the application and the implementation constraints (as well as for the choice of NZ for the first variant), but also on a compromise between the precision of the dictionary and its size. The larger the dictionary, the more accurate it is, which gives the system superior performance. In practice, a dictionary of N = 20 to 40 vectors is suitable for a training set of 10 different coded sequences with two different resolutions and 10 different rates (ie NZ = 200 configurations).
Après constitution du dictionnaire, l'ajustement peut être réalisé en déterminant par quantification vectorielle le vecteur du dictionnaire correspondant le mieux à un vecteur de contrainte représentant au moins Ia qualité souhaitée.After constitution of the dictionary, the adjustment can be made by determining by vector quantization the dictionary vector corresponding best to a constraint vector representing at least the desired quality.
Ledit vecteur de contrainte peut être constitué de l'union d'un des vecteurs représentant la qualité souhaitée avec un vecteur représentant au moins un paramètre de contenu et/ou un vecteur représentant au moins un paramètre du terminal. Selon une autre variante ne mettant pas en œuvre la quantification vectorielle, mais impliquant une mesure au niveau du terminal de la qualité perçue pour le programme transmis, le procédé est caractérisé en ce qu'un dit ajustement par exemple de la puissance d'émission P, est réalisé par pas DP en fonction de la différence entre la qualité perçue mesurée Q et la qualité cible QC pour Ie programme vidéo.The constraint vector may consist of the union of one of the vectors representing the desired quality with a vector representing at least one content parameter and / or a vector representing at least one parameter of the terminal. According to another variant not implementing vector quantization, but involving a measurement at the terminal of the quality perceived for the transmitted program, the method is characterized in that a said adjustment for example of the transmission power P , is performed by step DP according to the difference between the measured perceived quality Q and the target quality QC for the video program.
Le procédé peut être alors caractérisé en ce que :The process can then be characterized in that:
- Si | Q - Qc | est inférieur à un premier seuil, Ia puissance P n'est pas modifiée- If | Q - Qc | is less than a first threshold, the power P is not modified
- Si | Q - Qc | est compris entre le premier seuil et un deuxième seuil, Ia puissance est augmentée ou diminuée du pas DP selon que le signe de Q - QC est respectivement négatif ou positif- If | Q - Qc | is between the first threshold and a second threshold, the power is increased or decreased by the step DP according to whether the sign of Q - QC is respectively negative or positive
- Si | Q - Qc | est compris entre le deuxième seuil et un troisième seuil supérieur au deuxième seuil, la puissance est augmentée ou diminuée de kDP avec 1 < k = 2 selon que le signe de Q - Qc est respectivement négatif ou positif. Avantageusement, il est caractérisé en ce que le pas DP est variable en fonction d'un type de contenu associé au programme vidéo.- If | Q - Qc | is between the second threshold and a third threshold greater than the second threshold, the power is increased or decreased by kDP with 1 <k = 2 depending on whether the sign of Q - Qc is respectively negative or positive. Advantageously, it is characterized in that the step DP is variable according to a type of content associated with the video program.
D'autres caractéristiques et avantage de l'invention apparaîtront à la lecture de la description ci-après, en liaison avec les dessins dans lesquels :Other features and advantages of the invention will appear on reading the description below, in conjunction with the drawings in which:
- La figure 1 illustre le contexte général de la fourniture de services vidéo ;- Figure 1 illustrates the general context of the provision of video services;
- La figure 2 illustre une relation entre le débit de codage et la qualité perçue, en fonction du contenu ; - La figure 3 illustre un gain de débit en rapport avec la figure 2 ;- Figure 2 illustrates a relationship between the coding rate and the perceived quality, depending on the content; FIG. 3 illustrates a gain in flow rate with reference to FIG. 2;
- La figure 4 est une illustration du procédé selon l'invention ;FIG. 4 is an illustration of the method according to the invention;
- La figure 5 illustre un codage par quantification vectorielle, alors que la figure 6 illustre la procédure d'élaboration d'un dictionnaire ; - La figure 7 illustre le procédé d'élaboration du dictionnaire dans le cas de la présente invention ;FIG. 5 illustrates a vector quantization coding, while FIG. 6 illustrates the procedure for constructing a dictionary; FIG. 7 illustrates the dictionary development method in the case of the present invention;
- Les figures 8 et 9 illustrent les sous-étapes de recherche de la configuration de codage et de transmission dans le cas d'une quantification vectorielle ; - La figure 10 illustre la procédure de recherche de la configuration de codage et de transmission dans le cas de l'utilisation d'une loi déterministe ;FIGS. 8 and 9 illustrate the search sub-steps of the coding and transmission configuration in the case of a vector quantization; FIG. 10 illustrates the search procedure of the coding and transmission configuration in the case of the use of a deterministic law;
- Les figures 11 et 12 illustrent la constitution d'un dictionnaire respectivement sans classification et avec classification ; - La figure 13 illustre la sélection du débit de codage optimal en fonction de la résolution du terminal et de la qualité demandée ;- Figures 11 and 12 illustrate the constitution of a dictionary respectively without classification and classification; FIG. 13 illustrates the selection of the optimal coding rate as a function of the resolution of the terminal and the quality requested;
- La figure 14 illustre l'enchaînement des étapes d'ajustement à une configuration optimale ;- Figure 14 illustrates the sequence of adjustment steps to an optimal configuration;
- La figure 15 illustre l'ajustement de la puissance d'émission en fonction de la qualité mesurée et du type de contenu.- Figure 15 illustrates the adjustment of the transmission power according to the measured quality and the type of content.
- La figure 16 illustre par exemple l'impact des pertes de paquets sur la proportion d'images vidéo perdues, en fonction du type de séquence (lente ou rapide).FIG. 16 illustrates, for example, the impact of packet losses on the proportion of lost video images, depending on the type of sequence (slow or fast).
La qualité d'un service vidéo restituée au niveau de l'utilisateur final est nettement influencée par le procédé de codage à réduction de débit, les ressources allouées à ce service dans le réseau de transmission, et les capacités du terminal de visualisation.The quality of a video service rendered at the end-user level is significantly influenced by the coding process at rate reduction, the resources allocated to this service in the transmission network, and the capabilities of the display terminal.
La figure 1 montre les principaux éléments impliqués dans la fourniture d'un service vidéo, à savoir la compression vidéo (ou codage à réduction de débit, Ia transmission vers le terminal par le réseau de transmission, et enfin le terminal).Figure 1 shows the main elements involved in the provision of a video service, namely video compression (or rate reduction coding, transmission to the terminal by the transmission network, and finally the terminal).
1 ) Les procédés de compression vidéo ou de codage à réduction de débit :1) Video compression or rate reduction coding methods:
Ils permettent d'adapter un flux d'informations binaires représentant les images vidéo aux capacités des équipements situés en aval : réseau, terminal. Mais ces procédés introduisent des pertes d'information : les images restituées après décodage ne sont pas identiques aux images originales. Il peut en résulter des dégradations visibles sur les images décodées, ce qui a un impact sur la qualité du service rendu au niveau de l'utilisateur final.They make it possible to adapt a stream of binary information representing the video images to the capabilities of the equipment located downstream: network, terminal. But these methods introduce losses of information: the images restored after decoding are not identical to the original images. This can result in visible degradations on the decoded images, which has an impact on the quality of the service delivered to the end user.
L'importance de la visibilité des dégradations de codage varie en fonction de nombreux paramètres : le contenu du signal vidéo, le débit du flux binaire codé, la résolution spatiale, la fréquence de rafraîchissement des images, etc. Afin de restituer un niveau de qualité voulu, les paramètres du procédé de codage à réduction de débit doivent donc être soigneusement sélectionnés.The importance of the visibility of coding impairments varies according to many parameters: the content of the video signal, the bit rate of the coded bitstream, the spatial resolution, the refresh rate of the images, and so on. In order to restore a desired level of quality, the parameters of the rate reduction coding method must therefore be carefully selected.
2) La transmission du flux binaire issu du codage à réduction de débit vers le terminal par un réseau de transmission :2) The transmission of the bit stream resulting from the rate reduction coding to the terminal by a transmission network:
Ce transport peut s'accompagner de pertes d'informations binaires. Les procédés de réception puis de décodage du flux au niveau du terminal restituent alors des signaux vidéo qui peuvent être affectés par des dégradations visibles, ce qui a un impact sur la qualité du service rendu au niveau de l'utilisateur final.This transport may be accompanied by loss of binary information. The methods of reception and decoding of the stream at the terminal then restore video signals that can be affected by visible impairments, which has an impact on the quality of the service rendered at the end-user level.
L'importance de la visibilité des dégradations de transmission varie en fonction de nombreux paramètres : contenu du signal vidéo, débit ou puissance d'émission allouée, protocole de transmission (par paquet, avec ou sans procédé de correction, ...), distribution et importance des pertes, type des informations perdues, etc. L'invention propose de maintenir le niveau de qualité restitué à l'utilisateur, tout en minimisant l'utilisation des ressources réseau en ajustant les paramètres de la transmission à la qualité demandée ou à Ia qualité mesurée en comparaison avec Ia qualité demandée. 3) Le terminal :The importance of the visibility of transmission impairments varies according to many parameters: video signal content, bit rate or transmission power allocated, transmission protocol (per packet, with or without a correction method, etc.), distribution and importance of losses, type of information lost, etc. The invention proposes to maintain the level of quality returned to the user, while minimizing the use of network resources by adjusting the parameters of the transmission to the quality required or the quality measured in comparison with the requested quality. 3) The terminal:
Les caractéristiques du flux binaire et de la vidéo doivent être adaptées aux capacités de traitement et d'affichage du terminal de visualisation. Ii est par exemple inutile d'envoyer un flux vidéo de résolution supérieure à la résolution de l'écran du terminal, ou qui nécessite des capacités de calcul dépassant celles qui sont nécessaires pour recevoir ou décoder le flux. Les caractéristiques du terminal constituent donc des contraintes à prendre en compte lors du choix des paramètres du procédé de compression vidéo. La sélection des paramètres du procédé de codage à réduction de débit relativement à un niveau de qualité selon l'invention permet au fournisseur du service vidéo de s'engager sur la qualité perçue. De plus, cette sélection tenant compte des caractéristiques du terminal, cela permet à l'opérateur de minimiser les ressources nécessaires au stockage et/ou à la transmission de ce service.The characteristics of the bitstream and the video must be adapted to the processing and display capabilities of the display terminal. For example, it is unnecessary to send a video stream of resolution greater than the resolution of the screen of the terminal, or which requires calculation capacities exceeding those necessary to receive or decode the stream. The characteristics of the terminal therefore constitute constraints to be taken into account when choosing the parameters of the video compression method. The selection of the parameters of the rate reduction coding method relative to a quality level according to the invention enables the video service provider to commit to perceived quality. In addition, this selection taking into account the characteristics of the terminal, it allows the operator to minimize the resources required for storage and / or transmission of this service.
L'ajustement des paramètres de transmission permet de s'adapter à un changement des caractéristiques du canal de transmission afin de maintenir la qualité perçue.The adjustment of the transmission parameters makes it possible to adapt to a change in the characteristics of the transmission channel in order to maintain the quality perceived.
L'invention permet d'obtenir des gains de débit significatifs. En effet, la qualité perçue à l'issue d'un codage à réduction de débit est fortement dépendante du débit de codage. Le type de contenu et notamment la présence de mouvements et de détails fins dans la scène nécessitent un débit plus important qu'une scène non animée (dite moins complexe) pour obtenir un niveau de qualité donné. La figure 2 montre la variation de qualité perçue pour trois séquences I, II, III de complexité croissante en fonction du débit de codage.The invention makes it possible to obtain significant flow rate gains. Indeed, the quality perceived at the end of a rate reduction coding is highly dependent on the coding rate. The type of content and in particular the presence of movements and fine details in the scene require a greater flow rate than a non-animated scene (so-called less complex) to obtain a given level of quality. Figure 2 shows the perceived quality variation for three sequences I, II, III of increasing complexity as a function of coding rate.
Sans le procédé d'allocation de ressources proposé et qui met en œuvre une mesure de qualité perçue, il n'y a aucun moyen de connaître la qualité restituée à partir de mesures effectuées au niveau réseau, telles que des mesures de débit du flux vidéo, ou de taux d'erreur binaire. Une solution connue pour obtenir une bonne qualité est alors d'allouer quelle que soit la séquence le débit nécessaire pour garantir la qualité de la séquence la plus complexe. Dans ce cas, la figure 3 montre les gains en débit par rapport la séquence "III" de la figure 2, qui montre un gain en débit très significatif compris entre 20% et 50%. La sensibilité d'un flux vidéo transmis sur un réseau numérique varie suivant le type de contenu vidéo. La présence de mouvement influe grandement sur la visibilité des dégradations engendrées par les erreurs de transmission. Dans le cas d'une transmission sur un réseau IP (Internet Protocol), on observe que pour un même nombre de paquets IP perdus, la baisse de qualité est plus importante pour les séquences vidéo ayant un contenu à fort mouvement.Without the proposed resource allocation method and implementing a perceived quality metric, there is no way of knowing the quality being rendered from measurements made at the network level, such as video flow rate measurements. , or bit error rate. A known solution to obtain a good quality is then to allocate whatever the sequence the flow necessary to guarantee the quality of the most complex sequence. In this case, FIG. 3 shows the gains in flow compared with the "III" sequence of FIG. 2, which shows a very significant gain in flow between 20% and 50%. The sensitivity of a video stream transmitted over a digital network varies according to the type of video content. The presence of motion greatly influences the visibility of the damage caused by transmission errors. In the case of transmission over an IP (Internet Protocol) network, it can be observed that for the same number of lost IP packets, the drop in quality is greater for video sequences having a high-motion content.
Ceci peut être exploité en pratique dans un procédé d'ajustement de la puissance d'émission d'un émetteur UMTS pour donner la priorité aux flux vidéo « complexes », c'est à dire à fort mouvement.This can be exploited in practice in a method of adjusting the transmission power of a UMTS transmitter to give priority to "complex" video streams, that is to say with high movement.
La figure 4 illustre un exemple de système selon l'invention. Il s'agit essentiellement de :FIG. 4 illustrates an exemplary system according to the invention. It is essentially:
- Un équipement 1 de mesure de la qualité perceptuelle d'un signal vidéo dans un réseau de transport ou de diffusion. Cet équipement réalise ses mesures à partir des signaux vidéo décodés par le terminal. Il peut éventuellement être intégré au terminal.A device 1 for measuring the perceptual quality of a video signal in a transmission or broadcasting network. This equipment makes its measurements from the video signals decoded by the terminal. It can possibly be integrated into the terminal.
- Un équipement 2 d'optimisation des paramètres P de codage et/ou de transmission, à partir de la connaissance du type de contenu vidéo C, des caractéristiques du terminal, de la qualité perçue QC à obtenir (ou qualité cible), et de la qualité perçue Q effectivement mesurée.An equipment 2 for optimizing the coding and / or transmission parameters P, based on the knowledge of the type of video content C, the characteristics of the terminal, the perceived quality QC to obtain (or target quality), and the perceived quality Q actually measured.
- L'équipement d'optimisation des paramètres est constitué d'une entité de base de données DB et d'une entité de décision RECH.- The parameter optimization equipment consists of a DB database entity and a decision entity RECH.
Les procédés de mesure de la qualité perceptuelle vidéo applicables sont ceux qui exploitent les données issues du processus de décodage vidéo :The applicable video perceptual quality measurement methods are those that exploit data from the video decoding process:
- soit uniquement les pixels des images vidéo reçues après transmission (procédé dit sans référence),or only the pixels of the video images received after transmission (said method without reference),
- soit les pixels des images vidéo reçues après transmission et une petite proportion d'information des images source (procédé dit avec référence réduite).or the pixels of the video images received after transmission and a small proportion of information of the source images (said method with reduced reference).
On se référera en particulier aux Demandes de Brevet déposées par TELEDIFFUSION DE FRANCE et publiées sous les numéros EP 1020085 et PCT WO 2004/047451 , cette dernière étant intitulée "Procédé et système de mesure des dégradations d'une image vidéo introduites par un codage à réduction de débit" pour un exemple de ces deux types de procédés. Les procédés de mesure de qualité à référence complète ne sont pas applicables car ils nécessitent les pixels des images vidéo reçues après transmission et les pixels des images avant transmission.Reference will be made in particular to the Patent Applications filed by TELEDIFFUSION DE FRANCE and published under the numbers EP 1020085 and PCT WO 2004/047451, the latter being entitled "Method and system for measuring the degradations of a video image introduced by a coding to flow reduction "for an example of these two types of processes. Full reference quality measurement methods are not applicable because they require the pixels of the video images received after transmission and the pixels of the images before transmission.
La procédure d'optimisation a pour but de piloter l'utilisation des ressources en recherchant une configuration de codage ou de transmission permettant d'atteindre un niveau de qualité perçue donné. L'une ou l'autre des deux techniques suivantes est utilisable :The purpose of the optimization procedure is to control the use of resources by searching for a coding or transmission configuration to achieve a given level of perceived quality. One or other of the following two techniques can be used:
1. L'exploitation d'une base de données de cas représentatifs de la relation entre Ia qualité perçue et la configuration de codage ou du réseau de transmission. Un moteur de recherche par quantification vectorielle du cas de la base de données qui correspond le mieux à la qualité perçue voulue dans les conditions actuelles (imposées) et minimisant les ressources demandées au réseau.1. The exploitation of a database of cases representative of the relationship between the perceived quality and the coding configuration or the transmission network. A vector quantization search engine of the database case that best matches the desired perceived quality under current (imposed) conditions and minimizes the resources requested from the network.
2. Le calcul par une loi logique ou empirique déterminée à l'avance, donnant la relation entre la qualité perçue et la configuration de codage ou du réseau de transmission considérés.2. Calculation by a logical or empirical law determined in advance, giving the relation between the perceived quality and the coding configuration or transmission network considered.
La procédure d'optimisation peut être effectuée par quantification vectorielle.The optimization procedure can be performed by vector quantization.
La quantification vectorielle est une technique qui associe un point X (ou vecteur) d'un espace à t dimensions au point le plus procheVector quantization is a technique that associates a point X (or vector) of a space with t dimensions at the nearest point
Uk = QV(X), au sens d'une distance Δ , parmi un ensemble de N vecteursU k = QV (X), in the sense of a distance Δ, from among a set of N vectors
U1 N appelé dictionnaire.U 1 N called dictionary.
Uh.N = (Uj J = 1...N). Eq. 1U h . N = (Uj J = 1 ... N). Eq. 1
QV(X) = I I A(X,Ui) ≤ A(X,Uk); k = l..N Eq. 2 A(X, U) étant la distance entre les vecteurs (X,U) Eq. 3QV (X) = IIA (X, U i ) ≤ A (X, U k ); k = l..N Eq. 2A (X, U) being the distance between the vectors (X, U) Eq. 3
Cette technique destinée à modéliser les processus complexes a par exemple été utilisée en codage de l'image. L'image étant au préalable subdivisée en sous-ensembles tels que des blocs rectangulaires de pixels, la quantification vectorielle consiste à rechercher pour chaque bloc de pixels le bloc de pixels du dictionnaire (appelé vecteur) le plus proche. Seul un indice ou adresse du vecteur est transmis au décodeur de l'image, décodeur qui reconstitue l'image grâce à la connaissance du dictionnaire et les identifiants des vecteurs correspondants.This technique for modeling complex processes has for example been used in image coding. The image is previously subdivided into subsets such as rectangular blocks of pixels, the vector quantization is to search for each block of pixels the block of pixels of the dictionary (called vector) closest. Only an index or address of the vector is transmitted to the decoder of the image, decoder which reconstructs the image thanks to the knowledge of the dictionary and the identifiers of the corresponding vectors.
La figure 5 montre le principe le principe du codage et décodage par quantification vectorielle. X est Ie vecteur à coder, Uk sont les éléments du dictionnaire; avec k = l..N , N nombre de vecteurs. Le codage par quantification vectorielle fait correspondre à X l'indice (i) de son plus proche voisin dans le dictionnaire. Cet indice est le mot code qui sera transmis.Figure 5 shows the principle of the principle of encoding and decoding by vector quantization. X is the vector to be encoded, U k are the elements of the dictionary; with k = l..N, N number of vectors. Coding by vector quantization makes X the index (i) of its nearest neighbor in the dictionary. This index is the code word that will be transmitted.
La notion de distance ou distorsion entre deux vecteurs est introduite pour la recherche du plus proche voisin dans le dictionnaire. Plusieurs distances ont été proposées pour optimiser la quantification vectorielle et pour approcher au maximum la fidélité des signaux initiaux.The notion of distance or distortion between two vectors is introduced for the nearest neighbor search in the dictionary. Several distances have been proposed to optimize the vector quantization and to approach as much as possible the fidelity of the initial signals.
La distance ou distorsion appelée erreur quadratique, est parmi celles qui sont les plus utilisées pour la quantification vectorielle.The distance or distortion called quadratic error, is among those most used for vector quantization.
(A, B) deux vecteurs de dimension t.(A, B) two vectors of dimension t.
L'utilisation de la technique de la quantification vectorielle fait appel à deux étapes principales interdépendantes : 1. la formation du dictionnaire à partir d'un ensemble d'apprentissageThe use of the vector quantization technique involves two main interrelated steps: 1. The formation of the dictionary from a set of learning
2. la recherche du plus proche voisin à l'aide d'une distance appropriée.2. search for the nearest neighbor using an appropriate distance.
La manière dont ces deux étapes sont utilisées dans l'invention pour maîtriser la qualité perçue d'un service vidéo codé par réduction de débit et transmis numériquement sont successivement décrites dans la suite de ce document.The manner in which these two steps are used in the invention to control the perceived quality of a video service coded by rate reduction and transmitted numerically are successively described in the remainder of this document.
L'élaboration du dictionnaire DB constitue une étape est préalable à toute optimisation de la configuration de codage et de transmission par quantification vectorielle. Le dictionnaire est une base de données DB qui contient des cas représentatifs Uk = UL.N de la relation entre la_qualité perçue et Ia configuration de codage ou du réseau de transmission pour certaines caractéristiques du contenu vidéo et du terminal données.The development of the DB dictionary constitutes a step prior to any optimization of the coding and transmission configuration by vector quantization. The dictionary is a database DB which contains representative cases U k = UL.N of the relationship between the perceived quality and the coding configuration or the transmission network for certain characteristics of the video content and the given terminal.
Afin d'élaborer ce dictionnaire, un ensemble de tests doit être effectué. Les données caractérisant ces tests constituent un ensemble d'apprentissage {Rk}, qui est utilisé par une procédure spécifique de construction du dictionnaire (figure 6). Cette méthode est une approche empirique de modélisation par apprentissage de la relation entre la qualité perçue et la configuration de codage ou du réseau de transmission pour certaines caractéristiques du contenu vidéo et du terminal fixées.In order to develop this dictionary, a set of tests must be performed. The data characterizing these tests constitute a learning set {R k }, which is used by a specific procedure for constructing the dictionary (FIG. 6). This method is an empirical approach to modeling by learning the relationship between quality perceived and the encoding configuration or the transmission network for certain characteristics of the video content and terminal set.
Chacun des NZ tests est identifié par son numéro z. Chaque test donne un cas particulier de la relation entre la qualité perçue mesurée Q2 et les paramètres de codage et de transmission P2 pour les caractéristiques du terminal T2 et du contenu vidéo C2 données. Le choix des différents tests effectués permet d'aboutir à un dictionnaire performant. Pour cela, afin de permettre une bonne modélisation de la relation entre ces différents paramètres, on fait varier les paramètres P2, T2 et C2 d'une part sur une plage correspondant aux conditions de fonctionnement en pratique, et d'autre part de manière à obtenir les niveaux de qualités perçues Q2 voulus (figure 7). Qz, Pz, T2 et C2 sont des vecteurs dans le cas le plus général : Q2 = (VQl2,..,VQnq>2) Eq. 5 avec nq : nombre de paramètres de qualité et VQi..nqι2 : paramètres de qualité pour le test zEach of the NZ tests is identified by its z number. Each test gives a particular case of the relationship between the measured perceived quality Q 2 and the coding and transmission parameters P 2 for the characteristics of the terminal T 2 and the video content C 2 given. The choice of the different tests carried out leads to a powerful dictionary. For this, in order to allow a good modeling of the relationship between these different parameters, the parameters P 2 , T 2 and C 2 are varied on the one hand over a range corresponding to the operating conditions in practice, and on the other hand in order to obtain the desired perceived quality levels Q 2 (FIG. 7). Qz, Pz, T 2 and C 2 are vectors in the most general case: Q 2 = (VQ l2 , .., VQ nq> 2 ) Eq. 5 with nq: number of quality parameters and VQi .. nqι2 : quality parameters for the z-test
PΣ = (vPlz,..,VPιφJ Eq. 6 avec np : nombre de paramètres de codage et transmission et VPi..nPιZ : paramètres de codage et transmission pour le test zP Σ = (vP lz , .., VP ιφ J Eq.6 with np: number of coding and transmission parameters and VPi .. nPιZ : coding and transmission parameters for the z-test
T2 = (VT11, ..,VTn J Eq. 7 avec nt : nombre de paramètres du terminal et VTi..nt,2 : paramètres du terminal pour le test zT 2 = (VT 11 , .., VT n J Eq 7 with nt: number of terminal parameters and VTi .. nt , 2 : terminal parameters for z test
C2 = (VC12,..,VCn J Eq. 8 avec ne : nombre de paramètres du contenu et VCi..nc,z : paramètres du contenu pour le test z Chaque vecteur d'apprentissage R2 de dimension t est issu de l'union de Q2, P2, T2 et C2. Il caractérise l'ensemble des données associées au test z (qualité perçue, paramètres de codage et de transmission, paramètres de terminal, et paramètres du contenu) :C 2 = (VC 12 , .., VC n J Eq.8 with ne: number of parameters of the content and VCi .. nc , z: content parameters for the test z Each learning vector R 2 of dimension t is resulting from the union of Q 2 , P 2 , T 2 and C 2. It characterizes all the data associated with the z-test (perceived quality, coding and transmission parameters, terminal parameters, and content parameters):
R2 = Q2 U P2 U T2 U C2 = (F1 z ,.., V1 2 ) avec t = nq + np + nt + nc Eq. 9R 2 = Q 2 UP 2 UT 2 UC 2 = (F 1 z , .., V 1 2 ) with t = nq + np + nt + nc Eq. 9
u = union u = union
Tableau 1 : Données constituant l'ensemble d'apprentissage L'ensemble de vecteurs R2, 1 < z ≤ NZ constitue l'ensemble d'apprentissage (tableau 1). Une procédure spécifique est appliquée à l'ensemble d'apprentissage afin d'élaborer le dictionnaire des cas représentatifs Uk avec 1 < k ≤ N. Deux cas sont possibles :Table 1: Data constituting the learning set The set of vectors R 2 , 1 <z ≤ NZ constitutes the learning set (Table 1). A specific procedure is applied to the learning set in order to elaborate the dictionary of representative cases Uk with 1 <k ≤ N. Two cases are possible:
Cas 1 (correspondant à la première variante sans classification vectorielle) : le nombre de combinaisons entre les niveaux de qualité, les configurations de codage et transmission et les caractéristiques du terminal et du contenu est limité (par exemple NZ < 100). Dans ce cas, le dictionnaire UI..N peut simplement être égal à l'ensemble d'apprentissage :Case 1 (corresponding to the first variant without a vector classification): the number of combinations between the quality levels, the coding and transmission configurations and the characteristics of the terminal and the content is limited (for example NZ <100). In this case, the dictionary UI..N can simply be equal to the training set:
UUN = (Rk , k = 1...NZ). et N = NZ Eq. 10U UN = (R k , k = 1 ... NZ). and N = NZ Eq. 10
La limite au nombre de combinaisons peut être librement fixée, par exemple selon des critères d'implémentation comme la taille de la base de données ou la puissance de calcul nécessaire au module d'optimisation pour rechercher la configuration optimale.The limit to the number of combinations can be freely set, for example according to implementation criteria such as the size of the database or the computing power necessary for the optimization module to find the optimal configuration.
Cas 2 (correspondant à la deuxième variante avec classification vectorielle) : le nombre NZ de combinaisons R2 contenues dans l'ensemble d'apprentissage est très grand. Une procédure d'analyse est nécessaire afin de générer les N vecteurs £Λ..Λ/. du dictionnaire qui représentent le mieux l'ensemble vectoriel R2 initial. Ce groupe de vecteurs est celui qui présente la plus petite distorsion moyenne par rapport à tous les vecteurs de l'ensemble d'apprentissage, parmi les autres dictionnaires candidats possibles. Les vecteurs de ce groupe sont alors les meilleurs vecteurs représentatifs de l'ensemble d'apprentissage, et par conséquent de la relation entre qualité et configuration de codage et de transmission et les caractéristiques du terminal et du contenu.Case 2 (corresponding to the second variant with vector classification): the number NZ of combinations R 2 contained in the training set is very large. An analysis procedure is necessary to generate the N vectors £ Λ..Λ /. of the dictionary that best represent the initial vector set R 2 . This group of vectors is the one that has the smallest mean distortion with respect to all the vectors of the training set, among the other possible candidate dictionaries. The vectors of this group are then the best representative vectors of the training set, and therefore the relationship between quality and configuration of coding and transmission and the characteristics of the terminal and the content.
Des algorithmes de classification sont utilisés. Plusieurs auteurs ont proposé des solutions pour la classification en dictionnaires. Nuées dynamiques, ou Algorithme LBG. Le nombre N de vecteurs du dictionnaire est choisi suivant le nombre initial de vecteurs de l'ensemble d'apprentissage, la précision de la modélisation et les contraintes d'implémentation.Classification algorithms are used. Several authors have proposed solutions for classification into dictionaries. Dynamic Clouds, or LBG Algorithm. The number N of the dictionary vectors is chosen according to the initial number of vectors of the set learning, modeling accuracy and implementation constraints.
Le dictionnaire issu de Ia procédure de classification constitue la base de données DB (figure 7). Bien entendu, ou pourrait a minima utiliser un vecteur d'apprentissage ne prenant en compte que la qualité perçue et les paramètres de codage et de transmission. Il est cependant avantageux de tenir compte du contenu. Les paramètres du terminal n'ont lieu d'être pris en compte qu'en cas d'une diversité d'utilisateurs dans l'application envisagée et lorsqu'il est possible de connaître le paramètre du terminal d'un utilisateur donné.The dictionary resulting from the classification procedure constitutes the database DB (FIG. 7). Of course, or could at least use a learning vector that only takes into account perceived quality and coding and transmission parameters. However, it is beneficial to consider the content. The parameters of the terminal need to be taken into account only in the case of a variety of users in the intended application and when it is possible to know the terminal parameter of a given user.
L'étape suivante consiste en une recherche de la configuration de codage et de transmission.The next step is a search for the encoding and transmission configuration.
La première étape a généré un dictionnaire représentatif de la relation entre la qualité perçue mesurée et la configuration de codage ou du réseau de transmission pour certaines caractéristiques du contenu vidéo et du terminal données.The first step has generated a dictionary representative of the relationship between the perceived perceived quality and the coding configuration or the transmission network for certain characteristics of the video content and the data terminal.
La seconde étape exploite ce dictionnaire pour trouver une configuration de codage et de transmission qui assure une certaine qualité cible QC au niveau de l'utilisateur final. Pour cela, le module RECH recherche cette configuration dans la base de données DB (figure 4).The second step uses this dictionary to find a coding and transmission configuration that assures a certain QC target quality at the end-user level. For this, the RECH module looks for this configuration in the DB database (FIG. 4).
On définit ci-après les données représentées sur la (figure 4) : Le vecteur Q contient les paramètres de qualité perçue mesurée courante. Il est identique au vecteur défini par la relation Eq. 5. Q = {yQι,..,VQnq) où nq : nombre de paramètres de qualité VQi Eq. 11 Une date représentative de la date de présentation du contenu vidéo est également associée à ce vecteur Q. Par exemple nq = 1 Q = indice de qualité entre 0 et 100.The data shown in (Figure 4) is defined below: The vector Q contains the parameters of measured current perceived quality. It is identical to the vector defined by the relation Eq. 5. Q = {yQ ι , .., VQ nq ) where nq: number of quality parameters VQi Eq. 11 A date representative of the date of presentation of the video content is also associated with this vector Q. For example nq = 1 Q = quality index between 0 and 100.
Le vecteur QC définit les paramètres de qualité perçue cible à atteindre. Tous les paramètres VQQ de QC caractérisant la qualité cible existent dans Q, mais peuvent bien sûr être de valeurs différentes. Mais inversement, tous les paramètres VO,- de Q caractérisant la qualité mesurée n'existent pas nécessairement dans QC.The QC vector defines the target perceived quality parameters to achieve. All QC VQQ parameters characterizing the target quality exist in Q, but can of course be of different values. But conversely, all the VO, - Q parameters characterizing the measured quality do not necessarily exist in QC.
Par exemple, le vecteur QC peut être de dimension nqc = 1 et contenir une seule valeur gqc correspondant à la qualité cible à atteindre (par exemple qualité cible achetée par l'utilisateur par contrat, passé avec le fournisseur d'un service audiovisuel) pour la qualité du service audiovisuelFor example, the QC vector can be of dimension nqc = 1 and contain a single value gqc corresponding to the target quality to be achieved (for example target quality purchased by the user by contract, passed with the provider of an audiovisual service) for the quality of the audiovisual service
(gqc).(GQC).
Le vecteur Q doit nécessairement contenir une valeur de qualité audiovisuelle gq obtenue par mesure pour permettre au procédé d'optimisation par quantification vectorielle de fonctionner, en comparant gq et gqc. Q peut par contre être de dimension supérieure à la dimension nqc deThe vector Q must necessarily contain an audiovisual quality value gq obtained by measurement to enable the vector quantization optimization process to work, by comparing gq and gqc. Q can be larger than the dimension nqc of
QC, par exemple nqc = 1 , mais nq = 3 dans la configuration où Q contient trois valeurs Q = (aq, vq, gq) correspondant respectivement à la qualité obtenue par mesure pour le signal audio (aq) pour la vidéo (vq) et pour l'audiovisuel (gq).QC, for example nqc = 1, but nq = 3 in the configuration where Q contains three values Q = (aq, vq, gq) corresponding respectively to the quality obtained by measurement for the audio signal (aq) for the video (vq) and for the audiovisual sector (gq).
QC = ^QC1,.., VQC nqc) où nqc < nq et nqc: nombre de paramètres de qualité cible VQQ Eq. 12QC = ^ QC 1 , .., VQC nqc ) where nqc <nq and nqc: number of target quality parameters VQQ Eq. 12
Par exemple nqc = 1 QC = indice de qualité cible entre 30 et 95.For example nqc = 1 QC = target quality index between 30 and 95.
Le vecteur T contient les paramètres caractéristiques du terminal. Il est identique au vecteur défini par la relation Eq. 7.The vector T contains the characteristic parameters of the terminal. It is identical to the vector defined by the relation Eq. 7.
T -{yτx,..,vτιιt) où nt : nombre de paramètres caractéristique du terminal VT1 Eq. 13T - {yτ x , .., vτ ιιt ) where nt: number of parameters characteristic of the terminal VT 1 Eq. 13
Par exemple nt = 1 paramètre VT/ = résolution de l'écran.For example nt = 1 parameter VT / = resolution of the screen.
Le vecteur C définit les paramètres du contenu vidéo. Il est identique au vecteur défini par la relation Eq. 8.The vector C defines the parameters of the video content. It is identical to the vector defined by the relation Eq. 8.
C = (vc1,..,VCnc) où ne : nombre de paramètres du contenu vidéo VQC = (vc 1 , .., VC nc ) where no: number of parameters of the video content VQ
Eq. 14Eq. 14
Par exemple ne = 1 paramètre VCi : activité d'une séquence vidéo ou type de séquence (lente, rapide, moyenne). - Le vecteur P définit les paramètres de codage et de transmission recherchés. Il est identique au vecteur défini par la relation Eq. 6. P = ψpx,..,VPnp) où np : nombre de paramètres de codage et de transmission VPj Eq. 15For example ne = 1 parameter VCi: activity of a video sequence or type of sequence (slow, fast, average). The vector P defines the desired coding and transmission parameters. It is identical to the vector defined by the relation Eq. 6. P = ψp x , .., VP np ) where np: number of coding and transmission parameters VPj Eq. 15
Par exemple np = 1 , 2 ou 3 VPi, VP2, VP3: puissance d'émission et/ou débit binaire et/ou bande passante.For example np = 1, 2 or 3 VPi, VP 2 , VP 3 : transmission power and / or bit rate and / or bandwidth.
Le processus de recherche de la configuration optimale de codage et de transmission consiste à extraire le vecteur P donnant la configuration de codage et de transmission à utiliser pour fournir le niveau de qualité au niveau de l'utilisateur défini par le vecteur QC représentatif de la qualité cible, dans les conditions actuelles de contraintes représentées par les vecteurs Q, T, et C. L'avantage du procédé par vectorisation est qu'il n'est besoin de mesurer la qualité perçue Q que lors de la constitution du dictionnaire.The process of searching for the optimal coding and transmission configuration is to extract the P vector giving the coding and transmission pattern to be used to provide the quality level at the user level defined by the quality representative QC vector. under the current constraint conditions represented by the vectors Q, T, and C. The advantage of the vectorization method is that it is not need to measure the perceived quality Q than during the constitution of the dictionary.
Le processus de recherche est subdivisé en trois sous- étapes : a. Formation d'un vecteur de contraintes O. La date associée au vecteur Q est associée au vecteur de contraintes O. Cette date est représentative de la date de présentation du contenu vidéo. b. Quantification vectorielle sur le vecteur de contraintes O pour trouver le vecteur Uk du dictionnaire correspondant le mieux au vecteur de contraintes O présenté en entrée. c. Extraction du vecteur P de paramètres du système de codage et de transmission.The research process is subdivided into three sub-steps: a. Formation of a vector of constraints O. The date associated with the vector Q is associated with the vector of constraints O. This date is representative of the date of presentation of the video content. b. Vector quantization on the vector of constraints O to find the vector U k of the dictionary corresponding best to the constraint vector O presented as input. vs. Extraction of the vector P of parameters of the coding and transmission system.
Sous-étape a) Formation du vecteur de contraintes O. Le vecteur O représentant l'ensemble des contraintes courantes de fonctionnement du système est constitué, dans le cas le plus performant de l'union des vecteurs T, C, et d'une combinaison Q' des vecteurs Q et QC. En effet, chaque paramètre du vecteur O doit être unique, alors que les paramètres du vecteur QC sont toutes présentes dans le vecteur Q. L'objectif final est de trouver les vecteurs de paramètres de codage P permettant d'obtenir une qualité cible définie par QC.Sub-step a) Formation of the vector of constraints O. The vector O representing the set of the current constraints of operation of the system is constituted, in the most powerful case of the union of the vectors T, C, and of a combination Q 'Q and QC vectors. Indeed, each parameter of the vector O must be unique, while the parameters of the vector QC are all present in the vector Q. The final objective is to find the vectors of coding parameters P making it possible to obtain a target quality defined by QC.
Q '=QCu{ VQ , I VQ 1 3 dans QC } avec VQ,- définis parg = (Fa,..,Fg,JQ '= QCu {VQ, I VQ 1 3 in QC} with VQ, - defined byg = (Fa, .., Fg, J
Eq. 16 avec/ = tel queEq. 16 with / = as
Par exemple, dans le cas où QC est de dimension nqc = 1 et contient une seule valeur gqc correspondant à la qualité cible à atteindre, et Q est de dimension nq = 3 et contient trois valeurs Q = (aq, vq, gq) correspondant respectivement pour le signal aux qualités audio (aq), vidéoFor example, in the case where QC is of dimension nqc = 1 and contains a single value gqc corresponding to the target quality to be achieved, and Q is of dimension nq = 3 and contains three corresponding values Q = (aq, vq, gq) respectively for the signal with audio qualities (aq), video
(vq) et audiovisuelle (gq) obtenues par mesure, le vecteur Q' résultant de l'application de Eq 16 sera Q' = (gqc), correspondant à la contrainte de qualité audiovisuelle à obtenir du système de codage et de transmission.(vq) and audiovisual (gq) obtained by measurement, the vector Q 'resulting from the application of Eq 16 will be Q' = (gqc), corresponding to the audiovisual quality constraint to be obtained from the coding and transmission system.
Puis, Ie vecteur O est formé par union de T, C, Q'. Le vecteur résultant est de dimension h.Then, the vector O is formed by union of T, C, Q '. The resulting vector is of dimension h.
O = Q'vT U C = (VOι,..,VOh) avec h = nq + nt + nc Eq. 17O = Q'vT UC = (VO ι , .., VO h ) with h = nq + nt + nc Eq. 17
Sous-étape b) Quantification vectorielle. La quantification vectorielle fait correspondre au vecteur O de paramètres VO,- en entrée, le vecteur U du dictionnaire correspondant le mieux au vecteur de contraintes O présenté en entrée. La quantification vectorielle proprement dite est effectuée sur un sous-vecteur Sk de chaque vecteur Uk. En effet, le vecteur O ne contient qu'un sous-ensemble des paramètres des vecteurs Uk. Les paramètres de Uk non présents dans O sont les paramètres Pk de codage et transmission associés à cet ensemble de contraintes O. Chaque vecteur Sk est donc défini par S k ={ V t /V , 3 dans O } avec V1 définis par U = (V1, ..,V1) Eq. 18 avec/ = tel queSub-step b) Vector Quantification. The vector quantization corresponds to the vector O of parameters VO, - in input, the vector U of the dictionary corresponding to the better to the constraint vector O presented as input. The actual vector quantization is performed on a sub vector S k of each vector U k . Indeed, the vector O contains only a subset of the parameters of the vectors U k . The parameters of U k not present in O are the P k parameters of coding and transmission associated with this set of constraints O. Each vector S k is thus defined by S k = {V t / V, 3 in O} with V 1 defined by U = (V 1 , .., V 1 ) Eq. 18 with / = as
La minimisation de la distorsion entre le vecteur incident O et tous les sous-vecteurs Sk des vecteurs UL.N du dictionnaire est opérée. Elle permet d'identifier Ie vecteur U correspondant le mieux au vecteur de contraintes O.The minimization of the distortion between the incident vector O and all the subvectors Sk of the UL.N vectors of the dictionary is made. It makes it possible to identify the vector U corresponding best to the vector of constraints O.
Sous-étape c) Extraction des paramètres de codage et de transmission. Les paramètres de U non présents dans O sont les paramètres P de codage et transmission associés à cet ensemble de contraintes O. Il suffit donc d'extraire de U le vecteur P représentant les paramètres de codage et qui est donc défini parSub-step c) Extraction of the coding and transmission parameters. The parameters of U not present in O are the coding and transmission parameters P associated with this set of constraints O. It is therefore sufficient to extract from U the vector P representing the coding parameters and which is therefore defined by
P=[ V 1 IV . g dans 0 } avec V/ définis par U = (V1, ..,V1) Eq. 19 avec/= tel queP = [V 1 IV. g in 0} with V / defined by U = (V 1 , .., V 1 ) Eq. 19 with / = as
L'ensemble du fonctionnement de la procédure de recherche est illustrée sur Ia figure 9 pour un cas particulier nq = 4 et nqc = 2 :The whole operation of the search procedure is illustrated in FIG. 9 for a particular case nq = 4 and nqc = 2:
Les paramètres du vecteur P trouvé, ainsi que certains paramètres du vecteur U trouvé par quantification vectorielle à la sous-étape b si nécessaire, peuvent ensuite être appliqués au processus de codage à réduction de débit et au processus de transmission.The parameters of the vector P found, as well as some parameters of the vector U found by vector quantization in substep b if necessary, can then be applied to the rate reduction coding process and the transmission process.
En effet, certains paramètres considérés comme des paramètres de contrainte, donc présents dans le vecteur O, peuvent également être des paramètres utiles pour définir la configuration de transmission.Indeed, some parameters considered as constraint parameters, therefore present in the vector O, can also be useful parameters for defining the transmission configuration.
Par exemple, considérons le cas où on désire optimiser Ia configuration de codage vidéo en agissant sur les deux paramètres de la résolution spatiale et du débit de codage. S'il existe deux types de terminaux, correspondant à deux résolutions spatiales possibles pour l'écran, et que ces terminaux ne sont pas capables d'afficher correctement une vidéo codée de résolution différente de celle de leur écran, le paramètre résolution devient une contrainte pour le procédé de codage de la vidéo à réduction de débit. Le seul paramètre du vecteur P sera donc le débit de codage. Pour autant, la résolution de codage (imposée par le terminal) doit également être appliquée au procédé de codage pour que le procédé d'optimisation soit exhaustif. La base de données DB a également une fonction de stockage des données générées par le module de mesure de qualité perçue, ainsi que et des décisions d'optimisation prises par le module RECH. A cette fin, la base de données DB stocke les vecteurs O et P,- représentés sur la figure 9, accompagnés de la date représentative de la date de présentation du contenu vidéo qui est associée au vecteur O.For example, consider the case where one wishes to optimize the video coding configuration by acting on the two parameters of the spatial resolution and the coding rate. If there are two types of terminals, corresponding to two possible spatial resolutions for the screen, and these terminals are not able to correctly display a coded video of resolution different from that of their screen, the resolution parameter becomes a constraint for the coding method of the rate reduction video. The only parameter of the vector P will therefore be the coding rate. However, the coding resolution (imposed by the terminal) must also be applied to the coding process so that the optimization method is exhaustive. The DB database also has a function of storing the data generated by the perceived quality measurement module, as well as the optimization decisions made by the module RECH. For this purpose, the database DB stores the vectors O and P, represented in FIG. 9, accompanied by the date representative of the date of presentation of the video content which is associated with the vector O.
Une alternative à la quantification vectorielle est le calcul par une loi déterminée logiquement ou empiriquement à l'avance, donnant la relation entre la qualité perçue et la configuration de codage ou du réseau de transmission considérés. La procédure d'optimisation f donne les paramètres P de codage et transmission à utiliser pour obtenir une qualité cible QC, étant donnés les caractéristiques du terminal T et du contenu vidéo C1 et le niveau de qualité actuel mesuré Q (figure 10). Les variables P, QC, T, C, et Q sont définies par les équations Eq. 11 à Eq. 15, p. 15. P = f(QC,Q,T,c) Eq. 20 Dans ce cas, la totalité des connaissances nécessaires à la procédure d'optimisation est donc contenue dans la loi déterministe, localisée dans le module RECH. La base de données DB ne contient pas de données relatives à Ia procédure d'optimisation.An alternative to vector quantization is the computation by a law determined logically or empirically in advance, giving the relationship between the perceived quality and the coding configuration or transmission network considered. The optimization procedure f gives the coding and transmission parameters P to be used to obtain a target quality QC, given the characteristics of the terminal T and the video content C 1 and the current quality level measured Q (FIG. 10). The variables P, QC, T, C, and Q are defined by the equations Eq. 11 to Eq. 15, p. 15. P = f (QC, Q, T, c) Eq. In this case, all the knowledge necessary for the optimization procedure is therefore contained in the deterministic law, located in the module RECH. The DB database does not contain data relating to the optimization procedure.
L'approche d'optimisation selon une loi déterministe est avantageuse car elle ne nécessite pas de base de données, qui peut être importante. En revanche, une loi déterministe ne peut être facilement déterminée que dans le cas d'un nombre de configurations peu élevé.The optimization approach according to a deterministic law is advantageous because it does not require a database, which can be important. On the other hand, a deterministic law can be easily determined only in the case of a low number of configurations.
L'approche par quantification vectorielle et base de données de cas représentatifs est plus avantageuse dans le cas de nombreuses configurations.The vector quantization approach and representative case database is more advantageous for many configurations.
L'invention s'applique particulièrement bien à la fourniture de séquences vidéo à la demande à partir d'un serveur en ayant recours à la quantification vectorielle du débit de codage optimal en fonction de la résolution du terminal et de la qualité demandée par l'utilisateur final, en fonction du type de séquence désirée. Cette application utilise l'invention pour choisir le débit de séquences vidéo pré-codées et stockées sur un serveur vidéo parmi un certain nombre de valeurs possibles. La résolution du terminal de l'utilisateur ainsi que le niveau de qualité qu'il désire sont pris en compte afin de minimiser le débit nécessaire à la fourniture du service, aboutissant à une utilisation optimale du réseau de transmission. Le réseau de transmission utilisé est par exemple de type IP (Internet Protocol) DVB (Digital Video Broadcasting) ou UMTS (Universal Mobile Télécommunications System).The invention is particularly applicable to the provision of video sequences on demand from a server by using the vector quantization of the optimal coding rate according to the resolution of the terminal and the quality requested by the end user, depending on the type of sequence desired. This application uses the invention to select the bit rate of video sequences pre-coded and stored on a video server among a number of possible values. The resolution of the user's terminal as well as the desired level of quality are taken into account in order to minimize the throughput required to provide the service, resulting in an optimal use of the transmission network. The transmission network used is, for example, IP (Internet Protocol) DVB (Digital Video Broadcasting) or UMTS (Universal Mobile Telecommunications System).
Cette application peut utiliser une procédure d'optimisation basée sur la quantification vectorielle, telle que décrite ci-dessus.This application can use an optimization procedure based on vector quantization, as described above.
Selon les même notations, cette application définit donc les paramètres Q, QC, T, P et C comme :According to the same notation, this application defines the parameters Q, QC, T, P and C as:
• Q = QC = mesure ou cible de qualité vidéo comprise entre 0 et 100. Le procédé de mesure de qualité intègre par exemple le procédé selon la Demande de brevet PCT WO 2004/047451 précitée déposée par TDF.Q = QC = measurement or target of video quality between 0 and 100. The quality measurement method integrates, for example, the method according to PCT patent application WO 2004/047451 mentioned above filed by TDF.
• T = Résolution de l'écran du terminal, par exemple CIF (352 x 288) ou QCIF (176 x 144)• T = Terminal screen resolution, for example CIF (352 x 288) or QCIF (176 x 144)
• P = Débit de codage, en kbit/s. • C = Nom de la séquence ou, dans une seconde variante ;• P = Coding rate, in kbit / s. • C = name of the sequence or, in a second variant;
C = type de contenu (sport, actualités, ...), pour caractériser le contenu vidéo, par type de séquence.C = type of content (sport, news, ...), to characterize the video content, by type of sequence.
Sinon, il est possible de caractériser le contenu vidéo par un paramètre d'activité de l'image une ou plusieurs sous-séquences de quelques secondes d'une séquence.Otherwise, it is possible to characterize the video content by an activity parameter of the image one or more subsequences of a few seconds of a sequence.
Deux variantes de construction du dictionnaire sont présentées ci-après, suivant que le contenu vidéo est identifié par le nom du contenu, ou par le type de contenu dans le dictionnaire contenu dans le module DB.Two variants of dictionary construction are presented below, depending on whether the video content is identified by the name of the content, or by the type of content in the dictionary contained in the DB module.
La première variante utilisant le nom du contenu est décrite à la figure 11.The first variant using the name of the content is described in Figure 11.
1. Un certain nombre de signaux vidéo source sont acquis et codés par réduction de débit. Le codage est réalisé selon toutes les résolutions possibles au niveau des terminaux, et selon un plusieurs débits choisis dans une plage correspondant aux possibilités des terminaux et du réseau de transmission. Dans le cas présent, les résolutions CIF et QCIF ont été utilisées, et des débits du canal de transmission allant de 48 kbit/s à 384 kbit/s, par exemple par pas de 10 kbit/s, ont été appliqués dans chacun de ces deux cas. 2. Chaque flux est évalué par le module de mesure de la qualité perçue. La qualité Qz caractérisant la séquence vidéo codée est la qualité moyenne mesurée sur la séquence.1. A number of source video signals are acquired and encoded by rate reduction. The coding is performed according to all the possible resolutions at the terminals, and according to one or more selected bit rates in a range corresponding to the possibilities of the terminals and the transmission network. In the present case, the CIF and QCIF resolutions have been used, and transmission channel rates ranging from 48 kbit / s to 384 kbit / s, for example in 10 kbit / s steps, have been applied in each of these. two cases. 2. Each flow is evaluated by the perceived quality measurement module. The quality Q z characterizing the coded video sequence is the average quality measured on the sequence.
3. Les flux vidéo codés sont stockés sur un serveur vidéo. Les autres données constituent le dictionnaire stocké dans DB: qualité Q, débit P de canal de transmission, résolution T de terminal, nom du contenu C. Il n'est donc pas nécessaire d'utiliser ici de procédure de classification, puisque la taille du dictionnaire reste modeste.3. Encoded video streams are stored on a video server. The other data is the dictionary stored in DB: quality Q, transmission channel rate P, terminal resolution T, content name C. It is therefore not necessary to use a classification procedure here, since the size of the dictionary remains modest.
Ce dictionnaire peut ensuite être exploité par le module RECH pour trouver le débit nécessaire, ainsi qu'exposé ci-dessus. Une seconde variante utilisant le type de contenu au lieu du nom du contenu est décrite en relation avec la figure 12. Le mode de construction du dictionnaire est similaire : les séquences sont codés dans toutes les configurations désirées et leur qualité Qz évaluée. La différence vient de l'utilisation de l'information du type du contenu (par exemple sport ou actualités) plutôt que du nom. En effet, l'impact du codage vidéo à réduction de débit sur la qualité perçue varie fortement en fonction du type de contenu de Ia séquence, particulièrement la présence de défauts supplémentaires introduits par le canal de transmission. Par exemple, les séquences de sport nécessitent en général un débit supérieur en raison d'un contenu plus animé. II est possible d'utiliser cette propriété pour faire correspondre un type de contenu au débit de codage nécessaire à une qualité donnée obtenue à la réception.This dictionary can then be used by the RECH module to find the necessary flow, as explained above. A second variant using the type of content instead of the name of the content is described in relation to FIG. 12. The mode of construction of the dictionary is similar: the sequences are coded in all the desired configurations and their quality Q z evaluated. The difference comes from the use of content type information (eg sport or news) rather than the name. Indeed, the impact of the bit-rate video coding on the perceived quality varies greatly depending on the type of content of the sequence, particularly the presence of additional defects introduced by the transmission channel. For example, sports footage usually requires higher throughput because of more animated content. It is possible to use this property to match a content type to the encoding rate needed for a given quality obtained at reception.
Pour cela, une procédure de classification est préférable afin de regrouper les différentes mesures de qualité Q2 effectuées dans les mêmes conditions de visualisation T2 et de codage P2 pour plusieurs séquences différentes mais de même type Cz, en un seul vecteur Q, T, P1 C. Dans ce mode de réalisation, la procédure de classification utilisée est de préférence l'algorithme LBG avec la distance de Eq. 21.For this purpose, a classification procedure is preferable in order to group the various quality measurements Q 2 carried out under the same viewing conditions T 2 and P 2 coding for several different sequences but of the same type C z , into a single vector Q, T, P 1 C. In this embodiment, the classification procedure used is preferably the LBG algorithm with the distance of Eq. 21.
La figure 13 détaille la mise en oeuvre de la procédure d'optimisation, lors d'une requête soumise par un utilisateur. Au préalable, l'utilisateur accède à une liste de contenus stockés sur un serveur vidéo, identifiés par leur nom et leur type, par exemple à travers un navigateur Internet ; l'utilisateur choisit un contenu et un niveau de qualité désirée et envoie sa requête. Puis, le mécanisme utilisant l'invention se déroule en trois étapes sans intervention de l'utilisateur :Figure 13 details the implementation of the optimization procedure, during a request submitted by a user. In advance, the user accesses a list of contents stored on a video server, identified by their name and type, for example through an Internet browser; the user selects a desired content and quality level and sends his request. Then, the mechanism using the invention takes place in three stages without user intervention:
1. Le terminal utilisateur envoie au module RECH ses caractéristiques, les caractéristiques du contenu choisi, Ie niveau de qualité désiré QC, et éventuellement la dernière mesure de qualité Q en date.1. The user terminal sends to the RECH module its characteristics, the characteristics of the chosen content, the desired quality level QC, and possibly the last quality measure Q in date.
2. Le module RECH recherche par quantification vectorielle dans la base de données le débit de codage P existant pour le contenu C sur le serveur vidéo qui assure la qualité QC demandée, pour la résolution imposée par le terminal, et renvoie cette information au terminal. Les paramètres reçus puis envoyés au terminal sont également stockés dans la base de données, par exemple pour analyse ultérieure. Le Terminal utilisateur accède au contenu C choisi par l'utilisateur au débit P choisi par RECH et l'utilisateur obtient le contenu demandé à une qualité QC.2. The module RECH searches by vector quantization in the database the existing coding rate P for the content C on the video server which provides the QC quality requested, for the resolution imposed by the terminal, and returns this information to the terminal. The parameters received and sent to the terminal are also stored in the database, for example for later analysis. The user terminal accesses the content C selected by the user at the rate P selected by RECH and the user obtains the requested content at a quality QC.
On notera que la distance linéaire entre deux vecteurs A et B qui peut être utilisée ici pour la quantification vectorielle est plus simple à implémenter que la distance quadratique de l'équation Eq. 4.Note that the linear distance between two vectors A and B that can be used here for vector quantization is simpler to implement than the quadratic distance of equation Eq. 4.
M La figure 14 montre l'enchaînement des opérations réalisées par le module RECH. M Figure 14 shows the sequence of operations performed by the module RECH.
RECH reçoit les caractéristiques du terminal T et du contenu C et éventuellement les mesures de qualité Q. Il stocke ces mesures dans la base de données DB via un Système de Gestion de Bases de Données (SGDB). RECH réalise ensuite une recherche de la meilleure configuration de codage ou de transmission P à partir du dictionnaire également stocké dans DB. La configuration P est envoyée vers les équipements concernés. Dans une variante de cette première application selon laquelle il y a sélection du débit de codage optimal en fonction de la résolution du terminal et de la qualité demandée, on utilise le procédé selon l'invention pour minimiser le débit de codage de séquences vidéo en prenant seulement en compte le niveau de qualité à atteindre, aboutissant à une utilisation optimale du réseau de transmission. Cette approche est particulièrement applicable lorsque les conditions d'utilisation du service vidéo - notamment le type de terminal - et le contenu du service sont peu variables. C'est par exemple le cas pour un service vidéo à la demande destiné à être visualisé sur des terminaux de type télévision par les utilisateurs.RECH receives the characteristics of the terminal T and the content C and possibly the Q quality measurements. It stores these measurements in the database DB via a database management system (DBMS). RECH then performs a search for the best coding or P-transmission configuration from the dictionary also stored in DB. The configuration P is sent to the equipment concerned. In a variant of this first application according to which there is selection of the optimal coding rate according to the resolution of the terminal and the quality required, the method according to the invention is used to minimize the coding bit rate of video sequences by taking only the level of quality to be achieved, resulting in an optimal use of the transmission network. This approach is particularly applicable when the conditions of use of the video service - including the type of terminal - and the content of the service are not very variable. This is for example the case for a video-on-demand service intended to be viewed on television type terminals by the users.
L'invention utilise la même procédure d'optimisation basée sur la quantification vectorielle, telle que décrite précédemment pour ladite première application, et les mêmes notations. La principale différence est que les paramètres T et P sont vides. La quantification vectorielle se base alors sur :The invention uses the same optimization procedure based on the vector quantization, as described above for said first application, and the same notations. The main difference is that the parameters T and P are empty. The vector quantization is then based on:
. Q = QC = mesure ou cible de qualité vidéo comprise entre 0 et 100. Le procédé de mesure de qualité intègre par exemple le procédé selon la Demande PCT WO/2004/047451 précité.. Q = QC = measurement or video quality target between 0 and 100. The quality measurement method integrates, for example, the method according to PCT Application WO / 2004/047451 mentioned above.
. P = Débit de codage, en kbit/s.. P = Coding rate, in kbit / s.
Les mêmes procédés de constructions du dictionnaire et d'opitimisation de paramètres P, ici réduit au débit du codage, sont utilisables. Selon une autre variante, le procédé selon l'invention permet un ajustement par exemple de la puissance d'émission en fonction de la qualité désirée et éventuellement du type de contenu, sans mise en œuvre d'une quantification vectorielle.The same methods of dictionary construction and parameter optimization P, here reduced to the encoding rate, are usable. According to another variant, the method according to the invention makes it possible, for example, to adjust the transmission power as a function of the desired quality and possibly of the type of content, without implementation of a vector quantization.
Cette application ajuste le niveau de puissance d'émission du service à partir d'un émetteur d'un réseau d'accès UMTS en fonction de la qualité perçue au lieu des paramètres standard de niveau réseau utilisés enThis application adjusts the transmission power level of the service from a UMTS access network transmitter based on the perceived quality instead of the standard network level parameters used in the network.
UMTS, tels que le rapport signal à bruit Eb/No. L'objectif est de maintenir un niveau de qualité donné et non pas un taux d'erreur binaire cible.UMTS, such as the signal-to-noise ratio Eb / No. The goal is to maintain a given quality level and not a target bit error rate.
En effet, la sensibilité d'un flux vidéo transmis sur un réseau numérique varie suivant le type de contenu vidéo. La présence de mouvement influe grandement sur la visibilité des dégradations engendrées par les erreurs de transmission. Dans le mode de réalisation proposé, l'invention tire parti de cette propriété pour réagir seulement lorsque c'est nécessaire au maintien de la qualité perçue. L'invention peut utiliser dans un tel cas une procédure d'optimisation basée sur un algorithme déterministe, telle que décrit ci-dessus.Indeed, the sensitivity of a video stream transmitted on a digital network varies according to the type of video content. The presence of motion greatly influences the visibility of the damage caused by transmission errors. In the proposed embodiment, the invention takes advantage of this property to react only when it is necessary to maintain the perceived quality. The invention can use in such a case an optimization procedure based on a deterministic algorithm, as described above.
Il n'y a donc pas de procédure d'apprentissage aboutissant à un dictionnaire.There is therefore no learning procedure leading to a dictionary.
Selon les mêmes notations que précédemment, cette application définit les paramètres Q, QC, T, P et C comme suit : • QC = cible de qualité vidéo comprise entre 0 et 100. • Q = mesure ou cible de qualité vidéo comprise entre 0 et 100. Le procédé de mesure de qualité perçue intègre le procédé de la Demande de Brevet PCT WO 2004/047451 précité. Q intègre également d'autres mesures : le débit effectif reçu par le terminal, et le taux de paquets de données erronés reçus.Based on the same notations as before, this application sets the Q, QC, T, P, and C parameters as follows: • QC = video quality target between 0 and 100. Q = measurement or target of video quality between 0 and 100. The perceived quality measurement method incorporates the method of PCT Patent Application WO 2004/047451 cited above. Q also integrates other measures: the actual rate received by the terminal, and the rate of erroneous data packets received.
• T = (Non utilisé)• T = (Not used)
• P = Puissance d'émission (en dB)• P = Transmitting power (in dB)
• C = Non utilisé ou, dans une seconde variante ; C = type de contenu (sport, actualités, ...)• C = Not used or, in a second variant; C = type of content (sport, news, ...)
La figure 13 permet de montrer un mode de fonctionnement préféré de l'application.Figure 13 shows a preferred mode of operation of the application.
L'utilisateur accède à une liste de contenus stockés sur un serveur vidéo, identifiés par leur nom et leur type, par exemple à travers un navigateur Internet ; l'utilisateur choisit un contenu et un niveau de qualité désirée. Puis, le mécanisme utilisant l'invention se déroule en trois étapes sans intervention de l'utilisateur :The user accesses a list of contents stored on a video server, identified by their name and type, for example through an Internet browser; the user chooses a desired content and quality level. Then, the mechanism using the invention takes place in three stages without user intervention:
1. Le terminal envoie périodiquement au module RECH la dernière mesure de qualité Q en date, le niveau de qualité désiré QC et, dans la seconde variante, les caractéristiques C du contenu choisi.1. The terminal periodically sends to the module RECH the last quality measurement Q dated, the desired quality level QC and, in the second variant, the characteristics C of the chosen content.
2. Le module RECH applique la procédure d'optimisation à partir de C1 QC et Q pour trouver la puissance P nécessaire à assurer la qualité QC demandée dans les conditions de qualité perçues actuelles pour le contenu C. Cette puissance P est appliquée dans le réseau à l'émission du service vidéo.2. The RECH module applies the optimization procedure from C 1 QC and Q to find the power P necessary to ensure the quality QC requested under the current perceived quality conditions for the content C. This power P is applied in the network at the broadcast of the video service.
Les paramètres reçus du terminal puis envoyés au réseau sont également stockés dans la base de données, par exemple pour analyse ultérieure.The parameters received from the terminal and then sent to the network are also stored in the database, for example for later analysis.
Cette procédure d'optimisation qui ne met pas en œuvre la quantification vectorielle agit sur la puissance en fonction de la qualité perçue Q mesurée. Plus la qualité mesurée Q est éloignée de Ia qualité cible QC, plus la puissance variera de manière importante.This optimization procedure which does not implement the vector quantization acts on the power as a function of the perceived quality Q measured. The lower the measured quality Q is from the target quality QC, the more power will vary significantly.
La procédure calcule périodiquement la nouvelle puissance P, par exemple toutes les secondes, à partir de la puissance actuelle PoId. Elle peut se résumer ainsi:The procedure periodically calculates the new power P, for example every second, from the current power PoId. It can be summarized as follows:
Un pas d'augmentation de la puissance DP est défini. Si I Q - QC | < 5 P = PoIdAn increase step of the DP power is defined. If IQ - QC | <5 P = PoId
Si 5 < I Q - QC I < 10 P = PoId - signe (Q - QC) x 1 x DPIf 5 <I Q - QC I <10 P = PoId - sign (Q - QC) x 1 x DP
Si 10 < | Q - QC | < 20 P = PoId - signe (Q - QC) x 2 x DPIf 10 <| Q - QC | <20 P = PoId - sign (Q - QC) x 2 x DP
Sinon P = PoId - signe (Q - QC) x 4 x DP La fonction signe(X) renvoie le signe de X. Ainsi, la puissance est augmentée lorsque Q < QC. Par exemple DP peut représenter 1 à 5 % de la puissance.Otherwise P = PoId - sign (Q - QC) x 4 x DP The sign function (X) returns the sign of X. Thus, the power is increased when Q <QC. For example, DP can represent 1 to 5% of the power.
Le Procédé peut également être mis en œuvre pour prendre en compte à la fois la qualité mesurée au niveau du terminal et le type de contenu, sans avoir recours à la quantification vectorielle.The method can also be implemented to take into account both the quality measured at the terminal and the type of content, without resorting to vector quantization.
Cette variante tire parti de la variation de sensibilité d'un flux vidéo aux erreurs de transmission suivant le type de contenu vidéo. En effet, dans le cas d'une transmission sur un réseau IP ou UMTS on observe que pour un même nombre de paquets IP perdus, la baisse de qualité est plus importante pour les séquences vidéo ayant un contenu à fort mouvement. La figure 16 montre ce phénomène en prenant comme critère de dégradation la proportion d'images vidéo perdues par transmission : Ia perte d'images est plus importante pour les séquences très animées, ce qui correspond à une moins bonne qualité. Cette seconde variante de procédure d'optimisation tire parti de cette propriété à travers la précédure suivante:This variant takes advantage of the sensitivity variation of a video stream to transmission errors depending on the type of video content. Indeed, in the case of a transmission over an IP or UMTS network, it is observed that for the same number of lost IP packets, the drop in quality is greater for video sequences having a high-motion content. FIG. 16 shows this phenomenon by taking as a criterion of degradation the proportion of video images lost by transmission: the loss of images is greater for the very animated sequences, which corresponds to a lower quality. This second variant of optimization procedure takes advantage of this property through the following precursor:
Deux pas d'augmentation de la puissance sont définis, un pour chaque type de contenu: DPjsport > DP_actualites.Two power increase steps are defined, one for each content type: DPjsport> DP_actualites.
Si C = "sport" DP = DP_sport, par exemple 2 à 10% de Ia puissance Sinon DP = DP_actualites, par exemple 1 à 5% de la puissanceIf C = "sport" DP = DP_sport, for example 2 to 10% of the power Otherwise DP = DP_actualites, for example 1 to 5% of the power
Si | Q - QC | < 5 P = PoIdIf | Q - QC | <5 P = PoId
Si | Q - QC | < 10 P = PoId - signe (Q - QC) x 1 x DPIf | Q - QC | <10 P = PoId - sign (Q - QC) x 1 x DP
Si | Q - QC | < 20 P = PoId - signe (Q - QC) x 2 x DPIf | Q - QC | <20 P = PoId - sign (Q - QC) x 2 x DP
Sinon P = PoId - signe (Q - QC) x 4 x DP La fonction signe(X) renvoie le signe de X. Ainsi, la puissance est augmentée lorsque Q < QC. EXEMPLESOtherwise P = PoId - sign (Q - QC) x 4 x DP The sign function (X) returns the sign of X. Thus, the power is increased when Q <QC. EXAMPLES
Exemple 1 : Pour la première variante de la première application (sélection du débit de codage optimal en fonction de Ia résolution du terminal et de la qualité demandée, avec utilisation du nom du contenu)Example 1: For the first variant of the first application (selection of the optimal coding rate according to the resolution of the terminal and the requested quality, using the name of the content)
Le Tableau montre un exemple réel d'une partie d'un dictionnaire utilisé pour rechercher le débit optimal en fonction d'une qualité cible et d'un contenu désigné par son nom, avec une contrainte de résolution d'affichage. L'extrait représenté est valable pour 5 contenus différents encodés selon une combinaison de deux résolutions et quatre débits. Ces contenus sont dénommés : football ("Foot"), Kayak, Bois, Journal TV et Bande dessinée (BD).The table shows a real-world example of a portion of a dictionary used to search for optimal throughput based on a target quality and named content, with a display resolution constraint. The illustrated extract is valid for 5 different encoded contents according to a combination of two resolutions and four rates. These contents are denominated: football ("Foot"), Kayak, Wood, TV Newspaper and Comic Strip (BD).
Tableau 1 : Exemple d'extrait de dictionnaire (variante 1)Table 1: Example of dictionary extract (variant 1)
Les coordonnées de chaque ligne du Tableau 1 , c'est à dire de chaque vecteur du dictionnaire, peuvent se relier aux définitions des vecteurs Q, C, T et P précédemment définis aux Eq. 5, 6, 7, et 8 de la manière suivante :The coordinates of each line of Table 1, that is to say of each vector of the dictionary, can be related to the definitions of vectors Q, C, T and P previously defined at Eq. 5, 6, 7, and 8 as follows:
Q = (pqos) et nq = 1 pqos = qualité de la séquence entre 1 et 100Q = (pqos) and nq = 1 pqos = quality of the sequence between 1 and 100
C=( nom de séquence ) et ne = 1C = (sequence name) and ne = 1
T=( taille d'image ) et nt = 1T = (image size) and nt = 1
P=( débit binaire ) et np = 1P = (bit rate) and np = 1
L'application de la procédure de quantification vectorielle avec un vecteur de QC contenant une valeur de qualité cible de pqos permet alors de sélectionner la valeur optimale du paramètre "débit binaire". Dans le cas présent, la distance entre deux coordonnées "taille image" (ou "débit binaire") est nulle si les deux coordonnées d'un même vecteur sont égales, sinon elle peut être choisie par exemple égale à 100 de manière à être d'un ordre de grandeur comparable à la coordonnée pqos.The application of the vector quantization procedure with a QC vector containing a target quality value of pqos then makes it possible to select the optimum value of the "bit rate" parameter. In this case, the distance between two coordinates "image size" (or "bit rate") is zero if the two coordinates of the same vector are equal, otherwise it can be chosen for example equal to 100 so as to be of an order of magnitude comparable to the coordinate pqos.
Puis, ainsi qu'indiqué plus haut dans la description (sous-étape c), la configuration de codage envoyée au codeur est composée du vecteur P et éventuellement de certains éléments du vecteur U : dans le cas présent, les paramètres "taille image" ou "débit binaire"constituent cette configuration.Then, as indicated above in the description (substep c), the encoding configuration sent to the encoder is composed of the vector P and possibly some elements of the vector U: in this case, the parameters "image size" or "bit rate" is this configuration.
Exemple II : Pour la seconde variante de la première application (sélection du débit de codage optimal en fonction de la résolution du terminal et de la qualité demandée, avec utilisation du type de contenu)Example II: For the second variant of the first application (selection of the optimal coding rate according to the resolution of the terminal and the requested quality, using the type of content)
Le Tableau montre un exemple réel de dictionnaire utilisé pour rechercher le débit optimal en fonction d'une qualité cible et d'un type de contenu (nouvelles ou "News" et "Sport"), avec une contrainte de résolution d'affichage.The table shows a real-world example of a dictionary used to find the optimal throughput based on a target quality and a content type (news or "News" and "Sport"), with a display resolution constraint.
Tableau 2 : Exemple de dictionnaire (variante 2) Table 2: Dictionary Example (Variant 2)
Les coordonnées de chaque ligne du Tableau 2, c'est à dire de chaque vecteur du dictionnaire, peuvent se relier aux définitions des vecteurs Q, C, T et P précédemment définis aux Eq. 5, 6, 7, et 8 de la manière suivante :The coordinates of each line of Table 2, that is to say of each vector of the dictionary, can be related to the definitions of vectors Q, C, T and P previously defined at Eq. 5, 6, 7, and 8 as follows:
Q = (pqos) et nq = 1Q = (pqos) and nq = 1
C=( type de contenu ) et ne = 1 T=( taille d'image ) et nt = 1 P={ débit binaire ) et np = 1 L'application de la procédure de quantification vectorielle avec un vecteur de QC contenant une valeur de qualité cible de pqos permet alors de sélectionner la valeur optimale du paramètre "débit binaire". Dans le cas présent, la distance entre deux coordonnées taille d'image ou débit binaire est nulle si les deux coordonnées sont égales, sinon elle peut être choisie par exemple égale à 100 de manière à être d'un ordre de grandeur comparable à la coordonnée pqos.C = (content type) and ne = 1 T = (image size) and nt = 1 P = {bit rate) and np = 1 The application of the vector quantization procedure with a QC vector containing a value The target quality of pqos then makes it possible to select the optimal value of the parameter "bit rate". In the present case, the distance between two coordinates image size or bit rate is zero if the two coordinates are equal, otherwise it can be chosen for example equal to 100 so as to be of an order of magnitude comparable to the coordinate pqos.
Puis, ainsi qu'indiqué plus haut dans la description (sous-étape c), la configuration de codage envoyée au codeur est composée du vecteur P et éventuellement de certains éléments du vecteur U : dans le cas présent, les paramètres "débit binaire" et "taille d'image" constituent cette configuration. Then, as indicated above in the description (substep c), the coding configuration sent to the encoder is composed of the vector P and possibly some elements of the vector U: in this case, the parameters "bit rate" and "image size" constitute this configuration.

Claims

REVENDICATIONS
1. Procédé de transmission d'un programme audio et/ou vidéo à débit binaire variable à travers un canal de transmission, caractérisé en ce qu'il met en œuvre un ajustement d'au moins un paramètre de codage et/ou de transmission en fonction d'au moins un vecteur de consigne à au moins une dimension représentant une qualité de réception souhaitée par ledit utilisateur final.A method for transmitting a variable bit-rate audio and / or video program over a transmission channel, characterized in that it implements an adjustment of at least one coding and / or transmission parameter. function of at least one setpoint vector with at least one dimension representing a reception quality desired by said end user.
2. Procédé selon la revendication 1 , caractérisé en ce qu'il est mis en œuvre pour la fourniture de séquences vidéo à un utilisateur à partir d'un serveur et en ce qu'il met en œuvre le choix par l'utilisateur d'une séquence vidéo et d'un niveau de qualité choisi QC.2. Method according to claim 1, characterized in that it is implemented for the provision of video sequences to a user from a server and in that it implements the choice by the user of a video sequence and a quality level chosen QC.
3. Procédé selon une des revendications 1 ou 2, caractérisé en ce qu'un dit paramètre de transmission est le débit binaire et/ou le type de modulation et/ou la puissance de transmission. 3. Method according to one of claims 1 or 2, characterized in that a said transmission parameter is the bit rate and / or the type of modulation and / or the transmission power.
4. Procédé selon une des revendications 1 à 3, caractérisé en ce que ledit ajustement est réalisé à partir d'une relation déterministe entre la qualité de réception souhaitée et le ou les paramètres de codage et/ou de transmission.4. Method according to one of claims 1 to 3, characterized in that said adjustment is made from a deterministic relationship between the desired reception quality and the coding parameter and / or transmission.
5. Procédé selon une des revendications 1 à 3, caractérisé en ce que ledit ajustement est mis en œuvre en fonction d'une distance entre ledit vecteur de consigne et un vecteur de mesure représentant ladite qualité de réception mesurée au niveau dudit utilisateur final.5. Method according to one of claims 1 to 3, characterized in that said adjustment is implemented as a function of a distance between said target vector and a measurement vector representing said quality of reception measured at said end user.
6. Procédé selon la revendication 5, caractérisé en ce que la qualité de réception est mesurée sur une séquence de durée déterminée dudit programme.6. Method according to claim 5, characterized in that the quality of reception is measured on a fixed duration sequence of said program.
7. Procédé selon une des revendications 5 ou 6, caractérisé en ce que ledit ajustement est réalisé en modifiant la puissance d'émission P en fonction d'une distance entre le vecteur de consigne et le vecteur de mesure. 7. Method according to one of claims 5 or 6, characterized in that said adjustment is performed by modifying the transmission power P as a function of a distance between the target vector and the measurement vector.
8. Procédé selon une des revendications précédentes, caractérisé en ce que ledit ajustement est réalisé également en fonction d'au moins un paramètre du contenu du programme.8. Method according to one of the preceding claims, characterized in that said adjustment is also performed as a function of at least one parameter of the program content.
9. Procédé selon une des revendications précédentes, caractérisé en ce qu'un paramètre du contenu est un paramètre d'activité et/ou un paramètre attribué au nom du programme et/ou au type de programme. 9. Method according to one of the preceding claims, characterized in that a parameter of the content is an activity parameter and / or a parameter assigned to the name of the program and / or the type of program.
10. Procédé selon une des revendications précédentes, caractérisé en ce que ledit ajustement est réalisé également en fonction d'un paramètre caractéristique du terminal.10. Method according to one of the preceding claims, characterized in that said adjustment is also performed as a function of a characteristic parameter of the terminal.
11. Procédé selon la revendication 10, caractérisé en ce qu'un paramètre caractéristique du terminal est la résolution d'une image affichée sur ledit terminal et/ou la bande passante.11. The method of claim 10, characterized in that a characteristic parameter of the terminal is the resolution of an image displayed on said terminal and / or the bandwidth.
12. Procédé selon une des revendications précédentes, caractérisé en ce qu'il met en œuvre l'élaboration d'un dictionnaire à partir d'un ensemble d'apprentissage comprenant NZ vecteurs R caractérisant les données de NZ tests, chaque vecteur Rz (Z variant de 1 à NZ) d'un test de rang z, résultant de l'union d'un vecteur Qz représentant la qualité perçue de ce test de rang z, d'un vecteur Pz représentant le ou les paramètres de codage et/ou de transmission de ce test de rang z, et éventuellement d'un vecteur Tz représentant le ou les paramètres du terminal de ce test de rang z, et/ou d'un vecteur Cz représentant le ou les paramètres de contenu.12. Method according to one of the preceding claims, characterized in that it implements the elaboration of a dictionary from a learning set comprising NZ vectors R characterizing the data of NZ tests, each vector R z ( Z varying from 1 to NZ) of a rank test z, resulting from the union of a vector Qz representing the perceived quality of this rank test z, a vector Pz representing the coding parameter (s) and / or or transmitting this test of rank z, and possibly a vector Tz representing the parameter or parameters of the terminal of this rank test z, and / or a vector C z representing the content parameter or parameters.
13. Procédé selon la revendication 12, caractérisé en ce que le dictionnaire est constitué par les vecteurs de l'ensemble d'apprentissage.13. The method of claim 12, characterized in that the dictionary is constituted by the vectors of the training set.
14. Procédé selon la revendication 12, caractérisé en ce que le dictionnaire est obtenu par un algorithme de classification vectorielle à partir dudit l'ensemble d'apprentissage, et est constitué par un groupe de N vecteurs (avec N < NZ) présentant une distorsion moyenne minimale par rapport aux NZ vecteurs de l'ensemble d'apprentissage.14. Method according to claim 12, characterized in that the dictionary is obtained by a vector classification algorithm from said learning set, and is constituted by a group of N vectors (with N <NZ) having a distortion minimum average compared to the NZ vectors of the learning set.
15. Procédé selon une des revendications 13 ou 14, caractérisé en ce que l'ajustement est réalisé en déterminant par quantification vectorielle le vecteur du dictionnaire correspondant le mieux à un vecteur de contrainte représentant au moins la qualité souhaitée.15. Method according to one of claims 13 or 14, characterized in that the adjustment is carried out by determining by vector quantization the dictionary vector corresponding best to a constraint vector representing at least the desired quality.
16. Procédé selon la revendication 15, caractérisé en ce que le vecteur de contrainte est constitué de l'union d'un vecteur représentant la qualité souhaitée et d'un vecteur représentant au moins un paramètre de contenu et/ou d'un vecteur représentant au moins un paramètre du terminal.16. The method of claim 15, characterized in that the constraint vector consists of the union of a vector representing the desired quality and a vector representing at least one content parameter and / or a vector representing at least one parameter of the terminal.
17. Procédé selon une des revendications 1 ou 2, caractérisé en ce qu'un dit ajustement par exemple de la puissance d'émission P est réalisé par pas DP en fonction de la différence entre la qualité perçue mesurée Q et la qualité cible QC pour le programme vidéo. 17. Method according to one of claims 1 or 2, characterized in that a said adjustment for example of the transmission power P is achieved by step DP according to the difference between the perceived quality measured Q and the target quality QC for the video program.
18. Procédé selon la revendication 17, caractérisé en ce que :18. Process according to claim 17, characterized in that:
- Si | Q - Qc | est inférieur à un premier seuil, la puissance P n'est pas modifiée- If | Q - Qc | is less than a first threshold, the power P is not modified
- Si | Q - Qc | est compris entre le premier seuil et un deuxième seuil, la puissance est augmentée ou diminuée du pas DP selon que le signe de Q - QC est respectivement négatif ou positif- If | Q - Qc | is between the first threshold and a second threshold, the power is increased or decreased by the step DP according to whether the sign of Q - QC is respectively negative or positive
- Si | Q - Qc | est compris entre le deuxième seuil et un troisième seuil supérieur au deuxième seuil, la puissance est augmentée ou diminuée de kDP avec 1 < k = 2 selon que le signe de Q - Qc est respectivement négatif ou positif.- If | Q - Qc | is between the second threshold and a third threshold greater than the second threshold, the power is increased or decreased by kDP with 1 <k = 2 depending on whether the sign of Q - Q c is respectively negative or positive.
19. Procédé selon la revendication 18, caractérisé en ce que le pas DP est variable en fonction d'un type de contenu associé au programme vidéo. 19. The method of claim 18, characterized in that the DP step is variable depending on a type of content associated with the video program.
EP05818148A 2004-12-15 2005-11-18 Method for a variable bit rate transmission through a transmission channel Withdrawn EP1829377A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0413321A FR2879387B1 (en) 2004-12-15 2004-12-15 METHOD FOR TRANSMITTING A VARIABLE BINARY RATE THROUGH A TRANSMISSION CHANNEL.
PCT/FR2005/002868 WO2006064098A1 (en) 2004-12-15 2005-11-18 Method for a variable bit rate transmission through a transmission channel

Publications (1)

Publication Number Publication Date
EP1829377A1 true EP1829377A1 (en) 2007-09-05

Family

ID=34951583

Family Applications (1)

Application Number Title Priority Date Filing Date
EP05818148A Withdrawn EP1829377A1 (en) 2004-12-15 2005-11-18 Method for a variable bit rate transmission through a transmission channel

Country Status (7)

Country Link
US (1) US20080123749A1 (en)
EP (1) EP1829377A1 (en)
JP (1) JP2008524893A (en)
CN (1) CN101080928A (en)
FR (1) FR2879387B1 (en)
IL (1) IL183845A0 (en)
WO (1) WO2006064098A1 (en)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8582647B2 (en) 2007-04-23 2013-11-12 Qualcomm Incorporated Methods and systems for quality controlled encoding
US8804815B2 (en) * 2011-07-29 2014-08-12 Dialogic (Us) Inc. Support vector regression based video quality prediction
US20140192207A1 (en) * 2013-01-07 2014-07-10 Jinsong Ji Method and apparatus to measure video characteristics locally or remotely
CN103400584B (en) * 2013-07-31 2015-10-28 成都华迈通信技术有限公司 Audio compression maximizing performance and the low consumed intelligent processing method of flow and device
JP2015073154A (en) * 2013-10-01 2015-04-16 株式会社リコー Data transmission system, data transmission program, and data transmission method
CN103596038B (en) * 2013-11-20 2017-04-26 韩巍 Navigation method and device of real-time video content
JP6357385B2 (en) 2014-08-25 2018-07-11 ルネサスエレクトロニクス株式会社 Image communication device, image transmission device, and image reception device
EP3073738A1 (en) * 2015-03-26 2016-09-28 Alcatel Lucent Methods and devices for video encoding
US10178143B2 (en) 2015-09-29 2019-01-08 International Business Machines Corporation Selecting bitrate to stream encoded media based on tagging of important media segments
EP3672135B1 (en) * 2018-12-19 2022-08-24 Aptiv Technologies Limited Method and system for testing the quality of a signal transmission in a communication system
CN109842797B (en) * 2018-12-28 2020-04-24 城云科技(中国)有限公司 Big data encoding method and computer readable storage medium
JP7456445B2 (en) 2019-08-08 2024-03-27 日本電気株式会社 COMMUNICATION CONTROL METHOD, COMMUNICATION DEVICE, AND COMMUNICATION SYSTEM
EP4228187A1 (en) 2022-02-15 2023-08-16 Aptiv Technologies Limited Integrity tests for mixed analog digital systems

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2769453B1 (en) * 1997-10-06 2000-01-07 Telediffusion Fse METHOD FOR EVALUATING THE DEGRADATION OF A VIDEO IMAGE INTRODUCED BY A CODING AND / OR STORAGE AND / OR DIGITAL TRANSMISSION SYSTEM
GB9909605D0 (en) * 1999-04-26 1999-06-23 Telemedia Systems Ltd Networked delivery of media files to clients
US6430394B1 (en) * 1999-06-17 2002-08-06 Lockheed Martin Corporation System for controlling communications between a terminal and satellite and method therefore
FR2795578B1 (en) * 1999-06-23 2002-04-05 Telediffusion Fse METHOD FOR EVALUATING THE QUALITY OF AUDIOVISUAL SEQUENCES
US6574279B1 (en) * 2000-02-02 2003-06-03 Mitsubishi Electric Research Laboratories, Inc. Video transcoding using syntactic and semantic clues
GB2367219A (en) * 2000-09-20 2002-03-27 Vintage Global Streaming of media file data over a dynamically variable bandwidth channel
US7165102B2 (en) * 2000-12-18 2007-01-16 Raza Microelectronics, Inc. Adaptive link quality management for wireless medium
FI112424B (en) * 2001-10-30 2003-11-28 Oplayo Oy Coding procedure and arrangement
US20030125040A1 (en) * 2001-11-06 2003-07-03 Walton Jay R. Multiple-access multiple-input multiple-output (MIMO) communication system
JP3977652B2 (en) * 2002-02-08 2007-09-19 日本電信電話株式会社 Quality control coding control method and apparatus for distribution service, and program thereof
JP3844445B2 (en) * 2002-04-19 2006-11-15 日本電信電話株式会社 Video content distribution method, apparatus, and video content distribution program
JP4401721B2 (en) * 2002-09-26 2010-01-20 キヤノン株式会社 Video receiver
FR2847412B1 (en) * 2002-11-15 2005-01-14 Telediffusion De France Tdf METHOD AND SYSTEM FOR MEASURING DEGRADATION OF A VIDEO IMAGE INTRODUCED BY DIGITAL BROADCASTING SYSTEMS
JP4158147B2 (en) * 2003-01-07 2008-10-01 リコーソフトウエア株式会社 Storage preview method, apparatus, and compression rate prediction method in Lossy compression
JP2005311599A (en) * 2004-04-20 2005-11-04 Keio Gijuku Communication system, communication method and streaming server

Non-Patent Citations (1)

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

Also Published As

Publication number Publication date
CN101080928A (en) 2007-11-28
FR2879387B1 (en) 2007-04-27
FR2879387A1 (en) 2006-06-16
WO2006064098A1 (en) 2006-06-22
JP2008524893A (en) 2008-07-10
IL183845A0 (en) 2007-10-31
US20080123749A1 (en) 2008-05-29

Similar Documents

Publication Publication Date Title
EP1829377A1 (en) Method for a variable bit rate transmission through a transmission channel
EP2510701B1 (en) Method and apparatus for determining coding parameters of bitstreams of variable resolution
FR2897741A1 (en) METHOD AND DEVICE FOR GENERATING DATA REPRESENTATIVE OF A DEGREE OF IMPORTANCE OF DATA BLOCKS AND METHOD AND DEVICE FOR TRANSMITTING AN ENCODED VIDEO SEQUENCE
FR2840495A1 (en) METHOD AND DEVICE FOR SELECTING A TRANSCODING METHOD AMONG A SET OF TRANSCODING METHODS
FR2837330A1 (en) Method and device for selecting a transcoding method from a set of transcoding methods used for multimedia digital data
FR2894421A1 (en) METHOD AND DEVICE FOR DECODING A VIDEO STREAM CODE FOLLOWING A HIERARCHICAL CODING
FR2902266A1 (en) METHOD AND DEVICE FOR DISTRIBUTING THE COMMUNICATION BANDWIDTH
EP2700226A1 (en) Methods and devices for producing and processing representations of multimedia scenes
FR2857198A1 (en) Digital data e.g. audio, stream distribution method, involves selecting code conversion method admissible for each client from set of predetermined code conversion methods based on calculated flow and classification of client
FR2975555A1 (en) METHOD OF DYNAMIC ADAPTATION OF RECEPTION RATE AND RECEPTOR
EP2947888A1 (en) Adaptive method for downloading digital content for a plurality of screens
FR2959636A1 (en) Method for accessing spatio-temporal part of video image sequence in e.g. mobile telephone of Internet, involves obtaining selection zone updating information, where information is decoding function of data corresponding to selection zone
EP2368367B1 (en) Interactive system and method for transmitting key images selected from a video stream over a low bandwidth network
EP3540627A1 (en) Method for selecting profiles for encoding of multimedia content for on-demand broadcast
FR2946820A1 (en) DATA TRANSMISSION METHOD AND ASSOCIATED DEVICE.
FR2893470A1 (en) METHOD AND DEVICE FOR CREATING A VIDEO SEQUENCE REPRESENTATIVE OF A DIGITAL VIDEO SEQUENCE AND METHODS AND DEVICES FOR TRANSMITTING AND RECEIVING VIDEO DATA THEREOF
FR2919779A1 (en) METHOD AND DEVICE FOR ENCODING LOSS OF A DIGITAL SIGNAL
FR2898459A1 (en) METHOD AND APPARATUS FOR RECEIVING IMAGES HAVING FOUND LOSS DURING TRANSMISSION
FR2923970A1 (en) METHOD AND DEVICE FOR FORMING, TRANSFERING AND RECEIVING TRANSPORT PACKETS ENCAPSULATING DATA REPRESENTATIVE OF A SEQUENCE OF IMAGES
EP1900223A2 (en) Video coding method and device
EP3582500B1 (en) Method, system and computer program for analysing the complexity of multimedia content for on-demand broadcast
WO2017051121A1 (en) Method of allocating bit rate, device, coder and computer program associated therewith
FR2926177A1 (en) Data e.g. audio data, flow transmitting method, involves controlling coding flow of data flow, and reducing or increasing quality objective when reactivity parameter is increased or reduced, respectively, so as to modify quality objective
EP4104446A1 (en) Method and device for processing multi-view video data
WO2009004255A1 (en) Selection of decoding functions distributed to the decoder

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20070621

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LI LT LU LV MC NL PL PT RO SE SI SK TR

RIN1 Information on inventor provided before grant (corrected)

Inventor name: BRETILLON, PIERRE

Inventor name: PESME, ANTOINE

17Q First examination report despatched

Effective date: 20071108

DAX Request for extension of the european patent (deleted)
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20120601