智能优化算法应用:基于GWO优化的Renyi熵图像多阈值分割

文章目录

  • 智能优化算法应用:基于GWO优化的Renyi熵图像多阈值分割
    • 1.前言
    • 2.Renyi熵阈值分割原理
    • 3.基于灰狼优化(GWO)的多阈值分割
    • 4.算法结果:
    • 5.参考文献:
    • 6.Matlab 代码

摘要:本文介绍基于Renyi熵的图像分割,并且应用灰狼算法进行阈值寻优。

1.前言

阅读此文章前,请阅读《图像分割:直方图区域划分及信息统计介绍》https://blog.csdn.net/u011835903/article/details/108024753 了解基础知识,相关公式含义。

2.Renyi熵阈值分割原理

一维直方图情况下Renyi熵的计算公式为r如下,对应于阈值t的目标类和背景类的熵值分别为:
H0(t)=11−αln(∑i=0t(piw0(t))α)(1)H_0(t) = \frac{1}{1- \alpha}ln(\sum_{i=0}^t(\frac{p_i}{w_0(t)})^\alpha) \tag{1} H0​(t)=1−α1​ln(i=0∑t​(w0​(t)pi​​)α)(1)

Hb(t)=11−αln(∑i=t+1L−1(piwb(t))α)(2)H_b(t) = \frac{1}{1- \alpha}ln(\sum_{i=t+1}^{L-1}(\frac{p_i}{w_b(t)})^\alpha) \tag{2} Hb​(t)=1−α1​ln(i=t+1∑L−1​(wb​(t)pi​​)α)(2)

E(t)=H0(t)+Hb(t)(4)E(t)=H_0(t) + H_b(t) \tag{4} E(t)=H0​(t)+Hb​(t)(4)

其中,α\alphaα 为[0,1]的可调值,最佳阈值:
t∗=argmax(0≤t≤L−1){E(t)}(5)t^* = argmax_(0\leq t \leq L-1)\{E(t)\} \tag{5} t∗=argmax(​0≤t≤L−1){E(t)}(5)
推广到多阈值则为,寻找一组阈值(t0,...,tn)(t_0,...,t_n)(t0​,...,tn​)使得熵值最大
t(1,..,n)∗=argmax{H0+H1+,...+Hn}(6)t(1,..,n)^*=argmax\{H_0+H_1+,...+H_n\}\tag{6} t(1,..,n)∗=argmax{H0​+H1​+,...+Hn​}(6)

3.基于灰狼优化(GWO)的多阈值分割

由上述z指数熵阈值分割法的原理可知,要得到最终的阈值,需要去寻找阈值,熵值最大。于是可以利用智能优化算法进行阈值的寻优,使得获得最佳阈值。

