MATLAB环境下基于距离正则化水平集演化方法的图像分割

水平集图像分割方法实际上是基于曲线演化理论的一种数学方法在图像上的表示,能够处理曲线的拓扑结构变化,而且其数值实现的稳定性高,医学超声图像由于其成像原理一般会具有较高的斑点噪声并且一些区域存在对比度低的情况。传统的图像分割算法并不能在医学图像分割中取得良好的表现,虽然基于深度学习和神经网络的图像分割方法相较于其他方法虽然具有不错的鲁棒性强和分割效率,但是该类算法最重要的一个环节是需要大量的数据对算法进行预训练,而医学超声图像的获取是一个巨大的问题,基于水平集的分割方法没有这些顾虑。他可以将图像的统计信息和梯度信息等都揉进分割的框架中。基于此优势,很多基于水平集方法的图像分割算法被提出并运用到不同类型的超声图像分割中。

医学超声图像结合了声学、光学、电子学和医学技术,存在边界不清晰,对比度低,噪声大的弊端。由于超声成像技术的局限性,传统的图像分割算法并不能在医学超声图像分割中取得良好的表现,水平集图像分割算法将图像特征信息和一些先验知识融入到分割框架中得到不错的效果,距离正则化水平集演化方法模型补充了距离正则化项保证了零水平集临近区域的规则化,它在保持分割曲线的光滑性的同时可以不用再周期性的初始化。同时利用长度项和面积项驱动轮廓曲线的收敛,让水平集在演化过程中可以使用更自由的初始化方式和更有效稳定的数值实现方案。

基于此,本代码采用距离正则化水平集演化算法进行图像分割,程序运行环境为MATLAB R2018a,部分代码如下:

close all; clc;
im_rgb = im2double(imread('DRIVE/Test/images/03_test.tif'));

im_mask = im_rgb(:,:,2) > (20/255); % Extract green channel
im_mask = double(imerode(im_mask, strel('disk',3)));

figure
subplot(2,2,1),imshow(im_rgb),title('general image');
subplot(2,2,2),imshow(im_mask),title('Mask after erosion');

im_green = im_rgb(:,:,2);
subplot(2,2,3),imshow(im_green),title('Green Channel')

出图如下:

工学博士,担任《Mechanical System and Signal Processing》审稿专家,担任
《中国电机工程学报》优秀审稿专家,《控制与决策》,《系统工程与电子技术》,《电力系统保护与控制》,《宇航学报》等EI期刊审稿专家。

擅长领域:现代信号处理,机器学习,深度学习,数字孪生,时间序列分析,设备缺陷检测、设备异常检测、设备智能故障诊断与健康管理PHM等。

相关推荐
liu_chunhai13 分钟前
设计模式(3)builder
java·开发语言·设计模式
Mr.D学长18 分钟前
毕业设计 深度学习社交距离检测系统(源码+论文)
python·毕业设计·毕设
姜学迁21 分钟前
Rust-枚举
开发语言·后端·rust
wdxylb22 分钟前
解决Python使用Selenium 时遇到网页 <body> 划不动的问题
python
冷白白22 分钟前
【C++】C++对象初探及友元
c语言·开发语言·c++·算法
凌云行者27 分钟前
rust的迭代器方法——collect
开发语言·rust
代码骑士29 分钟前
【一起学NLP】Chapter3-使用神经网络解决问题
python·神经网络·自然语言处理
It'sMyGo30 分钟前
Javascript数组研究09_Array.prototype[Symbol.unscopables]
开发语言·javascript·原型模式
睡觉然后上课41 分钟前
c基础面试题
c语言·开发语言·c++·面试
可惜已不在44 分钟前
AI 搜索引擎工具集合
人工智能·ai