当前位置: 首页 > news >正文

广州城市建设规划局网站国外商品网站

广州城市建设规划局网站,国外商品网站,丰县数据网站建设多少钱,桂林红豆网论坛图像分割–全局固定阈值分割、自适应阈值分割 获取源工程可访问gitee可在此工程的基础上进行学习。 该工程的其他文章: 01- 一元熵值、二维熵值 02- 图像平移变换,图像缩放、图像裁剪、图像对角线镜像以及图像的旋转 03-邻域平均平滑算法、中值滤波算法、…

图像分割–全局固定阈值分割、自适应阈值分割

获取源工程可访问gitee可在此工程的基础上进行学习。
该工程的其他文章:
01- 一元熵值、二维熵值
02- 图像平移变换,图像缩放、图像裁剪、图像对角线镜像以及图像的旋转
03-邻域平均平滑算法、中值滤波算法、K近邻均值滤波器
04-分段线性变换,直方图均衡化、锐化处理
05-基于拉普拉斯算子、Canny的边缘检测功能、实现Otsu分割方法
06-最近邻插值,双线性插值,立方卷积插值

文章目录

  • 图像分割--全局固定阈值分割、自适应阈值分割
    • 实验内容
    • 一、全局固定阈值分割
      • 全局固定阈值分割的原理
      • 全局固定阈值分割的实验代码
      • 全局固定阈值分割的实验现象
    • 二、自适应阈值分割
      • 自适应阈值分割的实验原理
      • 自适应阈值分割的实验代码
      • 自适应阈值分割的实验现象

实验内容

实验目的:
(1)掌握图像分割的原理与相关方法。
(2)能使用VC++开发一些图像分割方法。
实验要求:
A部分:
(1)使用VC++设计程序:对一幅256级灰度图像,进行全局固定阈值分割。
(2)使用VC++设计程序:对一幅256级灰度图像,进行自适应阈值分割。

一、全局固定阈值分割

全局固定阈值分割的原理

全局固定阈值分割是图像处理中一种简单而常用的图像分割方法,主要用于将图像中的目标与背景分开。该方法假设图像的目标和背景在灰度上有较大的差异,因此通过设定一个固定的阈值来将图像分割成两个部分。

具体步骤如下:

  1. 灰度图像转换: 如果图像不是灰度图像,首先将其转换为灰度图像。

  2. 选择阈值: 选择一个适当的阈值,该阈值将图像的灰度级别划分为两个部分,一部分属于目标,另一部分属于背景。阈值的选择通常基于图像的直方图分布以及应用场景。

  3. 分割图像: 将图像中每个像素的灰度值与选定的阈值进行比较,将灰度值大于阈值的像素归为一类,灰度值小于等于阈值的像素归为另一类。这样就得到了分割后的图像。

  4. 可选的后处理: 分割后的图像可能包含一些噪声或不连续的区域,因此可能需要进行一些后处理步骤,如去噪、连通性分析等。

  5. 应用领域: 全局固定阈值分割常用于具有清晰目标和背景对比度的图像,例如二值化处理、物体检测等。

虽然全局固定阈值分割简单易用,但对于光照不均匀、目标与背景差异不大的图像,效果可能不佳。在这种情况下,可能需要采用自适应阈值分割方法或其他更复杂的图像分割技术。

全局固定阈值分割的实验代码

/*************************************************************************** \函数名称:*   RegionSegFixThreshold()** \输入参数:*   CDib * pDib     - 指向CDib类的指针,含有原始图象信息*   int nThreshold     - 区域分割的阈值** \返回值:*   无** \说明:*   1(逻辑)表示对应象素为前景区域,0表示背景*   阈值分割的关键问题在于阈值的选取。阈值的选取一般应该视实际的应用而*   灵活设定。***************************************************************************/
void RegionSegFixThreshold(CDib * pDib, int nThreshold)
{//遍历图象的纵坐标int y;//遍历图象的横坐标int x;//图象的长宽大小CSize sizeImage  = pDib->GetDimensions();int nWidth   = sizeImage.cx  ;int nHeight   = sizeImage.cy  ;//图像在计算机在存储中的实际大小CSize sizeImageSave = pDib->GetDibSaveDim();//图像在内存中每一行象素占用的实际空间int nSaveWidth = sizeImageSave.cx;//图像数据的指针LPBYTE  pImageData = pDib->m_lpImage;for(y=0; y<nHeight ; y++ )for(x=0; x<nWidth ; x++ ){if( *(pImageData+y*nSaveWidth+x) < nThreshold)*(pImageData+y*nSaveWidth+x) = 0;else*(pImageData+y*nSaveWidth+x) = 255;}
}

