计划:怎样理解水平集方法 ITK Level set V4 框架介绍
简易解释:在曲面中插入一个平面所形成的轮廓,即是该轮廓的水平集表示,可见,该轮廓的水平集表示有多个。对于图像分割,在图像力的驱动下曲面进行更新。
轮廓的数学表达有隐式和显式两种表达。用曲面演化代替Front (C)演进。
C(t) = {(x, y)|φ(x, y, t) = 0}
∂φ/ ∂t + F|∇φ| =0 (1)
φ(x, y, 0) = φ0(x, y) 方程的本质是什么? 几何解释是什么
edge-based level set
∂φ /∂t = g(∇I)|∇φ| (div ( ∇φ /|∇φ| _ + ν ) (2)
φ(x, y, 0) = φ0(x, y) based on mean curvature motion by Caselles et 1993
∂φ /∂t = |∇φ| (−ν + ν/ (M1 − M2) )(|∇G∗I| − M2) (3)
φ(x, y, 0) = φ0(x, y) Malladi et 1993
∂φ /∂t = |∇φ|div (g(I) ∇φ /|∇φ| _ + νg(|∇I|) = g(I)|∇φ|div (
∇φ /|∇φ| _+∇g(I) · ∇φ + νg(|∇I|)
φ(x, y, 0) = φ0(x, y)
(4) Kichenassamy et 1995 and Caselles et 1995
An abstract representation common to all edge-based partial differential equation(PDE) is as follows:
∂φ /∂t = −αA(x) · ∇φ − βP(x)|∇φ| + γZ(x)κ|∇φ| (5)
φ(x, y, 0) = φ0(x, y) A is an advection term ; P is a propagation(expansion) term ; Z is a spatial modifier term for the mean curvature k.
region-based level-sets
Region-based level-sets segment the image into objects based on region statistics (rather than just object edges) of intensity, tex- ture, or color values.
F(c1, c2, φ) =
Inside(C)
(I(x) − c1)2dx +
Outside(C)
(I(x) − c2)2dx + ν · Area(C) +μ · Length(C) (6)
by Chan and Vese 2001
3.1 DOMAIN REPRESENTATION …… 不懂
3.2 水平集函数
定义了一个抽象的水平集函数基类 itk::LevelSetBase
所有的水平集函数类实现具体的成员函数返回the level-set value [φ(x,y)], gradient(∇φ),Hessian(∇
2
φ),Laplacian(φ xx + φ
yy ),gradient norm(|∇φ|), and mean curvature (κ = div(∇φ/|∇φ| )) given its underlying representation (continuous or discrete image or mesh). Thus,the level-set equation, term, and evolution classes are independent of the underlying domain representation which facilitates the implementation of a wide variety of level-set methods.
图像的离散化表示itk::DiscreteLevlSetImage 被具体实现为Dense 和Sparse 情况。三种Sparse的表示:Whitaker 、Shif、Malcolm。(narrow-band)
3.2.1图像到水平集转换 BinaryImageToLevelSetAdaptorbase
3.3RESTRICTED LEVEL-SET DOMAINS 限制水平集域
在图像子集域内进行水平集演化,划分成不同子域。 A helper base class (LevelSetDomainPartitionBase) is used to define the location and size of the level-set domains relative to Ὼ (Figure3A).
Each grid point stores a list of the active level-set function ids. For the case when there are thousands of level-sets, populating a list image by checking overlap at each pixel is time-consuming. Therefore, we further specialized into a class itk::LevelSetDomainPartitionImageWithKdTree. This class uses a Kd-tree data structure that contains the centroids of the level-set domains. The Kd- tree is used to query nearby level-set functions at each pixel and check for overlap.This enables the simultaneous evolution of thousands of level-set functions thereby expanding the applicability of level-set procedures to tracking large numbers of objects and in large images. Note that there is an initial overhead associated with building the Kd-tree that can be avoided for cases involving a small number of level-set functions.
3.4 terms
水平集方程是各项的加权和。The term base class implements functions [Evaluate(.)] for computing the contribution from a term toward the level-set update.
3.5 container-based design
Container 是什么?
Different types of terms arising from edge-based and region-based level-set methods such as the propaga-
tion, Laplacian, advection, curvature, and region-based terms described in Equations 4 and 7 derive directly from LevelSetEquationTermBase:
we used containers to store level-set function objects, equation objects, and their constitutive terms。
Leve-set container term containers level-set equation container
3.6 Level-set evolution
3.7 stopping criterion
itk::StoppingCriterionBase
3.8 user-interaction
3.9 visualization
最新文章
- 【一起学OpenFOAM】03 OpenFOAM基本使用流程
- 财务报表 >; 现金流表的直接法,间接法,Cash Flow from Operating Activites
- Linux 本人常用到的基本命令
- 如何在不同编程语言中获取现在的Unix时间戳(Unix timestamp)
- shell 控制输出格式 echo printf
- eclipse&;android的环境搭建
- html块级元素和内联元素小结
- 【HDOJ】2102 A计划
- mysql 数据库 简单存储过程游标使用
- java设计模式(2)---六大原则
- jquery中ajax使用
- CentOS7 安装 Tomcat8
- gradle文件中自定义字段值在java代码中使用
- RTTI和反射小结
- 命令实现linux和客户端文件上传下载
- Spring Cloud 入门教程(九): 路由网关zuul
- FZU - 1688 Binary land
- 记录片宇宙之the secret of the sun
- suffix array后缀数组
- 结对编程——paperOne基于java的四则运算 功能改进
热门文章
- freeCodeCamp:Search and Replace
- JavaScript--DOM基础(19)
- 解决方案:Default Activity Not Found !
- php学习笔记3--php中获取时间与实际时间不符
- java创建Date日期时间笔记
- hdu 3665 Seaside floyd+超级汇点
- SAP存货账龄分析之库存获取
- Base64加密
- 《CDN web加速代理》RHEL6
- ADO.NET笔记——使用Connection连接数据库,使用Command对象的ExecuteReader()方法创建DataReader对象返回多行数据