技术文章和通讯

开发和部署声纳和回声测深数据分析软件

作者:Jean-Marie Augustin, Ifremer


虽然卫星照片和雷达提供了几乎每一平方米地球表面的高分辨率图像,但海底的图像更加模糊,也不那么详细。然而,精确的海底地图对科学研究和许多工业应用都至关重要。除了对海洋学、地球科学和生物学的兴趣之外,对海床轮廓和组成的精确了解还有助于电力公司设置风力发电场和钻井平台,帮助通信公司规划光缆的铺设位置,帮助环境专家评估气候变化对海洋的影响。

对海底相对模糊的观察并不是因为缺乏数据;配备了多波束回声探测仪(mess)和侧扫描声纳系统的船只对广阔的海域进行了调查,收集了数tb的原始海洋学数据。然而,在科学家和工程师将这些信息应用于他们的工作之前,他们必须将其转化为有意义的数据。

虽然我不是一个编程专家,MATLAB®使我能够应用我在信号处理和声纳方面的专业知识来开发和部署SonarScope®这是一款用于处理、分析和可视化原始MBES数据的高性能软件产品。SonarScope高度可定制,为MBES数据处理提供了一种新颖的方法,使其成为需要测试和校准MBES系统的研究人员和工程师的宝贵工具。

MATLAB被证明是开发SonarScope的理想环境,因为它使我能够开发算法,可视化结果,然后在迭代循环中改进算法。对于c++这样的语言,设计迭代需要更长的时间,这需要额外的编译和链接步骤,以及大量的额外编程来可视化结果。

从基本算法到独立软件

当我开始开发MBES和声纳数据分析算法时,我并没有打算创建一个完整的软件包;我只是需要可靠的分析工具进行我的研究。我用C语言开发了最初的算法,因为C语言的编译、链接和执行周期较慢,而且无法在调试器中检查数据,所以我发现它效率低下,于是我转向了MATLAB。

在MATLAB中,我开发交互式算法,并可以立即绘制结果,以看到任何变化的影响。信号处理工具箱中的函数,图像处理工具箱、优化工具箱、“统计和机器学习工具箱”进一步加快开发速度,因为我不必自己编写和调试它们。

在开发出最终形成SonarScope基础的算法后不久,我意识到,如果我创建一个图形界面来驱动MBES数据的分析,我的工作可以有更广泛的影响,我的更多同事可以利用我的专业知识。这促使我使用定制的标签和按钮来构建SonarScope界面,使用的术语我的同事很容易理解(图1)。这个界面得到了我的同事的好评。它还提高了其他机构研究人员对我工作的认识。

SonarScope接口,使用MATLAB构建。
图1。SonarScope接口,使用MATLAB构建。中心图像显示活动数据层。下方的按钮支持与数据的交互。上面的菜单提供了对处理工具的快速访问。

随着对SonarScope的兴趣扩展到Ifremer之外,我使用了MATLAB编译器建立一个独立的软件包,即使研究人员无法访问MATLAB也可以使用。今天,SonarScope可以被任何研究人员或工程师使用,希望处理海底测绘声呐数据。

收集的数据

为了勘测海底,一艘配备了MBES的船沿着一系列平行线覆盖要绘制地图的区域。测量线两侧覆盖的区域可达20公里宽。它们重叠以确保没有未映射的区域。当船沿着每条航道航行时,MBES传输一系列高强度、短时间的信号ping.每一个ping信号都在几百个波束中接收和处理,这些波束在一个跨度内从船的正下方引导到带状边缘(图2)。

sonarscope_fig2_w.jpg
图2。收集MBES数据。一个单一的ping信号被传送到水中,来自海底的回声在多个波束中被接收。图片由ATLAS HYDROGRAPHIC提供。

对于每一个波束,MBES记录从发射信号到接收回波之间的时间间隔。这个度量被用来计算从船舶到被波束“看到”的海底点的倾斜范围,并最终建立描述海底的数字地形模型。记录回声的强度是因为它与海床的反射率有关,因此与其物理特性有关。这种反射率可以用来区分岩石、沙子、植被和海床的其他特征。

为了绘制出精确到厘米的海底地图,算法必须考虑到回声延迟、波束的发射角度和船舶的运动(横摇、俯仰和隆起)。所有这些原始数据都被记录下来,以及mbe传输的每一个ping信号的经纬度。在一次调查中收集到的数据通常从几天到几周不等,有时高达千兆字节。

执行复杂的转换

将从MBES设备获得的原始数据转换为海底地图需要涉及多个几何图形的复杂转换。使用MATLAB和映射工具箱,我开发了处理单个ping信号的数据并计算ping信号覆盖的海床深度的算法(图3)。除了识别海床的特征外,算法还可以检测海水的特征。例如,它们可以探测到由海底气体释放产生的气泡羽流。

由SonarScope处理的水深测量数据的3D汇编
图3。由SonarScope处理的水深测量数据的3D汇编。

除了水深测量,SonarScope还可以执行许多不同类型的数据处理,所有这些都由MATLAB和相关工具箱支持。我使用MATLAB、统计和机器学习工具箱、图像处理工具箱和信号处理工具箱来实现降噪、散斑滤波、分割和底部检测技术。在整个SonarScope中,我使用优化工具箱进行曲线拟合。我计划替换我自己的地图投影与地图工具箱中提供的。

分割算法基于使用共现矩阵和Gabor滤波器的纹理分析(图4)。边界线由基于MATLAB的分割算法自动绘制。

sonarscope_fig4_w.jpg
图4。四种图像处理技术的前后对比图。从上到下:镶嵌,散斑滤波,分割,底部检测。散斑滤光片是由罗马尼亚蒂米什瓦拉理工大学的亚历山大·伊萨尔设计的。分割算法是由Imen Karoui, ENST Brest开发的。

应用面向对象编程技术处理超大数据集

SonarScope由约270,000行MATLAB代码组成。用C编写的类似软件包通常包含100万行或更多的代码。然而,如果没有有效地组织和重用代码的方法,开发和维护任何包含数十万行代码的项目都可能是一个挑战。我使用MATLAB语言的面向对象(OO)编程功能为在整个应用程序中经常重用的组件创建类。例如,我为图像定义了一个类,通过更改参数值,可以轻松地管理和操作图像的实例。

通过应用OO原则,处理SonarScope处理的超大数据集也变得更容易。当对持有千兆字节数据的大型矩阵执行操作时,很容易耗尽计算机内存。为了解决这个问题,我创建了一个使用MATLAB的类memmapfile对象将动态内存映射到硬盘上的文件。使用这种方法,我可以轻松地处理10,000 x 10,000个矩阵,而只使用120字节的内存。在这个类中,无论变量是MATLAB矩阵还是cl_memmapfile对象。

SonarScope接口利用MATLAB支持的可重用类对象和OO设计模式,提供拖放功能、属性编辑器、用于平移和缩放的键盘快捷键以及自定义菜单。

构建独立应用程序

许多使用SonarScope的研究人员、科学家和工程师都熟悉MATLAB。然而,并不是每个用户都是MATLAB专家,也不是所有用户的工作站上都安装了MATLAB。为了向这些用户提供解决方案,我使用MATLAB编译器为Windows创建了独立的32位和64位版本的SonarScope®和Linux®操作系统。

凭借其详细和可定制的数据处理功能,SonarScope擅长于帮助工程师验证、校准和排除MBES硬件故障。当MBES系统在数据中产生多余的工件时,工程师使用SonarScope动态检查数据并识别工件的来源。在一个案例中,为了尽量减少水深测量数据中的峰值数量,一家MBES制造商用SonarScope的算法替换了他们正在使用的底部检测算法。

SonarScope的开发正在积极进行中。我继续更新代码,以利用新的功能,因为他们成为MATLAB中可用的,并使我能够与世界各地更多的研究同事有效合作。

新罕布什尔州大学的SonarScope项目

马什库尔·马利克,新罕布什尔大学

在新罕布什尔大学(UNH)海岸和海洋测绘中心,我们使用SonarScope进行评估后向散射多波束声纳系统的特征。后向散射是返回到声纳的声波能量的量。多波束声纳通常用于测量海底深度和获取连续的海底三维地图。多波束后向散射研究是一个新兴的研究领域,具有广阔的应用前景。例如,它能够对海底沉积物进行分类,确定渔业生境的特征,评估跨洋电缆的适当路线,以及查明矿物和自然资源。

SonarScope通过使我们能够快速评估数据质量,并应用一系列数据采集和处理参数,加速了海底后向散射分析。

在最近的一个研究项目中,我们需要分析两周的连续MBES采样,该采样产生了超过600 GB的数据。通过使用SonarScope对数据进行预处理,我们为项目节省了几个月的代码开发时间,然后将数据集成到MATLAB中进行进一步分析。如果没有SonarScope,我们所做的工作将会慢得多——在某些情况下甚至是不可能的。

马什库尔·马利克(Mashkoor Malik)是哈佛大学的博士研究生,他与哈佛大学海岸和海洋测绘中心主任拉里·梅尔教授一起工作。

出版于2011 - 91949v01

参考文献

  • Isar, Alexandru, Ioana Firoiu, Corina Nafornita, Sorin Moga(2011)。声纳图像去噪”。在声纳系统N. Z. Kolev (Ed.), InTech。

  • 卡鲁伊,伊曼,罗南·法布莱特,让-马克·布歇,让-玛丽·奥古斯丁。“利用优化的声纳纹理统计进行海底分割。”IEEE地球科学与遥感汇刊2009年6月,第47卷第6期,第1621-1631页。
  • 卡鲁伊,伊门,罗南·法布莱特,让-马克·布歇,沃伊切赫·佩特辛斯基,让-玛丽·奥古斯丁。“使用相似度量的纹理统计融合:应用于纹理识别和分割。”模式分析与应用2008年9月,第11卷3-4号,第425-434页。
  • G.拉马奇,X.勒顿,韦迪尔,a.l.。和奥古斯丁。“使用先进的多波束后向散射处理对海底基底和床型进行定量表征。在新西兰库克海峡的应用:大陆架研究(Pergamon-Elsevier Science Ltd.), 2011-02卷,第2期,pp. S93-S109。

Baidu
map