|
|
Sinus-Plot in Binär umwandeln! |
|
nolimits |

Forum-Anfänger
|
 |
Beiträge: 19
|
 |
|
 |
Anmeldedatum: 21.08.12
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 21.08.2012, 13:01
Titel: Sinus-Plot in Binär umwandeln!
|
 |
Hi!
Ich habe eine Seite gefunden auf der Zonenplatten mittels sinus-Funktion in Matlab erstellt werden. Ich möchte jedoch ein binäres Muster haben.
Da ich absoluter Laie in Matlab bin, woltle ich fragen, ob jemand vllt hier weiß wie man diesesn Code umstrickeln muss:
[x,y] = meshgrid(-200:200);
km = 0.8*pi;
rm = 200;
w = rm/10;
term1 = sin( (km * r.^2) / (2 * rm) );
g = term1;
imshow(g)
um statt einen saften Kantenverlauf (sinus) einen scharfkantigen (binär) zu bekommen:
http://www.lrz.de/~slansky/bereiche.....der/zonenplatte_sinus.png
zu:
http://glsmyth.com/pinhole/Articles/ZonePlate/image43.gif
Danke!
Alex
|
|
|
|
|
Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 21.08.2012, 14:37
Titel: Re: Sinus-Plot in Binär umwandeln!
|
 |
Hallo nolimits,
"Scharfkantig" heißt, dass bei einem bestimmten Schwellenwert der Wert wechseln soll. dann einfach einfügen:
Oder umständlicher:
Gruß, Jan
|
|
|
nolimits |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 19
|
 |
|
 |
Anmeldedatum: 21.08.12
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 24.08.2012, 19:38
Titel:
|
 |
Danke! Hat geklappt!
Ich brauche allerdings einen bestimmten Grauwert. So wirft er nur Schwarz und Weiß aus.
Kann ich matlab sagen, er solle mir den Grauwert Stufe 150 von 255 liefern?
|
|
|
Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 26.08.2012, 01:20
Titel:
|
 |
Hallo nolimits,
Der Code, den Du gepostet hast, läuft übrigens nicht. Dann ist es schwieriger eine Lösung zu erstellen.
Was hast Du denn bisher versucht und was hat nicht funktioniert?
Vielleicht funktioniert dies bereits:
Gruß, Jan
|
|
|
nolimits |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 19
|
 |
|
 |
Anmeldedatum: 21.08.12
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 26.08.2012, 12:52
Titel:
|
 |
Hi,
Das Script läuft bei mir wunderbar...
Siehe auch: http://blogs.mathworks.com/steve/20.....ahne-test-pattern-take-3/
Deine Ergänzung ist auch prima! Leider hatte ich mich komisch ausgedrückt. Ich wollte nicht die weißen Ringe sonder die Schwarzen den Grauwert 150 bekommen. Das habe ich mit nen bissl Google so hinbekommen:
Leider ist auch das Ende der Zonenplatte grau. Dies soll allerdings wieder Schwarz sein. Ich glaube dann müsste man nicht "g" sondern "term1" und "term2" gesondert bearbeiten mit diesem Schwellwert.
Beschreibung: |
Zonenplatte mir Grauwert der schwarzen Ringe bei 0.5 |
|
 Download |
Dateiname: |
zp ones.png |
Dateigröße: |
26.13 KB |
Heruntergeladen: |
606 mal |
Beschreibung: |
Zonenplatte um Ursprungszustand. Schwarze Flächen sollen Grauwert 150 bekommen. |
|
 Download |
Dateiname: |
untitled01.png |
Dateigröße: |
12.53 KB |
Heruntergeladen: |
699 mal |
|
|
|
nolimits |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 19
|
 |
|
 |
Anmeldedatum: 21.08.12
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 26.08.2012, 13:38
Titel:
|
 |
Habs hinbekommen! Matlab ist ja doch net so schwer^^
Ich hätte nur noch die Möglichkeit statt einen Grauwert "0.5" den Grauwert "150" von "255" zu definieren. Wie muss man den Befehl nun ändern?
Diese Änderung läuft nämlich nicht. Da bekomm ich nur eine komplette weiße, runde Fläche:
Beschreibung: |
|
 Download |
Dateiname: |
weiße runde fl.png |
Dateigröße: |
2.56 KB |
Heruntergeladen: |
671 mal |
Beschreibung: |
|
 Download |
Dateiname: |
grauwert 0.5.png |
Dateigröße: |
13.18 KB |
Heruntergeladen: |
703 mal |
|
|
|
Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 27.08.2012, 15:07
Titel:
|
 |
Hallo nolimits,
Entweder Du verwendest als Daten DOUBLEs im Bereich 0 bis 1, oder UINT8 im Bereich 0 bis 255. Nur beide zu mischen funkitioniert nicht.
Gruß, Jan
|
|
|
nolimits |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 19
|
 |
|
 |
Anmeldedatum: 21.08.12
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 27.08.2012, 19:14
Titel:
|
 |
Hi und Danke!
Ich habe jetzt einfach
genommen. Er hätte später ein Rechenproblem bei dem Produkt:
wenn ich unit8 nehmen würde. Müsste doch auch gehen, oder warum hast du in Klammern (v) geschrieben?
|
|
|
|
|
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.
|
|