雷锋网注:本文为作者 BBuf,北京鼎汉技术有限公司 算法工程师(CV)向雷锋网AI科技评论投稿,未经允许禁止转载!
论文发表于2019年,地址为:https://arxiv.org/abs/1908.05868
雷锋网(公众号:雷锋网)AI科技评论按:近年来,借助深度卷积神经网络(CNN),智能驾驶导航和安全监控取得了长足的进步。语义分割作为一种最先进的感知方法,在自动驾驶和安全监控中具有广泛的应用前景。
当前,语义分割在标准场景(例如具有良好光照条件的白天场景)中表现出了高效的性能。但是,面对诸如夜间之类不利环境,语义分割会大大降低其准确性。造成此问题的主要原因之一是缺乏足够的夜间场景分割数据集。
在本文中,我们提出了一个使用生成对抗网络(GAN)来缓解将语义分割模型应用于夜间环境时的准确性下降。为了联系白天和夜晚的图像域,我们进行了关键的观察,与夜间环境下的数据相比,已经存在大量标准条件下的分割数据集如BBD,我们收集的ZJU等。
我们提出的基于GAN的夜间语义分割框架包括两种方法。在第一种方法中,GAN用于将夜间图像转换为白天,因此可以使用已经在白天数据集上训练的鲁棒模型来执行语义分割。第二种方法是,我们使用GAN将数据集中的白天图像转换为夜间图像,同时标签不变。所以,我们可以利用GAN合成夜间数据集,以产生在夜间条件下鲁棒性很好的模型。
在我们的实验中,第二种方法显著提高了模型在夜间图像上的分割性能,这可以使用IOU和ACC来评价。实验表明,性能还会随着数据集中合成夜间图像的比例变化而变化,其中最佳的比例对应于在白天和夜晚性能最高的模型。我们提出的方法不仅有助于智能车辆视觉感知的优化,而且可以应用于各种导航辅助系统。
1、研究背景
诸如目标检测和语义分割之类的视觉任务始终是安全监控和自动驾驶的关键点。语义分割可以通过单个相机拍摄来完成不同的检测,使场景感知摆脱了复杂的多传感器融合。一些最新的方法如PSPNet,RefineNet,DeepLab和AcNet等以非常高的准确率执行语义分割任务。为了将语义分割应用于自动驾驶和安全监控,我们在先前的工作中提出了一个ERF-PSPNet[1],这是一种高精度的实时语义分割方法。
所有的这些感知算法均设计为可以在光照条件良好的白天拍摄的图像上运行。然而,户外应用很难逃脱恶劣的天气和照明条件。基于语义分割的计算机视觉系统尚未得到广泛应用的原因之一就是它不能处理环境不利条件。例如,基于可见光相机的语义分割模型在夜间表现不理想,原因就是在极弱的照度下,目标的结构,纹理和颜色特征会急剧变化。这些特征可能由于缺乏光照而消失,或者被干扰。因此,如何增强语义分割模型的鲁棒性成为计算机视觉领域的重要问题。在本文工作中,我们着重提高夜间语义分割的性能。
在本文中,我们提出了一个主框架如图Figure1所示,
Figure 1
以克服语义分割模型从白天到晚上的精度急剧下降问题。受生成对抗网络的思想启发,夜间图像在前向推理过程中被转换为白天域的图像。换句话说,我们通过将部分白天图像转换为夜间图像来扩充原始的大规模语义分割数据集。在这些实验中,我们证明此方法提高了语义分割模型的鲁棒性。此外,我们还使用多模式立体视觉传感器来采集了浙江大学玉泉校区白天和夜晚的图像制作了数据集ZJU,设备被安放在一个仪表车上,如Figure2所示。
Figure 2
2、相关工作
2.1 道路场景的语义理解
语义分割技术对于理解图像内容和感知目标位置很重要,并且该技术在自动驾驶领域也很关键。当前,大多数语义分割SOAT工作都是基于全卷积的端到端网络。受到SegNet的启发,语义分割模型通常采用编解码结构。编码器是经过训练可以对输入图像进行分类的CNN,解码器用于将编码器的输出上采样到和原始图像相同的大小。此外,有更多有效的语义分割网络被提出,我们的工作基于ERF-PSPNet,这是一种为导航辅助系统设计的最新语义分割网络。
2.2 模型适应
通常,CNN仅从训练数据域中学习特征,并且在不同的领域中可能表现会差很多。这也是为什么在白天训练的语义分割模型在夜间准确率会严重下降的原因。为了提高卷积神经网络的泛化能力,提出很多方法。最常见的是,使用诸如随机裁剪,随机旋转和翻转之类的数据增强技术去适应陌生域。在[29],[30]中已对合成数据的有效使用进行了初步的探索。[31]提出了另一种基于域适应的方法,用于将语义分割模型从合成图像适应到实际环境。[32,33]还提出了类似的方法来解决鲁棒的模糊场景解析。
2.3 图像风格转换
自从GoodFellow提出GAN之后,GAN就成为了最有前途的图像风格化方法。形式上,GAN同时包含两个模型:捕获关键分布的生成器G和估计样本来自训练数集而不是生成器的鉴别器D。尽管像Pix2Pix这样在风格转换上最先进的工作表现出众,但两个域中的训练数据都必须预先格式化为单个X/Y图像对,以保持紧密的像素相关性。最近提出的CycleGAN可以执行完整的转换过程,并省掉每张图像配对的过程,这很适合我们执行白天和夜晚的图像风格转换。
3、方法
在我们的工作中提出了两种方法来缩小语义分割中白天和夜间图像之间的差距。这两种方法分别为将白天域图像转换为夜间域图像和夜间域图像转换为白天域图像。Figure1展示了我们的框架。我们训练一个CycleGAN来执行跨域转换。在第一种方法中,我们将夜间图像转换为白天图像,然后在白天图像上训练ERF-PSPNet。在第二种方法中,CycleGAN将训练集的部分白天图像转换为夜间图像,以扩展数据集的域覆盖范围。最后,我们用调整后的具有一定百分比的夜间图像的训练数据训练ERF-PSPNet,达到提高夜间语义分割模型性能的目的。
3.1 训练CycleGAN进行昼夜跨域转换
CycleGAN是一种在没有配对示例的情况下学习将图像从原域转换为目标域的方法,这符合我们的需求。CycleGAN包含两组GAN,每一组GAN又包含一个生成器和鉴别器。生成器和鉴别器进行图像风格转换,将图像从域X转换到域Y或者从域Y转换到域X。F和G代表了两个GAN,他们生成的内容分别为当前域图像的对立域图像。我们同时训练了G和F,并增加了循环一致性约束:
这种损失使未配对的图像风格转换成为可能。在我们的工作中,选取了BBD100K数据集6000张白天图像和6000张夜间图像作为两个图像域来训练CycleGAN。限于GPU的内存,我们将图像大小调整为480*270以训练CycleGAN。通过这种方式,我们获得了昼夜转换器。
3.2 在推理期间将图像转换为白天域
第一种选择是在推理的时候将夜间图像转换为白天图像。更具体的说,将摄像机获取的夜间图像用CycleGAN转换为合成的白天图像,这是语义分割更擅长处理的域。该方法不需要再次训练语义分割模型。换句话说,该方法的优势在于我们可以利用经过训练的ERF-PSPNet中的原始权重,该权重被证明在大多数数据集和实际场景中都是稳定的。此外,昼夜转换和分割过程是分开的,这使得调整更加容易。
但这种方法的缺点在于CycleGAN转换一张480*270的图像,前向推理花费的时间接近于1秒,这太慢了,并且语义分割系统也失去了实时性能。另外,CycleGAN合成的图像可能有一定偏差,例如可能将遥远的建筑物转换为树木。
3.3 产生夜间图像扩展数据集
第二种选择是将带有语义分割标签的BBD训练集中的部分白天图像转换为夜间图像。然后将带有合成夜间图像的数据集用来训练ERF-PSPNet损失函数。这个想法来自于缺乏精确分割的夜间数据集标签。
此方法的优点是对于训练模型,在推理过程中不会引入额外的计算。因此,ERF-PSPNet可以保留其实时的属性。在我们的实验中,我们探索了合成夜间图像的比例如何影响语义分割模型的准确性。此方法的缺点是重新训练模型的过程比较耗时,并且该模型可能并不总是对所有环境都具有鲁棒性。另外,我们必须将BBD100K数据集中的图像大小调整为480*270以训练GAN。这样GAN只能产生大小为480*270的图像。因此,我们必须将合成图像上采样到1280*720,然后再输入分割模型。这样的操作不可避免的会影响最终预测结果的准确性。
4、结果
本文首先介绍了BDD数据集(BDD100K和BDD10K),ZJU数据集和Nighttime Driving test数据集。他们的图像分辨率,白天以及夜晚图像数量,标注信息如Table1所示:
Table 1
我们选择了BDD100K数据集中的6000张白天和黑夜图像训练CycleGAN。对于ERF-PSPNet,编码器部分在ImageNet上进行了预训练,所以ERF-PSPNet所有的训练任务都在解码器部分的训练中。第一种方法是在BDD10K上训练ERF-PSPNet。推理期间夜间图像用CycleGAN即时转换为白天域。在第二种方法中,使用BDD10K训练集中不同比例的图像来训练ERF-PSPNet。为了定量验证我们的方法,在BDD10K的验证集中使用32个带有分段注释的夜间图像和50个在Nighttime Driving test数据集中具有精确分段注释的夜间图像。Nighttime Driving test数据集中的图像样式类似于BDD10K,这使得在其上应用BDD训练的语义分割模型是合理的。最终,模型的实验表现如Table2所示:
Table 2
可以看到,使用本文的方法,模型在夜间图像的准确率得到了较大的提升。此外,本文还探索了第一种方法在拥有不同比例夜间图像的数据集上表现,如Figure7所示。
Figure 7
我们可以看到使用2000张合成的夜间图像的训练集得到的效果是最好的。然后在5000的时候曲线达到另外一个峰值,这个原因可能是5000是2000的对称数(总数是7000),并且该模型以互补的方式从白天图像中学习纹理信息,从夜晚图像中学习光照信息,但是此时白天的性能已经降低到了一个较低的水平。当所有图像均为夜间图像时,IOU甚至低于30%,这是因为合成图像中的纹理不等同于真实图像中的纹理。综上所述,使用2000张合成的夜间图像和5000张真实白天图像的训练集得到的效果是最好的。
5、结论
在本文中,我们研究了夜间场景的图像语义分割问题。为了提高性能,通过CycleGAN训练双向昼夜转换器,提出了两种方法。在第一方法中,推理过程将夜间图像即时转换为白天图像,作为预处理步骤。在第二种方法中,将训练集的图像通过CycleGAN部分转换为夜间合成图像,从而提高了分割模型的鲁棒性。我们的实验在三个数据集上进行了测试,并证明了该方法的有效性。总而言之,我们的方法显著改善了夜间图像语义分割模型的性能,从而使诸如ERF-PSPNet之类的SOAT网络在夜间拥有较好的鲁棒性。
参考资料:
[1]Yang, K., Bergasa, L. M., Romera, E., Cheng, R., Chen, T., and Wang, K., “Unifying terrain awareness through real-time semantic segmentation,” in [2018 IEEE Intelligent Vehicles Symposium (IV)], 1033–1038, IEEE (June 2018).
[29]Sadat Saleh, F., Sadegh Aliakbarian, M., Salzmann, M., Petersson, L., and Alvarez, J. M., “Effective use of synthetic data for urban scene semantic segmentation,” in [Proceedings of the European Conference on Computer Vision (ECCV)], 84–100 (2018).
[30] Xu, Y., Wang, K., Yang, K., Sun, D., and Fu, J., “Semantic segmentation of panoramic images using a synthetic dataset,” in [Artificial Intelligence and Machine Learning in Defense Applications], International Society for Optics and Photonics (2019).
[31] Sankaranarayanan, S., Balaji, Y., Jain, A., Lim, S. N., and Chellappa, R., “Learning from synthetic data: Addressing domain shift for semantic segmentation,” in [2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition], 3752–3761, IEEE (2018).
[32] Dai, D. and Van Gool, L., “Dark model adaptation: Semantic image segmentation from daytime to nighttime,” in [2018 21st International Conference on Intelligent Transportation Systems (ITSC)], 3819–3824, IEEE (2018).
[33] Sakaridis, C., Dai, D., and Van Gool, L., “Semantic nighttime image segmentation with synthetic stylized data, gradual adaptation and uncertainty-aware evaluation,” arXiv preprint arXiv:1901.05946 (2019).
雷锋网报道。