將OpenCV cv::Mat 轉換為QImage
在電腦視覺應用中,經常需要在不同的影像格式之間進行轉換。一個常見的轉換是從 OpenCV 的 cv::Mat 到 Qt 的 QImage 格式。 OpenCV 是一個強大的電腦視覺庫,而 Qt 是一個跨平台應用程式框架。
解決方案
要將cv::Mat 轉換為QImage,只需使用以下程式碼:
QImage imgIn = QImage((uchar*) img.data, img.cols, img.rows, img.step, QImage::Format_RGB888);
此程式碼從cv: :Mat 取得資料並建立一個新的QImage 物件。 img.step 參數指定 cv::Mat 中每行的位元組數。
但是,需要注意的是,Michal Kottman 提供的程式碼在某些情況下可能會失敗。為了確保正確轉換,建議使用帶有img.step參數的程式碼,如下所示:
QImage imgIn = QImage((uchar*) img.data, img.cols, img.rows, img.step, QImage::Format_RGB888);
以上是如何將 OpenCV cv::Mat 轉換為 QImage?的詳細內容。更多資訊請關注PHP中文網其他相關文章!