Matlab - darle nombre a submatrices de una matriz

 
Vista:
sin imagen de perfil
Val: 5
Ha aumentado su posición en 10 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

darle nombre a submatrices de una matriz

Publicado por javi (2 intervenciones) el 21/08/2020 04:30:35
Estimados, Tengo una matriz de 689x1701 de ceros y unos, en ella he generado submatrices de 15x15 para poder trabajar con ellas, en cada submatriz busco una cierta cantidad de unos y si sobrepasa un umbral o un porcentaje le doy valor de unos a toda la matriz de 15x15.

ahora mi problema es el siguiente, como le puedo dar nombre a cada matriz de 15x15 que he generado, tengo este codigo que es con el cual estoy trabajando


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
clc
A = rec3;
[y1,x1]=size(A);
sm=15;
for i=1:sm:y1
    for j=1:sm:x1
        c=0;
        for n=i:(i + (sm-1))
            for m=j:(j + (sm-1))
                if (i+(sm-1))<y1 && (j+(sm-1))<x1
                if (rec3(n,m) == 1)
                    c = c + 1;
                end
                if c>=(sm*sm*0.14);
                    rec3([i:(i+(sm-1))],[j:(j+(sm-1))]) = ones(sm);   -----------> esta linea trabaja con las matrices de 15x15 y necesito darle nombre, son al rededor de 5 mil matrices por lo tanto quiero generar un nombre para cada una ejemplo desde a1 hasta a5000
                end
                end
            end
        end
     end
end


en sintesis, necesito que las submatrices de 15x15 generen su propia variable con nombre distinto y se guarde el valor de "rec3([i:(i+(sm-1))],[j:(j+(sm-1))])" para posteriormente tomar esa variable y poder trabajarla a parte.

leí por ahí que con la función eval, pero no se realmente como realizarlo
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 8.016
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

darle nombre a submatrices de una matriz

Publicado por JOSE JEREMIAS CABALLERO (5780 intervenciones) el 21/08/2020 04:56:00
1
2
3
4
for i=1:3
    A=rand(3,2);
   eval(['x',num2str(i),'=A']);
end
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar