概述
视觉成像是无人系统场景感知的重要手段,降雨是最常见的天气条件,导致场景视觉感知能力急剧下降。2018年“十三五”装备预研公开指南将提升雨雪等恶劣天气下的智能感知技术列入重点突破的共用技术。因此,提出一种针对恶劣天候下图像复原的视觉算法,提升成像系统在恶劣天候下的稳定性十分重要。本项目关注雨天雨条退化图像复原任务。
原理
现有的图像去雨方法大都将图像去雨问题建模为一个加性模型:
Y = X + R
其中Y为雨图,X为清晰图像层,R为雨条层。深度学习中,图像去雨问题是一个Dense Prediction问题,而估计的重点在于找到一个分割面更够从雨图中区分图像层和雨条层。
现有的方法大都只从图像层或者雨层估计出发,并且忽略了对雨图的特性知识建模。因此,现有的方法大都出现过平滑或者残留雨条的问题,如图1所示。
图1 图像去雨算法性能对比图
为了更好地保存图像复原时图像细节保存,实质上是学习的特征表达能够区分雨条层和图像层,因此我们分别对雨条层和图像层进行建模。我们观测到雨条层具有一致的主方向性,因此在估计雨条层之前,先估计雨条的主方向。主方向指导下的雨层估计能够更好地鉴别和雨条相似的图像结构和雨条。图像层估计中,根据模型优化中的迭代正则化项,构建一个能过找回残差的模块,用于更好地找回复原中丢失的图像信息。网络结构如图2所示:
图2 算法网络结构图
按照体系结构划分,整个系统的体系结构可以划分为三个部分,分别为服务器端的训练层、Altas 200DK端的推断层以及浏览器的展示层。如图3所示。其中,训练层在安装有tensorflow训练环境的GPU服务器上完成。推断层在支持卷积神经网络的计算加速的Altas 200DK开发板上完成。展示层运行于带有浏览器的客户端,能够实时显示推断层的复原结果。
图3 体系结构
硬件实现
基于Atlas 200 DK 开发者套件(型号:3000)的图像去雨算法部署流程如图4所示,主要步骤为:
- 第一步完成算法的原型设计与训练,这部分工作是在服务器上进行开发。
- 第二步完成模型的转换,主要包括模型量化/剪枝等轻量化技术以缓解深度学习模型复杂(计算量与存储量需求很高)与边缘设备资源受限的矛盾。
- 第三步分为两个阶段,第一阶段为算法仿真测试,通过在仿真环境中编写上层应用代码,实现对第一、二步得到的算法模型的快速验证与评估。第二阶段为上板开发,在linux环境下完成应用软件的开发与测试,完成系统集成工作。
硬件开发环境和硬件平台如图5所示,Atlas 200 DK 开发者套件(型号:3000)开发环境-实物图如图5所示,软件界面如图6所示。
图4 Atlas 200 DK 开发者套件(型号:3000)深度学习算法部署流程
图5 Atlas 200 DK 开发者套件(型号:3000)开发环境-实物图
图6 软件界面