HALCON 算子 之 形态学操作算子

文章目录

  • 什么是形态学操作?
  • 为什么要形态学操作?
  • 怎么形态学操作?
    • 腐蚀 —— Erosion
      • erosion1
      • erosion_circle:
      • erosion_rectangle1:
    • 膨胀 —— Dilation
      • dilation1
      • dilation_circle
      • dilation_rectangle1
    • 打开 —— Opening
      • opening
      • opening_circle
      • opening_rectangle1
    • 关闭 —— Closing
      • closing
      • closing_circle
      • closing_rectangle1

什么是形态学操作?

  • 形态学操作,也被称为形态学图像处理或形态学变换,是图像处理领域中的一组非线性操作。这些操作基于图像的几何形状,利用预定义的结构元素(也称为核或探针)对图像进行探测和变换。
  • 形态学操作主要处理二值图像或灰度图像,用于提取图像中的形状特征、去除噪声、分离物体、填充孔洞等。

为什么要形态学操作?

  • 图像预处理
    • 噪声去除:形态学操作,特别是腐蚀和开运算,可以有效地去除图像中的细小噪声点。
    • 背景分割:通过膨胀和闭运算,可以将前景物体与背景更清晰地分离开来。
  • 图像分割
    • 区域分离:利用形态学操作,如腐蚀和膨胀,可以分离出图像中相互接触或重叠的物体。
    • 边缘检测:形态学梯度操作能够突出图像中的边缘特征,从而有助于更精确地分割图像。
  • 特征提取
    • 形状分析:形态学操作可以提取出图像中的形状特征,如物体的尺寸、形状和方向等。
  • 图像增强
    • 对比度增强:通过形态学操作,如顶帽变换和黑帽变换,可以增强图像的对比度,使图像中的细节更加清晰。
    • 填充孔洞:闭运算可以填充图像中的细小孔洞,从而改善图像的完整性。

怎么形态学操作?

腐蚀 —— Erosion

  • 腐蚀操作的主要用途包括消除细小的噪声区域、将连通的区域断开
函数名说明
erosion1腐蚀一个区域
erosion _ circle腐蚀一个圆形结构基础的一个区域
erosion _ rectangle1腐蚀一个矩形结构基础的一个区域

erosion1

  • 按样品腐蚀一个区域。
  • 函数erosion1(Region,StructElement:RegionErosion: Iterations:)
  • 参数
    • Region :输入需要腐蚀的区域;
    • StructElement :输入腐蚀区域样品(大小) ;
    • RegionErosion:输出腐蚀后的区域;
    • Iterations:输入往外腐蚀的次数, 1≤ Iterations(lin);
  • 效果
    • erosion1 (ConnectedRegions, ConnectedRegions, RegionErosion, 1)

    • 腐蚀前:
      在这里插入图片描述

    • 腐蚀后:
      在这里插入图片描述

erosion_circle:

  • 使用圆形结构元素对区域进行腐蚀。
  • 函数erosion_circle(Region:RegionErosion: Radius:)
  • 参数
    • Region :输入需要腐蚀的区域;
    • RegionErosion :输出腐蚀后的区域;
    • Radius :输入圆形结构基础的半径;
  • 效果
    • erosion_circle (ConnectedRegions, RegionErosion, 3.5)

    • 腐蚀前:
      在这里插入图片描述

    • 腐蚀后
      在这里插入图片描述

erosion_rectangle1:

  • 使用矩形结构元素对区域进行腐蚀。
  • 函数erosion_rectangle1(Region:RegionErosion: Width, Height:)
  • 参数
    • Region :输入需要腐蚀的区域;
    • RegionErosion :输出腐蚀后的区域;
    • Width:输入腐蚀矩形宽度;
    • Height :输入腐蚀矩形高度;

膨胀 —— Dilation

  • 膨胀操作会增加图像中前景物体的边界,通常用于扩大物体、连接相邻的物体或填补物体内部的细小孔洞
函数名说明
dilation1扩大一个区域
dilation _ circle扩大一个圆形结构基础的一个区域
dilation _rectangle1扩大一个矩形结构基础的一个区域

dilation1

  • 扩大一个区域
  • 函数dilation_circle(Region:RegionDilation: Radius:)
  • 参数
    • Region:输入需要扩大的区域;
    • StructElement:输入扩充区域样品(大小) ;
    • RegionDilation :输出扩充后的区域;
    • Iterations: 输入往外扩充的次数, 1 ≤ Iterations(lin);
  • 效果
    • dilation1 (SelectedRegions, ConnectedRegions, RegionDilation, 1)
    • 膨胀前:
      在这里插入图片描述
    • 膨胀后:
      在这里插入图片描述

dilation_circle

  • 扩大一个圆形结构基础的一个区域
  • 函数dilation_circle(Region:RegionDilation: Radius:)
  • 参数
    • Region:输入需要扩充的区域;
    • RegionDjlation :输出扩充后的区域;
    • Radius:输入圆形结构基础的半径;

dilation_rectangle1

  • 扩大一个矩形结构基础的一个区域
  • 函数dilation_rectangle1(Region:RegionDilation: Width, Height:)
  • 参数
    • Region:输入需要扩充的区域;
    • RegionDilation :输出扩充后的区域;
    • Width:输入扩充矩形宽度;
    • Height:输入扩充矩形高度;

打开 —— Opening

  • 开运算是先腐蚀后膨胀的操作,它有助于去除小的物体、在物体间分离细小的连接以及在保持物体大小不变的情况下平滑物体的边界
函数名说明
opening打开一个被提取了成分的区域
opening _ circle打开一个圆形结构基础的一个区域
opening _ rectangle1打开一个矩形结构基础的一个区域

opening

  • 打开一个被提取了成分的区域
  • 函数 opening(Region, StructElement:RegionOpening::)
  • 参数
    • Region:输入一个需要被提取圆形成分的区域;
    • StructElement :输入成分区域;
    • RegionOpening : 输出被提取了成分该区域;

opening_circle

  • 打开一个圆形结构基础的一个区域;
  • 函数opening_circle(Region:RegionOpening: Radius:)
  • 参数
    • Region:输入一个需要被提取圆形成分的区域;
    • RegionOpening:输出被提取圆形成分的区域;
    • Radius:输入圆形成分的半径;

opening_rectangle1

  • 打开一个矩形结构基础的一个区域;

  • 函数opening_rectangle1(Region:RegionOpening: Width, Height:)

  • 参数

    • Region:输入一个需要被提取矩形成分的区域;
    • RegionOpening :输出一个提取了矩形成分的区域;
    • Width: 输入矩形成分的宽度;
    • Height:输入矩形成分的高度;
  • 效果

    • opening_rectangle1 (SelectedRegions, RegionOpening, 1, 10)
    • 开运算前图像:
      在这里插入图片描述
    • 开运算后图像:
      在这里插入图片描述

关闭 —— Closing

  • 闭运算是先膨胀后腐蚀的操作。它使用指定的结构元素对图像进行膨胀处理,以填补物体内部的细小空洞连接邻近的物体,然后再进行腐蚀处理,以恢复目标区域的边界形态。
函数名说明
closing关闭一个成分区域结构的修正区域
closing_circle关闭一个圆形结构基础的修正区域
closing_rectangle1关闭一个矩形结构基础的修正区域

closing

  • 关闭一个成分区域结构的修正区域;
  • 函数 closing(Region, StructElement:RegionClosing::)
  • 参数
    • Region:输入需要关闭其中部分(区域)的区域
    • StructElement:输入需要关闭的成分区域;
    • Structuring element:输出修正后的区域;

closing_circle

  • 关闭一个圆形结构基础的修正区域;
  • 函数closing_circle(Region:RegionClosing: Radius:)
  • 参数
    • Region:输入要被关闭的区域;
    • RegionClosing :输出关闭后的区域;
    • Radius:输入(需要关闭小于该)圆形基础的半径;