于是优化的适应度函数就是:
t(1,..,n)∗=argmax{H0+H1+,...+Hn}(7)t(1,..,n)^*=argmax\{H_0+H_1+,...+H_n\}\tag{7} t(1,..,n)∗=argmax{H0​+H1​+,...+Hn​}(7)
设置阈值分割的个数,寻优边界为0到255(因为图像的像素值范围为0-255),设置相应的灰狼算法参数(灰狼算法具体原理及代码参照我之前写灰狼算法原理:https://blog.csdn.net/u011835903/article/details/107716390)。

4.算法结果:

以lena图像为例:

单阈值结果:

3阈值结果:

4阈值结果:

5.参考文献:

[1]吴一全,孟天亮,吴诗婳.图像阈值分割方法研究进展20年(1994—2014)[J].数据采集与处理,2015,30(01):1-23.

6.Matlab 代码

个人资料介绍

智能优化算法应用:基于GWO优化的Renyi熵图像多阈值分割 - 附代码相关推荐

  1. 【智能优化算法】基于黑寡妇优化算法求解单目标优化问题含Matlab源码

    1 简介 本期为大家介绍黑寡妇优化算法(Black Widow Optimization Algorithm,BWO).该算法由Adria´n F. Peña-Delgado等人于2020年提出,主要 ...

  2. 【智能优化算法-野狗优化算法】基于野狗优化算法求解单目标优化问题附matlab代码

    1 内容介绍 非洲野狗主要生活在非洲的干燥草原和半荒漠地带,活跃于草原.稀树草原和幵阔的干燥灌木丛.它们通常群居,领土范围大小在200到2000平方公里之间,通过叫声进行定位.采取群体合作方式猎杀中型 ...

  3. 【智能优化算法】基于蝙蝠优化算法求解多目标优化问题附matlab代码

    1 内容介绍 蝙蝠算法( BA) 是 Yang 教授于 2010 年基于群体智能提出的启发式搜索算法,是一种搜索全局最优解的有效方法.该算法是一种基于迭代的优化技术,初始化为一组随机解,然后 通过迭代 ...

  4. 【智能优化算法】基于倭黑猩猩优化算法求解单目标优化问题附matlab代码

    1 内容介绍 非传统的优化工具已经证明了它们在解决各种优化问题方面的潜力.这些问题处理单个目标或多个/多个目标.倭黑猩猩优化器(BO)是一种智能自适应元启发式优化算法,灵感来自倭黑猩猩的社会行为和繁殖 ...

  5. 【智能优化算法-蝠鲼优化算法】基于蝠鲼优化算法求解多目标优化问题附matlab代码

    1 内容介绍 蝠鲼觅食优化器 (MRFO) 已显示出处理单目标现实世界问题的良好能力,这使其在解决多目标问题中的应用成为一个有趣的方向.因此,本文研究了 MRFO 优化器,以开发一种新的算法来处理多目 ...

  6. 【孔雀优化算法】基于孔雀优化算法求解单目标优化问题附matlab代码POA

    1 简介 本文开发了一种新的孔雀 (Pavo muticus/cristatus) 优化算法 (POA),其中包含其在固体氧化物燃料电池 (SOFC) 参数估计中的设计.评估和应用. POA主要复制了 ...

  7. 【蛇群优化算法】基于蛇优化算法求解单目标优化问题附matlab代码

    1 简介 近年来,在工程和科学领域引入了几种元启发式算法来解决现实生活中的优化问题.在这项研究中,提出了一种新的受自然启发的元启发式算法,称为蛇优化器 (SO),以解决模仿蛇特殊交配行为的各种优化任务 ...

  8. 【优化算法】基于树种优化算法求解单目标优化问题附matlab代码

    1 简介 树种优化算法( TSA)是一种新兴的智能优化算法,是 2015 年由 Kiran 提出的,算法的思想是模拟大自然树木生长繁衍的过程.树种优化算法的结构简单,寻优能力较强,在彩色图像多阈值分割 ...

  9. gwo算法matlab源代码,智能优化算法应用:基于GWO优化BP神经网络 - 附代码

    智能优化算法应用:基于GWO优化BP神经网络 - 附代码 智能优化算法应用:基于GWO优化BP神经网络 - 附代码 智能优化算法应用:基于GWO优化BP神经网络 文章目录智能优化算法应用:基于GWO优 ...

  10. 路径规划算法:基于灰狼优化(GWO)的路径规划算法- 附代码

    路径规划算法:基于灰狼优化(GWO)的路径规划算法- 附代码 文章目录 路径规划算法:基于灰狼优化(GWO)的路径规划算法- 附代码 1.算法原理 1.1 环境设定 1.2 约束条件 1.3 适应度函 ...

最新文章

  1. 最新研究 | 人类大脑皮质对有声调和非有声调语言的音高编码
  2. Delphi中比较两个对象是否一致及地址是否相同
  3. 机器学习和深度学习资料整理
  4. C#中实现鼠标拖动窗体的方法
  5. RegularExpressionValidator 常用
  6. QSplitter设置宽高比例的正确方法
  7. 反射生成 INSERT 多个对象的 SQL 语句(批量插入)
  8. 华为鸿蒙原生app,华为鸿蒙开发者大赛颁奖典礼临近,鸿蒙原生应用来了
  9. 最大类间方差法(大津法OTSU)
  10. SolidEdge完整安装教程-亲测
  11. 用python函数画德国国旗代码_给我一面国旗 python帮你实现
  12. SpringBoot版本升级
  13. 亚马逊云技术防范勒索病毒
  14. 安卓开发上传相册图片成功上传拍照图片失败解决办法
  15. Error: tunneling socket could not be established, cause=connect
  16. SICP读书笔记2---if和cond的区别
  17. Post请求的两种编码格式:application/x-www-form-urlencoded和multipart/form-data
  18. 同轴电缆、双绞线和光纤光缆有什么区别?
  19. 如何在路由器上做端口映射
  20. 整体格局:国企、民营、外资各自竞优几何

热门文章

  1. struts2之日期类型转换
  2. 每天一道剑指offer-合并两个排序的链表
  3. 在 HTML 语言中,试题15
  4. mysql 流浪,流浪汉机器 – 如何找出mysql用户名/密码
  5. 中文只占一个字符_男人宠妻的三大表现,就算只占一个,你都是嫁对了人!
  6. vmWare配置静态ip-net模式
  7. python还是c+_人生苦短,我选C++,Python,还是Java?
  8. php 改变地址栏,php如何修改url
  9. flink globalwindow_《从0到1学习Flink》—— 介绍Flink中的Stream Windows
  10. Java编程:排序算法——快速排序