Day 84: Collecting validation data (session 2) & recording error
Completing the dataset, computing per-dimension error
Finish collecting (reaching the 5-person exit bar), then compute per-dimension error: mean absolute error and range for shoulder width, chest, arm length, torso, hip β each broken down by condition where you have enough data. This table is the concrete deliverable the roadmap asks for: 'per-dimension error recorded honestly in the README'.
import numpy as np
def per_dimension_error(log):
# log: list of {dim, predicted_cm, true_cm, condition, confidence}
by_dim = {}
for row in log:
by_dim.setdefault(row["dim"], []).append(
abs(row["predicted_cm"] - row["true_cm"]))
return {
dim: {"mae_cm": round(np.mean(errs), 1),
"max_cm": round(np.max(errs), 1),
"n": len(errs)}
for dim, errs in by_dim.items()
}The error table IS the credibility
A README that says 'shoulder width: MAE 2.1cm (n=5); chest: MAE 3.4cm; arm length: MAE 4.8cm, worse under occlusion' is worth more than any accuracy percentage. It's specific, measured, and honest about where the system is weak β exactly the evidence that this is a real engineering project, not a tutorial. This table is your single strongest Stage 2 artifact.
Key terms
- Per-dimension error
- Error metrics computed separately for each body measurement, revealing which dimensions the pipeline handles well.
- Error table
- The tabulated MAE/range per dimension β the concrete, honest deliverable of the validation.
What is the concrete Stage 2 deliverable this validation produces?