2015-09-17 10:17:07 +02:00
|
|
|
\part{Introduction}
|
2015-09-15 17:32:55 +02:00
|
|
|
\section{Contexte}
|
|
|
|
\paragraph{}
|
2015-09-17 10:17:07 +02:00
|
|
|
Ce travail s'inscrit dans la continuité des travaux de Vincent Charvillat et
|
|
|
|
d'Axel Carlier sur la prédictabilité du comportement d'un utilisateur en
|
|
|
|
interaction avec un lecteur vidéo. L'objectif était alors de proposer un modèle
|
|
|
|
de préchargement plus intelligent que le préchargement linéaire qui est
|
|
|
|
actuellement implémenté sur les sites de streaming vidéo comme YouTube.
|
2015-09-15 17:32:55 +02:00
|
|
|
|
|
|
|
\paragraph{}
|
2015-09-17 10:17:07 +02:00
|
|
|
L'idée était de suggérer à l'utilisateur des instants potentiellement
|
|
|
|
intéressants dans la vidéo de sorte à biaiser son comportement. Lorsqu'un
|
|
|
|
utilisateur parcourt une vidéo, il peut sauter des passages et aller
|
|
|
|
directement à d'autres. De nombreux travaux montrent qu'en ajoutant des
|
|
|
|
recommandations sur une barre de navigation, l'utilisateur aura tendance à
|
|
|
|
cliquer sur ces zones intéressantes plutôt qu'ailleurs. Plutôt que de
|
|
|
|
précharger toute la vidéo linéairement, on peut donc précharger les zones
|
|
|
|
intéressantes ce qui va réduire la latence lorsque l'utilisateur va sauter une
|
|
|
|
partie pour aller vers une zone recommandée.
|
2015-09-15 17:32:55 +02:00
|
|
|
|
2015-09-18 09:08:56 +02:00
|
|
|
\begin{figure}[H]
|
|
|
|
\centering
|
|
|
|
\begin{subfigure}[b]{0.4\linewidth}
|
|
|
|
\centering
|
|
|
|
\includegraphics[scale=0.2]{new/interface1.png}
|
2015-09-23 10:36:04 +02:00
|
|
|
\caption{Sans recommandations}
|
2015-09-18 09:08:56 +02:00
|
|
|
\end{subfigure}
|
|
|
|
~
|
|
|
|
\begin{subfigure}[b]{0.4\linewidth}
|
|
|
|
\centering
|
|
|
|
\includegraphics[scale=0.34]{new/interface2.png}
|
2015-09-23 10:36:04 +02:00
|
|
|
\caption{Avec recommandations\label{lecteur-reco}}
|
2015-09-18 09:08:56 +02:00
|
|
|
\end{subfigure}
|
2015-09-23 10:36:04 +02:00
|
|
|
\caption{Des lecteurs vidéo avec et sans recommandations}
|
2015-09-18 09:08:56 +02:00
|
|
|
\end{figure}
|
|
|
|
|
2015-09-23 10:36:04 +02:00
|
|
|
\paragraph{}
|
|
|
|
Dans la figure \ref{lecteur-reco}, les points blancs représentent des débuts de
|
|
|
|
passages intéressants. Les zones gris clair représentent les passages chargés,
|
|
|
|
et les zones gris foncé les passages qu'il reste à charger.
|
|
|
|
|
2015-09-15 17:32:55 +02:00
|
|
|
\section{Objectifs}
|
|
|
|
\paragraph{}
|
|
|
|
Ce projet a pour but d'appliquer les idées citées précédemment dans le contexte
|
|
|
|
de la navigation et du streaming de modèles 3D. Nous avons donc développé une
|
2015-09-17 10:17:07 +02:00
|
|
|
interface permettant de naviguer dans une scène 3D de manière plus simple que
|
2015-09-15 17:32:55 +02:00
|
|
|
les interfaces actuellement existantes (et qui sont, le plus souvent, utilisées
|
|
|
|
dans le monde du jeux vidéo). En effet, de nombreuses personnes n'ont pas
|
|
|
|
l'habitude de jouer aux jeux vidéo, et peinent à utiliser les interfaces
|
|
|
|
actuelles.
|
|
|
|
|
|
|
|
\paragraph{}
|
|
|
|
L'objectif est de faciliter la navigation grâce à un système de recommandations
|
|
|
|
qui permettent à l'utilisateur de se déplacer facilement d'un point de vue
|
|
|
|
intéressant à un autre, quitte à devoir utiliser les interactions classiques
|
|
|
|
s'il désire un point de vue plus précis. En supposant que l'utilisateur soit
|
|
|
|
susceptible de sauter vers les vues recommandées, on peut précharger des
|
|
|
|
parties d'un modèle plutôt que d'autres de sorte à éviter que l'utilisateur se
|
|
|
|
retrouve dans une zone de la scène qui n'est pas encore chargée.
|
2015-09-17 10:17:07 +02:00
|
|
|
|
|
|
|
\paragraph{}
|
|
|
|
Dans ce travail, on ne s'attachera pas à calculer des recommandations : elles
|
2015-09-18 09:08:56 +02:00
|
|
|
seront supposées connues. Dans la pratique, elle seront définies manuellement.
|
2015-09-17 10:17:07 +02:00
|
|
|
|
2015-09-23 10:36:04 +02:00
|
|
|
\section{Description globale du projet}
|
|
|
|
Pendant ce projet, nous avons développé une interface qui permet de naviguer
|
|
|
|
dans une scène en 3D. Cette interface sera complétée d'une tâche à réaliser
|
|
|
|
(collecter des pièces rouges). Pour aider l'utilisateur à naviguer dans la
|
|
|
|
scène, des mécanismes de recommandations seront introduits, et nous allons
|
|
|
|
chercher à savoir à quel point ces mécanismes aident les utilisateurs.
|
|
|
|
|
|
|
|
\paragraph{}
|
|
|
|
Nous présenterons ensuite un mécanisme de chargement intelligent de la scène
|
|
|
|
3D. Nous ne parlerons pas de pré-chargement puisque ce projet n'est pas arrivé
|
|
|
|
jusqu'au point où nous serions capable de prédire le comportement de
|
|
|
|
l'utilisateur.
|
|
|
|
|
2015-09-17 10:17:07 +02:00
|
|
|
\section{Présentation}
|
|
|
|
Nous allons dans un premier temps parler des technologies que nous avons
|
|
|
|
testées et utilisées. Nous verrons ensuite l'architeture du programme, qui peut
|
2015-09-18 09:08:56 +02:00
|
|
|
paraître un peu complexe. Dans la partie \ref{interface}, nous présenterons
|
2015-09-17 10:17:07 +02:00
|
|
|
l'interface que nous avons développée. Nous verrons comment nous avons testé
|
2015-09-18 09:08:56 +02:00
|
|
|
cette interface dans la partie \ref{userstudy}, et dans la partie suivante,
|
2015-09-17 10:17:07 +02:00
|
|
|
nous verrons comment nous avons fait du streaming de modèle 3D.
|