标题:急!求图像分割全局门限的代码
只看楼主
zxw1988
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2010-5-17
 问题点数:0 回复次数:0 
急!求图像分割全局门限的代码
本人马上要毕业了现在正纠结于毕业设计,毕业设计的题目是基于直方图的图像二值化处理,今天老师要我做一个全局门限分割。。死活写不对。。求高手帮忙,小女子感激不尽。下面是用MATLAB做的全局门限分割,但是我们要用C语言做,老师说是扩充下
代码是:T=0.5*(double(min(f:)))+double(max(f(:))));
        done=false;
        while~done
        g=f>=T;
        Tnext=0.5*(mean(f(g))+mean(f(g)));
        done=abs(T-Tnext)<0.5;
        T=Tnext;
        end
全局门限:1,选择一个T的初始估计值2.用T分割图像,这样做会生成两组像素:G1由所有灰度值大于T的像素组成,而G2由所有灰度值小于或等于T的像素组成。3.对区域G1和G2中所有像素计算平均灰度值i1和i2.4计算新的门限值:T=(i1+i2)/2 5重复步骤2和4,直到迭代所得的T值之差小于事先定义的参数T
直方图统计已做出来:void Histrogram(ImageInfo* pImageInfo,double * nCount)
{
    int nHeight = pImageInfo->nHeight;        //图像的高度
    int nWidth = pImageInfo->nWidth;        //图像的宽度
    int nEffWidth = pImageInfo->nEffWidth;    //图像的有效宽度

    //分配内存------------------------------------------------------------------------   
    int i,j,k;
    double *pImage = NULL;
    pImage = new double [nHeight*nWidth];

    for(k=0;k<256;k++)
    {
        nCount[k]=0;
    }
不知道各位高手能看到我写的吗?哎。。。我已经焦头烂额了。。
拜托大家帮帮忙

搜索更多相关主题的帖子: 门限 全局 图像 代码 
2010-05-17 22:35



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-307106-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.445606 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved