社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  机器学习算法

深度揭秘阴影世界:深度学习时代图像与视频阴影的检测、去除与生成全面综述

我爱计算机视觉 • 3 月前 • 485 次点击  



关注公众号,发现CV技术之美




胡枭玮博士及其团队成员邢正昊、王天宇等作者,在阴影分析领域长期耕耘,共同撰写了题为《深度揭秘阴影世界:深度学习时代图像与视频阴影的检测、去除与生成全面综述》的重要综述论文。

该论文汇集了来自上海人工智能实验室、香港中文大学和Adobe研究院等顶尖机构的研究力量,深入探讨了过去十年中深度学习在阴影分析处理领域的进展。

通过详尽的深度模型、数据集以及评估指标的综合性论述,该论文为研究人员和从业者提供了一个宝贵的参考平台,特别是通过搭建标准化实验平台,显著提高了不同阴影分析方法间的可比性。

这篇综述是理解当前阴影分析领域的重要资源,为研究人员和从业者提供了公开的资源,包括经过训练的模型、结果和评估指标,以支持这一领域的进一步研究和发展。

  • 论文链接:https://arxiv.org/abs/2409.02108
  • 资源库:https://github.com/xw-hu/Unveiling-Deep-Shadows

1 引言

“阴影是你在地球存在的证据,灵魂是你拥有神性存在的证明。”——马修纳·德利维奥(Matshona Dhliwayo)

光与物体的交互产生了阴影,阴影是我们在地球存在的有形证据,同时也暗示了内在的神性。尽管这一交汇富有诗意,但在科学领域,阴影是在光线遇到障碍物时形成的光照减弱区域。这些由遮挡物投射的阴影揭示了光照方向、几何形态以及物体与其周围环境之间关系的相互作用。

在计算机视觉和多媒体处理中,对阴影的探索从诗意延伸到实用性。图像和视频中的阴影检测、去除与生成是一个不断发展的研究领域,具有广泛的应用前景。准确的阴影检测通过提供关键的视觉线索来增强场景理解,改进图像质量,并确保视觉一致性。阴影去除技术在视觉传达中不可或缺,尤其是在摄影领域,美学效果尤为重要。阴影生成则是打造沉浸式虚拟环境和令人信服的内容的关键。

深度学习的出现显著提高了阴影检测、去除与生成的性能。然而,由于研究的广泛性和模型数量繁多,理解和比较最新的设计核心原理对研究人员和从业者来说是一项挑战。

在过去的十年里,还没有关于基于深度学习的图像和视频阴影检测、去除与生成技术的全面综述。为此,该综述提供了一个深入的调查,涵盖了任务、深度模型、数据集、评估指标等方面的内容,并通过标准化实验比较,为研究人员提供了一个公平的比较平台。

1.1 历史与范围

阴影图像的分析一直是计算机视觉中的基础性挑战,并且长久以来都是研究的重点。对计算机图形学中阴影的探索已有半个世纪之久,主要目标是提高计算机合成图像的逼真度。

到了20世纪80年代,研究的焦点开始转向研究物体(如建筑物)与其阴影之间的关系。

90年代,研究扩展到2D图像中的阴影检测与去除,多个研究对此做出了贡献。

进入21世纪,研究领域扩展到了图像和视频,探索了更多复杂的场景。随着时间的推移,机器学习算法与手工特征逐渐成为阴影检测与去除的主流。

自2014年以来,基于深度学习的算法表现出卓越的性能,逐渐成为这一领域的主要方法。

该综述总结了过去十年间图像和视频中基于深度学习的阴影检测、去除与生成的研究进展。需要注意的是,该综述并不涵盖使用雷达、可见光和红外数据等不同输入模态的遥感中的阴影分析。如需了解遥感中的详细综述,请参考相关文献。

1.2 相关的以往综述

早期综述主要回顾了计算机图形学中阴影类型和生成算法。随后的综述涵盖了视频中的阴影检测方法,包括确定性模型与非模型方法、统计参数化与非参数化方法。

进入2010年代,有关阴影检测与去除的综述逐渐增多,这些综述分别从不同的角度和方法对阴影处理技术进行了详细探讨。

最近的综述开始聚焦于遥感和卫星图像中阴影检测的深度学习方法,以及单张图像的阴影去除技术。然而,这些研究忽略了视频、人脸和文档阴影去除以及其他与阴影相关的任务。此外,研究没有包含最新的数据集、阴影掩码和评估指标,也没有在统一的设置下重新训练深度模型进行实验比较。

至今,还没有一篇涵盖过去十年间图像与视频中基于深度学习的阴影检测、去除与生成的全面综述。

1.3工作的贡献

该综述的主要贡献总结如下:

  • 阴影分析深度学习时代的全面综述。该综述在对现有文献进行广泛调研的基础上,构建了一个系统的知识体系,涵盖了阴影检测、去除与生成的各个方面。论文详细介绍了不同监督水平下的深度学习模型,并对各种学习范式进行了分类和比较,帮助研究者全面掌握当前的技术现状及其应用场景。
  • 实验比较的标准化。目前,对现有方法的比较存在输入大小、评估指标、数据集和实现平台的不一致性。该综述通过标准化实验设置,并在各种方法上进行实验,确保了公平的比较。此外,实验还将在新的精细数据集上进行,这些数据集中已纠正了噪声标签。
  • 性能与效率的权衡分析。在深度学习模型的开发过程中,模型的规模、推理速度与性能之间的权衡始终是一个难题。论文通过详细的实验分析,揭示了这一领域中存在的复杂权衡,并为模型设计提供了重要的参考依据。
  • 跨数据集的泛化能力研究。为了验证模型在不同数据集上的鲁棒性,作者设计了跨数据集泛化实验,考察了模型在不同场景下的表现。这一研究为理解深度学习模型的泛化能力提供了新的视角,并为未来的数据集设计和模型改进提供了重要参考。
  • AIGC与大模型时代的阴影分析展望。随着人工智能生成内容(AIGC)和大型视觉/语言模型的发展,阴影分析面临新的机遇与挑战。论文对这一领域中的开放问题进行了深入探讨,并提出了未来可能的研究方向,例如如何更好地集成大模型与阴影分析任务,以及在AIGC中的应用前景。
  • 公开可用的结果、训练模型与评估指标。该综述在公平比较设置下提供了结果、训练好的模型和评估指标,这些资源均可在https://github.com/xw-hu/Unveiling-Deep-Shadows上公开,旨在支持未来的研究并推动这一领域的发展。

该综述的后续章节将分别介绍阴影检测、实例阴影检测、阴影去除和阴影生成的全面综述,每一章都包括对深度模型、数据集、评估指标和实验结果的介绍。第六章将深入探讨阴影分析的最新进展,突出该领域中的开放问题与研究挑战。


2 阴影检测

阴影检测预测输入图像或视频中的阴影区域,并生成相应的二值掩码。通过定位阴影,可以实现阴影区域的编辑,并利用这些信息进行更高级的计算机视觉任务,如物体检测和跟踪。在深度学习的推动下,阴影检测技术取得了显著进展,特别是在图像和视频处理的各种应用场景中,极大地提高了检测的准确性和效率。

2.1 用于图像阴影检测的深度模型

在图像阴影检测中,研究人员提出了多种深度学习模型。这些模型通常利用卷积神经网络(CNN)来预测阴影区域,并且随着技术的发展,模型的复杂性和精度逐渐提高。

早期的方法依赖于单一的深度学习模型来生成阴影特征,并通过统计建模方法(例如条件随机场CRF)生成最终的阴影掩码。然而,随着深度学习的快速发展,逐步涌现了各种端到端的深度神经网络,这些网络能够直接从输入的阴影图像中生成阴影掩码。

近年来,研究者们还探讨了多任务学习方法,即在检测阴影的同时,还能够执行其他相关任务,如阴影去除。这些多任务学习方法利用阴影图像的互补信息,能够同时提升多个任务的性能。

为了帮助读者更好地理解这些方法的具体实现,表格(下方)详细列出了近年来各种用于图像阴影检测的深度学习模型,包括其出版年份、主要方法、出版物、骨干网络、监督水平和学习范式等关键信息。这些方法的设计思想和实现方式为后续的研究提供了丰富的借鉴。

2.1.1 组件学习

早期的图像阴影检测方法主要采用卷积神经网络(CNN)来生成阴影特征,随后通过统计建模方法(如条件随机场CRF)生成平滑的阴影轮廓。

例如,CNN-CRF方法通过多个CNN模型学习超像素级别的特征以及物体边界的特征,然后使用CRF模型生成平滑的阴影轮廓。此外,Stacked-CNN方法则采用全卷积神经网络(FCN)生成图像级别的阴影先验图,随后通过补丁CNN生成局部阴影掩码,最后将多个预测结果加权平均融合。

