canny检测出的多个边缘合成一个_传统图像处理——Canny、连通域、提骨架

本文介绍了Canny边缘检测算法的详细步骤,包括高斯滤波、梯度计算、非极大值抑制和双阈值处理。接着探讨了连通域分析,讲解了Two Pass和Seed Filling两种方法,并通过实例展示了它们在米粒计数中的应用。最后提到了Zhang-Suen细化算法,用于提取图像骨架。
摘要由CSDN通过智能技术生成

?⛷️❄️?????️?️

开始之前学习一个单词热热身:

revitalize 

v. 使恢复生机 

This hair conditioner is excellent for revitalizing dry, lifeless hair. 


用最小回忆 堆成宇宙 …

最近花小半个月时间完成了传统图像处理中的边缘检测包括Sobel算子、Canny算子,连通域分析包括Two pass、Seed Filling、Zhang Suen骨架提取方法,以上方法均为底层实现,均未调用任何openCV等其他库函数。

还包括基于QT实现的GUI,是在github中fork一个源码做的修改,该源码及以上所有实现算法由C++语言完成,获取方式见文末。

首先放一张可可爱爱的GUI图像处理界面,其中红框中分别代表自行实现的Sobel算子、Canny算子、米粒计数和骨架提取算法。

0acee1c2802364226e14cf6b993b1ac7.png

1 边缘提取 …

边缘检测是基于灰度突变来分割图像的最常用的方法。有三种常用的边缘建模方法,不同的边缘建模方法是根据它们的灰度剖面来分类的。 a4c106fc04a5d5d8245843663db2da58.png 台阶边缘是指在1个像素的距离上发生的两个灰度级间理想的过渡,如图3-1a所示。而在实际中,数字图像都存在被模糊且带有噪声的边缘,在这种情况下,边缘被建模为一个更接近灰度斜坡的剖面,如图3-1b所示。其斜坡的斜度与边缘的模糊程度成反比。此时一个边缘点是斜坡中包含的任何点,而一条边缘线段将是一组已连接起来的这样的点。边缘的第三种模型是“屋顶”边缘,屋顶边缘是通过一个区域的线的模型,屋顶边缘的基底(宽度)由该线的宽度和尖锐度决定。 检测数字图像中的边缘可由图像灰度剖面的一阶导数和二阶导数来表征。在斜坡模型的各个点处,一阶导数为正,而在恒定灰度区域的一阶导数为零。此外,在斜坡的开始处,二阶导数为正;在斜坡的结束处,二阶导数为负;在斜坡上的各点处,二阶导数为零。故一阶导数的幅度可用于检测图像中的某个点处是否存在一个边缘,而二阶导数的符号可用于确定一个边缘像素位于该边缘的暗的一侧还是亮的一侧。以上便是数字图像边缘检测的基本原理介绍。 然而,实际得到的数字图像中难免会包含噪声,而导数在求取过程中对于噪声十分敏感,即微弱的可见噪声对检测边缘所用的两个关键导数存在严重影响,故在求取导数之前对图像进行平滑处理尤为重要。综上所述,执行边缘检测的三个基本步骤为: 1、为降噪对图像进行平滑处理。 2、边缘点的检测。通过某算子对数字图像进行滤波,得到边缘点的潜在候选者集合。 3、边缘定位。从候选边缘点中选择组成边缘点集合中的真实成员。 接下来将重点介绍广泛应用于边缘检测的Sobel算子和Canny边缘检测算子。
1.1 Sobel算子 … Sobel算子主要用于获得数字图像的一阶梯度,要得到一幅图像的梯度,则要求在图像的每个像素位置处计算偏导数,而对于数字图像,则要求关于每一像素点的领域上的偏导数的数字近似即可。
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值