Redimensionnement

 

 

    Souvent oublié, le redimensionnement est l'une des clées de la réussite d'un bon encodage.
En effet, il faut à la fois choisir la bonne résolution et la bonne fonction de redimensionnement.

 

 

LES DIFFERENTES FONCTIONS

 

. Les fonctions intégrées à AviSynth :


 

BicubicResize(x,y)  _  BicubicResize(x,y,a,b)

BilinearResize(x,y)

LanczosResize(x,y)

PointResize(x,y)

SimpleResize(x,y)

 

. BicublinResize.dll (Beta 1) :

 

FastBilinearResize(x,y)

FastBicubicResize(x,y)  _  FastBicubicResize(x,y,a,b)

BicublinResize(x,y)  _  BicublinResize(x,y,a,b)

 

 

LES COEFFICIENTS

 

 

. Bicubic, FastBicubic et Bicublin peuvent être ajustés de manière à obtenir un résultat plus flou ou plus pointu.


BicubicResize(608,320,0,0.33) == plutôt flou (Soften) == moins de bruit, mais moins de détails

BicubicResize(608,320,0.33,0.33) == par défaut
BicubicResize(608,320,0,0.50) == neutre
BicubicResize(608,320,0,0.75) == plus precis (Sharpen) == plus de détails, mais aussi plus de bruit
 

 

. Avertissement :

 

BicubicResize(608,320,0,0.33) ne peut pas s'écrire BicubicResize(608,320,0,1/3)

Autrefois valable, l'utilisation de valeurs fractionnelles pose de nombreux problèmes (v2.5)

 

 

EXEMPLES CONCRETS

 

. Configuration du test :

 

Asus P4G8X - P4 2.53(@2.85) - 512Mo PC2700

 

DVD : Blade PAL Zone2 (Edition Prestige)

Dvd2Avi 1.76 - AviSynth 2.5beta (version du 27 fév 2003)

XviD, build de Koepi, du 17.02.2003 (par défaut, sauf BFrames(3/150/100) + 1 PassQuantizer=2)

 

Script 1 :

MPEG2Source("D:\DVD_Ripp\Blade\Blade.d2v").Crop(2,72,-4,-76).Trim(6000,10500)
XXXXXX(608,256)

 

Script 2 :

MPEG2Source("D:\DVD_Ripp\Blade\Blade.d2v").Crop(2,72,-4,-76).Trim(99500,104000)
XXXXXX(608,256)

 

. Résultats du test :


 

3 minutes de film :

Scènes rapides

(discothèque)

Scènes lentes

(jardin public)

BicubicResize(608,256)

34.9 fps

66.1 Mo

41.3 fps

20.5 Mo

BicubicResize(608,256,0.33,0.33)

36.3 fps

66.1 Mo

42.9 fps

20.5 Mo

BicubicResize(608,256,0,0.33)

36.3 fps

70.3 Mo

42.9 fps

22.3 Mo

BicubicResize(608,256,0,0.5)

36.3 fps

71.9 Mo

42.5 fps

23    Mo

BicubicResize(608,256,0,0.66)

36   fps

73.6 Mo

42.1 fps

23.7 Mo

BicubicResize(608,256,0,0.75)

36.3 fps

74.5 Mo

41.7 fps

24.1 Mo

FastBicubicResize(608,256)

36.9 fps

73    Mo

43.3 fps

23.8 Mo

FastBicubicResize(608,256,0.33,0.33)

36.9 fps

72.2 Mo

43.3 fps

23.1 Mo

FastBicubicResize(608,256,0,0.33)

36.9 fps

75.9 Mo

43.3 fps

24.9 Mo

FastBicubicResize(608,256,0,0.5)

36.9 fps

77.5 Mo

43.3 fps

25.5 Mo

FastBicubicResize(608,256,0,0.66)

36.3 fps

79    Mo

42.9 fps

26.2 Mo

FastBicubicResize(608,256,0,0.75)

37.2 fps

80.1 Mo

43.7 fps

26.6 Mo

BicublinResize(608,256)

37.2 fps

