• [^] # Re: Ils sont trop forts, on peut pas lutter ...

    Posté par (site web personnel) . En réponse au journal Microsoft cherche à remplacer le JPEG. Évalué à 3.

    Bon, c'est fini de raconter des conneries ?

    Afficher une image avec rotation, transposée, ou mirroir, un élève de terminale arriverait à le faire sans que ça ne coûte quoi que ce soit. Tu changes les indices de ta boucle, et voilà.

    Faire tourner une image décompressée, même avec une relativement haute résolution, y'a pas besoin d'être un géni pour trouver l'algorithme non plus, et se rendre compte que c'est quasi-instantané sur les machines d'aujourd'hui.

    Par contre, si je te donne une image jpeg, et que je te demande de la faire tourner de 90 degrés, l'algorithme naïf « décompresser, appliquer l'algo ci-dessus, recompresser » (convert faisait ça a une époque, je ne sais pas si c'est encore le cas) est doublement mauvais. Premièrement, l'algo va passer tout son temps dans la compression et décompression (sur des images à quelques millions de pixels, ça prend vite quelques secondes), et ensuite, la compression étant avec perte, on va perdre en qualité. Par exemple, tu prends une image fortement compressée en jpeg, si tu la fais tourner sans un algo spécifique, soit tu va reperdre énormément en qualité, soit tu auras une image qui prendra plus de place sur le disque.

    Pour le jpeg, le problème est partiellement résolu, puisqu'il y a des outils comme jpegtran qui font de la rotation sans perte sur du jpeg, mais la rotation n'est réélement sans perte que si ton image a une dimension, de mémoire, multiple de 8 pixels en horizontal et en vertical (pas étonnant puisque le jpeg travaille sur des blocs de 8x8). Bref, le problème de la rotation du jpeg est effectivement un problème ...

    Par exemple, sur mon appareil numérique, je peux faire une « rotation ». En fait, l'appareil se garde bien de faire la rotation lui-même, il se contente d'ajouter l'information sur la rotation dans les données EXIF, et il les utilise pour l'affichage sur l'écran LCD. Ensuite, c'est Digikam qui fait la rotation au moment de récupérer les photos. Mais tout ça, ça passe par EXIF, qui est une extension pas aussi standard qu'elle pourrait l'être. Intégrer ça au format d'image, c'est relativement évident, mais ça n'en est pas moins une très bonne idée.