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

做网站展示软件做家教用什么网站

做网站展示软件,做家教用什么网站,互联网运营,网红营销的概念OpenCV形态学操作 形态学操作(Morphological Operations)源自二值图像处理,主要用于分析和处理图像中的结构元素,对图像进行去噪、提取边缘、分割等预处理步骤。OpenCV库中提供了丰富的形态学函数,常见的包括&#xf…

OpenCV形态学操作

形态学操作(Morphological Operations)源自二值图像处理,主要用于分析和处理图像中的结构元素,对图像进行去噪、提取边缘、分割等预处理步骤。OpenCV库中提供了丰富的形态学函数,常见的包括:

  • 膨胀(Dilation)
  • 腐蚀(Erosion)
  • 开操作(Opening)
  • 闭操作(Closing)
  • 形态学梯度(Morphological Gradient)
  • 顶帽(Top Hat)
  • 黑帽(Black Hat)

下面将逐一介绍这些操作的原理、用途,以及在 C++ 中的使用方法。

1. 基础概念:结构元素(Kernel)

形态学操作的核心是“结构元素”:一个二值矩阵,用来扫描图像并决定像素的处理方式。在 OpenCV 中,我们通常使用 getStructuringElement 来创建常见形状的结构元素:

// 创建 5×5 的矩形结构元素
Mat kernel = getStructuringElement(MORPH_RECT, Size(5, 5));
// 创建 3×3 的椭圆结构元素
Mat kernelEllipse = getStructuringElement(MORPH_ELLIPSE, Size(3, 3));
// 创建 7×7 的交叉形结构元素
Mat kernelCross = getStructuringElement(MORPH_CROSS, Size(7, 7));

2. 膨胀(Dilation)与腐蚀(Erosion)

2.1 腐蚀(Erosion)

  • 原理:用结构元素“擦除”边缘,使前景对象变小。
  • 用途:去除小噪点、断开细小的连通区域。
Mat src = imread("input.jpg", IMREAD_GRAYSCALE);
Mat eroded;
Mat kernel = getStructuringElement(MORPH_RECT, Size(3, 3));
erode(src, eroded, kernel);

在这里插入图片描述

如上图腐蚀可以把白点去除

2.2 膨胀(Dilation)

  • 原理:用结构元素“扩展”边缘,使前景对象变大。
  • 用途:填补小孔洞、连接相邻的对象。
Mat src = imread("input.jpg", IMREAD_GRAYSCALE);
Mat dilated;
Mat kernel = getStructuringElement(MORPH_RECT, Size(3, 3));
dilate(src, dilated, kernel);

在这里插入图片描述

如上图膨胀会把数字A中的小黑点去除

3. 开操作(Opening)与闭操作(Closing)

对腐蚀和膨胀的组合操作

3.1 开操作(Opening)

  • 定义:先腐蚀后膨胀(Erosion → Dilation)。
  • 效果:去除小的光斑噪点,同时保持整体轮廓不变。
Mat opened;
morphologyEx(src, opened, MORPH_OPEN, kernel);

在这里插入图片描述

开操作对比腐蚀,去除白点后保证中间黑点和字母A大小不变

3.2 闭操作(Closing)

  • 定义:先膨胀后腐蚀(Dilation → Erosion)。
  • 效果:填补前景对象的小孔洞,同时保持整体轮廓不变。
Mat closed;
morphologyEx(src, closed, MORPH_CLOSE, kernel);

在这里插入图片描述

闭操作对比膨胀,其去除中间黑点同时保证外围白点和字母A大小不变

4. 形态学梯度(Morphological Gradient)

  • 定义:膨胀结果与腐蚀结果之间的差值:

    G r a d i e n t = D i l a t i o n ( s r c ) − E r o s i o n ( s r c ) Gradient=Dilation(src)−Erosion(src) Gradient=Dilation(src)Erosion(src)

  • 用途:突出获取图像边缘。

Mat gradient;
morphologyEx(src, gradient, MORPH_GRADIENT, kernel);

在这里插入图片描述

突出图像边缘

5. 顶帽(Top Hat)与黑帽(Black Hat)

5.1 顶帽(Top Hat)

  • 定义:原图像与开操作结果的差值: T o p H a t = s r c − O p e n i n g ( s r c ) TopHat=src−Opening(src) TopHat=srcOpening(src)
  • 用途:提取比背景亮的细小区域(小光斑)。
Mat tophat;
morphologyEx(src, tophat, MORPH_TOPHAT, kernel);

在这里插入图片描述

突出背景亮点

5.2 黑帽(Black Hat)

  • 定义:闭操作结果与原图像的差值: B l a c k H a t = C l o s i n g ( s r c ) − s r c BlackHat=Closing(src)−src BlackHat=Closing(src)src
  • 用途:提取比背景暗的细小区域(小暗点)。
Mat blackhat;
morphologyEx(src, blackhat, MORPH_BLACKHAT, kernel);

在这里插入图片描述

突出中间黑点区域

6. 小结

  • 腐蚀 / 膨胀:最基本的形态学操作,用于缩小或扩展前景区域。
  • 开 / 闭操作:腐蚀与膨胀的组合,开操作用于去除小噪点,闭操作用于填补小孔洞。
  • 形态学梯度:用于提取边缘信息。
  • 顶帽 / 黑帽:分别用于突出小的亮区域与暗区域。

掌握这些形态学操作后配合掩膜,你可以在图像预处理、特征提取、目标分割等任务中如虎添翼。

http://www.dtcms.com/wzjs/535153.html

相关文章:

  • 哪里有做商城的网站wordpress 页面下载文件
  • 教育机构网站制作模板校园官方网站建设的书籍
  • 优质企业网站开发企业网站认证
  • 服装公司网站建设方案樱花12e56
  • 网站后端怎么做河南省新闻出版局
  • 建设网站关键词怎么写宿州城乡建设局网站
  • 电商网站费用中国还有哪些做外贸的网站
  • 莱州环球网站建设新乡网站开发的公司
  • 国外推广网站wordpress 类似divi的
  • 网站建设和网站设计区别网页文件模板下载
  • 太原做网站的工作室wordpress搜索设置
  • 网站制作软件手机版下载做网站导航多大字号
  • 公关公司职级求职seo推荐
  • 建设热电偶网站山西正规网站建设报价公司
  • 臭臭猫网站建设福州网站建设哪家专业
  • 在凡科上做的网站无法加载出来工商局网站开发费用
  • 建设网贷网站网页排版软件
  • 网站内链分析中装建设股票有潜力吗
  • 网站的icp备案信息网站对企业的重要性
  • 用vue element-ui做的网站上海市工程建设检测网
  • 呼市赛罕区信息网站做一顿饭工作一站式做网站多少钱
  • 温州建设诚信网站服装代销的网站源码
  • 西安双语网站建设邗江建设局网站
  • wordpress edu v2.0爱站网站seo查询工具
  • 无锡市新吴区建设环保局网站营销网站建设定制
  • 学校网站建设报价成都建设路小学网站
  • 正规做网站的公司wordpress 批量 发布
  • 3800给做网站网站设计建设专业服务
  • 网站制作前景怎么样内蒙古交通建设质监局网站
  • 网站怎么添加背景苏州建设集团