各种HDR技术归纳学习

部署运行你感兴趣的模型镜像

本文梳理了HDR(高动态范围)成像技术的发展历程和技术路线,涵盖多帧HDR、单帧HDR和硬件HDR三大方向。多帧HDR部分解析了传统异曝光HDR和Google提出的HDR+技术原理;单帧HDR部分总结了ExpandNet等深度学习方法的创新思路;硬件HDR部分介绍了索尼等厂商开发的隔行曝光、行交织等7种传感器技术方案。【AI摘要】

目录

1 多帧HDR

1.1 多帧异曝光

1.2 多帧同曝光(HDR+)

2 单帧HDR

3 硬件HDR

3.1  隔行曝光HDR

3.2  Z字形HDR

3.3  四像素合一HDR

3.4  行交织HDR

3.5  大小像素HDR传感器

3.6  DCG传感器

3.7  双摄HDR

4 参考资料


1 多帧HDR

1.1 多帧异曝光

HDR成像这个概念最早被大众熟知可以追溯到2011年发布的iPhone 4S。iPhone4S是首次引入HDR成像的手机之一,它使用的是多帧异曝光HDR。

在上面的示意图中,红色部分表示传感器的本底噪声,淹没在本底噪声中的信息是无法被获取的,但通过多帧接力,我们就可以将它们拼接起来,获得宽广的动态范围。这种技法一般通过调节曝光时间来获得不同曝光的画面,最终通过多张不同曝光的图片来把整个动态范围包起来,因此也被称作包围曝光。包围曝光是的具体操作是:一次拍摄后,以中间曝光值和减少曝光值和增加曝光值的方式,形成3张或者更多不同曝光量的照片。在包围曝光拍摄得到多张不同曝光值照片后,使用后期软件的蒙版功能,取低曝光值照片的高光处与高曝光值的暗光处,与正常曝光的照片进行合成,实际成片效果就比合成前好多了。

包围曝光(多帧异曝光HDR)是大部分HDR算法的基础,其基本思路“取长补短,合为一个”深深影响了之后的HDR算法演进。在此基础上,工程师通过多帧防抖对齐、主图超采样和时间超采样等创新算法,有效解决了早期HDR技术在拍摄手抖、被摄物运动和暗光噪点等问题上的弊病。

1.2 多帧同曝光(HDR+

包围曝光有一个很明显的缺点,过曝那张照片拍摄时间过长,浪费了大量时间与图片信息。整组照片拍摄时间达到了拍摄一张普通非HDR照片时间的3倍左右。如果在明亮的室外晴天,这一问题没有很严重的影响,快门时间都在千分之一秒以上;可是到了光照条件先天不足的室内,那张过曝的照片拍摄时长会大大超出安全快门速度,非常容易因抖动引起模糊,至于被摄物移动导致合成失败等问题,则更难以处理。由此,Google的工程师在提出了一种新的HDR实现方法,他们认为这种方法较传统的多帧异曝光HDR提升很大,所以取名叫HDR+。

HDR的核心目标可以简单概括为“高光不过曝,暗处有细节”,而HDR+则通过让所有照片均处于欠曝状态来确保高光部分不溢出。具体地,HDR+捕获曝光不足的帧,对齐和合并这些帧以产生高比特深度的单个中间图像,并对该图像进行色调映射以产生高分辨率照片。如上图,HDR+用4张1/40秒快门时间的照片堆在一起,4*(1/40秒)=1/10秒达到正常曝光的1/10秒。而按正常曝光时间是1/10秒,“KABB”字样是过曝的。而1/40s的照片曝光时间太短,“KABB”处是不会过曝的,能完好保存亮处的色彩信息。由此,用4张1/40s的照片堆栈为最终成品时,既能获得足够的亮度,也能控制住高光处的过曝情况。在实际操作中要实现4帧的合成的话,实际照片数量比4张多,一方面是因为暗处可能需要更多帧来进行降噪处理,另一方面是因为因抖动或其它因素会产生无用的帧,被当作废片舍弃。当然其它原因也有不少,具体的实现过程相当复杂。

现在很多手机的超级夜景模式就是基于HDR+的,如华为从P20 Pro开始的超级夜景,自此把手机的夜拍表现提升了整整一个档次。

2 单帧HDR

单帧HDR是指通过单一图像生成高动态范围(HDR)效果的技术,与传统的多帧HDR不同,单帧HDR直接从一张图片中提取高光和阴影区域的细节,从而避免了多帧拍摄可能带来的运动模糊或重影问题。CSDN有一篇文章详细介绍了三篇关于单帧HDR技术的论文(见第二项参考资料),在此对这些论文的核心思想和方法进行总结。

这三篇论文分别对应ExpandNet方法、DRHT方法和Deep Reverse Tone Mapping方法。其中,ExpandNet专注于LDR到HDR的直接映射,使用多分支CNN(局部分支、膨胀分支、全局分支)来捕捉不同层次的图像信息,同时避免上采样操作,以减少伪影的产生。DRHT通过在HDR域中校正LDR图像,强调恢复过曝和欠曝区域的细节,并使用双网络结构(HDR重建网络与LDR校正网络)来完成任务,通过残差学习提高训练效率,优化LDR和HDR图像之间的转换。Deep Reverse Tone Mapping采用间接方法,利用深度学习生成多张不同曝光的图像,从而构建HDR,强调了对曝光变化的建模,通过合成虚拟曝光图像来解决直接从LDR到HDR映射的困难。

3 硬件HDR

3.1  隔行曝光HDR

为了解决运动伪影问题,诞生了隔行曝光HDR(Interlaced HDR, iHDR)。采用这种技术的传感器以行为单位,分别进行长曝光和短曝光操作。例如,在Bayer阵列结构中,通常以两行为一组,奇数组进行短曝光,偶数组进行长曝光。通过这种方式,一帧图像中可以同时包含长曝光和短曝光的信息,随后通过算法对两者进行融合处理。然而,iHDR会导致空间分辨率损失一半,主要的iHDR技术应用有索尼的BME-HDR和OV的Alternate Row HDR。

3.2  Z字形HDR

iHDR技术最大的问题是空间分辨率损失的问题,Z字形HDR(Zig-zag HDR, zHDR基本思想源自iHDR,但在曝光组织方式上进行了重要改进。与iHDR以行为单位区分长曝光和短曝光不同,zHDR采用Z字形的方式重新组织长曝光和短曝光的数据分布。这种设计不仅能够有效减少分辨率损失,还能更好地保留图像的细节信息。zHDR是由SONY提出的iHDR的升级版本,具体的实施方案主要体现在索尼的SME-HDR技术中。

3.3  四像素合一HDR

这种四像素合一HDR(Quad Bayer Coding HDR, QHDR传感器的设计特点是:每个像素由四个子像素组成,这些子像素共用一个色彩滤镜。在非HDR模式下,四个子像素的信号会被合并为一个输出值,从而提升感光能力;在HDR模式下,四个子像素会被分成两组,按照对角线方向划分,其中一组(135°方向)进行短曝光,另一组(45°方向)进行长曝光。随后,通过缩放和融合,生成具有完整像素位置信息的HDR图像。这种技术不仅能够有效提升动态范围,还能避免传统HDR技术中可能出现的分辨率损失问题。IMX294CJK采用了这个技术。

3.4  行交织HDR

索尼的行交织HDR(Digital Overlap HDR, DOL-HDR在效率上相比传统HDR有了显著提升。传统HDR的读取方式是逐行完成所有像素的曝光后,再分别进行长、中、短曝光,这种方式效率较低且容易受到运动物体的影响;DOL-HDR则通过(准)同时进行长、中、短三次曝光和读取的方式,大幅提高了数据采集的效率,并有效减少了因时间差导致的运动伪影问题。IMX290和IMX274LQC使用了这一技术。OV的Staggered HDR与索尼的DOL-HDR类似,不同的是DOL-HDR最多支持4:1曝光输出(long、medium、short、veryshort),Staggered HDR最多支持3:1输出(long、medium、short)。

3.5  大小像素HDR传感器

与传统的CFA(彩色滤光阵列)传感器不同,大小像素HDR传感器(Large and Small Pixel HDR Sensor在相邻位置有一大一小两个像素单元。这两个像素在空间上非常接近,因此可以认为它们对空间采样的影响基本一致,从而避免了传统HDR技术中常见的分辨率损失问题。由于大像素和小像素的物理特性不同,其感光灵敏度和满井电荷容量也存在显著差异。这种设计使得大小像素在相同光照条件下产生不同的曝光效果,类似于时域HDR技术中通过调整曝光时间来覆盖不同亮度范围的方式。通过融合大像素和小像素的数据,传感器能够在单帧图像中捕捉更广的动态范围,同时保留高光和阴影区域的细节。IMX490采用了此技术。

3.6  DCG传感器

“Dual”一词表明,这种DCG传感器(Dual Conversion Gain Sensor在单个像素内提供了两种不同的转换增益方案:低转换增益(Low Conversion Gain, LCG)和高转换增益(High Conversion Gain, HCG)。在明亮场景下,传感器会启用LCG模式,此时DCG功能打开,可以有效避免信号饱和,确保高光区域的细节得以保留;在低光场景下,传感器切换到HCG模式,此时DCG功能关闭,可以大幅提升像素的灵敏度,使传感器能够在弱光环境中捕捉到更多的细节。

3.7  双摄HDR

双摄HDR的核心原理是两个摄像头协同工作,一颗摄像头负责短曝光,一颗摄像头负责长曝光,后期通过HDR多帧融合算法进行融合即可。

4 参考资料

您可能感兴趣的与本文相关的镜像

TensorFlow-v2.9

TensorFlow-v2.9

TensorFlow

TensorFlow 是由Google Brain 团队开发的开源机器学习框架,广泛应用于深度学习研究和生产环境。 它提供了一个灵活的平台,用于构建和训练各种机器学习模型

MI_S32 ST_SnrModuleInit(ST_BasicAttr_S *pstBasicAttr, ST_ModSensorAttr_S *pstSensorAttr) { MI_SNR_Res_t stRes; MI_U32 u32ChocieRes = 0; if (pstBasicAttr->eHDRType != E_MI_ISP_HDR_TYPE_OFF) { STCHECKRESULT(MI_SNR_SetPlaneMode(pstSensorAttr->ePADId, TRUE)); } else { STCHECKRESULT(MI_SNR_SetPlaneMode(pstSensorAttr->ePADId, FALSE)); } ST_DBG("pstSensorAttr->u8ResIdx = %d\n", pstSensorAttr->u8ResIdx); if (pstSensorAttr->u8ResIdx < 0) { MI_U32 u32ResCount = 0; MI_U8 u8ResIndex = 0; STCHECKRESULT(MI_SNR_QueryResCount(pstSensorAttr->ePADId, &u32ResCount)); for(u8ResIndex=0; u8ResIndex < u32ResCount; u8ResIndex++) { MI_SNR_GetRes(pstSensorAttr->ePADId, u8ResIndex, &stRes); printf("index %d, Crop(%d,%d,%d,%d), outputsize(%d,%d), maxfps %d, minfps %d, ResDesc %s\n", u8ResIndex, stRes.stCropRect.u16X, stRes.stCropRect.u16Y, stRes.stCropRect.u16Width,stRes.stCropRect.u16Height, stRes.stOutputSize.u16Width, stRes.stOutputSize.u16Height, stRes.u32MaxFps,stRes.u32MinFps, stRes.strResDesc); } printf("choice which resolution use, cnt %d\n", u32ResCount); do { scanf("%d", &u32ChocieRes); ST_Flush(); MI_SNR_QueryResCount(pstSensorAttr->ePADId, &u32ResCount); if(u32ChocieRes >= u32ResCount) { printf("choice err res %d > =cnt %d\n", u32ChocieRes, u32ResCount); } } while(u32ChocieRes >= u32ResCount); printf("You select %d res\n", u32ChocieRes); pstSensorAttr->u8ResIdx = u32ChocieRes; } else { ST_DBG("error\n"); } STCHECKRESULT(MI_SNR_SetRes(pstSensorAttr->ePADId, pstSensorAttr->u8ResIdx)); STCHECKRESULT(MI_SNR_Enable(pstSensorAttr->ePADId)); // set fps, adjust STCHECKRESULT(MI_SNR_GetRes(pstSensorAttr->ePADId, pstSensorAttr->u8ResIdx, &stRes)); if ((pstSensorAttr->u32Fps > stRes.u32MinFps) && (pstSensorAttr->u32Fps < stRes.u32MaxFps)) { STCHECKRESULT(MI_SNR_SetFps(pstSensorAttr->ePADId, pstSensorAttr->u32Fps)); } return MI_SUCCESS; }请解释
03-25
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值