>백엔드 개발 >C++ >cv::Mat를 QImage로 안정적으로 변환하려면 어떻게 해야 합니까?

cv::Mat를 QImage로 안정적으로 변환하려면 어떻게 해야 합니까?

Patricia Arquette
Patricia Arquette원래의
2024-12-20 02:36:09933검색

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

OpenCV cv::Mat를 QImage로 변환

OpenCV cv::Mat 및 Qt QImage는 저장 및 저장에 일반적으로 사용되는 두 가지 데이터 구조입니다. 이미지를 조작하고 있습니다. 이러한 형식 간 변환은 일반적인 작업이며 이를 달성하는 방법에는 여러 가지가 있습니다.

Michal Kottman의 솔루션

질문에 언급된 한 가지 솔루션이 제공됩니다. 마이클 코트먼 지음. 이 방법에는 cv::Mat 데이터를 QImage:

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

제한 사항 해결

에 직접 할당하는 작업이 포함됩니다. 그러나 경우에 따라 이 방법은 특정 이미지에 대한 예상 결과. 이 문제를 해결하기 위해 개선된 솔루션이 제안됩니다.

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

주요 차이점

이 솔루션의 중요한 차이점은 함수 호출에 img.step이 포함된다는 것입니다. . 이 매개변수가 없으면 Qt에서 오류가 발생하지 않을 수 있지만 매개변수가 없으면 특정 이미지가 제대로 표시되지 않을 수 있습니다.

결론

img.step을 통합함으로써 이 솔루션은 다음을 제공합니다. cv::Mat를 QImage로 변환하는 보다 강력한 방법으로 모든 경우에 일관되고 정확한 이미지 표현을 보장합니다.

위 내용은 cv::Mat를 QImage로 안정적으로 변환하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.