图像处理学习笔记-10-图像分割与边缘检测

news2024/12/23 12:11:23

图像分割的三大类方法:根据区域间灰度不连续搜寻区域之间的边界,在奇异性检测、边缘连接和边界检测介绍;以像素性质的分布进行阈值处理,在阈值处理介绍;直接搜寻区域进行分割,在基于区域的分割中介绍

奇异性检测

图像局部信息的光滑程度,不光滑的信息有孤立点、线、边缘

点检测

模板:假如模板计算值大于阈值则检测到一个点
− 1 − 1 − 1 − 1 8 − 1 − 1 − 1 − 1 \begin{matrix} -1 & -1 & -1\\ -1 & 8 & -1\\ -1 & -1 & -1 \end{matrix} 111181111

线检测

模板:假如和某一个模板的响应大于和其他模板的就与该模板对应的方向更加相关
[ − 1 − 1 − 1 2 2 2 − 1 − 1 − 1 ] [ − 1 − 1 2 − 1 2 − 1 2 − 1 − 1 ] [ − 1 2 − 1 − 1 2 − 1 − 1 2 − 1 ] [ 2 − 1 − 1 − 1 2 − 1 − 1 − 1 2 ] \left[ \begin{matrix} -1 & -1 & -1 \\ 2 &2&2\\-1&-1&-1 \end{matrix}\right] \left[\begin{matrix} -1&-1&2\\-1&2&-1\\2&-1&-1 \end{matrix}\right] \left[\begin{matrix} -1&2&-1\\-1&2&-1\\-1&2&-1 \end{matrix}\right] \left[\begin{matrix} 2&-1&-1\\-1&2&-1\\-1&-1&2 \end{matrix}\right] 121121121112121211111222111211121112

边缘检测

分为理想数字边缘和斜坡数字边缘模型,由黑到白的边缘,一阶导数为正,其他区域导数为0
模板:用差分近似偏导数

基于一阶导数的边缘检测

Roberts算子

1范数衡量幅度
[ 1 0 0 − 1 ] [ 0 1 − 1 0 ] \left[\begin{matrix} 1&0\\0&-1 \end{matrix}\right] \left[\begin{matrix} 0&1\\-1&0 \end{matrix}\right] [1001][0110]

Sobel算子

无穷范数衡量幅度
[ − 1 0 1 − 2 0 2 − 1 0 1 ] [ 1 2 1 0 0 0 − 1 − 2 − 1 ] \left[\begin{matrix} -1&0&1\\-2&0&2\\-1&0&1 \end{matrix}\right] \left[\begin{matrix} 1&2&1\\0&0&0\\-1&-2&-1 \end{matrix}\right] 121000121101202101

Prewitt算子

无穷范数衡量幅度
[ − 1 0 1 − 1 0 1 − 1 0 1 ] [ 1 1 1 0 0 0 − 1 − 1 − 1 ] \left[\begin{matrix} -1&0&1\\-1&0&1\\-1&0&1 \end{matrix}\right] \left[\begin{matrix} 1&1&1\\0&0&0\\-1&-1&-1 \end{matrix}\right] 111000111101101101

Canny算子

  • 用高斯滤波器平滑图像
  • 计算滤波后图像梯度的幅值和方向
  • 对梯度幅值应用非极大值抑制,其过程为找出图像梯度中的局部极大值点,把其他非局部极大值点置零以得到细化的边缘;
  • 用双阈值算法检测和连续边缘,使用两个阈值T1和T2(T1>T2),T1用来找到每条线段,T2用来在这些线段的两个方向上延伸寻找边缘的断裂处,并连接这些边缘。其中T1代表大于该值的肯定是边缘,T2表示小于该值的肯定不是边缘。

基于二阶导数的边缘检测

拉普拉斯算子

模板:
∇ 2 f = ∂ 2 f ∂ x 2 + ∂ 2 f ∂ y 2 \nabla^2f=\frac{\partial^2f}{\partial x^2}+ \frac{\partial^2f}{\partial y^2} 2f=x22f+y22f
[ 0 1 0 1 − 4 1 0 1 0 ] \left[ \begin{matrix} 0&1&0\\1&-4&1\\0&1&0 \end{matrix} \right] 010141010

