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 

Speichern von Messdaten und Bildern mit ungleicher Frequenz



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!

15.08.2017, 12:02
Beitrag #1

Abongile Offline
LVF-Grünschnabel
*


Beiträge: 23
Registriert seit: May 2017

2013
2017
DE_EN



Speichern von Messdaten und Bildern mit ungleicher Frequenz
Hallo zusammen,

mit einiger Hilfe habe ich eine QMH Struktur zur Erfassung von 3 Messkanälen aufgebaut in die ich nun eine Bildaufnahme via Kamera integriert habe.

Folgendes Problem tritt auf:
Beim Speichern der Messdaten/Bilder werden mehr Bilder erzeugt als aufgenommen werden. Komplett unregelmäßig wird ein Bilder doppelt bis 10fach abgespeichert. Zwischendrin läuft das Programm wieder "gut", dann kommt wieder ein Bild mehrfach.

Zum Aufbau des Programms:
QMH mit 2 Acquire Loops und 1 Logging Loop
Acquire: -> 1 Datenerfassung DAQ -> 1 Bilderfassung --> Die Loops habe ich wegen der unterschiedlicher Frequenz getrennt
Logging: 2 Queues werden befüllt durch die Acquire Loops -> beide werden in einer Schleife geleert

Zur Verdeutlichung ein paar Bilder:
Zunächst ein Ausschnitt aus dem Hauptprogramms mit den drei Loops von oben nach unten: Kamera, Acquire (grüner Loop), Logging (oragner Loop)    

Jetzt der Kamera Acquire Loop:    
Die Wartezeit regelt die Frames per Second der Kamera, da die Kamera keine Einstellmöglichkeit bezüglich der Aufnahmefrequenz hat.

Zur Detailierung der Kamera noch die Befüllung von Notifier und Queue     und der eigentlich Bilder "Grab"    

Die Queues werden zum Speichern der Daten gelesen. Außerdem soll eine Textdatei erstellt werden, die notiert welche Messdaten zu welchem Bild gehören, da zeitlich gesehen schneller Messdaten als Bilder erzeugt werden. Das passiert im Logging Loop folgendermaßen:    

Mit dieser Konstellation tritt das oben benannte Problem ein und ich kann nicht nachvollziehen, woran es liegt. Warum hat er Bilder doppelt? Wenn es einmal dequeued wurde, müsste es doch weg sein? Wo bleibt es bestehen? Kann ich die Daten überhaupt so speichern, wenn die Data Queue schneller befüllt wird als die Kamera Queue?

Vielen Dank für eure Hilfe!

VG
Abongile
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
15.08.2017, 12:11 (Dieser Beitrag wurde zuletzt bearbeitet: 15.08.2017 12:12 von GerdW.)
Beitrag #2

GerdW Offline
______________
LVF-Team

Beiträge: 17.480
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Speichern von Messdaten und Bildern mit ungleicher Frequenz

Akzeptierte Lösung

Hallo Abongile,

du scheinst mit IMAQ/Vision zu arbeiten…

Zitat:Komplett unregelmäßig wird ein Bilder doppelt bis 10fach abgespeichert. Zwischendrin läuft das Programm wieder "gut", dann kommt wieder ein Bild mehrfach.
Bei IMAQ werden Bilder per Reference und NICHT "by value" weitergereicht. Wenn du immer wieder die selbe Referenz verwendest, kann es vorkommen, dass deine Loop zum Einlesen der Bilder unter eben dieser Referenz schon ein neues Bild "abgelegt" hat, deine Speicherloop aber "denkt", sie würde jetzt noch ältere Bilder unter dieser Referenz vorfinden…

Da ich nicht mit IMAQ arbeite, kann ich nur "hörensagen" anbieten: Es gibt da eine Funktion bei IMAQ, die ein Bild in eine neue Referenz kopiert. Das müsstest du mit jedem Bild machen, welches du in die Queue stopfst. (Außerdem solltest du diese Referenzen auch wieder freigeben, sonst geht dir vielleicht schnell der Speicher aus…)

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
15.08.2017, 14:02 (Dieser Beitrag wurde zuletzt bearbeitet: 15.08.2017 14:28 von Abongile.)
Beitrag #3

Abongile Offline
LVF-Grünschnabel
*


Beiträge: 23
Registriert seit: May 2017

2013
2017
DE_EN



RE: Speichern von Messdaten und Bildern mit ungleicher Frequenz
Hallo Gerd,

Smile erstmal: schön mal wieder von dir zu lesen Wink
Ich hatte mir schon gedacht, dass ich mit einem Thema zu IMAQ/Vision (du hast recht, das wird verwendet) bei Datenerfassung DAQ nicht ganz richtig bin, weiß aber nicht, wo ich das Thema im Forum besser platzieren hätte können

Zitat:Bei IMAQ werden Bilder per Reference und NICHT "by value" weitergereicht. Wenn du immer wieder die selbe Referenz verwendest, kann es vorkommen, dass deine Loop zum Einlesen der Bilder unter eben dieser Referenz schon ein neues Bild "abgelegt" hat, deine Speicherloop aber "denkt", sie würde jetzt noch ältere Bilder unter dieser Referenz vorfinden…

Da ich nicht mit IMAQ arbeite, kann ich nur "hörensagen" anbieten: Es gibt da eine Funktion bei IMAQ, die ein Bild in eine neue Referenz kopiert. Das müsstest du mit jedem Bild machen, welches du in die Queue stopfst. (Außerdem solltest du diese Referenzen auch wieder freigeben, sonst geht dir vielleicht schnell der Speicher aus…)

Dem werde ich mal nachgehen, danke dir!
VG
Abongile

PS: Gerade habe ich gefunden, wo es hinsollte... ->> LabView Module - Vision; Kannst du das Thema verschieben?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
16.08.2017, 09:03
Beitrag #4

Abongile Offline
LVF-Grünschnabel
*


Beiträge: 23
Registriert seit: May 2017

2013
2017
DE_EN



RE: Speichern von Messdaten und Bildern mit ungleicher Frequenz
Noch eine Frage bezogen auf
Zitat:Bei IMAQ werden Bilder per Reference und NICHT "by value" weitergereicht.

Kann ich dann nicht einfach mit dem Notifier arbeiten? Der ist doch quasi eine einzelne Referenz, oder? Brauche ich die Queue dann garnicht, selbst wenn ich nicht nur das Bild, sondern ein Cluster mit Bild übergebe (s. Post 1 Bild 4)?

VG
Abongile
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
16.08.2017, 10:29
Beitrag #5

GerdW Offline
______________
LVF-Team

Beiträge: 17.480
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Speichern von Messdaten und Bildern mit ungleicher Frequenz
Hallo Abongile,

du überträgst per Notifier die selben Daten wie mit der Queue bisher: was soll das also am Problem selbst ändern?

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
16.08.2017, 14:51
Beitrag #6

Abongile Offline
LVF-Grünschnabel
*


Beiträge: 23
Registriert seit: May 2017

2013
2017
DE_EN



RE: Speichern von Messdaten und Bildern mit ungleicher Frequenz
Hm, weil wenn das Programm läuft, zeigt der Notifier fortlaufend die richtige Bilderfolge an, die Queue speichert aber was anderes ab...

Wenn ich Sonden bei der Befüllung des Notifiers und der Queue setze und bei dem Lesen beider, stimmen die beiden Sonden beim Notifier überein, was aber aus der Queue gelesen wird stimmt nicht mit dem überein, was reingeht. O.o das verwirrt mich total.

Aber ich hab ein Beispiel gefunden bei dem mit dem Event "Frame done" gearbeitet wird. Das versuche ich gerade in mein Projekt zu übertragen:
Siehe Hier

Vielleicht geht das dann besser, in ersten Tests ist das Beispielprogramm aber deutlich langsamer als meins.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
17.08.2017, 07:22
Beitrag #7

Abongile Offline
LVF-Grünschnabel
*


Beiträge: 23
Registriert seit: May 2017

2013
2017
DE_EN



RE: Speichern von Messdaten und Bildern mit ungleicher Frequenz
Was bedeutet es denn, wenn der event overrun button leuchtet?

Ich vermute nichts gutes, aber ich finde gerade keine negativen Auswirkungen...
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
17.08.2017, 07:30
Beitrag #8

GerdW Offline
______________
LVF-Team

Beiträge: 17.480
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Speichern von Messdaten und Bildern mit ungleicher Frequenz
Hallo Abongile,

Zitat:Was bedeutet es denn, wenn der event overrun button leuchtet?
Was ist ein "event overrrun button"?
Wo findet man den?

Wenn du Probleme mit DEINEM VI hast, dann solltest du DEIN VI auch mal hier anhängen.
Die bisherigen Bilder lassen sich mit LabVIEW nur schwer debuggen…

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
17.08.2017, 12:21
Beitrag #9

Abongile Offline
LVF-Grünschnabel
*


Beiträge: 23
Registriert seit: May 2017

2013
2017
DE_EN



RE: Speichern von Messdaten und Bildern mit ungleicher Frequenz
Zitat:Wenn du Probleme mit DEINEM VI hast, dann solltest du DEIN VI auch mal hier anhängen.
Die bisherigen Bilder lassen sich mit LabVIEW nur schwer debuggen…

Sorry, das war auf das LabVIEW Beispielprogramm im Post drüber bezogen:
Zitat:Aber ich hab ein Beispiel gefunden bei dem mit dem Event "Frame done" gearbeitet wird. Das versuche ich gerade in mein Projekt zu übertragen:
Siehe Hier

Darin ist eine Event Struktur, welche auf das Event "Frame done" reagiert und dann zwei Bufferwerte miteinander vergleicht. Wenn die Buffer ungleich sind, geht ein Signal "Event Overrun" auf grün. Was bedeutet das? Gehen dann Bilder verloren?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
17.08.2017, 12:35
Beitrag #10

GerdW Offline
______________
LVF-Team

Beiträge: 17.480
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Speichern von Messdaten und Bildern mit ungleicher Frequenz
Hallo Abongile,

Zitat:geht ein Signal "Event Overrun" auf grün. Was bedeutet das? Gehen dann Bilder verloren?
Ich würde das so deuten, dass die Eventstruktur nicht schnell genug abgearbeitet wurde und deshalb Bilder verloren gehen…

- Wenn dein VI mit Notifiern funktioniert (wirklich immer?), dann bleibe dabei
- Wenn du mit einer Queue arbeiten willst, sorge dafür, dass du wirklich neue IMAQ-Bilder (aka Referenzen) in die Queue schreibst!

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
  Palette mit Grayscale SGL-Bildern gottfried 0 3.972 22.05.2018 17:56
Letzter Beitrag: gottfried
  Ein gemitteltes Bild aus mehreren Bildern erstellen Stuggi 1 4.724 10.12.2012 08:31
Letzter Beitrag: Kasi
  Vergleichen von Bildern torti 3 5.277 05.05.2008 20:13
Letzter Beitrag: Dennis.Moser

Gehe zu: