Brevet FR3041194A1 — publié le 20170317

Proe&j.e d'optimisation de transmission de flue de données vi- déo dan eau sans sente invention un procédé d'amélioration abilité réception d flux de donne un roseau numérique sans fil entre autre des erotocoles te. cornmunictin par ex le de type WIFI. Les 11u concernes sont eeveyes en multicast_ omultidiffusion, eet-à- viennent d:au moins iu émetteur les diffus vers 10 des recepteurs d'un groupe abonne e botte diffusion. T-, drspc- s ràcep-eurs, ou clients, forru,t be groupe destinataire sont capa les de visualiser les flux enveyee, et sent dotés d'au moins une application permettant de traiter et de visualiser l'information reçue. 15 Plus particulièrement, la preserte invention porte sut un trai- Lament, redise t la réception de :nue vidéos, permettent ePem a qualité des signaux décodés en présence de pertes blocs de données. L'une des applications possibles de l'invention est la diffu20 sion pratiquement e temps réel d'événements de type rencontres sportives ou spectacles, dans le périmètre de l'enceinte où a lieu ledit événement. Le logiciel applicate client, permet- d'une la visualisation fluide des images vi.os proposées entre autres par un prestataire iné à 'organisaFeul vénement, autre 25 part d'enrichir la visualisation par des traitements susceptibles de conférer une valeur ajoutée aux flux vidéo reçus, exemele une répétition et donc une revisualisation de certaines séquences, le cas échéant au ralenti De tels traitements implrquent que s flux vidéos, classique-30 ment transmis sous forme de paquets d'informetions contnan sentiellement des empes d' ...images, soient réceptionnes queute suffisante d'abord pour que leur visualisation eoit cdi- piement confortable, puis égalemer. our que le tuels trai- tements ultérieurs des signaux puissent se un socle 35 d'information suffisant , leur realisation. 3041194 2 Or, -,ur les reseaux locaux- sans fi?, quelque soit les protocoles de con u cation utilisés et le mode de diffusion - cele s'ape donc également aux réseaux WIFI en diffusion multicast qui ont utilisés dans le texte-comme exemple préférentiel d'erreur de transmission est is entre 0% et 15%, parfois plus. Ce taux d'erreur consiste en pratique en une perte de blocs d'informations transmis par le réseau. Dans l'hypo ;lèse de trans- missions de flux vidéo, ultat de ces pertes est une mauvaise qualité des vidéos obtenues, les images pouvant présenter des macrobiocs exogènes qui es degr-adent et dégradent par conséquent la qualité des flux,quand elles ne sont pas purement et simplement perdues. Selon le cas, ces pertes peuvent altérer le flux vidéo jusqu'à empêcher la diffusion de certaines séquences. En pratique, les flux de données vidéo sont codés sous forme de paquets G qui sont en réalité essentiellement constitués de groupes d'images de différentes catégories, ces paquets etant ensuite divisés en des blocs de données. Selon un schéma classique, qui résulte d'ailleurs de la mise en oeuvre par avance de conditions de récupération de données perdues, ces paquets G comportent cha- cun K premiers blocs de données qui codent essentiellement les images du flux vidéo et N blocs dits de redondance utilisables le cas échéant pour la correction d'erreur directe (par un algoritiime de type FEC). Un flux comprend donc une succession de groupe d'images ou paquets t comporta un K+N blocs émise par le dispositif émetteur l'envoie en multicast à. des dispositifs de visuali- sation clients, par exemple des seiertphones ou des tablettes. Pour assurer une réception fiable et de qualité des flux via malgré les pertes toujours possibles, le procédé comporte selon 30 1'invention et à titre principal les étapes suivantes, mise en uvre par chaque dispositif client pour chacun des paquets G de données reçu du ou des dispositifs émetteurs: a/ contrôle de la réception correcte des K premiers blocs de données, décodage et visualisation du flux vi- 35 deo en cas de résultat positif ; 3041194 - b/ en l'absence de réception de la totalité des. K premiex:s blocs de des, et si le n re total X de blocs K-4-14 reçts est au moins égal à K, décodage au moyen d'un carithme de corIac C'e'reur directe (FEC) pour 5 retrouver les (tonnées manquantes des blocs K, décodage et tif ; c/ si le n à K ou otal X de blocs 7+N reçus est infézLeur l'absence de .resuitst. positifau deccda.ge via lisation (5u flux vidéo en cas de résultat posi 10 l'algorithme correction d erreur directe (FaC) , en- voi par le disositif client J- 1 message, ,T-,,ic'asf donnant à 'emettur des informations au moins su z le ou locs perdus ; d/ si un algorithme statisticnie du dispositif àmetteur 15 organise le renvoi données manquantes, contrôle de la reception correcte des données renvoyées pai .e dis- positif émetteur selon a/ et b/, décodagevisualisation du flux vidéo en cas de résultat positif. L'idée à la base de l'invention est de tenter de corriqer les 20 erreurs par étapes successives. en oeuvre de chacune des étapes dépendant d'au moins un test effectues étape précédente, La mise en oeuvre desétapes dépend notamment du taux et de la répartition des erreurs detectées dans les paquets de données. Dansune. hypothèse favowablQ, seule la première étape, c'est-à- 25 dire le premier test mise en oeuvre. Si la totalité des K premiers blocs est parvenue au dispositif client, cela siqnifie qu'il n'y a pas d'erieur, pas de perte d'information, et le décodage vidéo peut s'effectuer en vue de la visualisation. Dans une hypothèse plus défavorable, il faut faire appel à 30 l'a.Lejorithme FEC pour retrouver des données manquantes : cette étape permet en fait de corri pertes de blocs réparties dans le temps lorsque ux d'erreur n'est pas trop important (il est alors qualifie de sable à moyen). La condition de mise ape e que le nombre total blocs reçus en oeuvre 35 est au moins ëga. 3041194 4 Selon la .-, mingie des erreeece cette étape peut terlt fait être soit un échec soit non reali.sble p meepeie de deree ' et donc ne pas permettre de cor erreurs c'est par emp1 cas lor produit des erreurs par exemple paque ta 5 entiers, c'est à dire des erreurs regroupées, représentant un taux d'erreur qualifié de moyen à élevé« autre routine est alors à mettre en oeuvre, selon l'invention, qui suppose, un échange avec le dispositif émetteur. Le clientqui se trouve dans ce cas envoie un message en unicast à l'émet quel renvoie éventuellement 10 les denrées manquantes suivant un algorithme statistique. Cela suppose évidemment que celles-ci aient été identifiées par le dispositif client. L'intégrité ou la lisibilité des données renvoyées est contrés,- lée selon étapes a/ et b/ à la réception par le dispositif 15 client, qui peut alors procéder au décodage du flux en vue de sa visualisation. procédé de l'invention va cependant pins loin, et considère également l'hypothèse selon laquelle les données renvoyées par le dispositif émetteur ne sont toujours pas réceptionnées ou ne sont 20 pas réceptionnées suffisamment rapidement, dans des conditions permettant d'afficher correctement te flux video. Dans ce cas, les étapes suivantes sont mises en oeuvre selon l'invention : e/ en l'absence de réception correcte des données ren- 25 voyées, contrôle de la réception d'une image de référence à. codage interne dans le paquet G de données reçues, puis f/ une telle image de référence est reçue complètement mise en oeuvre d'un algorithme de dissimulation d'erieur appliqué sur les données compressées, et g/ décodage et visualisation du flux vidéo. L'image de référence à laquelle il est allusion est celle avec laquelle commence typiquement le paquet G, essentiellement force groupe d'ime.ges dont la succession, répétée périodi- q"11 "EU ',-- . . jusqu'à la fin de l'encodage, constitue in fine le flux 3041194 vidéo encodé. C'est nne imaqo de férence n. ge interne dont 1e ecodage est autonome dpend pas des Images rircedentes u auLvantes. Cette ce tegozie est utilisée en association avec des images î autres catégories par exemp c â codage prédictif, 5 dams i définit. groupe particulier, Les iMe.qeS ,re,,S sont ansuste renés pastis des images codées contenues dans ce croupe prédéti-i, Ce type d'image, indépendant dee autres tTes d'image consti- tuan groupe, est considére comme reference, e la 10 test visant à détErmtro in partinence an oeuvre d'un algorithme de dissimolation d erreur es donc référence, selon l'invention, basé sur l'existence Ita d'une telle image de référence. Lorsqu'un dispositif client n'a pas reconstruire correcte- 15 ment le flux vidéo renvoyé par dispositif émetteur, il met en oeuvre une étape de imulation d'erreurs. Celle-ci n'est cepen- dant effectuee condition qu'une image de référence été reçue da paquet de données G traité. Cette nouvelle étape basée sut dissimulation permet de dissimuler les erreurs et de 20 fournir, au moment du décodage, des échantillons encodés et cal- cules qu acent les échantillons manquants du signal à partir des données de l'image de référence e-t des éventuelles autres images reçtes dans le permet G. L'estimation des parties manquantes des images sur les données encodees permet d'atténuer 25 visuellement les erreurs éception de dourees dans les flux vidéo compressés, et s effectue en exploitant les corrélations spatiales et temporelles entre ,r,ems Image (corrélation spatial futures (corrélation temporelle) images oit à l'intérieurd'une soit dans les images passées ou dee à la base de ces routines 30 rarement des changements brutaux entre pixels spa- tialement adjacents d'une image, qu'il y a une continuité tem- porelle dans les gée successives d'une séquence vidéo. Le procédé de invention envisage ensuite la po ibi7: la non réception d'un telle image referasce à codage interne .-ans, 35 le paquet de données ux en cours de traitement, Dans ce cas, 3041194 selon une possibilité propre à l'invention, len étapes suivantes sont mises en oeuvre : h/ en cas de. non réception d'une de référence à codage interne dans le paquet G de données reçues, 5 rification de la réception d'au moine 11.-171e image de férence des paquets précédents et suivant G+1, i/ mise en fflivre d'un procédéd'interpolation sur les données non compressées ou linéaires pour la reconstruction cimeges, puis 10 j/ décodage et visualisation du flux vidéo. Ce nouvel étage du procédé de l'invenflon. utilise cette fois des possibilités de reconstruction algorithmique plutôt que des techniques de dissimulation d'erreu utilisées ci-dessus, dans un contexte un peu différent. li s'agit de méthodes d'interpola- 15 tion qui sont également envisagées de manière temporelle ou spaUale, et fonctionnent cette fois avec des flux vidéo non compressés. Dans une interpolation temporelle, elles permettent de générer des images manquantes dans un flux en utilisant les images précédentes et suivantes. 20 S'il advient qu'aucune des étapes décrites précédemment ne per- met d'aboutir, en particuliee dans le cadre de la dernière étape mise en parce qu'il n'y a pas réception d'au moins une image de référence des paquets précédent ivant G+1, Paq?le pas affiché. 25 Le procédé de l'invention est en réalité une chaîne de solutions successives visant à adapter la réponse. du système à des défauts de transmission du signal vidéo dont la nature et gravité sont décelées de manière progressive. invention va à présent être décrite plus en détail, en réfé30 rence aux figures annexées, représentant une possibilité de mise en oeuvre du procédé de l'invention, et peur lesquelles : la figure I représente un organigramme schématisant la mise en oeuvre le du procédé de l'invention ; et 3041194 7 - la un soc ti 2 montre un me paquet possible d'un groupe flux diffeeent mee , constituant. images et,. par répéti- nuées présentés sur possibles étan. En réeerence cadré du procédé consiste été reçus. A chaque étape, ces oad, ,s de données, premeer test effectué dans K remier blocs o et, après chaque dans une hypothèse vérifier si favorable, c'est-à-dire s'il ' donnée , ou s'ils ont été résolus 10 tuant le flux vidéo sont traités pas de problème de perte de - pad-aets de donnees constidécodeur vide ei vue de la diffusion du flux. transmis, Si le résultat au premier es tamment que le paquet de donnéee est positif cela signifie correspeed au cas N°1 de la figure 2, selon lequel les K premiers blocs du paquet de données 15 ont été reçus. En figure 2 un code visuel défi différents blocs, apparaissez dans la légen bas la figure, et comprenant les premiers blocs K, les blocs K à les images de référence I et les blocs dus. Dans un hypothèse nég Ve-3 test suivant po sur le nombre 20 X de blocs reçus parmil'ensemble des blocs K + émis, c'est-à- dire incluant les blocs de redondance N, lacés I la suite des blocs K dans les représentations de la figure 2. Si le nombre total de blocs reçus est au moins c (méme en cas d'erreurs, de blocs perdus), c'est-à-dire K, correspondant au cas N°2 25 de la figure 2, un algorithme de correction eeereeur directe (FEC) est mis en oeuvre, puis un nouveau test, de vérifi aticn est imple- mente. Comme il s'agit type de correction qu t adapté a des pertes répa s dans la temps, sur l'ereer r;e données, c'est-à-dire s nsemble des bloc te straté- 30 gie de correction d'erreur ne fonctionne pas nécessairement- Si me test est néga ce qa peut signifier que ics pertes de données sont plutôt concentrées et non pas réparties, ou si le e blocs reçus parmi_ correspondant au cas Nue de 35 de rappel des données non reçues WOE blocs est infércenr à K re une erecedure(dite NAK) ncée Cette routine -- pAi.que une communication unicast en sens inverse, entre un des 3041194 dis- lients de réception et un dispositif émetteur, et néc li in* identification des ,dcnnees manquantes. der,. tifiées tistique, renvoie en unicast ou en multicast les données idenle clent comme non reçues suivant un aJgorst.hme sta- un nouveau test de réception correcte réalisé dans le dispositif client test suivant concerne la réception correcte d'une image de référence I à codage interne par paquet ou groupe d'images i. En figure 2, l'image de référence I. est placée en début du paquet, ce est très généralement la place 10 qu'elle occupe dans de cette image I est can- piétement. ou partiellement reçue, est--à-dire dans les cas N°4 et N°5 illustrés en figure 2, les erreurs de ansmiseeon coolietees et qui n'ont pas été résolues dans les, étapes précédentes sont traitées au moyens d'un algorithme de. dissimulation. Les 15 erreurs sont dans ce cas dissimulées au niveau du décodeur vidéo, mais pas corrigées. L'objectif de ce type de routines, qui agit sur les flux de données compressés, est d'atténuer visuellement les erreurs de réception dans les flux vidéo. Dansl'hypothèse inverse, c'est-à-dire s'il n'y a pas de ré-20 ception d'une image de référence à codage interne I dans le groupe d'images ou paquet G, le procédé de, l'invention teste la réception d'une telle image de référence I dans les paquets ou groupes d'images et G+1. Cela correspond au cas N°6 de la, figure 2. Si est le cas, une reconstruction des images déteriorées, peut 25 encore être mise en oeuvre, sur la base a algorithme d'interpe- lation agissant sur les flux vidéo non ciressés, et générant les images manquantes ou les parties d'image manquantes respectivement en utilisant les images immédiatement Précédentes ou suivantes dans la succession d'inages, dans une perspective tempo-30 relie, ou en utilisant les parties de la marne image immédiatement adjacentes à celles qui manquent, dans une perspective spatiale. Lorsqu'aucun de ces traitements successifs ne réussit de manière satisfaisante, le paquet ou groupe d'images n'est pas affiché. 3041194 9 L'invention ne se limite bien entendu pas aux exrnp1e décrits exp1er férreeelle anal±e les ziantes ve:s±ens qua. entrent dans i eentee des revendications. REVENDICATIONS1. Precéde d'amélioration de la fiabilité réception de flux de donnée vidéos sur un rêse régi par des protocoles de coee:nication de type IFl. le flux de données vidéos étant codé sous forme de paquets G comportant chacun K premiers blocs de données et N blocs de redondance pour la correction d'erreur directe C) , ledit flux cemprenant une succession de guets G comportant chacun K4-N blocs étant émis par au moins un dispositif émetteur e voyant en. multicast à des dispositi visualisation clients de type smartphone, prose caractérise par . étapes suivantes, mises en oeuvre par le dispositif client pour chacun des paquets G de données reçues du ou des dispositifs émetteurs : - a/ contrôle de la réception correcte des K premiers blocs ce données, décodage et visualisation du flux vidéo en cas de résultat positif ; b/ en l'absence de réception de la totalité des K premiers blocs de données, et si le nombre total X de blocs K+N reçus est au moins egal à K, décodage au moyen d'un algorithme de correction d'erreur directe (FEC pour retrouver les données manquantes des blocs K, décodage et visualisation du flux vidéo en cas de résultat positif ; - c/ si le nombre total X de blocs K+N reçus est inférieur à K ou en 'absence de résultat positif au décodage vxa l'algorithme de correction derreur directe (FEC), voi par le dispositif clie messaee unicast don- nant à l'émetteur des informati moins sur le ou les blocs perdus ; - d/ si un algorithme statistique du dispositif émetteur organise le renvoi des données manquantes, contrôle de 1a réception correcte des données renvoyées par le dis- positif émetteur selon et b/, décodage et visualisa- tion du flux vidéo en ors de resultst positif. 3041194 édé d'amélioration de la fiabilité et de la qualité de réception de flux de données vidéo sur un réseaulocal sans l'absence de '.:eee don correcte des docceas zen- vryées selon d/ nu en absence de données renvoyées, contrôle -- d'une imaQe de référence à co- dage interne dans le paquet G de données reçue, pu im férence et se rue compi 10 ment, mise en oeuvre d un d.Sorithme de dissimulation d'erreur app lue sus données compressées, g decodge et visualisation du flux. vidéo. 3- Procédé:amélioration de la fiabilité et de la de réception de fins. dedonnees vidéo sur un réseau local sans 15 fil selon la revendication précédente, caractérisee par les étapes suivantes : h/ non recep d'une image de référence à codage erne dans le paonet. G de données reçue, véri- fication de réception d'au moins une image de réfé- 20 rence des paquets précédent suivant G+1, i/ mise en oeuvre d'un procédé cL' irterpolation sur les données non compresseee ou linéaires pour la reconstructiori d'images, puis - j/ décodage visualisation du flux vidéo. 25 4- Procédé d amélioration de la fiabilité et de la qualité de réception de flux de données vidéos sur un réseau local sans fil selon la revendication précéder ractèrisée en ce que, en cas d'incomplétude de receetion. d au soins ne image de férence des paquets précédent G-1 et suivant G+1, le paquet G 30 n'est pas affiché. n la revendication prerédente, caracterise par les e suivantes 35