Skip to content

About

Preregistered, parameter-matched evaluation of the semi-Siamese U-Net's dedicated decoder branch for the cardiac component of GREIT-reconstructed lung EIT: EIDORS data generation, training/scoring/sweep code, hashed preregistrations with deviation logs, per-seed results, and the simulated-review and citation-verification record.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

sunet-decoder-branch-eit

Code, preregistrations and per-seed results for:

Chen C-W, Wang T-C, Ko Y-F. A decoder branch for the cardiac component of lung EIT: a preregistered, parameter-matched evaluation across measurement-noise levels. Submitted to Scientific Reports, 2026 (tag v1.1-submission; the earlier tag v1.0-submission is the Physiological Measurement submission of 2026-09-26, returned without review).

The semi-Siamese U-Net separates the cardiac from the ventilatory component of GREIT-reconstructed lung EIT images with a decoder branch dedicated to the cardiac output. This repository holds everything needed to regenerate the two preregistered studies and the registered addendum: EIDORS data generation, training, scoring, the SNR sweep, the retrained 20 dB contrast, figures, tables, and the simulated-review and citation-verification record that the manuscript's Acknowledgements refer to.

Layout

Path What
PREREGISTRATION.md, .sha256 Study 1 (lung endpoint, n = 10), hashed 2026-08-28; §8 deviation log
PREREGISTRATION_HEART.md, .sha256 Study 2 (heart endpoint, n = 58), hashed 2026-08-29; §8 deviation log; §9 addendum (retrained 20 dB contrast, 35/25 dB levels, geometry bootstrap), hashed 2026-09-23 before any of its runs
RESULTS_STUDY2.md Laboratory record of every number, in registered order
METRIC_DEFECT_2026-09-18.md The scoring defect found after unblinding, and its correction
tools/ MATLAB/EIDORS data generation (gen_dataset.m, gen_snr_sweep.m, gen_snr_full.m, fwd_triple.m), training (train_arms.py, arms.py), scoring (evaluate.py), analyses (h3_snr.py, rel_err_sweep.py, noise_perturbation.py, geom_bootstrap.py, verify_manuscript_numbers.py), figures and tables (make_fig*.py, make_tables.py, make_table3.py, make_table_s9.py, figstyle.py), citation registry (cite.py, apply_ref_overrides.py). tools/PlotNeuralNet/ is a vendored copy of HarisIqbal88/PlotNeuralNet (MIT) used for the architecture diagrams
results_v2_fix/ 40 dB primary analysis (five arms × 58 seeds): per_seed.csv, per_image.csv, summary.json
results_v2_snr{60,50,40,35,30,25,20}_heart_fix/, ..._lung_fix/ Evaluation-only sweep of the 40 dB-trained models
results_20db_fix/ Addendum §9.2: D and B_wide trained and evaluated at 20 dB
results_v1_*_fix/ Study 1
results/ Derived files: tables/ (Tables 1–3 and Table S9), geom_bootstrap.json, noise_perturbation_40_to_20.json, manuscript_numbers.json, sweep_all_arms_heart.json, env_mini.json
figures/ Fig. 1–4, S1 architecture diagrams, S3
refs/ Citation registry generated by cite.py from Crossref/PubMed, with the per-entry check table and the documented overrides (overrides.json, each with its source and date)
review_record/ Simulated peer-review panels (round 1 of 2026-09-23 and its re-review; round 2 of 2026-10-06 and its re-review of 2026-10-07, with the five seats' cards and the three-gate verification artefacts), author triage and revision authority for every round, citation audits, the revision patches and their apply reports, as referred to in the Methods (Use of artificial intelligence tools)
preds.npz The six dumped test frames behind Fig. 4

.gitignore excludes datasets (*.mat, regenerable), checkpoints (*.pt, 406 files ≈ 17 GB, available on request) and run folders.

Regenerating

  1. Data (MATLAB R2026a, EIDORS v3.8, Netgen 6.1; the phantom and noise helpers p2_*.m are in the companion project EIT_noise_geometry/src, referenced by relative path in the scripts): gen_dataset('data/v2', 3600, 'snr_db', 40) → gen_snr_sweep([60 50 40 35 30 25 20]) → gen_snr_full(20).
  2. Training (Python 3.9, PyTorch 2.8, one machine per contrast): python3 tools/train_arms.py --data data/v2/dataset.mat --arms B B_wide C C_wide D --seeds $(seq 0 57) --out runs --prereg PREREGISTRATION_HEART.md; the addendum: bash tools/run_addendum_mini.sh <sweep-root>.
  3. Scoring: python3 tools/evaluate.py --data <dataset.mat> --runs <runs> --out <results dir> --primary D B_wide --channel heart (the corrected quarter-amplitude path is the default; --qa-space normalised reproduces the defective pre-2026-09-18 numbers).
  4. Numbers, tables, figures: python3 tools/verify_manuscript_numbers.py, make_tables.py, make_table3.py, make_table_s9.py, bash tools/build_figures.sh.
  5. Manuscript deliverable: python3 tools/format_convert_scirep.py <draft.md> <out.md> (Nature-style numbered references rendered by cite.py from the registry in refs/), then python3 tools/pack_submission_scirep.py.

Every training run writes the SHA-256 of the preregistration it ran under into run_meta.json.

Licence

Code (tools/) is released under the MIT License (LICENSE). Data, results, figures and written records are released under CC BY 4.0 (LICENSE-DATA). tools/PlotNeuralNet/ retains its own MIT licence.

Contact

Yen-Fen Ko, Department of Biomedical Engineering, China Medical University, Taichung, Taiwan — kklven@gmail.com — ORCID 0000-0003-2986-9984

About

Preregistered, parameter-matched evaluation of the semi-Siamese U-Net's dedicated decoder branch for the cardiac component of GREIT-reconstructed lung EIT: EIDORS data generation, training/scoring/sweep code, hashed preregistrations with deviation logs, per-seed results, and the simulated-review and citation-verification record.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages