Evidence-aligned source, frozen inference assets, reviewer demo, and verified result
artifacts for the V23 ECG image-digitization pipeline accompanying the manuscript
Paper to Pulse: Height-Aware Spatiotemporal Architecture with Physics-Informed
Refinement for Robust ECG Digitization.
Primary independent result: official private-leaderboard SNR 19.742 dB,
rank 24 / 1,425, in the PhysioNet — Digitization of ECG Images challenge
(public leaderboard: 20.051 dB, rank 23).
Result hierarchy
Evidence
Cohort
Result
Interpretation
Official private challenge leaderboard
hidden challenge test set
19.742 dB; rank 24 / 1,425
Primary independent challenge result
LUDB v1.0.1 external waveforms
200 / 200 records
mean record SNR 21.393 dB (95% bootstrap CI 20.854–21.904)
Waveform-cohort transfer through the same renderer
ECG-Image-Kit robustness
20 records × 4 profiles; 80 / 80 successful runs
clean 23.19, mild 22.35, moderate 21.77, severe 20.35 dB
Paired, same-renderer degradation study
Automated interval consistency
190–197 valid pairs, depending on interval
HR MAE 0.174 bpm; other MAEs 1.85–10.95 ms
Algorithmic consistency only, not clinical validation
Scope of "external." LUDB supplies waveform-disjoint records from a source
not listed among the training databases. Those waveforms were rendered through
the same ECG-Image-Kit generator used by the imaging pipeline, pinned to
commit 27b90f56896c9fc78b05a83ca14844ea2637aa0b.
These experiments therefore do not establish cross-generator, scanner,
paper-vendor, or acquisition-device generalization.
Quick reviewer demo
Open demo.ipynb in Google Colab or Kaggle and run all cells. It
is preconfigured for this repository and downloads the included inference-only
V23 export, both rectifier checkpoints, and the public challenge demo assets.
A free GPU is sufficient; CPU execution is slower.
The demo assets are for interactive illustration and pipeline checking only.
They are not the LUDB external cohort and are not used to substantiate the
v4 external, robustness, or interval results.
Frozen model and rectifier assets
The repository includes the assets needed for reviewer inference:
The archived full competition checkpoint was named v23_epoch038.pth and has
SHA-256
e290465929654083db9956bbbfb6886c31a9e0aa6d0fe8bbc150eded397a609e.
The smaller file released here is an inference-only export. Its 489-tensor state
dictionary is byte-canonically identical to the audited epoch-38 checkpoint;
the canonical tensor SHA-256 is
c8c7ccfcc542d2d9beef9f9151a33391b1a3e2b5c9aee043cfba013dab0c87fb.
See results/weight_manifest.json and
docs/PROVENANCE.md.
Frozen medal pipeline
The competition path performs:
Stage-0 orientation correction, with fallback to the input image;
Stage-1 grid rectification, with fallback to the Stage-0 image;
four-row V23 inference with a ConvNeXt-based encoder and DSNT coordinate
head;
standard 3 × 4 lead segmentation, using row four as the full Lead-II rhythm
strip; and
direct signal export with no smoothing, algebraic lead projection,
baseline-offset correction, or short/long Lead-II blend.
The 200-record run used LUDB v1.0.1 (500 Hz, ten-second, 12-lead waveforms), no
post-processing, and the competition-aligned metric with up to 0.2 s temporal
alignment plus constant-offset alignment.
All modes were evaluated on the same 200 LUDB records. The frozen no-post path
was best; smoothing and the algebraic constraint variants reduced SNR on this
cohort.
Mode
Mean SNR (dB)
Paired change vs no post (dB)
none
21.393
0.000
smooth
19.082
-2.311
partial projection
19.395
-1.997
full projection
19.367
-2.026
Lead-II blend
21.382
-0.011
smooth + projection + blend
17.457
-3.935
This is a component ablation, not a claim that every physiological constraint is
harmful in every setting.
Same-renderer robustness
The robustness run used only supported ECG-Image-Kit options at the pinned
commit—no separate renderer and no custom image overlay. Twenty paired LUDB
records were rendered under four profiles.
The same NeuroKit2 delineator was applied to native LUDB Lead II and to the
digitized Lead II.
Quantity
Valid pairs
MAE
HR
197
0.174 bpm
RR
197
1.85 ms
QRS
190
7.18 ms
PR
190
9.11 ms
QT
196
10.26 ms
QTc
196
10.95 ms
These values measure automated-analysis consistency. They are not an
independent cardiologist reading study, diagnostic-accuracy result, or clinical
ground truth for the digitizer. Comparisons with LUDB annotations remain in the
released tables so the delineator's own error is visible.
Historical internal aggregate: 23.08 dB
The previously circulated 23.08 dB number is only an internal arithmetic
aggregate of 13 listed per-lead values. No released record manifest,
record-level predictions, evaluation output, or checkpoint metadata links it to
a held-out cohort. It is not treated here as a validation, external-test, or
challenge result, and it does not appear in the manuscript.
Note that per-lead averaging is systematically optimistic relative to the
record-level metric used by the challenge: on the released LUDB run the mean of
the twelve per-lead SNRs is 22.38 dB, against a record-level mean of 21.39 dB.
Verify the released numbers
The artifact checks use only the Python standard library:
The output-free notebook
notebooks/reproduce_results.ipynb runs the
same checks interactively. GPU/remote notebooks preserve the exact source used
for the reported analyses:
Raw LUDB waveforms, rendered LUDB images, and prediction caches are not
redistributed. The remote notebooks obtain the public waveform source at
runtime and assert the pinned renderer commit before generation.
Repository contents
text
1demo.ipynb repository-native reviewer demo
2demo_data/ public challenge demo assets only
3v23_paper_to_pulse.pth inference-only V23 state export
4rectifier/ Stage-0/Stage-1 source, weights, offline wheel
5docs/ provenance, methods, and limitations
6notebooks/ output-free medal and LUDB analysis notebooks
7results/ verified CSV, JSON, and PNG artifacts
8scripts/ standard-library verification utilities
The bundled rectifier code and weights derive from a publicly released challenge
baseline and retain their upstream terms. The demo assets originate from the
public PhysioNet/Kaggle challenge and are provided for reviewer verification.
Model weights and repository-authored notebooks are released for research and
review. See the upstream sources and challenge terms before redistribution or
commercial use.