Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk Menukar OpenCV cv::Mat kepada QImage?

Bagaimana untuk Menukar OpenCV cv::Mat kepada QImage?

Barbara Streisand
Barbara Streisandasal
2024-12-03 12:17:10635semak imbas

How to Convert an OpenCV cv::Mat to a QImage?

Menukar OpenCV cv::Mat kepada QImage

Dalam aplikasi penglihatan komputer, selalunya perlu menukar antara format imej yang berbeza. Satu penukaran biasa ialah daripada cv::Mat OpenCV kepada format QImage Qt. OpenCV ialah perpustakaan penglihatan komputer yang berkuasa, manakala Qt ialah rangka kerja aplikasi merentas platform.

Penyelesaian

Untuk menukar cv::Mat kepada QImage, hanya gunakan kod berikut:

QImage imgIn = QImage((uchar*) img.data, img.cols, img.rows, img.step, QImage::Format_RGB888);

Kod ini mengambil data daripada cv::Mat dan mencipta objek QImage baharu. Parameter img.step menentukan bilangan bait setiap baris dalam cv::Mat.

Walau bagaimanapun, adalah penting untuk ambil perhatian bahawa kod yang disediakan oleh Michal Kottman mungkin gagal dalam kes tertentu. Untuk memastikan penukaran yang betul, adalah disyorkan untuk menggunakan kod dengan parameter img.step disertakan, seperti yang ditunjukkan di bawah:

QImage imgIn = QImage((uchar*) img.data, img.cols, img.rows, img.step, QImage::Format_RGB888);

Atas ialah kandungan terperinci Bagaimana untuk Menukar OpenCV cv::Mat kepada QImage?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn