Christoph Budziszewski commited on 2008-12-17 18:42:12
Zeige 4 geänderte Dateien mit 50 Einfügungen und 5 Löschungen.
git-svn-id: https://svn.discofish.de/MATLAB/spmtoolbox/SVMCrossVal@94 83ab2cfd-5345-466c-8aeb-2b2739fb922d
| ... | ... |
@@ -53,10 +51,13 @@ end |
| 53 | 51 |
calculateParams.svmargs = get(paramModel.txtSVMopts,'String'); |
| 54 | 52 |
calculateParams.sessionList = 1:3; |
| 55 | 53 |
|
| 56 |
-% parseClassDef(paramModel) |
|
| 57 |
- calculateParams.classList = {'<','>'};
|
|
| 58 |
- calculateParams.labelMap = LabelMap({'<','>','<+<','>+>','<+>','>+<'},{-2,-1,1,2,3,4});
|
|
| 59 |
- calculateParams.eventList = [9,11,13; 10,12,14]; |
|
| 54 |
+ classStruct = parseClassDef(paramModel); |
|
| 55 |
+ assignin('base','classStruct',classStruct);
|
|
| 56 |
+ |
|
| 57 |
+ calculateParams.classList = classStruct.label; %{'<','>'};
|
|
| 58 |
+ calculateParams.labelMap = LabelMap(classStruct.label , classStruct.value); % LabelMap({'<','>','<+<','>+>','<+>','>+<'},{-2,-1,1,2,3,4});
|
|
| 59 |
+ calculateParams.eventList = classStruct.event; %[9,11,13; 10,12,14]; |
|
| 60 |
+ |
|
| 60 | 61 |
|
| 61 | 62 |
assignin('base','calculateParams',calculateParams);
|
| 62 | 63 |
|
| ... | ... |
@@ -0,0 +1,20 @@ |
| 1 |
+function outstruct = parseClassDef(model) |
|
| 2 |
+outstruct = struct; |
|
| 3 |
+txt = get(model.txtClassDef,'String'); |
|
| 4 |
+ |
|
| 5 |
+% txt =txt(find(all(isspace(txt(i,:))) ??? |
|
| 6 |
+ |
|
| 7 |
+nClasses = size(txt,1); % clear empty lines! |
|
| 8 |
+ |
|
| 9 |
+outstruct.event = []; |
|
| 10 |
+ |
|
| 11 |
+for i = 1:nClasses |
|
| 12 |
+ line = txt(i,:); |
|
| 13 |
+ delim = strfind(line,','); %first and last are real delimiter |
|
| 14 |
+ |
|
| 15 |
+ outstruct.label{i} = strtrunc(line(1:delim(1)-1));
|
|
| 16 |
+ outstruct.event = [outstruct.event ; eval(strtrunc(line(delim(1)+1:delim(length(delim))-1)))]; |
|
| 17 |
+ outstruct.value{i} = strtrunc(line(delim(length(delim))+1:length(line)));
|
|
| 18 |
+end |
|
| 19 |
+ |
|
| 20 |
+end |
| ... | ... |
@@ -78,6 +78,7 @@ function spm_SVMCrossVal |
| 78 | 78 |
set(model.txtClassDef,'HorizontalAlignment','left'); |
| 79 | 79 |
set(model.txtClassDef,'Max',20); |
| 80 | 80 |
set(model.txtClassDef,'Min',0); |
| 81 |
+ set(model.txtClassDef, 'FontName', 'FixedWidth') |
|
| 81 | 82 |
|
| 82 | 83 |
%Voxel |
| 83 | 84 |
nVoxelRows = 8; |
| ... | ... |
@@ -88,10 +89,11 @@ function spm_SVMCrossVal |
| 88 | 89 |
|
| 89 | 90 |
lVoxelDef = createLabel(pVOXEL, [firstColumn firstRow 0.66*frameWidth controlElementHeight],'<ROI Name>,<ROI Modifier>;'); |
| 90 | 91 |
model.txtVoxelDef = createTextField(pVOXEL,[firstColumn secondRow 0.98*frameWidth 6*controlElementHeight],... |
| 91 |
- sprintf('M1 l,\t[ 0, 0, 0];\nM1 l,\t[ 1, 0, 0];\nM1 l,\t[ 0, 1, 0];\nM1 l,\t[ 1, 0, 1];\n'));
|
|
| 92 |
+ sprintf('M1 l,\t[ 0, 0, 0];\nM1 l,\t[ 1, 0, 0];\nM1 l,\t[ 0, 1, 0];\nM1 l,\t[ 0, 0, 1];\n'));
|
|
| 92 | 93 |
set(model.txtVoxelDef,'HorizontalAlignment','left'); |
| 93 | 94 |
set(model.txtVoxelDef,'Max',20); |
| 94 | 95 |
set(model.txtVoxelDef,'Min',0); |
| 96 |
+ set(model.txtVoxelDef, 'FontName', 'FixedWidth') |
|
| 95 | 97 |
|
| 96 | 98 |
% SVM |
| 97 | 99 |
firstColumn = 5.00; |
| ... | ... |
@@ -0,0 +1,20 @@ |
| 1 |
+% function s = strtrunc(str) |
|
| 2 |
+% s=str; |
|
| 3 |
+% c=1 |
|
| 4 |
+% while isspace(s(c)) |
|
| 5 |
+% s = s(2:length(s)) |
|
| 6 |
+% end |
|
| 7 |
+% while isspace(s(length(s))) |
|
| 8 |
+% s = s(1:length(s)-1); |
|
| 9 |
+% end |
|
| 10 |
+% end |
|
| 11 |
+ |
|
| 12 |
+function s = strtrunc(str) |
|
| 13 |
+if isspace(str(1)) |
|
| 14 |
+ s = strtrunc(str(2:length(str))); |
|
| 15 |
+elseif isspace(str(length(str))) |
|
| 16 |
+ s = strtrunc(str(1:length(str)-1)); |
|
| 17 |
+else |
|
| 18 |
+ s = str; |
|
| 19 |
+end |
|
| 20 |
+end |
|
| 0 | 21 |
\ No newline at end of file |
| 1 | 22 |