Bonjour,
J'utilise Java ImageIO pour :
- créer des images JPEG à partir d'images JPEG2000
- créer des images JPEG2000 à partir d'images JPEG
La transformation JPEG2000 vers JPEG marche très bien.
La transformation JPEG vers JPEG2000 marche aussi mais les images JPEG2000 que je récupère ont une taille trop grande.
=> Pour un JPEG 640x480 qui fait 43 Ko, j'obtiens un JPEG2000 qui fait 170 Ko
=> Pour un JPEG 800x600 qui fait 66 Ko, j'obtiens un JPEG2000 qui fait 276 Ko
j'ai essayé de changer pas mal de paramètres dans l'objet J2KImageWriteParam :
mais quelque soient les valeurs que je donne, la taille de l'image résultat ne change pas
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 final J2KImageWriteParam paramJ2K = new J2KImageWriteParam(); paramJ2K.setLossless(false); paramJ2K.setCompressionMode(ImageWriteParam.MODE_EXPLICIT); paramJ2K.setCompressionType("JPEG2000"); paramJ2K.setCompressionQuality(0.5F); paramJ2K.setEncodingRate(Double.MAX_VALUE); paramJ2K.setFilter(J2KImageWriteParam.FILTER_53); // paramJ2K.setWriteCodeStreamOnly(true); // paramJ2K.setComponentTransformation(true); // paramJ2K.setProgressionType("res"); //Resolution-Layer-Component-Position // paramJ2K.setProgressionType("layer"); //Layer-Resolution-Component-Position // paramJ2K.setProgressionType("res-pos"); //Resolution-Position-Component-Layer // paramJ2K.setProgressionType("pos-comp"); //Position-Component-Resolution-Layer // paramJ2K.setProgressionType("comp-pos"); //Component-Position-Resolution-Layer
Est-ce que quelqu'un a une idée et peut m'aider ?
Merci d'avance.
Le marlou
Partager