Lab Edition API
#Lab version API
The laboratory version provides the core capabilities of ECGFounder, text generation to single lead, single lead to twelve leads, three leads to twelve leads, PPG signal generation to single lead, and single lead generation of cardiac ultrasound.
🔬 Welcome to the Lab API! All interfaces are currently in the public beta stage, and functions may be adjusted from time to time. To ensure normal access and data security, please enter the Scientific Research Cooperation Page and contact the staff to obtain the exclusive access key. 💡 Warm reminder: Please keep your key properly to avoid leakage or abuse.
- Medical research
- ECG model verification
MCMA interface
POST /api/v1/experimental/mcma
Twelve-lead signals can be generated by inputting a single-lead signal.
Request parameters
| Parameters | Type | Required | Description |
|---|---|---|---|
| ecgData | array | ✅ | ECG signal data array (ADC value) |
| ecgSamplerate | number | ✅ | Sampling rate, unit Hz (recommended 250-500) |
| original | boolean | ❌ | Whether to output the original waveform, default true |
Request example
curl -X POST "https://api.heartvoice.com.cn/api/v1/experimental/mcma" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"ecgData": [512, 515, 520, 518, 525, ...],
"ecgSampleRate": 500
}'
Response example
{
"errorCode": "0",
"msg": "success",
"data": [
[
-0.0005600000149570405,
0.05680999904870987,
-0.002580000087618828,
0.02824000082910061,
...
]
]
}
Visual display
import ecg_plot
ecg_plot.plot(gen_ecg12, sample_rate=fs, title='ECG 12')
ecg_plot.show()

Literature
@article{chen2024multi,
title={Multi-channel masked autoencoder and comprehensive evaluations for reconstructing 12-lead ECG from arbitrary single-lead ECG},
author={Chen, Jiarong and Wu, Wanqing and Liu, Tong and Hong, Shenda},
journal={npj Cardiovascular Health},
volume={1},
number={1},
pages={34},
year={2024},
publisher={Nature Publishing Group UK London}
}
Chen, J., Wu, W., Liu, T., & Hong, S. (2024). Multi-channel masked autoencoder and comprehensive evaluations for reconstructing 12-lead ECG from arbitrary single-lead ECG. npj Cardiovascular Health, 1(1), 34.
DiffuSETS interface
POST /api/v1/experimental/diffuSets
Twelve-lead signals can be generated by inputting a single-lead signal.
Request parameters
| Parameters | Type | Required | Description |
|---|---|---|---|
| text | str | ✅ | Clinical diagnosis text, multiple diagnoses need to be separated by '|' |
| age | int | ✅ | age |
| sex | str | ✅ | sex |
| hr | int | ✅ | heart rate |
| batch | int | ❌ | Select the number of ECGs to generate |
Request example
curl -X POST "https://api.heartvoice.com.cn/api/v1/experimental/diffuSets" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"text": 'Sinus rhythm|Normal ECG.', # Clinical text report, multi-reports should be split by '|'
"age": 50, # Age of patient
"sex": 'M',
"hr": 80,
'batch': 1
}'
Response example
{
"errorCode": "0",
"msg": "success",
"data": {
"textImg": "[\"iVBORw0KGgoAAAANSUhI=...\"]"
}
}
Visual display
import time
import requests
import json
import base64
import io
from PIL import Image
def base64_to_image(base64_str):
# Decode Base64 string
image_data = base64.b64decode(base64_str)
# Use io.BytesIO to convert the decoded data into a file object
image_file = io.BytesIO(image_data)
# Open the image using PIL
image = Image.open(image_file)
return image
ecg_img = base64_to_image(ecg_data)
ecg_img.show()

Literature
@article{lai2025diffusets,
title={DiffuSETS: 12-Lead ECG generation conditioned on clinical text reports and patient-specific information},
author={Lai, Yongfan and Chen, Jiabo and Zhao, Qinghao and Zhang, Deyun and Wang, Yue and Geng, Shijia and Li, Hongyan and Hong, Shenda},
journal={Patterns},
year={2025},
publisher={Elsevier}
}
Lai, Y., Chen, J., Zhao, Q., Zhang, D., Wang, Y., Geng, S., ... & Hong, S. (2025). DiffuSETS: 12-Lead ECG generation conditioned on clinical text reports and patient-specific information. Patterns.
WearECG interface
POST /api/v1/experimental/lead3Lead12
Twelve-lead signals can be generated by inputting a single-lead signal.
Request parameters
| Parameters | Type | Required | Description |
|---|---|---|---|
| ecgData | array | ✅ | ECG signal data array (ADC value) |
| ecgSampleRate | number | ✅ | Sampling rate, unit Hz (recommended 250-500) |
Request example
curl -X POST "https://api.heartvoice.com.cn/api/v1/experimental/lead3Lead12" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"ecgData": [[512, 515, 520, 518, 525, ...],[512, 515, 520, 518, 525, ...],[512, 515, 520, 518, 525, ...]],
"ecgSampleRate": 500
}'
Response example
{
"errorCode": "0",
"msg": "success",
"data": [
[
-0.0025084596127271652,
0.0118071788037084,
0.014166647854523678,
...
]
]
}
Visual display
import ecg_plot
ecg_plot.plot(gen_ecg12, sample_rate=fs, title='ECG 12')
ecg_plot.show()

PPGFlowECG interface
POST /api/v1/experimental/ppgFlowEcg
Twelve-lead signals can be generated by inputting a single-lead signal.
Request parameters
| Parameters | Type | Required | Description |
|---|---|---|---|
| ppgData | array | ✅ | PPG signal data array. Upload red light, green light or infrared light data |
| ppgSampleRate | number | ✅ | Sampling rate in Hz (recommended 250-500) |
Request example
curl -X POST "https://api.heartvoice.com.cn/api/v1/experimental/ppgFlowEcg" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"ppgData": [512, 515, 520, 518, 525, ...],
"ecgSampleRate": 500
}'
Response example
{
"errorCode": "0",
"msg": "success",
"data": [
[
-0.0005600000149570405,
0.05680999904870987,
-0.002580000087618828,
0.02824000082910061,
...
]
]
}
Visual display

Literature
@article{fang2025ppgflowecg,
title={PPGFlowECG: Latent Rectified Flow with Cross-Modal Encoding for PPG-Guided ECG Generation and Cardiovascular Disease Detection},
author={Fang, Xiaocheng and Jin, Jiarui and Wang, Haoyu and Liu, Che and Cai, Jieyi and Nie, Guangkun and Li, Jun and Li, Hongyan and Hong, Shenda},
journal={arXiv preprint arXiv:2509.19774},
year={2025}
}
Fang, X., Jin, J., Wang, H., Liu, C., Cai, J., Nie, G., ... & Hong, S. (2025). PPGFlowECG: Latent Rectified Flow with Cross-Modal Encoding for PPG-Guided ECG Generation and Cardiovascular Disease Detection. arXiv preprint arXiv:2509.19774.
ECHOPulse interface
POST /api/v1/experimental/ecgEcho
Twelve-lead signals can be generated by inputting a single-lead signal.
Request parameters
| Parameters | Type | Required | Description |
|---|---|---|---|
| ecgData | array | ✅ | ECG signal data array (ADC value) |
| ecgSampleRate | number | ✅ | Sampling rate, unit Hz (recommended 250-500) |
Request example
curl -X POST "https://api.heartvoice.com.cn/api/v1/experimental/ecgEcho" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"ecgData": [512, 515, 520, 518, 525, ...],
"ecgSampleRate": 500
}'
Response example
{
"errorCode": "0",
"msg": "success",
"data": {
"ecgEcho": [
[
[
[
[
0.0013988255523145199,
0.004246973432600498,
0.0010940954089164734,
0.004930938594043255,
-0.0024434151127934456,
0.00477356743067503,
...
]
]
]
]
]
}
}
Visual display
Save ECHO video frames
def save_video_and_plot_frames(video_tensor, save_dir='output'):
os.makedirs(save_dir, exist_ok=True)
T = video_tensor.shape[2] # Time dimension
fig, axes = plt.subplots(1, T, figsize=(T * 3, 3))
for t in range(T):
# Take out the tth frame
frame = video_tensor[0, :, t, :, :] # [C, H, W]
# Convert to [H, W, C] numpy
frame_np = frame.permute(1, 2, 0).cpu().numpy()
# Normalize to [0,1] to avoid imshow clipping
frame_min, frame_max = frame_np.min(), frame_np.max()
if frame_max > frame_min:
frame_np = (frame_np - frame_min) / (frame_max - frame_min)
else:
frame_np = np.zeros_like(frame_np) # Prevent division by zero
ax = axes[t]
ax.imshow(frame_np)
ax.set_title(f'Frame {t}')
ax.axis('off')
for i in range(T, len(axes)):
axes[i].axis('off')
plt.tight_layout()
plt.savefig(os.path.join(save_dir, 'echo_frames.png'))
plt.show()
plt.close()
print(f"All frames plotted in {save_dir}")
Save the result as gif
def video_tensor_to_gif_with_ecg(video_tensor, ecg_data, output_path, title, duration=125, fps=8):
# Convert video content into numpy array
video_np = np.array(video_tensor)
video_np = np.squeeze(video_np, axis=0)
# Change dimension order (C, T, H, W) -> (T, H, W, C)
video_np = np.transpose(video_np, (1, 2, 3, 0))
# EKG data preparation (reduced dimensions)
ecg = np.array(ecg_data)
ecg = ecg[0, 1, :] # Assuming this is the correct dimension for EKG data
# Confirm frame number
num_frames = 11
# EKG data is resampled based on frame number
x_original = np.linspace(0, 1, len(ecg))
x_resampled = np.linspace(0, 1, num_frames)
ecg_resampled = np.interp(x_resampled, x_original, ecg)
# Set canvas
fig, (ax1, ax2) = plt.subplots(2, 1, figsize=(8, 10), gridspec_kw={'height_ratios': [3, 1]})
# Set initialization image
im = ax1.imshow(np.zeros((128, 128, 3)), animated=True)
ax1.set_title(title)
line, = ax2.plot([], [], 'r-')
ax1.axis('off')
ax2.set_xlim(0, num_frames)
ax2.set_ylim(ecg_resampled.min(), ecg_resampled.max())
ax2.set_xlabel('Frame')
ax2.set_ylabel('EKG')
ax2.set_title('Lead I EKG')
def update(frame):
im.set_array(video_np[frame])
line.set_data(range(frame + 1), ecg_resampled[:frame + 1])
return im, line
num_frames = video_np.shape[0]
anim = FuncAnimation(fig, update, frames=num_frames, interval=duration, blit=True)
anim.save(output_path, writer='pillow', fps=fps)
plt.close(fig)
print(f"GIF saved to {output_path}")
Visual display
- Generated ECHO frames (call save_video_and_plot_frames)

- Convert to gif (call video_tensor_to_gif_with_ecg)

Literature
@article{li2024echopulse,
title={Echopulse: Ecg controlled echocardio-grams video generation},
author={Li, Yiwei and Kim, Sekeun and Wu, Zihao and Jiang, Hanqi and Pan, Yi and Jin, Pengfei and Song, Sifan and Shi, Yucheng and Liu, Tianming and Li, Quanzheng and others},
journal={arXiv preprint arXiv:2410.03143},
year={2024}
}
Li, Y., Kim, S., Wu, Z., Jiang, H., Pan, Y., Jin, P., ... & Li, X. (2024). Echopulse: Ecg controlled echocardio-grams video generation. arXiv preprint arXiv:2410.03143.
ECGTwins interface
POST /api/v1/experimental/ecgTwins
Twelve-lead signals can be generated by inputting a single-lead signal.
Request parameters
| Parameters | Type | Required | Description |
|---|---|---|---|
| reference_file | file | ✅ | Reference file, currently fixed Example file |
| text | str | ✅ | Clinical diagnosis text, multiple diagnoses need to be separated by '|' |
| age | int | ✅ | age |
| sex | str | ✅ | sex |
| hr | int | ✅ | heart rate |
| batch | int | ❌ | Select the number of ECGs to generate |
Request example
curl -X POST "https://api.heartvoice.com.cn/api/v1/experimental/diffuSets" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-F "file=@normal_1-66b62bfc8acabc11cf5cc34cafe860f4.pt"
-d '{
"text": 'Sinus rhythm|Normal ECG.', # Clinical text report, multi-reports should be split by '|'
"age": 50, # Age of patient
"sex": 'M',
"hr": 80,
'batch': 1
}'
Response example
{
"errorCode": "0",
"msg": "success",
"data": {
"ECGTwin_imgs": [
[
0.0013988255523145199,
0.004246973432600498,
0.0010940954089164734,
0.004930938594043255,
-0.0024434151127934456,
0.00477356743067503,
...
]
]
}
}
Visual display
import requests
import json
import base64
import io
from PIL import Image
def base64_to_image(base64_str):
# Decode Base64 string
image_data = base64.b64decode(base64_str)
# Use io.BytesIO to convert the decoded data into a file object
image_file = io.BytesIO(image_data)
# Open the image using PIL
image = Image.open(image_file)
return image
ecg_img = base64_to_image(ecg_data)
ecg_img.show()

Literature
@article{lai2025ecgtwin,
title={ECGTwin: Personalized ECG Generation Using Controllable Diffusion Model},
author={Lai, Yongfan and Liu, Bo and Guan, Xinyan and Zhao, Qinghao and Li, Hongyan and Hong, Shenda},
journal={arXiv preprint arXiv:2508.02720},
year={2025}
}
Lai, Y., Liu, B., Guan, X., Zhao, Q., Li, H., & Hong, S. (2025). ECGTwin: Personalized ECG Generation Using Controllable Diffusion Model. arXiv preprint arXiv:2508.02720.
ECGFounder interface
POST /api/v1/experimental/ecgFounder
Twelve-lead signals can be generated by inputting a single-lead signal.
Request parameters
| Parameters | Type | Required | Description |
|---|---|---|---|
| ecgData | array | ✅ | ECG signal data array (ADC value) |
| ecgSampleRate | number | ✅ | Sampling rate, unit Hz (recommended 250-500) |
Request example
curl -X POST "https://api.heartvoice.com.cn/api/v1/experimental/ecgFounder" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"ecgData": [512, 515, 520, 518, 525, ...],
"ecgSampleRate": 500
}'
Response example
{
"errorCode": "0",
"msg": "success",
"data": {
"otherwise_normal_ecg": null,
"rsr_OR_QR_PATTERN_IN_V1_SUGGESTS_RIGHT_VENTRICULAR_CONDUCTION_DELAY": null,
"nonspecific_T_WAVE_ABNORMALITY_HAS_REPLACED_INVERTED_T_WAVES_IN": null,
"inverted_T_WAVES_HAVE_REPLACED_NON_SPECIFIC_T_WAVE_ABNORMALITY_IN": null,
"voltage_CRITERIA_FOR_LEFT_VENTRICULAR_HYPERTROPHY": null,
"bifascicular_BLOCK": null,
...
}
}
Chinese and English
| English label | Chinese translation |
|---|---|
| ABNORMAL ECG | Abnormal electrocardiogram |
| NORMAL SINUS RHYTHM | Normal sinus rhythm |
| NORMAL ECG | Normal electrocardiogram |
| SINUS RHYTHM | Sinus rhythm |
| SINUS BRADYCARDIA | Sinus bradycardia |
| ATRIAL FIBRILLATION | Atrial fibrillation |
| SINUS TACHYCARDIA | Sinus tachycardia |
| otherwise normal ecg | otherwise normal electrocardiogram |
| LEFT AXIS DEVIATION | Left axis offset |
| PREMATURE VENTRICULAR COMPLEXES | Premature ventricular contractions |
| BORDERLINE ECG | Borderline ECG |
| RIGHT BUNDLE BRANCH BLOCK | Right bundle branch block |
| SEPTAL INFARCT | Ventricular septal infarction |
| LEFT ATRIAL ENLARGEMENT | Left atrial enlargement |
| NONSPECIFIC T WAVE ABNORMALITY | Nonspecific T wave abnormality |
| LOW VOLTAGE QRS | Low voltage QRS complex |
| PREMATURE ATRIAL COMPLEXES | Premature atrial contractions |
| ANTERIOR INFARCT | Anterior wall infarction |
| INCOMPLETE RIGHT BUNDLE BRANCH BLOCK | INCOMPLETE RIGHT BUNDLE BRANCH BLOCK |
| PREMATURE SUPRAVENTRICULAR COMPLEXES | Premature superior ventricular contractions |
| LEFT BUNDLE BRANCH BLOCK | LEFT BUNDLE BRANCH BLOCK |
| NONSPECIFIC T WAVE ABNORMALITY NOW EVIDENT IN | Current non-specific T wave abnormality |
| NONSPECIFIC T WAVE ABNORMALITY NO LONGER EVIDENT IN | The nonspecific T wave abnormality has disappeared |
| T WAVE INVERSION NOW EVIDENT IN | T wave inversion is currently occurring |
| LATERAL INFARCT | Lateral infarction |
| NONSPECIFIC ST ABNORMALITY | Nonspecific ST segment abnormality |
| LEFT VENTRICULAR HYPERTROPHY | Left ventricular hypertrophy |
| T WAVE INVERSION NO LONGER EVIDENT IN | T WAVE INVERSION NO LONGER EVIDENT IN |
| WITH RAPID VENTRICULAR RESPONSE | WITH RAPID VENTRICULAR RESPONSE |
| QT HAS SHORTENED | QT interval shortened |
| QT HAS LENGTHENED | QT interval prolongation |
| FUSION COMPLEXES | Fusion Wave |
| ATRIAL FLUTTER | Atrial flutter |
| MARKED SINUS BRADYCARDIA | Marked sinus bradycardia |
| WITH SINUS ARRHYTHMIA | WITH SINUS ARRAYTHMIA |
| NONSPECIFIC ST AND T WAVE ABNORMALITY | Nonspecific ST-T wave abnormalities |
| LEFT ANTERIOR FASCICULAR BLOCK | LEFT ANTERIOR FASCICULAR BLOCK |
| RIGHT AXIS DEVIATION | Right axis offset |
| ECTOPIC ATRIAL RHYTHM | Ectopic Atrial Rhythm |
| UNDETERMINED RHYTHM | UNDETERMINED RHYTHM |
| ANTEROSEPTAL INFARCT | Anteroseptal infarction |
| RIGHTWARD AXIS | Right eccentric axis |
| ST NOW DEPRESSED IN | ST segment depression is currently occurring |
| WITH SHORT PR | With short PR interval |
| WITH MARKED SINUS ARRHYTHMIA | With significant sinus arrhythmia |
| ST NO LONGER DEPRESSED IN | ST segment depression has disappeared |
| INVERTED T WAVES HAVE REPLACED NONSPECIFIC T WAVE ABNORMALITY IN | T wave inversion replaces nonspecific T wave abnormalities |
| NON-SPECIFIC CHANGE IN ST SEGMENT IN | ST segment non-specific changes |
| NONSPECIFIC T WAVE ABNORMALITY HAS REPLACED INVERTED T WAVES IN | Nonspecific T wave abnormalities replacing inverted T waves |
| JUNCTIONAL RHYTHM | Junctional Rhythm |
| ELECTRONIC ATRIAL PACEMAKER | Electronic Atrial Pacemaker |
| ABERRANT CONDUCTION | Abnormal conduction |
| ELECTRONIC VENTRICULAR PACEMAKER | Electronic ventricular pacemaker |
| T WAVE INVERSION LESS EVIDENT IN | T wave inversion relief |
| ANTEROLATERAL INFARCT | Anterolateral infarction |
| WITH REPOLARIZATION ABNORMALITY | WITH REPOLARIZATION ABNORMALITY |
| RSR' OR QR PATTERN IN V1 SUGGESTS RIGHT VENTRICULAR CONDUCTION DELAY | RSR' or QR waveform in lead V1 suggests right ventricular conduction delay |
| T WAVE INVERSION MORE EVIDENT IN | T wave inversion more obvious |
| WIDE QRS RHYTHM | Wide QRS complex rhythm |
| WITH PREMATURE VENTRICULAR OR ABERRANTLY CONDUCTED COMPLEXES | With premature ventricular contractions or abnormal conduction complexes |
| RIGHT ATRIAL ENLARGEMENT | Right atrial enlargement |
| INFERIOR INFARCT | Inferior wall infarction |
| INCOMPLETE LEFT BUNDLE BRANCH BLOCK | INCOMPLETE LEFT BUNDLE BRANCH BLOCK |
| VOLTAGE CRITERIA FOR LEFT VENTRICULAR HYPERTROPHY | Voltage criteria for left ventricular hypertrophy |
| OR DIGITALIS EFFECT | OR DIGITALIS EFFECT |
| BIFASCICULAR BLOCK | Bifascicular block |
| ST NO LONGER ELEVATED IN | ST segment elevation has disappeared |
| WITH SLOW VENTRICULAR RESPONSE | WITH SLOW VENTRICULAR RESPONSE |
| ST ELEVATION NOW PRESENT IN | ST segment elevation is currently occurring |
| PREMATURE ECTOPIC COMPLEXES | Early ectopic complexes |
| LEFT POSTERIOR FASCICULAR BLOCK | LEFT POSTERIOR FASCICULAR BLOCK |
| T WAVE AMPLITUDE HAS DECREASED IN | T wave amplitude reduced |
| WITH A COMPETING JUNCTIONAL PACEMAKER | WITH COMPETING JUNCTIONAL PACEMAKER |
| RIGHT SUPERIOR AXIS DEVIATION | Upper right axis offset |
| BIATRIAL ENLARGEMENT | Biatrial enlargement |
| VENTRICULAR-PACED RHYTHM | Ventricular-paced rhythm |
| ATRIAL-PACED RHYTHM | Atrial-paced rhythm |
| T WAVE AMPLITUDE HAS INCREASED IN | T wave amplitude increased |
| WITH QRS WIDENING | With QRS complex widening |
| WITH 1ST DEGREE AV BLOCK | WITH 1ST DEGREE AV BLOCK |
| PROLONGED QT | QT interval prolongation |
| WITH PROLONGED AV CONDUCTION | WITH AV CONDUCTION DELAY |
| RIGHT VENTRICULAR HYPERTROPHY | Right ventricular hypertrophy |
| WITH QRS WIDENING AND REPOLARIZATION ABNORMALITY | With QRS complex widening and repolarization abnormalities |
| ATRIAL-SENSED VENTRICULAR-PACED RHYTHM | ATRIAL-SENSED VENTRICULAR-PACED RHYTHM |
| AV SEQUENTIAL OR DUAL CHAMBER ELECTRONIC PACEMAKER | AV SEQUENTIAL OR DUAL CHAMBER ELECTRONIC PACEMAKER |
| PULMONARY DISEASE PATTERN | Pulmonary electrocardiogram |
| ACUTE MI / STEMI | Acute myocardial infarction / ST-segment elevation myocardial infarction |
| INFERIOR-POSTERIOR INFARCT | Inferior posterior wall infarction |
| NONSPECIFIC INTRAVENTRICULAR CONDUCTION DELAY | Nonspecific intraventricular conduction delay |
| PREMATURE VENTRICULAR AND FUSION COMPLEXES | Premature ventricular contractions and fusion waves |
| IN A PATTERN OF BIGEMINY | Bigeminy pattern |
| AV DUAL-PACED RHYTHM | Dual-chamber pacing rhythm |
| SUPRAVENTRICULAR TACHYCARDIA | SUPRAVENTRICULAR TACHYCARDIA |
| VENTRICULAR-PACED COMPLEXES | Ventricular-paced complexes |
| WIDE QRS TACHYCARDIA | WIDE QRS TACHYCARDIA |
| RSR' PATTERN IN V1 | V1 lead RSR' waveform |
| ST LESS DEPRESSED IN | ST segment depression reduced |
| VENTRICULAR TACHYCARDIA | Ventricular tachycardia |
| EARLY REPOLARIZATION | EARLY REPOLARIZATION |
| ST MORE DEPRESSED IN | ST segment depression worsens |
| ANTEROLATERAL LEADS | Anterolateral leads |
| ELECTRONIC DEMAND PACING | Electronic demand pacing |
| RBBB AND LEFT ANTERIOR FASCICULAR BLOCK | Right bundle branch block with left anterior fascicular block |
| LATERAL INJURY PATTERN | Side wall injury pattern |
| BIVENTRICULAR PACEMAKER DETECTED | Biventricular pacemaker detected |
| SUSPECT UNSPECIFIED PACEMAKER FAILURE | Suspected unspecified pacemaker dysfunction |
| WOLFF-PARKINSON-WHITE | Pre-excitation syndrome (Wolff-Parkinson-White syndrome) |
| WITH VENTRICULAR ESCAPE COMPLEXES | WITH VENTRICULAR Escape Complexes |
| INFERIOR INJURY PATTERN | Inferior wall injury pattern |
| CONSIDER RIGHT VENTRICULAR INVOLVEMENT IN ACUTE INFERIOR INFARCT | Acute inferior wall myocardial infarction with possible right ventricular involvement |
| ST ELEVATION HAS REPLACED ST DEPRESSION IN | ST segment elevation replaces ST segment depression |
| NONSPECIFIC INTRAVENTRICULAR BLOCK | Nonspecific intraventricular block |
| MASKED BY FASCICULAR BLOCK | Masked by branch block |
| PEDIATRIC ECG ANALYSIS | Pediatric ECG Analysis |
| BLOCKED | BLOCKED |
| WITH UNDETERMINED RHYTHM IRREGULARITY | WITH UNDETERMINED RHYTHM IRREGULARITY |
| LEFTWARD AXIS | Left eccentric axis |
| WITH 2ND DEGREE SA BLOCK MOBITZ I | With second degree sinoatrial block Mobitz type I |
| ACUTE | Acute |
| ABNORMAL LEFT AXIS DEVIATION | Abnormal left axis deviation |
| WITH COMPLETE HEART BLOCK | WITH COMPLETE AV BLOCK |
| NO P-WAVES FOUND | No P-waves detected |
| ST LESS ELEVATED IN | ST segment elevation reduced |
| WITH RETROGRADE CONDUCTION | WITH RETROGRADE CONDUCTION |
| ST MORE ELEVATED IN | ST segment elevation worsens |
| JUNCTIONAL BRADYCARDIA | Junctional bradycardia |
| WITH VARIABLE AV BLOCK | WITH VARIABLE AV BLOCK |
| ANTERIOR INJURY PATTERN | Anterior wall injury pattern |
| WITH JUNCTIONAL ESCAPE COMPLEXES | WITH JUNCTIONAL Escape Complexes |
| ACUTE MI | Acute myocardial infarction |
| ACUTE PERICARDITIS | Acute pericarditis |
| POSTERIOR INFARCT | Posterior wall infarction |
| IDIOVENTRICULAR RHYTHM | Idiopathic ventricular rhythm |
| WITH 2ND DEGREE SA BLOCK MOBITZ II | WITH 2ND DEGREE SA BLOCK Mobitz type II |
| R IN AVL | AVL lead R wave |
| SINUS/ATRIAL CAPTURE | Sinus/Atrial Capture |
| AV DUAL-PACED COMPLEXES | Dual-chamber pacing complexes |
| INFEROLATERAL INJURY PATTERN | Inferolateral injury pattern |
| RBBB AND LEFT POSTERIOR FASCICULAR BLOCK | Right bundle branch block with left posterior fascicular block |
| ANTEROLATERAL INJURY PATTERN | Anterolateral injury pattern |
| ATRIAL-PACED COMPLEXES | Atrial-paced complexes |
| WITH SINUS PAUSE | WITH SINUS PAUSE |
| BIVENTRICULAR HYPERTROPHY | Biventricular hypertrophy |
| ABNORMAL RIGHT AXIS DEVIATION | Abnormal right axis deviation |
| SUPRAVENTRICULAR COMPLEXES | SUPRAVENTRICULAR COMPLEXES |
| WITH 2ND DEGREE AV BLOCK MOBITZ I | WITH 2nd degree atrioventricular block Mobitz type I |
| WITH 2:1 AV CONDUCTION | WITH 2:1 AV CONDUCTION |
| WITH AV DISSOCIATION | WITH AV DISSOCIATION |
| MULTIFOCAL ATRIAL TACHYCARDIA | MULTIFOCAL ATRIAL TACHYCARDIA |
Literature
@article{li2025electrocardiogram,
title={An Electrocardiogram Foundation Model Built on over 10 Million Recordings},
author={Li, Jun and Aguirre, Aaron D and Junior, Valdery Moura and Jin, Jiarui and Liu, Che and Zhong, Lanhai and Sun, Chenxi and Clifford, Gari and Brandon Westover, M and Hong, Shenda},
journal={NEJM AI},
volume={2},
number={7},
pages={AIoa2401033},
year={2025},
publisher={Massachusetts Medical Society}
}
Li, J., Aguirre, A., Moura, J., Liu, C., Zhong, L., Sun, C., ... & Hong, S. (2024). An electrocardiogram foundation model built on over 10 million recordings with external evaluation across multiple domains. arXiv preprint arXiv:2410.04133.