Hi, hab folgendes unerklärliches Problem:
Wenn ich meinen Quellcode in MS VC++ 2005 compiliere und starte (release Version) läuft alles super, schnell und gut so wie es sein soll.
Wenn ich jetzt aber das VC++ 2005 schließe und die exe direkt aus dem release Order im Projektverzeichnis starte, ist die CPU-Load bei manchen Funktion auf 90%++ und das Programm reagiert sehr träge bis gar nicht mehr.
Das ist halt sehr merkwürdig, da wie gesagt, durch Starten in VC++ 2005 läuft alles super.
Hat jemand ne Idee woran das liegen könnte?
Ich entwickle auf Windows XP Sp2 und dem MSVS Professional 2005 in C++ und benutze Qt 4.2.1 für meine Oberfläche.
Kurz zum Programm:
Das Programm ließt Live-Bilder von einer Kamera ein, diese wird im Programm beim starten erstmal initialisiert und zeigt diese an.
Es wird ein Live-Histogramm und ein Live- Zeilenprofil berechnet und geplotet.
Darüber hinaus wird auch ein Median der Bilddaten aus einer gewissen ROI bestimmt.
Die Berechnungen wie Median, Zeilenprofil und Histogramm erfolgen aber nur bei jedem 15. Bild, um die CPU nicht zu überlasten.
Es gibt verschiedene Anzeigemodie und genau bei 2 von diesen tritt dann die hohe CPU-Load auf, nämlich beim s.g. ThreshOperator, als Binarisierung des Bildes.
Und beim Log-Operator, der eine logaritmische Grauwerttransformation für jedes Pixel durchführt. Die Anzeigemodes werden aber auf jedes ankommende Bild angewendet, ~60Bilder / s bei einer Auflösung von 320*256 und 14Bit.
Hoffe der kleine Einblick ins Programm kann bei der Lösung helfen.
Wenn ich meinen Quellcode in MS VC++ 2005 compiliere und starte (release Version) läuft alles super, schnell und gut so wie es sein soll.
Wenn ich jetzt aber das VC++ 2005 schließe und die exe direkt aus dem release Order im Projektverzeichnis starte, ist die CPU-Load bei manchen Funktion auf 90%++ und das Programm reagiert sehr träge bis gar nicht mehr.
Das ist halt sehr merkwürdig, da wie gesagt, durch Starten in VC++ 2005 läuft alles super.
Hat jemand ne Idee woran das liegen könnte?
Ich entwickle auf Windows XP Sp2 und dem MSVS Professional 2005 in C++ und benutze Qt 4.2.1 für meine Oberfläche.
Kurz zum Programm:
Das Programm ließt Live-Bilder von einer Kamera ein, diese wird im Programm beim starten erstmal initialisiert und zeigt diese an.
Es wird ein Live-Histogramm und ein Live- Zeilenprofil berechnet und geplotet.
Darüber hinaus wird auch ein Median der Bilddaten aus einer gewissen ROI bestimmt.
Die Berechnungen wie Median, Zeilenprofil und Histogramm erfolgen aber nur bei jedem 15. Bild, um die CPU nicht zu überlasten.
Es gibt verschiedene Anzeigemodie und genau bei 2 von diesen tritt dann die hohe CPU-Load auf, nämlich beim s.g. ThreshOperator, als Binarisierung des Bildes.
Und beim Log-Operator, der eine logaritmische Grauwerttransformation für jedes Pixel durchführt. Die Anzeigemodes werden aber auf jedes ankommende Bild angewendet, ~60Bilder / s bei einer Auflösung von 320*256 und 14Bit.
Hoffe der kleine Einblick ins Programm kann bei der Lösung helfen.