【发布时间】:2020-01-04 06:19:43
【问题描述】:
我有眼底图像,这些图像是已经处理过的视网膜图片,我正在观察并尝试使用形态学侵蚀去除较小的血管。这似乎在我读过的几篇论文中都有效,但没有包括确切运算符的详细信息。
我尝试了各种方法,形态打开,形态侵蚀然后关闭,我做了一点点命中或未命中。我所有的工作都是使用 openCV2 python 库完成的。
这是原图。
def erode(image):
kernel = cv2.getStructuringElement(cv2.MORPH_ELLIPSE, (3,2))
erosion = cv2.morphologyEx(image, cv2.MORPH_OPEN, kernel, iterations=1)
erosion = cv2.erode(erosion, kernel, iterations=1)
return erosion
形态侵蚀开裂后:
我希望去除更多的血管,同时保留较粗的血管,有没有人有什么好主意让我试试?或者我可能不正确地接近形态?
【问题讨论】:
-
你如何定义“噪音”?侵蚀做一种特定的数学运算,它不会创造。它确实会留下一些您不想要的像素,您可以将其移除。
-
例如,您可以在腐蚀之后和匹配膨胀之前删除小的连接组件。这将是一种开口,在这种情况下可能比您尝试过的结构开口更好。
-
在侵蚀到您可以容忍的极限后,使用等高线找到并去除小的残留物。
-
我可能应该措辞更好,我的意思是它会通过留下我不想要的像素来引起噪音。 @CrisLuengo,我将如何删除那些较小的连接组件? fmw42 您是否有任何资源来说明如何做到这一点,因为这是我第一次听到这个建议。
-
使用区域开口移除小的连接组件。
标签: python opencv image-processing computer-vision image-morphology