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 

Image to Array, Maximale Aufloesung



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!

30.01.2012, 14:07
Beitrag #11

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: Image to Array, Maximale Aufloesung
Unflatten Pixmap aus der Graphics VI Palette, langt dir das?

Gruß, Jens

Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)

!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
23.03.2012, 11:28
Beitrag #12

donkey22 Offline
LVF-Grünschnabel
*


Beiträge: 17
Registriert seit: Mar 2012

11.0
2012
DE



Sad RE: Image to Array, Maximale Aufloesung
Hallo Gemeinde,
ich habe das Problem, dass ich in einem 2-D Array (U8)(erstellt aus einer BMP) Pixelfarben vergleichen soll.
Konkret soll ich ein VI erstellen, jedes Pixel des neuen Bildes aus der Differenz seiner direkt horizontal angrenzenden Nachbarn berechnet.

11, 12, 13, 14
21, 22, 23, 24...usw.

Die Werte von 11 und 13 von einander abziehen und daraus entsteht der Wert 12 für das neue Bild.
Für die Randwerte (mit nur einem horizontalen Nachbarn) hatte ich mir vorgestellt diesen zu duplizieren und die Berechnung dann beim n+1. Pixel zu beginnen:

10, 11, 12, 13...
wobei 10=11.

Und dann 10 und 12 verrechnen und 11 fürs neue Bild erzeugen Wink.

Den read.bmp und unflattern Pixmap habe ich bereits gefunden, doch wie komme ich damit weiter??

Über Hilfe wäre ich sehr dankbar!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
23.03.2012, 11:45
Beitrag #13

GerdW Offline
______________
LVF-Team

Beiträge: 17.480
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Image to Array, Maximale Aufloesung
Hallo Donkey,

- U8 speichern entweder Graustufen oder Indizes einer Farbtabelle. "Pixelfarben" dagegen benötigen üblicherweise 24bit Speicherplatz...

- Der triviale Weg besteht in einer FOR-Loop über jede Zeile im Bild. Für jede Zeile dann jeweils die Pixelwerte indizieren und miteinander verrechnen (auch in einer Schleife).

Zitat:Für die Randwerte ... diesen zu duplizieren
Ich würde nur von Pixel 1 bis n-2 rechnen (Zählung beginnt bei 0 und endet bei n-1 bei n Pixeln pro Zeile)...

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
23.03.2012, 12:16
Beitrag #14

donkey22 Offline
LVF-Grünschnabel
*


Beiträge: 17
Registriert seit: Mar 2012

11.0
2012
DE



RE: Image to Array, Maximale Aufloesung
Hey GerdW,

Das mit den Pixelfarben habe ich falsch gesagt sorry. =) Das VI soll später horizontale Kanten suchen (Bildverarbeitung).
Ich komm nur nicht ganz dahinter wie ich die Graustufen/Indizes miteinander verrechnen kann (also wie ich sie überhaupt aus dem Bild heraus bekomme um mit ihnen zu rechnen).

Dann lege ich eine for loop an und führe dort das 2D Array drauf...

(Tut mir Leid, wenn ich mich anstelle wie ein Anfänger, aber ich bin leider auch einer)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
23.03.2012, 12:59 (Dieser Beitrag wurde zuletzt bearbeitet: 23.03.2012 13:00 von GerdW.)
Beitrag #15

GerdW Offline
______________
LVF-Team

Beiträge: 17.480
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Image to Array, Maximale Aufloesung
Hallo Donkey,

Zitat:wenn ich mich anstelle wie ein Anfänger, aber ich bin leider auch einer
Hast du den Link in meiner Signatur beachtet?

Vorschlag (ohne besondere Behandlung der Ränder):
   
Während du das nachprogrammierst, solltest du dir überlegen, wieso/weshalb/warum ich es so vorgemacht habe...

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
23.03.2012, 13:04
Beitrag #16

rolfk Offline
LVF-Guru
*****


Beiträge: 2.306
Registriert seit: Jun 2007

alle seit 6.0
1992
EN

2901GG
Niederlande
RE: Image to Array, Maximale Aufloesung
(30.01.2012 11:25 )Erdberquark schrieb:  Danke für die Antwort.


Wenn ich das richtig sehe wollen die Ordentlich Geld dafür ;-)

Gibt es auch eine möglichkeit das ohne Extra Kosten zu Realisieren?

Also Bild in Pixel umrechen.



Gruß

Quark

Wenn Du IMAQ Vision Bilder verwendest verwendest Du eigentlich schon das Vision Toolkit. Nun war (ist?) es so dass in der Vergangenheit ein sehr kleiner Teil des Vision Toolkits innerhalb der Interface VIs zum Vision Acquisition Treiber auch verfügbar waren ohne dass man dazu eine Vision Toolkit Lizenz benötigte (aber eine Vision Acquisition Runtime Lizenz), die für die Entwicklung, aber nicht für Runtime Executables Bestandteil der Treibersoftware war die man mit der NI Hardware mitbekommt. Aber das ist halt eben ein sehr beschränktes Subset des Vision Toolkits, das nur gerade soweit geht, dass man ein eingelesenes Bild im Frontpanel darstellen kann. Alles andere benötigt effektief das Vision Toolkit.

