Note : Les descriptions sont présentées dans la langue officielle dans laquelle elles ont été soumises.
CA 02379606 2002-O1-14
WO 01/06514 PCT/FR00/02029
Dispositif permettant de se diriger de façon interactive et fluide
dans un film numérique compressé et logiciel gérant ce dispositif
La présente invention est relative à un dispositif permettant de se diriger de
façon interactive et fluide dans un film numérique compressé ainsi qu'à un
logiciel
pour sa mise en oeuvre.
Actuellement, on utilise de plus en plus souvent des films pour présenter par
exemple un appartement, un voyage touristique ou faire une démonstration de ma-
tériel. Pour cela, on met généralement en oeuvre un appareil d'affichage vidéo
tel
que, par exemple, une télévision ou un moniteur d'ordinateur, mais un
spectateur
ou utilisateur ou utilisateur ne peut intervenir sur le déroulement des
images.
Or, il apparaît que, de plus en plus souvent, l'utilisateur souhaite pouvoir
agir
1o sur le déroulement d'un tel film soit en en modifiant la vitesse de
défilement pour lui
permettre d'accélérer ou de ralentir la succession des images, c'est à dire
d'avancer dans le film à la cadence qu'il souhaite et en toute fluidité, soit
en lui
conférant la possibilité d'opter pour des choix directionnels dans le film.
Ainsi, dans le cas de la visite d'un appartement, il s'agit de laisser à un
utili-
sateur la possibilité de voir une pièce déterminée avant la salle à manger ou
de
retourner dans la chambre avant d'aller dans la cuisine.
Dans le cas plus général de la visite d'un site, il s'agit de permettre à un
uti-
lisateur de choisir sa direction à certaines intersections : à titre
d'exemple, d'aller
tout droit, à gauche ou à droite.
Par ailleurs, dans les salles de gymnastique, il peut être approprié
d'afficher
devant un utilisateur d'un appareil de cardio-training (bicyclettes, tapis,
rameur,
steppeur, etc.), un parcours en forêt ou en campagne par exemple, afin de le
moti-
ver dans son effort.
Aussi un des buts de la présente invention est-il de fournir un dispositif
pour
se diriger de façon interactive dans un film, qui permet à un utilisateur de
modifier
comme bon lui semble la vitesse de déroulement de la succession des images
d'un
film.
Un autre but de l'invention est de fournir un tel dispositif qui permet
plusieurs
visionnages d'un même film sans que la succession des images soit toujours
iden-
tique.
Ces buts, ainsi que d'autres qui apparaîtront par la suite, sont atteints par
un dispositif permettant de se diriger de façon interactive et fluide dans un
film nu-
mérique compressé, comprenant un ordinateur muni d'une sortie son, d'une
sortie
vidéo, toutes deux reliées à un système de visualisation, ainsi que d'une
entrée
CA 02379606 2002-O1-14
7
WO 01/06514 PCT/FR00/02029
reliée à un moyen pour contrôler la direction en série avec un moyen pour
contrôler
la vitesse de déroulemént d'un tel film, lequel dispositif est caractérisé,
selon la
présente invention, par le fait que le moyen pour contrôler la direction
consiste en
un certain nombre de boutons correspondant chacun à une direction dans
l'espace,
chacun d'eux permettant à l'ordinateur de traiter la direction choisie par un
utilisateur.
De préférence, le moyen pour contrôler la vitesse est une manette dont le
maniement par l'utilisateur permet de faire défiler le film à une vitesse
variable.
Avantageusement, le moyen pour contrôler la vitesse est un capteur de vi-
tesse directement relié à un appareil de cardio-training.
Selon une première variante de réalisation, le capteur de vitesse comporte
une roulette qui est en contact avec la partie mobile de l'appareil de cardio-
training
et qui transmet sa vitesse de rotation à une roue dentée située entre un
émetteur
infrarouge et un récepteur infrarouge.
Selon une deuxième variante de réalisation, le capteur de vitesse comporte
un aimant qui passe à intervalle régulier en face d'une bobine à induction
fournis-
sant une information à l'ordinateur qui en déduit la vitesse.
Selon une troisième variante de réalisation, le capteur de vitesse comporte
un capteur optique coopérant avec la partie mobile de l'appareil de cardio-
training.
2o La présente invention est également relative à un programme ou logiciel qui
est caractérisé par le fait qu'il comprend une étape d'acquisition de la
vitesse et de
la direction souhaitées par un utilisateur, une première succession d'étapes
pour
déterminer la vitesse de défilement des images et simultanément une seconde
suc-
cession d'étapes pour déterminer le cheminement à partir de la vitesse et de
la
direction souhaitées, et une étape d'affichage de la succession d'images ainsi
dé-
terminées.
De préférence, on utilise un fichier de configuration contenant les
informations suivantes
nom du fichier numérique à ouvrir correspondant au parcours filmé,
- informations sur la nature de ce parcours et des embranchements, ainsi
que sur les choix possibles de direction,
- vitesse à laquelle a été tourné le film,
- récupération des informations relatives au type de capteur de vitesse uti-
lisé.
CA 02379606 2002-O1-14
3
WO 01/06514 PCT/FR00/02029
Avantageusement, on calcule la vitesse instantanée d'un utilisateur comme
la moyenne des n vitesses moyennes Vi précédentes.
De préférence, à partir des informations connues de la vitesse de
déplacement de la caméra lors du tournage du film et du nombre d'images par
seconde de la caméra lors du tournage du film, on détermine, en fonction de la
vitesse que l'on cherche à simuler, le saut S correspondant au nombre d'images
à
sauter en chaque image affichée et le temps T correspondant à l'intervalle de
temps entre deux images affichées.
Avantageusement, on affiche en surimpression sur le film, quelques
1o secondes avant chaque intersection du parcours filmé, des flèches pour
indiquer les
directions à choisir.
La description qui va suivre, et qui ne présente aucun caractère limitatif,
doit
être lue en regard des figures annexées, parmi lesquelles
- la figure 1 représente un synoptique d'un dispositif pour se diriger de
façon
interactive dans un film selon la présente invention ;
- la figure 2 représente un ordinogramme du logiciel pour mettre en oeuvre le
dispositif selon la figure 1 ; et,
- la figure 3 est un exemple de schéma directionnel pour un parcours ou
cheminement.
Un dispositif pour se diriger de façon interactive dans un film numérique
compressé selon la présente invention comprend, comme représenté à la figure
1,
un ordinateur 1 muni, d'une part, d'une sortie son 2 et d'une sortie vidéo 3,
toutes
deux reliées à un système de visualisation 4, et, d'autre part, d'une entrée 5
reliée à
un moyen pour contrôler la direction 6 en série avec un moyen pour contrôler
la
vitesse 7 de déroulement d'un film affiché.
Le système de visualisation 4 est, par exemple, un écran de télévision, un
moniteur d'ordinateur, un écran à plasma ou à cristaux liquides, et plus
générale-
ment tout système de restitution d'images qui permet d'afficher les images
d'un film,
par exemple tourné en extérieur, en facilitant l'immersion visuelle d'un
utilisateur.
3o L'ordinateur 1 est muni d'un système de codage-décodage dit « CODEC »
pour la décompression d'images numériques. Le « CODEC » est choisi notamment
parmi les systèmes connus tel que le MJPEG (Motion Joint Picture Expert
Group),
le MPEG (Motion Picture Expert Group).
CA 02379606 2002-O1-14
4
WO 01/06514 PCT/FR00/02029
Ces différents « CODEC » peuvent être utilisés avec ou non une accéléra-
tion matérielle. Dans la pratique, on utilise pour la décompression d'images,
en gé-
néral soit un processeur généraliste très puissant, soit une carte spécifique
dédiée
à la décompression d'images.
L'ordinateur 1 doit également permettre le stockage du film numérique. En
particulier les supports suivants sont utilisables : disque dur, disque
optique
compact (CD-Rom), vidéodisque numérique (DVD).
C~uant au moyen pour contrôler la direction 6, il peut consister en un certain
nombre de boutons ou manettes correspondant chacun à une direction dans
l'espace. Le nombre minimal de boutons est de trois : un bouton « à gauche »,
un
bouton « à droite » et un bouton « tout droit ». La pression sur un de ces
boutons
permet à l'ordinateur 1 de mémoriser la direction choisie par l'utilisateur.
Ainsi, quelques secondes avant chaque intersection du parcours filmé,
l'ordinateur commande l'affichage en surimpression du film de flèches pour
informer
l'utilisateur qu'il va devoir choisir une direction pour continuer sa
progression : il y a
autant de flèches affichées que de direction possible et celles-ci sont
orientées
selon la direction qu'elles indiquent.
Le moyen pour contrôler la vitesse 7 est une manette dont le maniement par
un utilisateur permet de faire défiler le film à une vitesse variable que
celui-ci dé-
2o termine directement ou indirectement.
II peut aussi s'agir d'un capteur de vitesse directement relié à un appareil
de
cardio-training.
Selon une première variante de réalisation, ce capteur de vitesse comporte
une roulette qui est en contact avec la partie mobile de l'appareil de cardio-
training
et qui transmet sa vitesse de rotation à une roue dentée située entre un
émetteur
infrarouge et un récepteur infrarouge. Un tel capteur peut être dénommé
capteur à
roulette.
Selon une deuxième variante de réalisation, ce capteur de vitesse comporte
un aimant qui passe à intervalle régulier en face d'une bobine à induction
fournis-
3o sant une information à l'ordinateur 1 qui en déduit la vitesse. Un tel
capteur peut
être dénommé capteur magnétique.
Selon une troisième variante de réalisation, ce capteur de vitesse comporte
un capteur optique qui coopère avec la partie mobile de l'appareil de cardio-
training : par exemple, cette partie mobile peut être constituée par un tapis
CA 02379606 2002-O1-14
WO 01/06514 PCT/FR00/02029
comportant des traits qui sont disposés à intervalles réguliers et qui seront
lus par le
capteur optique.
L'ordinateur 1 comprend un logiciel qui charge le film sélectionné par un uti
lisateur, reçoit les informations émises par le capteur de vitesse 7, gère le
dialogue
5 avec l'utilisateur en affichant les images du film à la bonne vitesse et
selon les choix
directionnels de l'utilisateur. Ce logiciel doit avoir un comportement temps
réel pour
ne pas engendrer de saccades d'images qui seraient déplaisantes à l'oeil : la
vi-
tesse d'avancement simulée doit donc être la plus fluide possible.
Ce logiciel, dont la figure 2 représente l'ordinogramme, utilise un fichier de
1o configuration contenant les informations suivantes
- nom du fichier numérique à ouvrir correspondant au parcours filmé,
- informations sur la nature de ce parcours et des embranchements, ainsi
que sur les choix possibles de direction,
- vitesse à laquelle a été tourné le film,
- récupération des informations relatives au type de capteur de vitesse uti-
lisé
- caractéristiques de la manette (cas de la manette),
- rayon de la roulette du capteur de vitesse (cas du capteur à rou-
lette),
- caractéristiques du capteur magnétique (cas du capteur magnéti-
que),
L'ordinateur 1 doit mémoriser l'information d'une vitesse instantanée au
moyen d'un des trois capteurs ci-dessus. Selon un mode de réalisation préféré
de
la présente invention, le capteur consiste en une roulette dont l'axe de
rotation est
couplé à de l'électronique provenant d'une souris du commerce. La rotation de
la
roulette entraîne une rotation du pointeur selon l'axe des X. Pour ce mode de
réali-
sation préféré, la vitesse instantanée Vi est calculée par la méthode décrite
ci-
dessous.
On supposera que
- R est le rayon de la roulette.
- nb-pixels est le nombre de pixels parcourus par le curseur souris depuis
le cycle précédent.
CA 02379606 2002-O1-14
6
WO 01/06514 PCT/FR00/02029
- nb_pixels_pour un tour est le nombre de pixels parcourus pour un tour
complet de la roulette.
- T est le temps de cycle.
- nb radians est le nombre de radians parcourus par la roulette au cours du
temps T.
Dans ces conditions, la vitesse instantanée est déterminée au moyen de la for-
mule suivante : Vi = (nb radians x R) / T, car l'abscisse curviligne vaut (nb
radians
x R) et
avec : nb_radians = (nb_pixels x 2 n) / (nb_pixels-pour un tour).
1o La vitesse instantanée de l'utilisateur est donc
Vi = (nb_pixels x 2 nR) / (nb_pixels_pour un tour x T)
Cette vitesse instantanée Vi, qui peut également provenir d'une des autres
techniques de capture de vitesse décrites plus haut, est mémorisée et on
détermine
une vitesse moyenne avec les n vitesses instantanées précédentes : on obtient
ainsi un filtrage passe-bas de la vitesse instantanée (dans la pratique n est
égal à 5,
ce qui donne un compromis très satisfaisant filtrage/temps de réponse).
Comme déjà mentionné, l'ordinateur 1 comprend un « CODEC » de décom-
pression vidéo. Cette technologie offre en particulier les trois avantages ci-
après
- temps de décompression moyen d'une image quasi-constant,
- accès indexé à n'importe quelle image du film,
- possibilité d'afficher des images à une cadence supérieure au standard de té-
lévision : dans la pratique, on peut monter à 50 images/seconde.
Pour créer une vitesse de défilement ou de déroulement variable, on joue sur
les deux paramètres suivants
- T : temps entre l'affichage consécutif de deux images successives du par-
cours,
- S : nombre d'images à sauter entre chaque image affichée.
Pour calculer le temps T, on supposera que
- dt film est l'intervalle de temps entre deux images lors du tournage
3o du film,
- v film est la vitesse à laquelle a été tourné le film,
- v est la vitesse que l'on cherche à simuler.
CA 02379606 2002-O1-14
7
WO 01/06514 PCT/FR00/02029
Dans un premier temps, on considère que S = 1, c'est-à-dire que l'on veut
simuler une vitesse sans faire de saut d'images dans le film.
On a donc la succession d'équations suivantes
v = dx / T dans laquelle dx est un déplacement élémentaire,
v film = (dx film / dt film), mais dx film est égal à dx puisque le
déplacement élé-
mentaire est le même si l'on ne saute pas d'image (S=1).
En conséquence : dx = v film x dt film et v = (v film x dt film) / T, d'où la
valeur de T
T = (v film x dt film) / v
Dans la pratique, avec une caméra au standard CCIR (Comité Consultatif
International de la Radiotélévision), la valeur dt film est de 40
millisecondes (ms).
Mais cette formule donnant T n'est pas très satisfaisante, car si v augmente
fortement par rapport à v film, alors T diminue fortement comme cela est le
cas
lorsque l'on veut simuler une vitesse de 80 km/h alors que le film a été
tourné à 5
km/h.
II existe donc un seuil T SEUIL en dessous duquel on ne peut plus diminuer
T. Dans la pratique, T SEUIL est d'environ 10 ms.
Pour néanmoins simuler de très grandes vitesses, on saute des images par
rapport au film initial. On utilise pour cela un algorithme récursif (présenté
ci-
dessous sous forme DESCARTES) pour calculer le saut S et le temps T
INITIALISATION : S = 1, T INITIAL = T (calculé par la formule précédente).
TANT QUE (T < T SEUIL)
FAIRE
S=S+1
T = T_INITIAL x S
FIN FAIRE
FIN TANT QUE
Le calcul de l'index de la prochaine image à afficher débute par une phase
d'initialisation.
Le logiciel mémorise la logique du parcours, ainsi que l'ordre dans lequel
sont stockés les « bouts de parcours » à l'intérieur du fichier. En outre, le
logiciel
doit aussi mémoriser, pour chaque « bout de parcours », le nombre d'images qui
le
composent, ainsi que l'index de l'image de départ dans le fichier total.
Ainsi, chaque
CA 02379606 2002-O1-14
8
WO 01/06514 PCT/FR00/02029
image du film numérisé est affectée d'un index correspondant à la position de
l'image dans ce film.
Afin d'expliquer au mieux le traitement du choix directionnel par le logiciel,
il
convient de prendre l'exemple simple représenté à la figure 3.
Selon cet exemple, le parcours filmé comprend 5 « bouts de parcours >~
dont, le logiciel, lors de la phase d'initialisation, mémorise la logique, à
savoir
P1 vers P4 : à gauche
P2 vers P5 : tout droit
P2 vers P3 : à droite
i0 P3 vers P2 : à droite
P3 vers P1 : tout droit
P4 vers P2 : tout droit
P4 vers P1 : à gauche
P5 vers P4 : à droite
De plus, lors de la phase d'initialisation, le logiciel mémorise l'ordre dans
lequel sont stockés les «bouts de parcours» à l'intérieur du fichier (avi).
P1 P2 P3 P4 P5
Exemple de fichier parcours
Le logiciel mémorise, pour chaque «bout de parcours», le nombre d'images
qui le composent ainsi que l'image de départ dans le fichier total.
L'algorithme pour calculer la prochaine image à afficher est le suivant, étant
convenu que
- P étant le parcours courant,
- P G, le parcours qui correspond à un virage à gauche après le parcours
courant,
- P TD, le parcours qui correspond au fait d'aller tout droit après le
parcours cou-
rant,
- P D, le parcours qui correspond à un virage à droite après le parcours
courant,
(remarque : P G, P TD et P D peuvent ne pas être définis).
CA 02379606 2002-O1-14
9
WO 01/06514 PCT/FR00/02029
FAIRE
index image = index image_precedente + S
FIN FAIRE
SI (index image > nombre image du parcours çourant)
SI choix utilisateur = A GAUCHE
index image = index debut( P G)
FIN SI
SI choix utilisateur = TOUT DROIT
1o index image = index debut(P TD)
FIN SI
SI choix utilisateur = A DROITE
index image = index debut(P D)
FIN SI
FIN SI
huant au tournage du film, il est nécessaire de prendre en compte les impé-
ratifs suivants : le film doit être le plus fluide possible, avec des
déplacements de
caméras stables, c'est-à-dire exempt de saut, de variations visibles de
trajectoires,
2o de vibrations. De telles conditions doivent être totalement remplies, car
le film sera
par la suite rejoué en vitesse plus ou moins accélérée.
Comme aura pu le comprendre l'homme du métier, grâce à la présente in-
vention, le film défilera en fonction de l'effort de l'utilisateur qui pourra
également
choisir son chemin, évitant ainsi toute lassitude et toute passivité.