【思维导图】canny滤波 原理步骤细致剖析
canny滤波 原理步骤细致剖析
制作人
霏儿,百度飞桨PPDE开发者技术专家,计算机视觉、虚拟现实、元宇宙,欢迎技术交流
目的
最优边缘检测
含义
最优检测
- 算法能够尽可能多地标识出图像中的实际边缘
最优定位准则
- 标识出的边缘要尽可能与实际图像中的实际边缘尽可能接近
检测点与边缘点一一对应
- 图像中的边缘只能标识一次
步骤
转为灰度图
- 减少计算开销
滤波
高斯滤波
卷积核满足正态分布
核越大,图像越模糊
高斯核大小将影响canny滤波器的性能
- 尺寸越大,滤波器对噪声的敏感度会越低
- 尺寸越大也会让边缘检测的定位误差也将略有增加
对同像素加权相加,使得最相近的像素有更高重要度
目的
- 降低噪声
计算梯度大小&方向
计算Gx,Gy
- 即水平Gx和垂直Gy方向的一阶导数值
计算梯度值
计算梯度方向
非极大值抑制(NMS)
角度法
划分为0,45,90,135度四个角度
优点
- 计算简单
劣势
- 无插值,8邻域中计算的部分不是计算出来的梯度方向
插值法
优点
- 更精确
劣势
- 计算开销大
目的
- 梯度计算得到的边缘很粗,一条边缘中央一般很亮,两边亮度逐渐降低,可以根据这个特点去掉非局部灰度最高的“假边”
- 寻找像素点局部最大值,将非极大值点所对应的灰度值置为0,这样可以剔除掉一大部分非边缘的点
算法思路
- 将当前像素的梯度强度与沿正负梯度方向上的两个像素进行比较。
- 如果当前像素的梯度强度与另外两个像素相比最大,则该像素点保留为边缘点,否则该像素点将被抑制
原理
- 确定像素点C的灰度值在其8值邻域内是否为最大
- 图1中蓝色的线条方向为C点的梯度方向,这样就可以确定其局部的最大值肯定分布在这条线上,也即出了C点外,梯度方向的交点dTmp1和dTmp2这两个点的值也可能会是局部最大值。
- 因此,判断C点灰度与这两个点灰度大小即可判断C点是否为其邻域内的局部最大灰度点
- 如果经过判断,C点灰度值小于这两个点中的任一个,那就说明C点不是局部极大值,那么则可以排除C点为边缘
双阈值
方法
- 设置两个阀值(threshold),分别为maxVal和minVal
- 当某个像素点值高于threshold_low 时,则可以认为它是边缘,把它的灰度置为1
- 当某个像素点值高于threshold_low 时,则认为它不是边缘,把它的灰度置为0
- 处于threshold_low 和threshold_high 之间的像素点,如果它的八邻域有真边上的点,则认为它也是边缘,并把灰度置为1
目的
- 非极大值抑制之后,检测到的边缘线条比较多,我们可以滤掉一些很暗的边缘,并让主要的边缘凸显出来
- 过滤掉由于噪声和颜色变化引起的一些边缘像素
- 用弱梯度值过滤边缘像素,并保留具有高梯度值的边缘像素
【思维导图】canny滤波 原理步骤细致剖析相关推荐
- 管理系统中计算机应用第二章思维导图,第二章 项目范例:剖析网络订票系统 课件(15张PPT)...
第二章 项目范例:剖析网络订票系统 课件(15张PPT) 2.1 信息系统及其组成 2.2 信息系统的功能 2.3 信息系统中的计算机和移动终端 第二章 信息系统的组成与功能 教材p29-p33 信息 ...
- 物联网平台搭建的全过程介绍(二)——物联网平台通信思维导图
目前物联网平台很多,本例以阿里云物联网平台为例,介绍一下物联网平台通信的思维导图和实现的步骤,本文仅做功能的宏观描述,具体操作会在后续文章内详细介绍.其他物联网原理基本大同小异.思维导图如下图所示: ...
- 教你如何用思维导图把一本书内容绘制成一张A4纸!
教你如何用思维导图把一本书内容绘制成一张A4纸! 如何把一本书变成一张纸.如果一本书的关键内容能够体现在一张A4纸上那无疑是为我们节省了很多的时间,不光可以快速地理解书里的内容而且还能够体会作者想表达 ...
- 有哪些好用的思维导图软件?这个办法值得一试
思维导图模板在日常生活中并不罕见,思维导图对学生来说很好用,它是一种图形化的学习工具,能够帮助学生更好地理解.记忆知识,提高学习的效率和质量. 思维导图通过将知识与主题和子主题联系起来,能够帮助学生更 ...
- 数据结构与算法思维导图(学习笔记)
版本 数据结构与算法思维导图V1.0 V1.0分享版本这个可以直接看,不需要下载. 说明 1.free 2.目前内容主要包含内容包含: 数据结构与算法思维导图 包含:线性表.顺序结构.链式结构,栈与队 ...
- 排列组合思维导图_思维导图:进阶高效能人士的思维工具
你记录信息的方式越贴近大脑自然的工作方式,你的大脑就越能高效地触发对关键信息的记忆和理解效率.--<思维导图>作者东尼·博赞 信息爆炸的时代,精简思考是进阶高效能人士的一项必备技能.思维导 ...
- 手绘思维导图的学习技巧
iMindMap思维导图包含的模板,除一般的样式,还有独家手绘风格思维导图,线条自由且美观,满足多数人的需求,总有很多人在学习手绘思维导图iMindMap时,想要寻求技巧,使得手绘风格的导图更加好看, ...
- mindjet mindmanager2021 v20.2.201 中文版如何创建制作思维导图教程分享
MindManager是MindJet公司出品的一款专业绘制思维导图软件,作为较好的思维导图软件,其直观清晰的可视化界面可以快速捕捉.组织和共享想法和信息.MindManager思维导图主要由中心主题 ...
- 计算机英语第一张思维导图,小学语文、数学、英语思维导图模板集合,怎么画好看的思维导图...
原标题:小学语文.数学.英语思维导图模板集合,怎么画好看的思维导图 小学的孩子成绩不理想.注意力不集中,使很多家长苦恼.爱玩.好动是每个孩子的天性,面对枯燥的文字,缺乏形象化的内容难以引起孩子的学习兴 ...
最新文章
- 挨踢项目求生法则-战略篇
- fetch 自动加cookie_如何在shell中动态获取chrome浏览器的cookie信息
- (char*)malloc(sizeof(char))有什么用,为什么要这么写——简单介绍指针
- leetcode 390. Elimination Game | 390. 消除游戏(Java)
- activiti idea 请假流程_IDEA开发流程Activiti需要注意的一些坑
- Linux时间函数札记
- jquery ajax 文本丢失加号和连接号的问题
- C++ 各类树的算法
- jquery validate 联动验证
- linux 进程间通信机制(IPC机制)一消息队列
- 计算机cpu天体图,认识一下电脑的CPU,附2019最新CPU天梯图
- 《ElasticSearch技术解析与实战-朱林》
- 『杭电1859』最小长方形
- 2020第十一届蓝桥杯7月份省赛真题(JavaB组题解)
- Python pyglet 自制3D引擎入门(一) -- 绘制几何体、创建3D场景
- element-ui自适应问题
- word 三线表 中间辅助线即行线如何断开?
- 软件相关的小问题记录
- 谈谈Word2Vec的CBOW模型
- linux daemon步骤,编写Linux系统下Daemon程序的方法步骤