itk Fast Marching输出

时间:2014-06-30 10:46:57

标签: c++ image-processing itk

我使用itk进行一些预处理,我想用Fast Marching过滤器和Geodesic Active Contour过滤器测试一些东西。 我遵循ITK软件指南第9.3.3节(http://www.itk.org/ItkSoftwareGuide.pdf)中描述的算法。 但是,我没有得到预期的结果。我正在使用3D图像。

您可以看到我的代码here

我使用this paper中描述的指标,其目标与我的相同。

我有几个问题:

  1. 快速行进过滤器应输出距离图吗?相反,当我将音量输出到png系列(值0到4095之间)时,我有一个二进制图像(像素为0或4095)。我想我应该得到一个灰度音量,表示从种子中获得每个像素所需的时间。
  2. 按照Suzuki描述的程序,我成功地使算法工作,但是我改变了测地线滤波器的参数值。我不记得确切的值,但它并不接近文章中描述的那些。当我们正在处理在0和1之间归一化的sigmoid输入时,会发生什么?
  3. 我是否应该使用恒速功能来快速行进滤波器或S形图像?什么时候应该首选哪种方法?
  4. 我使用重新缩放器输出浮动图像(从滤镜输出)。这可能是我看到的不一致的原因吗?
  5. 关于我可能做错的任何建议?
  6. 感谢。

1 个答案:

答案 0 :(得分:2)

好的,我发现了我的问题。快速行进过滤器确实输出时间交叉图(距离图),但是当我在算法中指定一个停止值时,所有未被访问的像素都具有较高的值(1.7e + 38,因为它是最大值的一半)用于输出图像的类型,在我的情况下是浮动的3.4e + 38)。因此,当我使用rescale滤镜时,它会压缩我的所有图像动态,结果是二进制图像。 我认为使用S形图像作为快速行进滤波器的输入可以获得更好的结果。 感谢@nav的建议。