jfjoch_viewer: Extra panel for ROI (tbd)

This commit is contained in:
2025-11-05 11:57:59 +01:00
parent b15d06c1b0
commit 78d4f21d4b
8 changed files with 141 additions and 49 deletions
-40
View File
@@ -128,19 +128,6 @@ JFJochViewerImageStatistics::JFJochViewerImageStatistics(QWidget *parent) : QWid
b_factor = new QLabel(this);
layout->addRow(new QLabel("B-factor:"), b_factor);
roi_sum = new QLabel(this);
layout->addRow(new QLabel("ROI sum:"), roi_sum);
roi_mean = new QLabel(this);
layout->addRow(new QLabel("ROI mean:"), roi_mean);
roi_stddev = new QLabel(this);
layout->addRow(new QLabel("ROI st. dev.:"), roi_stddev);
roi_max = new QLabel(this);
layout->addRow(new QLabel("ROI max:"), roi_max);
}
QString TrimZeros(double number, int precision) {
@@ -172,10 +159,6 @@ void JFJochViewerImageStatistics::loadImage(std::shared_ptr<const JFJochReaderIm
bkg_estimate->setText("");
indexed->setText("");
indexed->setToolTip("");
roi_sum->setText("");
roi_mean->setText("");
roi_stddev->setText("");
roi_max->setText("");
b_factor->setText("");
profile_radius->setText("");
res_estimate->setText("");
@@ -314,27 +297,4 @@ void JFJochViewerImageStatistics::loadImage(std::shared_ptr<const JFJochReaderIm
} else {
indexed->setText("N/A");
}
auto roi = image->GetROI();
if (roi && roi->pixels > 0) {
text = QString("<b>%1</b>").arg(roi->sum);
roi_sum->setText(text);
auto roi_npixel = static_cast<double>(roi->pixels);
double roi_mean_val = static_cast<double>(roi->sum) / roi_npixel;
text = QString("<b>%1</b>").arg(QString::number(roi_mean_val, 'f', 3));
roi_mean->setText(text);
double variance = static_cast<double>(roi->sum_square) / roi_npixel - roi_mean_val * roi_mean_val;
text = QString("<b>%1</b>").arg(QString::number(sqrt(variance), 'f', 3));
roi_stddev->setText(text);
text = QString("<b>%1</b>").arg(roi->max_count);
roi_max->setText(text);
} else {
roi_sum->setText("N/A");
roi_mean->setText("N/A");
roi_stddev->setText("N/A");
roi_max->setText("N/A");
}
}