拉普拉斯-高斯边缘检测算子LOG

先采用高斯函数对图像进行滤波,之后对滤波之后的图像进行拉普拉斯运算,算的值等于0的点是边界点
两种等效计算方法:

  • 图像与高斯函数卷积,再求卷积的拉普拉斯微分
  • 求高斯函数的拉普拉斯微分,再与图像卷积

边缘连接和边界检测

霍夫变换

在找出边界点集之后,需要连接,形成完整的边界图像描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

阈值处理

基于灰度统计直方图来切分阈值
T = T [ x , y , p ( x , y ) , f ( x , y ) ] T = T[x,y,p(x,y),f(x,y)] T=T[x,y,p(x,y),f(x,y)]
p ( x , y ) p(x,y) p(x,y)表示该点的局部性质, f ( x , y ) f(x,y) f(x,y)是该点对应的灰度级

基本全局阈值

在这里插入图片描述

基本自适应阈值

在这里插入图片描述

最佳全局和自适应阈值

通过边界特性选择阈值

基于不同变量的阈值

区域分割

区域生长的基本概念

区域生长的基本思想是将具有相似属性的像素集合起来构成区域。
具体先对每个需要分割的区域找一个种子像素作为生长的起始点,然后将种子像素周期邻域中与种子像素有相同或相似性质的像素合并到种子像素所在的区域。
将这些新像素当作新的种子像素继续进行上面的过程,直到再没有满足条件的像素。

四叉树分解的分割法

将方形的原始图像分成四个相同大小的方块,判断每个方块是否满足一致性标准;如果满足就不再继续分裂,如果不满足就再细化成四个方块,并对细分得到的方块继续应用一致性经验。
这个迭代重复的过程直到所有的方块都满足一致性标准才停止。
最后,四叉树分解的结果可能包含多种不同尺寸的方块。

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

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

相关文章

数据库、计算机网络,操作系统刷题笔记8

数据库、计算机网络,操作系统刷题笔记8 2022找工作是学历、能力和运气的超强结合体,遇到寒冬,大厂不招人,可能很多算法学生都得去找开发,测开 测开的话,你就得学数据库,sql,oracle&…

网站各个功能基本实现

1.前面已经介绍前后端的交互 2.今天实现网站功能的基本实现 也就是查询数据库。 网站类型为展示型网站。 页面如下: 点击政府公告显示: 点击机构设置显示: 后面不一一展示,主要实现六大功能的展示功能。 后续就实现管理员维…

PostgREST的安装部署(Windows和Linux环境)

下载地址:https://github.com/PostgREST/postgrest/releases 官方文档地址:Overview of Role System — PostgREST 9.0.0 documentation Windows 先下载对应系统的安装包: 下载之后解压会得到一个postgrest.exe可执行文件 创建配置文件&a…

解决 Android 开发过程中 出现 Duplicate class(包冲突)

