【问题标题】:Extracting retina region from 2D images从二维图像中提取视网膜区域
【发布时间】:2019-11-12 01:28:58
【问题描述】:
我正在研究糖尿病视网膜病变检测。该数据库包含如下所示的 2D 图像:
现在,我想从图像中仅提取视网膜部分,以便最终图像看起来像这样:
我尝试过Canny 和HoughCircles,但都失败了。有没有办法使用OpenCv或scikit-image或PIL提取这个区域?
【问题讨论】:
标签:
opencv
image-processing
python-imaging-library
scikit-image
【解决方案1】:
由于前景如此明显,您可以使用简单的阈值来找到它,然后使用regionprops 得到您需要的裁剪:
from skimage import io, color, filters, measure
image = io.imread('https://i.stack.imgur.com/kKBiU.jpg')
grayscale = color.rgb2gray(image)
foreground = (grayscale > filters.threshold_otsu(grayscale)).astype(int)
foreground_properties = measure.regionprops(foreground)[0]
cropped = image[foreground_properties.slice]