Changeset 1189
- Timestamp:
- Dec 13, 2025, 10:40:41 PM (15 hours ago)
- Location:
- trunk/src
- Files:
-
- 1 added
- 5 edited
-
@xmltree/xmltree.m (modified) (1 diff)
-
read_browsdata.m (added)
-
read_field.m (modified) (1 diff)
-
series.m (modified) (7 diffs)
-
set_param_input.m (modified) (2 diffs)
-
uvmat.m (modified) (17 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/@xmltree/xmltree.m
r1095 r1189 37 37 elseif ischar(varargin{1}) 38 38 % Input argument is an XML string 39 if ( ~exist(varargin{1},'file')&& ...39 if (exist(varargin{1},'file')~=2 && ... 40 40 ~isempty(xml_findstr(varargin{1},'<',1,1))) 41 41 tree.tree = xml_parser(varargin{1}); -
trunk/src/read_field.m
r1184 r1189 57 57 ParamOut=ParamIn;%default 58 58 errormsg=''; 59 if isempty(regexp(FileName,'^http://', 'once'))&& ~exist(FileName,'file')59 if isempty(regexp(FileName,'^http://', 'once'))&& exist(FileName,'file')~=2 60 60 errormsg='input file does not exist'; 61 61 return -
trunk/src/series.m
r1188 r1189 345 345 Param.j1_series=Param.HiddenData.j1_series{1}; 346 346 Param.j2_series=Param.HiddenData.j2_series{1}; 347 Param.FileInfo=Param.HiddenData.FileInfo{1}; 348 Param.Relabel=[];%default 347 349 update_rootinfo(handles,Param,Param.HiddenData.MovieObject{1},1)% update the data for the first input line 348 350 if isfield(Param,'FileName_1')% if there is a second input line from uvmat … … 354 356 Param.j1_series=Param.HiddenData.j1_series{2}; 355 357 Param.j2_series=Param.HiddenData.j2_series{2}; 358 Param.FileInfo=Param.HiddenData.FileInfo{2}; 356 359 update_rootinfo(handles,Param,Param.HiddenData.MovieObject{2},2)% update the data for the second input line 357 360 end … … 399 402 400 403 %delete the bowser if detected 401 hh=findobj(allchild(0),'tag','browser'); fileinput404 hh=findobj(allchild(0),'tag','browser'); 402 405 if ~isempty(hh) 403 406 delete(hh) … … 608 611 if ~isempty(XmlFileName) 609 612 XmlData=read_imadoc(XmlFileName); 610 if isfield(XmlData,'FileSeries')613 if ~isempty(XmlData.FileSeries) 611 614 set(handles.Relabel,'Visible','on') 612 615 answer='Yes'; … … 1034 1037 MinIndex_j=0; 1035 1038 end 1036 if isfield(Param .FileInfo,'Software')&&~isempty(Param.FileInfo.Software) && ~isempty(regexp(Param.FileInfo.Software,'^pco.camware', 'once'))1039 if isfield(Param,'FileInfo') && isfield(Param.FileInfo,'Software')&&~isempty(Param.FileInfo.Software) && ~isempty(regexp(Param.FileInfo.Software,'^pco.camware', 'once')) 1037 1040 MinIndex_i=0; 1038 1041 end … … 1124 1127 % end 1125 1128 1126 if ~isempty(Param.FileInfo) && strcmp(Param.FileInfo.FileType,'rdvision')1129 if isfield(Param,'FileInfo') && ~isempty(Param.FileInfo) && strcmp(Param.FileInfo.FileType,'rdvision') 1127 1130 set(handles.OutputSubDir,'String','/im') 1128 1131 end … … 4165 4168 function Relabel_Callback(hObject, eventdata, handles) 4166 4169 CheckRelabel=get(hObject,'Value'); 4170 if CheckRelabel 4171 InputTable=get(handles.InputTable,'Data');%read the table of input file series 4172 XmlFileName=find_imadoc(InputTable{1,1},InputTable{1,2}); 4173 if ~isempty(XmlFileName) 4174 XmlData=read_imadoc(XmlFileName); 4175 if isempty(XmlData.FileSeries) 4176 browse_data(fullfile(InputTable{1,1},InputTable{1,2})) 4177 else 4178 hbrowse=findobj(allchild(0),'Tag','browse_data'); 4179 if ~isempty(hbrowse) 4180 delete(hbrowse) 4181 end 4182 end 4183 end 4184 end 4167 4185 check_input_file_series(handles,CheckRelabel) 4168 ActionInput_Callback([],[], handles)4186 ActionInput_Callback([],[], handles) 4169 4187 % if get(handles.Relabel,'Value') 4170 4188 % NomType='*'; -
trunk/src/set_param_input.m
r1157 r1189 8 8 9 9 10 function [ParamOut,errormsg] = set_param_input(ListParam,DefaultValue,ParamIn, Comment)10 function [ParamOut,errormsg] = set_param_input(ListParam,DefaultValue,ParamIn,Title) 11 11 ParamOut=[]; 12 12 errormsg=[]; 13 13 NbParam=numel(ListParam); 14 14 if numel(DefaultValue)~=NbParam 15 error smsg='ERROR in set_param_input: the list of default values must have the same size as the list of parameters';15 errormsg='ERROR in set_param_input: the list of default values must have the same size as the list of parameters'; 16 16 return 17 17 end 18 if ~exist(' Comment','var')19 Comment=cell(NbParam,1);18 if ~exist('Title','var') 19 Title='get the input parameters'; 20 20 end 21 21 prompt=cell(NbParam,1); … … 32 32 end 33 33 end 34 dlg_title = 'get the input parameters';35 34 options.Resize='on'; 36 answer = inputdlg(ListParam,dlg_title,NbParam,prompt,options);37 %answer = msgbox_uvmat('INPUT_TXT',ListParam);35 options.WindowStyle='normal'; 36 answer = inputdlg(ListParam,Title,1,prompt,options); 38 37 if isempty(answer) 39 38 return -
trunk/src/uvmat.m
r1187 r1189 226 226 dir_perso=prefdir; % path to the directory .matlab containing the personal data of the current user 227 227 profil_perso=fullfile(dir_perso,'uvmat_perso.mat');% personal data file uvmat_perso.mat' in .matlab 228 if exist(profil_perso,'file') % if the file exists228 if exist(profil_perso,'file')==2% if the file exists 229 229 h=load (profil_perso); % open the personal file 230 230 if isfield(h,'MenuFile')% load the saved menu of previously opened files … … 243 243 if isfield(h,'transform_fct') && iscell(h.transform_fct) % load the menu of transform fct set by user 244 244 for ilist=1:length(h.transform_fct) 245 if exist(h.transform_fct{ilist},'file') 245 if exist(h.transform_fct{ilist},'file')==2 246 246 [path,file]=fileparts(h.transform_fct{ilist}); 247 247 transform_menu=[transform_menu; {file}]; … … 252 252 if isfield(h,'export_fct') && iscell(h.export_fct) % load the menu of export fct set by user 253 253 for ilist=1:length(h.export_fct) 254 if exist(h.export_fct{ilist},'file') 254 if exist(h.export_fct{ilist},'file')==2 255 255 [path,file]=fileparts(h.export_fct{ilist}); 256 256 export_menu=[export_menu; {file}]; … … 759 759 end 760 760 end 761 if exist(MovieName,'file') 761 if exist(MovieName,'file')==2 762 762 backup=MovieName; 763 763 testexist=2; 764 764 while testexist==2 765 765 backup=[backup '~']; 766 testexist=exist(backup,'file') ;766 testexist=exist(backup,'file')==2; 767 767 end 768 768 [success,message]=copyfile(MovieName,backup);%make backup of the existing file … … 1943 1943 1944 1944 %------------------------------------------------------------------------ 1945 %-- introduce a section FileSeries in the xml file ImaDoc to virtually relabel frames 1945 %-- introduce a section FileSeries in the xml file ImaDoc to virtually relabel frames 1946 1946 % -------------------------------------------------------------------- 1947 1947 function MenuRelabelFrames_Callback(hObject, eventdata, handles) 1948 1948 1949 1949 1950 [RootPath,SubDir,RootFile,FileIndex,FileExt]=read_file_boxes(handles); 1950 1951 FileName=[fullfile(RootPath,SubDir,RootFile) FileIndex FileExt]; 1951 CheckRelabel=false; 1952 % if the option is selected from previous 'off' state 1953 if strcmp(get(handles.MenuRelabelFrames,'checked'),'off') 1954 if strcmp(FileExt,'.seq') 1955 XmlFile=regexprep(FileName,'.seq$','.xml'); 1952 % CheckRelabel=false; 1953 1954 if strcmp(FileExt,'.seq') 1955 XmlFile=regexprep(FileName,'.seq$','.xml'); 1956 else 1957 XmlFile=fullfile(RootPath,[SubDir '.xml']); 1958 end 1959 [XmlData,errormsg]=imadoc2struct(XmlFile); 1960 if isempty(XmlData) || isempty(XmlData.Time) 1961 msgbox_uvmat('ERROR',['the timing needs to be documented in the file ' XmlFile]) 1962 return 1963 end 1964 FileInfo=get_file_info(FileName); 1965 switch FileInfo.FileType 1966 case 'multimage' 1967 if strcmp(FileExt,'.tif') && ~isempty(regexp(RootFile,'^im', 'once'))% case of PCO images, document <FileSeries> in the xml file 1968 ListParam={'Convention','NbFramePerFile','Dtj','NbDtj','Dti','NbDti'}; 1969 FileSeries.Convention='PCO'; 1970 FileSeries.NbFramePerFile=FileInfo.NumberOfFrames; 1971 % BurstTiming.Dtj=''; 1972 % BurstTiming.NbDtj=''; 1973 % BurstTiming.Dti=''; 1974 % BurstTiming.NbDti=''; 1975 end 1976 case 'rdvision'%TO CHECK****** 1977 check_time_rdvision(FileName,XmlData) 1978 end 1979 hbrowse=browse_data(fullfile(RootPath,SubDir)) 1980 %STR = input('OK?') 1981 [BurstTiming,errormsg] = set_param_input(ListParam,{'PCO',FileInfo.NumberOfFrames,'','','',''},[]);%fill an input panel with Matlab fct 'inputdlg' 1982 FileSeries.Convention=BurstTiming.Convention; BurstTiming=rmfield(BurstTiming,'Convention'); 1983 Camera.BurstTiming=BurstTiming; 1984 FileSeries.FileName={'im.tif';'im@0001.tif'}; 1985 FileSeries.NbFramePerFile=BurstTiming.NbFramePerFile; BurstTiming=rmfield(BurstTiming,'NbFramePerFile'); 1986 1987 % 1988 % BrowseData=guidata(hbrowse); 1989 % SourceDir=get(BrowseData.SourceDir,'String'); 1990 % ListExp=get(BrowseData.ListExperiments,'String'); 1991 % ExpIndices=get(BrowseData.ListExperiments,'Value'); 1992 % ListExp=ListExp(ExpIndices); 1993 % ListDevices=get(BrowseData.ListDevices,'String'); 1994 % DeviceIndices=get(BrowseData.ListDevices,'Value'); 1995 % ListDevices=ListDevices(DeviceIndices); 1996 % ListDataSeries=get(BrowseData.DataSeries,'String'); 1997 % DataSeriesIndices=get(BrowseData.DataSeries,'Value'); 1998 % ListDataSeries=ListDataSeries(DataSeriesIndices); 1999 % NbExp=0; % counter of the number of experiments set by the GUI browse_data 2000 % for iexp=1:numel(ListExp) 2001 % if ~isempty(regexp(ListExp{iexp},'^\+/', 'once'))% if it is a folder 2002 % for idevice=1:numel(ListDevices) 2003 % if ~isempty(regexp(ListDevices{idevice},'^\+/', 'once'))% if it is a folder 2004 % for isubdir=1:numel(ListDataSeries) 2005 % if ~isempty(regexp(ListDataSeries{isubdir},'^\+/', 'once'))% if it is a folder 2006 % lpath= fullfile(SourceDir,regexprep(ListExp{iexp},'^\+/',''),... 2007 % regexprep(ListDevices{idevice},'^\+/','')); 2008 % ldir= regexprep(ListDataSeries{isubdir},'^\+/',''); 2009 % if exist(fullfile(lpath,ldir),'dir') 2010 % NbExp=NbExp+1; 2011 % ListPath{NbExp}=lpath; 2012 % ListSubdir{NbExp}=ldir; 2013 % ExpIndex{NbExp}=iexp; 2014 % end 2015 % end 2016 % end 2017 % end 2018 % end 2019 % end 2020 % end 2021 [ListPath, ListSubdir]=read_browsdata (hbrowse); 2022 NbExp=numel(ListSubdir); 2023 for iexp=1:NbExp 2024 [checkupdate,XmlFile,errormsg]=update_imadoc(ListPath{iexp},ListSubdir{iexp},'Camera',Camera) 2025 if ~strcmp(errormsg,'') 2026 msgbox_uvmat('ERROR',errormsg); 1956 2027 else 1957 XmlFile=fullfile(RootPath,[SubDir '.xml']); 1958 end 1959 [XmlData,errormsg]=imadoc2struct(XmlFile); 1960 if isempty(XmlData) || isempty(XmlData.Time) 1961 msgbox_uvmat('ERROR',['the timing needs to be documented in the file ' XmlFile]) 1962 return 1963 end 1964 FileInfo=get_file_info(FileName); 1965 switch FileInfo.FileType 1966 case 'multimage' 1967 if strcmp(FileExt,'.tif') && ~isempty(regexp(RootFile,'^im', 'once'))% case of PCO images, document <FileSeries> in the xml file 1968 FileSeries.Convention='PCO'; 1969 FileSeries.FileName{1,1}='im.tif'; 1970 FileSeries.FileName{2,1}='im@0001.tif'; 1971 FileSeries.NbFramePerFile=FileInfo.NumberOfFrames; 1972 [checkupdate,xmlfile,errormsg]=update_imadoc(RootPath,SubDir,'FileSeries',FileSeries); 1973 if isempty(errormsg) 1974 disp([xmlfile 'updated with FileSeries']) 1975 CheckRelabel=true; 1976 else 1977 disp(errormsg) 1978 end 1979 end 1980 case 'rdvision' 1981 check_time_rdvision(FileName,XmlData) 1982 end 1983 if CheckRelabel 1984 set(handles.MenuRelabelFrames,'checked','on') 1985 errormsg=update_series(handles,RootPath,SubDir,FileName,FileInfo,false,1); 1986 end 1987 else % option set to 'off' 1988 set(handles.MenuRelabelFrames,'checked','off')%if the option was chcked, uncheck it 1989 errormsg=update_series(handles,RootPath,SubDir,FileName,FileInfo,false,1); 1990 end 2028 update_imadoc(ListPath{iexp},ListSubdir{iexp},'FileSeries',FileSeries,0);% introduce the FileSeries data in the xml file 2029 if checkupdate 2030 disp([XmlFile ' updated with FileSeries']) 2031 else 2032 disp([XmlFile ' created with FileSeries']) 2033 end 2034 end 2035 end 2036 msgbox_uvmat('CONFIMATION',['FileSeries replicated for ' num2str(NbExp) ' experiments, open with uvmat to check']); 2037 1991 2038 if ~isempty(errormsg) 1992 2039 disp(errormsg) … … 1996 2043 function check_time_rdvision(FileName,XmlData) 1997 2044 s=ini2struct(FileName); 1998 SeqData=s.sequenceSettings;1999 SeqData.width=str2double(SeqData.width);2000 SeqData.height=str2double(SeqData.height);2001 SeqData.bytesperpixel=str2double(SeqData.bytesperpixel);2002 SeqData.nb_frames=str2double(s.sequenceSettings.numberoffiles);2003 if isempty(SeqData.binrepertoire)%used when binrepertoire empty, strange feature of rdvision2004 SeqData.binrepertoire=regexprep(s.sequenceSettings.bindirectory,'\\$','');%tranform Windows notation to Linux2005 SeqData.binrepertoire=regexprep(SeqData.binrepertoire,'\','/');2006 [tild,binrepertoire,DirExt]=fileparts(SeqData.binrepertoire);2007 SeqData.binrepertoire=[SeqData.binrepertoire DirExt];2008 end2009 2010 %% reading the .sqb file2011 SqbFile=regexprep(FileName,'.seq$','.sqb');2012 m = memmapfile(SqbFile,'Format', { 'uint32' [1 1] 'offset'; ...2013 'uint32' [1 1] 'garbage1';...2014 'double' [1 1] 'timestamp';...2015 'uint32' [1 1] 'file_idx';...2016 'uint32' [1 1] 'garbage2' },'Repeat',SeqData.nb_frames);2017 2018 %%%%%%%BRICOLAGE in case of unreadable .sqb file: remplace lecture du fichier2019 % ind=[111 114:211];%indices of bin files2020 % w=1024;%w=width of images in pixels2021 % h=1024;%h=height of images in pixels2022 % bpp=2;% nbre of bytes per pixel2023 % lengthimage=w*h*bpp;% lengthof an image record on the binary file2024 % nbimages=32; %nbre of images of each camera in a bin file2025 % for ii=1:32*numel(ind)2026 % data(ii).offset=mod(ii-1,32)*2*lengthimage+lengthimage;%Dalsa_22027 % %data(ii).offset=mod(ii-1,32)*2*lengthimage;%Dalsa_12028 % data(ii).file_idx=ind(ceil(ii/32));2029 % data(ii).timestamp=0.2*(ii-1);2030 % end2031 % m.Data=data;2032 %%%%%%%2033 timestamp=zeros(1,numel(m.Data));2034 for ii=1: numel(m.Data)2035 timestamp(ii)=m.Data(ii).timestamp;2036 end2037 difftime=XmlData.Time(2:end,2:end);2038 difftime=timestamp'-reshape(difftime,[],1);2039 disp(['time from xml and timestamp differ by ' num2str(max(max(abs(difftime))))])2040 if max(abs(difftime))>0.012041 figure(1)2042 plot(timestamp,difftime)2043 xlabel('time(s)')2044 ylabel('timestamp-XmlData.Time(s)')2045 end2046 2047 %% checking consistency with the xml file2048 if ~isequal(SeqData.nb_frames,numel(timestamp))2049 disp_uvmat('ERRROR',['inconsistent number of images ' num2str(SeqData.nb_frames) ' with respect to the xml file: ' num2str(numel(timestamp))] ,checkrun);2050 return2051 end 2052 2053 disp ('max time difference xml and timestamps (IN SEC.)')2054 max(abs(difftime))2045 SeqData=s.sequenceSettings; 2046 SeqData.width=str2double(SeqData.width); 2047 SeqData.height=str2double(SeqData.height); 2048 SeqData.bytesperpixel=str2double(SeqData.bytesperpixel); 2049 SeqData.nb_frames=str2double(s.sequenceSettings.numberoffiles); 2050 if isempty(SeqData.binrepertoire)%used when binrepertoire empty, strange feature of rdvision 2051 SeqData.binrepertoire=regexprep(s.sequenceSettings.bindirectory,'\\$','');%tranform Windows notation to Linux 2052 SeqData.binrepertoire=regexprep(SeqData.binrepertoire,'\','/'); 2053 [tild,binrepertoire,DirExt]=fileparts(SeqData.binrepertoire); 2054 SeqData.binrepertoire=[SeqData.binrepertoire DirExt]; 2055 end 2056 2057 %% reading the .sqb file 2058 SqbFile=regexprep(FileName,'.seq$','.sqb'); 2059 m = memmapfile(SqbFile,'Format', { 'uint32' [1 1] 'offset'; ... 2060 'uint32' [1 1] 'garbage1';... 2061 'double' [1 1] 'timestamp';... 2062 'uint32' [1 1] 'file_idx';... 2063 'uint32' [1 1] 'garbage2' },'Repeat',SeqData.nb_frames); 2064 2065 %%%%%%%BRICOLAGE in case of unreadable .sqb file: remplace lecture du fichier 2066 % ind=[111 114:211];%indices of bin files 2067 % w=1024;%w=width of images in pixels 2068 % h=1024;%h=height of images in pixels 2069 % bpp=2;% nbre of bytes per pixel 2070 % lengthimage=w*h*bpp;% lengthof an image record on the binary file 2071 % nbimages=32; %nbre of images of each camera in a bin file 2072 % for ii=1:32*numel(ind) 2073 % data(ii).offset=mod(ii-1,32)*2*lengthimage+lengthimage;%Dalsa_2 2074 % %data(ii).offset=mod(ii-1,32)*2*lengthimage;%Dalsa_1 2075 % data(ii).file_idx=ind(ceil(ii/32)); 2076 % data(ii).timestamp=0.2*(ii-1); 2077 % end 2078 % m.Data=data; 2079 %%%%%%% 2080 timestamp=zeros(1,numel(m.Data)); 2081 for ii=1: numel(m.Data) 2082 timestamp(ii)=m.Data(ii).timestamp; 2083 end 2084 difftime=XmlData.Time(2:end,2:end); 2085 difftime=timestamp'-reshape(difftime,[],1); 2086 disp(['time from xml and timestamp differ by ' num2str(max(max(abs(difftime))))]) 2087 if max(abs(difftime))>0.01 2088 figure(1) 2089 plot(timestamp,difftime) 2090 xlabel('time(s)') 2091 ylabel('timestamp-XmlData.Time(s)') 2092 end 2093 2094 %% checking consistency with the xml file 2095 if ~isequal(SeqData.nb_frames,numel(timestamp)) 2096 disp_uvmat('ERRROR',['inconsistent number of images ' num2str(SeqData.nb_frames) ' with respect to the xml file: ' num2str(numel(timestamp))] ,checkrun); 2097 return 2098 end 2099 2100 disp ('max time difference xml and timestamps (IN SEC.)') 2101 max(abs(difftime)) 2055 2102 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2056 2103 % MenuRun Callbacks … … 2234 2281 %% look for the input file existence and properties in the structure FileInfo 2235 2282 errormsg='';%default 2236 if isempty(regexp(fileinput,'^http' )) && ~exist(fileinput,'file')2283 if isempty(regexp(fileinput,'^http', 'once')) && exist(fileinput,'file')~=2 2237 2284 errormsg=['input file ' fileinput ' does not exist']; 2238 2285 msgbox_uvmat('ERROR',errormsg) … … 2329 2376 set(handles.num_j2,'String',num2stra(j2,NomType)); 2330 2377 if isfield(FileInfo,'MaskFile') 2331 if exist(FileInfo.MaskFile,'file') 2378 if exist(FileInfo.MaskFile,'file')==2 2332 2379 set(handles.CheckMask,'Value',1) 2333 2380 else … … 2387 2434 %updtate the indices of the second field series to correspond to the newly opened one 2388 2435 FileName_1=fullfile_uvmat(Input.RootPath_1,Input.SubDir_1,Input.RootFile_1,Input.FileExt_1,Input.NomType_1,i1_s,i2_s,j1_s,j2_s); 2389 if exist(FileName_1,'file') 2436 if exist(FileName_1,'file')==2 2390 2437 FileIndex_1=fullfile_uvmat('','','','',Input.NomType_1,i1_s,i2_s,j1_s,j2_s); 2391 2438 else … … 2418 2465 dir_perso=prefdir; 2419 2466 profil_perso=fullfile(dir_perso,'uvmat_perso.mat'); 2420 if exist(profil_perso,'file') 2467 if exist(profil_perso,'file')==2 2421 2468 save (profil_perso,'MenuFile','RootPath','-append'); %store the file names for future opening of uvmat 2422 2469 else … … 2981 3028 if isequal(option,'view xml') 2982 3029 FileXml=fullfile(RootPath,[SubDir '.xml']); 2983 if ~exist(FileXml,'file') % case of civ files , removes the extension for subdir3030 if ~exist(FileXml,'file')==2% case of civ files , removes the extension for subdir 2984 3031 FileXml=fullfile(RootPath,[regexprep(SubDir,'\..+$','') '.xml']); 2985 3032 end … … 3093 3140 UvData.TransformName=TransformName; %update the recorded name on UvData 3094 3141 set(handles.uvmat,'UserData',UvData); 3095 if ~exist(MaskName,'file')3142 if exist(MaskName,'file')~=2 3096 3143 if isfield(MaskInfo,'maskhandle')&& ishandle(Mask.maskhandle) 3097 3144 delete(MaskInfo.maskhandle) … … 3099 3146 else 3100 3147 %read mask image 3101 [MaskField, tild,errormsg] = read_field(MaskName,'image');3148 [MaskField,~,errormsg] = read_field(MaskName,'image'); 3102 3149 if ~isempty(errormsg) 3103 3150 return … … 3786 3833 frame_index_1=1; 3787 3834 if ~isempty(FileName_1) 3788 if ~exist(FileName_1,'file')3835 if exist(FileName_1,'file')~=2 3789 3836 errormsg=['second file ' FileName_1 ' does not exist']; 3790 3837 return … … 4922 4969 imagename=fullfile_uvmat(RootPath,SubDirBase,RootFile,'.png',NomType,i1,[],j1,[]); 4923 4970 end 4924 if ~exist(imagename,'file')4971 if exist(imagename,'file')~=2 4925 4972 imagename=uigetfile_uvmat('Pick an image file',imagename,'image'); 4926 4973 if isempty(imagename) … … 5088 5135 imagename=fullfile_uvmat(RootPath,SubDirBase,RootFile,'.png','_1',i1,[],j1,[]); 5089 5136 end 5090 if ~exist(imagename,'file')5137 if exist(imagename,'file')~=2 5091 5138 imagename=uigetfile_uvmat('Pick an image file',imagename,'image'); 5092 5139 … … 5436 5483 dir_perso=prefdir;%personal Matalb directory 5437 5484 profil_perso=fullfile(dir_perso,'uvmat_perso.mat'); 5438 if exist(profil_perso,'file') 5485 if exist(profil_perso,'file')==2 5439 5486 nb_builtin=UvData.OpenParam.NbBuiltin;% number of 'builtin' (basic) transform fcts in uvmat 5440 5487 if nb_builtin<numel(list_path)
Note: See TracChangeset
for help on using the changeset viewer.