其他方法见原文。

这些基于组件学习的早期方法在一定程度上推动了阴影检测领域的发展,但由于它们在复杂场景中的局限性,逐渐被更加端到端的深度学习方法所取代。

2.1.2 单任务学习

随着深度学习技术的发展,研究人员提出了端到端的深度模型,这些模型能够直接从输入的阴影图像中预测出阴影掩码。单任务学习方法的优势在于它们能够更有效地利用图像信息,从而提高阴影检测的准确性。

例如,scGAN是一种条件生成对抗网络,它通过引入一个可调节的灵敏度参数来控制预测阴影掩码中的阴影像素量。DSC方法则提出了方向感知空间上下文(DSC)模块,该模块通过分析图像上下文信息生成多尺度阴影掩码,并最终将这些掩码融合为最终的阴影掩码。

其他方法见原文。

在这些单任务学习方法的推动下,阴影检测技术取得了显著进展,特别是在处理复杂场景时,这些方法展示出了强大的鲁棒性和高精度。

2.1.3 多任务学习

多任务学习方法不仅关注阴影掩码的预测,还能够同时执行其他相关任务,如生成无阴影图像以进行阴影去除。这些方法通过共享信息和相互促进,能够同时提升多个任务的性能。

例如,ST-CGAN使用了两个顺序的条件生成对抗网络,其中第一个网络预测阴影掩码,第二个网络则通过将阴影图像和阴影掩码作为输入,生成无阴影图像。ARGAN方法则进一步发展了这一思想,通过引入注意力机制和逐步细化的生成策略,在阴影检测和去除任务上取得了良好的效果。其他方法见原文。

这些多任务学习方法不仅提高了阴影检测的准确性,还为阴影去除和生成任务提供了有力的支持。

2.1.4 半监督学习

深度模型的训练通常需要大量的标注数据,然而在阴影检测任务中,标注阴影掩码的难度较大,限制了可用的训练数据量。因此,研究人员提出了半监督阴影检测方法,以利用标注数据和未标注数据共同训练模型,从而提升模型在复杂场景中的表现。

例如,ARGAN+SS方法采用了一种半监督的生成对抗网络,通过使用未标注的数据进行对抗训练,增强了模型的泛化能力。MTMT-Net方法则基于教师学生架构,通过多任务学习来实现半监督阴影检测,在保留细节信息的同时,显著提高了模型的泛化能力。

其他方法见原文。

2.1.5 自监督学习

自监督学习通过利用数据本身作为监督信息,能够在无需大量标注数据的情况下,学习到深度特征。在阴影检测任务中,自监督学习的方法通常利用现有的训练数据或额外的数据来提升模型的表现。

例如,FDRNet方法提出了一种特征分解与重加权方案,通过使用亮度调整后的图像作为监督,来学习与亮度相关和无关的特征,并最终通过累积学习来增强特征。在这些自监督学习方法的帮助下,阴影检测模型能够更好地适应不同的场景和光照条件。

其他方法见原文。

2.1.6 视觉大模型

现代视觉大模型在通用视觉任务中展示了令人印象深刻的性能。比如,Segment Anything(SAM)在图像分割任务中表现出色。然而,处理复杂背景和场景中的阴影仍然是一个挑战。因此,研究人员提出了各种方法来微调SAM模型,以提高其在阴影检测任务中的表现。

例如,SAM-Adapter通过在SAM编码器的每一层中引入两个多层感知机(MLP)作为适配器,增强了模型的性能。ShadowSAM则通过伪掩码生成策略和光照纹理引导的更新策略,进一步提高了SAM在阴影检测任务中的表现。

这些大型视觉模型在阴影检测任务中展示出了强大的潜力,尤其是在处理复杂场景和多样化光照条件时,能够保持较高的检测精度。

2.2 用于视频阴影检测的深度模型

视频阴影检测需要处理动态场景中的阴影,并保证视频帧之间的阴影掩码一致性。这一任务的难点在于,模型不仅需要准确检测每一帧中的阴影,还需要在时间维度上保持检测结果的稳定性。

例如,TVSD-Net方法是第一个基于深度学习的视频阴影检测方法,通过采用三重平行网络,协同获取视频内部和视频之间的判别表示。STICT方法则结合了半监督学习,通过时空插值一致性训练,提高了模型在视频阴影检测任务中的表现。

