1. dans la capture d'écran, pour redimmensionner, je peux choisir linéaire, cubique... Qu'est-ce donc ?
Lorsque tu redimensionnes, il y perte d'information. Quand on fait une redimension avec un multiple entier (2x moins, 4x moins), la vieille méthode brutor c'est de prendre un pixel sur deux sur une ligne sur deux, mais cela provoque un crénelage dégueulasse. L'idée est de prendre un algo d'anticrénelage. Sur le cas d'un redimensionnement avec les multiples entiers, on peux faire une moyenne entre les pixels gardés et enlevés contigus, comme cela on réintroduit une partie de l'information perdue. C'est un algo linaire et restrictif, et pas terros en terme de qualité.
Pour généraliser, l'idée de faire une espèce de moyenne entre des pixels contigus, pour cela il y a plein d'algorithmes différents, avec comme critère principal le rapport qualité/vistesse d'exécution. Ces algorithmes sont souvent des algo d'interpolation, le cas général de la moyenne. L'interpolation linéaire est une moyenne toute bête (moyenne entre deux points => point médian qui passe par la droite entre les deux points), après on peut faire des interpolations ou on va prendre plus de deux points pour calculer notre moyenne. (carré => parabole passant entre trois point, on prend la valeur qui nous intéresse sur cette parabole, cubique => équation f(x) = ax³+bx²+cx+d avec quatre points pour la résoudre puis on prend le f(x) qui nous intéresse sur cette courbe)
Plus on monte dans la complexité d'interpolation, plus la qualité est meilleure, mais la qualité finale augmente très peu par rapport a l'énorme quantité de calculs suplémantaire quand on passe de linéaire => carré, carré => cubique.
En gros, en linéaire on fait le gros du boulot, après c'est toujours un peu meilleur mais bien plus cher en temps CPU.
[^] # Re: redimensionner
Posté par Anonyme . En réponse au journal GTK Batch Resizer. Évalué à 2.
Lorsque tu redimensionnes, il y perte d'information. Quand on fait une redimension avec un multiple entier (2x moins, 4x moins), la vieille méthode brutor c'est de prendre un pixel sur deux sur une ligne sur deux, mais cela provoque un crénelage dégueulasse. L'idée est de prendre un algo d'anticrénelage. Sur le cas d'un redimensionnement avec les multiples entiers, on peux faire une moyenne entre les pixels gardés et enlevés contigus, comme cela on réintroduit une partie de l'information perdue. C'est un algo linaire et restrictif, et pas terros en terme de qualité.
Pour généraliser, l'idée de faire une espèce de moyenne entre des pixels contigus, pour cela il y a plein d'algorithmes différents, avec comme critère principal le rapport qualité/vistesse d'exécution. Ces algorithmes sont souvent des algo d'interpolation, le cas général de la moyenne. L'interpolation linéaire est une moyenne toute bête (moyenne entre deux points => point médian qui passe par la droite entre les deux points), après on peut faire des interpolations ou on va prendre plus de deux points pour calculer notre moyenne. (carré => parabole passant entre trois point, on prend la valeur qui nous intéresse sur cette parabole, cubique => équation f(x) = ax³+bx²+cx+d avec quatre points pour la résoudre puis on prend le f(x) qui nous intéresse sur cette courbe)
Plus on monte dans la complexité d'interpolation, plus la qualité est meilleure, mais la qualité finale augmente très peu par rapport a l'énorme quantité de calculs suplémantaire quand on passe de linéaire => carré, carré => cubique.
En gros, en linéaire on fait le gros du boulot, après c'est toujours un peu meilleur mais bien plus cher en temps CPU.