コンピューター ビジョン アプリケーションでは、異なる画像形式間の変換が必要になることがよくあります。一般的なシナリオの 1 つは、OpenCV の cv::Mat を Qt の QImage に変換することです。この変換を実現する方法は次のとおりです。
場合によっては、QImage imgIn= QImage((uchar*) img.data, img.cols, img.rows, img.step, QImage:: を使用する Michal Kottman のソリューションフォーマット_RGB888);十分でしょう。ただし、変換に img.step を含めないと、特定の画像が正しく表示されない場合があります。
この問題に対処するために、修正された解決策は次のとおりです。
QImage imgIn= QImage((uchar*) img.data, img.cols, img.rows, img.step, QImage::Format_RGB888);
この変更により、画像が確実に表示されます。特定の特性に関係なく、正しく変換されます。 img.step が省略された場合、Qt は警告を発行しない可能性がありますが、画像の整合性を維持するにはその存在が重要であることに注意してください。
以上がOpenCV の cv::Mat を Qt の QImage に効率的に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。