【问题标题】:Image segmentation on blood vessels in pythonpython中血管的图像分割
【发布时间】:2017-11-28 10:01:17
【问题描述】:

所以我正在尝试制作一个函数,作为我数学课程的一部分,分割出眼球的部分血管,但是无论我输入什么阈值,我都会得到相同的结果,所以我认为我必须在以下代码中做了一些非常错误的事情:

def threshold_image(retina, threshold):
  tImage = retina
  for pixel in tImage.shape:
    if pixel <=threshold:
      pixel=1
    else:
      pixel=0
  return tImage

img2 = threshold_image(img, 3)
io.imshow(img2, cmap=cm.Greys_r)
plt.show()

我的计划是,做一个遍历图片每个像素的函数,然后应用阈值,如果超过阈值,像素将变为 0(黑色),如果在阈值之内,则为 1(白色)。但是,我目前只是得到了我给它的相同图片

【问题讨论】:

标签: python-3.x computer-vision data-modeling image-segmentation


【解决方案1】:

您正在对tImage.shape 进行迭代:您的pixel 仅获得图像的两个值hw。您不是在迭代像素本身。

试试:

for pixel in tImage:
  pixel = 0 if pixel > thr else 1

当你在做的时候,简单的有什么问题

tImage = img < threshold

【讨论】:

    最近更新 更多