Bonjour,
Je suis entrain d'assembler deux matrices F et G, je veux assembler les deux matrices selon la valeur maximal des deux colonnes (couleur jaune) dans l'image jointe.
Merci
Bonjour,
Je suis entrain d'assembler deux matrices F et G, je veux assembler les deux matrices selon la valeur maximal des deux colonnes (couleur jaune) dans l'image jointe.
Merci
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 F = [1 1 0 0 0 ; 1 1 0 0 0 ; 1 1 0 1 0 ; 1 1 0 1 0 ; 1 1 1 1 1 ; 1 1 1 1 1]; G = [1 1 1 1 1 ; 1 1 1 1 1 ; 1 1 1 0 1 ; 0 1 1 0 1 ; 0 0 1 0 1 ; 0 0 0 0 1]; nRows = size(F,1); for n = 1:nRows if any(F(n,:) & G(nRows-n+1,:)) break end end n = n-1; FG = [G(1:end-n,:) ; G(end-n+1:end,:)|F(1:n,:) ; F(n+1:end,:)];
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 FG = 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 0 1 1 0 1 1 1 1 0 1 1 1 0 0 1 1 1 0 1 0 1 1 0 1 0 1 1 1 1 1 1 1 1 1 1
Bonjour,
Autre solution peut être:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 F=[1 1 1 1 1;1 1 1 1 1;1 1 0 1 0;1 1 0 1 0;1 1 0 0 0;1 1 0 0 0]; G=[0 0 0 0 1;0 0 1 0 1;0 1 1 0 1;1 1 1 0 1;1 1 1 1 1;1 1 1 1 1]; M=cat(1,F,G); [Y,I] = max(sum(M)); LN=find(M(:,I)==0); M( LN(1)-length(LN):LN(2)-length(LN),:)=M(LN(1:end),:) | M( LN(1)-length(LN):LN(2)-length(LN),:); M(LN(1:end),:)=[]
Jerome Briot
Bonjour,
Le code qui vous m'avez envoyé pour assembler deux matrices, est ce qu'il marche sur toutes matrices de différentes tailles quelque soit grande ou petite ou non.
Bonne journée.
Merci, mon code à chaque fois donne une matrice différente (code Radom), les matrice F et G sont toujours de même taille ligne et les colonnes sont parfois identique et généralement différente.
Mon but est inversé l'une de ces matrices puis assemblage, sachant que l'assemblage se fait à partir de deux colonnes plus max de j.
Pour bien comprendre voir les images![]()
Et quelle est la question ?
Quel est le problème avec le code que j'ai écris précédemment ?
Partager