1、现在大部分的项目都是支持 Androidx 的,所以出现 Duplicate 的时候 先把 gradle.properties 文件中添加参数,支持使用AndroidX android.useAndroidXtrue android.enableJetifiertrue 2、有些 *.jar/*.aar 不支持 AndroidX 的时候,将上面…

抽取_内插_半带滤波器_多相滤波器

文章目录半带滤波器多相抽取滤波器多相内插滤波器半带抽取器和半带内插器参考资料:Xilinx FIR Compiler v7.2 LogiCORE IP Product Guide PG149半带滤波器 半带滤波器的阶数为偶数,系数长度为奇数,且除了中间系数为0.5外,其余偶数…

mybatisplus 使用mybatis中的配置、mapper配置文件

1、在application.properties中配置mybatis的配置文件路径,例如: #指定mybatis-config.xml的位置 mybatis-plus.config-location classpath:mybatis/mybatis-config.xml 即在和application.properties同级目录下的mybatis目录中创建mybatis的配置文件m…

数制编码详解:二进制八进制十六进制的转换,原码、补码、反码、移码的定义

参考资料:《深入理解计算机网络(王达)》 文章目录一,数制1.1 基本数制1.2 不同数制之间的相互转换二,编码一,数制 1.1 基本数制 “数制”是“数据进制”的简称,也就是表示数据逢几进位的意思&a…

chatGPT的体验,是不是真智能?

目录 🏆一、前言 🏆二、安装 🏆三、普通对话 🚩1、chatGPT的ikun性 🚩2、chatGPT的日常对话 🏆四、实用能力 🏆五、代码改正 🏆六、写代码 🏆七、讲解代码 🏆…

ESXI精简thin磁盘迁移存储位置保留磁盘类型不变-无vc方式

运行2年了ESXI的SSD存储上很多VM并带多层快照,最近磁盘速度异常,迁移到新存储,都是thin磁盘;如有vCenter条件,采用“迁移”即可完美解决,既使磁盘类型thin不变又保留快照结构。如无vCenter条件的操作方式细…

Unity-iOS工程导出Xcode自动构建方法

Unity-iOS发布基本流程首先在Unity中导出Xcode工程,然后在Xcode工程中设置IOS打包的一些流程,诸如引入lib、framework或其他资源、设置签名及其他编译设置、加入编译脚本等等操作。 这些操作如果每次都是在导出Xcode后手动操作,一来浪费时间…

【C++ STL】-- 红黑树的插入实现

目录 红黑树的概念 二叉树搜索树的应用 红黑树节点的定义 红黑树结构 insert 需调整的多情况的核心思维: 需调整的多情况分类讲解: 情况一: 情况二: 情况三: 总结: 代码实现: 对于红黑树是否建立成功的检查 升序打印…

C++--类型转换--1128

1.C语言中的类型转换 分为隐式类型转化、显示强制类型转化。 隐式类型转化用于意义相近的类型,比如int,double,short都是表示数值的类型 int i1; double di; //编译、结果无问题 这里是隐式类型转换。 显示强制类型转换 显示强制类型用于意义不相近的类型&…

Redis Sentinel

高可用架构-Redis Sentinel Replication 缺点 接着之前的Redis Replication 主从复制架构,看似解决了主节点并发过大时,master节点处理繁忙的问题。将一部分读数据的请求交给从节点处理,从而将请求进行分散处理。但是该架构却存在很明显的缺…

基于LEACH的随机网络生成无线传感器网络路由协议的仿真比较(Matlab代码实现)

👨‍🎓个人主页:研学社的博客 💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜…

【深度学习】超详细的 PyTorch 学习笔记(上)

文章目录一、PyTorch环境检查二、查看张量类型三、查看张量尺寸和所占内存大小四、创建张量4.1 创建值全为1的张量4.2 创建值全为0的张量4.3 创建值全为指定值的张量4.4 通过 list 创建张量4.5 通过 ndarray 创建张量4.6 创建指定范围和间距的有序张量4.7 创建单位矩阵&#xf…

【力扣算法简单五十题】23.环形链表

给你一个链表的头节点 head ,判断链表中是否有环。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置(索…

基于多种优化算法及神经网络的光伏系统控制(Matlab代码实现)

💥💥💥💞💞💞欢迎来到本博客❤️❤️❤️💥💥💥 🎉作者研究:🏅🏅🏅本科计算机专业,研究生电气学硕…

NNDL 实验八 网络优化与正则化(3)不同优化算法比较

文章目录7.3 不同优化算法的比较分析7.3.1 优化算法的实验设定7.3.1.1 2D可视化实验7.3.1.2 简单拟合实验7.3.1.3 与Torch API对比,验证正确性7.3.2 学习率调整7.3.2.1 AdaGrad算法7.3.2.2 RMSprop算法7.3.3 梯度估计修正7.3.3.1 动量法7.3.3.2 Adam算法7.3.4 不同优…

【并发】深度解析CAS原理与底层源码

【并发】深度解析CAS原理与底层源码 什么是 CAS? CAS全称是(Compare And Swap,比较并交换),通常指的是这样一种原子操作(针对一个变量,首先比较它的内存值与某个期望值是否相同,如…

不就是Redis吗?竟让我一个月拿了8个offer,其中两家都是一线大厂

在高并发的场景Redis是必须的,而 Redis非关系型内存存储不可谓不彪悍。 支持异步持久化达到容灾:速度快、并发高。官方号称支持并发11万读操作,并发8万写操作。惊了吗? 支持数据结构丰富:string(字符串&a…