-
Notifications
You must be signed in to change notification settings - Fork 0
/
Train_Equalizacion.m
92 lines (63 loc) · 1.96 KB
/
Train_Equalizacion.m
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
%%
%Este codigo representa el entrenamiento usando svm (svmtrain) en MatLab
%medinate equalizcion de histograma.
%Preparacion del programa
clear all;clc;close all;
addpath('MRI_mat');
addpath('MRI_mat2');
%%
%Para el caso leve
examen=load('prueba_01.mat');
ch1=examen.vol.data(:,:,:,1);
ch2=examen.vol.data(:,:,:,2);
ch3=examen.vol.data(:,:,:,3);
ch4=examen.vol.data(:,:,:,4);
ch5=examen.vol.data(:,:,:,5);
tamanio=size(ch1);
%Equalizacion de los histogramas
for i=1:tamanio(3)
capa_1=ch1(:,:,i);
histeq(capa_1);
ch1_nuevo(:,:,i)=capa_1;
capa_2=ch2(:,:,i);
histeq(capa_2);
ch2_nuevo(:,:,i)=capa_2;
capa_3=ch3(:,:,i);
histeq(capa_3);
ch3_nuevo(:,:,i)=capa_3;
capa_4=ch4(:,:,i);
histeq(capa_4);
ch4_nuevo(:,:,i)=capa_4;
end
%Visualizacion de los canales
for i=1:tamanio(3)
subplot(2,2,1);colormap('gray');imagesc(ch1_nuevo(:,:,i));
subplot(2,2,2);colormap('gray');imagesc(ch2_nuevo(:,:,i));
subplot(2,2,3);colormap('gray');imagesc(ch3_nuevo(:,:,i));
subplot(2,2,4);colormap('gray');imagesc(ch4_nuevo(:,:,i));
drawnow;
hold on;
end
close all;
%Entrenamiento del S.V.M
[CH,CA,anotaciones]=vol_Reshape_5CH(ch1_nuevo,ch2_nuevo,ch2_nuevo,ch2_nuevo,ch5,tamanio(1)*tamanio(2)*tamanio(3));
% modelo=svmtrain(CH,CA,'kernel_function','rbf');
load('modelo_chi.mat');
numpixels=tamanio(1)*tamanio(2)*tamanio(3);
c1_vector=vol_Reshape_1CH(ch1,numpixels);
c2_vector=vol_Reshape_1CH(ch2,numpixels);
c3_vector=vol_Reshape_1CH(ch3,numpixels);
c4_vector=vol_Reshape_1CH(ch4,numpixels);
%%
fondo=0;
no_fondo=0;
for i=1:numpixels
fila=horzcat(c1_vector(i),c2_vector(i),c3_vector(i),c4_vector(i));
if(fila(1)==0&&fila(2)==0&&fila(3)==0&&fila(4)==0)
label(i)=0;
fondo=fondo+1;
else
label(i)=svmclassify(modelo,fila);
no_fondo=no_fonfo+1;
end
end