分水岭算法VC实现.doc

分水岭算法VC实现.doc

ID:29004787

大小:35.00 KB

页数:11页

时间:2018-12-15

分水岭算法VC实现.doc_第1页
分水岭算法VC实现.doc_第2页
分水岭算法VC实现.doc_第3页
分水岭算法VC实现.doc_第4页
分水岭算法VC实现.doc_第5页
资源描述:

《分水岭算法VC实现.doc》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、函数名:              Watershed功能:                用标记-分水岭算法对输入图像进行分割算法实现:            无输入参数说明:        OriginalImage--输入图像(灰度图,0~255)                      SeedImage         --标记图像(二值图,0-非标记,1-标记)                      LabelImage        --输出图像(1-第一个分割区域,2-第二个分割区域,...)                      row       

2、        --图像行数                      col               --图像列数返回值说明:          无        ====================================================================*/voidWINAPICDib::Watershed(unsignedchar**OriginalImage,char**SeedImage,int**LabelImage,introw,intcol){//usingnamespacestd;//标记区域标识号,从1开始in

3、tNum=0;inti,j;//保存每个队列种子个数的数组vectorSeedCounts;//临时种子队列queuequetem;//保存所有标记区域种子队列的数组,里面放的是种子队列的指针vector*>vque;int*array;//指向种子队列的指针queue*pque;POINTtemp;for(i=0;i

4、ft,upright,downleft,downright;//8directions...//预处理,提取区分每个标记区域,并初始化每个标记的种子队列//种子是指标记区域边缘的点,他们可以在水位上升时向外淹没(或者说生长)//pan'swords:我的理解是梯度值较小的象素点,或者是极小灰度值的点。for(i=0;i

5、     //分配数组并初始化为零,表示可有256个灰阶        array=newint[256];        ZeroMemory(array,256*sizeof(int));        //种子个数数组进vector,每次扫描则生成一个数组,并用区域标识号来做第一维。灰度级做第二维。        //表示某个盆地区域中某灰阶所对应的点的数目。        SeedCounts.push_back(array);        //分配本标记号的优先队列,256个种子队列,        //表示对应一个灰阶有一个队列,并且每个队列可以存储一个集合的点信

6、息        pque=newqueue[256];        //加入到队列数组中,对应的是本标记号Num的        vque.push_back(pque);        //当前点放入本标记区域的临时种子队列中        temp.x=i;        temp.y=j;        quetem.push(temp);        //当前点标记为已处理        LabelImage[i][j]=Num;        SeedImage[i][j]=127;//表示已经处理过            //让临时种子队列中的种

7、子进行生长直到所有的种子都生长完毕        //生长完毕后的队列信息保存在vque中,包括区域号和灰阶,对应点数存储在seedcounts中        while(!quetem.empty())        {         up=down=right=left=FALSE;         upleft=upright=downleft=downright=FALSE;         //队列中取出一个种子         temp=quetem.front();    

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。