Ce que je veux faire :
- ouvrir en mémoire une image (souvent de très grande taille)
- redimensionner cette image pour qu'elle utilise moins de mémoire
- afficher dans mon logiciel cette nouvelle image redimensionnée
- supprimer l'image de base qui prend énormément de mémoire
Mon problème :
J'arrive à faire tout cela sauf le dernier point, c'est à dire supprimer
l'image de la mémoire.
Au final, mon image "destImage" correspond à celle de base mais
redimensionnée avec les dimensions "nouvellesDimensions".
Mais l'espace alloué pour "largeImage" n'a pas l'air d'avoir été supprimé.
Au passage, si tu connais des soft plutôt gratuits ;-)
Merci !
"ownowl" a écrit dans le message de news: 41fff53e$0$26210$
AureL wrote:
Merci mais j'ai essayé cette méthode, sans résultat...
Au passage, est ce que vous connaîtriez un soft pour tracer la mémoire de la JVM...
optimizeit, jprobe, jprofiler, YourKit...
je connais surtout le premier, qui est trés efficace
AureL
C'est sûr que ça serait plus rapide avec du C++... Moi même je suis développeur C++ à la base...
Mais bon, comme dit ci-dessous, la roue qui a été inventée par Java est une roue qui s'adapte à toutes les voitures et qu'il n'est pas nécessaire de réinventer à chaque fois ;-) Donc, je préfère l'inventer une fois pour toutes !
Alors je vais prendre le risque de rester en Java, désolé ;-)
Mais merci pour l'idée !
a écrit dans le message de news: 41fff6da$0$6581$
AureL wrote:
Bonjour,
J'ai créé un logiciel de traitement d'images.
Ce que je veux faire : - ouvrir en mémoire une image (souvent de très grande taille) - redimensionner cette image pour qu'elle utilise moins de mémoire - afficher dans mon logiciel cette nouvelle image redimensionnée - supprimer l'image de base qui prend énormément de mémoire
Bonjour
Pourquoi ne pas appeler un programme en C++ qui serait peut-être plus rapide... ?
voir du côté de ImageMagick http://www.imagemagick.org/
et plus particulièrement mogrify
Faire une interface entre C++ et Java avec JNI (?)
Cordialement
PS : désolé si je raconte des bétises mais je ne suis pas spécialiste de Java... je me dis seulement que c'est dommage de réinventer la roue... (surtout quand celle qu'on va faire risque d'être carrée ;-)
C'est sûr que ça serait plus rapide avec du C++...
Moi même je suis développeur C++ à la base...
Mais bon, comme dit ci-dessous, la roue qui a été inventée par Java est une
roue qui s'adapte à toutes les voitures et qu'il n'est pas nécessaire de
réinventer à chaque fois ;-)
Donc, je préfère l'inventer une fois pour toutes !
Alors je vais prendre le risque de rester en Java, désolé ;-)
Mais merci pour l'idée !
<noone@nowhere.com> a écrit dans le message de news:
41fff6da$0$6581$8fcfb975@news.wanadoo.fr...
AureL wrote:
Bonjour,
J'ai créé un logiciel de traitement d'images.
Ce que je veux faire :
- ouvrir en mémoire une image (souvent de très grande taille)
- redimensionner cette image pour qu'elle utilise moins de mémoire
- afficher dans mon logiciel cette nouvelle image redimensionnée
- supprimer l'image de base qui prend énormément de mémoire
Bonjour
Pourquoi ne pas appeler un programme en C++ qui serait peut-être plus
rapide... ?
voir du côté de
ImageMagick
http://www.imagemagick.org/
et plus particulièrement mogrify
Faire une interface entre C++ et Java avec JNI (?)
Cordialement
PS : désolé si je raconte des bétises mais je ne suis pas spécialiste de
Java...
je me dis seulement que c'est dommage de réinventer la roue... (surtout
quand celle qu'on va faire risque d'être carrée ;-)
C'est sûr que ça serait plus rapide avec du C++... Moi même je suis développeur C++ à la base...
Mais bon, comme dit ci-dessous, la roue qui a été inventée par Java est une roue qui s'adapte à toutes les voitures et qu'il n'est pas nécessaire de réinventer à chaque fois ;-) Donc, je préfère l'inventer une fois pour toutes !
Alors je vais prendre le risque de rester en Java, désolé ;-)
Mais merci pour l'idée !
a écrit dans le message de news: 41fff6da$0$6581$
AureL wrote:
Bonjour,
J'ai créé un logiciel de traitement d'images.
Ce que je veux faire : - ouvrir en mémoire une image (souvent de très grande taille) - redimensionner cette image pour qu'elle utilise moins de mémoire - afficher dans mon logiciel cette nouvelle image redimensionnée - supprimer l'image de base qui prend énormément de mémoire
Bonjour
Pourquoi ne pas appeler un programme en C++ qui serait peut-être plus rapide... ?
voir du côté de ImageMagick http://www.imagemagick.org/
et plus particulièrement mogrify
Faire une interface entre C++ et Java avec JNI (?)
Cordialement
PS : désolé si je raconte des bétises mais je ne suis pas spécialiste de Java... je me dis seulement que c'est dommage de réinventer la roue... (surtout quand celle qu'on va faire risque d'être carrée ;-)
AureL
Excuse moi, mais ce n'est pas très clair...
Qui doit récupérer mon image ? A priori, personne, je veux justement la supprimer de la mémoire...
"Causse Bruno" a écrit dans le message de news: 1grcnv7.b8hl8p13m3uhmN%
AureL wrote:
Mon problème : J'arrive à faire tout cela sauf le dernier point, c'est à dire supprimer l'image de la mémoire.
tout depend qui doit la recuperer.
a) le systeme : pas de solution b) la VM : ne pose pas de probleme
-- bruno Causse http://perso.wanadoo.fr/othello
Excuse moi, mais ce n'est pas très clair...
Qui doit récupérer mon image ?
A priori, personne, je veux justement la supprimer de la mémoire...
"Causse Bruno" <no.bcausse.spam@lepoint.tm.fr> a écrit dans le message de
news: 1grcnv7.b8hl8p13m3uhmN%no.bcausse.spam@lepoint.tm.fr...
AureL <aurela@ifrance.com> wrote:
Mon problème :
J'arrive à faire tout cela sauf le dernier point, c'est à dire supprimer
l'image de la mémoire.
tout depend qui doit la recuperer.
a) le systeme : pas de solution
b) la VM : ne pose pas de probleme
pas l'image, la memoire. -- bruno Causse http://perso.wanadoo.fr/othello
AureL
ah oui, ok... dans ce cas, c'est la JVM qui doit récupérer la mémoire...
Mais ce qui tu me dis "la VM : ne pose pas de probleme", bah ça n'a pas l'air d'être mon cas... enfin, je vais essayer un soft qui trace la mémoire de la JVM et je saurais tout après ça :-)
merci !
"Causse Bruno" a écrit dans le message de news: 1grda4s.1cq7ftiinzw3sN%
AureL wrote:
Qui doit récupérer mon image ?
pas l'image, la memoire. -- bruno Causse http://perso.wanadoo.fr/othello
ah oui, ok... dans ce cas, c'est la JVM qui doit récupérer la mémoire...
Mais ce qui tu me dis "la VM : ne pose pas de probleme", bah ça n'a pas
l'air d'être mon cas...
enfin, je vais essayer un soft qui trace la mémoire de la JVM et je saurais
tout après ça :-)
merci !
"Causse Bruno" <no.bcausse.spam@lepoint.tm.fr> a écrit dans le message de
news: 1grda4s.1cq7ftiinzw3sN%no.bcausse.spam@lepoint.tm.fr...
AureL <aurela@ifrance.com> wrote:
Qui doit récupérer mon image ?
pas l'image, la memoire.
--
bruno Causse
http://perso.wanadoo.fr/othello
ah oui, ok... dans ce cas, c'est la JVM qui doit récupérer la mémoire...
Mais ce qui tu me dis "la VM : ne pose pas de probleme", bah ça n'a pas l'air d'être mon cas... enfin, je vais essayer un soft qui trace la mémoire de la JVM et je saurais tout après ça :-)
merci !
"Causse Bruno" a écrit dans le message de news: 1grda4s.1cq7ftiinzw3sN%
AureL wrote:
Qui doit récupérer mon image ?
pas l'image, la memoire. -- bruno Causse http://perso.wanadoo.fr/othello
pasde.bcausse.spam
AureL wrote:
Mais ce qui tu me dis "la VM : ne pose pas de probleme", bah ça n'a pas l'air d'être mon cas... enfin, je vais essayer un soft qui trace la mémoire de la JVM et je saurais tout après ça :-)
la Vm la recupere (pour un usage ulterieur) mais ne la rends pas au syteme (l'occupation memoire ne change pas). -- Bruno Causse http://perso.wanadoo.fr/othello
AureL <aurela@ifrance.com> wrote:
Mais ce qui tu me dis "la VM : ne pose pas de probleme", bah ça n'a pas
l'air d'être mon cas...
enfin, je vais essayer un soft qui trace la mémoire de la JVM et je saurais
tout après ça :-)
la Vm la recupere (pour un usage ulterieur) mais ne la rends pas au
syteme (l'occupation memoire ne change pas).
--
Bruno Causse
http://perso.wanadoo.fr/othello
Mais ce qui tu me dis "la VM : ne pose pas de probleme", bah ça n'a pas l'air d'être mon cas... enfin, je vais essayer un soft qui trace la mémoire de la JVM et je saurais tout après ça :-)
la Vm la recupere (pour un usage ulterieur) mais ne la rends pas au syteme (l'occupation memoire ne change pas). -- Bruno Causse http://perso.wanadoo.fr/othello
Patrick Gras
"Bruno Causse" wrote in message news:1grdhd3.f49e8hfnj9e2N%
AureL wrote:
Mais ce qui tu me dis "la VM : ne pose pas de probleme", bah ça n'a pas l'air d'être mon cas... enfin, je vais essayer un soft qui trace la mémoire de la JVM et je saurais
tout après ça :-)
la Vm la recupere (pour un usage ulterieur) mais ne la rends pas au syteme (l'occupation memoire ne change pas). -- Bruno Causse http://perso.wanadoo.fr/othello
Hello,
Tu peux déjà lancer ton programme avec l'option -verbose:gc ...
Ensuite comme l'a dit Bruno Causse :
la Vm la recupere (pour un usage ulterieur) mais ne la rends pas au syteme (l'occupation memoire ne change pas).
En plus on ne sais pas quand la VM récupère la mémoire (et faire un System.gc() explicite n'est pas une bonne idée...)
Si tu cherches des infos sur le garbage collector : http://java.sun.com/docs/hotspot/gc1.4.2/
-Patrick Gras
"Bruno Causse" <pasde.bcausse.spam@wanadoo.fr> wrote in message
news:1grdhd3.f49e8hfnj9e2N%pasde.bcausse.spam@wanadoo.fr...
AureL <aurela@ifrance.com> wrote:
Mais ce qui tu me dis "la VM : ne pose pas de probleme", bah ça n'a pas
l'air d'être mon cas...
enfin, je vais essayer un soft qui trace la mémoire de la JVM et je
saurais
tout après ça :-)
la Vm la recupere (pour un usage ulterieur) mais ne la rends pas au
syteme (l'occupation memoire ne change pas).
--
Bruno Causse
http://perso.wanadoo.fr/othello
Hello,
Tu peux déjà lancer ton programme avec l'option -verbose:gc ...
Ensuite comme l'a dit Bruno Causse :
la Vm la recupere (pour un usage ulterieur) mais ne la rends pas au
syteme (l'occupation memoire ne change pas).
En plus on ne sais pas quand la VM récupère la mémoire (et faire un
System.gc() explicite n'est pas une bonne idée...)
Si tu cherches des infos sur le garbage collector :
http://java.sun.com/docs/hotspot/gc1.4.2/
"Bruno Causse" wrote in message news:1grdhd3.f49e8hfnj9e2N%
AureL wrote:
Mais ce qui tu me dis "la VM : ne pose pas de probleme", bah ça n'a pas l'air d'être mon cas... enfin, je vais essayer un soft qui trace la mémoire de la JVM et je saurais
tout après ça :-)
la Vm la recupere (pour un usage ulterieur) mais ne la rends pas au syteme (l'occupation memoire ne change pas). -- Bruno Causse http://perso.wanadoo.fr/othello
Hello,
Tu peux déjà lancer ton programme avec l'option -verbose:gc ...
Ensuite comme l'a dit Bruno Causse :
la Vm la recupere (pour un usage ulterieur) mais ne la rends pas au syteme (l'occupation memoire ne change pas).
En plus on ne sais pas quand la VM récupère la mémoire (et faire un System.gc() explicite n'est pas une bonne idée...)
Si tu cherches des infos sur le garbage collector : http://java.sun.com/docs/hotspot/gc1.4.2/