|
stratist9011 |

Forum-Anfänger
|
 |
Beiträge: 43
|
 |
|
 |
Anmeldedatum: 12.04.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 13.04.2013, 12:33
Titel: Matrix Werte aufzwingen
|
 |
Hallo,
ich bin noch ziemlich neu in der Matlab-Programmierung und stehe gerade vor einem Problem was ich einfach nicht gelöst bekomme.
Ich habe eine 680x900 Matrix mit Werten zwischen 0 und 256 und will in dieser von einem Histogramm ausgehend nur Werte von 0 bis 30 zulassen ...
Hier meine Idee :
[i,j] = find(b ~= [0:25]);
for m = 1:length(i)
b(i(m),j(m)) = 256;
end
Leider gibt mir Matlab dann die Fehlermeldung, das die Dimensionen der Matrix für die Operation übereinstimmen müssen. Es wäre super wenn mir jemand vielleicht einen Tipp geben könnte wie es funktionieren könnte ...
Danke
|
|
|
|
|
Juliannn |

Forum-Newbie
|
 |
Beiträge: 2
|
 |
|
 |
Anmeldedatum: 13.04.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 13.04.2013, 14:07
Titel: Matrix Wertproblem
|
 |
Hallo,
sollen die Werte angeglichen werden?
Also: 256 = 30, 128=15
Oder sollen alle Werte über 30 auf 30 gesetzt werden?
Grüße,
Julian
|
|
|
stratist9011 |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 43
|
 |
|
 |
Anmeldedatum: 12.04.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 13.04.2013, 14:33
Titel:
|
 |
Hallo Julian,
ich will eigentlich erreichen das alle Werte der Matrix die außerhalb des Intervalls [0:30] liegen den Wert 256 erhalten.
Grüße,
Alex
|
|
|
Juliannn |

Forum-Newbie
|
 |
Beiträge: 2
|
 |
|
 |
Anmeldedatum: 13.04.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 13.04.2013, 14:58
Titel:
|
 |
Okey!
Warum dann nicht einfach eine Schleife wie diese unten?
Sollte funktionieren und wenn du fragen zur Anpassung hast nur her damit.
Julian
|
|
|
stratist9011 |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 43
|
 |
|
 |
Anmeldedatum: 12.04.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 13.04.2013, 15:59
Titel:
|
 |
hm ... leider funktioniert das nicht. Wenn ich das im Editor mal durchlaufen lassen sagt mir Matlab : cant be evaluated because cell contains invalid statement ... trotzdem danke
|
|
|
Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 13.04.2013, 22:42
Titel:
|
 |
Hallo stratist9011,
Bitte poste im Forum immer eine Kopie der Fehlermeldung und nicht nur Teile daraus. Vorallem wäre es wichtig zu wissen, in welcher Zeile der Fehler auftritt, weil wir das nicht erraten können.
Es ist merkwürdig, dass Du Werte bis 30 zulassen möchtest und dies mit "find(b ~= [0:25])" testest. Mit "find(b > 30)" würde es eher klappen. Aber effizienter ist:
Werte von 0 bis 256 sind übrigens ungewöhnlich. 0 bis 255 trifft man dagegen häufig, da dies der Wertebereich von UINT8-Zahlen ist.
Gruß, Jan
|
|
|
stratist9011 |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 43
|
 |
|
 |
Anmeldedatum: 12.04.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 14.04.2013, 12:02
Titel:
|
 |
Hallo Jan,
ah sorry habe gerade festgestellt, das ich 255 meine. Danke für den Hinweis !
Werde deinen zweiten Vorschlag jetzt mal versuchen umzusetzten melde mich dann nochmal wie es funktioniert hat ...
Grüße,
Alex
|
|
|
stratist9011 |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 43
|
 |
|
 |
Anmeldedatum: 12.04.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 14.04.2013, 14:02
Titel:
|
 |
Also hier ist jetzt mal das was ich gemacht habe. Klappt jetzt erstmal so wie es sollte ...
Danke hat mir sehr geholfen ...
|
|
|
stratist9011 |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 43
|
 |
|
 |
Anmeldedatum: 12.04.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 14.04.2013, 14:10
Titel:
|
 |
Und direkt die nächste Frage. Gibt es Filterfunktionen die aus einem Bild einen bestimmten Wert rausfiltern und mir diese dann in Form einer Matrix ausgeben ??? ...
|
|
|
Andy386 |

Forum-Guru
|
 |
Beiträge: 485
|
 |
|
 |
Anmeldedatum: 24.06.09
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: 7.1/8
|
 |
|
|
 |
|
Verfasst am: 14.04.2013, 19:33
Titel:
|
 |
aus einem Bild einen Wert filtern? Wie soll das gehen?
_________________
Ich hasse es wenn die Leute Fragen stellen, man dann versucht sich Mühe zu geben, und diejenigen ihren Thread nie wieder besuchen...
|
|
|
stratist9011 |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 43
|
 |
|
 |
Anmeldedatum: 12.04.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 15.04.2013, 15:23
Titel:
|
 |
Naja ich will ein Bild einladen und dann eine Struktur dort heraus filtern (d.h das Bild soweit weiß machen bis nur diese Struktur übrig bleibt). Der Vorteil dabei ist, das die Strukturkanten bzw. die Markierungen auf der Struktur tief schwarz sind.
Wenn ich nun das Bild in Matlab einbinde und es soweit bearbeite wie ich es bisher mit dem Code tue, bleibt nur die Struktur übrig.
Ich hatte zuvor zwei Varianten über die Image Processing Toolbox probiert die aber leider keine guten Ergebnisse lieferten, weshalb ich es jetzt auf diese Art gemacht habe.
Der nächste Schritt soll jetzt sein aus der verbliebenen Struktur eine Punktwolke mit örtlichen Maxima zu erzeugen, dort einen Mittelpunkt zu finden und dann eine Gerade dort durch zu legen.
Leider weiß ich bisher keinen Weg eine solche Punktwolke zu erzeugen.
Ich hoffe das konnte zum Verständnis meines Problems beitragen
|
|
|
Andy386 |

Forum-Guru
|
 |
Beiträge: 485
|
 |
|
 |
Anmeldedatum: 24.06.09
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: 7.1/8
|
 |
|
|
 |
|
Verfasst am: 15.04.2013, 16:48
Titel:
|
 |
Ein wenig. irgendwie ist es etwas verworren, mal willst du ne Struktur finden, dann nur ein paar Maxima, dann eine Grade...
Mach vielleicht mal ein paar Skizzen, vielleicht kann man dann gezielter helfen.
_________________
Ich hasse es wenn die Leute Fragen stellen, man dann versucht sich Mühe zu geben, und diejenigen ihren Thread nie wieder besuchen...
|
|
|
stratist9011 |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 43
|
 |
|
 |
Anmeldedatum: 12.04.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 15.04.2013, 16:54
Titel:
|
 |
Also das ist jetzt vereinfacht mal eine Skizze wie ich sie derzeit erhalte ...
Jetzt will ich in meinem nächsten Schritt, dieses Bild soweit runterbrechen das nur noch Stellen übrig bleiben wo sehr viele schwarze Bildpunkte existieren.
Beschreibung: |
|
 Download |
Dateiname: |
untitled.jpg |
Dateigröße: |
46.53 KB |
Heruntergeladen: |
387 mal |
|
|
|
Andy386 |

Forum-Guru
|
 |
Beiträge: 485
|
 |
|
 |
Anmeldedatum: 24.06.09
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: 7.1/8
|
 |
|
|
 |
|
Verfasst am: 16.04.2013, 00:32
Titel:
|
 |
Also geht es dir nicht um die Form (gebogene Linie) sondern nur um Maximas (da wo du öfters gekrakelt hast)?
_________________
Ich hasse es wenn die Leute Fragen stellen, man dann versucht sich Mühe zu geben, und diejenigen ihren Thread nie wieder besuchen...
|
|
|
stratist9011 |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 43
|
 |
|
 |
Anmeldedatum: 12.04.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 16.04.2013, 12:51
Titel:
|
 |
Genau, habe mich da vorher etwas umständlich ausgedrückt.
|
|
|
|
Gehe zu Seite 1, 2 Weiter
|
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 - 2025
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.
|
|