2007 年 10 月 湘南学院学报 Oct. ,2007 第 28 卷第 5 期 Journal of Xiangnan University Vol. 28 No. 5 收稿日期 :2007 - 03 - 27 作者简介 :刘耀辉(1975 - ) ,男 ,湖南冷水江人 ,湘南学院计算机系教师 ,硕士 ,研究方向 :图像处理 ,模式识别. 三种阈值计算方法在 MatLab 6. 5 中的实现 刘耀辉 (湘南学院 计算机系 , 湖南 郴州 423000) 摘 要 : 介绍三种常用的阈值选取算法 ,给出了它们在 MatLab6. 5 中的具体实现源码. 最后通过示例图像的阈值求解结果对这几种算法做了简单的对比. 关键词 : 阈值 ;直方图 ; Ostu 算法 ;一维最大熵 中图分类号 : TP391. 41 文献标识码 : A 文章编号 : 1672 - 8173(2007)05 - 0081 - 04 0 引言 阈值选取是图象处理与分析问题的基础 ,利用阈值分割图像是图像处理的基本问题 , 并在图像分析和识别中起着重要的作用. 文献[1- 3] 对已提出的一些阈值选取方法进行了全面的总结. 在这些各种各样的阈值计算方法中 ,直方图双峰法、基于最大类间方差原理的 Ostu 算法、基于信息熵原理的一维最大熵法等是我们比较熟悉的算法. 1 算法介绍 (1) 直方图双峰法[5] :如果灰度级直方图呈明显的双峰状 ,如选取双峰之间的谷底所对应的灰度级作为阈值 , 则分割出的背景与目标点占多数 , 而灰度值近似为阈值 t 的点(边界点) 是少数 ,即灰度值为 t 的点在图像中 所占比例 pt 很小 , 也即 ,1Πpt 很大 , 因此可用以 1pi 为权系数的灰度加权平均值作为阈值: t = ∑ p i ≠ 0 ipi∑p i ≠ 0 1Πpi(2) Ostu 算法[4] :即最大类间方差法. 这种方法认为 ,若 t 为阈值 , 其将把图像分为目标 A 与背景B 两个区域 ,且 A 与B 两部分差距很大. 设灰度为的像素和灰度为的像素分别属于区域 A 和B ,则区域 A 和B 的概率分布为 : ω A = ω( t) = ∑ t i = 1 pi 和ω B = 1 - ω( t) 平均灰度分别为: μ A = μ( t) ω( t) 和μ B = μ - μ( t) 1 - ω( t) 其中μ为全图的平均灰度 ,μ = ∑ L i = 1 i3pi两个区域的方差为 σ2 = ω( t) (μ A - μ ) 2 + (1 - ω( t) ) (μ b - μ ) 2 使该方差最大的 t 即为所要求. ·18· (3) 一维最大熵法[3] :若 t 为阈值 , 其将把图像分为目标 A 与背景B 两个区域. 设灰度为1~ t 的像素和灰度为 t + 1 ~ L 的像素分别属于区域A 和 B ,则区域 A 和 B 的概率分布为: PA = P( t) = ∑ t i = 1 pi 和 PB = 1 - P( t) 定义与这两个概率分布相关的熵为: H(A) = ln P( t) + H( t) P( t) 和 H( B) = ln(1 - P( t) ) + H(L) - H( t) 1 - P( t) 其中 , H( t) = - ∑ t i = 1 pi1 n pi , H(L) = ∑ L i = 1 pi ln pi 定义准则函数为:Ψ(
matlab中阈值计算方法,三种阈值计算方法在MatLab6.5中的实现
最新推荐文章于 2023-12-07 09:44:28 发布