1

Les images uploader sur Mirari par neogeo2607 ou par Fei (forum privé) sont à 90° ou 180°.
topics/168231-de-retour-avec-ma-collection#6
si on télécharge les images (je suis sous W8.1) on les à dans le bon sens via :
- Visionneuse de photo windows
- PhotoShop elementes 3.0
Mais elles sont à 90° ou 180° comme sur Mirari via :
- Microsoft office picture manager.

On me souffle que ça pourrait venir des infos EXIF.
Je suppose donc que le problème ne viens pas de Mirari2 mais des appareils photos qui on crée les infos EXIF au moment de la prise de vue. Un Samsung SM-T700 et un Iphone 4 en l’occurrence.

m'enfin, je poste quant meme on ne sais jamais.

EDIT
Je viens de faire un essai, télécharger une image renversée, la redressé via la fonction qui va bien de Microsoft Office Picture Manager et l’uploader sur mirari. L’image est bien à l’endroit cette fois, preuve que ça ne vient pas de Mirari wink
Autant pour moi, mais je trouvais ça bizarre de le voir deux fois dans la même journée.
avatar

2

oui c'est pénible ce truc, les téléphones stockent l'orientation de la prise de vue dans les EXIF, du coup selon les combinaisons de soft utilisées ça fait des trucs "rigolos".

3

Squalyl: En meme temps, si la photo n'a pas ete prise dans le bon sens, ca evite une perde de qualite. Mais si la photo a ete prise dans le bon sens (i.e. le telephone ne pensias pas etre dans le mauvais mode) et qu'il utilise juste l'exif pour stoquer la rotation, il faut bruler ce telephone vite fait.

Normalement l'utilisation des donne EXIF n'est fait que par des logiciels de "retouche" pour eviter de faire une retouche destructive, ne font que stocker la rotation dans les donne EXIF et non changer l'image et reencoder.

Faire ca avec des JPEGs ne fait qu'avoir un rendu vraiment degueux...
avatarProud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

4

--Doublette--
avatarProud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

5

je crois bien qu'on sait faire de la rotation jpeg non destructive, donc ce n'est qu'un demi argument grin

6

Google ne me sors rien a ce sujet, a part un laconique
A jpeg image that meets certain requirements can be rotated losslessly using specialized tools.
avatarProud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

7

8

J'ai trouve qu'il y aurais "jpegtrans" qui permetrait de faire des rotations par pas de 90 qui serait lossless
avatarProud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

9

Mais un flip et une rotation ce n'est pas pareil wink
avatarHighway Runners, mon jeu de racing à la Outrun qu'il est sorti le 14 décembre 2016 ! N'hésitez pas à me soutenir :)

https://itunes.apple.com/us/app/highway-runners/id964932741

10

Comment peut-on faire une rotation de 90% avec perte ? hypno Ou plutot : pourquoi est-ce compliqué de faire ça lossless ???
avatar<<< Kernel Extremist©®™ >>>
Feel the power of (int16) !

11

parce que décompresse-rotate-recompresse, et que la compression est lossy, et dépend des pixels adjacents

le jpeg compresse des carrés de 8 par 8 et stocke la matrice de coefs "en zigzag" http://en.wikipedia.org/wiki/JPEG#JPEG%20codec%20example

la rotation de 90 sans pertes "rezigzague" les coefs autrement sans passer par une décompression.

12

un rotate en mode bitmap ça n'existe pas?
avatar"If you see strict DRM and copy protection that threatens the preservation of history, fight it: copy the work, keep it safe, and eventually share it so it never disappears. [...] no one living 500 years from now will judge your infringing deeds harshly when they can load up an ancient program and see it for themselves."

Benj Edwards - Why History Needs Software Piracy

- - -
Achat ou échange: topic de mes recherches

13

14

Lapincompris

Ya quand meme des zoulis contraintes:
A number of alterations to a JPEG image can be performed losslessly (that is, without recompression and the associated quality loss) as long as the image size is a multiple of 1 MCU block (Minimum Coded Unit) (usually 16 pixels in both directions, for 4:2:0 chroma subsampling). Utilities that implement this include jpegtran, with user interface Jpegcrop, and the JPG_TRANSFORM plugin to IrfanView.

Blocks can be rotated in 90 degree increments, flipped in the horizontal, vertical and diagonal axes and moved about in the image. Not all blocks from the original image need to be used in the modified one.

The top and left edge of a JPEG image must lie on an 8 × 8 pixel block boundary, but the bottom and right edge need not do so. This limits the possible lossless crop operations, and also prevents flips and rotations of an image whose bottom or right edge does not lie on a block boundary for all channels (because the edge would end up on top or left, where – as aforementioned – a block boundary is obligatory).

When using lossless cropping, if the bottom or right side of the crop region is not on a block boundary then the rest of the data from the partially used blocks will still be present in the cropped file and can be recovered. It is also possible to transform between baseline and progressive formats without any loss of quality, since the only difference is the order in which the coefficients are placed in the file.
Furthermore, several JPEG images can be losslessly joined together, as long as they were saved with the same quality and the edges coincide with block boundaries.
avatarProud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

15

squalyl (./13) :
ça veut dire quoi, ça?

Un simple spécialisation de la rotation pour les cas comme 90/180/270 degrés, just passer les lignes de pixels horizontales à verticales quoi. On se demande pourquoi c'est pas prévu spécifiquement pour ce cas-là au moins. ^^
avatar<<< Kernel Extremist©®™ >>>
Feel the power of (int16) !

16

./15 > Y'a pas exactement de notion de lignes en JPEG… Ça utilise (entre autres) un algo de traitement du signal 2D pour ôter quelques détails plus ou moins signifiants dans le domaine fréquentiel, sur des blocs de 8x8 pixels. C'est prévu spécifiquement pour le cas où tu veux compresser une photo, pas du tout pour le cas où tu veux modifier une image ^^
./2 > Pas que les téléphones, il me semble que c'est assez courant sur les appareils photo, y compris parmi les plus récents. C'est beaucoup plus simple de coder pixel (1,1) du capteur = pixel(1,1) du jpeg (je simplifie parce que le pixel(1,1) du capteur existe pas vraiment tel quel mais bref.) et de s'occuper de la rotation en activant un flag dans les données EXIF. Ne serait-ce que pour éviter de faire une passe supplémentaire sur tout le buffer lors du traitement des photos, mais je pense que la vraie raison est simplement que l'info sur l'orientation c'est du bonus: Si tu tiens l'appareil dans le mauvais sens, c'est ton problème; et dans certains cas, l'appareil pourra, s'il sait faire, déterminer que tu le tenais dans le mauvais sens, et laisser une info à ce sujet pour ceux qui liront l'image plus tard.
./3 > Tu devrais faire gaffe, tu risque fort de devoir brûler ton téléphone…
avatarLe scénario de notre univers a été rédigée par un bataillon de singes savants. Tout s'explique enfin.
T'as un problème ? Tu veux un bonbon ?
[CrystalMPQ] C# MPQ Library/Tools - [CrystalBoy] C# GB Emulator - [Monoxide] C# OSX library - M68k Opcodes

17

Sur un appareil photo admettons (même si je suis pas vraiment convaincu), mais sur un téléphone, il y a largement la puissance CPU nécessaire pour faire la rotation de l'image.
avatarZeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

18

Voyons ça autrement: Si tu pré-orientes les données de l'image, tu ne peux plus indiquer l'orientation de l'image, car ça forcerait les logiciels à appliquer une rotation sur l'image résultante (ce qui est le but précis de ce flag).
Du coup tu perdrais une information wink

Sinon pour en revenir au ./1, ne pas interpréter cette info est plus proche d'un bug logiciel qu'autre chose (et ce n'est en aucun cas un problème matériel tongue). Mais je n'irais pas jusqu'à dire que c'est un bug, plutôt une fonctionnalité manquante.
avatarLe scénario de notre univers a été rédigée par un bataillon de singes savants. Tout s'explique enfin.
T'as un problème ? Tu veux un bonbon ?
[CrystalMPQ] C# MPQ Library/Tools - [CrystalBoy] C# GB Emulator - [Monoxide] C# OSX library - M68k Opcodes

19

En fait, je trouve que c'est le système de tag qui est mal conçu. Il faudrait deux tags distincts :
- l'angle de rotation avec lequel l'image a réellement été capturée
- l'angle de rotation éventuellement appliqué comme correction à l'enregistrement de l'image.

Ça permettrait de gérer tous les cas proprement. Cas le plus simple : la rotation est corrigée à la prise de vue -> les softs qui ne gèrent pas les tags affichent l'image correctement, et ceux qui les gèrent affichent aussi correctement et peuvent obtenir l'image d'origine.

Quitte à devoir utiliser le système actuel, sur un téléphone ça me semble plus user-friendly de générer une image qui s'affichera dans le bon sens partout, plutôt que de vouloir garder l'info sur l'orientation d'origine.
avatarZeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

20

Mon telephone oriente correctement les JPEG suivant dans quel sens tu l'utilise.
avatarProud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

21

Merci à tous pour vos réponses wink
avatar

22

squalyl (./13) :
ça veut dire quoi, ça?


bah une image c'est rien de plus que des pixels carré non? alors pour une rotation à 90/180/270° la simple application d'une matrice (loseless donc) devrait suffire non? Oul alors j'oublie un détail ou alors je suis à côté de la question grin
avatar"If you see strict DRM and copy protection that threatens the preservation of history, fight it: copy the work, keep it safe, and eventually share it so it never disappears. [...] no one living 500 years from now will judge your infringing deeds harshly when they can load up an ancient program and see it for themselves."

Benj Edwards - Why History Needs Software Piracy

- - -
Achat ou échange: topic de mes recherches

23

Une matrice ? confus
Et un fichier JPEG n'est pas "une image", c'est un format de fichier qui encode une image… tongue
avatarLe scénario de notre univers a été rédigée par un bataillon de singes savants. Tout s'explique enfin.
T'as un problème ? Tu veux un bonbon ?
[CrystalMPQ] C# MPQ Library/Tools - [CrystalBoy] C# GB Emulator - [Monoxide] C# OSX library - M68k Opcodes

24

La difficulté de faire l'opération sans pertes n'est pas sur la rotation proprement dite (qui est effectivement sans pertes pour les angles droits, puisqu'il suffit de changer les pixels de place), mais le fait d'y arriver sans devoir décompresser puis recompresser l'image JPEG (ce qui fait perdre de la qualité).
avatarZeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

25

Le probleme du JPEG (et autres format non lossless) c'est que l'etape de compression se fait avec pertes, donc degradation de l'image.

C'est exactement la meme chose que de recompression un AVI en DivX (ou n'importe quel autre format non lossless)
avatarProud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

26

./22 la compression, et ses artifacts, dépendent de l'environnement des pixels, répartis en blocs de 8x8

si tu rotates, l' "environnement" de chaque pixel change et la compression est subtilement différente.

27

À vrai dire, sur la plupart des compresseurs JPEG, même décompresser une image JPEG et la recompresser directement ensuite (avec les mêmes paramètres) ajoute des pertes.
avatarZeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

28

C'est probable
avatarProud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

29

Godzil (./25) :
Le probleme du JPEG (et autres format non lossless) c'est que l'etape de compression se fait avec pertes, donc degradation de l'image.

C'est exactement la meme chose que de recompression un AVI en DivX (ou n'importe quel autre format non lossless)
-problème+caractéristique intrinsèque

De toute façon le JPG est un format d'export, pas un format de travail.

30

./27 > J'ai remarqué qu'il y avait surtout des pertes au niveau de la chroma en réencodant plusieurs fois la même image (i.e. à chaque fois on perd en saturation).
Mais sachant comment est encodé le JPEG ça ne me surprend pas outre mesure. (Au bon vouloir de l'encodeur/décodeur, il peut y avoir réduction d'échantillonnage sur la chroma, ce qui entraîne une double perte de qualité)
avatarLe scénario de notre univers a été rédigée par un bataillon de singes savants. Tout s'explique enfin.
T'as un problème ? Tu veux un bonbon ?
[CrystalMPQ] C# MPQ Library/Tools - [CrystalBoy] C# GB Emulator - [Monoxide] C# OSX library - M68k Opcodes