资源简介
区域生长(region growing)是指将成组的像素或区域发展成更大区域的过程。从种子点的集合开始,从这些点的区域增长是通过将与每个种子点有相似属性像强度、灰度级、纹理颜色等的相邻像素合并到此区域。
代码片段和文件信息
function [ROI]=compute_roi(strimg)
[XYZ]=size(img);
% slice=floor(Z/2);
slice=70;
gausFilter = fspecial(‘gaussian‘);
I = imfilter(imggausFilter);
A=I(::slice);
figure(1)imshow(A[])
[yx]=getpts; %获得区域生长起始点
xx=round(x); %横坐标取整
yy=round(y); %纵坐标取整
zz=slice*ones(size(x));
for i=1:length(xx)
seed(i)=I(xx(i)yy(i)zz(i)); %将生长起始点灰度值存入seed中
end
ROI=zeros(XYZ); %作一个全零与原图像等大的图像矩阵Y,作为输出图像矩阵
ROI(xxyyzz)=1; %将Y中与所取点相对应位置的点设置为白场
sum=seed; %储存符合区域生长条件的点的灰度值的和
suit=1; %储存符合区域生长条件的点的个数
count=1; %记录每次判断一点周围八点符合条件的新点的数目
threshold1=100; %域值
threshold2=400;
while count>0
s=0; %记录判断一点周围点时,符合条件的新点的灰度值之和
count=0;
for i=1:X
for j=1:Y
for k=1:Z
if ROI(ijk)==1
if (i-1)>0 && (i+1)<(X+1) && (j-1)>0 && (j+1)<(Y+1) && (k-1)>0 && (k+1)<(Z+1) %判断此点是否为图像边界上的点
for u= -1:1 %判断点周围八点是否符合域值条件
for v= -1:1 %uv为偏移量
for w=-1:1
if ROI(i+uj+vk+w)==0 & abs(I(i+uj+vk+w)-seed)<=threshold1 & abs(I(i+uj+vk+w)-I(ijk))<=threshold2%判断是否未存在于输出矩阵Y,并且为符合域值条件的点
ROI(i+uj+vk+w)=1; %符合以上两条件即将其在Y中与之位置对应的点设置为白场
count=count+1;
s=s+I(i+uj+vk+w); %此点的灰度之加入s中
end
end
end
end
end
end
end
end
end
suit=suit+count; %将n加入符合点数计数器中
sum=sum+s; %将s加入符合点的灰度值总合中
seed=sum/suit; %计算新的灰度平均值
figure(2);
imshow(ROI(::slice))title(‘分割后图像‘)
end
roi=make_nii(ROI);
save_nii(roi[str(1:end-4)‘_roi300.nii‘]);
R=zeros(XYZ);
for i=1:Z
R(::i)=imfill(ROI(::i)‘holes‘);
end
r=make_nii(R);
save_nii(r[str(1:end-4)‘_fill300.nii‘]);
end
% J = zeros(size(I)); % 主函数的返回值,记录区域生长所得到的区域
% Isizes = size(I);
%
% reg_size = 1;%分割的到的区域,初始化只有种子点一个
% neg_free = 10000; %动态
- 上一篇:Simuli
nk FFT模块 - 下一篇:最短路径的matlab程序
相关资源
- matlab绘制三维图
- 基于体绘制的头部三维重建,并用m
- 多维压缩感知中三维图像处理Matlab
- matlab读入三维点云数据斯坦福兔子
- 六自由度机械臂三维仿真程序完整版
- GRD格式的DEM文件读取写入Matlab程序.
- 三维重建-matlab
- 基于区域生长法的图像分割matlab程序
- 三维定位chan_taylor
- 三维重建代码
- matlab 三维 物体 运动 仿真
- 三维网格地形图和多个点构成的路径
- Matlab三维点云法向量与特征值的简易
- 头部CTmatlab三维重建源代码.rar
- 在Matlab中实现三维立方体的绘制
- 利用时域有限差分FDTD仿真三维3D电磁
- matlab三维空间中画圆柱
- 区域生长图像分割-MATLAB程序,注释比
- 三维重建 网格交叉点的提取 MATLAB程序
- Matlab语言进行摄像机模拟并对三维物
- ToF三维点云重建
- 生成地质体三维建模理论模型MATLAB
- 区域生长分割matlab实现
- 血管的三维重建
- 基于Matlab的区域生长法分割图像
- 三维天线方向图matlab源代码
- 基于Matlab的数据处理与三维模拟
- Matlab 鼠标抓取三维点坐标
- 两个三维图像互信息计算
-
Matlab Simuli
nk三维图形显示模块
评论
共有 条评论