如何在文件夹 opencv&&qt c++ 中加载图像

How to load images in folder opencv&&qt c++

本文关键字:c++ 加载 图像 qt 文件夹 opencv      更新时间:2023-10-16

我想在文件夹中加载图像。

 QString fileName = QFileDialog::getOpenFileName(this,
  tr("Open Images"), "C:/Users/Public/Pictures/Sample Pictures/pic.jpg", tr("Image Files (*.png   *.jpg *.bmp)"));
  ui->label_pic->setPixmap(QPixmap::fromImage(fileName));

上面的代码没有问题,或者我可以做imread功能,但我想一个接一个地加载文件夹中的图片。例如如果文件夹中有50张.jpg图片,我想一张一张地打印出来。

 QString fileName2;
 QString directory = QFileDialog::getExistingDirectory(this,tr("Find Files"), QDir::currentPath());
//directoryComboBox->setCurrentIndex(directoryComboBox->findText(directory));
 ui->directoryComboBox->addItem(directory);

如果我选择C:\Users/Public/Pictures/Sample Pictures,我想在屏幕上显示所有图片。

使用QDir::entryList获取与您的标准(图像)匹配的目录中的文件列表,然后使用foreach:

 QDir dir(directory);
 dir.setNameFilters(QStringList() << "*.png" << "*.jpg");
 QStringList fileList = dir.entryList();
 foreach (QString path, fileList)
 {
   // do what you want, for example, create a new QLabel here
 }