Wählen Sie Diagonale Elemente einer Matrix in MATLAB
Betrachten Sie die folgende matrix in MATLAB:
01 02 03 04 05 06 07
08 09 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
Habe ich zu generieren direktionale variograms für solche 7 x 7 Fenster(verschieben) eines Bildes. Ich werde nlfilter
für den Prozess aber für die Entwicklung der Funktion zu berechnen variograms ich bin nicht in der Lage zu entscheiden, wie Sie wählen Sie Elemente im Fenster. Zum Beispiel wenn ich bedenke das ein zentraler Wert 25, in EW-Richtung, ich habe nur Bedenken 25, 26, 27 und 28; in NE Richtung, die ich beachten sollte nur 25, 19, 13 und 07 bei der lag gewählt ist 1. Gibt es irgendein standard-Befehl zu tun?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie eine Funktion schreiben, die diese Elemente leicht selbst:
Schreibe einfach diesen code in eine Funktion (am besten ein m-file), führen Ihren Betrieb und übergeben Sie das Ergebnis zurück.
Den
diag
Funktion gibt die diagonalen Elemente der matrix (oder zurück eine Diagonale matrix, wenn ein Vektor übergeben).Kann man es auch so:
was in
Dies ist die Generische matrix-Lösung (nicht für MATLAB)
angenommen, die matrix AxB =
in dieser matrix, die wir suchen wollen, kontinuierlich 3 mal Aussehen des AA-Diagonal.
Lösung:-
Schritt 1
für die gesamte matrix, die wir zu schaffen haben 4 getrennte Schleifen zu suchen, das Aussehen des AA-kontinuierlich 3 mal
ich bin hinzufügen-Methode, durch die ein Benutzer suchen kann, die alle loop-und kann den Artikel zu finden.
rufen Sie nun diese Methode, wo jeder in der Klasse und überprüfen können, dass die matrix die suchbaren Artikel verfügbar ist oder nicht in wiederholt, um Sie Horizontal, Vertikal und Diagonal.