| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| |
|
| | #include "ui/reconstruction_stats_widget.h" |
| |
|
| | namespace colmap { |
| |
|
| | ReconstructionStatsWidget::ReconstructionStatsWidget(QWidget* parent) |
| | : QWidget(parent) { |
| | setWindowFlags(Qt::Window); |
| | resize(parent->width() - 20, parent->height() - 20); |
| | setWindowTitle("Reconstruction statistics"); |
| |
|
| | stats_table_ = new QTableWidget(this); |
| | stats_table_->setColumnCount(2); |
| | stats_table_->horizontalHeader()->setVisible(false); |
| | stats_table_->verticalHeader()->setVisible(false); |
| | stats_table_->horizontalHeader()->setSectionResizeMode(QHeaderView::Stretch); |
| |
|
| | QGridLayout* grid = new QGridLayout(this); |
| | grid->addWidget(stats_table_); |
| | } |
| |
|
| | void ReconstructionStatsWidget::Show(const Reconstruction& reconstruction) { |
| | QString stats; |
| |
|
| | stats_table_->clearContents(); |
| | stats_table_->setRowCount(0); |
| |
|
| | AddStatistic("Cameras", QString::number(reconstruction.NumCameras())); |
| | AddStatistic("Images", QString::number(reconstruction.NumImages())); |
| | AddStatistic("Registered images", |
| | QString::number(reconstruction.NumRegImages())); |
| | AddStatistic("Points", QString::number(reconstruction.NumPoints3D())); |
| | AddStatistic("Observations", |
| | QString::number(reconstruction.ComputeNumObservations())); |
| | AddStatistic("Mean track length", |
| | QString::number(reconstruction.ComputeMeanTrackLength())); |
| | AddStatistic( |
| | "Mean observations per image", |
| | QString::number(reconstruction.ComputeMeanObservationsPerRegImage())); |
| | AddStatistic("Mean reprojection error", |
| | QString::number(reconstruction.ComputeMeanReprojectionError())); |
| | } |
| |
|
| | void ReconstructionStatsWidget::AddStatistic(const QString& header, |
| | const QString& content) { |
| | const int row = stats_table_->rowCount(); |
| | stats_table_->insertRow(row); |
| | stats_table_->setItem(row, 0, new QTableWidgetItem(header)); |
| | stats_table_->setItem(row, 1, new QTableWidgetItem(content)); |
| | } |
| |
|
| | } |
| |
|