closing_rectangle1

  • 关闭一个矩形结构基础的修正区域;
  • 函数closing_rectangle1(Region:RegionClosing: Width, Height:)
  • 参数
    • Region:输入需要关闭的区域;
    • RegionClosing :输出关闭后的区域;
    • Width:输入(需要关闭小于该)矩形的宽度;
    • Height:输入(需要关闭小于该)矩形的高度;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/63240.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[金盾杯 2024] PWN 复现

好长时间不作题了,在复现平台上看到这个比赛,作了一下,题过于简单了。不过密码一言难尽。 Orange 要说libc-2.23有多老,我一开始学PWN的时候还有不少,这两年几乎不见了。一些比赛估计是拿的旧题。 远看像个堆题&…

pytest入门九:feature

fixture是pytest特有的功能,用以在测试执行前和执行后进行必要的准备和清理工作。使用pytest.fixture标识,定义在函数前面。在你编写测试函数的时候,你可以将此函数名称做为传入参数,pytest将会以依赖注入方式,将该函数…

uniapp Vue3 语法实现浏览器中音频录制、停止、保存、播放、转码、实时音频输出

一、引言 在现代 Web 应用开发中,音频处理功能变得越来越重要。本文将详细介绍如何使用 uniapp 结合 Vue3 语法在浏览器环境中实现音频录制、停止、保存、播放、转码以及实时音频输出等一系列功能。通过深入剖析代码结构和功能实现细节,帮助读者全面理解和掌握相关技术,以便…

【jpa】会什么jpa会自动新建一个hibernate_sequence表

目录 1. 说明2. 主键生成策略3. hibernate_sequence表的创建4. 如何避免自动创建hibernate_sequence表 1. 说明 1.JPA(Java Persistence API)在默认情况下,如果使用Hibernate作为持久化框架,并且没有显式指定主键生成策略&#x…

秒优科技-供应链管理系统 login/doAction SQL注入漏洞复现

0x01 产品简介 秒优科技提供的供应链管理系统,即秒优SCM服装供应链管理系统,是一款专为服装电商企业设计的全方位解决方案。是集款式研发、订单管理、物料管理、生产管理、工艺管理、收发货管理、账单管理、报表管理于一体的服装电商供应链管理解决方案。它涵盖了从企划到开…

【TF-IDF】Hugging Face Model Recommendation System

利用了机器学习技术的模型检索 TF-IDF (Term Frequency-Inverse Document Frequency) 文本特征提取例子This project is a Hugging Face Model Recommendation System designed to assist users in discovering the most suitable models based on their task descriptions. Th…

136.WEB渗透测试-信息收集-小程序、app(7)

免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动! 内容参考于: 易锦网校会员专享课 上一个内容:135.WEB渗透测试-信息收集-小程序、app(6) 进入之后我们通过输入…

samout llm解码 幻觉更低更稳定

这段代码定义了一个简单的对话生成系统,包括模型加载、词汇表加载、以及基于给定提示生成文本的功能。下面是对代码的解析: load_model_and_voc(device"cpu"): 该函数用于加载预训练的模型和词汇表(vocabulary)。它首先…

K近邻原理和距离

K近邻 基本思想欧氏距离算法流程代码基于近邻用户的协同过滤基于近邻物品的协同过滤杰卡德相似度 基本思想 我们根据涂色样本点和未涂色样本点 X 的距离给涂色样本点编号1-6,即:1号样本点距离X最近,其余次之。 那么问题来了:样本…

Transformer 中 Self-Attention 的二次方复杂度(Quadratic Complexity )问题及改进方法:中英双语

Transformer 中 Self-Attention 的二次方复杂度问题及改进方法 随着大型语言模型(LLM)输入序列长度的增加,Transformer 结构中的核心模块——自注意力机制(Self-Attention) 的计算复杂度和内存消耗都呈现二次方增长。…

