⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 -+

📁 我搜集的关于彩色图像分割的论文,PDF格式
💻
📖 第 1 页 / 共 2 页
字号:
ProgramFan.com <http://www.programfan.com>
	
编程爱好者收藏夹 myweb.pfan.cn <http://myweb.pfan.cn>
人才招聘频道启用新域名 job.pfan.cn <http://job.pfan.cn>
编程爱好者论坛新增软件测试技术讨论区
<http://www.programfan.com/club/bbs.asp?bbsid=60>
编程爱好者项目交易栏目 欢迎发布交易信息 <http://www.programfan.com/project>
欢迎光临编程爱好者ACM题库 <http://www.programfan.com/problem>
欢迎光临编程爱好者论坛bbs.programfan.com <http://bbs.programfan.com>
编程爱好者博客 blog.programfan.com <http://blog.programfan.com>
	
回到首页 <http://www.programfan.com/> 设为首页 <#> 加入收藏 <#> 网站留言
<http://www.programfan.com/contact.asp?subject=网站留言>

<http://www.programfan.com/>
		
_人才招聘频道_ <http://job.pfan.cn>
_编程爱好者BLOG_ <http://blog.programfan.com>
_编程爱好者论坛_ <http://bbs.programfan.com>

首页 <http://www.programfan.com> | 论坛 <http://bbs.programfan.com> |
BLOG <http://blog.programfan.com> | 人才招聘 <http://job.pfan.cn> | *书
评* <http://www.programfan.com/book> | 文章
<http://www.programfan.com/article> | 资讯
<http://www.programfan.com/newscenter.asp> | 下载
<http://www.programfan.com/download.asp> | 源码
<http://www.programfan.com/source.asp> | 项目交易
<http://www.programfan.com/project/> | 兴趣小组
<http://www.programfan.com/team> | 网友作品
<http://www.programfan.com/wysoft> | 刻盘服务
<http://www.programfan.com/bookcd.asp> | VBAPI查询
<http://www.programfan.com/vbapi.asp>

*文章分类*
	
*C/C++文章* <article.asp?classid=20>
	
Visual Basic <article.asp?classid=1>
	
*Visual C++* <article.asp?classid=2>
	
C++ Builder <article.asp?classid=4>
	
Visual Foxpro <article.asp?classid=5>
	
Powerbuilder <article.asp?classid=6>
	
*Delphi* <article.asp?classid=3>
	
*ASP <article.asp?classid=8>*
	
*ASP.net <article.asp?classid=18>*
	
*JAVA* <article.asp?classid=7>
WINDOWS编程 <article.asp?classid=10>
	
*VB.net <article.asp?classid=16>*
	
*JSP <article.asp?classid=11>*
	
游戏开发 <article.asp?classid=13>
	
汇编语言 <article.asp?classid=12>
	
数据库开发 <article.asp?classid=14>
	
Visual C# <article.asp?classid=15>
	
XML <article.asp?classid=17>
	
PHP <article.asp?classid=9>
	
*算法* <article.asp?classid=19>
	 

