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!
gegeben ist ein Array (z.B. ein Bild, in diesem Fall aber ein 12x12 Array mit Werten von 0-6). Ich möchte jetzt jedes einzelne Element aus diesem Array mit einem Wert vergleichen. Wenn der Wert größer ist, soll das Element mit dem Eintrag 0 überschrieben werden, wenn der Wert kleiner ist, soll der Eintrag in 1 umgeschrieben werden. Den fertigen Array, bestehend aus 0en und 1en will ich hinterher in einem Array wieder darstellen oder irgendwas anderes machen. Wichtig ist erstmal, dass ich hinterher einen Array habe, der nur aus 0 und 1 besteht
Mein Problem ist nun, dass er die geänderten Werte nicht speichert und das bisher geänderte beim nächsten Schleifendruchlauf wieder auf den Ursprung zurücksetzt.
ich denke du solltest die Arrays außerhalb der Schleifen legen. In der ersten Schleife wählst du dann aus dem gesamten Array nur die erste Zeile und in der zweiten Schleife vergleichst du die Werte. Beim "betreten" des Arrays in eine Schleife wird automatisch nur ein Wert gelesen, das kannste mir Rechtsklick auf den Knoten ändern, falls erforderlich. Denke dann sollte das klappen, kanns leider nich auf die Schnelle ausprobieren da ich nur LV 7.1 habe.
11.08.2011, 14:12 (Dieser Beitrag wurde zuletzt bearbeitet: 11.08.2011 14:16 von bienee.)
Wenn ich die Arrays außerhalb der Schleife habe, läuft er erst die komplette Schleife durch, bevor er das Ergebnis in den output-Array schreibt, was in diesem Fall ja dann nur das Element (12,12) ist oder nicht? Wenn das Programm bei mir im Debug-Modus einmal durchgelaufen ist, ist der Output-Array gleich dem Input-Array (auch das letzte Element).
(11.08.2011 13:49 )M@rRy schrieb: Beim "betreten" des Arrays in eine Schleife wird automatisch nur ein Wert gelesen, das kannste mir Rechtsklick auf den Knoten ändern, falls erforderlich.
^^Ich verstehe nicht ganz was du damit meinst und mit rechtsklick auf die Knoten finde ich auch nichts, was nach dieser Funktion aussieht. Knoten sind doch in meinem Programm gerade nur die gelben Index-Array- und Compare-Bausteine oder?
11.08.2011, 14:20 (Dieser Beitrag wurde zuletzt bearbeitet: 11.08.2011 14:22 von Lucki.)
dann muss ich doch viel genauer beschreiben was ich später machen will. Sinn der Sache ist ein Graustufen-bild in einen Array zu verwandeln und in diesem Graustufen-Bild alle Werte oberhalb einer bestimmten Grenze (irgendein Grauton, den ich jetzt noch nicht kenne, sagen wir mal 100) in die Frabe Weiß zu ändern, also den Wert 255 zuzuordnen und alle Werte unter der Grenze in eine 0 zu ändern um sie damit Schwarz zu machen. Wobei es eigentlich egal ist, wie herum ich das mache. Deshalb wollte ich eigentlich eine allgemeinere Variante programmieren. Wenn ich aber deine Variante in die Tat umsetze muss ich noch herausfinden, wie ich eine 2-Farben Palette erstelle, in der 0 schwarz und 1 weiß ist.
Aber ansonsten ist die Lösung hervorragend.
Anzeige
11.08.2011, 15:05 (Dieser Beitrag wurde zuletzt bearbeitet: 11.08.2011 15:06 von Lucki.)
(11.08.2011 15:14 )bienee schrieb: reicht es da nicht, wenn wenn ich bei z.B. PictureToPixmap.vi bei depth eine Konstante mit 1 anlege?
Ist es nicht viel einfacher die richtigen Grauwerte anstatt 0 und 1 reinzuschreiben?
ja...das war mein ursprünglicher Plan. An dieser Stelle bin ich eben nicht weiter gekommen. Ich würde eigentlich gerne selbst bestimmen können welche Werte eingetragen werden.