基于 Qt5 和 OpenCV 的多波束前视声呐显控软件的设计与实
现
摘要:近年来,随着科技的进步和需求的增加,对海洋的探究和开发的程度也
越来越深,声呐技术也得到了长足的进展,声呐成像技术在其中扮演了重要的角
色。本文基于 Qt5 和 OpenCV 技术设计并实现了前视声呐显控软件,该软件可在
Windows 或 Linux 平台上使用。
关键词:多波束前视声呐、显控软件、Qt5、OpenCV
1.软件总体架构
本软件承受网络进展通讯,可实现声呐图像实时显示,图像数据的记录与回
放,声呐参数设置等功能,软件要求能够跨平台运行,因此选择 Qt5 作为集成开
发环境,Qt5 能够便利地和 OpenCV 相结合进展图像处理与显示。
图 1 多波束前视声呐显控软件框图
多波束前视声呐显控软件通过网络与声呐处理单元进展连接,可对声呐进展
参数设置和参数读取,将声呐处理单元发送过来的数据进展显示与存储,必要时
可进展回放,本显控软件具有以下功能:
(1) 设置和读取声呐的相关参数,如频率,带宽,开角大小等参数;
(2) 将接收声呐处理单元发送的图像进展插值和坐标变换,并转换为 QImage 进展
显示;
(3) 将网口接收到的图像数据保存为 dat 格式,并能进展回放及回放时的把握;
(4) 鼠标点击图像区域可显示目标点的距离,方位等信息;
2.声呐处理单元
声呐处理单元为显控软件和实体声呐之间的适配层,供给操作声呐所需的全
部接口,包括连接、断开声呐,设置、猎取声呐参数和图像参数,将声呐的原始
图像数据转换为 OpenCV 的 Mat 格式等功能。这种分层的设计方式可以削减新工
程的开发工作量,对于不同型号的声呐只需修改声呐处理单元和按需调整显控软
件的界面布局,而不需要修改显控软件处理和显示数据的内在规律。
3.显示模块
3.1 显示模块功能简述
显控软件的最终目的是显示和把握,显示模块将接收到的 Mat 图像数据进展
插值和变换后,最终转换为 Qt5 平台中的 QImage 供 QML 编写的模块显示。为了
便于使用,显控模块实现了图像数据的存储、回放功能,并可以暂停和使用滑动
条拖放播放进度,用鼠标点击图像区域可以显示经纬度、时间、距离等信息。
显示模块也供给了与声呐交互的把握功能和状态显示功能。
3.2 矩阵图像变换为扇形图像
声呐发出的波束反射回来后得到原始图像数据,原始图像数据经过声呐处理
单元处理后转换为 cv::Mat 格式图像,该图像和像素的角度信息一同传递给显控
端,显控模块对图像做线性插值和坐标变换后得到扇形图像供后续操作,如图 2
所示。
图 2 矩阵图像变换为扇形图像
承受 OpenCV 的 resize 函数将接收到的 Mat 原始图像做线性插值转换为界面