刘 赫, 高 兴, 张成刚, 千承辉
(吉林大学 仪器科学与工程学院, 长春 130061)
随着人类社会能源需求量的日益增加和海洋开发进程的不断深入, 部分科研人员已经把研究重点投向海洋探测开发领域[1], 目前, 利用水下机器人做为海洋科学探索工具, 得到了极大的重视并拥有非常广阔的发展前景, 已逐渐成为海洋资源开发、 环境探测的主要工具。目前, 水下机器人可分为以下两类: 一类是无缆水下机器人, 即自主式水下潜器(AUV: Autonomous Underwater Vehicle), 另一类是有缆水下机器人, 即遥控无人潜水器(ROV: Remote Operated Vehicle)[2]。
水样采集在渔业养殖、 水体环境污染监测、 水体成分分析等领域都有着较大需求。目前水样采集领域相关产品良莠不齐, 采集的水样质量得不到保证。操作人员控制水下机器人, 可移动至水域范围内任意的位置, 即可通过机器人搭载的水样采集装置, 实现水域指定位置的水样采集。实际应用时, 水下机器人需要实时感知外界环境并执行相应动作。由于不同介质中的折射率不同, 导致摄像头采集的水下图像存在畸变、 对比度低、 噪声信号明显等问题。如何经过对水下图像进行色彩校正和图像增强, 实现对环境对象的有效捕捉和识别, 是水下机器人研究领域的一个新兴热点[3-4]。笔者设计了操作简便、 交互性强、 作业范围广的具有水样采集功能的观测型水下机器人。
系统选用Pixhawk飞控作为主控制器、 树莓派作为协处理器, 利用上位机平台处理、 显示采集信息。系统硬件框图如图1所示。
图1 系统硬件框图
系统主控器输出不同的电平信号控制水下螺旋桨的转动, 进而控制水下机器人在各自由度方向的运动, 并通过控制云台舵机, 改变摄像头位置调整机器人的观测范围。主控制器通过搭载各种类型的传感器监测系统温度、 压强等参数。树莓派作为协助处理器主要作为视频采集和网络通信的设备。系统由锂电池组供电, 使用电源管理模块进行电源管理, 确保各系统模块都获得适当的电压、 电流, 并回传电流信息确保系统电力供应正常。电力载波模块将通信数据耦合到零浮力线上实现远距离通信。通过配置USB接口实现主处理器和协处理器之间的数据通信, 电力载波模块间通过零浮力电缆线传输数据。电力载波模块和协处理器、 PC端上位机间通过网口实现数据通信, 进而实现水下机器人的运动方式控制和图像采集。
目前水下机器人的主流框架结构可分为仿生结构和开架式结构两种。仿生结构一般以海洋生物为原型设计外形, 水下机器人呈流线型设计, 运动阻力小。一般以类鱼鳍结构作为动力单元, 系统提供的动力有限, 运动速度较慢。而开架式结构并不过度追求水下机器人外形, 并可根据实际需求完成整体框架设计, 系统多以螺旋桨协同推进的方式提供动力[5]。
笔者设计的水下机器人为开架式结构, 共分为上、 中、 下3层: 上层放置浮力块及两个垂直方向的推进器; 中上层放置电子舱, 中层放置4个水平方向的推进器, 中下层放置电源仓及水样采集系统; 下层放置可移动分布的配重块。整机质量为3.7 kg, 尺寸(长×宽×高)为0.38 m×0.33 m×0.22 m。为了充分发挥水下机器人动力优势、 降低能耗、 延长系统续航时间, 作业前可根据外界环境条件调节系统上方浮力材料大小、 下方铅块数量和位置。保证系统静止状态下悬浮在水中, 降低系统自重造成的能量损耗。水下机器人的整体布局如图2所示。系统的动力单元为6个双向推进器。推进器在水下机器人框架中的安装位置如图3所示。
图2 水下机器人整体布局 图3 水下机器人推进器安装示意图
为进一步改善水下机器人的机动性和运动能力, 使其具有纵向、 横向、 垂直运动以及艏向转动的能力, 两个推进器垂直安放在框架上层, 其余4个推进器互相垂直布置在中层。假设运动坐标系的中心在水下机器人的重心处, 只分析其水平方向上的运动情况, 则其运动方程式可简化为
(1)
(2)
(3)
其中X、Y为在x、y轴上力F分量;N为z轴上力矩M的分量;m为水下机器人质量;u、v为在x、y轴上中心点速度的分量;Iz为z轴的转动惯量;r为z轴上角速度的分量。
设水下机器人为艏向运动, 为了对机器人进行更精确的运动控制, 建立机器人的艏向运动的数学模型。在艏向运动的情况下, 可以等效认为机器人处于水平状态, 设其悬浮在水中, 所以重力和浮力暂不考虑[6]。做艏向运动时, 分析水平布置的4个推进器产生的力矩, 假设每个推进器的推力相同, 则可推出在水平面内的总推力矩为
M=4T0c=4KTρn2D2c
(4)
其中KT为螺旋桨推力系数,ρ为海水密度,n为螺旋桨转速,D为螺旋桨直径,c为推力对运动坐标原点的力臂。
行进过程所受到阻力产生的阻力矩如下
MN=0.5NrρAr2
(5)
其中Nr为阻力系数;A为等效受力面积。
除了推进器的推力和水的阻力外, 水下机器人在水中运动时还会受到惯性影响, 其受到的惯性力产生的力矩可由
(6)
将式(4)~式(6)带入式(3)中可得水下机器人在水面做艏向运动的方程
(7)
对式(7)进行泰勒展开并整理, 再进行拉普拉斯变换, 得到艏向角对合力矩M1的传递函数
(8)
电机的运动模型比较复杂, 在一般的控制系统中, 可将其简化模型为一阶惯性环节, 传递函数为
(9)
其中T为电机的时间常数;K为电机的放大系数。
由式(4)可知, 推进器的推力和转速平方成正比, 对其进行线性处理后, 得到传递函数
G3(s)=2KTρD4n0
(10)
图4 Simulink仿真结构框图 图5 阶跃响应仿真曲线
由图5分析可知, 在PID参数值设置恰当时, 系统响应时间和延迟时间较短, 超调较低, 能很好满足对水下机器人控制的需求。该设计的运动控制系统采用了功能齐全的开源解决方案----ArduSub。
为了能在水体特定深度采集水样标本, 该设计搭载了外挂式水样采集器。水样采集器通过控制电磁阀通断控制水介质的流进流出, 实现对水样的采集。控制电磁阀的通断需要电平信号, 本系统基于BA6688芯片设计了一种信号解调电路, 对主控制器输出的占空比可调的PWM(Pulse-Width Modulation)信号进行解调, 转换为控制采样器开启和关闭的标准直流电平信号。如图6所示, 水样采集器挂载在水下机器人尾端。
测试环境为3 m×2 m×2 m的蓄水池, 蓄水池水深1.6 m。利用手柄控制水下机器人运动和水样采集。通过控制水下机器人在蓄水池的15个位置(见图7)定点采集水样, 验证水下机器人的运动及水样采集能力。
图6 水下采样作业图 图7 采样点在水中的位置示意图
调整配重块数量和位置可使机器人水平悬浮在水中。通过观察上位机回传的水下图像, 远程操作遥控器手柄, 使水下机器人做出指定动作, 实现定点定深采样。实验结果表明, 该水下机器人具有操作简便、 交互性强、 作业范围广的特点。
在自然水域环境中, 由于水介质本身的光学特性以及水中的悬浮物的影响, 可见光在水介质中传播时容易出现强烈的吸收和散射效应, 最终导致采集到的水下图像色彩偏移、 对比度降低[11]。在对图像处理前, 首先进行图像预处理。针对颜色失真问题应用动态阈值自动白平衡的方法, 消除光源强度和色偏的影响, 进行颜色校正解决颜色失真现象[12-13]。其基本流程是对图像分块进行检测, 去除颜色分布均匀的块, 对剩余区域进行处理提取出参考白点, 分通道计算参考白点亮度的平均值Raver、Gaver、Baver, 然后根据
(11)
计算各个通道的增益。其中Ymax即为YCbCr色彩空间中Y分量在整个图像中的最大值。再根据增益对各通道进行色偏校正, 公式如下
(12)
其中R、G、B为原始的颜色空间的值。
图像增强技术能改善水下图像质量, 为此笔者给出了3种图像增强有关的算法, 并取一些水下图像对其实际性能进行评估。图8为经过图像预处理后, 3种不同图像增强算法处理效果图。
1) 对比度拉伸(Contrast Stretching)。对比度拉伸即灰度拉伸处理, 可使图像较亮的部分更亮, 较暗的部分更暗
(13)
其中S为变换后灰度级;l、m、n分别为不同区域的斜率;r为原始灰度级;a和b为阈值的上下限;v、w为灰度补偿系数。
通过在灰度图像中确定两个拐点控制变换函数的形状。通过调整斜率, 可使图像亮的区域更亮, 暗的区域更暗[14]。
2) 直方图均衡(HE: Histogram Equalization)。图像直方图表示图像每一灰度级与其出现频率的关系, 是数字图像的一个重要统计特性[15], 公式如下
(14)
其中P(rk)为图像第k级灰度出现的概率;rk为第k级灰度的灰度值级;nk为图像中灰度值为rk的像素的个数;N为图像的总像素数;L为总的灰度级数。
HE可使原始图像的灰度直方图从比较集中的某个灰度区间拉伸成全部灰度范围内的均匀分布。水下图像往往光照不足, 且在复杂的水下环境下, 图像容易偏暗且背景亮度不均, 针对水下图像的这些问题, 直方图均衡能扩大图像灰度值的分布范围, 改善图像的对比度, 突出图像的局部细节[16]。
3) 限制对比度自适应直方图均衡(CLAHE: Contrast Limited Adaptive Histgram Equalization)。CLAHE最初是为医学成像开发的, 并已被证明在低对比度图像增强方面取得了成功。CLAHE算法在进行HE操作前会提前划分区域, 并将直方图均衡化应用于每个局部的区域。CLAHE算法是基于HE算法的基础上提出的一种改进算法, 理论上可以遏制噪声放大和局部对比度过强[17]。
图8 经过图像预处理后, 几种不同图像增强算法处理效果图
选取对比度、 信息熵和平均梯度为主要像质评价指标, 进行像质评价。
1) 对比度。对比度反映图像的均方差及整体的灰度分布和强弱差, 即
(15)
其中M×N为图像的大小;I(i,j)为第i行、 第j列的像素值;μ为均值。
2) 信息熵。信息熵反映图像中像素灰度信息和其邻近区域内的灰度分布特征, 即
(16)
其中Hr为r灰度级像素的点数;r为像素灰度级级数;L为总的灰度级。
3) 平均梯度。平均梯度反映图像的对比度、 细节反差以及纹理变化情况, 即
(17)
取几组典型的水下场景, 应用动态阈值自动白平衡做预处理后进行图像增强, 计算得到对比度、 信息熵和平均梯度如表1所示。
表1 图像质量评价表
实验结果表明: 经过直方图拉伸仅扩展动态范围并不能取得较完美的图像; HE和CLAHE方法都可以在一定程度上改善图像质量; 对一些景深复杂、 模糊程度不均匀的图像, HE处理后图像有局部过度增强和细节丢失的现象; 与HE相比, 采用CLAHE方法处理后图像细节相对更加明显。
笔者系统描述了该机器人的总体设计, 对其实际性能进行了测试和分析。结果表明, 该设计具有操作简便、 交互性强、 作业范围广的特点, 总体上满足了实际应用需求。水下图像增强实验是对几种主流图像增强技术的对比, 可以较为高效地提高水下图像采集的质量。采用无参考像质评价的方法进行量化分析是计算机视觉技术在水下环境中的应用。但由于设计水下机器人是一个复杂的工程, 对水样采集器的材质未进行充分考虑, 水样采集功能仅在淡水条件下进行实验, 海水可能会对密封圈等位置产生腐蚀作用, 后续设计需要对其材质和耐用性方面进行充分考虑。