* 您所在的位置:编程爱好者网站 <http://www.programfan.com> -文档中心
<article.asp> - 算法文章 <article.asp?classid=19>*
*图像分割中阈值的自动选取的研究及其算法实现*
(加入日期:2003-4-13 点击数:11764)
*【收藏文章
<javascript:d=document;t=d.selection?(d.selection.type!='None'?d.selection.createRange
().text:''):(d.getSelection?d.getSelection():'');void(myweb=window.open('http:
//www.programfan.com/club/mywebedit.asp?title='+escape(d.title)+'&url='+escape
(d.location.href),'myweb','scrollbars=no,width=480,height=480,left=75,top=
20,status=no,resizable=yes'));>】【对此文发表评论 <comment.asp?id=
2219>】【编程爱好者论坛 </club>】【保存文章至硬盘 <#>】【打印文章 <#>】*


图像分割是图像处理这门学科中的基础难题,基于阈值的分割则又是图像分割的最
基本的难题之一,其难点在于阈值的选取。事实证明,阈值的选择的恰当与否对分
割的效果起着决定性的作用。由于阈值选取对图像分割的基础性,本文主要在
【1】、【2】、【3】、【4】等的基础上,对一些当前流行的阈值选取算法做了探
讨、实现和比较。多阈值分割虽然能进一步提高图像分割的质量,但由于它只是分
割技巧的处理问题,而与单阈值分割并无本质的区别。因此本文并不对多阈值分割
进行讨论,而只考虑单阈值分割的情形。

1.  双峰法

双峰法的原理及其简单:它认为图像由前景和背景组成,在灰度直方图上,前后二
景都形成高峰,在双峰之间的最低谷处就是图像的阈值所在。根据这一原理,我们
给出了它的实现,部分代码如下(Pascal语言描述,以下同):

//intPeak、intPeak2、intValley:峰值和直方图值

//intIndx::相应的灰度值

intPeak,intIndx,intPeak2,intIndx2,intValley,intValleyIndx:integer;

//初始双峰值

    intPeak:=0;

    intPeak2:=0;



//取得第一峰值

    for intLoop:=0 to 255 do

      if intPeak<=intGrayLevel[intLoop] then

      begin

        intPeak:=intGrayLevel[intLoop];

        intIndx:=intLoop;

      end;



//取得第二峰值

    for intLoop:=0 to 255 do

    Begin

      if (intPeak2<=intGrayLevel[intLoop]) and (intLoop<>intIndx) then

      begin

        intPeak2:=intGrayLevel[intLoop];

        intIndx2:=intLoop;

      end

    end;



//取得双峰之间的谷值

    intValley:=intSize;

    if intIndx2<intIndx then

      for intLoop:=intIndx2 to intIndx do

        if intValley>intGrayLevel[intLoop] then

        begin

          intValley:=intGrayLevel[intLoop];

          intValleyIndx:=intLoop;

        end;

从分割的效果来看,当前后景的对比较为强烈时,分割效果较好;否则基本无效。

2.  迭代法

迭代法是基于逼近的思想,其步骤如下:

1.  求出图象的最大灰度值和最小灰度值,分别记为ZMAX和ZMIN,令初始阈值T0=
(ZMAX+ZMIN)/2;

2.  根据阈值TK将图象分割为前景和背景,分别求出两者的平均灰度值ZO和ZB;

3.  求出新阈值TK+1=(ZO+ZB)/2;

4.  若TK=TK+1,则所得即为阈值;否则转2,迭代计算。

以下给出迭代求阈值的部分实现:

//阈值初始为0

intThresholdVal:=0;

      intThresholdVal2:=0;



  //总灰度值

  intTotalGrayLevel:=0;

  for intLoop:=0 to 255 do

    if intGrayLevel[intLoop]<>0 then

      intTotalGrayLevel:=intTotalGrayLevel+intLoop*intGrayLevel[intLoop];



  //求出初始最大灰度值

  for intLoop:=0 to 255 do

    if intGrayLevel[intLoop]>0 then

    begin

      intLGrayLevel:=intLoop;

      intThresholdVal:=intLoop;

      break;

    end;



  //求出初始最小灰度值和初始阈值

  for intLoop:=255 downto 0 do

    if intGrayLevel[intLoop]>0 then

    begin

      intRGrayLevel:=intLoop;

      intThresholdVal:=(intThresholdVal+intLoop)div 2;

      break;

    end;



  //迭代求解

  while intThresholdVal<>intThresholdVal2 do

    begin

      intThresholdVal2:=intThresholdVal;

      intCount:=0;

      intLGrayLevel:=0;

      for intLoop:=0 to intThresholdVal do

        if intGrayLevel[intLoop]<>0 then

        begin

          intCount:=intCount+intGrayLevel[intLoop];

          intLGrayLevel:=intLGrayLevel+intLoop*intGrayLevel[intLoop];

        end;

      intRGrayLevel:=intTotalGrayLevel-intLGrayLevel;

      intLGrayLevel:=intLGrayLevel div intCount;

⌨️ 快捷键说明

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