其他方法见原文。

这些视频阴影检测方法为处理动态场景中的复杂阴影问题提供了有效的解决方案。通过引入时间信息和时序一致性约束,这些方法能够在多帧视频中实现高精度的阴影检测。

2.3 阴影检测数据集

该综述接下来将讨论用于模型训练和评估的广泛使用的数据集,这些数据集在推动阴影检测技术发展方面起到了重要作用。

2.3.1 图像阴影检测数据集

SBU数据集是一个用于训练和评估深度学习方法的大规模阴影数据集,包含4087张训练图像和638张测试图像; SBU-Refine修正了SBU中的噪声标签。ISTD数据集则是第一个引入阴影图像、无阴影图像和阴影掩码的数据集,设计用于阴影检测和去除任务。CUHK-Shadow 是目前最大的图像阴影检测数据集。

2.3.2 视频阴影检测数据集

ViSha数据集包含120个带有像素级阴影注释的视频,用于评估视频阴影检测方法的性能。RVSD数据集从ViSha中选择了86个视频,重新标注了阴影实例及其对应的自然语言描述。

2.4 评估指标

阴影检测的评估通常使用多种指标来衡量模型的性能,包括平衡误差率(BER)、Fβ-测量、交并比(IoU)等。这些指标不仅可以衡量模型的总体准确性,还能反映其在阴影检测任务中的鲁棒性和泛化能力。时间稳定性 (TS) 通过计算相邻帧之间的光流变形 IoU 来评估视频阴影检测的稳定性,往往被之前的工作忽略。

2.5 实验结果与分析

在这一节中,作者通过实验分析了不同阴影检测模型在各大数据集上的表现,并探讨了模型大小、推理速度与检测精度之间的平衡问题。

随着阴影检测技术的不断发展,模型在特定数据集上的表现往往无法准确反映其在真实世界中的实际应用效果。因此,跨数据集的泛化能力评估成为衡量模型鲁棒性的重要标准。

为了深入研究当前深度学习模型在阴影检测任务中的泛化能力,该综述设计并实施了跨数据集评估实验。多数模型在跨数据集评估中表现出了明显的性能下降,尤其是在处理复杂背景或低对比度场景时,误检和漏检问题显著增加。

实验结果表明,在复杂场景下开发高效且鲁棒的阴影检测模型仍然是一个亟待解决的挑战。


ViSha数据集用于评估视频阴影检测方法的性能,实验结果显示,各方法在帧级精度、时间稳定性、模型复杂度和推理速度上存在显著的权衡。在视频阴影检测中如何在帧级精度、时间稳定性、模型复杂度和推理速度之间实现最佳平衡,仍然是一个具有挑战性的问题。



3 实例阴影检测

除了传统的阴影检测任务,近年来,实例阴影检测也逐渐成为研究热点。实例阴影检测不仅需要识别阴影区域,还要将其与投影物体进行关联,从而实现对阴影与物体的联合检测与处理。该任务的提出极大地丰富了阴影分析的研究维度,尤其在图像和视频编辑、虚拟现实等应用场景中具有重要意义。


3.1 用于图像实例阴影检测的深度模型

图像实例阴影检测的主要挑战在于如何在检测阴影的同时,准确识别投影物体,并建立二者之间的关联关系。为此,研究人员提出了多种深度学习模型,并在不同的数据集上进行了广泛的实验验证。

例如,LISA通过结合光照方向预测,识别可能包含阴影/物体实例及其关联的区域。SSIS则采用了一种单阶段的全卷积网络架构,通过双向关系学习模块实现了对阴影和物体实例的直接端到端学习。

其他方法见原文。这些方法在处理复杂场景、阴影与物体关系时,展现了较高的鲁棒性和检测精度,为实例阴影检测任务奠定了坚实的基础。

3.2 用于视频实例阴影检测的深度模型

视频实例阴影检测相较于图像实例阴影检测,进一步增加了时间维度的挑战。模型不仅需要识别每一帧中的阴影和物体实例,还需在视频序列中跟踪这些实例及其关联关系,并检索偶然丢失的部分阴影或物体实例。这就要求模型在处理动态场景时,能够保持高效的时间一致性和空间一致性。

ViShadow是一个半监督框架,它结合了图像和未标注的视频序列进行训练,利用中心对比学习方法增强了跨帧的关联检测能力。此外,该方法还引入了循环一致性损失,进一步提高了在视频中处理复杂阴影和物体关联的准确性。

通过对现有视频实例阴影检测方法的评估,可以看出在动态场景中保持高效且稳定的检测结果,仍然是该领域的主要研究难题之一。

3.3 实例阴影检测数据集与评估指标

为了推动实例阴影检测的研究,多个专门的数据集被提出,用于模型的训练和评估。

例如,SOBA数据集是首个图像实例阴影检测数据集,包含了精确标注的阴影-物体关联实例。SOBA-VID数据集则进一步扩展到视频领域,提供了帧级别的精确标注以及部分无标注数据,用于视频实例阴影检测任务的研究。

在评估指标方面,SOAP(Shadow-Object Average Precision)用于衡量图像实例阴影检测的性能,而SOAP-VID则通过时空IoU替代传统的IoU,用于评估视频实例阴影检测的时空一致性表现。

3.4 实例阴影检测结果

实验结果表明,尽管SSISv2在阴影和物体实例分割中性能最佳,但速度较慢,且所有方法在复杂场景中的性能有限。跨数据集测试中结果表明不同方法的性能趋势与在SOBA测试集上的一致,且性能无明显下降,证明了这些阴影实例检测方法具有较强的泛化能力。如何开发一个高效的模型以准确分割阴影和物体实例仍是一个具有挑战性的问题。


4 阴影去除

阴影去除任务旨在从图像或视频中移除阴影,生成无阴影的清晰画面。这一过程涉及对阴影区域内物体颜色和纹理的精确恢复。随着深度学习的引入,阴影去除技术取得了革命性进展,从传统的物理模型方法过渡到基于数据驱动的端到端学习方法。

4.1 用于图像阴影去除的深度模型

4.1.1 全监督学习

全监督学习方法通常依赖于标注数据集,即配对的有阴影图像和无阴影图像,用以训练模型。早期的方法主要利用卷积神经网络(CNN)来识别和去除阴影。随着网络结构的复杂化和精细化,这类方法逐渐发展为多分支网络,能够更好地捕捉图像中的阴影特征。

例如,DeshadowNet提出了一个端到端的网络结构,由三个子网络组成,分别用于提取图像的全局和局部特征,从而生成无阴影的图像。SP+M-Net通过一个双分支网络分别预测阴影参数和阴影磨砂层,最终合成无阴影图像。

随着技术的发展,DHAN+DA设计了一种层次化聚合注意力模型,通过引入上下文信息和注意力损失,提高了阴影去除的精度。此外,Inpaint4shadow引入了基于图像修补的数据集预训练,以减少阴影残留,并通过双编码器架构生成无阴影图像。

生成对抗网络(GAN)在图像阴影去除中发挥了重要作用。这类方法通过生成器和判别器的相互博弈,不断优化生成器的性能,从而生成更加逼真的无阴影图像。

例如,ST-CGAN采用了两个条件生成对抗网络,一个用于检测阴影,另一个用于去除阴影。ARGAN通过生成注意力图来标记阴影区域,并递归地恢复阴影较浅或无阴影的图像。

同时,RIS-GAN提出了一种多生成器和多判别器的结构,通过生成负残差图像、中间阴影去除图像、反向光照图以及精细化的阴影去除图像,进一步提高了阴影去除的效果。

随着Transformer在计算机视觉任务中的广泛应用,越来越多的研究开始将其应用于图像阴影去除任务中。Transformer模型的自注意力机制能够有效捕捉图像中的全局上下文信息,极大地提升了阴影去除的精度。

例如,CRFormer结合了CNN和Transformer的优势,通过区域感知的跨注意力机制聚合阴影区域的特征。ShadowFormer通过通道注意力编码器-解码器框架和阴影交互注意力机制,分析阴影和非阴影区域之间的关联,提高了去除阴影的精度。

此外,SpA-Former 通过联合傅里叶变换残差块和双轮空间注意力机制,进一步提升了阴影去除的效果。

扩散模型在生成图像领域表现出色,近期也被引入到图像阴影去除任务中。ShadowDiffusion(G) 通过退化和扩散生成先验逐步细化输出,并作为扩散生成器的辅助模块,提升了阴影掩码估计的准确性。

DeS3利用自适应注意力和ViT相似性机制,在去除硬阴影、软阴影和自阴影方面表现出了强大的能力。LFG-Diffusion通过在潜在特征空间中学习无阴影的先验知识,在阴影去除任务中取得了高效的表现。更多方法见原文。

4.1.2 无监督学习

无监督学习方法在阴影去除任务中具有重要的优势,特别是它不依赖于配对的有阴影和无阴影图像,因此可以在更广泛的未标注数据上进行训练。无监督学习通过探索数据本身的内在结构和相似性,逐步去除阴影区域。

例如,Mask-ShadowGAN 是一种创新性的无监督方法,通过生成对抗网络(GAN)架构,在没有配对数据的情况下去除阴影。DC-ShadowNet则通过对比学习增强了网络对阴影和背景的区分能力,从而提升了阴影去除的精度。LG-ShadowNet引入了光照引导模块,该模块通过模拟不同光照条件下的阴影变化,在无监督的框架下有效去除复杂场景中的阴影。

4.1.3 弱监督学习

弱监督学习方法旨在减少对完全标注(配对)数据集的依赖,从而在阴影去除任务中取得高效的表现。此类方法通常只利用阴影图像来指导模型学习阴影去除的过程。

例如,Param+M+D-Net 采用了一种参数化建模和特征分解的混合策略,在弱监督学习框架下,通过对阴影区域的参数化建模来捕捉阴影的结构和形状特征,并利用特征分解技术将阴影区域与背景区分开来,从而生成无阴影图像。

4.1.4 单张图像自监督学习

单张图像自监督学习方法利用图像本身的信息作为监督信号,避免了对大量数据的依赖。这类方法通常通过分析和利用图像中的内在属性,如亮度、颜色、纹理等,来逐步去除阴影。

例如,Self-ShadowGAN 是一种典型的单张图像自监督学习方法,它利用单张图像中的阴影信息,通过自监督学习框架生成无阴影图像。

4.2 用于文档阴影去除的深度模型

文档阴影去除旨在提升数字文档的视觉质量和可读性。由于文档图像的独特性,通用阴影去除方法在处理文档阴影时面临挑战,尤其是需要大量配对数据集,以及缺乏对文档特定属性的考虑。

文档阴影去除的代表性方法包括 BEDSR-Net,这是第一个专门用于文档图像阴影去除的深度网络,通过估计背景颜色和生成注意力图来去除阴影。

BGShadowNet 采用两阶段过程,先通过背景特征生成初步结果,再通过细节增强模块修正光照不一致问题。FSENet 则将图像分为低频和高频分量,通过 Transformer 和卷积操作分别调整光照和增强纹理。

4.3 用于面部阴影去除的深度模型

面部阴影去除涉及去除外部阴影、柔化面部阴影并平衡光照。这一任务在面部光照处理和人脸关键点检测的鲁棒性提升中起到关键作用。

Zhang等人提出了首个专为面部阴影去除设计的深度学习方法,使用两个独立模型分别去除外部和面部阴影;

He等人则引入了无监督方法,将阴影去除框架化为图像分解问题,通过生成无阴影图像和阴影掩码实现去除;

GS+C方法将阴影去除分为灰度处理和着色两个阶段,并在视频处理中通过时间共享模块保证一致性。

4.4 用于视频阴影去除的深度模型

相比于图像阴影去除,视频阴影去除任务的挑战在于需要同时处理时间和空间维度的连续性。

现有的视频阴影去除模型通常通过结合多个视频帧的信息,实现更加平滑和自然的去除效果。PSTNet是一种结合物理、空间和时间特征的视频阴影去除方法,使用无阴影图像和掩码进行监督。

通过物理分支实现自适应曝光和监督注意力机制,并通过空间和时间分支保证分辨率和一致性。特征融合模块用于精细化输出,而 S2R 策略能够使在合成数据上训练的模型适应真实世界的应用场景,无需重新训练。

4.5 阴影去除数据集

ISTD(ISTD+)和 SRD 是用于训练和评估阴影去除模型的常用数据集,提供了多种场景下的阴影图像和无阴影对照图像。USR 数据集则支持无监督学习,涵盖了多种复杂场景,为无配对数据的阴影去除研究提供了支持。更多数据集见原文。

4.6 阴影去除评估指标

常用的评估指标包括 RMSE、PSNR、SSIM 以及 LPIPS,用于衡量模型的阴影去除效果和图像质量。此外,运行时间和推理速度也是重要的性能衡量标准,尤其在实时应用中。

4.7 阴影去除结果

对多个图像阴影去除方法进行了全面的性能评估,在 256×256 和 512×512 分辨率下重新训练各方法,并修正了有些方法在评测过程中评测函数实现细节错误,使用标注掩码图像污染评测数据等问题。

结果表明,早期的方法(如 DSC 和 ST-CGAN)在多个评估指标上表现优于后来的方法,而无监督方法在 SRD 和 ISTD+ 数据集上表现与监督方法相当,可能是由于训练和测试集的背景纹理相似,Mask-ShadowGAN 在效果和效率之间达到了最佳平衡;小型模型如BMNet在不显著增加模型大小的情况下提供了有竞争力的性能,且大多数方法在更高分辨率下表现出更好的结果。

跨数据集评估揭示了现有模型在复杂场景中的局限性,强调了更具代表性数据集和适应性模型的必要性,尤其在应对现实世界复杂阴影场景的时候。

实验结果表明,如何开发一个鲁棒的模型并准备一个具有代表性的数据集,以在复杂场景中实现图像阴影去除的高性能,仍然是一个具有挑战性的问题。


5 阴影生成

阴影生成任务在计算机视觉和图形学中具有重要意义,通常用于以下三个主要目的:

  1. 图像合成,即为插入或重新定位在图像中的物体生成投射阴影,从而提高场景的真实性;
  2. 数据增强,通过在图像中创建投射阴影,增加对阴影检测或去除任务有益的配对数据的数量;
  3. 素描生成,为手绘素描生成阴影,以加快绘图过程,并提高素描图像的视觉表现力。

5.1 用于图像阴影生成的深度模型

图像阴影生成的主要挑战在于如何通过计算生成与场景几何和光照条件相匹配的自然阴影。近年来,生成对抗网络(GAN)在这一任务中表现出色。

例如,ShadowGAN 通过条件对抗网络架构,在场景信息和物体几何的基础上生成逼真的阴影图像。该方法在增强现实(AR)应用中尤为有效,通过模拟虚拟物体的阴影,使得虚拟与现实的融合更加自然。ARShadowGAN 则专为单光源场景设计,通过物理一致性模块确保阴影的生成符合光照条件,大大提升了增强现实中的视觉体验。

PixHt-Lab 引入了像素高度映射技术,通过将二维图像中的像素映射到三维空间,生成具有高度真实感的阴影效果,从而进一步提高了图像合成中的光照逼真度。

总体而言,这些模型通过不同的创新方法,在图像合成任务中生成了高质量的阴影,显著提升了图像的视觉真实感和物理一致性。

在阴影去除任务中,生成阴影作为中间结果是提高去除效果的重要手段。Mask-ShadowGAN 是一种创新性的生成对抗网络,专注于生成用于阴影去除的中间阴影掩码,通过在无配对数据的情况下生成逼真的阴影掩码,显著减少了对标注数据的依赖。模型利用生成的阴影掩码有效地提升了阴影去除的效果,使得阴影去除更加精确和自然。

阴影生成在艺术创作中也扮演着重要角色,特别是在为手绘素描添加逼真的光影效果方面。Zheng等人提出了一种从手绘素描中生成艺术阴影的方法,利用指定的光照方向和三维建模技术生成符合素描线条和结构的阴影。

这一方法自动渲染自阴影和边缘光效果,使得素描作品在视觉上更加真实和生动。SmartShadow 是一个数字绘图工具,专为帮助艺术家为线条画添加阴影而设计。它提供了阴影笔刷、阴影边界控制以及全局阴影生成器等功能,帮助艺术家在创作过程中更加高效地生成复杂的阴影效果,同时保持艺术创作的灵活性和创造性。

这些模型和工具极大地提高了数字艺术创作的效率和质量,为艺术家提供了更为强大的创作手段。

5.2 阴影生成数据集

高质量的数据集在阴影生成任务中至关重要,为训练和评估模型提供了必要的基础。用于图像合成的阴影生成数据集,如Shadow-AR,专门为增强现实中的阴影生成任务设计,包含了丰富的场景和光照条件,通过提供多样化的数据支持,帮助研究人员训练和评估模型的表现。

DESOBA 数据集则基于现有的 SOBA 数据集,通过移除阴影生成地面实况,用于训练和评估模型的阴影生成能力。

RdSOBA 数据集则利用 Unity 渲染引擎创建了丰富的三维场景和物体组合,为研究人员提供了在复杂光照条件下训练和评估模型的宝贵资源。

这些数据集的设计和应用使得阴影生成技术得以在多样化的场景中得到验证和改进,推动了这一领域的发展。

5.3 评估指标

为了有效地评估阴影生成模型的性能,研究人员提出了多种评估指标,包括结构相似度指数(SSIM)、峰值信噪比(PSNR)和人眼感知一致性(LPIPS)等。这些指标从不同角度量化了模型生成阴影的质量。

5.4 讨论

不同的方法由于其独特的模型设计和应用场景,需要特定的训练数据。例如,SGRNet需要前景阴影掩码和目标阴影图像来进行图像合成;相比之下,Mask-ShadowGAN只需未配对的阴影和无阴影图像即可进行阴影去除。

ARShadowGAN利用真实阴影及其遮挡物的二值图进行训练,用于增强现实场景中虚拟物体的阴影生成。

SmartShadow则依靠艺术家提供的线条画和阴影配对数据来训练深度网络,从而生成线条画上的阴影。

由于篇幅限制,建议读者深入了解每个应用的结果,以理解这些方法的有效性和适用性。

然而,目前的阴影生成方法主要集中在图像中的单个物体上,如何在视频中为多个物体生成一致的阴影仍是一个挑战。此外,除了为缺乏阴影的物体生成阴影外,通过调整光照方向来编辑各种物体的阴影也具有更广泛的实际应用潜力。


6 总结与未来研究方向

总之,该综述通过回顾一百多种方法,并标准化实验设置,推动了深度学习领域中阴影检测、去除与生成的研究。探讨了模型规模、速度与性能之间的关系,并通过跨数据集研究评估了模型的鲁棒性。

下面进一步提出未解决的问题和未来的研究方向,特别强调AIGC和大模型的发展对推动该领域学术研究和实际应用的重要性。

统一的阴影和物体检测、去除与生成模型是一个有前景的研究方向。现有的大多数方法只专注于阴影检测、去除或生成的某一方面。

然而,所有与阴影相关的任务本质上是相互关联的,理论上可以从共享的洞察中受益,尤其是在物体与阴影之间的几何关系方面。开发一个统一的模型可能会揭示潜在的关系,并最大化训练数据的使用,从而增强模型的泛化能力。

物体的语义和几何信息在阴影分析中仍未得到充分挖掘。现代的大型视觉和视觉语言模型,拥有庞大的网络参数和海量的训练数据,在分析图像和视频中的语义与几何信息方面表现出了良好的潜力,并具备了显著的零样本能力。

例如,Segment Anything能够提供像素级的分割标签;Depth Anything可以估计任何图像输入的深度;而ChatGPT-4o则能够描述图像和视频帧中的故事。利用语义和几何洞察来进行阴影感知,可能会显著提升阴影分析与编辑的效果,甚至有助于分离重叠的阴影。

物体与阴影的关系对于图像和视频编辑任务具有重要作用。实例阴影检测生成了物体和阴影实例的掩码,从而方便了图像修复、实例克隆和阴影修改等编辑任务的进行。

例如,图像扩展通过分析已观测到的物体及其阴影来推断未观测到的物体的布局。这些应用被集成到手机的图像和视频编辑功能中既简单又具有显著益处。现代智能手机配备了多摄像头和高动态范围功能,如何利用这些摄像头增强阴影与物体的编辑效果是一个值得探索的新研究方向。

阴影是区分人工智能生成视觉内容与真实内容的有效工具。随着人工智能生成内容(AIGC)的快速发展,越来越多样化的图像和视频得以生成。

然而,这些AI生成的内容往往忽视了几何方面的因素,导致阴影特性与真实环境不符,从而破坏了图像的三维感知。实例阴影检测技术被用于分析物体与阴影的关系,当光源对齐与物体几何形状不一致时,这些技术揭示了图像的合成特性。AI生成的视频(例如Sora)同样需要遵循几何关系。

因此,未来研究应重点关注AI生成内容中的阴影一致性问题,并评估潜在的不一致性。此外,阴影作为一种自然且隐蔽的对抗性攻击方式,能够破坏机器学习模型的正常运行。

最新 AI 进展报道
请联系:amos@52cv.net

END




欢迎加入「阴影检测交流群👇备注:阴影




Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/173884
 
485 次点击