インターネットでたくさん検索しましたが、Qimage を RGB 形式に変換する方法しか見つかりませんでした。Qimage を cv mat 形式 CV_64FC3 に変換したいと考えています。CV_8UC3 を使用すると、非常に悪い結果が得られます
ここに私のコードがあります:
QImage myImage;
myImage.load("C://images//PolarImage300915163358.bmp");
QLabel myLabel;
myLabel.setPixmap(QPixmap::fromImage(myImage));
//myLabel.show();
cv::Mat image1 = QImage2Mat(myImage);
Mat img;
image1.convertTo(img, CV_64FC3, 1.0 / 255.0);
ここに私が使用した機能があります:
cv::Mat QImage2Mat(QImage const& src)
{
cv::Mat tmp(src.height(),src.width(),CV_8UC3,(uchar*)src.bits(),src.bytesPerLine());
cv::Mat result; // deep copy just in case (my lack of knowledge with open cv)
cvtColor(tmp, result,CV_BGR2RGB);
return result;
}
opencvとQtの両方に不慣れな私を助けてください