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!
17.10.2008, 11:17 (Dieser Beitrag wurde zuletzt bearbeitet: 17.10.2008 11:19 von TSC.)
' schrieb:Es geht natürlich komplett ohne Schleifen:
[attachment=42381:swAnteil...tteln_v2.vi]
Bemerkungen:
-Da du nur auf Graustufen als Schwellwert untersuchen willst, habe ich das U32-Bild-Array in ein U8-Array gewandelt. Somit kannst du direkt Graustufen von 0-255 als Schwellwert eingeben. (Falls dein Original-Bild ein Graustufenbild ist, kannst du natürlich beim Einlesen direkt den U8-Ausgang verwenden).
-Das VI berechnet zwecks Einsatz der Event-Struktur erst einen Wert, wenn du die Grenze "y" änderst.
Gruß, Jens
@TSchAC: Vereinfachung für dein VI: Verbinde das äußere Shiftregister direkt mit dem inneren, dann brauchst du in deiner äußeren Schleife nicht addieren.
Und du multiplizierst innerhalb deiner Schleifen die Größe des Bildes aus, sowas gehört außerhalb der Schleifen.
Hallo,
normal wird ein 24 Bit Bild aber über bestimmte anteile in 8Bit Graustufen umgerechnet.
' schrieb:Hallo,
normal wird ein 24 Bit Bild aber über bestimmte anteile in 8Bit Graustufen umgerechnet.
@TSchac
normal heißt RGB Rot, GRÜN, Blau
Mike
Jo da haste recht und den denkfehler hat mir mein Physiklehrer vor 10 jahren schon nicht austreiben können,.. das wird dir auch nicht gelingen,.. *lach* danke trotzdem für den versuch,.. achja und das andere hab ich nicht verstanden,.. ein 24 bit bild (bunt mit voller farbenpracht!?) wird über was umgerechnet? und warum sollte es umgerechnet werden? es ist doch schon ein graustufen (slo 8 bit) bild.
und noch ne andere frage,.. in allen VIs wird ein JPG eingelesen, man erhält die bilddaten,.. die werden dann in ein 2d array umgeformt, aber ist das nötig? sind in den original bilddaten nicht auch alle punkte in nem 1d array enthalten? ich habe das mal getestet und habe leider nur ein 1d array raus bekommen, dass 3*so groß war wie pixel vorhanden sind, laut hilfe liegt das daran, dass die imagedaten in rgb (rot grün blau *fg*) angegeben sind und jeder farbanteil als eigenes element angegeben ist. kann man da nicht auch irgendwie die richtigen werte extrahieren?
"Über Fragen, die ich nicht beantworten kann, zerbreche ich mir nicht den Kopf!" (Konrad Zuse)
' schrieb:Jo da haste recht und den denkfehler hat mir mein Physiklehrer vor 10 jahren schon nicht austreiben können,.. das wird dir auch nicht gelingen,.. *lach* danke trotzdem für den versuch,.. achja und das andere hab ich nicht verstanden,.. ein 24 bit bild (bunt mit voller farbenpracht!?) wird über was umgerechnet? und warum sollte es umgerechnet werden? es ist doch schon ein graustufen (slo 8 bit) bild.
und noch ne andere frage,.. in allen VIs wird ein JPG eingelesen, man erhält die bilddaten,.. die werden dann in ein 2d array umgeformt, aber ist das nötig? sind in den original bilddaten nicht auch alle punkte in nem 1d array enthalten? ich habe das mal getestet und habe leider nur ein 1d array raus bekommen, dass 3*so groß war wie pixel vorhanden sind, laut hilfe liegt das daran, dass die imagedaten in rgb (rot grün blau *fg*) angegeben sind und jeder farbanteil als eigenes element angegeben ist. kann man da nicht auch irgendwie die richtigen werte extrahieren?
Hallo TSchAC,
Ja es sind 3 mal soviele Pixel vorhanden, weil 8Bit für R, 8 für Grün und 8 für Blau benutzt werden.. Um daraus ein Grauwertbild zu machen, wird das anteilig umgerechnet, so dass du danach tatsächlich ein Array hast das nur 8Bit pro Pixel hat, eben einen Grauwert.
Das angehängte Bild zeigt wie es umgerechnet wird. Die Werte ergeben sich aus der unterschiedlichen Wahrnehmungsfähigkeit der Menschen.