Speicher wird vollgeladen
Verfasst: 12. Juli 2012 04:25
Abend,
Habe in einem Thread eine Schleife laufen lassen um frame für frame ein video im Graphics View Widget anzeigen zu lassen.
Läuft alles so weit, jedoch wird mein speicher vollgeladen und ich wei0 nicht warum.
Wenn ich
lg
Habe in einem Thread eine Schleife laufen lassen um frame für frame ein video im Graphics View Widget anzeigen zu lassen.
Läuft alles so weit, jedoch wird mein speicher vollgeladen und ich wei0 nicht warum.
Wenn ich
ausklammere dann wird kein bild angezeigt aber auch der Speicher bleibt stabil. Also denke ich mal es liebt an der Konvertierung.scene->addPixmap(QPixmap::fromImage(ConvertImage(image)));
Code: Alles auswählen
void GUI::set_imageone(IplImage *image){
QGraphicsScene *scene = new QGraphicsScene(); // Grafikszene
scene->setBackgroundBrush(QColor(0, 0, 0)); // Schwarzer Hintergrund
scene->addPixmap(QPixmap::fromImage(ConvertImage(image))); // Bild in QImage konvertieren
ui.graphicsView->setScene(scene); // Szene anzeigen
image_cols=image->height;
image_rows=image->width;
}Code: Alles auswählen
QImage ConvertImage(IplImage *source)
{
QImage dummy;
if ( source->depth != IPL_DEPTH_8U || source->nChannels != 3 )
return dummy;
// Bilddaten übernehmen
unsigned char * data = ( unsigned char * ) source->imageData;
// QImage mit Originaldaten erstellen
QImage ret( data, source->width, source->height, QImage::Format_RGB888 );
// Kanäle (BGR -> RGB) und Format (RGB888 -> RGB32) ändern
return ret.rgbSwapped().convertToFormat( QImage::Format_RGB32 );
}