martinkropf commited on
Commit
1212b6a
1 Parent(s): fdf5b60

Upload 10 files

Browse files
.gitattributes CHANGED
@@ -33,3 +33,4 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
 
 
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
36
+ example_video.avi filter=lfs diff=lfs merge=lfs -text
README.md CHANGED
@@ -1,12 +1,28 @@
1
- ---
2
- title: Mkaichristensen Echo Clip
3
- emoji: 🐨
4
- colorFrom: yellow
5
- colorTo: yellow
6
- sdk: gradio
7
- sdk_version: 4.4.0
8
- app_file: app.py
9
- pinned: false
10
- ---
11
-
12
- Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # EchoCLIP: A Multimodal Foundation Model For Echocardiography
2
+
3
+ EchoCLIP is a multimodal foundation model for echocardiography. It is finetuned from CLIP weights on a dataset of >1M pairs of echocardiogram images and their associated expert interpretation text. It can be used for semantic search amongst echo videos as well as zero-shot prediction on a wide range of clinically relevant tasks. For more details, see our paper:
4
+
5
+ (link will be added once preprint is released)
6
+ <!-- [Multimodal Foundation Models For Echocardiogram Interpretation](https://arxiv.org/abs/) -->
7
+
8
+ ## Quickstart
9
+
10
+ This repo contains example code for loading and using EchoCLIP and its long-context variant, EchoCLIP-R. To get started, clone this repo and navigate into it. Then, create a new `conda` environment and install the required packages:
11
+
12
+ ```
13
+ git clone https://github.com/echonet/echo_CLIP
14
+ cd echo_CLIP
15
+ conda env create -n echo-clip
16
+ conda activate echo-clip
17
+ python -m pip install -r requirements.txt
18
+ ```
19
+ You should now be able to run `embedding_example.py` and `zero_shot_example.py`.
20
+
21
+ ## Repo contents
22
+
23
+ * `embedding_example.py` demonstrates how to load EchoCLIP-R's weights and use them to calculate the similarity between an example echocardiogram and example report text.
24
+ * `zero_shot_example.py` demonstrates how to load EchoCLIP's weights and use them to perform zero-shot pacemaker identification and zero-shot ejection fraction prediction.
25
+ * `utils.py` contains implementations of our methods for performing zero-shot binary classification and zero-shot regression. The functions used in `zero_shot_example.py` are defined in this file. The prompts we use for the zero-shot tasks in our paper are all available here. Additionally, this file contains regexes for cleaning and preparing report text before it is tokenized.
26
+ * `template_tokenizer.py` contains the implementation of our custom echocardiography report tokenizer, which is designed to compress Cedars-Sinai echo reports into a small number of tokens.
27
+ * `template_vocab.txt` contains a vocabulary of 770 words and phrases constructed from the template file our cardiologists use to create their reports. This vocabulary is used by our template tokenizer to efficiently tokenize long reports.
28
+ * `blank_wordpiece.tokenizer` is a default config file for initializing a WordPiece tokenizer using HuggingFace's `tokenizers` library. We use it to initialize our custom tokenizer.
blank_wordpiece.tokenizer ADDED
@@ -0,0 +1,69 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "version": "1.0",
3
+ "truncation": null,
4
+ "padding": null,
5
+ "added_tokens": [
6
+ {
7
+ "id": 0,
8
+ "content": "[UNK]",
9
+ "single_word": false,
10
+ "lstrip": false,
11
+ "rstrip": false,
12
+ "normalized": false,
13
+ "special": true
14
+ },
15
+ {
16
+ "id": 1,
17
+ "content": "[CLS]",
18
+ "single_word": false,
19
+ "lstrip": false,
20
+ "rstrip": false,
21
+ "normalized": false,
22
+ "special": true
23
+ },
24
+ {
25
+ "id": 2,
26
+ "content": "[SEP]",
27
+ "single_word": false,
28
+ "lstrip": false,
29
+ "rstrip": false,
30
+ "normalized": false,
31
+ "special": true
32
+ },
33
+ {
34
+ "id": 3,
35
+ "content": "[PAD]",
36
+ "single_word": false,
37
+ "lstrip": false,
38
+ "rstrip": false,
39
+ "normalized": false,
40
+ "special": true
41
+ },
42
+ {
43
+ "id": 4,
44
+ "content": "[MASK]",
45
+ "single_word": false,
46
+ "lstrip": false,
47
+ "rstrip": false,
48
+ "normalized": false,
49
+ "special": true
50
+ }
51
+ ],
52
+ "normalizer": null,
53
+ "pre_tokenizer": null,
54
+ "post_processor": null,
55
+ "decoder": null,
56
+ "model": {
57
+ "type": "WordPiece",
58
+ "unk_token": "[UNK]",
59
+ "continuing_subword_prefix": "##",
60
+ "max_input_chars_per_word": 500,
61
+ "vocab": {
62
+ "[UNK]": 0,
63
+ "[CLS]": 1,
64
+ "[SEP]": 2,
65
+ "[PAD]": 3,
66
+ "[MASK]": 4
67
+ }
68
+ }
69
+ }
embedding_example.py ADDED
@@ -0,0 +1,58 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from open_clip import create_model_and_transforms
2
+ from template_tokenizer import template_tokenize
3
+ import torchvision.transforms as T
4
+ import torch
5
+ import torch.nn.functional as F
6
+ from utils import read_avi
7
+
8
+ # You'll need to log in to the HuggingFace hub CLI to download the models
9
+ # You can do this with the terminal command "huggingface-cli login"
10
+ # You'll be asked to paste your HuggingFace API token, which you can find at https://huggingface.co/settings/token
11
+
12
+ # Use EchoCLIP-R for retrieval-based tasks where you want to find
13
+ # the similarity between two echos, like in patient identification or
14
+ # echo report retrieval. It has a longer context window because it
15
+ # uses the template tokenizer, which we found increases its retrieval
16
+ # performance but decreases its performance on other zero-shot tasks.
17
+ echo_clip_r, _, preprocess_val = create_model_and_transforms(
18
+ "hf-hub:mkaichristensen/echo-clip-r", precision="bf16"
19
+ )
20
+
21
+ # We'll load a sample echo video and preprocess its frames.
22
+ test_video = read_avi(
23
+ "example_video.avi",
24
+ (224, 224),
25
+ )
26
+ test_video = torch.stack(
27
+ [preprocess_val(T.ToPILImage()(frame)) for frame in test_video], dim=0
28
+ )
29
+ test_video = test_video.cpu()
30
+ test_video = test_video.to(torch.bfloat16)
31
+
32
+ # Be sure to normalize the CLIP embeddings after calculating them to make
33
+ # cosine similarity between embeddings easier to calculate.
34
+ test_video_embedding = F.normalize(echo_clip_r.encode_image(test_video), dim=-1)
35
+
36
+ # To get a single embedding for the entire video, we'll take the mean
37
+ # of the 10 frame embeddings.
38
+ test_video_embedding = test_video_embedding.mean(dim=0, keepdim=True)
39
+
40
+ # We'll now load an excerpt of the report associated with our echo
41
+ # and tokenize it using the template tokenizer.
42
+ with open("example_report.txt", "r") as f:
43
+ test_report = f.read()
44
+
45
+ template_tokens = template_tokenize(test_report)
46
+ template_tokens = torch.tensor(template_tokens, dtype=torch.long).unsqueeze(0).cpu()
47
+ print(template_tokens)
48
+
49
+ # We can then embed the report using EchoCLIP-R.
50
+ test_report_embedding = F.normalize(echo_clip_r.encode_text(template_tokens), dim=-1)
51
+
52
+ print(test_report_embedding.shape)
53
+ print(test_video_embedding.shape)
54
+
55
+ # Since both embeddings are normalized, we can just take the dot product
56
+ # to get the cosine similarity between them.
57
+ similarity = (test_report_embedding @ test_video_embedding.T).squeeze(0)
58
+ print(similarity.item())
example_report.txt ADDED
@@ -0,0 +1 @@
 
 
1
+ A BIOPROSTHETIC STENT-VALVE IS PRESENT IN THE AORTIC POSITION. THERE IS TRACE PARAVALVULAR AORTIC REGURGITATION. THE PEAK TRANSAORTIC GRADIENT IS 20.0MMHG. THE MEAN TRANSAORTIC GRADIENT IS 12.0MMHG. POST TRANSSEPTAL PROCEDURE ASD WITH LEFT TO RIGHT SHUNTING. THE IVC DIAMETER IS 24MM. THE INFERIOR VENA CAVA DEMONSTRATES LESS THAN 50% COLLAPSE CONSISTENT WITH ELEVATED RIGHT ATRIAL PRESSURE (8MMHG). MILD DILATED LEFT ATRIUM. NORMAL LEFT VENTRICULAR SIZE. SEVERE DEPRESSED LEFT VENTRICULAR SYSTOLIC FUNCTION. LV EJECTION FRACTION IS 20%. MILD LEFT VENTRICULAR HYPERTROPHY. LEFT VENTRICULAR DIASTOLIC FUNCTION IS INDETERMINATE IN THIS STUDY DUE TO THE PRESENCE OF MITRAL VALVE REPAIR OR REPLACEMENT. TWO MITRACLIPS ARE SEEN ON THE ANTERIOR AND POSTERIOR LEAFLETS OF THE MITRAL VALVE. THERE IS MILD MITRAL VALVE REGURGITATION. THE PEAK TRANSMITRAL GRADIENT IS 9.0MMHG. THE MEAN TRANSMITRAL GRADIENT IS 3.0MMHG. NORMAL PERICARDIUM WITH NO PERICARDIAL EFFUSION. NOT WELL VISUALIZED. ESTIMATED PA PRESSURE IS 40.0MMHG. PA SYSTOLIC PRESSURE IS CONSISTENT WITH MILD PULMONARY HYPERTENSION. THE PULMONARY VENOUS FLOW PATTERN IS DIASTOLIC PREDOMINANT, SUGGESTIVE OF ELEVATED LEFT ATRIAL PRESSURE. PULMONIC VALVE NOT WELL VISUALIZED. THERE IS TRIVIAL PULMONIC REGURGITATION. TOTAL WALL MOTION SCORE IS 2.29. THERE IS AKINESIS OF THE ENTIRE INFEROLATERAL WALL. THERE IS AKINESIS OF THE MID TO APICAL INFERIOR WALL. THERE IS AKINESIS OF THE APICAL CAP. THE REMAINING LEFT VENTRICULAR SEGMENTS DEMONSTRATE HYPOKINESIS. RESTING SEGMENTAL WALL MOTION ANALYSIS. MODERATE DILATED RIGHT ATRIUM. NORMAL RIGHT VENTRICULAR SIZE. NORMAL RIGHT VENTRICULAR SYSTOLIC FUNCTION. ECHO DENSITY IN RIGHT VENTRICLE SUGGESTIVE OF CATHETER, PACER LEAD, OR ICD LEAD. NORMAL APPEARANCE OF THE TRICUSPID VALVE. EST RV/RA PRESSURE GRADIENT IS 32.0MMHG. ESTIMATED PEAK RVSP IS 40MMHG. THERE IS MILD TO MODERATE TRICUSPID REGURGITATION. OTHER NONRHEUMATIC MITRAL VALVE DISORDERS OTHER NONRHEUMATIC AORTIC VALVE DISORDERS AORTIC VALVE REPLACEMENT. S/P TAVR. THE STUDY IMAGES ARE OF TECHNICALLY ADEQUATE QUALITY.
example_video.avi ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:b50434d04509bcc6dd080095a8f3021e1f6d92c094a598d6a945f0566cc40ce0
3
+ size 1076668
requirements.txt CHANGED
@@ -1,4 +1,4 @@
1
  open_clip_torch
2
  huggingface_hub
3
  tokenizers
4
- opencv-python-headless
 
1
  open_clip_torch
2
  huggingface_hub
3
  tokenizers
4
+ opencv-python-headless
template_tokenizer.py ADDED
@@ -0,0 +1,127 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # +
2
+ from tokenizers import Tokenizer
3
+ import re
4
+ from utils import extract_variables, clean_text
5
+
6
+ template_tokenizer = Tokenizer.from_file("blank_wordpiece.tokenizer")
7
+ with open(
8
+ "template_vocab.txt",
9
+ "r",
10
+ ) as f:
11
+ template_vocab = [l.rstrip("\n") for l in f.readlines()]
12
+
13
+ template_tokenizer.add_tokens(template_vocab)
14
+
15
+ variable_tokenizer = Tokenizer.from_file("blank_wordpiece.tokenizer")
16
+ variable_vocab = ["[UNK]"]
17
+ variable_vocab.extend([str(i) for i in range(101)])
18
+ variable_vocab.extend(
19
+ ["‡", "MILD", "MODERATE", "SEVERE", "MILD/MODERATE", "MODERATE/SEVERE"]
20
+ )
21
+ variable_vocab.extend(["." + str(i) for i in range(10)])
22
+ variable_vocab.extend(["0" + str(i) for i in range(10)])
23
+ variable_tokenizer.add_tokens(variable_vocab)
24
+
25
+ max_token_id = (
26
+ len(template_tokenizer.get_vocab()) + len(variable_tokenizer.get_vocab()) - 1
27
+ )
28
+ BOS_token_id = max_token_id + 1
29
+ EOS_token_id = max_token_id + 2
30
+
31
+ var_symbol = re.compile(r"<#>")
32
+
33
+ # mapping from ID to number of missing numbers
34
+ var_counts = {}
35
+
36
+ for token, token_id in template_tokenizer.get_vocab().items():
37
+ var_count = len(var_symbol.findall(token))
38
+ var_counts[token_id] = var_count
39
+
40
+ template_vocab_len = len(template_tokenizer.get_vocab())
41
+
42
+ # Some final text cleaning replacements.
43
+ replacements = [
44
+ (
45
+ "THE INFERIOR VENA CAVA IS NORMAL IN SIZE AND SHOWS A NORMAL RESPIRATORY COLLAPSE, CONSISTENT WITH NORMAL RIGHT ATRIAL PRESSURE (<#>MMHG).",
46
+ "THE INFERIOR VENA CAVA SHOWS A NORMAL RESPIRATORY COLLAPSE CONSISTENT WITH NORMAL RIGHT ATRIAL PRESSURE (<#>MMHG).",
47
+ ),
48
+ (
49
+ "RESTING SEGMENTAL WALL MOTION ANALYSIS.:",
50
+ "RESTING SEGMENTAL WALL MOTION ANALYSIS.",
51
+ ),
52
+ ]
53
+
54
+
55
+ def simple_replacement(text):
56
+ for r in replacements:
57
+ text = text.replace(r[0], r[1])
58
+ return text
59
+
60
+
61
+ def pad_or_trunc(tokens, length):
62
+ if len(tokens) > length:
63
+ eos_token = max(tokens)
64
+ tokens = tokens[:length]
65
+ tokens[-1] = eos_token
66
+ else:
67
+ tokens = tokens + [0] * (length - len(tokens))
68
+ return tokens
69
+
70
+
71
+ def template_tokenize(report):
72
+ report = clean_text(report)
73
+
74
+ # The "variables" (numbers, severity words) are removed from the report
75
+ # and returned in a list. The report text has all variables replaced
76
+ # with a placeholder symbol: <#>
77
+ # The template tokenizer's vocabulary is made up of phrases with this
78
+ # placeholder symbol.
79
+ variables, report = extract_variables(report)
80
+ report = simple_replacement(report)
81
+ toks = template_tokenizer.encode(report)
82
+
83
+ # Now we have a list of tokenized phrases, some of which had variables
84
+ # extracted from them, and some of which didn't.
85
+ var_mask = []
86
+ unk = []
87
+ for (start, end), tok, tok_id in zip(toks.offsets, toks.tokens, toks.ids):
88
+ if not tok == "[UNK]":
89
+ var_mask.extend([True] * var_counts[tok_id])
90
+ else:
91
+ source = report[start:end]
92
+ unk.append((source, start))
93
+ var_count = len(var_symbol.findall(source))
94
+ var_mask.extend([False] * var_count)
95
+
96
+ tok_ids = [t for t in toks.ids if not t == 0]
97
+ matched_vars = [v for v, mask in zip(variables, var_mask) if mask]
98
+
99
+ new_tok_ids = []
100
+ for tok_id in tok_ids:
101
+ var_count = var_counts[tok_id]
102
+ recognized_vars = []
103
+ for _ in range(var_count):
104
+ recognized_vars.append(matched_vars.pop(0))
105
+
106
+ # variables are joined with this weird char before being
107
+ # tokenized so that the model can tell where one variable
108
+ # ends and another begins
109
+ var_string = "‡".join(recognized_vars)
110
+ var_toks = variable_tokenizer.encode(var_string).ids
111
+ var_toks = [v + template_vocab_len for v in var_toks]
112
+ new_tok_ids.extend([tok_id, *var_toks])
113
+
114
+ new_tok_ids = [BOS_token_id, *new_tok_ids, EOS_token_id]
115
+ return pad_or_trunc(new_tok_ids, 77)
116
+
117
+
118
+ template_detokenizer = {k: f"[{v}]" for v, k in template_tokenizer.get_vocab().items()}
119
+
120
+ for k, v in variable_tokenizer.get_vocab().items():
121
+ template_detokenizer[v + template_vocab_len] = f"<{k}>"
122
+ template_detokenizer[max_token_id + 1] = "[BOS]"
123
+ template_detokenizer[max_token_id + 2] = "[EOS]"
124
+
125
+
126
+ def template_detokenize(ids):
127
+ return [template_detokenizer[i] for i in ids]
template_vocab.txt ADDED
@@ -0,0 +1,770 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ A LEFT VENTRICULAR ASSIST DEVICE INFLOW CANNULA IS SEEN IN THE LEFT VENTRICULAR APEX ORIENTED TOWARDS THE MITRAL VALVE AND THE INTERVENTRICULAR SEPTUM IS NEUTRAL, CONSISTENT WITH A NORMAL LVAD FUNCTION. COLOR AND PULSE DOPPLER INTERROGATION OF THE LVAD CANNULA DEMONSTRATE NORMAL LAMINAR FLOW.
2
+ AN IMPELLA CATHETER IS SEEN AND THE INLET AREA IS <#>CM FROM THE AORTIC VALVE AND DOES NOT INTERFERE WITH NEIGHBORING STRUCTURES, CONSISTENT WITH CORRECT IMPELLA POSITIONING. THERE IS DENSE TURBULENT COLOR FLOW ABOVE THE AORTIC VALVE, CONSISTENT WITH CORRECT OUTFLOW AREA POSITION
3
+ A LEFT VENTRICULAR ASSIST DEVICE INFLOW CANNULA IS SEEN IN THE LEFT VENTRICULAR APEX AND THE LV APPEARS DISTENDED. COLOR AND PULSE DOPPLER INTERROGATION OF THE LVAD CANNULA REVEALS TURBULENT FLOW AND THERE IS REGURGITATION FLOW, CONSISTENT WITH ABNORMAL LVAD FUNCTION.
4
+ A BILEAFLET TILTING DISK MECHANICAL PROSTHETIC VALVE IS PRESENT IN THE MITRAL POSITION. THE VALVE IS WELL SEATED WITH NORMAL DISK MOTION. THERE IS TRACE PHYSIOLOGIC MITRAL REGURGITATION. THERE IS NO PERIVALVULAR REGURGITATION.
5
+ <#> - <#>D RENDERING WITH INTERPRETATION AND REPORTING OF COMPUTED TOMOGRAPHY, MAGNETIC RESONANCE IMAGING, ULTRASOUND, OR OTHER TOMOGRAPHIC MODALITY; NOT REQUIRING IMAGE POST-PROCESSING ON AN INDEPENDENT WORKSTATION.
6
+ THERE IS A BIOPROSTHETIC VALVE IN THE PULMONIC POSITION. THE VALVE LEAFLETS APPEAR THICKENED WITH DIMINISHED LEAFLET MOTION. TRANSPULMONARY GRADIENT IS ELEVATED, INDICATING PROSTHETIC PULMONARY VALVE STENOSIS.
7
+ A LEFT VENTRICULAR ASSIST DEVICE INFLOW CANNULA IS SEEN IN THE LEFT VENTRICULAR APEX AND THE INTERVENTRICULAR SEPTUM IS SHIFTED LEFTWARD, SUGGESTING HYPOVOLEMIA, EXCESSIVE DECOMPRESSION OR RV DYSFUNCTION.
8
+ A BIOPROSTHETIC STENT-VALVE IS PRESENT IN THE AORTIC POSITION. THE VALVE IS WELL SEATED WITH NORMAL LEAFLET MOTION. THERE IS NO SIGNIFICANT AORTIC REGURGITATION AND TRIVIAL PERIVALVULAR REGURGITATION.
9
+ THERE IS A BIO PROSTHETIC VALVE IN THE TRICUSPID POSITION. THE VALVE LEAFLETS APPEAR THICKENED WITH DECREASED MOTION. TRANSTRICUSPID GRADIENT APPEARS ELEVATED, CONSISTENT WITH A STENOTIC VALVE.
10
+ A BILEAFLET TILTING DISK MECHANICAL PROSTHETIC VALVE IS PRESENT IN THE AORTIC POSITION. THE VALVE IS WELL SEATED WITH NORMAL LEAFLET MOTION. THERE IS NO VALVULAR OR PERIVALVULAR REGURGITATION.
11
+ THE OUTFLOW GRAFT-TO-ASCENDING AORTA ANASTOMOSIS IS INSERTED IN THE NORMAL POSITION OF THE ASCENDING AORTA. COLOR-FLOW DOPPLER PROFILE OF THE OUTFLOW CANNULA DEMONSTRATED NORMAL LAMINAR FLOW.
12
+ AN IMPELLA CATHETER IS SEEN ACROSS THE AORTIC VALVE AND IS TOO CLOSE TO OR ENTANGLED IN THE PAPILLARY MUSCLE AND SUBANNULAR STRUCTURES SURROUNDING THE MITRAL VALVE; REPOSITIONING RECOMMENDED.
13
+ A BIOPROSTHETIC STENT-VALVE IS PRESENT IN THE PULMONIC POSITION. THE VALVE APPEARS WELL SEATED WITH NORMAL LEAFLET MOTION. THERE IS NO SIGNIFICANT VALVULAR OR PERIVALVULAR REGURGITATION.
14
+ THERE ARE NUMEROUS PROMINENT TRABECULATIONS AND DEEP INTERTRABECULAR RECESSES, CONSISTANT WITH NON-COMPACTION CARDIOMYOPATHY. THE RATIO OF THICK NON-COMPACTED LAYER TO THIN COMPACTED IS
15
+ A LEFT VENTRICULAR ASSIST DEVICE INFLOW CANNULA IS SEEN IN THE LEFT VENTRICULAR APEX AND THE INTERVENTRICULAR SEPTUM IS SHIFTED RIGHTWARD, SUGGESTING LVAD OBSTRUCTION OR MALFUNCTION.
16
+ A BIOPROSTHETIC VALVE IS PRESENT IN THE PULMONIC POSITION. THE VALVE APPEARS WELL SEATED WITH NORMAL LEAFLET MOTION. THERE IS NO SIGNIFICANT VALVULAR OR PERIVALVULAR REGURGITATION.
17
+ BASED ON SIDE BY SIDE COMPARISON, THERE ARE NO SIGNIFICANT CHANGES COMPARED TO THE PRIOR STUDY. THE DIFFERENCES IN REPORTS ARE DUE TO SUBJECTIVE DIFFERENCES IN INTERPRETATION.
18
+ <#> DIASTOLIC DYSFUNCTION. FEATURES ARE CONSISTENT WITH A PSEUDONORMAL LEFT VENTRICULAR FILLING PATTERN, WITH CONCOMITANT ABNORMAL RELAXATION AND INCREASED FILLING PRESSURE.
19
+ DOPPLER FINDINGS SUGGEST <#> MITRAL REGURGITATION, HOWEVER THE NORMAL LEFT VENTRICULAR SIZE IN NOT CONSISTENT WITH CHRONIC <#> MITRAL REGURGITATION AND LV VOLUME OVERLOAD.
20
+ THERE IS <#> DEPRESSED RV SYSTOLIC FUNCTION IN A PATTERN THAT SPARES THE RV APEX (MCCONNELL'S SIGN), A FINDING THAT SUGGESTS ACUTE RIGHT VENTRICULAR PRESSURE OVERLOAD.
21
+ <#> - MYOCARDIAL STRAIN IMAGING USING SPECKLE TRACKING-DERIVED ASSESSMENT OF MYOCARDIAL MECHANICS (LIST SEPARATELY IN ADDITION TO CODES FOR ECHOCARDIOGRAPHY IMAGING).
22
+ A BIOPROSTHETIC VALVE IS PRESENT IN THE TRICUSPID POSITION. THE VALVE IS WELL SEATED WITH NORMAL LEAFLET MOTION. THERE IS NO VALVULAR OR PERIVALVULAR REGURGITATION.
23
+ <#> DIASTOLIC DYSFUNCTION. TISSUE DOPPLER/MITRAL DOPPLER INDICES ARE CONSISTENT WITH RESTRICTIVE PHYSIOLOGY WITH MARKEDLY ELEVATED LEFT ATRIAL PRESSURES AT REST.
24
+ A BIOPROSTHETIC VALVE IS PRESENT IN THE AORTIC POSITION. THE VALVE IS WELL SEATED WITH NORMAL LEAFLET MOTION. THERE IS NO VALVULAR OR PERIVALVULAR REGURGITATION.
25
+ A BIOPROSTHETIC VALVE IS PRESENT IN THE MITRAL POSITION. THE VALVE IS WELL SEATED WITH NORMAL LEAFLET MOTION. THERE IS NO VALVULAR OR PERIVALVULAR REGURGITATION.
26
+ THERE IS A BIOPROSTHETIC STENT-VALVE IN THE PULMONIC POSITION. THE VALVE APPEARS WELL SEATED WITH NORMAL LEAFLET MOTION. TRANSPULMONARY GRADIENT IS NORMAL.
27
+ A LEFT VENTRICULAR ASSIST DEVICE INFLOW CANNULA IS SEEN IN THE LEFT VENTRICULAR DIRECTED TOWARDS THE VENTRICULAR SEPTUM, SUGGESTING ABNORMAL POSITIONING.
28
+ THERE IS FOCAL APICAL ANEURYSMS WITH EXCESSIVE TRABECULATIONS AND A REFLECTIVE MODERATOR BAND, SUSPICIOUS FOR ARRYTHMOGENIC RIGHT VENTRICULAR DYSPLASIA.
29
+ THE AORTIC PROSTHESIS DEMONSTRATES A <#> INCREASED TRANSVALVULAR GRADIENT FOR VALVE TYPE AND SIZE. THIS IS SUGGESTIVE OF <#> PROSTHETIC AORTIC STENOSIS.
30
+ THE MITRAL PROSTHESIS DEMONSTRATES A <#> INCREASED TRANSVALVULAR GRADIENT FOR VALVE TYPE AND SIZE. THIS IS SUGGESTIVE OF <#> PROSTHETIC MITRAL STENOSIS.
31
+ DUE TO TACHYCARDIA, THERE IS FUSION OF EARLY AND ATRIAL CONTRIBUTIONS TO LEFT VENTRICULAR FILLING. LEFT VENTRICULAR DIASTOLIC FUNCTION IS INDETERMINATE.
32
+ COLOR-FLOW DOPPLER PROFILE OF THE OUTFLOW CANNULA DEMONSTRATED HIGH VELOCITY FLOW AND THERE IS REGURTITANT FLOW, SUGGESTING ABNORMAL CANNULA FUNCTION.
33
+ <#> DIASTOLIC DYSFUNCTION. THERE IS REVERSAL OF THE E TO A RATIO AND PROLONGED DECELERATION TIME CONSISTENT WITH IMPAIRED LEFT VENTRICULAR RELAXATION.
34
+ THERE IS A BIOPROSTHETIC VALVE IN THE PULMONIC POSITION. THE VALVE APPEARS WELL SEATED WITH NORMAL LEAFLET MOTION. TRANSPULMONARY GRADIENT IS NORMAL.
35
+ THE PROXIMAL ISOVELOCITY SURFACE AREA (PISA) DERIVED EFFECTIVE REGURGITANT ORIFICE ARE IS GREATER THAN <#>CM<#>, INDICATING <#> MITRAL REGURGITATION.
36
+ A LEFT ATRIAL APPENDAGE OCCLUDER DEVICE IS PRESENT. THE DEVICE IS WELL SEATED WITH NO EVIDENCE OF COLOR FLOW INTO THE APPENDAGE AND NO THROMBUS SEEN.
37
+ THERE IS FLATTENING OF THE INTERVENTRICULAR SEPTUM IN BOTH SYSTOLE AND DIASTOLE, CONSISTENT WITH RIGHT VENTRICULAR PRESSURE AND VOLUME OVERLOAD.
38
+ TWO MITRACLIPS ARE PRESENT CONNECTING THE A<#> AND P<#> SEGMENTS OF THE ANTERIOR AND POSTERIOR MITRAL LEAFLETS. THE MEAN GRADIENT ISMMHG AT BPM.
39
+ ONE MITRACLIPS IS PRESENT CONNECTING THE A<#> AND P<#> SEGMENTS OF THE ANTERIOR AND POSTERIOR MITRAL LEAFLETS. THE MEAN GRADIENT ISMMHG AT BPM.
40
+ DOPPLER PARAMETERS AND LATERAL MITRAL ANNULAR (E') VELOCITIES ARE CONSISTENT WITH SIGNIFICANTLY ELEVATED LEFT VENTRICULAR FILLING PRESSURES.
41
+ STATUS POST ROSS PROCEDURE - A PULMONARY VALVE AUTOGRAFT IS PRESENT IN THE AORTIC POSITION. THERE IS <#> RESIDUAL AORTIC REGURGITATION.
42
+ AN IMPELLA CATHETER IS SEEN, HOWEVER THE INLET AREA APPEARS TO BE IN THE AORTA OR NEAR THE AORTIC VALVE; REPOSITIONING IS RECOMMENDED.
43
+ THE INFERIOR VENA CAVA DEMONSTRATES NO INSPIRATORY COLLAPSE, CONSISTENT WITH SIGNIFICANTLY ELEVATED RIGHT ATRIAL PRESSURE (><#>MMHG).
44
+ REPEAT ECHO WITH CONTRAST AGENT TO DELINEATE ENDOCARDIAL BORDER DEFINITION AND ASSESS LEFT VENTRICULAR FUNCTION AND WALL MOTION.
45
+ AGITATED SALINE BUBBLE STUDY DEMONSTRATES A NEGATIVE CONTRAST EFFECT IN THE RIGHT ATRIUM, SUGGESTIVE OF LEFT-TO-RIGHT SHUNTING.
46
+ DOPPLER PARAMETERS AND LATERAL MITRAL ANNULAR (E') VELOCITIES ARE CONSISTENT WITH ELEVATED LEFT VENTRICULAR FILLING PRESSURES.
47
+ LEFT VENTRICULAR DIASTOLIC FUNCTION IS INDETERMINATE IN THIS STUDY DUE TO THE PRESENCE OF MITRAL VALVE REPAIR OR REPLACEMENT.
48
+ DOPPLER PARAMETERS AND LATERAL MITRAL ANNULAR (E') VELOCITIES ARE CONSISTENT WITH NORMAL LEFT VENTRICULAR FILLING PRESSURES.
49
+ LEFT VENTRICULAR DIASTOLIC FUNCTION IS INDETERMINATE IN THIS STUDY DUE TO THE PRESENCE OF <#> MITRAL ANNULAR CALCIFICATION.
50
+ AN IMPELLA CATHETER IS SEEN ACROSS THE AORTIC VALVE AND EXTENDS TOO FAR INTO THE LEFT VENTRICLE; REPOSITIONING RECOMMENDED
51
+ THERE IS A MOBILE ECHO DENSITY ON THE RIGHT CORONARY CUSP OF THE AORTIC VALVE CONSISTENT WITH AN AORTIC VALVE VEGETATION.
52
+ THERE IS EVIDENCE OF SYSTOLIC BOWING OF THE MITRAL VALVE LEAFLETS, WITHOUT DIAGNOSTIC EVIDENCE FOR MITRAL VALVE PROLAPSE.
53
+ TRANSAORTIC GRADIENT MAY BE UNDERESTIMATED DUE TO LOW STROKE VOLUME SECONDARY TO POOR LEFT VENTRICULAR SYSTOLIC FUNCTION.
54
+ SALINE CONTRAST IS USED TO ENHANCE TRICUSPID REGURGITATION DOPPLER SIGNAL TO EVALUATE PA SYSTOLIC OR DIASTOLIC PRESSURE.
55
+ THERE IS A MOBILE ECHO DENSITY ON THE LEFT CORONARY CUSP OF THE AORTIC VALVE CONSISTENT WITH AN AORTIC VALVE VEGETATION.
56
+ DOPPLER INTERROGATION OF THE PULMONARY VEINS DEMONSTRATES HIGH FLOW VELOCITIES, CONSISTENT WITH PULMONARY VEIN STENOSIS.
57
+ THERE IS A MOBILE ECHO DENSITY ON THE NON-CORONARY CUSP OF THE AORTIC VALVE CONSISTENT WITH AN AORTIC VALVE VEGETATION.
58
+ THE VENA CONTRACTA OF THE MITRAL REGURGITATION JET IS GREATER THAN <#>MM IN SIZE, INDICATING <#> MITRAL REGURGITATION.
59
+ LEFT VENTRICULAR DIASTOLIC FUNCTION COULD NOT BE ASSESSED DUE TO THE PRESENCE OF ATRIAL FIBRILLATION DURING THE STUDY.
60
+ THERE IS <#> THICKENING, SHORTENING, AND RETRACTION OF THE TRICUSPID LEAFLETS CONSISTENT WITH CARCINOID HEART DISEASE.
61
+ THERE IS DOPPLER EVIDENCE OF SYSTOLIC FLOW REVERSAL INTO THE PULMONARY VEINS, SUGGESTIVE OF <#> MITRAL REGURGITATION.
62
+ THE INFERIOR VENA CAVA DEMONSTRATES LESS THAN <#>% COLLAPSE CONSISTENT WITH ELEVATED RIGHT ATRIAL PRESSURE (<#>MMHG).
63
+ SUGGEST TEE FOR FURTHER EVALUATION OF POSSIBLE LEFT ATRIAL OR LEFT ATRIAL APPENDAGE THROMBUS IF CLINICALLY INDICATED.
64
+ TRANSAORTIC GRADIENT MAY BE UNDERESTIMATED DUE TO LOW STROKE VOLUME SECONDARY TO SMALL LEFT VENTRICULAR CAVITY SIZE.
65
+ CANNOT EXCLUDE LEFT VENTRICULAR APICAL MURAL THROMBUS. RECOMMEND REPEAT STUDY WITH LEFT VENTRICULAR CONTRAST AGENT.
66
+ THERE IS FLATTENING OF THE INTERVENTRICULAR SEPTUM IN DIASTOLE, CONSISTENT WITH RIGHT VENTRICULAR VOLUME OVERLOAD.
67
+ THE INFERIOR VENA CAVA SHOWS A NORMAL RESPIRATORY COLLAPSE CONSISTENT WITH NORMAL RIGHT ATRIAL PRESSURE (<#>MMHG).
68
+ THERE IS HOLODIASTOLIC FLOW REVERSAL IN THE DESCENDING AORTA, WHICH SUGGESTS <#> AORTIC REGURGITATION IS PRESENT.
69
+ THE LEFT VENTRICULAR EJECTION FRACTION COULD NOT BE PRECISELY ASSESSED DUE TO POOR ENDOCARDIAL BORDER DEFINITION.
70
+ PULMONARY VEINS ARE NORMAL IN APPEARANCE AND PULSE DOPPLER INTERROGATION SHOWS NORMAL SYSTOLIC PREDOMINANT FLOW.
71
+ THERE IS HYPERTROPHY CONFINED TO THE LEFT VENTRICULAR APEX, CONSISTENT WITH APICAL HYPERTROPHIC CARDIOMYOPATHY.
72
+ REVERSED INTERVENTRICULAR SEPTAL MOTION IS SEEN AND IS A COMMON FINDING IN THE POST OPEN HEART SURGERY PATIENT.
73
+ THERE ARE MOBILE ECHO DENSITIES ON MULTIPLE CUSPS OF THE AORTIC VALVE CONSISTENT WITH AORTIC VALVE VEGETATIONS.
74
+ THERE IS A BIOPROSTHETIC VALVE IN THE TRICUSPID POSITION. THE VALVE IS WELL SEATED WITH NORMAL LEAFLET MOTION.
75
+ THERE IS A MOBILE ECHO DENSITY ON A LEAFLET OF THE TRICUSPID VALVE CONSISTENT WITH TRICUSPID VALVE VEGETATION.
76
+ THERE IS A MOBILE ECHO DENSITY ON LEAFLETS OF THE TRICUSPID VALVE CONSISTENT WITH TRICUSPID VALVE VEGETATION.
77
+ THE MITRAL REGURGITATION JET FILLS GREATER THAN <#>% OF THE LEFT ATRIUM, INDICATING <#> MITRAL REGURGITATION.
78
+ THERE IS DOMING OF THE ANTERIOR LEAFLET OF THE MITRAL VALVE IN DIASTOLE, CONSISTENT WITH RHEUMATIC DEFORMITY.
79
+ THERE IS <#> FLOW REVERSAL IN THE DESCENDING AORTA, WHICH SUGGESTS AORTIC REGURGITATION IS <#> IN SEVERITY.
80
+ LEFT VENTRICULAR DIASTOLIC FUNCTION IS INDETERMINATE IN THIS STUDY DUE TO THE PRESENCE OF MITRAL STENOSIS.
81
+ CONSIDER REPEAT ECHO WITH CONTRAST AGENT TO BETTER ASSESS AORTIC VALVE GRADIENT AND SEVERITY OF STENOSIS.
82
+ PA SYSTOLIC PRESSURE COULD NOT BE DETERMINED DUE TO THE LACK OF A TRICUSPID REGURGITATION DOPPLER SIGNAL.
83
+ THE PULMONARY VENOUS FLOW PATTERN IS DIASTOLIC PREDOMINANT, SUGGESTIVE OF ELEVATED LEFT ATRIAL PRESSURE.
84
+ THERE IS DOPPLER EVIDENCE OF PULMONARY VEIN SYSTOLIC FLOW REVERSAL, INDICATING <#> MITRAL REGURGITATION.
85
+ THE MITRAL LEAFLETS ARE STATUS POST ALFIERI STITCH REPAIR, WITH A FUNCTIONING DUAL ORIFICE MITRAL VALVE.
86
+ THERE IS MINIMAL FLOW REVERSAL IN THE DESCENDING AORTA, WHICH SUGGESTS AORTIC REGURGITATION IS NOT <#>.
87
+ THE IVC IS DILATED WITH DECREASED RESPIRATORY VARIATION CONSISTENT WITH ELEVATED RIGHT ATRIAL PRESSURE.
88
+ THERE IS EVIDENCE OF A VEGETATION ATTACHED TO THE ANTERIOR AND POSTERIOR LEAFLETS OF THE MITRAL VALVE.
89
+ REPEAT STUDY WITH SALINE CONTRAST TO ENHANCE ASSESSMENT OF PEAK TR VELOCITY AND PA SYSTOLIC PRESSURE.
90
+ SUGGEST A TEE TO BETTER EVALUATE THE ATRIAL SEPTUM AND EXCLUDE A PFO OR ASD, IF CLINICALLY INDICATED.
91
+ THERE IS A FALSE LUMEN IN THE AORTA THAT CONTAINS THROMBUS AND IS COMPRESSING THE TRUE AORTIC LUMEN.
92
+ PARADOXICAL SEPTAL MOTION CONSISTENT WITH INTRAVENTRICULAR CONDUCTION DELAY OR BUNDLE BRANCH BLOCK.
93
+ THE PULMONARY VENOUS FLOW PATTERN IS DIASTOLIC PREDOMINANT, COMMONLY SEEN WITH ATRIAL FIBRILLATION.
94
+ VEGETATION OF THE TRICUSPID VALVE LEAFLET CANNOT BE EXCLUDED, CONSIDER TEE FOR FURTHER EVALUATION.
95
+ THE LEFT VENTRICULAR EJECTION FRACTION IS CALCULATED USING THE SINGLE PLANE SIMPSON'S RULE METHOD.
96
+ THE PULMONARY VENOUS FLOW PATTERN IS DIASTOLIC PREDOMINANT, COMMONLY SEEN AFTER HEART TRANSPLANT.
97
+ DOPPLER PARAMETERS ARE CONSISTENT WITH LOW FILLING PRESSURES AND DECREASED INTRAVASCULAR VOLUME.
98
+ RA PRESSURE COULD NOT BE ASSESSED FROM IVC COLLAPSE AS THE PATIENT IS ON MECHANICAL VENTILATION.
99
+ DEFINITY CONTRAST IS USED FOR LEFT VENTRICULAR OPACIFICATION AND ENDOCARDIAL BORDER ENHANCEMENT.
100
+ AGITATED BUBBLE STUDY POSITIVE FOR RIGHT TO LEFT SHUNT ONLY ON VALSALVA SUGGESTING A SMALL PFO.
101
+ THERE IS EVIDENCE OF FUSION OF THE MITRAL COMMISSURES, CONSISTENT WITH RHEUMATIC HEART DISEASE.
102
+ COLOR FLOW DOPPLER AND PULSE DOPPLER INTERROGATION REVEAL PREDOMINANTLY RIGHT TO LEFT SHUNTING.
103
+ OPTISON CONTRAST IS USED FOR LEFT VENTRICULAR OPACIFICATION AND ENDOCARDIAL BORDER ENHANCEMENT.
104
+ COLOR FLOW DOPPLER AND PULSE DOPPLER INTERROGATION REVEAL PREDOMINANTLY LEFT TO RIGHT SHUNTING.
105
+ THE INTERATRIAL SEPTUM BOWS FROM RIGHT TO LEFT, CONSISTENT WITH ELEVATED RIGHT ATRIAL PRESSURE.
106
+ LEFT VENTRICULAR DIASTOLIC FUNCTION IS INDETERMINATE IN THIS STUDY DUE TO THE PRESENCE OF <#>.
107
+ THE INTERATRIAL SEPTUM BOWS FROM LEFT TO RIGHT, CONSISTENT WITH ELEVATED LEFT ATRIAL PRESSURE.
108
+ <#>D ECHO AND COLOR DOPPLER FINDINGS ARE CONSISTENT WITH A SINUS VENOSUS ATRIAL SEPTAL DEFECT.
109
+ AORTIC VALVE DOES NOT OPEN OR ONLY OPENS INTERMITTENTLY CONSISTENT WITH NORMAL LVAD FUNCTION.
110
+ THE LEFT VENTRICULAR EJECTION FRACTION IS CALCULATED USING THE BIPLANE SIMPSON'S RULE METHOD.
111
+ THERE IS <#> BILEAFLET MITRAL VALVE PROLAPSE, PREDOMINANTLY INVOLVING THE POSTERIOR LEAFLET.
112
+ TECHNICALLY DIFFICULT STUDY DUE TO LIMITED ACOUSTIC WINDOWS SECONDARY TO SURGICAL DRESSINGS.
113
+ A TRICUSPID ANNULOPLASTY RING IS PRESENT. THERE IS TRIVIAL RESIDUAL TRICUSPID REGURGITATION.
114
+ THERE IS FLAIL OF THE ANTERIOR TRICUSPID LEAFLET, WITH DIRECT EVIDENCE FOR RUPTURED CHORDAE.
115
+ THE PULMONARY VENOUS FLOW PATTERN IS DIASTOLIC PREDOMINANT, COMMONLY SEEN IN A YOUNG PERSON.
116
+ THERE IS FLAIL OF THE POSTERIOR TRICUSPID LEAFLET, WITH DIRECT EVIDENCE OF RUPTURED CHORDAE.
117
+ THERE IS <#> THICKENING OF THE PULMONIC VALVE CUSPS CONSISTENT WITH CARCINOID HEART DISEASE.
118
+ THERE IS <#> BILEAFLET MITRAL VALVE PROLAPSE, PREDOMINANTLY INVOLVING THE ANTERIOR LEAFLET.
119
+ THE MITRAL PROSTHESIS DEMONSTRATES A NORMAL TRANSVALVULAR GRADIENT FOR VALVE TYPE AND SIZE.
120
+ THE AORTIC PROSTHESIS DEMONSTRATES A NORMAL TRANSVALVULAR GRADIENT FOR VALVE TYPE AND SIZE.
121
+ THERE IS AN INTRAMURAL HEMATOMA EXTENDING FROM THE ASCENDING AORTA TO THE DESCENDING AORTA.
122
+ THE AORTIC VALVE REMAIN CLOSED OR OPEN INTERMITTENTLY, CONSISTENT WITH NORMAL LVAD FUNCTION
123
+ THE INFERIOR VENA CAVA IS COLLAPSED AT REST CONSISTENT WITH INTRAVASCULAR VOLUME DEPLETION.
124
+ PARAVALVULAR AORTIC REGURGITATION CANNOT BE EXCLUDED, CONSIDER TEE FOR FURTHER EVALUATION.
125
+ PARAVALVULAR MITRAL REGURGITATION CANNOT BE EXCLUDED, CONSIDER TEE FOR FURTHER EVALUATION.
126
+ THERE IS A DISSECTION OF THE AORTA EXTENDING FROM THE AORTIC ARCH TO THE DESCENDING AORTA.
127
+ THERE IS A DISSECTION OF THE AORTA EXTENDING FROM THE AORTIC ROOT TO THE DESCENDING AORTA.
128
+ <#>D ECHO AND COLOR DOPPLER FINDINGS ARE CONSISTENT WITH A SECUNDUM ATRIAL SEPTAL DEFECT.
129
+ THERE IS FLAIL OF THE ANTERIOR MITRAL LEAFLET, WITH DIRECT EVIDENCE FOR RUPTURED CHORDAE.
130
+ LEFT VENTRICULAR DIASTOLIC FUNCTION IS INDETERMINATE AS PATIENT HAS HAD HEART TRANSPLANT.
131
+ THERE IS A DISSECTION OF THE AORTA EXTENDING FROM THE ASCENDING AORTA TO THE AORTIC ARCH.
132
+ THERE IS FLAIL OF THE POSTERIOR MITRAL LEAFLET, WITH DIRECT EVIDENCE OF RUPTURED CHORDAE.
133
+ THERE IS EVIDENCE OF A VEGETATION ATTACHED TO THE POSTERIOR LEAFLET OF THE MITRAL VALVE.
134
+ PA SYSTOLIC PRESSURE IS CONSISTENT WITH CRITICAL (NEAR SYSTEMIC) PULMONARY HYPERTENSION.
135
+ CONSIDER USE OF DOBUTAMINE AND LV CONTRAST TO BETTER ASSESS SEVERITY OF AORTIC STENOSIS.
136
+ THE MITRAL VALVE LEAFLETS ARE STATUS POST REPAIR. A MITRAL ANNULOPLASTY RING IS PRESENT.
137
+ A IRREGULAR SHAPED PENETRATING ATHEROSCLEROTIC ULCER IS PRESENT IN THE DESCENDING AORTA.
138
+ VEGETATION ON THE AORTIC VALVE CANNOT BE EXCLUDED, CONSIDER TEE FOR FURTHER EVALUATION.
139
+ VEGETATION ON THE MITRAL VALVE CANNOT BE EXCLUDED, CONSIDER TEE FOR FURTHER EVALUATION.
140
+ A BILEAFLET TILTING DISK MECHANICAL PROSTHETIC VALVE IS PRESENT IN THE AORTIC POSITION.
141
+ THERE IS AN INTRAMURAL HEMATOMA EXTENDING FROM THE AORTIC ROOT TO THE DESCENDING AORTA.
142
+ A BILEAFLET TILTING DISK MECHANICAL PROSTHETIC VALVE IS PRESENT IN THE MITRAL POSITION.
143
+ <#>D ECHO AND COLOR DOPPLER FINDINGS ARE CONSISTENT WITH A PRIMUM ATRIAL SEPTAL DEFECT.
144
+ DR. OFFICE STAFF NOTIFIED. RESULTS OF TEST LEFT WITH ANSWERING SERVICE AND OFFICE STAFF
145
+ THERE IS EVIDENCE OF A VEGETATION ATTACHED TO THE ANTERIOR LEAFLET OF THE MITRAL VALVE.
146
+ THERE IS <#> FIBROCALCIFIC CHANGE OF THE AORTIC ROOT, CONSISTENT WITH ATHEROSCLEROSIS.
147
+ FAMILY HISTORY OF ISCHEMIC HEART DISEASE AND OTHER DISEASES OF THE CIRCULATORY SYSTEM.
148
+ THE LEFT ATRIAL APPENDAGE HAS BEEN LIGATED FROM PRIOR CARDIAC SURGERY AND IS NOT SEEN.
149
+ THERE IS AN INTRAMURAL HEMATOMA EXTENDING FROM THE ASCENDING AORTA TO THE AORTIC ARCH.
150
+ THERE IS AN INTRAMURAL HEMATOMA EXTENDING FROM THE AORTIC ROOT TO THE ASCENDING AORTA.
151
+ A MITRAL ANNULOPLASTY RING IS SEEN. MITRAL VALVE LEAFLETS ARE REPAIRED IN APPEARANCE.
152
+ AGITATED SALINE BUBBLE STUDY IS LATE POSITIVE, SUGGESTIVE OF INTRAPULMONARY SHUNTING.
153
+ THERE IS A DISSECTION OF THE AORTA EXTENDING FROM THE AORTIC ROOT TO THE AORTIC ARCH.
154
+ THERE IS EVIDENCE OF DISCRETE MEMBRANOUS LEFT VENTRICULAR OUTFLOW TRACT OBSTRUCTION.
155
+ A SINGLE TILTING DISK MECHANICAL PROSTHETIC VALVE IS PRESENT IN THE MITRAL POSITION.
156
+ A SINGLE TILTING DISK MECHANICAL PROSTHETIC VALVE IS PRESENT IN THE AORTIC POSITION.
157
+ THE LEFT ATRIAL APPENDAGE DISPLAYS NORMAL FUNCTION, WITH NORMAL EMPTYING VELOCITIES.
158
+ THE APPEARANCE OF THE MITRAL VALVE LEAFLETS IS CONSISTENT WITH A CLEFT MITRAL VALVE.
159
+ SUGGEST TEE TO EVALUATE FOR POST-OPERATIVE TAMPONADE OR CHAMBER COMPRESSION BY CLOT.
160
+ THE MITRAL VALVE DEMONSTRATES NORMAL FUNCTION WITH TRACE PHYSIOLOGIC REGURGITATION.
161
+ THERE IS EVIDENCE OF AN INTERATRIAL SEPTAL ANEURYSM, WHICH MAY BE A NORMAL VARIANT.
162
+ SALINE CONTRAST IS USED FOR THE EVALUATION OF PATIENT FORAMEN OVALE OR OTHER SHUNT.
163
+ AGITATED SALINE BUBBLE STUDY IS EARLY POSITIVE, SUGGESTIVE OF PATENT FORAMEN OVALE.
164
+ TWO MITRACLIPS ARE SEEN ON THE ANTERIOR AND POSTERIOR LEAFLETS OF THE MITRAL VALVE.
165
+ TWO MITRACLIPS ARE NOW PRESENT ON THE ANTERIOR AND POSTERIOR MITRAL VALVE LEAFLETS.
166
+ AN AUTOGRAFT AORTIC VALVE IS PRESENT IN THE AORTIC POSITION FROM A ROSS PROCEDURE.
167
+ THERE IS A SEPTAL BOUNCE IN LATE DIASTOLE CONSISTENT WITH CONSTRICTIVE PHYSIOLOGY.
168
+ THERE IS DEFORMITY OF THE MITRAL LEAFLETS CONSISTENT WITH RHEUMATIC HEART DISEASE.
169
+ ONE MITRACLIP IS SEEN ON THE ANTERIOR AND POSTERIOR LEAFLETS OF THE MITRAL VALVE.
170
+ CANNOT RULE OUT AORTIC DISSECTION. RECOMMEND ALTERNATIVE AORTIC IMAGING MODALITY.
171
+ THERE IS EVIDENCE OF DYNAMIC LEFT VENTRICULAR OUTFLOW TRACT OBSTRUCTION AT REST.
172
+ ECHO DENSITY IN RIGHT VENTRICLE SUGGESTIVE OF CATHETER, PACER LEAD, OR ICD LEAD.
173
+ ATHEROSCLEROTIC HEART DISEASE OF NATIVE CORONARY ARTERY WITHOUT ANGINA PECTORIS.
174
+ THE PATIENT HAD A SINUS RHYTHM WITH A LEFT BUNDLE BRANCH BLOCK DURING THE STUDY.
175
+ THE MITRAL REGURGITATION JET IS ECCENTRIC AND SPREAD ALONG THE LEFT ATRIAL WALL.
176
+ THE APPEARANCE IS CONSISTENT WITH A POST-INFARCT TYPE VENTRICULAR SEPTAL DEFECT.
177
+ THE LEFT ATRIAL APPENDAGE IS NORMAL IN APPEARANCE WITH NO EVIDENCE OF THROMBUS.
178
+ THERE IS A FALSE LUMEN IN THE AORTA THAT IS COMPRESSING THE SUPERIOR VENA CAVA.
179
+ FINDINGS ARE CONSISTENT WITH A PROBABLE LEFT VENTRICULAR APICAL MURAL THROMBUS.
180
+ A BALL AND CAGE MECHANICAL PROSTHETIC VALVE IS PRESENT IN THE AORTIC POSITION.
181
+ A SMOOTH PENETRATING ATHEROSCLEROTIC ULCER IS PRESENT IN THE DESCENDING AORTA.
182
+ A LEFT VENTRICULAR ASSIST DEVICE CANNULA IS SEEN IN THE LEFT VENTRICULAR APEX.
183
+ THERE IS <#> TO <#> TRICUSPID VALVE STENOSIS. THE MEAN GRADIENT ISMMHG AT BPM.
184
+ THERE IS A FALSE LUMEN IN THE AORTA THAT IS COMPRESSING THE TRUE AORTIC LUMEN.
185
+ THE APPEARANCE IS CONSISTENT WITH A PERIMEMBRANOUS VENTRICULAR SEPTAL DEFECT.
186
+ THERE IS RESTRICTED COAPTATION OF THE ANTERIOR AND POSTERIOR MITRAL LEAFLETS.
187
+ A BALL-IN-CAGE MECHANICAL PROSTHETIC VALVE IS PRESENT IN THE MITRAL POSITION.
188
+ ECHO DENSITY IN RIGHT ATRIUM SUGGESTIVE OF CATHETER, PACER LEAD, OR ICD LEAD.
189
+ TRANSAORTIC GRADIENT MAY BE UNDERESTIMATED DUE TO SUBOPTIMAL DOPPLER ANGLE.
190
+ THE APPEARANCE IS CONSISTENT WITH A SUPRACRISTAL VENTRICULAR SEPTAL DEFECT.
191
+ COLOR FLOW DOPPLER SHOWS NO RESIDUAL FLOW ACROSS THE ATRIAL SEPTAL DEVICE.
192
+ THE AORTIC VALVE AREA BY THE CONTINUITY EQUATION (USING VMAX) IS <#>CM<#>
193
+ CONGENITAL MALFORMATION OF CARDIAC CHAMBERS AND CONNECTIONS, UNSPECIFIED.
194
+ CONSIDER USE OF LV CONTRAST TO BETTER ASSESS SEVERITY OF AORTIC STENOSIS.
195
+ THERE ARE MYXOMATOUS CHANGES TO BOTH THE ANTERIOR AND POSTERIOR LEAFLETS.
196
+ MITRAL VALVE POSTERIOR LEAFLET APPEARS MORE THICKENED THAN THE ANTERIOR.
197
+ MITRAL VALVE ANTERIOR LEAFLET APPEARS MORE CALCIFIED THAN THE POSTERIOR.
198
+ THE PULMONARY VENOUS FLOW PATTERN IS SYSTOLIC AND DIASTOLIC CO-DOMINANT.
199
+ MITRAL VALVE ANTERIOR LEAFLET APPEARS MORE THICKENED THAN THE POSTERIOR.
200
+ THERE IS AN ANTERIOR ECHO FREE SPACE CONSISTENT WITH EPICARDIAL FAT PAD.
201
+ SUGGEST TEE TO EVALUATE FOR POSSIBLE VEGETATION IF CLINICALLY INDICATED.
202
+ THE AORTIC VALVE AREA BY THE CONTINUITY EQUATION (USING VTI) IS <#>CM<#>
203
+ MITRAL VALVE POSTERIOR LEAFLET APPEARS MORE CALCIFIED THAN THE ANTERIOR.
204
+ THE ANTERIOR MYXOMATOUS CHANGES ARE GREATER THAN THE POSTERIOR CHANGES.
205
+ THE APPEARANCE IS CONSISTENT WITH A MUSCULAR VENTRICULAR SEPTAL DEFECT.
206
+ THERE IS <#> TRICUSPID VALVE STENOSIS. THE MEAN GRADIENT ISMMHG AT BPM.
207
+ REPEAT ECHO WITH CONTRAST AGENT TO RULE OUT LEFT VENTRICULAR THROMBUS.
208
+ SYSTEMIC LUPUS ERYTHEMATOSUS, ORGAN OR SYSTEM INVOLVEMENT UNSPECIFIED.
209
+ <#> TRICUSPID VALVE PROLAPSE INVOLVING THE POSTERIOR TRICUSPID LEAFLET
210
+ <#> TRICUSPID VALVE PROLAPSE INVOLVING THE ANTERIOR TRICUSPID LEAFLET.
211
+ THERE IS THE POSSIBILITY OF A LEFT VENTRICULAR APICAL MURAL THROMBUS.
212
+ THE APPEARANCE IS CONSISTENT WITH AN INLET VENTRICULAR SEPTAL DEFECT.
213
+ PEAK A WAVE ><#>CM/SEC COMPATIBLE WITH ELEVATED LEFT ATRIAL PRESSURE.
214
+ CEREBRAL INFARCTION DUE TO THROMBOSIS OF UNSPECIFIED CEREBRAL ARTERY.
215
+ THERE IS NO EVIDENCE OF LEFT VENTRICULAR OUTFLOW OBSTRUCTION AT REST.
216
+ DIFFICULT TO ASSESS DIASTOLIC FUNCTION DUE TO PRIOR HEART TRANSPLANT.
217
+ <#> TRICUSPID VALVE PROLAPSE INVOLVING THE SEPTAL TRICUSPID LEAFLET.
218
+ NORMAL PULMONIC VALVE FUNCTION WITH TRACE PHYSIOLOGIC REGURGITATION.
219
+ RA PRESSURE COULD NOT BE ASSESSED AS THE IVC IS NOT WELL VISUALIZED.
220
+ PULMONARY VEIN A WAVE CONSISTENT WITH ELEVATED LEFT ATRIAL PRESSURE.
221
+ THERE IS DOPPLER EVIDENCE OF LEFT-TO-RIGHT SHUNTING ACROSS THE VSD.
222
+ THERE IS DOPPLER EVIDENCE OF BIDIRECTIONAL SHUNTING ACROSS THE VSD.
223
+ THE AORTIC REGURGITATION JET IS ECCENTRIC AND DIRECTED POSTERIORLY.
224
+ POSTERIOR MYXOMATOUS CHANGES ARE GREATER THAN THE ANTERIOR CHANGES.
225
+ THERE IS A DISSECTION OF THE AORTA LIMITED TO THE DESCENDING AORTA.
226
+ <#> TRICUSPID VALVE PROLAPSE INVOLVING THE SEPTAL TRICUSPID LEAFLET
227
+ THE MITRAL REGURGITATION JET IS ECCENTRIC AND DIRECTED POSTERIORLY.
228
+ PA SYSTOLIC PRESSURE IS CONSISTENT WITH <#> PULMONARY HYPERTENSION.
229
+ THERE IS DOPPLER EVIDENCE OF RIGHT-TO-LEFT SHUNTING ACROSS THE VSD.
230
+ THE MITRAL REGURGITATION JET IS ECCENTRIC AND DIRECTED ANTERIORLY.
231
+ THE AORTIC REGURGITATION JET IS ECCENTRIC AND ANTERIORLY DIRECTED.
232
+ FINDINGS ARE CONSISTENT WITH A DEBAKEY TYPE III AORTIC DISSECTION.
233
+ FINDINGS ARE CONSISTENT WITH A DEBAKEY TYPE II AORTIC DISSECTION.
234
+ THERE IS EVIDENCE OF A VEGETATION ON THE PROSTHETIC AORTIC VALVE.
235
+ THERE IS SIGNIFICANT RESPIROPHASIC VARIATION OF TRICUSPID INFLOW.
236
+ FINDINGS ARE CONSISTENT WITH A STANFORD TYPE A AORTIC DISSECTION.
237
+ THERE IS EVIDENCE OF A VEGETATION ON THE PROSTHETIC MITRAL VALVE.
238
+ FINDINGS ARE CONSISTENT WITH A STANFORD TYPE B AORTIC DISSECTION.
239
+ THE PATIENT IS IN SUPRAVENTRICULAR TACHYCARDIA DURING THE STUDY.
240
+ FINDINGS ARE CONSISTENT WITH A DEBAKEY TYPE I AORTIC DISSECTION.
241
+ <#> MITRAL VALVE PROLAPSE INVOLVING THE ANTERIOR MITRAL LEAFLET.
242
+ A MECHANICAL PROSTHETIC VALVE IS PRESENT IN THE AORTIC POSITION.
243
+ ATRIAL SEPTUM COLOR DOPPLER INTERROGATION CONSISTENT WITH A PFO.
244
+ THERE IS AN INTRAMURAL HEMATOMA LIMITED TO THE DESCENDING AORTA.
245
+ A MECHANICAL PROSTHETIC VALVE IS PRESENT IN THE MITRAL POSITION.
246
+ AGITATED SALINE BUBBLE STUDY IS NEGATIVE FOR INTRACARDIAC SHUNT.
247
+ THERE IS <#> RESIDUAL SHUNTING ACROSS THE ATRIAL SEPTAL DEVICE.
248
+ THERE IS RESTRICTED COAPTATION OF THE POSTERIOR MITRAL LEAFLET.
249
+ <#> MITRAL VALVE PROLAPSE INVOLVING THE POSTERIOR MITRAL VALVE.
250
+ A FALSE TENDON IS SEEN IN THE LEFT VENTRICLE, A NORMAL FINDING.
251
+ THE LEFT VENTRICULAR EJECTION FRACTION IS ESTIMATED TO BE <#>%
252
+ ANTERIOR AND POSTERIOR MITRAL VALVE LEAFLETS APPEAR CALCIFIED.
253
+ THERE IS SIGNIFICANT RESPIROPHASIC VARIATION OF MITRAL INFLOW.
254
+ THERE IS EVIDENCE OF A LEFT VENTRICULAR APICAL MURAL THROMBUS.
255
+ FINDINGS ARE CONSISTENT WITH A POSSIBLE BICUSPID AORTIC VALVE.
256
+ ANTERIOR AND POSTERIOR MITRAL VALVE LEAFLETS APPEAR THICKENED.
257
+ A BIOPROSTHETIC STENT-VALVE IS PRESENT IN THE AORTIC POSITION.
258
+ THERE IS RESTRICTED COAPTATION OF THE ANTERIOR MITRAL LEAFLET.
259
+ THE APPEARANCE IS CONSISTENT WITH A COMPLETE AV CANAL DEFECT.
260
+ FINDINGS CONSISTENT WITH PERICARDIAL CONSTRICTION PHYSIOLOGY.
261
+ RIGHT VENTRICULAR ASSIST DEVICE CANNULA SEEN IN RIGHT ATRIUM.
262
+ THE MITRAL PROSTHETIC LEAFLET MOTION APPEARS <#> RESTRICTED.
263
+ TECHNICALLY DIFFICULT STUDY DUE TO LIMITED PATIENT MOBILITY.
264
+ TECHNICALLY DIFFICULT STUDY DUE TO LIMITED ACOUSTIC WINDOWS.
265
+ THE AORTIC PROSTHETIC LEAFLET MOTION APPEARS <#> RESTRICTED.
266
+ DOPPLER PARAMETERS COMPATIBLE WITH YOUNG TRANSPLANTED HEART.
267
+ THERE IS <#> MYXOMATOUS CHANGE TO THE MITRAL VALVE LEAFLETS.
268
+ <#>D ECHO IS USED TO EVALUATE THE TRICUSPID VALVE IN DETAIL.
269
+ TECHNICALLY DIFFICULT STUDY DUE TO POOR PATIENT COOPERATION.
270
+ <#>D ECHO IS USED TO EVALUATE THE PULMONIC VALVE IN DETAIL.
271
+ CHIARI NETWORK VISUALIZED IN RIGHT ATRIUM (NORMAL VARIANT).
272
+ <#>D ECHO IS USED TO EVALUATE THE LEFT VENTRICLE IN DETAIL.
273
+ THERE IS A FALSE LUMEN IN THE AORTA THAT CONTAINS THROMBUS.
274
+ SUGGEST TEE TO EVALUATE FOR AORTIC DISSECTION AND ANEURYSM.
275
+ AN AORTIC GRAFT IS PRESENT IN THE ROOT AND ASCENDING AORTA.
276
+ AN ECHOGENIC MASS CONSISTENT WITH A THROMBUS IS VISUALIZED.
277
+ NO ECHOCARDIOGRAPHIC EVIDENCE TO SUGGEST CARDIAC TAMPONADE.
278
+ THE RA PRESSURE MEASURED BY CATHETER AT BEDSIDE IS <#>MMHG.
279
+ THERE IS NO EVIDENCE OF PARAVALVULAR MITRAL REGURGITATION.
280
+ SPONTANEOUS ECHO CONTRAST SEEN IN THE LEFT ATRIUM AND LAA.
281
+ THERE IS NO EVIDENCE OF PARAVALVULAR AORTIC REGURGITATION.
282
+ THERE IS <#> SYSTOLIC ANTERIOR MOTION OF THE MITRAL VALVE.
283
+ BUNDLE BRANCH BLOCK OR CONDUCTION ABNORMALITY IS PRESENT.
284
+ THE AORTIC PROSTHESIS DEMONSTRATES NORMAL LEAFLET MOTION.
285
+ THERE IS HYPERDYNAMIC LEFT VENTRICULAR SYSTOLIC FUNCTION.
286
+ THE MITRAL PROSTHESIS DEMONSTRATES NORMAL LEAFLET MOTION.
287
+ <#>D ECHO IS USED TO EVALUATE THE MITRAL VALVE IN DETAIL.
288
+ <#>D ECHO IS USED TO EVALUATE THE AORTIC VALVE IN DETAIL.
289
+ THERE IS <#> LIPOMATOUS HYPERTROPHY OF THE ATRIAL SEPTUM.
290
+ POST TRANS-SEPTAL PROCEDURE WITH RIGHT TO LEFT SHUNTING.
291
+ NONRHEUMATIC AORTIC (VALVE) STENOSIS WITH INSUFFICIENCY.
292
+ A BIOPROSTHETIC VALVE IS PRESENT IN THE MITRAL POSITION.
293
+ NORMAL LEFT VENTRICULAR SIZE BY LINEAR CAVITY DIMENSION.
294
+ THE MITRAL VALVE AREA BY CONTINUITY EQUATION IS <#>CM<#>
295
+ POST TRANS-SEPTAL PROCEDURE WITH LEFT TO RIGHT SHUNTING.
296
+ POST TRANS-SEPTAL PROCEDURE WITH BIDIRECTIONAL SHUNTING.
297
+ A BIOPROSTHETIC VALVE IS PRESENT IN THE AORTIC POSITION.
298
+ THERE IS <#> (<#>-<#>MM) ATHEROMA OF THE THORACIC AORTA.
299
+ FINDINGS CONSISTENT WITH A SIGMOID SEPTUM OF THE ELDERLY
300
+ THE MITRAL VALVE DEMONSTRATES NORMAL LEAFLET MORPHOLOGY.
301
+ ENCOUNTER FOR PREPROCEDURAL CARDIOVASCULAR EXAMINATION.
302
+ THERE IS <#> SYMMETRIC BILEAFLET MITRAL VALVE PROLAPSE.
303
+ THE MITRAL VALVE AREA BY PRESSURE HALF-TIME IS <#>CM<#>
304
+ THE LEFT VENTRICLE IS SMALL BY LINEAR CAVITY DIMENSION.
305
+ PARADOXICAL SEPTAL MOTION CONSISTENT WITH RV PACEMAKER.
306
+ THE PATIENT IS IN NORMAL SINUS RHYTHM DURING THE STUDY.
307
+ FINDINGS CONSISTENT WITH ASYMMETRIC SEPTAL HYPERTROPHY.
308
+ THE PATIENT IS IN ATRIAL FIBRILLATION DURING THE STUDY.
309
+ SUGGEST TEE TO BETTER EVALUATE PROSTHETIC HEART VALVE.
310
+ AN ECHOGENIC MASS CONSISTENT WITH TUMOR IS VISUALIZED.
311
+ THERE IS A MASS OR THROMBUS IN THE XXX PULMONARY VEIN.
312
+ THERE IS <#> MYXOMATOUS CHANGE TO THE MITRAL LEAFLETS.
313
+ THE STUDY IMAGES ARE OF TECHNICALLY EXCELLENT QUALITY.
314
+ THERE IS NO SIGNIFICANT CHANGE IN PERICARDIAL EFFUSION
315
+ PA SYSTOLIC PRESSURE IS AT THE UPPER LIMITS OF NORMAL.
316
+ <#> DILATED LEFT VENTRICLE BY LINEAR CAVITY DIMENSION.
317
+ FINDINGS CONSISTENT WITH HYPERTROPHIC CARDIOMYOPATHY.
318
+ THE PATIENT IS IN SINUS BRADYCARDIA DURING THE STUDY.
319
+ THERE IS <#> (<<#>MM) ATHEROMA OF THE THORACIC AORTA.
320
+ THE MAGNITUDE OF LEFT-TO-RIGHT SHUNTING IS UNCHANGED.
321
+ ECHOGENIC MATERIAL SEEN WITHIN THE PERICARDIAL SPACE.
322
+ THE SEVERITY OF THE MITRAL REGURGITATION HAS IMPROVED
323
+ THE SEVERITY OF THE MITRAL REGURGITATION IS UNCHANGED
324
+ THE SEVERITY OF THE MITRAL REGURGITATION HAS WORSENED
325
+ THERE IS <#> ROCKING MOTION OF THE MITRAL PROSTHESIS.
326
+ THE RIGHT VENTRICULAR SYSTOLIC FUNCTION IS UNCHANGED.
327
+ THE PATIENT IS IN SINUS TACHYCARDIA DURING THE STUDY.
328
+ OTHER PULMONARY EMBOLISM WITHOUT ACUTE COR PULMONALE.
329
+ THERE IS <#> ROCKING MOTION OF THE AORTIC PROSTHESIS.
330
+ THE MAGNITUDE OF LEFT-TO-RIGHT SHUNTING HAS DECREASED
331
+ AORTIC ANEURYSM OF UNSPECIFIED SITE, WITHOUT RUPTURE.
332
+ THE STUDY IMAGES ARE OF TECHNICALLY ADEQUATE QUALITY.
333
+ AORTIC VALVE OPENING EVERY <#> BEAT OUT OF <#> BEATS.
334
+ THERE IS EARLY RIGHT VENTRICULAR DIASTOLIC COLLAPSE.
335
+ THE SEVERITY OF TRICUSPID REGURGITATION HAS WORSENED
336
+ THE SEVERITY OF TRICUSPID REGURGITATION IS UNCHANGED
337
+ NORMAL RIGHT VENTRICULAR SIZE AND SYSTOLIC FUNCTION.
338
+ THE SEVERITY OF TRICUSPID REGURGITATION HAS IMPROVED
339
+ THE SEVERITY OF PULMONARY REGURGITATION HAS IMPROVED
340
+ THERE IS <#> (><#>MM) ATHEROMA OF THE THORCIC AORTA.
341
+ THE MITRAL VALVE AREA BY <#>D PLANIMETRY IS <#>CM<#>
342
+ THE RIGHT VENTRICULAR SYSTOLIC FUNCTION HAS WORSENED
343
+ THE SEVERITY OF PULMONARY REGURGITATION IS UNCHANGED
344
+ THERE IS NO PREVIOUS STUDY AVAILABLE FOR COMPARISON.
345
+ AN AORTIC GRAFT IS PRESENT IN THE ROOT OF THE AORTA.
346
+ CONSIDER REPEAT ECHO TO ASSESS PERICARDIAL EFFUSION.
347
+ THE SEVERITY OF PULMONARY REGURGITATION HAS WORSENED
348
+ A HOMOGRAFT VALVE IS PRESENT IN THE AORTIC POSITION.
349
+ THE RIGHT VENTRICULAR SYSTOLIC FUNCTION IS IMPROVED
350
+ THE GLOBAL LONGITUDINAL STRAIN IS FOUND TO BE <#>%.
351
+ THERE IS NO EVIDENCE OF TRICUSPID VALVE VEGETATION.
352
+ NORMAL APPEARANCE AND FUNCTION OF THE AORTIC VALVE.
353
+ HAD THE APPEARANCE OF PERICARDIAL HEMATOMA OR CLOT.
354
+ FINDINGS CONSISTENT WITH RUPTURED PAPILLARY MUSCLE.
355
+ <#>D ECHO IS USED TO EVALUATE THE AORTA IN DETAIL.
356
+ THERE IS <#> AORTIC SINOTUBULAR JUNCTION DILATION.
357
+ SUGGEST TEE TO EVALUATE FOR PERICARDIAL TAMPONADE.
358
+ THE PATIENT IS IN ATRIAL FLUTTER DURING THE STUDY.
359
+ AN AORTIC GRAFT IS PRESENT IN THE ASCENDING AORTA.
360
+ THERE IS NO EVIDENCE OF A MITRAL VALVE VEGETATION.
361
+ THE AORTIC SINOTUBULAR JUNCTION IS NORMAL IN SIZE.
362
+ <#> DEPRESSED RIGHT VENTRICULAR SYSTOLIC FUNCTION.
363
+ THE MASS IS SESSILE AND APPEARS TO BE ATTACHED TO
364
+ THE STUDY IMAGES ARE OF TECHNICALLY GOOD QUALITY.
365
+ HYPERDYNAMIC RIGHT VENTRICULAR SYSTOLIC FUNCTION.
366
+ THE SEVERITY OF AORTIC REGURGITATION HAS IMPROVED
367
+ <#> DEPRESSED LEFT VENTRICULAR SYSTOLIC FUNCTION.
368
+ THE SEVERITY OF AORTIC REGURGITATION HAS WORSENED
369
+ TYPE <#> DIABETES MELLITUS WITHOUT COMPLICATIONS.
370
+ THE SEVERITY OF AORTIC REGURGITATION IS UNCHANGED
371
+ A MEDIUM SIZED VENTRICULAR SEPTAL DEFECT IS SEEN.
372
+ THE AORTIC CUSPS ARE <#> THICKENED IN APPEARANCE.
373
+ LEFT VENTRICULAR DIASTOLIC PARAMETERS ARE NORMAL.
374
+ NO SIGNIFICANT AORTIC STENOSIS OR INSUFFICIENCY.
375
+ THERE ARE NO REGIONAL WALL MOTION ABNORMALITIES.
376
+ THE MITRAL VALVE PROSTHESIS APPEARS WELL SEATED.
377
+ MITRAL VALVE INFLOW RESPIRATORY VARIATION NOTED.
378
+ THERE IS NO EVIDENCE OF AORTIC VALVE VEGETATION.
379
+ THE MASS IS MOBILE AND APPEARS TO BE ATTACHED TO
380
+ TRANSIENT CEREBRAL ISCHEMIC ATTACK, UNSPECIFIED.
381
+ THE AORTIC VALVE PROSTHESIS APPEARS WELL SEATED.
382
+ THE PATIENT HAD A PACED RHYTHM DURING THE STUDY.
383
+ THE SEVERITY OF THE MITRAL STENOSIS HAS WORSENED
384
+ FINDINGS CONSISTENT WITH CONCENTRIC HYPERTROPHY.
385
+ THE SEVERITY OF THE MITRAL STENOSIS HAS IMPROVED
386
+ A THROMBUS IS SEEN IN THE LEFT ATRIAL APPENDAGE.
387
+ THE SEVERITY OF THE MITRAL STENOSIS IS UNCHANGED
388
+ NONRHEUMATIC AORTIC VALVE DISORDER, UNSPECIFIED.
389
+ NORMAL MASS (M <#>-<#> G/M<#>, F <#>-<#> G/M<#>)
390
+ NORMAL PERICARDIUM WITH NO PERICARDIAL EFFUSION.
391
+ THERE IS NO SIGNIFICANT VALVULAR HEART DISEASE.
392
+ DR. IS NOTIFIED OF THE RESULTS OF THIS STUDY AT
393
+ ICU PHYSICIAN STAFF IS NOTIFIED OF THE RESULTS.
394
+ FINDINGS CONSISTENT WITH ECCENTRIC HYPERTROPHY.
395
+ THE INTERATRIAL SEPTUM IS THIN AND HYPERMOBILE.
396
+ THE POSITION OF THE DEVICE APPEARS SATISFACTORY
397
+ THERE IS <#>-<#> RESIDUAL MITRAL REGURGITATION.
398
+ THERE IS LATE RIGHT ATRIAL DIASTOLIC INVERSION.
399
+ THERE IS <#> TO <#> MITRAL VALVE REGURGITATION.
400
+ THE INTERATRIAL SEPTUM IS NORMAL IN APPEARANCE.
401
+ A TRICUSPID VALVE ANNULOPLASTY RING IS PRESENT.
402
+ THERE IS <#> PARAVALVULAR AORTIC REGURGITATION.
403
+ FINDINGS CONSISTENT WITH CONCENTRIC REMODELLING
404
+ THERE IS <#> PARAVALVULAR MITRAL REGURGITATION.
405
+ TWO MITRACLIPS SEEN IN THE TRICUSPID POSITION.
406
+ CONGENITAL MALFORMATION OF HEART, UNSPECIFIED.
407
+ THERE IS NO EVIDENCE OF MITRAL VALVE PROLAPSE.
408
+ ENCOUNTER FOR OTHER PREPROCEDURAL EXAMINATION.
409
+ THE SEVERITY OF PULMONIC STENOSIS HAS WORSENED
410
+ THERE IS NO EVIDENCE OF RIGHT ATRIAL THROMBUS.
411
+ THE SEVERITY OF PULMONIC STENOSIS HAS IMPROVED
412
+ THE SEVERITY OF PULMONIC STENOSIS IS UNCHANGED
413
+ THERE IS <#> BILEAFLET MITRAL VALVE PROLAPSE.
414
+ ICU NURSING STAFF IS NOTIFIED OF THE RESULTS.
415
+ OTHER NONRHEUMATIC TRICUSPID VALVE DISORDERS.
416
+ ONE MITRACLIP SEEN IN THE TRICUSPID POSITION.
417
+ THERE IS GLOBAL LEFT VENTRICULAR HYPOKINESIS.
418
+ A NEW TRICUSPID ANNULOPLASTY RING IS PRESENT.
419
+ OTHER NONRHEUMATIC PULMONARY VALVE DISORDERS.
420
+ SPONTANEOUS CONTRAST CONSISTENT WITH STASIS.
421
+ THE SEVERITY OF AORTIC STENOSIS IS UNCHANGED
422
+ EVALUATE LEFT VENTRICULAR SYSTOLIC FUNCTION.
423
+ A NEW PROSTHETIC PULMONARY VALVE IS PRESENT.
424
+ THE SEVERITY OF AORTIC STENOSIS HAS IMPROVED
425
+ CHRONIC ISCHEMIC HEART DISEASE, UNSPECIFIED.
426
+ PROMINENT EUSTACHIAN VALVE (NORMAL VARIANT).
427
+ THERE IS <#> TO <#> TRICUSPID REGURGITATION.
428
+ THE SEVERITY OF AORTIC STENOSIS HAS WORSENED
429
+ TEICHHOLZ METHOD IS USED TO CALCULATE LVEF.
430
+ THERE IS <#> TO <#> PULMONIC REGURGITATION.
431
+ MITRAL VALVE LEAFLETS APPEAR <#> THICKENED.
432
+ THE RIGHT VENTRICULAR HAS DECREASED IN SIZE
433
+ NORMAL RIGHT VENTRICULAR SYSTOLIC FUNCTION.
434
+ THE RIGHT VENTRICULAR HAS INCREASED IN SIZE
435
+ THERE IS DEGENERATIVE MITRAL REGURGITATION.
436
+ A VEGETATION IS SEEN ON THE PULMONIC VALVE.
437
+ NORMAL RIGHT VENTRICULAR SYSTOLIC PRESSURE.
438
+ RESTING OUTFLOW TRACT GRADIENT IS: <#>MMHG.
439
+ THERE IS <#> RESIDUAL MITRAL REGURGITATION.
440
+ A NEW PROSTHETIC TRICUSPID VALVE IS PRESENT
441
+ PERICARDIAL EFFUSION HAS DECREASED IN SIZE
442
+ NORMAL LEFT VENTRICULAR SYSTOLIC FUNCTION.
443
+ A SMALL VENTRICULAR SEPTAL DEFECT IS SEEN.
444
+ AN OCCLUDER DEVICE IS SEEN ACROSS THE VSD.
445
+ OTHER NONRHEUMATIC AORTIC VALVE DISORDERS.
446
+ PROMINENT MODERATOR BAND - NORMAL VARIANT.
447
+ NONRHEUMATIC AORTIC (VALVE) INSUFFICIENCY.
448
+ NONRHEUMATIC MITRAL (VALVE) INSUFFICIENCY.
449
+ PERICARDIAL EFFUSION HAS INCREASED IN SIZE
450
+ OTHER NONRHEUMATIC MITRAL VALVE DISORDERS.
451
+ THERE IS AN INTRAMURAL HEMATOMA EXTENSION.
452
+ A LARGE VENTRICULAR SEPTAL DEFECT IS SEEN.
453
+ <#> LEFT VENTRICULAR SYSTOLIC DYSFUNCTION.
454
+ ESTIMATED PA SYSTOLIC PRESSURE IS <#>MMHG.
455
+ THE MEAN TRANSMITRAL GRADIENT IS <#>MMHG.
456
+ THERE IS <#> TO <#> MITRAL REGURGITATION.
457
+ BORDERLINE RIGHT VENTRICULAR HYPERTROPHY.
458
+ THE INFERIOR VENA CAVA IS OF NORMAL SIZE.
459
+ LVOT GRADIENT WITH VALSALVAS IS: <#>MMHG.
460
+ THE PEAK TRANSAORTIC GRADIENT IS <#>MMHG.
461
+ NORMAL APPEARANCE OF THE TRICUSPID VALVE.
462
+ PERIPHERAL VASCULAR DISEASE, UNSPECIFIED.
463
+ THE PEAK TRANSMITRAL GRADIENT IS <#>MMHG.
464
+ DISCORDANT VENTRICULOARTERIAL CONNECTION.
465
+ THE MEAN TRANSAORTIC GRADIENT IS <#>MMHG.
466
+ A NEW PROSTHETIC AORTIC VALVE IS PRESENT.
467
+ THERE IS FUNCTIONAL MITRAL REGURGITATION.
468
+ OTHER SPECIFIED PULMONARY HEART DISEASES.
469
+ THERE IS TRIVIAL TRICUSPID REGURGITATION.
470
+ THERE IS <#> MITRAL VALVE REGURGITATION.
471
+ NONRHEUMATIC TRICUSPID (VALVE) STENOSIS.
472
+ PNUEMONIA DUE TO CORONAVIRUS DISEASE <#>
473
+ PNEUMONIA DUE TO CORONAVIRUS DISEASE <#>
474
+ THE MITRAL REGURGITATION JET IS CENTRAL.
475
+ UNABLE TO RULE OUT LEFT ATRIAL THROMBUS.
476
+ THE AORTIC REGURGITATION JET IS CENTRAL.
477
+ NO LEFT VENTRICULAR THROMBUS VISUALIZED.
478
+ PEAK INTRACAVITARY GRADIENT IS: <#>MMHG.
479
+ A NEW PROSTHETIC MITRAL VALVE IS PRESENT
480
+ NORMAL RIGHT ATRIAL SIZE AND MORPHOLOGY.
481
+ THERE HAS BEEN A CHANGE SINCE LAST EXAM.
482
+ THERE IS TRIVIAL PULMONIC REGURGITATION.
483
+ NORMAL LEFT VENTRICULAR SIZE BY VOLUME.
484
+ RESTING SEGMENTAL WALL MOTION ANALYSIS.
485
+ WALL MOTION ABNORMALITIES HAVE RESOLVED
486
+ THE RIGHT ATRIAL PRESSURE HAS DECREASED
487
+ DISCORDANT ATRIOVENTRICULAR CONNECTION.
488
+ THE RIGHT ATRIAL PRESSURE IS UNCHANGED.
489
+ NORMAL LEFT VENTRICULAR WALL THICKNESS.
490
+ OTHER SECONDARY PULMONARY HYPERTENSION.
491
+ CARDIAC TAMPONADE IS NO LONGER PRESENT.
492
+ EST RV/RA PRESSURE GRADIENT IS <#>MMHG.
493
+ OTHER LONG TERM (CURRENT) DRUG THERAPY.
494
+ THE RIGHT VENTRICULAR SIZE IS UNCHANGED
495
+ WALL MOTION ABNORMALITIES HAVE IMPROVED
496
+ THE RIGHT ATRIAL PRESSURE HAS INCREASED
497
+ NORMAL LEFT ATRIAL SIZE AND MORPHOLOGY.
498
+ THERE IS RESIDUAL MITRAL REGURGITATION.
499
+ THERE IS <#> ASCENDING AORTA DILATION.
500
+ CANNOT RULE OUT RIGHT ATRIAL THROMBUS.
501
+ TRICUSPID VALVE APPEARS <#> THICKENED.
502
+ A NEWLY TRANSPLANTED HEART IS PRESENT.
503
+ NO EVIDENCE OF PULMONIC REGURGITATION.
504
+ THE ASCENDING AORTA IS NORMAL IN SIZE.
505
+ THE AORTIC CUSPS APPEAR <#> THICKENED.
506
+ MITRAL VALVE PROSTHESIS SIZE IS <#>MM.
507
+ UNSPECIFIED RIGHT BUNDLE-BRANCH BLOCK.
508
+ THE RIGHT ATRIUM HAS INCREASED IN SIZE
509
+ A RIGHT ATRIAL THROMBUS IS VISUALIZED.
510
+ THERE IS TRIVIAL MITRAL REGURGITATION.
511
+ THE SIZE OF THE MASS IS <#>MM BY <#>MM
512
+ NONRHEUMATIC PULMONARY VALVE STENOSIS.
513
+ THE RIGHT ATRIUM HAS DECREASED IN SIZE
514
+ LEFT BUNDLE-BRANCH BLOCK, UNSPECIFIED.
515
+ CHRONIC OBSTRUCTIVE PULMONARY DISEASE.
516
+ COMPARED WITH PREVIOUS STUDY REPORT ON
517
+ I<#> ESSENTIAL (PRIMARY) HYPERTENSION.
518
+ LEFT VENTRICULAR CAVITY OBLITERATION.
519
+ THE LEFT ATRIUM HAS DECREASED IN SIZE
520
+ <#> DILATED LEFT VENTRICLE BY VOLUME.
521
+ LVOT GREADIENT AFTER PVC IS: <#>MMHG.
522
+ THERE IS <#> TRICUSPID REGURGITATION.
523
+ THERE IS EVIDENCE OF EARLY TAMPONADE.
524
+ UNSPECIFIED PREMATURE DEPOLARIZATION.
525
+ NONRHEUMATIC AORTIC (VALVE) STENOSIS.
526
+ CONSIDER TEE IF CLINICALLY INDICATED.
527
+ CORONARY ARTERY BYPASS GRAFT SURGERY.
528
+ NONRHEUMATIC MITRAL (VALVE) STENOSIS.
529
+ THE LEFT ATRIUM HAS INCREASED IN SIZE
530
+ MITRAL VALVE IS NOT WELL VISUALIZED.
531
+ RIGHT VENTRICLE NOT WELL VISUALIZED.
532
+ TRICUSPID VALVE NOT WELL VISUALIZED.
533
+ THERE IS <#> PULMONIC REGURGITATION.
534
+ IS A LOCULATED PERICARDIAL EFFUSION.
535
+ THERE ARE NO REGIONAL ABNORMALITIES.
536
+ DISEASE OF PERICARDIUM, UNSPECIFIED.
537
+ PERICARDIAL EFFUSION IS NOW PRESENT
538
+ THERE IS <#> ENLARGEMENT OF THE PA.
539
+ FUNCTION HAS SIGNIFICANTLY WORSENED
540
+ <#> PRIMARY PULMONARY HYPERTENSION.
541
+ <#>/<#>/<#> COMPARISON FINDINGS AND
542
+ WALL MOTION ABNORMALITIES UNCHANGED
543
+ PULMONIC VALVE NOT WELL VISUALIZED.
544
+ A BICUSPID AORTIC VALVE IS PRESENT.
545
+ LEFT VENTRICLE NOT WELL VISUALIZED.
546
+ THE RIGHT ATRIUM IS NORMAL IN SIZE.
547
+ FUNCTION HAS SIGNIFICANTLY IMPROVED
548
+ AORTIC CUSPS APPEAR <#> RESTRICTED.
549
+ ABNORMAL ELECTROCARDIOGRAM ECG EKG.
550
+ THIN AND HYPERMOBILE ATRIAL SEPTUM.
551
+ THE RIGHT ATRIUM SIZE IS UNCHANGED.
552
+ THERE IS <#> MITRAL REGURGITATION.
553
+ THE LEFT ATRIUM IS NORMAL IN SIZE.
554
+ THE INFERIOR VENA CAVA IS DILATED.
555
+ RHEUMATIC MITRAL (VALVE) STENOSIS.
556
+ THE AORTIC ROOT SIZE IS UNCHANGED.
557
+ <#> RIGHT VENTRICULAR HYPERTROPHY.
558
+ TRANSIENT ALTERATION OF AWARENESS.
559
+ THE AORTIC ROOT SIZE HAS INCREASED
560
+ AORTIC CUSPS APPEAR <#> CALCIFIED.
561
+ SMALL TO <#> PERICARDIAL EFFUSION.
562
+ THE AORTIC ROOT IS NORMAL IN SIZE.
563
+ THE LEFT ATRIUM SIZE IS UNCHANGED.
564
+ CARDIAC ARREST, CAUSE UNSPECIFIED.
565
+ CANNOT RULE OUT CARDIAC TAMPONADE.
566
+ <#> TO LARGE PERICARDIAL EFFUSION.
567
+ OTHER HYPERTROPHIC CARDIOMYOPATHY.
568
+ THERE IS <#> AORTIC ROOT DILATION.
569
+ NORMAL PULMONIC VALVE APPEARANCE.
570
+ WALL MOTION ABNORMALITIES ARE NEW
571
+ ESTIMATED PA PRESSURE IS <#>MMHG.
572
+ ASD CLOSURE DEVICE IS NOW PRESENT
573
+ AORTIC VALVE NOT WELL VISUALIZED.
574
+ HAD A FIBRIN-STRANDED APPEARANCE.
575
+ <#> MITRAL ANNULAR CALCIFICATION.
576
+ ATRIOVENTRICULAR BLOCK, COMPLETE.
577
+ <#> LEFT VENTRICULAR HYPERTROPHY.
578
+ PA PEAK PRESSURE IS NOW <#>MMHG.
579
+ ACUTE PERICARDITIS, UNSPECIFIED.
580
+ AV MEAN GRADIENT IS NOW <#>MMHG.
581
+ UNSPECIFIED ATRIAL FIBRILLATION.
582
+ FILLING PRESSURE HAS NOT CHANGED
583
+ EMPTYING VELOCITIES ARE REDUCED.
584
+ <#> LEFT VENTRICULAR HYPERTROPHY
585
+ FINDINGS SUGGEST MALFUNCTIONING.
586
+ PV MEAN GRADIENT IS NOW <#>MMHG.
587
+ BILATERAL PLEURAL EFFUSION SEEN.
588
+ <#> TO <#> AORTIC REGURGITATION.
589
+ NO TRICUSPID REGURGITATION SEEN.
590
+ CARDIAC TAMPONADE IS NOW PRESENT
591
+ MV MEAN GRADIENT IS NOW <#>MMHG.
592
+ DESCENDING AORTA NORMAL IN SIZE.
593
+ ESTIMATED PEAK RVSP IS <#>MMHG.
594
+ COMPARED WITH PREVIOUS STUDY ON
595
+ LIMITED RV DIASTOLIC EXPANSION.
596
+ REDUCED RIGHT VENTRICULAR SIZE.
597
+ <#> AORTIC VALVE REGURGITATION.
598
+ DILATED AORTA/AORTIC DISSECTION
599
+ NO SIGNIFICANT INTERVAL CHANGE.
600
+ TOTAL WALL MOTION SCORE IS <#>.
601
+ BASAL TO MID ANTEROSEPTAL WALL.
602
+ PA SYSTOLIC PRESSURE IS NORMAL.
603
+ THE PULMONARY SIZE IS UNCHANGED
604
+ MARFAN'S SYNDROME, UNSPECIFIED.
605
+ ATRIOVENTRICULAR SEPTAL DEFECT.
606
+ RIGHT VENTRICULAR ASSIST DEVICE
607
+ AORTIC ROOT SIZE IS NOW <#>MM.
608
+ OTHER CEREBROVASCULAR DISEASE.
609
+ NORMAL RIGHT VENTRICULAR SIZE.
610
+ PV PK GRADIENT IS NOW <#>MMHG.
611
+ FILLING PRESSURE HAS INCREASED
612
+ FILLING PRESSURE HAS DECREASED
613
+ AV PK GRADIENT IS NOW <#>MMHG.
614
+ MV PK GRADIENT IS NOW <#>MMHG.
615
+ AORTIC ANNULUS DIAMETER <#>CM.
616
+ TRIVIAL PERICARDIAL EFFUSION.
617
+ <#> PULMONARY VALVE STENOSIS.
618
+ THE PA PRESSURE HAS INCREASED
619
+ THE PA PRESSURE IS UNCHANGED.
620
+ THE PA PRESSURE HAS DECREASED
621
+ CARDIAC TAMPONADE IS PRESENT.
622
+ COMPARED WITH PREVIOUS TEE ON
623
+ LV EJECTION FRACTION IS <#>%.
624
+ NO AORTIC REGURGITATION SEEN.
625
+ AGITATED SALINE BUBBLE STUDY.
626
+ CIRCUMFERENTIAL TO THE HEART.
627
+ <#> MV LEAFLET CALCIFICATION.
628
+ PERSONAL HISTORY OF COVID-<#>
629
+ SUPRAVENTRICULAR TACHYCARDIA.
630
+ NORMAL LEFT VENTRICULAR SIZE.
631
+ LAA SLUDGE (PRECLOT) IS SEEN.
632
+ NO MITRAL REGURGITATION SEEN.
633
+ MV MEAN GRADIENT IS <#>MMHG.
634
+ AORTIC VALVE SCLEROSIS SEEN.
635
+ THE PA HAS INCREASED IN SIZE
636
+ CARDIAC MURMUR, UNSPECIFIED.
637
+ <#> DILATED RIGHT VENTRICLE.
638
+ PV MEAN GRADIENT IS <#>MMHG.
639
+ THE LEFT VENTRICLE IS SMALL.
640
+ <#> TRICUSPID REGURGITATION.
641
+ PA PEAK PRESSURE IS <#>MMHG.
642
+ AV MEAN GRADIENT IS <#>MMHG.
643
+ SINOTUBULAR JUNCTION: <#>CM.
644
+ RIGHT PLEURAL EFFUSION SEEN.
645
+ WALL THICKNESS HAS DECREASED
646
+ ORTHOTOPIC HEART TRANSPLANT.
647
+ THE PA HAS DECREASED IN SIZE
648
+ WALL THICKNESS HAS INCREASED
649
+ THE PERICARDIAL EFFUSION IS
650
+ NO LAA THROMBUS VISUALIZED.
651
+ SMALL PERICARDIAL EFFUSION.
652
+ PROMINENT FLAIL MV LEAFLET.
653
+ WALL THICKNESS IS UNCHANGED
654
+ APPEARS TO FUNCTION NORMAL.
655
+ TRACE AORTIC REGURGITATION.
656
+ UNSPECIFIED ATRIAL FLUTTER.
657
+ <#> DILATED LEFT VENTRICLE.
658
+ LEFT PLEURAL EFFUSION SEEN.
659
+ LARGE PERICARDIAL EFFUSION.
660
+ THERE IS HYPOKINESIS OF THE
661
+ AORTIC ARCH NORMAL IN SIZE.
662
+ BASAL TO MID INFERIOR WALL.
663
+ HEART FAILURE, UNSPECIFIED.
664
+ VENTRICULAR SEPTAL DEFECT.
665
+ THE IVC DIAMETER IS <#>MM.
666
+ AORTIC ROOT SIZE IS <#>MM.
667
+ PV PK GRADIENT IS <#>MMHG.
668
+ MV PK GRADIENT IS <#>MMHG.
669
+ <#> AORTIC VALVE STENOSIS.
670
+ LEFT ATRIAL THROMBUS SEEN.
671
+ TRANSIENT ISCHEMIC ATTACK.
672
+ THE IVC DIAMETER IS <#>CM.
673
+ ENTIRE INFEROLATERAL WALL.
674
+ NO SHUNT BY COLOR DOPPLER.
675
+ NO PLEURAL EFFUSION NOTED.
676
+ NO PULMONARY HYPERTENSION.
677
+ AV PK GRADIENT IS <#>MMHG.
678
+ PURE HYPERCHOLESTEROLEMIA.
679
+ THERE IS DYSKINESIS OF THE
680
+ OLD MYOCARDIAL INFARCTION.
681
+ A VSD PATCH IS VISUALIZED.
682
+ AORTIC VALVE REPLACEMENT.
683
+ MITRAL VALVE REPLACEMENT.
684
+ ATHEROMA THICKNESS <#>MM.
685
+ <#> DILATED RIGHT ATRIUM.
686
+ DILATED DESCENDING AORTA.
687
+ <#> PERICARDIAL EFFUSION.
688
+ <#> AORTIC REGURGITATION.
689
+ CONGESTIVE HEART FAILURE.
690
+ PATENT DUCTUS ARTERIOSUS.
691
+ SINUS OF VALSALVA: <#>CM.
692
+ CEREBROVASCULAR ACCIDENT.
693
+ <#> DILATED LEFT ATRIUM.
694
+ CONGENITAL HEART DISEASE
695
+ ISCHEMIC CARDIOMYOPATHY.
696
+ HEART TRANSPLANT STATUS.
697
+ NORMAL MORPHOLOGY OF THE
698
+ THERE IS AKINESIS OF THE
699
+ NO LEFT ATRIAL THROMBUS.
700
+ CORONARY ARTERY DISEASE.
701
+ ECHO-FREE IN APPEARANCE.
702
+ VENTRICULAR TACHYCARDIA.
703
+ CHEST PAIN, UNSPECIFIED.
704
+ THERE IS ANEURYSM OF THE
705
+ TRILEAFLET AORTIC VALVE.
706
+ BIDIRECTIONAL SHUNTING.
707
+ DESCENDING AORTA <#>CM.
708
+ POSTERIOR TO THE HEART.
709
+ DILATED CARDIOMYOPATHY.
710
+ ASCENDING AORTA <#>CM.
711
+ ANTERIOR TO THE HEART.
712
+ ACUTE PULMONARY EDEMA.
713
+ THICKENED PERICARDIUM.
714
+ SALINE CONTRAST STUDY
715
+ FUNCTION HAS IMPROVED
716
+ ATRIAL SEPTAL DEFECT.
717
+ COARCTATION OF AORTA.
718
+ LVAD HAS BEEN REMOVED
719
+ LATERAL TO THE HEART.
720
+ FUNCTION IS UNCHANGED
721
+ FUNCTION HAS WORSENED
722
+ NOT WELL VISUALIZED.
723
+ LESION DEPTH IS <#>.
724
+ DILATED AORTIC ARCH.
725
+ HEMATOMA SIZE <#>CM.
726
+ MITRAL VALVE REPAIR.
727
+ <#> MITRAL STENOSIS.
728
+ TETRALOGY OF FALLOT.
729
+ SHORTNESS OF BREATH.
730
+ LVOT IS NOW <#>MMHG.
731
+ AVA IS NOW <#>CM<#>
732
+ ASCITES IS PRESENT.
733
+ NORMAL AORTIC ROOT.
734
+ MVA IS NOW <#>CM<#>
735
+ LVEDS IS NOW <#>MM.
736
+ FEVER, UNSPECIFIED.
737
+ EDEMA, UNSPECIFIED.
738
+ LVEDD IS NOW <#>MM.
739
+ AORTIC ARCH <#>CM.
740
+ SIZE HAS DECREASED
741
+ DIABETES MELLITUS.
742
+ GENERALIZED EDEMA.
743
+ SIZE HAS INCREASED
744
+ LVEF IS NOW <#>%.
745
+ A LVAD IS PRESENT
746
+ SHORTNESS BREATH.
747
+ LOCALIZED EDEMA.
748
+ LVOT IS <#>MMHG.
749
+ NORMAL PA SIZE.
750
+ LVEDS IS <#>MM.
751
+ MVA IS <#>CM<#>
752
+ SITUS INVERSUS.
753
+ LVEDD IS <#>MM.
754
+ AVA IS <#>CM<#>
755
+ R<#> CYANOSIS.
756
+ SIZE UNCHANGED
757
+ PALPITATIONS.
758
+ LVEF IS <#>%.
759
+ HYPOVOLEMIA.
760
+ RIGHT CLICK.
761
+ IS PRESENT.
762
+ APICAL CAP.
763
+ CHEST PAIN.
764
+ BACTEREMIA.
765
+ LV THROMBUS
766
+ HISTORY OF
767
+ PNEUMONIA.
768
+ (RESTING)
769
+ SYNCOPE.
770
+ FEVERS.
utils.py ADDED
@@ -0,0 +1,266 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import torch
2
+ import numpy as np
3
+ from pathlib import Path
4
+ import cv2
5
+ import re
6
+
7
+ zero_shot_prompts = {
8
+ "ejection_fraction": [
9
+ "THE LEFT VENTRICULAR EJECTION FRACTION IS ESTIMATED TO BE <#>% ",
10
+ "LV EJECTION FRACTION IS <#>%. ",
11
+ ],
12
+ "pacemaker": [
13
+ "ECHO DENSITY IN RIGHT VENTRICLE SUGGESTIVE OF CATHETER, PACER LEAD, OR ICD LEAD. ",
14
+ "ECHO DENSITY IN RIGHT ATRIUM SUGGESTIVE OF CATHETER, PACER LEAD, OR ICD LEAD. ",
15
+ ],
16
+ "impella": [
17
+ "AN IMPELLA CATHETER IS SEEN AND THE INLET AREA IS 4.0CM FROM THE AORTIC VALVE AND DOES NOT INTERFERE WITH NEIGHBORING STRUCTURES, CONSISTENT WITH CORRECT IMPELLA POSITIONING. THERE IS DENSE TURBULENT COLOR FLOW ABOVE THE AORTIC VALVE, CONSISTENT WITH CORRECT OUTFLOW AREA POSITION ",
18
+ "AN IMPELLA CATHETER IS SEEN ACROSS THE AORTIC VALVE AND IS TOO CLOSE TO OR ENTANGLED IN THE PAPILLARY MUSCLE AND SUBANNULAR STRUCTURES SURROUNDING THE MITRAL VALVE; REPOSITIONING RECOMMENDED. ",
19
+ "AN IMPELLA CATHETER IS SEEN, HOWEVER THE INLET AREA APPEARS TO BE IN THE AORTA OR NEAR THE AORTIC VALVE; REPOSITIONING IS RECOMMENDED. ",
20
+ "AN IMPELLA CATHETER IS SEEN ACROSS THE AORTIC VALVE AND EXTENDS TOO FAR INTO THE LEFT VENTRICLE; REPOSITIONING RECOMMENDED ",
21
+ ],
22
+ "normal_right_atrial_pressure": [
23
+ "THE INFERIOR VENA CAVA SHOWS A NORMAL RESPIRATORY COLLAPSE CONSISTENT WITH NORMAL RIGHT ATRIAL PRESSURE (3MMHG). ",
24
+ ],
25
+ "elevated_right_atrial_pressure": [
26
+ "THE INFERIOR VENA CAVA DEMONSTRATES LESS THAN 50% COLLAPSE CONSISTENT WITH ELEVATED RIGHT ATRIAL PRESSURE (8MMHG). ",
27
+ ],
28
+ "significantly_elevated_right_atrial_pressure": [
29
+ "THE INFERIOR VENA CAVA DEMONSTRATES NO INSPIRATORY COLLAPSE, CONSISTENT WITH SIGNIFICANTLY ELEVATED RIGHT ATRIAL PRESSURE (>15MMHG). ",
30
+ ],
31
+ "pulmonary_artery_pressure": [
32
+ "ESTIMATED PA SYSTOLIC PRESSURE IS <#>MMHG. ",
33
+ "ESTIMATED PA PRESSURE IS <#>MMHG. ",
34
+ "PA PEAK PRESSURE IS <#>MMHG. ",
35
+ ],
36
+ "severe_left_ventricle_dilation": [
37
+ "SEVERE DILATED LEFT VENTRICLE BY LINEAR CAVITY DIMENSION. ",
38
+ "SEVERE DILATED LEFT VENTRICLE BY VOLUME. ",
39
+ "SEVERE DILATED LEFT VENTRICLE. ",
40
+ ],
41
+ "moderate_left_ventricle_dilation": [
42
+ "MODERATE DILATED LEFT VENTRICLE BY LINEAR CAVITY DIMENSION. ",
43
+ "MODERATE DILATED LEFT VENTRICLE BY VOLUME. ",
44
+ "MODERATE DILATED LEFT VENTRICLE. ",
45
+ ],
46
+ "mild_left_ventricle_dilation": [
47
+ "MILD DILATED LEFT VENTRICLE BY LINEAR CAVITY DIMENSION. ",
48
+ "MILD DILATED LEFT VENTRICLE BY VOLUME. ",
49
+ "MILD DILATED LEFT VENTRICLE. ",
50
+ ],
51
+ "severe_right_ventricle_size": ["SEVERE DILATED RIGHT VENTRICLE. "],
52
+ "moderate_right_ventricle_size": ["MODERATE DILATED RIGHT VENTRICLE. "],
53
+ "mild_right_ventricle_size": ["MILD DILATED RIGHT VENTRICLE. "],
54
+ "severe_left_atrium_size": ["SEVERE DILATED LEFT ATRIUM. "],
55
+ "moderate_left_atrium_size": ["MODERATE DILATED LEFT ATRIUM. "],
56
+ "mild_left_atrium_size": ["MILD DILATED LEFT ATRIUM. "],
57
+ "severe_right_atrium_size": ["SEVERE DILATED RIGHT ATRIUM. "],
58
+ "moderate_right_atrium_size": ["MODERATE DILATED RIGHT ATRIUM. "],
59
+ "mild_right_atrium_size": ["MILD DILATED RIGHT ATRIUM. "],
60
+ "tavr": [
61
+ "A BIOPROSTHETIC STENT-VALVE IS PRESENT IN THE AORTIC POSITION. ",
62
+ ],
63
+ "mitraclip": [
64
+ "TWO MITRACLIPS ARE SEEN ON THE ANTERIOR AND POSTERIOR LEAFLETS OF THE MITRAL VALVE. ",
65
+ "TWO MITRACLIPS ARE NOW PRESENT ON THE ANTERIOR AND POSTERIOR MITRAL VALVE LEAFLETS. ",
66
+ "ONE MITRACLIP IS SEEN ON THE ANTERIOR AND POSTERIOR LEAFLETS OF THE MITRAL VALVE. ",
67
+ ],
68
+ }
69
+
70
+
71
+ def compute_binary_metric(
72
+ video_embeddings: torch.Tensor,
73
+ prompt_embeddings: torch.Tensor,
74
+ ):
75
+ per_frame_similarities = video_embeddings @ prompt_embeddings.T
76
+ # Average along the candidate dimension and frame dimension
77
+ predictions = per_frame_similarities.mean(dim=-1).mean(dim=-1)
78
+
79
+ return predictions
80
+
81
+
82
+ def compute_regression_metric(
83
+ video_embeddings: torch.Tensor,
84
+ prompt_embeddings: torch.Tensor,
85
+ prompt_values: torch.Tensor,
86
+ ):
87
+ per_frame_similarities = (
88
+ video_embeddings @ prompt_embeddings.T
89
+ ) # (N x Frames x Candidates)
90
+
91
+ # Sort the candidates by their similarity to the video
92
+ ranked_candidate_phrase_indices = torch.argsort(
93
+ per_frame_similarities, dim=-1, descending=True
94
+ )
95
+
96
+ # Convert matrix of indices to their corresponding continuous values.
97
+ prompt_values = torch.tensor(
98
+ prompt_values, device=video_embeddings.device
99
+ ) # (N x Frames x Candidates)
100
+ all_frames_ranked_values = prompt_values[ranked_candidate_phrase_indices]
101
+
102
+ # Taking the mean along dim=1 collapses the frames dimension
103
+ avg_frame_ranked_values = all_frames_ranked_values.float().mean(
104
+ dim=1
105
+ ) # (N x Candidates)
106
+
107
+ # The median of only the top 20% of predicted values is taken
108
+ # as the final predicted value
109
+ twenty_percent = int(avg_frame_ranked_values.shape[1] * 0.2)
110
+ final_prediction = avg_frame_ranked_values[:, :twenty_percent].median(dim=-1)[0]
111
+
112
+ return final_prediction
113
+
114
+
115
+ def crop_and_scale(img, res=(640, 480), interpolation=cv2.INTER_CUBIC, zoom=0.1):
116
+ in_res = (img.shape[1], img.shape[0])
117
+ r_in = in_res[0] / in_res[1]
118
+ r_out = res[0] / res[1]
119
+
120
+ if r_in > r_out:
121
+ padding = int(round((in_res[0] - r_out * in_res[1]) / 2))
122
+ img = img[:, padding:-padding]
123
+ if r_in < r_out:
124
+ padding = int(round((in_res[1] - in_res[0] / r_out) / 2))
125
+ img = img[padding:-padding]
126
+ if zoom != 0:
127
+ pad_x = round(int(img.shape[1] * zoom))
128
+ pad_y = round(int(img.shape[0] * zoom))
129
+ img = img[pad_y:-pad_y, pad_x:-pad_x]
130
+
131
+ img = cv2.resize(img, res, interpolation=interpolation)
132
+
133
+ return img
134
+
135
+
136
+ def read_avi(p: Path, res=None):
137
+ cap = cv2.VideoCapture(str(p))
138
+ frames = []
139
+ while True:
140
+ ret, frame = cap.read()
141
+ if not ret:
142
+ break
143
+ if res is not None:
144
+ frame = crop_and_scale(frame, res)
145
+ frames.append(frame)
146
+ cap.release()
147
+ return np.array(frames)
148
+
149
+
150
+ ## TEXT CLEANING UTILS
151
+
152
+ removables = re.compile(r"\^|CRLF|‡")
153
+
154
+ in_text_periods = re.compile(r"(?<=\D)\.|\.(?=\D)")
155
+ square_brackets = re.compile(r"[\[\]]")
156
+ multi_whitespace = re.compile(r"\s+")
157
+ multi_period = re.compile(r"\.+")
158
+
159
+ select_was = re.compile(r"(?<=\b)WAS(?=\b)")
160
+ select_were = re.compile(r"(?<=\b)WERE(?=\b)")
161
+ select_and_or = re.compile(r"(?<=\b)AND/OR(?=\b)")
162
+ select_normally = re.compile(r"NORMALLY")
163
+ select_mildly = re.compile(r"MILDLY")
164
+ select_moderately = re.compile(r"MODERATELY")
165
+ select_severely = re.compile(r"SEVERELY")
166
+ select_pa = re.compile(r"PULMONARY ARTERY")
167
+ select_icd_codes = re.compile(r"[A-Z](\d+\.\d*\b)")
168
+ select_slash_dates = re.compile(r"\d{2}/\d{2}/\d{4}")
169
+ select_dot_dates = re.compile(r"\d{2}\.\d{2}\.\d{4}")
170
+
171
+ space_before_unit = re.compile(r"\s+(MMHG|MM|CM|%)")
172
+ space_period = re.compile(r"\s\.")
173
+
174
+ space_plus_space = re.compile(r"\s\+\s")
175
+ verbose_pressure = re.compile(r"\+CVPMMHG")
176
+ add_period = [
177
+ r"THE PEAK TRANSAORTIC GRADIENT IS <#>MMHG",
178
+ r"THE MEAN TRANSAORTIC GRADIENT IS <#>MMHG",
179
+ r"LV EJECTION FRACTION IS <#>%",
180
+ r"ESTIMATED PA PRESSURE IS <#>MMHG",
181
+ r"RESTING SEGMENTAL WALL MOTION ANALYSIS",
182
+ r"THE IVC DIAMETER IS <#>MM",
183
+ r"EST RV/RA PRESSURE GRADIENT IS <#>MMHG",
184
+ r"ESTIMATED PEAK RVSP IS <#>MMHG",
185
+ r"HEART FAILURE, UNSPECIFIED",
186
+ r"CHEST PAIN, UNSPECIFIED",
187
+ r"SINUS OF VALSALVA: <#>CM",
188
+ r"THE PEAK TRANSMITRAL GRADIENT IS <#>MMHG",
189
+ r"THE MEAN TRANSMITRAL GRADIENT IS <#>MMHG",
190
+ r"ASCENDING AORTA <#>CM",
191
+ r"ESTIMATED PA SYSTOLIC PRESSURE IS <#>MMHG",
192
+ r"ICD_CODE SHORTNESS BREATH",
193
+ r"ICD_CODE ABNORMAL ELECTROCARDIOGRAM ECG EKG",
194
+ r"SHORTNESS BREATH",
195
+ r"ABNORMAL ELECTROCARDIOGRAM ECG EKG",
196
+ r"THE LEFT ATRIAL APPENDAGE IS NORMAL IN APPEARANCE WITH NO EVIDENCE OF THROMBUS",
197
+ ]
198
+
199
+ select_number = r"(?:\d+\.?\d*)"
200
+
201
+ add_period = [re.escape(a).replace(re.escape("<#>"), select_number) for a in add_period]
202
+ add_period = [f"(?:{a})(?!\.)" for a in add_period]
203
+ add_period = "|".join(add_period)
204
+ add_period = f"({add_period})"
205
+ # print(f"{add_period[:50]} ... {add_period[-50:]}")
206
+ add_period = re.compile(add_period)
207
+
208
+
209
+ def clean_text(text):
210
+ if len(text) > 1:
211
+ text = text.upper()
212
+ text = text.strip()
213
+ text = text.replace("`", "'")
214
+ text = removables.sub("", text)
215
+
216
+ text = in_text_periods.sub(". ", text)
217
+ text = square_brackets.sub("", text)
218
+
219
+ text = select_was.sub("IS", text)
220
+ text = select_were.sub("ARE", text)
221
+ text = select_and_or.sub("AND", text)
222
+ text = select_normally.sub("NORMAL", text)
223
+ text = select_mildly.sub("MILD", text)
224
+ text = select_moderately.sub("MODERATE", text)
225
+ text = select_severely.sub("SEVERE", text)
226
+ text = select_pa.sub("PA", text)
227
+ text = select_slash_dates.sub("", text)
228
+ text = select_dot_dates.sub("", text)
229
+ text = select_icd_codes.sub("", text)
230
+
231
+ text = space_before_unit.sub(r"\1", text)
232
+ text = space_period.sub(".", text)
233
+ text = multi_whitespace.sub(" ", text)
234
+
235
+ text = space_plus_space.sub("+", text)
236
+ text = verbose_pressure.sub("MMHG", text)
237
+
238
+ text = text.strip()
239
+ text = text + " "
240
+
241
+ text = add_period.sub(r"\1.", text)
242
+ text = multi_period.sub(".", text)
243
+
244
+ return text
245
+
246
+
247
+ select_severity = "|".join(
248
+ ["MODERATE/SEVERE", "MILD/MODERATE", "MILD", "MODERATE", "SEVERE", "VERY SEVERE"]
249
+ )
250
+ select_severity = f"((?<![A-Za-z])(?:{select_severity}))"
251
+ select_number = r"(\d+\.?\d*)"
252
+
253
+ select_variable = "|".join([select_number, select_severity])
254
+ # print(select_variable)
255
+ select_variable = re.compile(select_variable)
256
+
257
+
258
+ def extract_variables(string, replace_with="<#>"):
259
+ matches = select_variable.findall(string)
260
+ variables = []
261
+ for match in matches:
262
+ for variable in match:
263
+ if not len(variable) == 0:
264
+ variables.append(variable)
265
+ variables_replaced = select_variable.sub(replace_with, string)
266
+ return variables, variables_replaced
zero_shot_example.py ADDED
@@ -0,0 +1,102 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from open_clip import tokenize, create_model_and_transforms
2
+ import torchvision.transforms as T
3
+ import torch
4
+ import torch.nn.functional as F
5
+ from utils import (
6
+ zero_shot_prompts,
7
+ compute_binary_metric,
8
+ compute_regression_metric,
9
+ read_avi,
10
+ )
11
+
12
+ # You'll need to log in to the HuggingFace hub CLI to download the models
13
+ # You can do this with the terminal command "huggingface-cli login"
14
+ # You'll be asked to paste your HuggingFace API token, which you can find at https://huggingface.co/settings/token
15
+
16
+ # Use EchoCLIP for zero-shot tasks like ejection fraction prediction
17
+ # or pacemaker detection. It has a short context window because it
18
+ # uses the CLIP BPE tokenizer, so it can't process an entire report at once.
19
+ echo_clip, _, preprocess_val = create_model_and_transforms(
20
+ "hf-hub:mkaichristensen/echo-clip", precision="bf16"
21
+ )
22
+
23
+ # We'll use random noise in the shape of a 10-frame video in this example, but you can use any image
24
+ # We'll load a sample echo video and preprocess its frames.
25
+ test_video = read_avi(
26
+ "example_video.avi",
27
+ (224, 224),
28
+ )
29
+ test_video = torch.stack(
30
+ [preprocess_val(T.ToPILImage()(frame)) for frame in test_video], dim=0
31
+ )
32
+ test_video = test_video.cpu()
33
+ test_video = test_video.to(torch.bfloat16)
34
+
35
+ # Be sure to normalize the CLIP embedding after calculating it to make
36
+ # cosine similarity between embeddings easier to calculate.
37
+ test_video_embedding = F.normalize(echo_clip.encode_image(test_video), dim=-1)
38
+
39
+ # Add in a batch dimension because the zero-shot functions expect one
40
+ test_video_embedding = test_video_embedding.unsqueeze(0)
41
+
42
+
43
+ # To perform zero-shot prediction on our "echo" image, we'll need
44
+ # prompts that describe the task we want to perform. For example,
45
+ # to zero-shot detect pacemakers, we'll use the following prompts
46
+ pacemaker_prompts = zero_shot_prompts["pacemaker"]
47
+ print(pacemaker_prompts)
48
+
49
+ # We'll use the CLIP BPE tokenizer to tokenize the prompts
50
+ pacemaker_prompts = tokenize(pacemaker_prompts).cpu()
51
+ print(pacemaker_prompts)
52
+
53
+ # Now we can encode the prompts into embeddings
54
+ pacemaker_prompt_embeddings = F.normalize(
55
+ echo_clip.encode_text(pacemaker_prompts), dim=-1
56
+ )
57
+ print(pacemaker_prompt_embeddings.shape)
58
+
59
+ # Now we can compute the similarity between the video and the prompts
60
+ # to get a prediction for whether the video contains a pacemaker. It's
61
+ # important to note that this prediction is not calibrated, and can
62
+ # range from -1 to 1.
63
+ pacemaker_predictions = compute_binary_metric(
64
+ test_video_embedding, pacemaker_prompt_embeddings
65
+ )
66
+
67
+ # If we use a pacemaker detection threshold calibrated using its F1 score on
68
+ # our test set, we can get a proper true/false prediction prediction.
69
+ f1_calibrated_threshold = 0.298
70
+ print(f"Pacemaker detected: {pacemaker_predictions.item() > f1_calibrated_threshold}")
71
+
72
+
73
+ # We can also do the same thing for predicting continuous values,
74
+ # like ejection fraction. We'll use the following prompts for
75
+ # zero-shot ejection fraction prediction:
76
+ ejection_fraction_prompts = zero_shot_prompts["ejection_fraction"]
77
+ print(ejection_fraction_prompts)
78
+
79
+ # However, since ejection fraction can range between 0 and 100,
80
+ # we'll need to make 100 versions of each prompt.
81
+ prompts = []
82
+ prompt_values = []
83
+
84
+ for prompt in ejection_fraction_prompts:
85
+ for i in range(101):
86
+ prompts.append(prompt.replace("<#>", str(i)))
87
+ prompt_values.append(i)
88
+
89
+ ejection_fraction_prompts = prompts
90
+
91
+ # We'll once again tokenize and embed the prompts
92
+ ejection_fraction_prompts = tokenize(ejection_fraction_prompts).cpu()
93
+ ejection_fraction_embeddings = F.normalize(
94
+ echo_clip.encode_text(ejection_fraction_prompts), dim=-1
95
+ )
96
+
97
+ # And we'll compute the similarity between the image and the prompts
98
+ # to get a prediction for the ejection fraction.
99
+ ejection_fraction_predictions = compute_regression_metric(
100
+ test_video_embedding, ejection_fraction_embeddings, prompt_values
101
+ )
102
+ print(f"Predicted ejection fraction is {ejection_fraction_predictions.item():.1f}%")