Tech Talk | 还原照片不同亮度范围细节——RAW HDR技术

本文介绍了小米手机中使用的RAW HDR技术,通过多帧降噪、多帧合并和色调映射等步骤,提升照片动态范围,保留高光和暗部细节,提供高质量摄影体验。技术涉及全局与局部对齐、深度学习降噪、多尺度融合等算法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

拍照时,你是否遇到过这些情况呢?

拍摄的成片暗区过暗,高亮区域过曝

逆光拍摄中,会出现“鬼影”

暗部噪声偏大导致图像出现瑕疵

.......

照片的高光和暗区细节得总是不到完美呈现,这是所有拍摄设备都会出现的问题。那么我们该怎么解决和改善才能拥有愉快和出色的摄影体验呢?答案是:通过RAW HDR(高动态范围)算法技术。

RAW HDR技术:是通过使用传感器直出的raw数据,减少isp(图像信号处理)处理过程中的画质损失,能更好实现影调、噪声和鬼影等方面的优化,有效提升了照片的动态范围和画质效果。照片能够同时保留拍摄场景中的高光和暗部的细节,还原人眼中所能看见的真实场景图,从而给用户带来更高质量的摄影体验。

“ 

本期的Tech Talk,我们邀请到了小米AI实验室视觉算法团队的工程师——程璞,为大家介绍小米手机中,RAW HDR方案的整体结构和算法原理。

cb0c33d5b22e51a9e26a01488091fa52.jpeg

硬核指数:⭐⭐⭐⭐⭐

趣味指数:⭐⭐⭐

阅读时长:约9分钟

一、什么是HDR

HDR是“High Dynamic Range” (高动态范围)的缩写,其中动态范围是指拍摄场景中最亮点和最暗点的亮度比值。当拍摄场景的动态范围很高时,受限于传感器以及图像编码等因素,照片可能无法呈现所有信息。典型的例子如下图所示,场景中的高光区域可能会过曝,而暗区则可能会出现死黑的现象。两个区域均难以看清细节。

2333d957e7081224a48dd462e77d3835.png

HDR就是通过一定的技术手段,让照片中尽量包含高亮区域和暗区的细节,从而提升照片的画质效果。

57a8a24bedd0270c41675c7ae66add2f.png

在拍摄高动态范围场景时,照片之所以无法呈现场景高亮和暗区的信息,一方面是受限于传感器:真实世界的动态范围是很高的,而传感器能感知的范围是有限的;另一方面则跟图像的编码位数有关,比如8bit的图像能表示的范围是0~255,超过这个范围则会出现过曝等现象。

针对传感器的限制,在拍照时可以使用包围曝光的技术,即通过调整曝光时间、iso等参数同时采集不同亮度范围的图像帧

### 跨模态视频检索技术介绍 跨模态视频检索是一种涉及多学科交叉的技术,它允许用户通过不同类型的查询(如文本描述、图像或其他形式的数据)来查找最相关的视频片段。这项技术依赖于强大的算法和模型,特别是像CLIP这样的预训练模型,在处理复杂的多媒体数据方面表现出色[^2]。 #### CLIP模型的工作原理 CLIP (Contrastive Language–Image Pre-training) 是一种由OpenAI开发的深度学习架构,能够理解并关联来自两个不同域的信息——即自然语言和视觉内容。具体来说: - **联合嵌入空间**:该模型可以将图片与对应的文本映射到同一个高维向量空间中; - **对比损失函数**:利用成对样本之间的相似度作为监督信号来进行优化训练; 这种设计使得即使是在未见过的情况下也能很好地匹配新的图文组合,从而实现高效的跨媒体搜索功能。 #### 应用场景实例 为了更好地展示如何应用这些理论知识解决实际问题,在一次名为 "J-Tech Talk | 跨模态视频检索进阶" 的在线讲座活动中提到过这样一个案例研究: 假设有一个庞大的监控录像库,想要快速定位某个人物出现在哪些位置,则可以通过输入一张目标人物的照片以及一段简短的文字说明(比如时间范围),系统就能自动筛选出符合条件的结果列表供进一步审查。 ```python import clip import torch model, preprocess = clip.load("ViT-B/32") # 加载预训练好的CLIP模型 text_inputs = ["一个人穿着红色衣服走在街上"] # 用户提供的文字提示 image_input = preprocess(image).unsqueeze(0) with torch.no_grad(): text_features = model.encode_text(clip.tokenize(text_inputs)) image_features = model.encode_image(image_input) logits_per_image, logits_per_text = model(image_features, text_features) probs = logits_per_image.softmax(dim=-1).cpu().numpy() print(f"预测概率为 {probs}") ``` 此代码展示了使用Python调用CLIP API执行简单的跨模式匹配操作的方法。这里先加载了一个预先训练完成的基础版CLIP网络结构,并准备好了待比较的目标对象表示形式(无论是基于文本还是图形)。之后计算两者间的距离得分并通过softmax转换成易于解释的概率分布输出给最终使用者参考。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值