Christoph Budziszewski commited on 2009-02-16 17:32:42
Zeige 8 geänderte Dateien mit 50 Einfügungen und 44 Löschungen.
git-svn-id: https://svn.discofish.de/MATLAB/spmtoolbox/SVMCrossVal@131 83ab2cfd-5345-466c-8aeb-2b2739fb922d
... | ... |
@@ -23,7 +23,6 @@ sessionList = inputStruct.sessionList; |
23 | 23 |
|
24 | 24 |
% classList = inputStruct.classList; |
25 | 25 |
% labelMap = inputStruct.labelMap; |
26 |
-smoothed = inputStruct.smoothed; |
|
27 | 26 |
eventList = inputStruct.eventList; |
28 | 27 |
|
29 | 28 |
timeLineStart = timeline.frameShiftStart; |
... | ... |
@@ -38,9 +37,15 @@ timeLineEnd = timeline.frameShiftEnd; |
38 | 37 |
minPerformance = inf; |
39 | 38 |
maxPerformance = -inf; |
40 | 39 |
|
41 |
-imageFiles = getImageFileList(des,~smoothed); |
|
40 |
+subjectDir = ''; |
|
41 |
+sessionDirList = sessionList2DirList(sessionList) ; |
|
42 |
+mask = '^fandersen.*img$'; |
|
43 |
+imageFiles = getImageFileList(subjectDir,sessionDirList,mask); |
|
42 | 44 |
|
43 | 45 |
|
46 |
+disp('press key'); |
|
47 |
+pause |
|
48 |
+ |
|
44 | 49 |
extr = calculateImageData(imageFiles,voxelList); |
45 | 50 |
|
46 | 51 |
nVoxel = size(voxelList,1); |
... | ... |
@@ -1,24 +1,9 @@ |
1 |
-function fileList = getImageFileList(des,use_smoothed_image_hack) |
|
1 |
+function fileList = getImageFileList(subjectdir,sessionlist,mask) |
|
2 |
+fileList = []; |
|
2 | 3 |
|
3 |
-global USE_DRIVE_CHECK_HACK; |
|
4 |
- |
|
5 |
-fileList = des.xY.VY; |
|
6 |
-nFiles = length(fileList); |
|
7 |
- |
|
8 |
-if USE_DRIVE_CHECK_HACK |
|
9 |
- if fileList(1).fname(1)~='D' |
|
10 |
- for z=1:nFiles % Change Drive Letter - HACK! |
|
11 |
- fileList(z).fname(1) = 'D'; |
|
12 |
- end; |
|
13 |
- end |
|
14 |
-end |
|
15 |
-if ~use_smoothed_image_hack |
|
16 |
- for z=1:nFiles % Change smoothed Filename - HACK! |
|
17 |
- % D:....SUBJECTID\session\swfanders... |
|
18 |
- % D:....SUBJECTID\session\wfanders... |
|
19 |
- tmp = findstr(filesep,fileList(z).fname); |
|
20 |
- fileList(z).fname = strcat(fileList(z).fname(1:tmp(end)),fileList(z).fname(tmp(end)+2:end)); |
|
21 |
- end; |
|
4 |
+for session = 1:numel(sessionlist) |
|
5 |
+ [sessionFileList dd] = spm_select('FPList',fullfile(subjectdir,sessionlist{session}),mask); |
|
6 |
+ fileList = [fileList; sessionFileList]; |
|
22 | 7 |
end |
23 | 8 |
|
24 | 9 |
end |
25 | 10 |
\ No newline at end of file |
... | ... |
@@ -10,12 +10,14 @@ outstruct.eventMatrix = []; |
10 | 10 |
|
11 | 11 |
for i = 1:nClasses |
12 | 12 |
line = txt(i,:); |
13 |
- delim = strfind(line,','); %first and last are real delimiter |
|
14 | 13 |
|
15 |
- outstruct.labelCells{i} = strtrunc(line(1:delim(1)-1)); |
|
16 |
- outstruct.conditionCells{i} = eval(strtrunc(line(delim(1)+1:delim(length(delim))-1))); |
|
17 |
- outstruct.eventMatrix = [outstruct.eventMatrix ; outstruct.conditionCells{i}]; |
|
18 |
- outstruct.valueCells{i} = strtrunc(line(delim(length(delim))+1:length(line))); |
|
14 |
+ [label rem] = strtok(line,','); |
|
15 |
+ |
|
16 |
+ outstruct.labelCells{i} = strtrim(label); |
|
17 |
+ |
|
18 |
+ conds = eval(strtrim(rem(2:end))); |
|
19 |
+ outstruct.conditionCells{i} = conds; |
|
20 |
+ outstruct.eventMatrix = [outstruct.eventMatrix ; conds]; |
|
19 | 21 |
end |
20 | 22 |
|
21 | 23 |
end |
... | ... |
@@ -0,0 +1,17 @@ |
1 |
+function voxelList = parseCoordinateTextField(txtFieldHandel) |
|
2 |
+s = get(txtFieldHandel,'String'); |
|
3 |
+rows = size(s,1); |
|
4 |
+voxelList = []; |
|
5 |
+ for i = 1:rows |
|
6 |
+ if all(isspace(s(i,:))) |
|
7 |
+ continue; |
|
8 |
+ end |
|
9 |
+ line = s(i,:); |
|
10 |
+ [roi rem] = strtok(line,'+'); |
|
11 |
+ roimod = eval(str2mat(rem(2:end))); |
|
12 |
+ coord.name = roi; |
|
13 |
+ coord.mod = roimod; |
|
14 |
+ voxelList = [voxelList; coord]; |
|
15 |
+ |
|
16 |
+ end |
|
17 |
+end |
|
0 | 18 |
\ No newline at end of file |
... | ... |
@@ -32,20 +32,20 @@ global SVMCROSSVAL_VOXEL_SELECTION_MODE_DEF; |
32 | 32 |
|
33 | 33 |
calculateParams.RANDOMIZE = 0; |
34 | 34 |
|
35 |
- calculateParams.smoothed = getChkValue(paramModel.chkSmoothed); |
|
35 |
+% calculateParams.smoothed = getChkValue(paramModel.chkSmoothed); |
|
36 | 36 |
|
37 |
- calculateParams.svmargs = get(paramModel.txtSVMopts,'String'); |
|
37 |
+% calculateParams.svmargs = get(paramModel.txtSVMopts,'String'); |
|
38 | 38 |
calculateParams.sessionList = 1:3; |
39 | 39 |
|
40 | 40 |
classStruct = parseClassDef(paramModel); |
41 | 41 |
|
42 | 42 |
|
43 |
- calculateParams.labelMap = LabelMap(classStruct.labelCells , classStruct.conditionCells, 'auto'); % LabelMap({'<','>','<+<','>+>','<+>','>+<'},{-2,-1,1,2,3,4}); 0 is autolabel |
|
44 |
- calculateParams.classList = getClasses(calculateParams.labelMap); |
|
43 |
+% calculateParams.labelMap = LabelMap(classStruct.labelCells , classStruct.conditionCells, 'auto'); % LabelMap({'<','>','<+<','>+>','<+>','>+<'},{-2,-1,1,2,3,4}); 0 is autolabel |
|
44 |
+% calculateParams.classList = getClasses(calculateParams.labelMap); |
|
45 | 45 |
calculateParams.eventList = classStruct.eventMatrix; %[9,11,13; 10,12,14]; |
46 | 46 |
% calculateParams.eventList = getPSTEventMatrix(calculateParams.labelMap); |
47 | 47 |
|
48 |
- subjectSelection = getSubjectIDString(paramModel); |
|
48 |
+ subjectSelection = {'JZ006'}; %getSubjectIDString(paramModel); |
|
49 | 49 |
calculateParams.subjectSelection = subjectSelection; |
50 | 50 |
|
51 | 51 |
decode = claculateMultiSubjectDecodePerformance(timelineParams,calculateParams,paramModel); |
... | ... |
@@ -94,7 +94,7 @@ for subjectCell = calculateParams.subjectSelection |
94 | 94 |
subjectParams.des = spm.SPM; |
95 | 95 |
|
96 | 96 |
|
97 |
- subjectParams.voxelList = parseVoxelList(paramModel,SubjectID); |
|
97 |
+ subjectParams.voxelList = mapVoxelList(voxelList,SubjectID); |
|
98 | 98 |
|
99 | 99 |
|
100 | 100 |
subjectParams.SubjectID = SubjectID; |
... | ... |
@@ -240,6 +240,8 @@ function model = createFirstStepPanel(model,parent,DEFAULT) |
240 | 240 |
set(model.txtVoxelDef,'Min',0); |
241 | 241 |
set(model.txtVoxelDef, 'FontName', 'FixedWidth'); |
242 | 242 |
|
243 |
+ assignin('base','txtVoxelDef',model.txtVoxelDef); |
|
244 |
+ |
|
243 | 245 |
%normalizations |
244 | 246 |
pNorm = uipanel(parent,'Title','Normalization','Position',cell2mat(main_grid(2,3))); |
245 | 247 |
set(pNorm,'BackgroundColor','w'); |
... | ... |
@@ -1,25 +1,15 @@ |
1 | 1 |
function spm_SVMCrossVal(varargin) |
2 | 2 |
|
3 |
-SVMCROSSVAL_BASEDIR = fullfile('D:','Analyse','Choice'); |
|
4 |
- |
|
5 | 3 |
defineGlobals(); |
6 | 4 |
|
7 | 5 |
switch nargin |
8 | 6 |
case 0 |
9 |
-% project_UI; |
|
10 |
- main_UI(varargin); |
|
11 |
-case 1 |
|
12 |
- main_UI(varargin); |
|
7 |
+ ui_main(varargin); |
|
13 | 8 |
otherwise |
14 | 9 |
error('spm_SVMCrossVal:main','wrong nargin'); |
15 | 10 |
end |
16 | 11 |
end |
17 | 12 |
|
18 |
-function loadStudies(basedir) |
|
19 |
- |
|
20 |
-end |
|
21 |
- |
|
22 |
- |
|
23 | 13 |
|
24 | 14 |
|
25 | 15 |
|
26 | 16 |