fusion.m

来自「Fusion algorithm example to split a pict」· M 代码 · 共 28 行

M
28
字号
function res=fusion(img,labels,seuil)
    res = labels;
    
    imgR = img(:,:,1);
    imgV = img(:,:,2);
    imgB = img(:,:,3);
    
    k = 0;
    ancienRes = zeros(size(labels));
    while any(ancienRes ~= res)
        ancienRes = res;
        adj = adjascence(res);
        taille = size(adj);
        for i=1:taille(1),
            for j=1:taille(1),
                if adj(i,j) >= 1,
                    diffR = abs(mean(imgR(ancienRes == i)) - mean(imgR(ancienRes == j)));
                    diffV = abs(mean(imgV(ancienRes == i)) - mean(imgV(ancienRes == j)));
                    diffB = abs(mean(imgB(ancienRes == i)) - mean(imgB(ancienRes == j)));
                    if diffR < seuil && diffV < seuil && diffB < seuil,
                        subRes = res(ancienRes == i);
                        res(ancienRes == j) = subRes(1,1);   
                    end
                end
            end
        end
        k = k + 1
    end

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?