Rolf Kalbermatter
Technische Universität Delft, Dienst Elektronik und Mechanik
https://blog.kalbermatter.nl
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
26.03.2012, 11:52
Beitrag #17

donkey22 Offline
LVF-Grünschnabel
*


Beiträge: 17
Registriert seit: Mar 2012

11.0
2012
DE



RE: Image to Array, Maximale Aufloesung
Hallo GerdW,
tausend Dank für Deine Hilfen.

(23.03.2012 12:59 )GerdW schrieb:  Hast du den Link in meiner Signatur beachtet?

Ja den habe ich gesehen und auch schon durchstöbert. Leider finde ich recht wenig zur Graustufenanalyse etc. von Pixel..

(23.03.2012 12:59 )GerdW schrieb:  Während du das nachprogrammierst, solltest du dir überlegen, wieso/weshalb/warum ich es so vorgemacht habe...

Also über read bmp.file und unflatten.pixmap erzeuge ich ein U8 2D-Array. Dieses gibt mir mit dem Matrix size die Anzahl der Durchläufe der for-loops. (Sollte dazu nicht auch die number of rows mit dem N der äußeren for-loop verbunden werden?

So wie ich das verstehe, zeihst du die 2 von der Anzahl Columns ab um den Inhalt des zweitletzten Elements zu erhalten.
Den indicator der inneren for-loop gibt den index für das neue Array und für den zwei Stellen weiter. Diese beiden Inhalte werden Subtrahiert um das neue Element zu erhalten...?

Beim nachprogrammieren habe ich Schwierigkeiten mit dem Array2. Dieses Ding hat bei mir keine Klammern stattdessen aber zwei blaue Rechtecke um U8... und werden hier jetzt schon Graustufen verglichen? Oder benötige ich dazu den "Colors" Ausgang des Unflatten Pixmap Bausteins?

So sieht es bisher bei mir aus...

   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
26.03.2012, 11:59 (Dieser Beitrag wurde zuletzt bearbeitet: 26.03.2012 12:01 von GerdW.)
Beitrag #18

GerdW Offline
______________
LVF-Team

Beiträge: 17.480
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Image to Array, Maximale Aufloesung
Hallo donkey,

Zitat:Beim nachprogrammieren habe ich Schwierigkeiten mit dem Array2.
Das könnte daran liegen, dass du eben dort kein Array hast, sondern nur eine skalare Anzeige...
Merke:
Passende Anzeigen erzeugt man einfach durch Rechtsklick auf den Ausgang einer Funktion/Struktur und Wahl von Erzeuge->Anzeige...

Zitat:Sollte dazu nicht auch die number of rows mit dem N der äußeren for-loop verbunden werden?
Nein, nicht nötig. Nachdenken, warum das so ist - und evtl. den Basics-Lehrgang wiederholen, da wird das erläutert...

Zitat:So wie ich das verstehe, zeihst du die 2 von der Anzahl Columns ab um den Inhalt des zweitletzten Elements zu erhalten.
Nein, ich mache das, um nur die "inneren" Pixel einer Zeile zu betrachten - und das sind nunmal 2 weniger als die Zeile insgesamt Pixel hat...

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
26.03.2012, 12:02
Beitrag #19

donkey22 Offline
LVF-Grünschnabel
*


Beiträge: 17
Registriert seit: Mar 2012

11.0
2012
DE



RE: Image to Array, Maximale Aufloesung
Klicke ich aber nach dem Minus mit rechts und Create einen Indikator bekomme ich genau das. (Das klappt auch. Ziehe ich diesen nun aus den zwei For-Loops wird die Verbindung zwischen den äußeren For-Loop und dem Indikator als fehlerhaft angezeigt..
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
26.03.2012, 12:05 (Dieser Beitrag wurde zuletzt bearbeitet: 26.03.2012 12:05 von GerdW.)
Beitrag #20

GerdW Offline
______________
LVF-Team

Beiträge: 17.480
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Image to Array, Maximale Aufloesung
Hallo donkey,

Zitat:durch Rechtsklick auf den Ausgang einer Funktion/Struktur
Noch Fragen?

Der Datentyp ist in der inneren Schleife ein anderer als außerhalb der beiden Schleifen. Warum ist das wohl so?

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Zoomfaktor programmatisch in Image-Array-Indikator gottfried 5 6.791 13.09.2012 16:13
Letzter Beitrag: gottfried
  get image by name, dispose image by name, list of active images gottfried 1 5.957 16.04.2012 13:30
Letzter Beitrag: b.p
  Roi an Image to Array vi Manfred Tamminga 0 3.740 01.06.2011 11:48
Letzter Beitrag: Manfred Tamminga
  Array to Image LabviewFan 2 6.818 09.10.2010 08:14
Letzter Beitrag: gottfried
  Image - FFT - view Radius & Phase - back 2 Image gottfried 1 5.982 05.07.2010 07:17
Letzter Beitrag: kaiman
  invoke node get image -> Image gottfried 4 8.350 26.10.2009 16:22
Letzter Beitrag: gottfried

Gehe zu: