我目前正在尝试从眼睛的图像中提取血管。到目前为止,我已经能够显示血管,但图像周围仍然有大量的噪音-似乎是盐和胡椒的噪音。我想试着突出显示更多的血管,这样只会出现它们。我目前在Python语言中使用OpenCV。
我尝试过使用不同类型的模糊,比如中间模糊。我也尝试了打开、关闭、扩张和侵蚀,但噪音仍然存在。我不确定下一步会是什么。
下面是我的代码:
r = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
threshold=cv2.adaptiveThreshold(r, 255, cv2.ADAPTIVE_THRESH_GAUSSIAN_C, cv2.THRESH_BINARY, 91, 2.)
ret,f6 = cv2.threshold(threshold,0,250,cv2.THRESH_BINARY)
morph_img = cv2.morphologyEx(f6, cv2.MORPH_CLOSE, kernel)
imagem = cv2.bitwise_not(morph_img)
imagem2 = cv2.bilateralFilter(imagem,9,55,55)
imagem3 = cv2.medianBlur(imagem2,5)
imagem3 = cv2.bilateralFilter(imagem3,7,55,55)
imagem3 = cv2.dilate(imagem3,kernel,iterations=5)
imagem3 = cv2.medianBlur(imagem3,5)
return imagem3我只想看看黑屏上的血管。它需要让血管也是连续的。
这是我能够生成的当前图像:

原始图像

发布于 2019-06-18 03:36:07
让我猜猜青光眼检测?我认为对于一个特定的任务,你必须找到合适的方法的特定的论文
adaptiveThreshold可能不是一个好的选择。考虑其他方法的变化,如以干净的黑白血管作为共同图的共同分割。或活动轮廓模型或变分能量模型。其他的更常用于这类分割工作中。
如果你只是想要一些后处理过滤器。如您所说,对于盐和纸张噪声,通常应采用非线性滤波器,如中值滤波器
最近有一个指导过滤器,它应该对你的情况也有帮助。您可以定义您的指南。但我怀疑这是后处理过滤器问题。很有可能你的原始分割结果真的非常糟糕

去谷歌搜索ASTAR青光眼检测分割,你会有一系列的论文可以遵循。他们告诉我,至少在2014年,ASTAR是这一系列研究工作的带头人。我像在2012-2014年一样参加了他们的讲座。过了这么久,我也没再做这件事。当时他们使用的是活动轮廓模型,如Snake能量函数。现在他们正在转向基于纯深度学习的方法。您可以联系他们获取试用版源代码。
深度学习是一种更简单的方法,只需提供输入和您想要的东西。它可以为你带来。开始时,您可以从Vgg16开始,然后慢慢改进。
祝你好运,并享受图像分割的乐趣。
https://stackoverflow.com/questions/56637518
复制相似问题