Brevet FR2926917A1 — publié le 20090731

Procédé de redimensionnement d'un contenu vidéo, terminal et produit programme d'ordinateur correspondant. 1. Domaine de l'invention Le domaine de l'invention est celui des applications de type � RichMédia �, incluant des formes graphiques, du texte, de l'interactivité, des animations et des médias (images et flux audio-visuels), destinées à être restituées sur un terminal utilisateur. Une application de type � Rich Media � intègre différents médias (par exemple du son, de la vidéo, des images numériques), et l'interactivité de cette application est simplifiée par une ergonomie s'appuyant sur l'utilisation d'animations et des médias intégrés. Plus précisément, l'invention concerne l'optimisation de l'affichage des images d'une vidéo dans une telle application � RichMédia �. 2. Art antérieur Généralement, un contenu vidéo référencé dans une application de type � RichMédia � provient d'un serveur de contenu distinct de celui assurant la gestion de l'application � RichMédia �. Ce contenu vidéo est transmis à l'application � RichMédia � dans un format d'origine, sans connaissance préalable du format d'affichage du contenu vidéo dans la présentation "RichMédia" (qui peut notamment être fonction du format de l'écran et/ou d'une requête de l'utilisateur), et donc sans savoir au préalable si le format d'origine est compatible avec des capacités d'affichage de la présentation � RichMédia � sur le terminal utilisateur. Il est donc parfois nécessaire, pour des raisons d'affichage, par exemple en fonction des capacités d'un terminal de restitution, de redimensionner, ou retailler, les images du contenu vidéo d'origine. Il s'agit la plupart du temps d'un � retaillage � homogène, ayant les mêmes facteurs d'échelle dans les deux dimensions. Dans certains cas, les facteurs d'échelle verticaux et horizontaux sont différents, mais les axes de changement d'échelle restent toujours verticaux et horizontaux. Un tel redimensionnement nécessite un grand nombre de calculs, et donc beaucoup de ressources processeur et de ressources mémoire pour effectuer ces calculs. Il doit de plus être réalisé � à la volée �, c'est-à-dire que les dimensions et le contenu (ensemble de pixels à afficher sur l'écran) de chaque image du contenu vidéo sont calculés en temps réel, et en même temps que d'autres opérations temps réel telles que la composition du contenu � RichMedia � dans son intégralité. On présente, en relation avec la figure 1, les étapes classiquement effectuées dans un terminal pour le redimensionnement d'un contenu vidéo composé d'une pluralité d'images dites � images bitmap �. Une première étape consiste en l'émission d'une requête d'affichage de l'image (100) et la réception d'une image correspondante, fournie par un serveur de contenus. Cette requête entraîne la comparaison des dimensions de l'image reçue du serveur de contenus avec les dimensions que doit avoir l'image à afficher et aboutit à un calcul (101) de coefficients de dimensionnement, selon un procédé qui est détaillé par la suite (figure 2). Il s'en suit le redimensionnement (102) de l'image en tant que tel et l'affichage (103) de l'image. Ces étapes 101 à 103 sont répétées pour chaque image d'une séquence vidéo. On présente maintenant, en relation avec la figure 2, les étapes du calcul des coefficients de dimensionnement, qui sont utilisés pour redimensionner 20 l'image, dans un exemple de redimensionnement bilinéaire. Le principe de ce redimensionnement bilinéaire repose sur un calcul de point moyen (P5) à partir de quatre points (Pl, P2, P3, P4), qui sont eux même les résultats de calculs effectués à partir de quatre points d'origine Pol, P02, P03, PO4. 25 On a donc les données d'origine suivantes : - Pol de coordonnées (xn, yn) ; - P02 de coordonnées (xn+1, yn) ; - P03 de coordonnées (xn+i, yn+i) ; - PO4 de coordonnées ()cn, yn+i). 30 La valeur interpolée du point P5 est ainsi déterminée en deux étapes : - deux points temporaires (Pl et P2) sont interpolés suivant l'axe des abscisses : - Pl de coordonnées (xpi, yn) ; - P2 de coordonnées (xp2, yn+1). - le point à interpoler (P5) est obtenu à partir de ces deux points temporaires. Dans le cas d'une image en couleur, les couleurs interpolées sont obtenues en proportionnant les couleurs de base (rouge, bleu et vert) suivant les distances entre le point interpolé et ses valeurs de référence. Pour la première étape, la formule suivante est appliquée : Rouge] = (xn+1 - xpl) x Rouge(xii+1) + (xpl xn) x Rouge(xn ) (x n+1 - x n) (xn+1 ûx,) La valeur � Rouge] � obtenue correspond à un coefficient de dimensionnement pour le point P5 dans la valeur rouge. La même formule est appliquée pour le vert et le bleu. Pour la deuxième étape, cette même formule est également appliquée pour les trois couleurs, mais suivant l'axe des ordonnées. Il existe donc des coefficients de dimensionnement qui sont utilisés pour obtenir les couleurs à un point donné : Couleur y = Coeffi * Couleur + Coeff2 * Couleur Xn Couleur x= Coeffi * Couleur yn+i + Coeff2 * Couleur yn Ces coefficients sont calculés à partir de la formule précédemment décrite et ne dépendent pas de la couleur. Pour un seul point P5 à interpoler, on a donc dû réaliser le calcul de quatre coefficients de dimensionnement. On comprend alors que le redimensionnement d'une image soit consommateur de mémoire et de puissance de calcul, car ces opérations doivent être effectuée pour chaque point de l'image et pour chaque image du contenu vidéo. 3. Objectifs de l'invention L'invention a notamment pour objectif de pallier ces inconvénients de l'art antérieur. Plus précisément, un objectif de l'invention, selon au moins un mode de réalisation, est de proposer une technique de redimensionnement d'un contenu vidéo composé d'une pluralité d'images, optimisant les ressources mémoire et les ressources processeur nécessaires au calcul du redimensionnement. Un autre objectif est d'obtenir une technique de redimensionnement rapide. Encore un autre objectif de l'invention, selon au moins un mode de réalisation, est de proposer une telle technique qui soit simple et peu coûteuse à mettre en oeuvre et qui présente des performances identiques ou similaires en termes de qualité de restitution pour les images redimensionnées. 4. Exposé de l'invention L'invention propose une solution nouvelle qui ne présente pas l'ensemble de ces inconvénients de l'art antérieur, sous la forme d'un procédé de 15 redimensionnement d'un contenu vidéo comprenant une pluralité d'images source, référencé dans un contenu de type RichMédia. Selon l'invention, un tel procédé comprend les étapes suivantes : - obtention et mémorisation d'un ensemble d'au moins un coefficient de redimensionnement pour une image de ladite pluralité d'images source ; 20 - redimensionnement d'une série desdites images source à partir dudit ensemble de coefficients de redimensionnement mémorisé, délivrant des images de destination. Ainsi, l'invention repose sur une approche nouvelle et inventive du redimensionnement d'un contenu vidéo, en mémorisant des coefficients de 25 redimensionnement pour les utiliser pour plusieurs images du contenu, au lieu de les recalculer pour chaque image à redimensionner. Ainsi, l'invention permet d'utiliser, pour la pluralité d'image source du contenu vidéo, ou au moins pour une série d'images source du contenu vidéo, des coefficients de redimensionnement qui ont été préalablement calculés et 30 mémorisés pour être utilisés de manière constante. On réduit ainsi de manière drastique les ressources nécessaires au dimensionnement du contenu vidéo puisque les coefficients ne sont calculés qu'une seule et même fois et réutilisés pour de nombreux calculs au sein d'une image puis au sein des images successives. L'invention va à contre courant des réflexes de l'homme du métier en la matière puisque ce dernier ne songerait pas, pour préserver la qualité du rendu du contenu vidéo, à utiliser les mêmes coefficients pour tout le contenu. En effet, une telle utilisation serait susceptible, à ses yeux, de dégrader le rendu de la vidéo. Selon une caractéristique particulière de l'invention, une série d'images source est constituée d'images présentant toutes les mêmes dimensions, de façon que ledit ensemble de coefficients de redimensionnement puisse être appliqué à chacune des images de ladite série. Ainsi, l'invention permet d'optimiser le redimensionnement des images d'un contenu vidéo présentant les mêmes dimensions, c'est-à-dire auxquelles le même redimensionnement peut être appliqué. Selon différents modes de réalisation, une série d'images source peut être définie par une information d'appartenance à une série, information pouvant être transmise en même temps que les images. Par exemple, une information peut être transmise en même temps que le contenu vidéo, indiquant que les n premières images du contenu présentent les mêmes dimensions, puis que les p images suivantes présentent les mêmes dimensions, distinctes des dimensions de la série précédente etc... Ou encore, le procédé selon l'invention peut vérifier pour chaque image source reçue que ses dimensions sont identiques à celles de la première image d'une série, ou identiques à celles de l'image précédente. Selon un mode de réalisation, le procédé selon l'invention comprend une 25 étape de contrôle d'appartenance à une série d'images source en cours, pour une image source courante, et les étapes suivantes : - obtention d'une information représentative des dimensions de ladite image source, dite information de dimensions source ; - obtention d'une information représentative des dimensions de ladite image 30 de destination, dite information de dimensions de destination ; - comparaison desdites informations de dimensions source et de destination avec une information de dimensions source et une information de dimensions de destination d'une image précédant ladite image courante. Ainsi, l'invention permet de vérifier si une image appartenant à une série d'image source, c'est-à-dire une série d'image présentant les mêmes dimensions, peut être redimensionnée de la même façon que l'image la précédant. Pour ce faire, le procédé selon l'invention vérifie que les dimensions souhaitées pour l'image de destination issue de l'image source sont les mêmes que les dimensions de l'image de destination précédemment obtenue. Ces informations de dimension peuvent par exemple provenir du contenu vidéo lui-même, transmises avec chaque image, ou alors être calculées par le terminal de restitution du contenu au fur et à mesure de la réception des images. Selon une caractéristique particulière de l'invention, l'étape de comparaison délivre un indicateur de changement de redimensionnement, négatif si les résultats desdites comparaisons indiquent que le redimensionnement à appliquer est le même que celui appliqué à l'image précédent, et positif sinon, et l'étape de redimensionnement comprend les sous-étapes suivantes : - lorsque ledit indicateur de redimensionnement est négatif : - redimensionnement de ladite image source courante à partir dudit ensemble d'au moins un coefficient de redimensionnement précédemment mémorisé ; - lorsque ledit indicateur de changement de redimensionnement est positif : - obtention et mémorisation d'un nouvel ensemble d'au moins un coefficient de redimensionnement pour ladite image source courante ; -redimensionnement d'une nouvelle série desdites images source à partir dudit nouvel ensemble de coefficients de redimensionnement mémorisé, délivrant des images de destination. Ainsi, l'invention permet de prendre en compte, pour une image courante, un redimensionnement différent de celui appliqué à l'image précédente. Ce nouveau redimensionnement intervient quand l'image de destination issue de l'image courante n'a pas les mêmes dimensions que l'image de destination obtenue pour l'image précédente. Ainsi, quand les dimensions de l'image de destination évoluent, du fait par exemple du redimensionnement d'une fenêtre souhaité par l'utilisateur, le procédé de l'invention permet de prendre en compte cet évènement pour délivrer un indicateur de changement de redimensionnement, c'est-à-dire une information selon laquelle les coefficients précédemment mémorisés ne peuvent plus être utilisés et qu'il est nécessaire de procéder au calcul de nouveaux coefficients. En particulier, ledit ensemble de coefficients comprend un premier sous-ensemble de coefficients de redimensionnement associés respectivement à chacun des pixels d'une ligne d'une image source et un deuxième sous-ensemble de coefficients de redimensionnement associés respectivement à chacun des pixels d'une colonne d'une image source. Ainsi, les coefficients de redimensionnement sont calculés pour la première ligne et la première colonne d'une image source, chaque pixel d'une image de destination étant associé à quatre coefficients, deux coefficients pour l'axe des abscisses et deux coefficients pour l'axe des ordonnées. Le calcul des coefficients de redimensionnement est donc là encore optimisé pour une image, chaque coefficient n'étant pas recalculé pour les pixels d'une même ligne, respectivement d'une même colonne. Selon un mode de réalisation particulier de l'invention, lesdits coefficients de redimensionnement sont calculés pour chaque première image de chaque série. Ainsi, l'invention permet d'optimiser le calcul de redimensionnement des images d'un contenu vidéo, en ne calculant qu'une seule fois ces coefficients pour des images présentant les mêmes dimensions. Le calcul est fait pour la première image d'une série, et valable pour toutes les images de la série. En particulier, ledit calcul des coefficients de redimensionnement 30 correspond à une détermination d'un pixel moyen à partir de quatre pixels de ladite image source. Selon un aspect particulier de l'invention, les mêmes coefficients sont appliqués à chaque information de couleur desdits pixels. Ainsi, l'invention utilise le principe du redimensionnement bilinéaire pour 5 calculer les coefficients de redimensionnement, et ce pour chaque composante de couleur de chaque pixel. L'invention concerne également un terminal mobile, apte à restituer un contenu de type RichMédia, référençant un contenu vidéo comprenant une pluralité d'images source. 10 Selon l'invention, un tel terminal comprend : - des moyens d'obtention et de mémorisation d'un ensemble d'au moins un coefficient de redimensionnement pour une image de ladite pluralité d'images source ; - des moyens de redimensionnement d'une série desdites images source à 15 partir dudit ensemble de coefficients de redimensionnement mémorisé, délivrant des images de destination. Un autre aspect de l'invention concerne un produit programme d'ordinateur téléchargeable depuis un réseau de communication et/ou enregistré sur un support lisible par ordinateur et/ou exécutable par un processeur, 20 comprenant des instructions de code de programme pour la mise en oeuvre du procédé de redimensionnement décrit précédemment. 5. Liste des figures D'autres caractéristiques et avantages de l'invention apparaîtront plus clairement à la lecture de la description suivante d'un mode de réalisation 25 particulier, donné à titre de simple exemple illustratif et non limitatif, et des dessins annexés, parmi lesquels : - la figure 1, déjà commentée en préambule, est un diagramme de blocs illustrant le procédé de redimensionnement bilinéaire d'un contenu vidéo selon l'art antérieur ; 30 - la figure 2, également commentée en préambule, illustre la méthode de redimensionnement bilinéaire de l'art antérieur ; - la figure 3 illustre le procédé de redimensionnement selon l'invention. 6. Description d'un mode de réalisation de l'invention Le principe général de l'invention repose sur la mémorisation des coefficients de redimensionnement. Ainsi, le calcul des images redimensionnées est beaucoup moins consommateur de ressources car il est réalisé en utilisant des coefficients � récurrents � qui ne sont pas recalculés pour chaque image, mais uniquement pour la première (sauf en cas de modification du format en cours de restitution). En effet, les dimensions d'un contenu RichMedia qui joue une vidéo ne sont généralement pas modifiées durant son affichage. Il est donc possible de calculer des coefficients de redimensionnement une seule fois à la première image de la vidéo, de les mémoriser (par exemple dans des tables) pour s'en servir pour les images suivantes. Ces coefficients peuvent notamment être mémorisés dans le moteur de rendu. Dans un mode de réalisation de l'invention, le calcul des nouvelles dimensions de l'image peut être basé sur le principe de l'interpolation bilinéaire. L'interpolation bilinéaire consiste à utiliser les quatre points (points source) les plus proches des cordonnées calculées dans l'image source (point de destination) en les pondérant par des coefficients inversement proportionnels à la distance entre ce point de destination et ces points source, et dont la somme vaut un. Le principe général de l'invention n'est cependant nullement limité à cette méthode d'interpolation bilinéaire et peut être mis en oeuvre avec toutes les méthodes de redimensionnement qui utilisent des coefficients pour calculer une image de destination à partir d'une image source. On présente, en relation avec la figure 3, un mode de réalisation du procédé de l'invention. A la réception d'une requête pour l'affichage de la première image d'un 30 contenu vidéo référencé dans le contenu RichMédia, le procédé selon l'invention calcule, lors d'une étape 300, un ensemble de coefficients de redimensionnement, applicable à cette première image, et applicable ensuite à toutes les images appartenant à une même série, c'est-à-dire à toutes les images présentant les mêmes dimensions que cette première image. Dans une variante de ce mode de réalisation où le redimensionnement est homogène, sur les quatre coefficients décrits au paragraphe 2, deux coefficients sont utilisés dans une première sous-étape (correspondant à la première étape décrite au paragraphe 2) et sont calculés sur la base des abscisses (ou coordonnées horizontales) des points Pl, P2 et Pol, Po2, Po3 et Po4. Deux coefficient sont utilisés dans une deuxième sous-étape (correspondant à la deuxième étape décrite au paragraphe 2) et sont calculés sur la base des ordonnées (ou coordonnées verticales) des points Pl, P2 et P5. Les deux coefficients de la première sous-étape sont en fait communs avec toute la colonne des points ayant une même abscisse. Les deux coefficients de la seconde sous-étape sont communs avec toute la ligne des points ayant une même ordonnée. Il y a donc des coefficients horizontaux différents pour une ligne de points, et des coefficients verticaux différents pour une colonne de points, et non des coefficients différents pour tous les points de la première image. Cette optimisation est aussi utilisable quand le redimensionnement n'est 20 pas homogène, mais décomposé en un redimensionnement horizontal suivi d'un redimensionnement vertical. Lors de cette même étape 300, cet ensemble de coefficients est mémorisé de façon à être accessible par le moteur de rendu, chargé notamment de l'affichage de la vidéo redimmensionnée. 25 Ensuite, à la réception d'une requête d'affichage pour chaque nouvelle image du contenu vidéo, le procédé selon l'invention compare, lors d'une étape 301, les dimensions de l'image courante avec les dimensions de l'image précédente. Dans un premier temps, les dimensions de l'image courante reçue du 30 serveur de contenu vidéo sont comparées avec les dimensions de l'image précédente reçue, de façon à déterminer si l'image courante appartient à la même série que l'image précédente, et si, par conséquent, l'ensemble de coefficients précédemment calculé et mémorisé est susceptible d'être applicable à l'image courante. Ensuite, les dimensions de l'image de destination issue de l'image courante, sont comparées avec celles de l'image précédente affichée. Cette comparaison délivre un indicateur de changement de redimensionnement, noté I, à appliquer, négatif si le redimensionnement à appliquer est le même qu'à l'image précédente (c'est-à-dire que ni les caractéristiques des images source, ni celles des images de destination n'ont changées), et positif sinon. Lors d'une étape 302, le procédé selon l'invention teste si l'indicateur I est positif ou négatif. Si l'indicateur I est négatif, les coefficients de redimensionnement précédemment mémorisés sont utilisés pour le redimensionnement de l'image courante, lors d'une étape 3020. Ainsi, dans ce cas, aucun calcul de coefficient de redimensionnement n'est effectué pour le redimensionnement de l'image courante. Ensuite, l'image redimensionnée est affichée lors d'une étape 303. Si l'indicateur I est positif, un nouvel ensemble de coefficients de redimensionnement est calculé, et mémorisé pour les éventuelles images suivantes, lors d'une étape 3021. Ces coefficients sont appliqués à l'image courante pour la redimensionner, lors d'une étape 3022, délivrant une image redimensionnée, affichée lors d'une étape 303. Ainsi, les coefficients n'ont pas besoin d'être recalculés à chaque image. En pratique donc, pour la première image composant le contenu vidéo, les coefficients n'étant en général pas disponibles, l'indicateur de changement de redimensionnement est positif par défaut, et un premier ensemble de coefficients est calculé et mémorisé, comme décrit ci-dessus. Il peut néanmoins être envisagé, par exemple dans le cas où le contenu vidéo est � rejoué � au sein de l'application � RichMedia � que ces coefficients aient déjà été calculés lors de la première. Dans ce cas, ces coefficients peuvent ne pas être calculés à nouveau pour la première image. Il est également possible que les dimensions d'origine d'un deuxième contenu vidéo à jouer dans l'application � RichMedia � soient identiques aux dimensions d'origine d'un premier contenu vidéo déjà diffusé. Dans ce cas, les coefficients pourront ne pas être recalculés. Un tel cas peut se présenter lorsque les contenus vidéo sont standardisés et/ou issus d'un même type de source (une caméra standard qui produit des vidéos en format 720*480 par exemple). REVENDICATIONS 1. Procédé de redimensionnement d'un contenu vidéo comprenant une pluralité d'images source, référencé dans un contenu de type RichMédia, caractérisé en ce qu'il comprend les étapes suivantes : - obtention et mémorisation d'un ensemble d'au moins un coefficient de redimensionnement pour une image de ladite pluralité d'images source ; - redimensionnement d'une série desdites images source à partir dudit ensemble de coefficients de redimensionnement mémorisé, délivrant des images de destination. 2. Procédé de redimensionnement selon la revendication 1, caractérisé en ce qu'une série d'images source est constituée d'images présentant toutes les mêmes dimensions, de façon que ledit ensemble de coefficients de redimensionnement puisse être appliqué à chacune des images de ladite série. 3. Procédé de redimensionnement selon l'une quelconque des revendications 1 et 2, caractérisé en ce qu'il comprend une étape de contrôle d'appartenance à une série d'images source en cours, pour une image source courante, ledit procédé comprenant les étapes suivantes : - obtention d'une information représentative des dimensions de ladite image source, dite information de dimensions source ; - obtention d'une information représentative des dimensions de ladite image de destination, dite information de dimensions de destination ; - comparaison desdites informations de dimensions source et de destination avec une information de dimensions source et une information de dimensions de destination d'une image précédant ladite image courante. 4. Procédé de redimensionnement selon la revendication 3, caractérisé en ce que ladite étape de comparaison délivre un indicateur de changement de redimensionnement, négatif si les résultats desdites comparaisons indiquent que le redimensionnement à appliquer est le même que celui appliqué à l'image précédent, et positif sinon, et en ce que ladite étape de redimensionnement comprend les sous-étapessuivantes : - lorsque ledit indicateur de redimensionnement est négatif : - redimensionnement de ladite image source courante à partir dudit ensemble d'au moins un coefficient de redimensionnement précédemment mémorisé ; - lorsque ledit indicateur de changement de redimensionnement est positif : - obtention et mémorisation d'un nouvel ensemble d'au moins un coefficient de redimensionnement pour ladite image source courante ; - redimensionnement d'une nouvelle série desdites images source à partir dudit nouvel ensemble de coefficients de redimensionnement mémorisé, délivrant des images de destination. 5. Procédé de redimensionnement selon l'une quelconque des revendications 1 à 4, caractérisé en ce que ledit ensemble de coefficients comprend un premier sous-ensemble de coefficients de redimensionnement associés respectivement à chacun des pixels d'une ligne d'une image source et un deuxième sous-ensemble de coefficients de redimensionnement associés respectivement à chacun des pixels d'une colonne d'une image source. 6. Procédé de redimensionnement selon l'une quelconque des revendications 1 à 5, caractérisé en ce que lesdits coefficients de redimensionnement sont calculés pour chaque première image de chaque série. 7. Procédé de redimensionnement selon la revendication 6, caractérisé en ce que ledit calcul des coefficients de redimensionnement correspond à une détermination d'un pixel moyen à partir de quatre pixels de ladite image source. 8. Procédé de redimensionnement selon l'une quelconque des revendications 1 à 7, caractérisé en ce que les mêmes coefficients sont appliqués à chaque information de couleur desdits pixels. 9. Terminal mobile, apte à restituer un contenu de type RichMédia, 30 référençant un contenu vidéo comprenant une pluralité d'images source,caractérisé en ce qu'il comprend : des moyens d'obtention et de mémorisation d'un ensemble d'au moins un coefficient de redimensionnement pour une image de ladite pluralité d'images source ; - des moyens de redimensionnement d'une série desdites images source à partir dudit ensemble de coefficients de redimensionnement mémorisé, délivrant des images de destination. 10. Produit programme d'ordinateur téléchargeable depuis un réseau de communication et/ou enregistré sur un support lisible par ordinateur et/ou exécutable par un processeur, caractérisé en ce qu'il comprend des instructions de code de programme pour la mise en oeuvre du procédé de redimensionnement selon l'une au moins des revendications 1 à 8.15