Matlab Implementation for LV Myocardial Effusion Threshold Reduction with Intravoxel Computation (LV-METRIC) developed by Yi Wang's lab at Cornell MRI Research lab.
This is not the official code for reproducing the results of paper. Yun developed the codes by reading and following the description in the paper.
Left ventricle: automated segmentation by using myocardial effusion threshold reduction and intravoxel computation at MR imaging.https://www.ncbi.nlm.nih.gov/pubmed/18710989.
The LV of input image will be identified automatically.
The center (seed) of LV can be either manually picked up or automatically inferred by performing Hough Transform.
Here Hough Transform was performed. Top 2 possible candidates are shown as dashed blue circles and only "best" circle is for generating seed (shown as red dot).
The average and s.t.d. of "blood" region (brighter) intensities are calculated (e.g. 180 is mean).
Still starting from the same seed, the program attempts to find threshold which can identify the boundary between the peripheral myocardial region and inner blood region.
In this example, the ratio between blood mean and threshold has a spike value of 3.0, which further approximately suggests the average intensity of peripheral myocardial region, e.g. 180/3.0=60.
The inferred myocardial region is shown as figure below and the s.t.d. is calculated.
The intensity distribution of region surrounded by above myocardial line is:
Run LV_METRIC.m
in Matlab. But first 1) modify the script to change the input image filename and 2) choose your method to set seed ('manual' or 'hough').
- The built-in function
ginput(1)
of Matlab enables users select seed point by GUI; - The built-in function
imfindcircles
of Matlab performs circular Hough transform so that circle-like ventricles can be found given the hypothesis that LV in captured image is in circle-like shape. If none circles are found by Hough transform, codes will force users to turn to the first method described as above.
Note: only one seed is allowed to select. More than one seeds are not making sense in human anatomy.
See edge_based_region_growth.m
.
See threshold_based_region_growth.m
, explore_LV_region.m
, and fetch_LV_region.m
.
See mask_figure.m
for highlighting blood, myocardial, and ventricle regions/edges on original gray-scaled image.