Snake算法

snake是一种主动轮廓模型,主动轮廓模型目前用到了2种:CV和snake。snake在逐步迭代优化过程的目标是能量函数最小化,snake的目标不像sobel、canny等找到整张图的轮廓。它只搜索你给出的初始轮廓附近,达到轮廓更精确的目标,至少原版的snake只能达到局部优化的目标。

因为曲线曲率的关系,闭合的轮廓曲线中,凸曲线按照法向量的方向,具有向内的作用力;凹曲线法向量向外,具有向外的力。而曲率计算就是跟一阶导数、二阶导数相关的。

在迭代过程中,弹性能量能快速的把轮廓压缩成光滑的圆;弯曲能量将轮廓拉成光滑的曲线或直线,他们的作用是保持轮廓的光滑和连续性。通常alpha越大,轮廓收敛越快;beta越大,轮廓越光滑。

通常梯度高的位置都是图像中前景与背景的界限或者物体与物体之间、物体内部不同部分的界限,适合用于分割。外部能量会使轮廓朝(灰度)高梯度位置靠近。

Snake目前主流的图像分割方法,曲线演化理论如下图,曲线存在曲率,曲率有正有负,于是在法向曲率力的推动下,曲线的运动方向之间有所不同:有些部分朝外扩展,而有些部分则朝内运动。这种情形如下图所示。图中蓝色箭头处的曲率为负,而绿色箭头处的曲率为正。

粗略表示为Esnake=Vs+Vss+Eext;可以认为当Esnake的能量达到最小时snake曲线和物体的边缘一致。

Snake主要原理是先提供待分割图像的一个初始轮廓的位置,并对其定义个能量函数,是轮廓沿能量降低的方向靠近。当能量函数达到最小的时候,提供的初始轮廓收敛到图形中目标的真实轮廓。

Snake能量函数是有内部能量函数和外部能量函数组成,内部能量控制轮廓的平滑性和连续性,外部能量由图像能量和约束能量组成,控制轮廓向着实际轮廓收敛,其中约束能量可根据具体的对象形态定义,使得snake具有很大的灵活性。

Snake模型主要研究的方面:

1.表示内部能量的曲线演化    2.外力    3.能量最小化

由于snake模型对于初始位置比较敏感,因此要求初始轮廓尽可能的靠近真实轮廓,而当图像边缘模糊,目标比较复杂或与其他的物体靠的比较近时,其初始轮廓更不易确定。

应用snake的优势:由于生物或人体组织解剖结构的复杂性,以及软组织形状的易变性,那些仅依赖于图像本身的灰度,纹理属性等低层次视觉属性来进行分割的图像分割方法难以获得理想的分割效果,因此医学图像分割迫切需要有一种灵活的框架,能将基于图像本身低层次视觉属性(边缘,纹理,灰度,色彩)和人们对于待分割目标的知识经验,如目标形状的描述,亮度,色彩的经验统计,医生的经验等,可以一种有机的方式整合起来,得到待分割区域的完整表达。

Snake算法知识点记录相关推荐

  1. 【算法笔记题解】《算法笔记知识点记录》第三章——入门模拟1——简单模拟

    如果喜欢大家还希望给个收藏点赞呀0.0 相关知识点大家没基础的还是要看一下的,链接: <算法笔记知识点记录>第三章--入门模拟 由于放原题的话文章实在太长,所以题多的话我只放思路和题解,大 ...

  2. 学习IPPS库的编码部分知识点记录

    学习IPPS库的编码部分知识点记录 1.哈夫曼编码 相关函数 IppStatus ippsDeflateHuff_8u(const Ipp8u *pLitSrc, const Ipp16u *pDis ...

  3. C++部分知识点记录

    文章目录 反问 为什么想要加入国微芯? 自己的优势/岗位匹配度在哪? EDA(电子设计自动化) 前言 <C++ Primer>知识点记录 1.声明一个返回数组指针的函数(P205) 2.头 ...

  4. javaweb基础知识点记录2

    javaweb基础知识点记录 1.在service方法中,首先获得请求的方法名,然后根据方法名调用对应的doXXXX方法,比如说请求参数为GET,那么就会去调用doGet方法,请求参数为POST,那么 ...

  5. javaweb基础知识点记录1

    javaweb基础知识点记录 1.当我们通过在浏览器的输入栏中直接输入网址的方式访问网页的时候,浏览器采用的就是GET方法向服务器获取资源. 2.我们可以将Servlet看做是嵌套了HTML代码的ja ...

  6. 【面试复习系列】常用机器学习算法知识点及其解析,面试官会考的几乎都有,欢迎补充

    图片慢慢上传,看不到图片的请点这里: 常用机器学习算法知识点及其解析,面试官会考的几乎都有 LR:logistic regression  对数几率回归/逻辑回归 sigmoid函数的作用就是用于把输 ...

  7. 中括号 上面 缺一横 下面缺一横 不大于 不小于 算法知识点

    算法知识点 取底符号 ⌊ x ⌋ 上面缺一横: 不大于x的最大整数. 『x 下面缺一横: 不小于x的最小整数『x

  8. 毕业论文知识点记录(四)——MaxEnt模型

    毕业论文知识点记录(四)--MaxEnt模型 0 序言 经过了几次文章分享,数据已经准备得差不多了,师姐说可以先利用现有数据跑一个结果,然后再逐步增加想要的环境数据,改善结果. 另外,谨记师姐的一句话 ...

  9. SpringMVC知识点记录

    SpringMVC知识点记录 1. SpringMVC简介 2. 入门案例 3. @RequestMapping注解 3.1 @RequestMapping注解的功能 3.2 @RequestMapp ...

  10. 毕业论文知识点记录(六)——基于R语言优化maxent模型

    毕业论文知识点记录(六)--基于R语言优化maxent模型 第一步:R安装 这个网上都有很多详细的步骤,就不再详细介绍了. 第二步:R安装包 因为优化maxent模型需要用到kuenm程序包,但是官网 ...

最新文章

  1. list循环赋值_一步一步学Python3(小学生也适用) 第十七篇:循环语句for in循环
  2. Qt入门(10)——调试技术
  3. 如何避免form提交进行页面跳转
  4. linux和windows文件名称长度限制
  5. Service Broker in SAP Gateway and Kubernetes
  6. 惠普电脑怎么截屏_惠普(HP)暗影精灵6游戏台式电脑主机怎么样?配置和使用体验测评-最新资讯...
  7. 路由器的地址转换功能
  8. docker基础2--镜像基本操作
  9. 51nod 1022 石子归并 V2(四边形不等式)
  10. 数据库sql 四种语言DDL DML DCL DQL 基本语法
  11. 计算机组成原理——计算机的工作过程
  12. (五)作业Job和实例Instance | 普罗米修斯(Prometheus)
  13. 斯坦福 计算机音乐 访问学者,韩宝强
  14. 数组中重复的元素(剑指Offe.03)
  15. SQL Server 数据库修复专家SQLRescue
  16. 6年等来的Win11,果里果气…兼容安卓App这是躺平了?
  17. 攻防世界-MISC之如来十三掌
  18. python 解析excel表并排重输出到txt
  19. FCM公式详细推及代码
  20. 渲染单色_均质单色ui设计有什么问题

热门文章

  1. 软件概要设计说明书—模板
  2. “华为杯”——中国研究生数学建模大赛相关解读及LaTeX模版、算法、真题、优秀论文等相关资源分享(超详细)
  3. spring mybatis 各版本源码下载地址
  4. Java jdk 1.8版本安装包
  5. linux下执行efi文件,在Linux下创建EFI BIOS Grub加载分区
  6. java求职英文简历范本2篇_JAVA英文求职简历范文
  7. HFSS - WLAN双频单极子天线设计与仿真
  8. 大数据时代移动营销的十大趋势
  9. Axure RP最新授权码
  10. 【菜鸡的LeetCode答案】【C#】7.反转整数