ich den Code vereinfacht, und es ist so:QPixmap Fromimage gibt Segment Fehler auf das Bild umgerechnet von cv :: Matte
Mat mat = imread("xxx.jpg"); //Successfully read the image, confirmed by cvShowImage.
if (mat.empty())
{
qDebug() << "Couldn't load image";
return;
}
Mat cpy = mat.clone();
cvtColor(mat,cpy,CV_BGR2RGB);
QImage image(cpy.data, cpy.cols, cpy.rows, cpy.step, QImage::Format_RGB888);
try {
pm = QPixmap::fromImage(image); //crash line
} catch(std::exception const &ex){
qDebug()<<ex.what();
}
aber das Programm nur ohne Debug-Log abgestürzt .. ich viele Bilder habe versucht, und das Ergebnis ist das gleiche. Ich versuchte, den "Stack-Trace" zu finden, und es scheint segfault dazu geben ..
Zuerst tust du 'QImage image (...);' dann tust du 'pm = QPixmap :: fromImage (fim);'. Was ist 'fim'? (Der Grund für den Absturz?) Ich empfehle wärmstens, dies als [MCVE] (http://stackoverflow.com/help/mcve) zu machen. Wenn dies Ihr Problem nicht löst, wird es zumindest helfen, mehr Aufmerksamkeit in dieser Gemeinschaft zu erregen. – Scheff
I gues fim hält einige unitialized Daten –
@Scheff Ah sorry sorry. das sollte "bild" aber nicht "fim" sein, da ich codes aus verschiedenen funktionen kopiere. – Vitech