Case study, page T-0048
Missed a statementReduced blood flow pattern, bottom and atrial fibrillation
PTB-XL record 4769, a man aged 81. A public research ECG from Germany, printed on A4, photographed by TraceRead's photo simulator and read end to end. Below is the AI first read, next to the original recording and what the dataset's cardiologists recorded.
0.77
median match with the original recording
0.98 after lining up by up to a tenth of a second
1 of 3
cardiologists' statements that TraceRead AI also flagged
9
extra patterns flagged for the doctor to keep or remove
151
heart rate from the photo, beats a minute
150 on the original recording
The AI first read
What the reading doctor gets
Hover a lead to see how closely the red rebuilt line follows the original recording. Untick the box to see the page without it.

Numbers under each lead: how closely the rebuilt line follows the original recording, where 1.00 is a perfect match. Median for this page: 0.77.
PTB-XL record 4769, a man aged 81. A4 paper, 3x4 with one lead II strip, pulses read 4 of 4.
Measures
| Measure | From the photo | Original recording | Reference program |
|---|---|---|---|
| Heart rate (beats a minute) | 151 | 150 | |
| PR interval (ms) | 130 | 127 | |
| QRS width (ms) | 81 | 82 | |
| QT interval (ms) | 287 | 279 | |
| QTc, corrected for heart rate (ms) | 390 | 379 | |
| Heart axis (degrees) | 84 | 83 |
Patterns flagged, with TraceRead AI's score
Atrial fibrillation
an irregular rhythm where the upper heart chambers quiver
95Unspecific ST changes
small changes in the middle part of the beat that do not point to one cause
26ST depression
the middle part of the beat sits lower than usual
14Reduced blood flow pattern, front and side
beat changes over the front and side of the heart that can go with reduced blood flow to the heart muscle
13Unspecific reduced blood flow pattern
beat changes that can go with reduced blood flow to the heart muscle, without a clear place
7Anteroseptal infarct pattern
a pattern linked to damage to the front wall of the heart muscle and the wall between the lower chambers
7Low T waves
the last part of each beat is smaller than usual
6Left ventricular hypertrophy
the muscle wall of the main pumping chamber may be thicker than usual
5Unspecific wide QRS
the signal spreads slowly inside the lower chambers, so the main spike is wide
5Pacemaker rhythm
the heartbeat is set by an artificial pacemaker that is working as expected
1
Also checked, below the flag line: Minor T wave abnormalities (14).
What the dataset's cardiologists recorded for this ECG
- Reduced blood flow pattern, bottom
- Atrial fibrillation
- Atrial flutter
Against the cardiologists
TraceRead AI and the dataset's cardiologists, side by side
TraceRead AI flagged 10 patterns. 1 of them is also among the dataset's statements (Atrial fibrillation). Not in the dataset's statements: Unspecific ST changes, ST depression, Reduced blood flow pattern, front and side, Unspecific reduced blood flow pattern and 5 more. In the dataset but not flagged: Reduced blood flow pattern, bottom and Atrial flutter.
Found by both 1
Atrial fibrillation
An irregular rhythm where the upper heart chambers quiver.
95
Recorded by the cardiologists only 2
Reduced blood flow pattern, bottom
Beat changes over the bottom of the heart that can go with reduced blood flow to the heart muscle.
Atrial flutter
A fast, regular rhythm where the upper heart chambers beat very quickly.
Flagged by TraceRead AI only 9
Unspecific ST changes
Small changes in the middle part of the beat that do not point to one cause.
26ST depression
The middle part of the beat sits lower than usual.
14Reduced blood flow pattern, front and side
Beat changes over the front and side of the heart that can go with reduced blood flow to the heart muscle.
13Unspecific reduced blood flow pattern
Beat changes that can go with reduced blood flow to the heart muscle, without a clear place.
7Anteroseptal infarct pattern
A pattern linked to damage to the front wall of the heart muscle and the wall between the lower chambers.
7Low T waves
The last part of each beat is smaller than usual.
6Left ventricular hypertrophy
The muscle wall of the main pumping chamber may be thicker than usual.
5Unspecific wide QRS
The signal spreads slowly inside the lower chambers, so the main spike is wide.
5Pacemaker rhythm
The heartbeat is set by an artificial pacemaker that is working as expected.
1
The doctor's review
What the reading doctor would check here
Worked out from this run's own numbers: where the rebuilt line strays, which measures moved, and which flags to keep or remove.
- 1The rebuilt line strays from the original recording in I (0.71), aVR (0.75), V1 (0.76), V4 (0.67) and aVL (0.74) and 6 more. Compare those leads with the paper first.
- 2Every measure from the photo is close to the same measure on the original recording.
- 3The cardiologists recorded reduced blood flow pattern, bottom and atrial flutter, which TraceRead AI did not flag.
- 4TraceRead AI flagged 9 patterns the cardiologists did not record: unspecific ST changes, ST depression, reduced blood flow pattern, front and side, unspecific reduced blood flow pattern, anteroseptal infarct pattern, low T waves, left ventricular hypertrophy, unspecific wide QRS and pacemaker rhythm. The doctor keeps or removes each one.
- 5The calibration pulse looks wider than expected, which would mean a paper speed of about 31.1 millimetres a second. TraceRead still reads the page at 25 millimetres a second, the usual speed, so timings could be a little off if that reading were right.
An AI first read is not the last word.
- A qualified doctor reviews every AI first read. Nothing reaches a patient until a doctor signs it.
- Do not rely on TraceRead alone in an emergency.
- A normal AI first read does not rule out heart disease.
- For adults, 18 and over.
Stage by stage
How TraceRead read this page
Every step of this run, with what went in and what came out.
Step 1: the photo
On the phoneWhat went in: one photo of a printed ECG
PTB-XL record 4769, a public research ECG from Germany, was printed as page T-0048 on A4 at 25 mm a second and 10 mm per millivolt. TraceRead's photo simulator then took a photo of it: tilted, lit unevenly, slightly blurred, with sensor noise and JPEG compression, the way a phone camera would.
This record was in PTB-XL's test set, so TraceRead AI never saw it during training. The person was a man aged 81. Age and sex are all TraceRead keeps.

Step 2: page finder
TraceRead AIFind the paper and how it is turned
TraceRead AI looks at the whole photo and marks the four corners of the page, and which way up it is. Fixed code then measures the printed millimetre grid to correct the scale and the tilt, and makes the page flat.
- Page found
- yes
- Turned
- 0 degrees
- Paper
- A4

Step 3: layout reader
TraceRead AIWork out where each lead sits
Every row of a printout starts with a calibration pulse, a small square step that is 10 mm tall for 1 millivolt. TraceRead AI finds the pulses, and fixed code matches them against 14 known page layouts to work out where each of the 12 leads sits and how long it runs.
- Layout
- 3x4 with one lead II strip
- Calibration pulses read
- 4 of 4
- Height of 1 millivolt
- 10 mm
- Paper speed used
- 25 mm a second
- Pulse width suggested
- 31.1 mm a second
- Layout match
- 0.977
Warnings this step raised
- The calibration pulse looks wider than expected, which would mean a paper speed of about 31.1 millimetres a second. TraceRead still reads the page at 25 millimetres a second, the usual speed, so timings could be a little off if that reading were right.
Step 4: trace rebuild
TraceRead AIRebuild every lead as a digital signal
TraceRead AI marks which pixels are trace ink. Fixed code then follows the ink of each lead, column by column, and turns it into millivolts, 500 points a second. The rebuilt line is drawn back over the paper so a doctor can see at a glance if a lead was misread.
Because this ECG is public, we can check the rebuilt signal against the original recording. 1.00 would be a perfect match; the second number allows the two to be lined up by up to a tenth of a second.
| Lead | Seconds shown | Ink found | Match | Lined up |
|---|---|---|---|---|
| I | 0 to 2.5 | 100% | 0.71 | 0.82 |
| aVR | 2.5 to 5 | 100% | 0.75 | 0.99 |
| V1 | 5 to 7.5 | 100% | 0.76 | 1.00 |
| V4 | 7.5 to 10 | 100% | 0.67 | 0.91 |
| II | 0 to 2.5 | 100% | 0.93 | 0.98 |
| aVL | 2.5 to 5 | 100% | 0.74 | 0.98 |
| V2 | 5 to 7.5 | 100% | 0.78 | 1.00 |
| V5 | 7.5 to 10 | 100% | 0.81 | 0.98 |
| III | 0 to 2.5 | 100% | 0.94 | 0.98 |
| aVF | 2.5 to 5 | 100% | 0.78 | 0.99 |
| V3 | 5 to 7.5 | 100% | 0.73 | 0.99 |
| V6 | 7.5 to 10 | 100% | 0.80 | 0.98 |
| II, rhythm strip | 0 to 10 | 0.82 | 0.97 |
Median match for this page: 0.77.

Step 5: coverage map
Fixed codeMark which seconds the paper shows
A 3x4 printout shows each lead for only 2.5 of the 10 seconds the machine recorded. The coverage map tells the pattern finder exactly which seconds of each lead it has, so a part that is not on the paper is never read as a flat line.
Step 6: hold for retake
Fixed codeDecide whether the photo can be read
Before any pattern is read, a fixed hold rule decides whether the rebuild can be trusted. Version 1 looked only at how well the page matched a known layout and how unsure the AI was about the five main groups. Version 2 also checks the calibration, the page shape, how much trace was found, whether the overlapping lead II pieces agree, and clipped or flat parts. If the rebuilt trace looks unreliable, it asks for a new photo instead of giving a first read. Both versions' decisions for this page are shown below.
The layout match score was 0.977 (a photo is held back when the score is below 0.888) and 4 of 4 calibration pulses were read. The AI's own uncertainty about the five main heart groups was 0.327 (a photo is held back above 0.497). Neither check fired, so the photo is used.
- Every check passed, so the rebuilt trace is used.
| Check | Value | Limit | Result |
|---|---|---|---|
| page_found | passed | ||
| gain_standard | 0.009 | 0.05 | passed |
| paper_speed | 31.11 | 2434 | passed |
| layout_match | 0.977 | 0.889 | passed |
| page_shape | 1.001 | 1.7 | passed |
| ink_median | 1 | 0.9 | passed |
| coverage | 1 | 1 | passed |
| lead_ii_agree | 0.997 | 0.49 | passed |
| lead_ii_amplitude | 0.009 | 0.5 | passed |
| goldberger | 0.107 | 1.45 | passed |
| edge_clipping | 0 | 0.027 | passed |
| flat_run | 0.018 | 0.34 | passed |
| lead_ii_raw | 0.994 | 0.2 | passed |
Step 7: measures
Fixed codeMeasure the heartbeat
Fixed code finds every beat, lines the leads up and measures them together. The same code run on the original recording shows how much the photo changed each number, and a reference ECG program from the PTB-XL+ dataset gives a second opinion.
| Measure | From the photo | Original recording | Reference program |
|---|---|---|---|
| Heart rate (beats a minute) | 151 | 150 | 151 |
| PR interval (ms) | 130 | 127 | not measured |
| QRS width (ms) | 81 | 82 | 96 |
| QT interval (ms) | 287 | 279 | 302 |
| QTc, corrected for heart rate (ms) | 390 | 379 | 410 |
| Heart axis (degrees) | 84 | 83 | 82 |
Step 8: pattern finder
TraceRead AIScore 71 patterns and flag the ones that pass their line
TraceRead AI reads the 12 rebuilt leads and the coverage map together and scores 71 patterns of rhythm, conduction, thickened heart muscle and ST and T changes. A pattern is flagged when its score passes a line set in advance on other ECGs, never on this one. The lines are set so that patterns are not missed, which is why a pattern can be flagged with a low score, and why some flags are wrong: the doctor decides.
What the dataset's cardiologists recorded for this ECG
- Reduced blood flow pattern, bottom
- Atrial fibrillation
- Atrial flutter
TraceRead AI flagged 10 patterns. 1 of them is also among the dataset's statements (Atrial fibrillation). Not in the dataset's statements: Unspecific ST changes, ST depression, Reduced blood flow pattern, front and side, Unspecific reduced blood flow pattern and 5 more. In the dataset but not flagged: Reduced blood flow pattern, bottom and Atrial flutter.
TraceRead AI's score for each pattern, from 0 to 100. The thin line is where that pattern gets flagged.
Atrial fibrillation
flaggedan irregular rhythm where the upper heart chambers quiver
95Unspecific ST changes
flaggedsmall changes in the middle part of the beat that do not point to one cause
26Minor T wave abnormalities
below the linesmall changes in the last part of the beat that are not enough to point to a cause
14ST depression
flaggedthe middle part of the beat sits lower than usual
14Reduced blood flow pattern, front and side
flaggedbeat changes over the front and side of the heart that can go with reduced blood flow to the heart muscle
13Unspecific reduced blood flow pattern
flaggedbeat changes that can go with reduced blood flow to the heart muscle, without a clear place
7Anteroseptal infarct pattern
flaggeda pattern linked to damage to the front wall of the heart muscle and the wall between the lower chambers
7Low T waves
flaggedthe last part of each beat is smaller than usual
6Left ventricular hypertrophy
flaggedthe muscle wall of the main pumping chamber may be thicker than usual
5Unspecific wide QRS
flaggedthe signal spreads slowly inside the lower chambers, so the main spike is wide
5Pacemaker rhythm
flaggedthe heartbeat is set by an artificial pacemaker that is working as expected
1
See TraceRead read a paper ECG
We show you TraceRead reading public research ECGs, step by step, and talk through how your team prints, photographs and reads ECGs today.