Bonjour à tous.
Je viens d'installer MATLAB 7.6.0 (R2008a) sur une machine 16-cores, possédant 8Go de RAM et Windows 7.
Etant habituée et un peu limitée par ImageJ, j'ai entrepris d'installer le module MIJ afin de pouvoir charger les images utilisées dans ImageJ dans MATLAB.
Cela fonctionne très bien, mais un problème demeure.
J'ai tout d'abord fait un essai du type :
afin de vérifier si mon image était bien chargée par MATLAB.image = imread('myPicture');
Aucun problème.
Ensuite, j'ai lancé ImageJ via :
j'ai ouvert une image, et ai testé les algorithmes Watershed proposés par imageJ et par Matlab :MIJ.start
Le premier bloc fonctionne très bien, mais une erreur mémoire apparait lors de l'utilisation de la fonction "getCurrentImage()".% ImageJ watershed
mijread(filename);
ij.IJ.run('Threshold');
tic;
ij.IJ.run('Watershed');
toc
% Matlab watershed
mijread(filename);
ij.IJ.run('Threshold');
tsource = MIJ.getCurrentImage();
ij.IJ.run('Distance Map');
msource = MIJ.getCurrentImage();
tic;
ws = watershed(255-msource);
toc
dam = (ws==0)*255;
MIJ.
(or(dam, double(255-tsource))*255);
end
Manifestement, la taille du heap java n'est pas assez conséquente que pour pouvoir charger réellement dans MATLAB l'image ouverte par ImageJ.
Ce que je ne comprends pas, c'est que lorsque je passe directement par "imread()" je n'ai pas ce problème.
Ma question est donc, comment augmenter la taille de mon heap, ou comment contourner ce problème ? J'ai pas mal chercher sur Google déjà, et me suis donc déjà penchée sur le fichier java.opts.
Ce fichier n'existait pas et l'ai donc créé dans le répertoire $matlabroot\bin\win64, composé des lignes suivantes :
Le problème est que dans ce cas, MATLAB ne démarre plus... Il suffit que le fichier existe pour qu'il plante au démarrage, sans message d'erreur...C:\...\MATLAB\...\bin\win64
-Xmx ...
Je ne sais pas quoi faire de plus, c'est pourquoi je me tourne vers vous.
Avez-vous déjà eu ce type de problème ?
Voici au cas où, l'état de ma mémoire :
Toutes remarques seront les bienvenues, merci à vous.Maximum possible array: 13051 MB (1.368e+010 bytes) *
Memory available for all arrays: 13051 MB (1.368e+010 bytes) *
Memory used by MATLAB: 557 MB (5.844e+008 bytes)
Physical Memory (RAM): 8183 MB (8.581e+009 bytes)
Partager