全局固定阈值分割的实验现象

在这里插入图片描述

二、自适应阈值分割

自适应阈值分割的实验原理

自适应阈值分割是一种根据图像局部特性确定阈值的方法,通常用于解决图像中灰度变化较大的情况。自适应阈值分割方法考虑图像中不同区域的灰度分布差异,根据局部信息确定每个像素的阈值。

以下是一些常见的自适应阈值分割方法:

  1. 局部均值法(Local Mean Method):

    • 对于每个像素,使用其邻域的平均灰度值作为阈值。这样可以适应图像中灰度变化较慢的区域。
  2. 局部中值法(Local Median Method):

    • 对于每个像素,使用其邻域的中值作为阈值。对于一些包含噪声的图像,中值法相对于均值法更具鲁棒性。
  3. 局部方差法(Local Variance Method):

    • 使用每个像素邻域的灰度方差作为阈值。适用于图像中包含有纹理或细节的区域。
  4. Sauvola’s Method:

    • Sauvola提出的方法考虑了局部均值和局部方差,通过权衡这两个因素来确定阈值。适用于具有不同光照条件的图像。
  5. Niblack’s Method:

    • 类似于Sauvola的方法,Niblack提出的方法使用局部均值和标准差来确定阈值。适用于具有强烈光照变化的图像。
  6. Bernsen’s Method:

    • Bernsen的方法使用局部最大值和最小值之间的差异来确定阈值。对于具有大范围灰度变化的图像比较有效。

在实际应用中,选择合适的自适应阈值分割方法取决于图像的特性以及分割任务的要求。这些方法的性能会受到图像噪声、光照条件和目标特性等因素的影响。因此,需要根据具体情况进行调整和选择。

自适应阈值分割的实验代码

/*************************************************************************** \函数名称:*   RegionSegAdaptive()** \输入参数:*   CDib * pDib     - 指向CDib类的指针,含有原始图象信息** \返回值:*   无** \说明:*   1(逻辑)表示对应象素为前景区域,0表示背景*   阈值分割的关键问题在于阈值的选取。阈值的选取一般应该视实际的应用而*   灵活设定。本函数中,阈值不是固定的,而是根据图象象素的实际性质而设定的。*   这个函数把图像分成四个子图象,然后计算每个子图象的均值,根据均值设置阈值*   阈值只是应用在对应的子图象***************************************************************************/
void RegionSegAdaptive(CDib * pDib)
{//遍历图象的纵坐标int y;//遍历图象的横坐标int x;//图象的长宽大小CSize sizeImage  = pDib->GetDimensions();int nWidth   = sizeImage.cx  ;int nHeight   = sizeImage.cy  ;//图像在计算机在存储中的实际大小CSize sizeImageSave = pDib->GetDibSaveDim();//图像在内存中每一行象素占用的实际空间int nSaveWidth = sizeImageSave.cx;//图像数据的指针LPBYTE  lpImage = pDib->m_lpImage;// 局部阈值int nThd[2][2] ;// 子图象的平均值int nLocAvg ;// 对左上图像逐点扫描:nLocAvg = 0 ;// y方向for(y=0; y<nHeight/2 ; y++ ){// x方向for(x=0; x<nWidth/2 ; x++ ){nLocAvg += lpImage[y*nSaveWidth + x];}}// 计算均值nLocAvg /= ( (nHeight/2) * (nWidth/2) ) ;// 设置阈值为子图象的平均值nThd[0][0] = nLocAvg ;// 对左上图像逐点扫描进行分割:// y方向for(y=0; y<nHeight/2 ; y++ ){// x方向for(x=0; x<nWidth/2 ; x++ ){if(lpImage[y*nSaveWidth + x]<nThd[0][0])lpImage[y*nSaveWidth + x] = 255 ;else{lpImage[y*nSaveWidth + x] = 0 ;}}}// =============================================// 对左下图像逐点扫描:nLocAvg = 0 ;// y方向for(y=nHeight/2; y<nHeight ; y++ ){// x方向for(x=0; x<nWidth/2 ; x++ ){nLocAvg += lpImage[y*nSaveWidth + x];}}// 计算均值nLocAvg /= ( (nHeight - nHeight/2) * (nWidth/2) ) ;// 设置阈值为子图象的平均值nThd[1][0] = nLocAvg ;// 对左下图像逐点扫描进行分割:// y方向for(y=nHeight/2; y<nHeight ; y++ ){// x方向for(x=0; x<nWidth/2 ; x++ ){if(lpImage[y*nSaveWidth + x]<nThd[1][0])lpImage[y*nSaveWidth + x] = 255 ;else{lpImage[y*nSaveWidth + x] = 0 ;}}}// =============================================// 对右上图像逐点扫描:nLocAvg = 0 ;// y方向for(y=0; y<nHeight/2 ; y++ ){// x方向for(x=nWidth/2; x<nWidth ; x++ ){nLocAvg += lpImage[y*nSaveWidth + x];}}// 计算均值nLocAvg /= ( (nHeight/2) * (nWidth - nWidth/2) ) ;// 设置阈值为子图象的平均值nThd[0][1] = nLocAvg ;// 对右上图像逐点扫描进行分割:// y方向for(y=0; y<nHeight/2 ; y++ ){// x方向for(x=nWidth/2; x<nWidth ; x++ ){if(lpImage[y*nSaveWidth + x]<nThd[0][1])lpImage[y*nSaveWidth + x] = 255 ;else{lpImage[y*nSaveWidth + x] = 0 ;}}}// =============================================// 对右下图像逐点扫描:nLocAvg = 0 ;// y方向for(y=nHeight/2; y<nHeight ; y++ ){// x方向for(x=nWidth/2; x<nWidth ; x++ ){nLocAvg += lpImage[y*nSaveWidth + x];}}// 计算均值nLocAvg /= ( (nHeight - nHeight/2) * (nWidth - nWidth/2) ) ;// 设置阈值为子图象的平均值nThd[1][1] = nLocAvg ;// 对右下图像逐点扫描进行分割:// y方向for(y=nHeight/2; y<nHeight ; y++ ){// x方向for(x=nWidth/2; x<nWidth ; x++ ){if(lpImage[y*nSaveWidth + x]<nThd[1][1])lpImage[y*nSaveWidth + x] = 255 ;else{lpImage[y*nSaveWidth + x] = 0 ;}}}// 为了显示方便显示,逻辑1用黑色显示,逻辑0用白色显示for(y=0; y<nHeight ; y++ ){// x方向for(x=0; x<nWidth ; x++ ){lpImage[y*nSaveWidth + x] = 255 - lpImage[y*nSaveWidth + x] ;}}
}

