首页 > 其他分享 >集智书童 | 从RAW到RGB的完美转换:RealCamNet 端到端摄像头成像 Pipeline 提升成像性能 !

集智书童 | 从RAW到RGB的完美转换:RealCamNet 端到端摄像头成像 Pipeline 提升成像性能 !

时间:2024-12-20 19:57:03浏览次数:12  
标签:Pipeline 集智 作者 坐标 模块 图像 成像

本文来源公众号“集智书童”,仅用于学术分享,侵权删,干货满满。

原文链接:从RAW到RGB的完美转换:RealCamNet 端到端摄像头成像 Pipeline 提升成像性能 !

近年来,神经摄像头成像管线的最新进展表明取得了显著的进步。然而,实际成像 Pipeline 仍然面临包括系统组件缺乏联合优化、计算冗余和光学畸变(如镜头阴影)在内的挑战。因此,作者提出了一种端到端的摄像头成像 Pipeline (RealCamNet),以提高实际场景下的摄像头成像性能。作者的方法与传统的、分阶段的图像信号处理方法有所不同,而是采用端到端架构。

这种架构可以实现整个 Pipeline 内的联合优化,并恢复坐标偏置的畸变。RealCamNet旨在从RAW转换为RGB的高质量转换和紧凑图像压缩。

具体而言,作者深入分析了坐标相关的光学畸变,例如暗角和暗阴影,并设计了一种新的坐标感知畸变恢复(CADR)模块来恢复坐标偏置的畸变。

此外,作者还提出了一种坐标独立的映射压缩(CIMC)模块来实现色调映射和冗余信息压缩。现有数据集存在对齐错误和过于理想化的条件,使其不适合训练实际场景下的成像 Pipeline 。

因此,作者收集了一个实际场景下的成像数据集。实验结果表明,RealCamNet实现了最佳率失真性能和较低的推理延迟。

1 Introduction

高效成像和压缩技术对于互联网和多媒体行业至关重要。随着数字内容的指数级增长,同时保持图像质量但减小文件大小的技术变得至关重要。这些进步不仅通过确保快速加载图像和视频来提高用户体验,而且还可以节省存储空间并降低数据传输成本。此外,这些技术对于支持高级应用如自动驾驶和远程感知、推动技术创新以及满足多媒体处理日益增长的需求是不可或缺的。因此,开发更高效成像和压缩方法对于推动行业进步并满足现代技术的需求至关重要。

在传统的实际相机成像 Pipeline 中,为了进行图像信号处理(ISP),采用了复杂且专有的硬件过程,包括去噪、去偏色、色调映射和图像压缩等步骤,如图1(a)所示。 Pipeline 中的每个步骤都是单独设计的,这导致了错误累积,并阻止了系统达到最优状态。

大多数传统方法在ISP Pipeline 中的每个步骤都使用启发式方法得出解决方案,这需要调整大量参数。此外,ISP处理流程中会累积错误,影响成像质量。

过去十年,深度神经网络得到了迅速发展,并在图像分类、目标检测[27, 46]、图像和视频增强、自然语言处理等领域发挥了重要作用。研究行人还提出了一系列基于神经网络的图像信号处理方法。近年来,研究行人[15, 23]试图构建基于深度神经网络的摄像头成像系统,设计用于去噪、去偏色、色调映射和压缩的模型,显著提升了整个系统性能。然而,为每个功能(例如,去噪、去偏色)构建独立的神经网络,阻止了系统的联合优化,并引入了计算冗余,如图1(b)所示。

因此,一些方法出现了,试图构建一个单一的神经网络来完成ISP所需的功能。这是一个好主意,但由于所考虑的情况过于简单,设计的ISPNet不能现实地应用。

针对这些问题,作者提出了一种名为RealCamNet的框架,该框架将真实相机图像信号处理和图像压缩过程整合到端到端的深度神经网络框架中。这种统一的方法不仅减少了计算冗余,而且通过网络参数的联合优化,提高了图像质量和压缩效率,这是以前隔离的设计方法无法实现的。

作者的起点是构建一个基于神经网络的实时摄像头处理 Pipeline ,模拟现实应用中常见的功能,从而建立一个可靠且实用的端到端成像系统。为此,作者对成像和压缩过程中的每个步骤的原则和缺陷进行了分析。

作者的RealCamNet整体框架如图1(d)所示,其中作者设计了一个端到端的深度神经网络来实现RAW-Bitstream-RGB图像压缩过程。图1(a)和图1(b)所示的串行框架导致了每个模块的累积误差以及潜在的全局非最优结果。图1(c)直接构建神经网络实现了诸如去混色和色调映射等操作,但整体联合优化仍未实现。

在作者的RealCamNet中,作者设计了一个全局和局部感知成像流水线模块,以模拟成像流水线中的过程,如全局和局部色调映射、去噪、脱敏和图像特征压缩。

作者对摄像机成像技术的调查发现,光学系统的不完善会导致数字信号失真。在光学摄像机成像中,由于光学系统及其传感器固有的特性,坐标相关的失真会显著影响图像质量。这包括由于传感器敏感性变化或光学系统照度不均匀导致的坐标相关噪声,以及由于镜头设计和光线入射角导致的边缘亮度降低,还有由于组件叠加导致的CMOS的不均匀加热引起的暗影。图2中显示了这些失真。为了减轻这些失真并提高图像质量,需要进行复杂的图像处理。作者引入了一个简洁、有效的坐标感知失真校正模块,旨在识别并校正各种坐标相关的失真,从而增强视觉感知和成像质量。

之前的RAW-RGB数据集要么包含过于简单的ISP处理(仅包括几种过程,如解色移),要么存在对齐问题,不能用于训练可用于真实场景的相机成像 Pipeline 。为了训练作者的RealCamNet,作者构建了一个新的RAW-RGB数据集,可以直接学习真实相机的复杂ISP过程。

总之,作者的贡献有四方面:

  1. 首先,作者构建了一个深度神经网络成像系统,并展示了端到端联合优化的性能改进。

  2. 作者深入分析了坐标相关的光学畸变,例如眩光和暗影,并设计了一种新颖的坐标感知畸变恢复(CADR)模块,用于修复坐标偏差畸变。

  3. 作者设计了一个坐标独立的映射压缩(CIMC)模块,实现全局和局部色调映射、去噪、去伪彩和图像特征压缩功能,从而减少计算冗余。

  4. 作者构建了一个新的真实场景图像数据集,为统一的端到端神经成像流水线提供了基准。

2. Preliminary

Traditional Image Signal Processing

传统上,图像信号处理(ISP)负责从RAW捕获中重构RGB图像。在传统的相机 Pipeline 中,采用复杂的专有硬件过程进行图像信号处理。这个过程包括多个步骤,如去噪、去偏移、缺陷像素校正和色调映射,等等。每个模块都需要单独调整和优化,同时考虑级联错误调整。

Learning-based Image Signal Processing

深度学习技术的进步使得研究行人通过神经网络来提升ISP(图像传感器阵列)流水线。局部网络解决方案分割功能,如色调映射(Shi等人,2017年)和去噪 ,使得模块解耦,但同时也使ISP的整体优化变得复杂。全面的神经网络方法替代了整个ISP流水线,简化了计算并实现了系统 Level 的优化。然而,这些方法尚未得到充分评估,ISP流水线也未得到全面分析。

Learning-based Image Compression

在基于学习的图像压缩中,Balle等人首次采用了编码器-解码器架构和熵编码来进行潜在特征表示,从而实现模型优化。Balle等人在2018年通过自适应的方式和方差减少了潜在特征的冗余。Cheng等人 通过使用高斯混合模型(GMM)和超先验参数改进了准确性。

Minnen等人 进一步采用熵编码中的自回归模型,降低了冗余,但自回归方法的顺序限制了并行处理。这促使了类似于分组超通道式和棋盘式自回归模型的开发,以提高速度而不牺牲压缩效率。

3. Methodology

Problem Formulation

摄像机成像 Pipeline 通过一个结构化的过程将RAW图像转换为压缩RGB格式。这个过程包括三个主要阶段:从RAW到RGB的转换,将RGB图像压缩成位流,以及将位流解压缩成RGB图像。目的是在优化存储和传输效率的同时保持图像质量。正式地,该 Pipeline 由以下操作序列描述:

Architecture of RealCamNet

为了提高摄像机成像 Pipeline 的性能,作者提出了一种名为_RealCamNet_的端到端流程,该流程专为实际场景下的摄像机成像设计。该流程将编码器和解码器组件集成在一起,以便有效地进行图像处理。_RealCamNet_的操作框架如下:

在解码阶段,熵模型首先将比特流转换为潜在特征。这些特征通过 ConCat 的通道空间注意力(CSA)模块处理,从紧凑的潜在特征中恢复详细的图像信息。最后,使用UnpixelShuffle模块根据这些特征重构RGB图像。

如图3所示,本全框架展示了实时摄像头网络(RealCamNet)的详细信息,该网络由三个主要部分组成:编码器、熵模型和译码器,这三个部分均采用端到端的方式进行联合训练。

Coordinate-Aware Distortion Restoration

作者提出了所 Proposal 的坐标感知失真恢复(CADR)模块的详细架构,如图3(b)所示。CADR模块通过集成当前像素坐标来实现有效的坐标感知,从而促进坐标依赖失真恢复的学习。

为了克服这一局限性,作者提出了一种简单的坐标嵌入方法,以捕捉RAW图像的真实全局坐标。这意味着需要修改坐标计算方法。这种坐标嵌入方法使作者的CADR能够准确感知像素的空间位置,从而有效地恢复与坐标相关的畸变。

Color Prior Encoder

Channel-Spatial Attention

信道-空间注意力(CSA)机制是坐标独立映射压缩(CIMC)模块的重要组成部分。受传统视频压缩中帧内编码原理的启发,CSA旨在识别并利用特征表示中的非局部冗余性,从而实现更高效的压缩。在编码器中,CSA利用注意力机制在空间和通道维度上聚合信息,从而减少冗余数据,并将特征压缩成有利于改进压缩效果的紧凑表示。在解码阶段,CSA在从压缩特征集中重构非局部参考特征方面发挥关键作用。这一功能对于恢复重构图像的质量以及确保输出与原始输入的保真度至关重要。

3.5.1. Detail of CSA

该方法将信道和空间注意力相结合,提高特征细化程度,并促进RAW图像特征向紧凑的RGB潜在表示的转换。结果是改进了重建质量且降低了冗余度,这对于高效的图像处理任务至关重要。

Coordinate-Independent Mapping Compression

3.6.1. Overview of Cimc

坐标独立的映射压缩( CIMC )模块旨在将RAW图像特征压缩为紧凑的RGB潜在表示。通过采用注意力机制和特征变换, CIMC 旨在提高重建质量并减少数据冗余。

CIMC 包括三个关键组件:通道-空间注意力(CSA)模块、局部特征转换(LFT)模块和全局特征转换(GFT)模块。LFT 和 GFT 可以利用 CPE 模块提取的颜色先验进行色调映射。CSA 可以促进潜在特征的有效压缩,如图3(d)所示。

3.6.2. Details of Cimc

4. Experiment

Implementation Details

Metrics

Rate-Distortion Performance

在PyNet+VTM作为基准的情况下,作者使用多种指标深入研究每个 Pipeline 的性能差异,计算在指标-比特率曲线上BD(Bjontegaard Delta)指标,包括BD-PSNR,BD-MSSSIM,BD-ΔE和BD-LPIPS。实际数据表明,在作者的RealCamNet中,在相同的比特率下,超越了传统的多阶段,基于学习的 Pipeline ,在PSNR上提高了2.26dB,在MS-SSIM上提高了0.71dB,在LPIPS上提高了0.01,在ΔE上提高了0.9187。此外,与结合了Cascaded Universal Video Coding(VVC)框架的学习型ISPNet相比,作者的方法在比特率相当的情况下,在PSNR等指标上始终表现出优越性能,这进一步强调了作者所提出方法的鲁棒性和稳定性。

为了阐明RealCamNet的性能,作者根据速率-失真曲线计算了BD-Rate,与现有最佳 Pipeline 相比,BD-Rate有了显著提升,提高了9.53%。这些结果,如表1所示,强调了作者的方法在测试集上的全面性能优势。

Ablation Studies of CIMC

在图6(c)中,作者评估了CIMC模块的有效性,该模块包括CSA、LFT和GFT组件。CIMC模块通过新颖的LFT和GFT增强色调映射,同时使用CSA优化特征压缩。表2中呈现了CIMC及其各个CSA、LFT和GFT组件的定量分析。

Ablation Studies of CADR

为了证明作者提出的坐标感知失真修复模块(CADR)CADR的有效性,作者将没有CADR模块的模型与添加了CADR模块的模型进行了比较。结果如图6(c)所示。添加作者的CADR模块带来了巨大的改进。作者在表2中展示了BD-PSNR上的定量增益。

Complexity and Qualitative Results.

作者比较了不同方法计算复杂性。如表6(a)和图6(b)所示,作者的方法可以在推理速度为16.8fps的情况下解码分辨率为1024  x 1024的图像。作者的方法不仅实现了优越的性能,而且还展示了更低的计算复杂性和更快的推理速度。

Visual Results

图7展示了作者方法生成的重构图像与Pipeline-1(ISPNet与经典VVC标准相结合,VTM 12.1)和Pipeline-2(ISPNet与基于学习压缩网络相结合)的对比。作者的方法在保留细微纹理方面表现出色,如图中更清晰的羽状边缘所示,同时实现了更高的色彩保真度。

Comparison results with traditional ISP pipeline

图4附录部分展示了使用RawPy(Song等人,2017年)的结果。尽管RawPy广泛使用,但通常比现代基于学习的算法表现更差。有关详细定量分析,请参阅表3,其中作者的方法在结合MLIC时显著优于RawPy。尤其是在无参考质量指标CLIPIQA中,该指标更适合RawPy通常产生的低亮度图像。

Receptive Field Analysis

作者通过计算每个模块的有效感受野来分析每个模块的有效性。对于不同输入的感受野的分析表明,模型对全局下采样RAW的输出涵盖全局感受野(图8(b)),从而在整张图像之前提取全局颜色。此外,对裁剪RAW的输出表现出非局部感受野(图8(c)),这说明CS(Channel Spatial Attention)能够利用非局部信息来增强潜在的紧凑性。相比之下,坐标嵌入与输入感受野局部相关(图8(d)),因为感知当前位置的坐标信息可以实现高质量的位置相关畸变恢复。

5. Conclusion

这项研究揭示了一种创新的全端到端实时摄像头成像流水线,在性能和效率方面超越了现有方法,并开创了成像流水线设计的新基准。

通过对ISP和压缩工作流程的详细分析,作者引入了一个独立于坐标的映射压缩模块,旨在优化特征压缩和色调映射,并专门设计了一个坐标感知的恢复模块,用于恢复特定坐标的畸变。

为摄像头成像流水线评估而制作的定制数据集设置了一个强大的基准,推动了未来的研究。

作者的全面评估不仅证实了该流水线的有效性,还强调了它有可能彻底改变未来的数字成像技术。

参考文献

[0]. An End-to-End Real-World Camera Imaging Pipeline.

THE END !

文章结束,感谢阅读。您的点赞,收藏,评论是我继续更新的动力。大家有推荐的公众号可以评论区留言,共同学习,一起进步。

标签:Pipeline,集智,作者,坐标,模块,图像,成像
From: https://blog.csdn.net/csdn_xmj/article/details/144540630

相关文章

  • scrapy中pipelines文件封装用sqlalchemy写入mysql数据库
    #前提必须安装 pymysql  sqlalchemy  scrapy#scrapy的piplines文件中fromsqlalchemyimportcreate_engine,text,insertimportpymysqlfromscrapy.utils.projectimportget_project_settingsclassMySQLPipeline:defopen_spider(self,spider):settings=......
  • Transformers 框架 Pipeline 任务详解(四):问答(question-answering)
    在自然语言处理领域,问答系统是一项关键的技术,它旨在根据给定的问题从文本中找到最准确的答案。借助HuggingFace的Transformers框架的PipelineAPI,我们可以快速地搭建一个强大的问答系统,而无需深入理解背后的复杂模型结构和算法细节。本文将详细探讨Transformers框架中的qu......
  • Netty出现的异常【已解决】:An exceptionCaught() event was fired, and it reached at
    修改方案:byteBuf.retain();ByteBuf后面添加这个retain(),这个添加原则是这样,如果你消耗了一次ByteBuf,你的下游Handler还需要再次消耗的话,就需要添加这个retain(),以此类推,一定要要注意添加的时机,不然的话可能需要自己手动释放;原因分析:这个错误是因为ByteBuf的已经被逻辑释放......
  • Pipelines 进阶
    pipelines_advanced-Copy1  Pipelines进阶¶以下任务:使用Pipeline如何与现代的大语言模型结合,以完成各类下游任务使用Tokenizer编解码文本使用Models加载和保存模型  使用Pipeline调用大语言模型¶LLM¶两种典型的语言模型:自回归:模......
  • Transformers 框架 Pipeline 任务详解(三):词元分类(token-classification)和命名实体识别
    微信公众号:老牛同学公众号标题:Transformers框架Pipeline任务详解(三):词元分类(token-classification)和命名实体识别公众号链接:https://mp.weixin.qq.com/s/r2uFCwPZaMeDL_eiQsEmIQ在自然语言处理(NLP)领域,Token-Classification(词元分类)任务是一项关键的技术,这项技术广泛应用于......
  • Data ETL Pipelines Using Terraform
    https://www.dheeraj3choudhary.com/automate-s3-data-etl-pipelines-with-aws-glue-using-terraform/ CreatinganETLpipelinewithAWSGlueandTerraformcansignificantlystreamlineyourdataprocessingtasks.Inthisblog,wewillwalkyouthroughthepro......
  • Netty 源码分析之 二 贯穿Netty 的大动脉 ── ChannelPipeline (一)
    目录源码之下无秘密──做最好的Netty源码分析教程Netty源码分析之番外篇JavaNIO的前生今世JavaNIO的前生今世之一简介JavaNIO的前生今世之二NIOChannel小结JavaNIO的前生今世之三NIOBuffer详解JavaNIO的前生今世之四NIOSelector......
  • scikit-learn中的Pipeline:构建高效、可维护的机器学习流程
    我们使用scikit-learn进行机器学习的模型训练时,用到的数据和算法参数会根据具体的情况相应调整变化,但是,整个模型训练的流程其实大同小异,一般都是加载数据,数据预处理,特征选择,模型训练等几个环节。如果训练的结果不尽如人意,从数据预处理开始,再次重新训练。今天介绍的Pipeline(中文......
  • A lightweight, ultra-fast tool for building observability pipelines
    Alightweight,ultra-fasttoolforbuildingobservabilitypipelineshttps://vector.dev/ Takecontrolofyourobservabilitydata Collect,transform,androuteallyourlogsandmetricswithonesimpletool. WhyVector?   Ultrafast......
  • Azure Pipelines 监听文件改动时自动发布 .Net Core或者.Net Framework package到arti
    示例项目:https://dev.azure.com/guorj/_git/PackDemo因为一些需求,在代码有改动以后需要更新响应的package,以供其他项目来使用,但是每次手动打包比较麻烦,就想着给自动化了,可怜自动化出来这么久都没有用过。代码托管在微软的Azure上,所以使用的是AzurePipelines功能。懒得细写了,包......