Merci d'avance et bonne prog
Rotation de photo JPG.....sans perte ????
-
olivier
- Messages : 305
- Inscription : mer. 05/janv./2005 12:58
- Localisation : http://www.tib-net.com/meca/index.htm
Rotation de photo JPG.....sans perte ????
Je cherche une lib ou un prog pour faire tourner mes photos (90,180,270°). Mais je voudrais aucune perte. J'ai trouvé des lib qui tournait les images mais si on fait quelque rotation d'affilé la déformation est énorme.
Merci d'avance et bonne prog
Merci d'avance et bonne prog
Vive le temps libre !
-
Le Soldat Inconnu
- Messages : 4312
- Inscription : mer. 28/janv./2004 20:58
- Localisation : Clermont ferrand OU Olsztyn
- Contact :
-
olivier
- Messages : 305
- Inscription : mer. 05/janv./2005 12:58
- Localisation : http://www.tib-net.com/meca/index.htm
Lorsque l'on retourne une image jpeg Point par point, il faut commencer par la décoder, et ensuite la recoder. Fait l'essais tu va voir que tres rapidement ton image est
.
Il faut , je pense, travailler à plus bas niveau pour obtenir une rotation sans perte. Il faut travailler sur l'image codé.
Mais là cela devient chaud, c'est pour cela que je cherche une lib toute faite.
Il faut , je pense, travailler à plus bas niveau pour obtenir une rotation sans perte. Il faut travailler sur l'image codé.
Mais là cela devient chaud, c'est pour cela que je cherche une lib toute faite.
Vive le temps libre !
-
Frenchy Pilou
- Messages : 2194
- Inscription : jeu. 27/janv./2005 19:07
As-tu essayé celle du Soldat Inconnu ?
Ah oui ! Si j'en crois ce post http://purebasic.hmt-forum.com/viewtopi ... ary+effect
Mais sinon, si elle ne marche pas (mais je ne pense pas qu'il y est un recalcul en jpg dedans) tu n'as qu'a faire cela
Affichage de l'image en Jpg (quelle soit codée n'a aucune importance puisque si tu l'affiches, c'est que pour tes yeux l'image semble parfaite)
Examen de l'écran pixel par pixel
Et avec une bouble boucles astucieuse tu réaffiches tes points comme bon te sembles
Comme l'image ne se dégrade pas entre les rotations, on ne "bouge" que des pixels, je ne vois pas le problème
Ah oui ! Si j'en crois ce post http://purebasic.hmt-forum.com/viewtopi ... ary+effect
Mais sinon, si elle ne marche pas (mais je ne pense pas qu'il y est un recalcul en jpg dedans) tu n'as qu'a faire cela
Affichage de l'image en Jpg (quelle soit codée n'a aucune importance puisque si tu l'affiches, c'est que pour tes yeux l'image semble parfaite)
Examen de l'écran pixel par pixel
Et avec une bouble boucles astucieuse tu réaffiches tes points comme bon te sembles
Comme l'image ne se dégrade pas entre les rotations, on ne "bouge" que des pixels, je ne vois pas le problème
Dernière modification par Frenchy Pilou le mer. 25/mai/2005 0:08, modifié 1 fois.
-
olivier
- Messages : 305
- Inscription : mer. 05/janv./2005 12:58
- Localisation : http://www.tib-net.com/meca/index.htm
-
Le Soldat Inconnu
- Messages : 4312
- Inscription : mer. 28/janv./2004 20:58
- Localisation : Clermont ferrand OU Olsztyn
- Contact :
Ah non, elle ne déforme rien du tout, ton image, une fois chargée, est transformée en BMP, ensuite, tu la retournes avec la lib sans aucune perte (en utilisant la fonction ad'hoc, car il y en a 2 pour la rotation)
La perte, tu l'a quand tu réenregistres ton image sous forme de fichier *.jpg
Et je ne vois pas comment faire autrement, car le jpg est un format compressé, donc impossible d'intervenir directement sur le contenu du fichier.
La perte, tu l'a quand tu réenregistres ton image sous forme de fichier *.jpg
Et je ne vois pas comment faire autrement, car le jpg est un format compressé, donc impossible d'intervenir directement sur le contenu du fichier.
Je ne suis pas à moitié Polonais mais ma moitié est polonaise ... Vous avez suivi ?
[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
-
olivier
- Messages : 305
- Inscription : mer. 05/janv./2005 12:58
- Localisation : http://www.tib-net.com/meca/index.htm
Oui il a raison, il est possible de faire tourner une image jpg d'un pas de 90° sans perte de compression; la plupart des visionneuses (acdsee mais aussi xnview) permettent cela. Cela tient sans doute au fait que la compression jpeg fonctionne avec des carrés de 16x16 dont il doit être possible de faire une transformation.
D'après la FAQ de l'IJG
Quant à la recherche, tape sur Google lossless jpeg rotation
D'après la FAQ de l'IJG
Un autre lien : http://sylvana.net/jpegcrop/There are a few specialized operations that can be done on a JPEG file without decompressing it, and thus without incurring the generational loss that you'd normally get from loading and re-saving the image in a regular image editor. In particular it is possible to do 90-degree rotations and flips losslessly, if the image dimensions are a multiple of the file's block size (typically 16x16, 16x8, or 8x8 pixels for color JPEGs). This fact used to be just an academic curiosity, but it has assumed practical importance recently because many users of digital cameras would like to be able to rotate their images from landscape to portrait format without incurring loss --- and practically all digicams that produce JPEG files produce images of the right dimensions for these operations to work. So software that can do lossless JPEG transforms has started to pop up. But you do need special software; rotating the image in a regular image editor won't be lossless.
Quant à la recherche, tape sur Google lossless jpeg rotation
-
Le Soldat Inconnu
- Messages : 4312
- Inscription : mer. 28/janv./2004 20:58
- Localisation : Clermont ferrand OU Olsztyn
- Contact :
Oui pas évident, cette affaire. Et j'ai pas envie de m'amuser à décrypter le format JPG pour faire une rotation, je l'ai déjà fait pour le format ICO pour ma lib IconEx et c'est long, la doc inexistante.
Je ne suis pas à moitié Polonais mais ma moitié est polonaise ... Vous avez suivi ?
[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
-
Frenchy Pilou
- Messages : 2194
- Inscription : jeu. 27/janv./2005 19:07
http://www.jpeg.org/index.html?langsel=frla doc inexistante
Il y a sûrement dans un coin tout ce qu'il faut
Y'a de la doc, et il y a un prog open source dans les liens que j'ai donné plus haut. Sinon, le plus simple est d'utiliser le prog jpegtran (de l'Independent JPEG Group, dont j'avais aussi donné le lien).
Il se trouve là : http://sylvana.net/jpegcrop/jpegtran/

Il se trouve là : http://sylvana.net/jpegcrop/jpegtran/