Я использую opencv3.1.0 с Qt5.5.1, и я хочу использовать изображение, которое я отобразил с помощью Qpixmap в Qt, и поместить его в тип Mat, чтобы иметь возможность внести некоторые изменения в него с помощью opencv. вот как код для отображения больше, чем изображение:
void Mainwindow::on_pushButton_pressed()
{
QStringList fileName = QFileDialog::getOpenFileNames(this,tr("Open Image"), "C:/qt-win-opensource-src-4.5.0/bin/",
tr("Image Files(*.png *.jpg *.bmp *.avi *.gif)"));
setMinimumSize(100,100);
QList<QPixmap> PixList;
for (int i=0;i<=fileName.size()-1;i++){
PixList.append(QPixmap(fileName.at(i)));
}
foreach(QPixmap pix, PixList){
// put the pixmaps one next to the other
PixLabel = new QLabel(this);
PixLabel->setScaledContents(true);
PixLabel->setPixmap(pix);
//PixLabel->setFixedHeight(120);
//PixLabel->setFixedWidth(120);
//PixLabel->setFixed
QSize sizeImage(400,500);
PixLabel->setFixedSize(sizeImage);
ui->horizontalLayout->addWidget(PixLabel);
PixLabel->repaint();
}
}
и вот как я это называю в opencv
Mat image1 = imread("C://images//PolarImage300915163358.bmp");
Mat img;
image1.convertTo(img, CV_64FC3, 1.0 / 255.0);