INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Dieses Thema hat akzeptierte Lösungen:

Voronoi in Maske konvertieren



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

09.04.2014, 09:20
Beitrag #1

jules Offline
LVF-Neueinsteiger


Beiträge: 3
Registriert seit: Apr 2014

2011
-
kA



Voronoi in Maske konvertieren
Hallo!

Ich habe ein Intensitätsdiagramm mit 144 Maxima. Dieses wird mit 128 x 128, 256 x 256 oder 512 x 512 Pixel dargestellt. Diese Maxima werden bestimmt und mit Cursor versehen und mit den Cursorpositionen wird dann ein Voronoi berechnet. Hierbei habe ich mich am bereitgestellten Bespiel zur Voronoi-Darstellung orientiert. Die Cursor und das Voronoi befinden sich in einem X,Y-Graph und Bild des Intensitätsgraphen ist als Hintergrundbild passend eingefügt.
Hier beginnt mein Problem:
Im weiteren möchte ich herausfinden, in welchem Feld des Voronois ein Punkt aus einer gegebene Tabelle mit x- und y-Werten, liegt. D.h. ich würde die Felder gern durchnummerieren und diese Zahl dann in der Tabelle hinzufügen. Es handelt sich um 10 Mio. Punkte, die dann zu 144 Voronoi-Felder zugeteilt werden.

Ich habe schon über einige Lösungsansätze nachgedacht und poste hier einfach mal meine Ideen. Vielleicht hilft das weiter, ich konnte damit noch nicht viel anfangen.
Ich habe darüber nachgedacht, die Voronoi Gitterlinien als Maske zu verwenden oder die Fleder als Polygone zu definieren. Man könnte auch die x- und y-Werte der Pixel je nachdem zu welchem Feld sie angehören z.B. in Arrays zusammenfassen oder ein Bereich im X,Y-Graph selbst definieren.

Nochmal was zur Darstellung des Voronois: es sind momentan nur die Kreuzungspunkte definiert und die Anzeige erfolgt mittels Plot -> Interpolation -> linear.

Im Anhang ist die Funktion die das Voronoi aus den Maxima berechnet und der X,Y-Graph in dem das Ganze dargestellt wird.

Ich arbeite mit lv11_img.

Ich hoffe, dass alee nötigen Informationen dabei sind.

Vielen Dank für eure Hilfe!
jules


Angehängte Datei(en)
11.0 .vi  CalculateVoronoi (2).vi (Größe: 103,34 KB / Downloads: 229)

11.0 .vi  X,Y-Graph.vi (Größe: 90,3 KB / Downloads: 225)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
09.04.2014, 09:48 (Dieser Beitrag wurde zuletzt bearbeitet: 09.04.2014 09:57 von GerdW.)
Beitrag #2

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Voronoi in Maske konvertieren
Hallo jules,

könntest du mal ein paar Standardwerte in X3/Y3 hinterlegen?

Edit:
Die sehr langsame Methode dürfte darin bestehen, deine Voronois als Polygon zu sehen und dann mit "Punkt in Polygon?" zu prüfen, in welchem Polygon dein jeweiliger Datenpunkt liegt. Bei 10Mio Punkten und 144 Polygonen könnte dieser Test etwas dauern…

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
10.04.2014, 08:23
Beitrag #3

jules Offline
LVF-Neueinsteiger


Beiträge: 3
Registriert seit: Apr 2014

2011
-
kA



RE: Voronoi in Maske konvertieren
Hallo GerdW!

an die Funktion Punkt in Polygon, habe ich auch schon gedacht, so weit bin ich nur leider nicht gekommen. Smile

Im Anhang ist ein neues VI mit Werten.

Vielen Dank für deine Mühe!


Angehängte Datei(en)
11.0 .vi  VoronoiMitWerten.vi (Größe: 51,42 KB / Downloads: 219)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
10.04.2014, 09:05
Beitrag #4

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Voronoi in Maske konvertieren

Akzeptierte Lösung

Hallo Jules,

ein Voronoi-Diagramm zeigt Regionen an, in denen jeder Punkt näher an seinem Zentrum liegt als an den Zentren der angrenzenden Regionen.

Also reduziert sich dein Vergleich auf eine Abstandsbestimmung, die man am einfachsten mit komplexen Zahlen durchführt:
   


Angehängte Datei(en)
11.0 .vi  VoronoiMitWerten.vi (Größe: 60,86 KB / Downloads: 224)

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
10.04.2014, 10:05
Beitrag #5

jules Offline
LVF-Neueinsteiger


Beiträge: 3
Registriert seit: Apr 2014

2011
-
kA



RE: Voronoi in Maske konvertieren
Hallo GerdW,

vielen Dank für die schnelle und vor allem geniale Lösung! Erfüllt den Zweck und ist total simpel.

Grüße jules
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Gehe zu: