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 

The Imaging Source - Frameraten Problem



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!

07.02.2012, 12:56 (Dieser Beitrag wurde zuletzt bearbeitet: 07.02.2012 12:57 von Pitt.)
Beitrag #1

Pitt Offline
LVF-Grünschnabel
*


Beiträge: 41
Registriert seit: Sep 2011

2009, 2010, 2011, 2012
2010
DE


Deutschland
The Imaging Source - Frameraten Problem
Hi Leute,

ich bin nicht sicher ob das hier das Richtige Forum ist, wenn nicht, bitte Verschieben.

Im Rahmen meiner Studienarbeit, detektiere ich eine Laserauslenkung mit einer CCD Camera. Die Bilddaten der Kamera kann ich aber nur als Variant abrufen, bis dahin ist alles super (eine nicht gedrosselte whileschleife zeigt ca. 500 FPS) sobald ich aber den Variant Datentyp in Int 8bit umwandeln lasse, fällt die Framrate auf ca. 5.5 FPS ab, die Kamera schafft aber immerhin 15.


Hat einer von euch eine idee wie ich die Umwandlung beschleunigen könnte? Meint ihr es würde was bringen, wenn ich das Variantarry in 4 Unterarrays aufspalte und dann paralell in 8bit int umwandel und anschließend wieder zusammenführe?

PS: Diese Cam
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
07.02.2012, 20:05
Beitrag #2

schrotti Offline
LVF-Freak
****


Beiträge: 842
Registriert seit: Feb 2008

2009 - 2011
2006
kA

70180
Deutschland
RE: The Imaging Source - Frameraten Problem
Ich kann mir den Perfomanceeinbruch nicht erklären. Kannst du das VI hochladen mit einem Beispielbild in Variant hochladen?

Gruß Julius
Empfehlungen: expressionflow, LavaG , mooregoodideas, OpenG, JKI Blog
Tipp
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
08.02.2012, 08:47
Beitrag #3

Pitt Offline
LVF-Grünschnabel
*


Beiträge: 41
Registriert seit: Sep 2011

2009, 2010, 2011, 2012
2010
DE


Deutschland
RE: The Imaging Source - Frameraten Problem
Hi,

das subvi um die Bilddaten abzuhohlen ist eigentlich recht simpel, es liegt im Main.vi innerhalb der while Schleife, da die Kamera ja nur einmal korrekt geladen werden muss... Die Klasse IICimagingControl
ist die oberste Klasse.

In einer früheren Version, hatte ich des mit der Unterklasse IImageBuffer und der Methode GetImageData versucht, aber trotz des Aufruf ReleaseImageData lief der Speicher voll. Nach ein Paar min hat Labview bei 2GB
abgeriegelt...
Dieses Problem habe ich mit MemoryGetImageData nicht. Die Frameraten waren aber in beiden Fällen gleich.

Das Problem ist die Umwandlung "Variant to Data" aber ohne diese kann ich mit den Bilddaten nicht rechnen.

Schon mal danke


Angehängte Datei(en) Thumbnail(s)
   

9.0 .vi  get_imagedata.vi (Größe: 19,09 KB / Downloads: 179)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
08.02.2012, 13:12
Beitrag #4

Pitt Offline
LVF-Grünschnabel
*


Beiträge: 41
Registriert seit: Sep 2011

2009, 2010, 2011, 2012
2010
DE


Deutschland
RE: The Imaging Source - Frameraten Problem
So, ich habe nochmal ein wenig rum getrickst, und jetzt habe ich die max Framerate. Es gab die Methode das aktuelle bild als bmp zu speichern. das mache ich jetzt, und anschließend lese ich es wieder von der platte ein.
das ist zwar nicht im sinne des Erfinders, aber Funktioniert. Sollte dennoch jemand wissen wie man es "richtig" machen kann ohne die daten erst auf die platte schreiben zu müssen, dann ist die Lösung gern gesehen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
08.02.2012, 20:36
Beitrag #5

schrotti Offline
LVF-Freak
****


Beiträge: 842
Registriert seit: Feb 2008

2009 - 2011
2006
kA

70180
Deutschland
RE: The Imaging Source - Frameraten Problem
Dein Array enthält 1280 x 960 Elemente. Wenn ich solch ein Array anlege, in Variant konvertiere schaffe ich mehrere 1000 Konvertierung pro Sekunde nach U8 Array. Mich interessiert vor allem, was MemoryGetImageData exakt ausgibt. Schließe hierfür einfach eine Variantanzeige an, las das VI laufen und setze den Inhalt der anzeige als Standard. Anschließend lädst du das Anzeigeelement hoch.

Gruß Julius
Empfehlungen: expressionflow, LavaG , mooregoodideas, OpenG, JKI Blog
Tipp
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30
Antwort schreiben 


Gehe zu: