Poster présenté à la conférence

Transcription

Poster présenté à la conférence
PROBLEMATIQUE vers une indexation MPEG7 :
Existant :
• segmentation des objets mobiles
Opération gourmande en temps
* Segmentation des zones de couleur uniforme :
P ou I précédente
B B P B B P
I
Cb
B B P B B I B
B:
Cr
Luminance
• Chaque bloc contient 8x8 pixels
P à coder
P ou I suivante
P ou I précédente
groupe d’images
B à coder
• Un macrobloc est composé de quatre blocs adjacents
Pour un macrobloc de P, par exemple :
Pour un macrobloc de I :
0
2
Pour les images P et B :
1
3
4
5
Cb
Cr
• Vecteurs mouvements pour chaque macrobloc
Il faut reconstruire la valeur des blocs et macroblocs
grâce à la prédiction de mouvement
et l’image d’erreur données dans le flux.
Rx
Ry
U
x
= −
U
y
= −
Tz
Tx
Rz
Ty
Rx
f
Z
f
Z
(T x
− xT
(T y
− yT
)+
x.y
z
)−
x.y
z
Plus le Zoom : Rzoom
f
f
R
R
x

x
− f . 1 +

f

y

y
+ f . 1 +

f

x
dist i , j > α (α empirique)
dy
dy
Les deux blocs n’appartiennent pas à la même zone d’intérêt
* Utilisation des vecteurs mouvement pour recoller les zones de couleur uniforme :
MPEG 1&2 contient des informations sur le mouvement des macroblocs
Plus la valeur DC est grande
Plus le nombre des éléments de la DCT sont importants
Plus la valeur de ces dernières est grande
Moins le vecteur mouvement donné dans le
flux est pertinent
le mouvement maximum de recherche n’est pas connu lors du décodage
ce mouvement est cantonné à un voisinage de recherche ≤ ±7 pixels
* Différence de segmentation entre les B et les P :
Séquence à caméra fixe représentant une voiture
ayant un mouvement de translation d’environs 7
pixels de la gauche vers la droite
Direction des vecteurs plus près
de la réalité du mouvement
B:
P:
B:
Si recherche à ± 7 pixels
Meilleurs résultats sur les B que sur les P.
RESULTATS
Erreur
2
2
2
2

.R



.R


y
+ y.R
x
− x.R
z
+ f . tan
z
+ f . tan
−1
−1
 x  
 f  .  1 +

 
 y  


 f . 1 +

 
x
2
f
2
y
2
f
2

.R
zoom



.R
zoom


Y
• Entre deux images consécutives :
Ry
O
Rx
Tx et Ry ou Ty et Rx jouent le mê
même rô
rôle
Rzoom et Tz jouent le même rôle
Tx
X
f
f
≈ cte
Z
U
U
x
y
= −cte.(Tx − xTz ) + y.Rz
Pour MPEG 1&2, la recherche du macrobloc similaire ne peut s’effectuer que dans un voisinage maximal de ±7 pixels.
Remarquons ici que le résultat est bon (à ± 0,5 pixel) pour du ‘presque temps réel’.
Problème autour des images 90 : le Pan proche de 11, ne peut être trouvé. Cela entraîne un calcul faux pour les autres composantes.
Pour le zoom et la rotation, la valeur 0,05 représente un déplacement d’un maximum de 0,88 pixel sur les bords de l’image. Cela
explique que les deux courbes ne se juxtaposent pas complètement. A ce niveau d’amplitude, la courbe donne une indication de
direction plus qu’une valeur exacte.
* Segmentation des objets en mouvement :
= −cte.(Ty − yTz )− x.Rz
om
R zo
Les résultats sont meilleurs lorsque le mouvement de la caméra n’est pas trop grand.
L’étude de l’image d’erreur, transmise dans le flux, permet de déterminer la validité du
mouvement trouvé.
Stephan Edberg - img. 25
Rz
Mouvement trouvé après une prédiction de mouvement par bloc
au demi-pixel, suivie d’une résolution d’un modèle affine à 6
paramètres pour la modélisation du mouvement de la caméra et
d’une estimation robuste.
Mouvement trouvée avec notre méthode
Ty
Tz
zone_recherche < ± 7
zone_recherche < ± 2
* Utilisation de l’image d’erreur pour la pertinence du vecteur mouvement :
• Utilisation d’une caméra à sténopé
• Modèle orthographique
• le zoom
Z
: poids fixé empiriquement.
+
Prédiction
U et U : mouvement de l’objet projeté sur la rétine
x
y
• 3 rotations
p (x,y)
Si
Moyennes du
macrobloc à
prédire
• 3 translations
P (X,Y,Z)
λl
Rotations possibles :
Ty
Tz
l
•
λ Lum , λ Cr , λ Cb empiriques.
dx
dx
l
i , j +1
* Calcul du mouvement apparent de la caméra (sur la séquence Stephan Edberg) :
Travail sur des
images “mosaïque” :
Mouvement de la caméra
Macrobloc
dans le P ou I
précédent
• Image d’erreur
Moyennes de chaque bloc
(valeurs DC de la DCT à une
constante multiplicative près).
Tx
dx
dx
Si recherche à ± 2 pixels
4 blocs de
luminance
l

 • f i , j et f : valeur moyenne, de type l, des
 deux blocs voisins sur l’axe x.

 • moy : valeur moyenne de l’image de type l.
Sur la séquence Stephan Edberg
• Cr : chrominance rouge
2
λ Cr = λ Cb = 0 et λ Lum empirique.
dx
dy
P:
• Cb : chrominance bleue
dx
dy
prédic. arrière
* Qualité des résultats proportionnelle à la grandeur du voisinage de la recherche :





l∈L
dy
prédic. avant
dy
Cr
découpage en macroblocs 16x16 de l’image à prédire
recherche d’un macrobloc similaire dans une image déjà codée
dy
•
•
Décomposition de la séquence en groupe d’images :
l
l
  f − f
L = {Lum, Cr , Cb}
∑ λ l . i, j i , j+1
 moy l
l∈L 
x
 
dist i , j ( f ) = 
∑ λl
4 blocs de Luminance
Cb
Pour l’axe x, nous avons : 
Prédiction du mouvement par macrobloc pour
les Prédites (P) et les Bidirectionnelles (B)
3
vers une détection des objets en mouvement
Pertinente | Non supervisée | Rapide
2
5
des zones d ’intérêts
Pouvoir extraire une information :
n° image : i | Durée : n images | zoom – rotation – pan - tilt
1
4
• Utilisation des moyennes des blocs de luminance et des macroblocs de chrominance pour la segmentation
(estimation du mouvement et valeurs DCT)
Calcul des champs MPEG 7 , i.e. pour chaque
image (ou groupe d ’image) :
• Utilisation des vecteurs mouvements donnés directement par le flux MPEG 1&2 pour estimer le modèle de
mouvement de la caméra
évaluation de la pertinence des vecteurs mouvement en utilisant les images d’erreur
Utilisation de l’analyse de la séquence
effectuée lors de l’encodage
Segmentation des objets en mouvement
0
Notre contribution :
Grande quantité d’information
au format MPEG1 & 2
• calcul du mouvement de la caméra
MPEG1 utilise les redondances : • Subjectives (luminance / chrominances)
• Temporelles (corrélation entre images)
• Spatiales (plage uniforme – DCT)
• Statistiques (codage entropique)
Translations possibles :
Signature
numérique
de Lionel
BRUNEL
ID :
cn=Lionel
BRUNEL,
c=FR
Date :
2009.04.1
3
20:51:08 +
02'00'
Motif : Je
suis
l'auteur
de ce
document.
Lieu :
Sophia-An
tipolis
Laboratoire I3S, CNRS-UNSA, Sophia-Antipolis France, {lbrunel, mathieu}@i3s.unice.fr
Résumé : L'indexation supervisée, nécessaire pour atteindre un document
multimédia, se traduit par un lourd temps de calcul. Une grande partie
des données étant déjà codée au format MPEG 1&2, nous allons
directement utiliser ce flux en nous limitant au décodage entropique et à
la quantification inverse. Dans un premier temps, nous décrivons la
méthode de segmentation utilisant les informations de couleur et de
mouvement, en nous limitant aux termes de basse fréquence de la DCT
et aux vecteurs mouvements directement donnés dans le flux. Puis, nous
enchaînons par le calcul du mouvement de la caméra et des objets, ce qui
permet l'indexation (détermination de champs MPEG7).
Rappel norme 1 & 2
Lio
nel
BR
U
NE
L
Méthode rapide de segmentation et d’indexation du flux MPEG1-2 par bloc DCT
Lionel BRUNEL- Pierre MATHIEU
I 3 S
Données utilisées
La
si
gn
at
ur
e
n'
a
pa
s
ét
é
vé
rifi
ée
.
Coast Guard - img. 262
Hall - img. 93
Lorsque le mouvement de la caméra est supérieur au mouvement autorisé, i.e. ±7
pixels, le programme est capable de le déterminer et de ne donner aucune réponse. Il faut
donc faire une étude précise avec un calcul de prédiction de mouvement par bloc ayant une
région de recherche plus grand.
En calculant les dérivées, nous trouvons un système de 4 équations à 4 inconnues
On estime donc : • le pan Ry (équivalent à Tx )
Rétine
• le tilt Rx (équivalent à Ty)
Minimisation des moindres carrées
par rapport aux paramètres du modèle de mouvement :
( (
)
J = ∑  U x xi , y i −Vxi

• le zoom Rzoom (équivalent à Tz )
) + (U y (x , y )−Vy )
2
2
i
i
i


• la rotation Rz
Remplissage du champ :
SegmentedCameraMotion_Info[i] :
n° image : i | Durée : 1 image | zoom – rotation – pan - tilt
Conclusion
La méthode mise en œuvre évite la décompression totale du flux MPEG1-2 et utilise le maximum d'informations déjà présentes dans le flux :
* vecteurs mouvement pour les B et les P,
* coefficients de la DCT : dans les I, pour la reconstruction de l'image ; dans les B et les P pour la pertinence des vecteurs mouvement.
Le fait de rester sur la notion de bloc et macrobloc donne des résultats moins précis mais dans un laps de temps beaucoup plus court (proche du temps réel).
Pour ce qui est du calcul du mouvement de la caméra, les résultats trouvés sont proches du mouvement connu des séquences et ce quel que soit le codeur utilisé (à
±0,5 pixel pour les translations).
Une amélioration de la méthode serait d’arriver à différencier les sept paramètres (les trois translations, les trois rotations et le zoom), mais pour cela, nous ne
pourrons plus considérer une image et sa suivante, mais une suite d'images.

Documents pareils