【模糊C均值】基于matlab两个图像输入模糊C+-均值图像分割源码

该博客介绍了如何利用Matlab进行Fuzzy C-means(FCM)聚类,将两种不同的医学图像(GADO和AXIAL FLAIR)作为输入进行图像分割。通过调整像素值,将像素分配到7个不同的类别中,最终生成一个新的融合图像。这个过程对于医学影像分析和图像处理研究具有重要意义。
摘要由CSDN通过智能技术生成

% This Matlab script illustrate how to use two images as input for FCM segmentation

clc
clear all


%Load GADO image
info = imfinfo('GADOimage.jpg');
I = im2double(imread('GADOimage','jpg'));
I = imadjust(I);


%Load AXIAL FLAIR image
info2 = imfinfo('FLAIRimage.jpg');
I2 = im2double(imread('FLAIRimage','jpg'));
I2 = imadjust(I);

figure;imshow(I,[]);impixelinfo; % Show Image I
  
data = [I(:) I2(:)]; % data array


[center,U,obj_fcn] = fcm(data,7); % Fuzzy C-means classification with 7 classes
         
% Finding the pixels for each class
maxU = max(U);
index1 = find(U(1,:) == maxU);
index2 = find(U(2,:) == maxU);
index3 = find(U(3,:) == maxU);
index4 = find(U(4,:) == maxU);
index5 = find(U(5,:) == maxU);
index6 = find(U(6,:) == maxU);
index7 = find(U(7,:) == maxU);
 
% Assigning pixel to each class by giving them a specific value
fcmImage(1:length(data))=0;       
fcmImage(index1)= 1;
fcmImage(index2)= 0.8;
fcmImage(index3)= 0.6;
fcmImage(index4)= 0.4;
fcmImage(index5)= 0.2;
fcmImage(index6)= 0.1;
fcmImage(index7)= 0.0;

% Reshapeing the array to a image
imagNew = reshape(fcmImage,512,512);
figure;imshow(imagNew,[]);impixelinfo;

B15

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

fpga和matlab

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值