基于曝光融合的图像合成

简短说明

文件: \examples\Processing\HDR_ImageComposition\ExposureFusion\ExposureFusion.vad

默认平台: mE5-MA-VCL

简要说明

将最多 16 张具有不同 Exposure Time 的图像合成一张图像,在整张图像中显示细节和对比度,且无过曝和欠曝像素。此示例是 High Dynamic Range Imaging 的一种简单替代方案。

Exposure fusion 将具有不同 Exposure Time 的图像组合成一张图像。在此合成图像中,可防止出现欠曝和欠曝像素,并完全保留细节。Exposure fusion 的目的与 High Dynamic Range Imaging(参见第 节和 节)类似,但与该方法不同的是,它不会扩展所采集图像的亮度 Dynamic Range。Exposure fusion 只是截取图像序列中的最佳部分并将它们组合到一个结果图像中。Exposure fusion 对用户而言更易于处理,因为用户无需知道所采集图像的 Exposure Time。结果图像的 Quality 略逊于 HDRI 算法。下面将介绍在 "ExposureFusion.vad" 中实现的 exposure fusion 算法。

暴露融合理论

根据 [ 的 exposure fusion 算法Mer07] 通过加权混合将长度为 N 的序列图像组合成一个结果图像 :

公式 44。


此处 是针对每个颜色分量(红、绿、蓝)的权重 位于位置的像素 在序列的第 k 个图像中,带有

公式 45。


是一个加权函数,它取决于位置处的像素值 并且是该像素曝光良好程度的度量。在 "ExposureFusion.vad" 中 是一个线性函数,最高像素值为 127。对于从 128 到 255 的像素值, 设为 127。根据其需求,用户可以轻松更改此加权函数,如第 节所述(例如根据 [Mer07])。此参考设计中未实现诸如对比度或饱和度之类的 Quality 度量(参见 [Mer07])。在公式 45 中,对分母中红色、绿色和蓝色颜色分量的求和可防止结果图像中的像素 丢失原始图像的颜色信息。

实施VisualApplets

图 358 显示了 "ExposureFusion.vad" 的基本设计结构。

"ExposureFusion.vad" 的基本设计结构

图 358. "ExposureFusion.vad" 的基本设计结构


来自 Camera Link 基本配置中 RGB 相机的序列图像根据 HierachicalBox ExposureFusion 中方程式 44 的算法组合为一个结果图像。 为了进行仿真,请向仿真源 TestImages 加载最多 16 张、最大尺寸为 1024x1024 像素的图像。 图像相对于其 Exposure Time 的顺序并不重要! 通过“鼠标右键”点击 ExposureFusion 框,您可以设置输入图像的图像序列长度和图像尺寸。最大图像数量 为 16,最大图像尺寸为 1024x1024 像素。输出图像通过 DMA 发送到 PC。图 359 显示了 HierarchicalBox ExposureFusion 的内容。

HierarchicalBox ExposureFusion 的内容

图 359. HierarchicalBox ExposureFusion 的内容


在框中 ImageSequence 序列中的图像被组合为一个大图像。位置处的像素 来自图像的像素被定位为相邻像素。在框中 ImageComposition 实现了根据方程式的曝光融合算法。 44 已实现。 您可以在图中看到其内容。 360.

HierarchicalBox ImageComposition 的内容

图 360. HierarchicalBox ImageComposition 的内容


在框中 重量 加权函数 (参见方程式 45)针对每个颜色分量实现了对像素值的依赖关系。您可以看到框的内容 重量 中查看框 361.

HierarchicalBox Weight 的内容

图 361. HierarchicalBox Weight 的内容


根据方程式,对来自框的每个颜色分量的加权函数进行求和 红色, 绿色 和 蓝色 根据公式进行汇总。 45。 在图中。 362 您可以看到加权函数 用于红色。

Weight 框中 HierarchicalBox Red 的内容

图 362. 盒子 Weight 中 HierarchicalBox Red 的内容


像素值达到 127 之前,该函数是线性的。从像素值 128 到 255, 被设置为 127。 查找表算子 LUT_Weights 允许用户根据其需求轻松调整加权函数。此外,更改 ClipHigh 和 CastBitWidth 算子的参数(甚至删除它们)也能让用户实现这一点。回到盒子 ImageComposition的内容。在这里,根据公式44 ,颜色分量 红色、绿色和蓝色的像素值 与加权函数相乘 并乘以常数 Const (在盒子中值为 3) 红色, 绿色 和 蓝色。您可以在图 红色 中查看框 363.

盒子 ImageComposition 中的 HierarchicalBox Red 的内容

图 363. 盒子 ImageComposition 中的 HierarchicalBox Red 的内容


此处 会针对所有图像进行求和。 然后根据公式 除以 。最后,将各个颜色分量合并(参见图 45),并将输出图像发送到 PC。 在图 360中,您可以看到 5 幅示例输入图像以及图 364 中的结果图像。 365结果图像没有曝光不足和曝光过度的像素,并且细节得到了保留。

具有不同曝光时间的示例输入图像

图 364. 具有不同曝光时间的示例输入图像


应用曝光融合后 5 个示例输入图像的结果图像

图 365. 经过曝光融合的 5 幅示例输入图像的结果图像