自适应阈值分割的实验现象

在这里插入图片描述

http://www.yayakq.cn/news/690977/

相关文章:

  • 做网站都要买服务器吗竞价推广淘客
  • 广州市省建设厅网站我的家乡网站建设模板下载
  • 建网站报价 优帮云简述seo和sem的区别与联系
  • 怎么做网页模板展示网站公司内网怎么搭建
  • 网站建设需要的设备和软件衡阳县住房和城乡建设局网站
  • 做酒店工作去哪个招聘网站好网站开发基础与提高
  • 深圳专业做网站的公司有哪些wordpress获取评论回复
  • 宁夏一站式网站建设网站图标怎么做
  • 机关建设网站网络销售推广是做什么
  • 造价网站如何在网站做淘宝页面
  • 后台网站如何建设网络营销公司排名
  • 摄影作品欣赏网站码支付wordpress用不
  • 模板出售网站源码关于wordpress更新时无法创建目录
  • 宁波网站推广优化黄冈网站推广平台
  • 网站开发样板旅游品牌推广方案
  • 网站制作要钱吗美工是做什么的
  • 网站备案幕布照如何做广州seo顾问
  • 电子商务网站规划建设方案山西大学物理电子工程学院研招网
  • 通讯设备 技术支持 东莞网站建设花生壳 建设网站
  • 做照片视频的网站wordpress app 加载慢
  • 视频网站怎么做算法开服网站源码
  • 怎么查网站是否被k除了百度指数还有哪些指数
  • 枫泾网站建设南昌网站建设_南昌做网站公司
  • 网站建设网络公司手机网站模板 html
  • 网站seo方案建设目标wordpress导航栏制作
  • 建站设计网站广州网站设计成功柚米
  • 阿里云建站wordpress做网站建设公司哪家好?
  • 建交易网站需要多少钱天津注册公司网站
  • 青岛专业网站营销网络品牌营销策划的概念
  • 鲜花加盟网站建设怎么做监测网站的浏览量