基于最小二乘法的图像边界曲线拟合(matlab平台)

在这里插入图片描述

边缘检测与边界拟合是确定图像中的客观对象的重要方法,是图像处理和计算机视觉中的基本问题。本文旨在探讨经典的边缘检测算法,尤其是Canny算法的原理,尝试在matlab软件环境上实现Canny算法检测图像边缘并采样二次多项式拟合的原理对图像边界曲线实现拟合,并使用MATLAB构建GUI软件,便于曲线拟合操作实现。

GUI封面:
在这里插入图片描述

操作步骤:
1、选择“select a picture”载入图像:
在这里插入图片描述
在这里插入图片描述

2、点击“start”开始:
可以通过下拉菜单选择检测方式,也可通过myCanny滑动块,根据不同的情况手动选择合适的边缘效果:
在这里插入图片描述
在这里插入图片描述

3、点击“boundary curve fitting”进入边界曲线拟合:
点击“get pixel”获取采样像素点,“reverse”按钮翻转二值图像黑白位置,根据图片亮度自行选择,用鼠标采集到点后为自动显示出点的坐标,采集完成后点击“my fitting”,使用编写的二次多项式曲线拟合函数进行拟合,星号为采样点的坐标位置,在下方的面板中显示出拟合方程表达式:
在这里插入图片描述
使用matlab自带的polyfit函数对结果验证,polyfit拟合曲线采用较细黑色线。
在这里插入图片描述
4、从结果来看拟合效果基本可以认定是一致的。二次多项式对于曲线的拟合实现实现简单,效果较好,尤其是对于边界满足二次曲线性质的部分来说,通过采样拟合得到边界平滑且贴近真实边缘。不足之处就在于,对于边界曲线较复杂的情况下,拟合效果不佳,需要将边缘进行一定的拆分,多次拟合才能满足需求。这个时候如何拆分曲线,拆分位置如何连接等,又带来的新的问题。

在这里插入图片描述
在这里插入图片描述

本次专业综合实践中,对经典的边缘检测算法,尤其是Canny算法的原理做了深入的学习,并了解、掌握了二次多项式曲线拟合的方法,通过matlab编程实践,将所学到的算法流程实际地编写出,并通过matlab的GUI设计学习,将编程结果可视化、可交互地展示了出来,界面效果友好,考虑比较全面。

  • 4
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值