• 【图像分割】基于布谷鸟算法实现二维Tsallis熵、kapur、oust多阈值图像分割附matlab代码


    1 内容介绍

    本文介绍了一种基于布谷鸟算法的多级阈值(MT)算法。布谷鸟优化算法[CuckooSearch (CS)],也叫杜鹃搜索,是智能算法的其中一种,于2009年由剑桥大学Xin-SheYang和DEBSuash提出。CS算法是一种新颖的群体智能算法,其通过模拟某些种属布谷鸟的寻窝产卵的行为来有效地求解最优化问题。提出基于改进布谷鸟搜索算法的二维Tsallis熵、kapur、oust多阈值图像分割方法

    2 仿真代码

    function [Iout,bestnest,fmax,time]=CSMC_tsallis(n)

    tic;

    if nargin<1,

    % Number of nests (or different solutions)

    n=25;%(i.e cuckoos( new solution) can lay eggs in any of these n nest)

    end

    % Discovery rate of alien eggs/solutions

    pa=0.5;%(how well the host birdscan detect alian eggs)

    %% Change this if you want to get better results

    N_IterTotalR=100;

    N_IterTotalG=100;

    N_IterTotalB=100;

    %Data

    I=imread('rice.png');

    % I=rgb2gray(I);

    Lmax= 255;

    Nt=size(I,1)*size(I,2);

    %% Simple bounds of the search domain

    nd=5;% number of thresholds required 

    if size(I,3)==1 %grayscale image

        [n_countR,x_valueR] = imhist(I(:,:,1));

    elseif size(I,3)==3 %RGB image

        [n_countR,x_valueR] = imhist(I(:,:,1));

        [n_countG,x_valueG] = imhist(I(:,:,2));

        [n_countB,x_valueB] = imhist(I(:,:,3));

    end

    %PDF

    for i=1:Lmax

        if size(I,3)==1 %grayscale image

            probR(i)=n_countR(i)/Nt;

        elseif size(I,3)==3 %RGB image    

            probR(i)=n_countR(i)/Nt;

            probG(i)=n_countG(i)/Nt;

            probB(i)=n_countB(i)/Nt;

        end

    end

    3 运行结果

    4 参考文献

    [1]吴禄慎, 程伟, 胡赞. 应用改进布谷鸟算法优化多阈值图像分割[J]. 吉林大学学报:工学版, 2021.

    [2]朱浩亮, 李光平. 基于改进布谷鸟搜索算法的图像分割[J]. 计算机工程与设计, 2018, 39(5):6.

    博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。

    部分理论引用网络文献,若有侵权联系博主删除。

     

  • 相关阅读:
    “互联网+”谋定现代农业-国稻种芯-万祥军:产业体系提升农业
    mysql比较时间
    c++单例模式线程安全几种实现方式
    Java笔记:UDP基础使用与广播
    JVM成神之路(十一) -- JVM常用命令解析
    我的合肥 .NET 俱乐部线下活动之旅
    Apache安装教程
    Marin说PCB之封装设计系列---(02)--异形焊盘的封装设计总结
    python项目根据requirements.txt pip安装依赖
    四化智造MES(WEB)和金蝶云星空接口打通对接实战
  • 原文地址:https://blog.csdn.net/matlab_dingdang/article/details/126357353