Bonjour,
je développe une application de traitements d'images médicales, qui doit pouvoir traiter en série plusieurs dossiers comportant des images.
Lors de tests sur une grande quantité de dossier, j'ai obtenu un plantage de mon programme alors que l'erreur s'est produite à un endroit où elle était censée etre gérée grace à un bloc try catch. L'erreur est survenue après environ 7h30 de fonctionnement du programme...
voici le code où s'est produit l'erreur : (fichier BatchRegiatration.m a la ligne 862)
et voici l'erreur obtenue :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 %pour chaque dossier try disp(sprintf('Registering slice nb %i',dossier)) [StackR,Mask] = RegisterSliceICA_step1(StackR,nSlice,'Display','off'); [StackR,Mask,mix] = RegisterSliceICA_step2(StackR,nSlice,Mask,'Display','off'); StackR = RegisterSliceICA_step3(StackR,nSlice,Mask,mix,'Display','off'); catch Error %Gestion de l'exception puis passage au dossier suivant end
Je précise que le traitement est lancé via une interface graphique mais normalement la gestion de l'erreur devrait se faire dans le fichier BatchRegistration et non provoquer un plantage complet du programme....
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 Registering slice nb 1 ??? Operation terminated by user during ==> RegisterSlice2 at 181 In ==> RegisterSliceICA_step2 at 176 [dx,dy] = RegisterSlice2(StackSS,iSlice,Metric,Reference,MaskSS,Range,'Waitbar','off'); In ==> BatchRegistration at 131 [StackR,Mask,mix] = RegisterSliceICA_step2(StackR,nSlice,Mask,'Display','off'); In ==> BatchSelection>NextButton_callback at 864 BatchRegistration(ListSelectedDir, MassBDFile_Path, SavePath, 'Display','on'); ??? Error while evaluating uicontrol Callback
quelqu'un voit-il d'où vient le problème ?
Est-ce un problème du à Matlab ?
Merci de votre aide... (je doit rentre mon projet dans 4 jours...)
(PS : Matlab version 7.5)
Partager