模型 A/B测试(科学验证)

系列文章 分享 模型,了解更多👉 模型_思维模型目录。控制变量法。 1 A/B测试的应用 1.1 Electronic Arts(EA)《模拟城市》5游戏网站A/B测试 定义目标: Electronic Arts(EA)在发布新版《模拟城…

Java修饰符详解:从基础到高级用法

在Java编程语言中,有许多修饰符可以使用,它们大致可以分为两大类:访问控制修饰符、其他类型的修饰符。 这些修饰符主要用于指定类、方法或变量的特性,并且通常位于声明语句的开头部分。下面通过一些示例来进一步说明这一点&#…

onnx文件转pytorch pt模型文件

onnx文件转pytorch pt模型文件 1.onnx2torch转换及测试2.存在问题参考文献 从pytorch格式转onnx格式,官方有成熟的API;那么假如只有onnx格式的模型文件,该怎样转回pytorch格式? https://github.com/ENOT-AutoDL/onnx2torch提供了…

Git merge 和 rebase的区别(附图)

在 Git 中,merge 和 rebase 是两种用于整合分支变化的方法。虽然它们都可以将一个分支的更改引入到另一个分支中,但它们的工作方式和结果是不同的。以下是对这两者的详细解释: Git Merge 功能:合并分支,将两个分支的…

【Web】0基础学Web—js运算符、选择结构、循环结构

0基础学Web—js运算符、选择结构、循环结构 js运算符选择结构循环结构 js运算符 算术运算符: - * / %取余 赋值运算符: - * / % 单目运算符: i i --i i– 单独使用是自增1 或 自减1 如果被使用&#xff0c;先看到啥先操作啥 比较运算符&#xff1a; > 、 >、 < 、…

系列3:基于Centos-8.6 Kubernetes使用nfs挂载pod的应用日志文件

每日禅语 古代&#xff0c;一位官员被革职遣返&#xff0c;心中苦闷无处排解&#xff0c;便来到一位禅师的法堂。禅师静静地听完了此人的倾诉&#xff0c;将他带入自己的禅房之中。禅师指着桌上的一瓶水&#xff0c;微笑着对官员说&#xff1a;​“你看这瓶水&#xff0c;它已经…

tkdiff安装:Linux下文本对比工具

tkdiff在Linux下源码安装 1.下载解压2.编译安装3.配置环境变量4.验证及运行 本文&#xff0c;在Linux下使用源码安装tkdiff工具&#xff0c;以tkdiff-4.2版本为例&#xff0c;其他版本根据需要替换即可。 1.下载解压 去 http://sourceforge.net/projects/tkdiff/files/tkdiff…

耐蚀镍基合金的焊接技术与质量控制

耐蚀镍基合金是一类在腐蚀环境中具有优异性能的合金材料&#xff0c;广泛应用于化工、海洋工程、石油天然气等领域。其焊接技术与质量控制对于确保合金的使用性能和安全性至关重要。以下是对耐蚀镍基合金焊接技术与质量控制的详细探讨。 一、焊接技术 焊条选择 耐蚀镍基合金的焊…

Django REST framework(DRF)在处理不同请求方法时的完整流程

文章目录 一、POST 请求创建对象的流程二、GET 请求获取对象列表的流程三、GET 请求获取单个对象的流程四、PUT/PATCH 请求更新对象的流程五、自定义方法的流程自定义 GET 方法自定义 POST 方法 一、POST 请求创建对象的流程 请求到达视图层 方法调用&#xff1a; dispatch说明…

机器视觉与OpenCV--01篇

计算机眼中的图像 像素 像素是图像的基本单位&#xff0c;每个像素存储着图像的颜色、亮度或者其他特征&#xff0c;一张图片就是由若干个像素组成的。 RGB 在计算机中&#xff0c;RGB三种颜色被称为RGB三通道&#xff0c;且每个通道的取值都是0到255之间。 计算机中图像的…