【数学建模】CUMCM-2014A 嫦娥三号软着陆过程 避障阶段图像处理

本文详细介绍了嫦娥三号软着陆过程中避障阶段的图像处理技术,包括高斯滤波、梯度计算、二值化、开闭运算等步骤,通过霍夫圆优化和搜索算法确保安全降落。最终通过带通滤波筛选出可降落区域。
摘要由CSDN通过智能技术生成

实现

图像高斯滤波→求梯度图→二次高斯滤波→二值化→开运算、膨胀→面积带通滤波→求霍夫圆进行优化→搜索定位。

1.图像模糊

也就是对图像进行高斯滤波。在我们得到高程图后,它还存在着不少孤立噪声点,因此我们需要对其进行滤波。我们选用的是高斯滤波。
高斯滤波就是对整幅图像进行加权平均的过程,每一个像素点的值,都由其本身和邻域内的其他像素值经过加权平均后得到。具体操作是:用一个掩模扫描图像中的每一个像素,以邻域内像素的加权平均灰度值去替代模板中心像素点的值。

2.求梯度

由于需要寻找平坦的合适降落的区域,因此我们对2300m*2300m的高程图求梯度,我们认为梯度越大越不平坦,梯度越小越平坦。我们使用sobel算子求取梯度。
Sobel算子的原理是,使用两个3*3矩阵(如下图)和原始图片进行卷积,分别得到横向和纵向的梯度值,将其取绝对值并相加就能得到梯度图。

得到的梯度图如下所示:
这里写图片描述

3.再次图像模糊

由于仅仅依靠梯度图得到的效果不是特别好,我们还需要做其他处理。因此我们再做一次图像模糊。

4.图像二值化

原始图像经过模糊后,我们需要确定一个阈值并对图像进行二值化,将高于阈值的像点变成1,低于阈值的像素点变成0,从而图像变为黑白的二值图。关于阈值的选取有不少方法,比如全局平均值,即sum(所有点)/2300^2。尽管阈值的选取对结果有一定的影响,但不会很大,因此暂不考虑复杂的情况。我们一开始使用的是matlab自带的根据灰度图选取阈值的函数,但是觉得效果不佳,因此稍微做了人工调整,定下了阈值。黑白二值图如下图所示:
这里写图片描述

5.开闭运算、膨胀、腐蚀

尽管之前进行了滤波,不过仍旧存在着两个问题,其一是还是有许多零散的点分布在图中,需要进一步降噪;其二是由于图像本身的像素不够高,导致前两步处理之后有些陨石坑的边缘没了,导致它不够完整,航天器如果误判可能会飞到陨石坑上,因此会有潜在的危险。综合这两个问题,我们需要对图像进行开运算和闭运算。
其中开运算是先腐蚀后膨胀,它完全删除了不能包含结构元素的对象区域,平滑了对象的轮廓,断开了狭窄的连接,去掉了细小的突出部分。因此使用开运算能一定程度上解决第一个问题。闭运算是先膨胀后腐蚀,它会将狭窄的缺口连接起来形成长的弯口,并填充比结构元素小的洞,即将区域联通,因此它能一定程度上解决第二个问题,不过鉴于膨胀的效果更为直接,因此我们用膨胀来联通区域。
至于腐蚀和膨胀的次数问题,需要根据实际图像来确定,我们选取的原则类似Neyman-Pearson原则,在控制第二类问题带来的误差小于某个值的情况下尽可能减小第一类问题带来的误差。即优先保证安全性(毕竟零散的野点其实影响没有很大)。
我们对前面得到的图先进行开运算,然后膨胀,得到如下的图:
这里写图片描述

6.联通区域面积的带通滤波

相当于利用面积进行区域的筛选。我们求取联通区域的面积,将过大的和过小的都滤掉,留下来的是主要的陨石坑区域。其中过大区域是陨石坑外围区域,包括平坦区域,过小区域是前面操作后仍旧遗留下来的零散的点域,经过这样的带通滤波,我们可以得到可降落区域,如下图白色区域所示:
这里写图片描述

7.霍夫圆优化

由于较深的陨石坑能够在梯度图中得到显著的表达,但是较浅的陨石坑就不够明显了,因此需要在前面的基础上进行一些纠正。首先我们考虑到陨石坑的二值化图像形态

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值