Rumah > pembangunan bahagian belakang > C++ > Bagaimana Saya Boleh Menukar cv::Mat kepada QImage?

Bagaimana Saya Boleh Menukar cv::Mat kepada QImage?

Patricia Arquette
Lepaskan: 2024-12-20 02:36:09
asal
927 orang telah melayarinya

How Can I Reliably Convert a cv::Mat to a QImage?

Menukar OpenCV cv::Mat kepada QImage

OpenCV cv::Mat dan Qt QImage ialah dua struktur data yang biasa digunakan untuk menyimpan dan memanipulasi imej. Menukar antara format ini adalah tugas biasa dan terdapat beberapa kaedah untuk mencapainya.

Penyelesaian Michal Kottman

Satu penyelesaian, seperti yang dirujuk dalam soalan, disediakan oleh Michal Kottman. Kaedah ini melibatkan penyerahan terus data cv::Mat kepada QImage:

QImage imgIn= QImage((uchar*) img.data, img.cols, img.rows, img.step1(), QImage::Format_RGB888);
Salin selepas log masuk

Mengatasi Had

Walau bagaimanapun, dalam beberapa keadaan, pendekatan ini mungkin tidak menghasilkan hasil yang dijangkakan untuk imej tertentu. Untuk menangani perkara ini, penyelesaian yang lebih baik dicadangkan:

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

Perbezaan Utama

Perbezaan penting dalam penyelesaian ini ialah kemasukan img.step dalam panggilan fungsi . Walaupun Qt mungkin tidak menimbulkan ralat tanpa parameter ini, ketiadaannya boleh menyebabkan paparan imej tertentu yang tidak betul.

Kesimpulan

Dengan memasukkan img.step, penyelesaian ini menyediakan kaedah yang lebih mantap untuk menukar cv::Mat kepada QImage, memastikan perwakilan imej yang konsisten dan tepat dalam semua kes.

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

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan