Servus,
Vielleicht könnt ihr mir ja ein Tipp geben wie ich das ganze anstelle.
Ich bekomme alle 8 ms ein Bild ein Bild von einer Infrarotkamera, die Daten speichern ich in ein Feld ab sind ca 100.000 Werte ^^ welche vom typ unsigned short 2345 oder double 234,5 sind. Jetzt würde ich die Daten gerne grafisch darstellen und in abhängigkeit der Temperatur also des Wertes farbig machen. Ich dachte da an openGL da ich ein Beispiel unter linux nutze was GLUT benutzt und womit es läuft, leider kann ich das nicht in meiner Qt GUI verwenden.
Für jede art von Hilfe bin ich dankbar, weiß noch nicht ganz wo ich anfangen soll^^,
Gruß, Nils
QT+openGL Infrarot kamera Daten darstellen
Re: QT+openGL Infrarot kamera Daten darstellen
Kameras liefern oftmals Bilder in form von Arrays mit x*Y Größe und einem Datentyp als wert, der 1,2,4,8,16,26 oder gar 32 Byte groß sein kann.Ich bekomme alle 8 ms ein Bild ein Bild von einer Infrarotkamera, die Daten speichern ich in ein Feld ab sind ca 100.000 Werte
Ich glaub das ist deren Aufgabe ...
Aber wieder Ernst ....
Du hasst dein Array of Pixel ...
Der Typ der Pixel ist nu genau was ?
nen unsigned short ? dann wär das nen grauwert mit 16k Auflösung ?
oder nen double ? beides ist denkbar ....
Ne Wärmebild Cam wird keine Farbkanäle haben .... also sind das fast immer wie graustufen zu betrachten ....
eigentlich ne gute Idee ^^Ich dachte da an openGL
Videos zeigt man in Opengl meist so an, das man nen viereck(aus 2 triangles) erzeugt.
Dann gibt man gleich den Vertizies die Texturecoordinaten zu (das ganze bild hat da nen bereich von 0.0,0.0 bis 1.0,1.0 unabhaengig der Auflösung)
Dann verknüpft man einen TexturIndex mit einem dem Viereck ...
Dann braucht man nur noch immer die Textur mit den aktuallen CameraDaten zu aktualisieren, in dem man die Daten zu dem Texturindex schiebt (Auf die Graka)
und vioala, hat manin einer Scene eine Fläche ist worauf ein video abgespielt wird ....
Wenn man nun die scene noch configuriert, das das Viereck so gross wie die aktuelle Plane ist, und man keinerlei Matrix Transformationen macht (Stichwort Idendity Matrix), dann sieht man ein Opengl Vollbild was nur das Camera Bild anzeigt.
Das ganze kann man auch in nen OpenGL WIdget von Qt pappen ....
OpenGl unterstützt dabei zig Texturformate (Graustufen - farbe) mit integer Formaten als auch Flieskomma Formaten (float) ..... so das man sich oft PixelTransformationen sparen kann.
Die Cam hersteller liefern oft pixelformate die direkt von den grakas angezeigt werden können ...
Examples bekommst wenn nach OpenGL Texture Video usw suchst ....
hier z.b.
http://www.ixeption.de/tutorial-opengl- ... a-texture/
Ciao ...