Bonsoir tout le monde !
J'ai un code, tout fait, fonctionnel, mais qui doit probablement être optimisable.
Il s'agit d'un décodeur YUV, mais la partie qui m'intéresse peut en être indépendante (enfin, presque).
Donc, YUV format 4:2:0 (1U, 1V, 4Y) :
Shéma explicatif
Merci Wikipedia.
Mes données sont stockées dans trois tableaux :
Contient toutes les luminances Y de l'image, c'est donc un tableau de taille largeur*hauteur (en octects).
Code : Sélectionner tout - Visualiser dans une fenêtre à part tab_y[width*height]
Les deux autres sont sur le même modèle :
Mais de taille 4 fois moindre, logique.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 tab_u[(width*height)/4] tab_v[(width*height)/4]
Le processus entame alors deux boucles imbriquées :
En clair, comment puis-je améliorer cette boucle ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 Pour i=1 to Width <div style="margin-left:40px">Pour j=1 to Height <div style="margin-left:40px">Y<-tab_y[j+width*i]; U<-tab_u[j/2 + (i/2)*(width/2)]; V<-tab_v[j/2 + (i/2)*(width/2)]; (R,G,B)=YUVToRGB(Y,U,V);</div>FinPour</div>FinPour
Merci d'avance de votre aide, je suis certain de trouver de bonnes idées![]()
Partager