【发布时间】:2020-09-15 18:22:34
【问题描述】:
我有一个彩色的 pcd 文件并试图用 qt 将其可视化。但是,当我打开彩色 pcd 文件时,我看不到颜色。
这是我的代码:
pcl::PointCloud<pcl::PointXYZRGB>::Ptr cloud_rgb (new pcl::PointCloud<pcl::PointXYZRGB>);
pcl::PointXYZRGB point;
uint32_t rgb = (static_cast<uint32_t>(255) << 16 |
static_cast<uint32_t>(15) << 8 |
static_cast<uint32_t>(15));
QString fileName_rgba = QFileDialog::getOpenFileName(this, tr("Open File"),
"/home",
tr("Pcd Files (*.pcd)"));
filePath_rgba = fileName_rgba.toStdString();
if (pcl::io::loadPCDFile<pcl::PointXYZRGB> (filePath_rgba, *cloud_rgb) == -1) //* load the file
{
PCL_ERROR ("Couldn't read file test_pcd.pcd \n");
return (-1);
}
int pointCount = cloud_rgb->width * cloud_rgb->height;
string pointString = "Loaded " + to_string(pointCount) + " data points from " + fileName_rgba.toStdString() + "with the following fields: ";
QString dum = QString::fromStdString(pointString);
ui->pcdInfo->setText(dum);
pviz.removeAllPointClouds();
vtkSmartPointer<vtkRenderWindow> renderWindow = pviz.getRenderWindow();
ui->widget_rgba->SetRenderWindow (renderWindow);
pviz.setupInteractor (ui->widget_rgba->GetInteractor (), ui->widget_rgba->GetRenderWindow ());
pviz.getInteractorStyle ()->setKeyboardModifier (pcl::visualization::INTERACTOR_KB_MOD_SHIFT);
pviz.addPointCloud<pcl::PointXYZRGB>(cloud_rgb);
pviz.setBackgroundColor(0, 0, 0.1);
ui->widget_rgba->show();
我怎样才能看到这个 pcd 文件的彩色版本?
【问题讨论】:
-
请分享一行到pcd文件的一个点!
-
2320 2e50 4344 2076 302e 3720 2d20 506f 这是我的 pcd 文件中的一行。 @ΦXocę웃Пepeúpaツ
-
什么是 pviz???
标签: c++ qt point-cloud-library