72.6 Mo

44.6 fps

23.7 Mo

BicublinResize(608,256,0.33,0.33)

37.5 fps

72    Mo

44.1 fps

23    Mo

BicublinResize(608,256,0,0.33)

38.1 fps

74.7 Mo

44.6 fps

24.6 Mo

BicublinResize(608,256,0,0.5)

37.8 fps

76    Mo

44.1 fps

25.1 Mo

BicublinResize(608,256,0,0.66)

38.8 fps

77    Mo

43.7 fps

25.7 Mo

BicublinResize(608,256,0,0.75)

38.8 fps

77.8 Mo

44.6 fps

26.1 Mo

BilinearResize

36.3 fps

64.6 Mo

42.1 fps

20    Mo

FastBilinearResize

37.2 fps

71.6 Mo

45   fps

23    Mo

LanczosResize(608,256)

33.3 fps

75.9 Mo

39.5 fps

24.8 Mo

SimpleResize(608,256)

39.8 fps

72   Mo

47.4 fps

23.1 Mo

 

 

MES CONCLUSIONS

 

 

    BicubicResize

Points positifs : efficace en toute circonstance.

Points négatifs : pour un résultat pointu, mieux vaut utiliser Lanczos.

→→→→→→→→ D'une manière général le "neutral" (x,y,0,0.5) donne de bons résultats.

→→→→→→→→ A utiliser pour des faibles résolutions (inférieur à 512*xxx)

→→→→→→→→ Avec du denoising, le bon compromis est d'après moi (x,y,0,0.6).

( mais cela dépend de beaucoup de choses, donc à vous de tester)
   

    BicublinResize.dll

Points positifs : rapidité du traitement. légèrement moins destructeur.

Points négatifs : perte de compressibilité non négligeable

→→→→→→→→ oubliez FastBilinearResize(...)

→→→→→→→→ je ne vous conseil pas vraiment FastBicubicResize(.....)

→→→→→→→→ BicublinResize(.....) à essayer (adapté pour des animes ?)

 

 BilinearResize

Points positifs : perte de détails.

Points négatifs : la meilleure compressibilité.

→→→→→→→→ Intéressant pour des encodages (mpeg2 ou mpeg4) sans filtre de denoising.

 

    LanczosResize

Points positifs : le plus precis == conservation des détails.

Points négatifs : le plus lent, faible compressibilité, conservation du bruit video.

→→→→→→→→ Ne doit être utilisé qu'avec un filtre de denoising puissant.(mpeg2-mpeg4)

→→→→→→→→ Peut être utilisé pour de l'encodage en RV9.

→→→→→→→→ A utiliser également pour de l'encodage sur 2 CDs.

 

    PointResize

Points positifs : redimensionnement le plus basique possible, qui ne denature pas la source.

Points négatifs : redimensionnement le plus basique possible, qui semble inutilisable ...

→→→→→→→→ plus grande est l'image, meilleur sera son traitement ...

→→→→→→→→ vivement les quadri-procc 10 Ghz ....

 

MPEG2Source("D:\DVD_Ripp\Blade\Blade.d2v").Crop(2,70,-6,-76). Trim(99500,104000)
Convolution3D(0,6,6,6,6,6,0)

BicubicResize(608,256,0,0.5)

38,8 fps

 22.3 Mo

MPEG2Source("D:\DVD_Ripp\Blade\Blade.d2v").Crop(2,70,-6,-76). Trim(99500,104000)
PointResize(2856,1712).Convolution3D(0,6,6,6,6,6,0).PointResize(714,428)

BicubicResize(608,256,0,0.5)

2,9  fps

 19.4   Mo

   

    SimpleResize

Points positifs : rapidité du traitement.

Points négatifs : perds un peu les pédales lors des scènes rapides.

→→→→→→→→ Plutôt adapté aux animés, et encore ...  Mieux vaut ne pas l'utiliser.

 

 

A LIRE EGALEMENT

 


http://sygma21.free.fr/resize.html

 

 

 

 

 

 

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~Ctrl-Alt-Suppr~~~~~~~