So konvertieren Sie OpenCV cv::Mat in QImage
Problem:
Wie kann Ich konvertiere einen OpenCV-cv::Mat-Typ in QImage in C? Das Konvertieren von IPlimage in QImage mit vorhandenem Code reicht nicht aus.
Lösung:
Michal Kottmans Antwort ist im Allgemeinen korrekt, kann jedoch bei bestimmten Bildern fehlschlagen. Um dieses Problem zu beheben, können Sie die folgende Lösung verwenden:
QImage imgIn = QImage((uchar*) img.data, img.cols, img.rows, img.step, QImage::Format_RGB888);
Erklärung:
Der Hauptunterschied bei diesem Ansatz ist das Hinzufügen von img. step, der die Bytebreite jeder Zeile im cv::Mat angibt. Ohne diesen Parameter rendert Qt Bilder möglicherweise nicht immer korrekt.
Durch die Einbindung von img.step können Sie die Kompatibilität mit einer breiteren Palette von Bildern sicherstellen und Rendering-Probleme verhindern.
Das obige ist der detaillierte Inhalt vonWie konvertiere ich ein cv::Mat in ein QImage in C?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!