【图像分割】基于粒子群算法实现图像聚类分割附matlab代码
1 內容介紹
基于粒子群優化的改進模糊聚類圖像分割算法將微粒群搜索聚類中心作為圖像分割的聚類初值,克服了FCM分割算法對聚類中心初值敏感的缺點,大幅提高了圖像分割算法的計算速度。改進的模糊聚類圖像分割算法,一方面考慮到像素的空間位置信息和相互鄰域之間像素有很大的相關性,在目標函數中引入鄰域懲罰函數;另一方面提出聚類在二維方向上進行更新的思想,建立了包含鄰域單元熵的新聚類目標函數。實驗結果表明,該方法可以使模糊聚類的速度得到明顯提高,對初始聚類中心不敏感,抗噪能力強,是一種有效的模糊聚類圖像分割方法。?
2 仿真代碼
clc;
clear;
close all;
%% Problem Definition
img= double(imread('test.png'));
[s1,s2,s3]=size(img);
Rplane = img(:,:,1);
Gplane = img(:,:,2);
Bplane = img(:,:,3);
X1 = (Rplane-min(Rplane(:)))/(max(Rplane(:))-min(Rplane(:)));
X2 = (Gplane-min(Gplane(:)))/(max(Gplane(:))-min(Gplane(:)));
X3 = (Bplane-min(Bplane(:)))/(max(Bplane(:))-min(Bplane(:)));
% taking R-plane, B-plane, G-plane values as features
X = [X1(:) X2(:) X3(:)];
k = 4; % no. of clusters
CostFunction=@(m) ClusteringCost2(m, X); % Cost Funct
總結
以上是生活随笔為你收集整理的【图像分割】基于粒子群算法实现图像聚类分割附matlab代码的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2020 中兴java面试笔试题 (含面
- 下一篇: linux命令 查看分辨率,Linux