医学图像处理案例(十三)

您所在的位置:网站首页 snake算法图像分割 医学图像处理案例(十三)

医学图像处理案例(十三)

2023-03-12 05:16| 来源: 网络整理| 查看: 265

今天将分享使用快速行进算法(FastMarching)对医学图像分割案例。

1、FastMarching简介

快速行进方法(FastMarching)是水平集演化方法的一种简化形式,其仅使用正速度项来控制微分方程,生成的水平集轮廓随着时间增长。在实际中,FastMarching算法可以看作是由速度图像控制的高级区域增长分割方法。该算法具体推导请参考原文连接。

2、使用SimpleITK函数来实现FastMarching分割算法

用FastMarching算法分割有5个步骤:(1)、首先使用各向异性扩散方法对输入图像进行平滑处理;(2)、其次对平滑后的图像进行梯度计算,生成边缘图像,在梯度计算过程中可调节高斯sigma参数,来控制水平集减速到接近边缘;(3)、然后使用逻辑回归(Sigmoid)函数对边缘图像进行线性变换,保证边界接区域近零,平坦区域接近1,回归可调参数有alpha和beta;(4)、接着手动设置置FastMarching算法的初始种子点和起始值,该种子点是水平集的起始位置。FastMarching的输出是时间跨度图,表示传播的水平集面到达的时间;(5)、最后通过阈值方法将FastMarching结果限制在水平集面传播区域而形成分割的区域。

该例子既可以在C++中使用,也可以在Python中使用,下面将给出C++和Python的使用例子代码。

C++代码:

*========================================================================= // This example is based on ITK's FastMarchingImageFilter.cxx example #include #include #include #include namespace sitk = itk::simple; int main(int argc, char *argv[]) { if ( argc < 10 ) { std::cerr


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3