|
matlabfisch |
Forum-Newbie
|
|
Beiträge: 4
|
|
|
|
Anmeldedatum: 04.10.16
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 04.10.2016, 19:48
Titel: Matrix Nachbarn addieren
|
|
Guten Abend,
wie kann ich für eine gegebene mxn-Matrix die 8 Nachbarn eines Eintrags addieren?
Die Matrix A soll dabei nur aus 0,1 bestehen und heraus kommen soll eine Matrix B die Nebenbedingungen der Summe der Nachbarn eines Eintrags erfüllt.
Danke für die Hilfe.
|
|
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.492
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 04.10.2016, 19:56
Titel:
|
|
Hallo,
die Frage ist mir nicht ganz klar, insbesondere
Zitat: |
eine Matrix B die Nebenbedingungen der Summe der Nachbarn eines Eintrags erfüllt. |
aber es klingt nach
filter2
.
Grüße,
Harald
|
|
|
matlabfisch |
Themenstarter
Forum-Newbie
|
|
Beiträge: 4
|
|
|
|
Anmeldedatum: 04.10.16
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 04.10.2016, 20:00
Titel:
|
|
Okay ich versuche es nochmal genauer zu beschreiben. Wir arbeiten mit Matlab falls das nicht klar war.
A ist eine (mxn)-Matrix mit 1,0 als Einträge.
Dann brauche ich ein Programm, dass A in eine Matrix B transformiert.
B soll auch nur aus 1,0 bestehen und ein Eintrag B(i,j) ist 1 falls:
A(i,j)=1 und genau zwei Nachbarn von A(i,j)=1
oder
unabhängig von A(i,j) genau drei Nachbarn den Wert 1 haben.
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.492
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 04.10.2016, 20:39
Titel:
|
|
Hallo,
das Hauptproblem dürfte ja sein, die Anzahl der 1-Nachbarn zu finden. Das sollte sich eben mit
filter2
lösen lassen mit Maske:
Grüße,
Harald
P.S.: Klingt nach Game of Life?
|
|
|
matlabfisch |
Themenstarter
Forum-Newbie
|
|
Beiträge: 4
|
|
|
|
Anmeldedatum: 04.10.16
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 04.10.2016, 20:44
Titel:
|
|
Ha wenn es nur das Problem wäre, das ist unser zweiter Tag mit Matlab und ich bin arg überfordert. Programmiererfahrung habe ich auch absolut keine.
Die Idee die ich bei den anderen so mitbekommen habe wäre es die Matrix A immer zu verschieben, d.h eine Nullzeile erzeugen und hinterher zu überlagern so, dass alle Nachbarn und A(i,j) in der entstandenen Matrix aufaddiert werden und man dann quasi ablesen kann wieviele Nachbarn von A(i,j) 1 bzw 0 waren.
Aber das bekomme ich halt einmal so gar nicht auf die Reihe.
Hatte mir auch selber etwas ähnliches, aber umständlicheres überlegt.
Also das Prinzip ist mir klar, nur die Umsetzung eben in Code gelingt mir einfach gar nicht aufgrund der mangelnden Praxis.
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.492
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 04.10.2016, 21:26
Titel:
|
|
Hallo,
mit filter2 kannst du dir das sparen.
Grüße,
Harald
|
|
|
matlabfisch |
Themenstarter
Forum-Newbie
|
|
Beiträge: 4
|
|
|
|
Anmeldedatum: 04.10.16
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 04.10.2016, 21:28
Titel:
|
|
Vielen Dank Harald, ich werde damit etwas rum basteln.
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2024
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|