• HDR阴影高光图像增强


    1. 技术背景

             HDR图像处理的技术本质上是对阴影,高光的细节增强。即图像太暗或者太亮的部分,其细节丢失的比较明显,HDR图像处理就是对暗部和高亮部分的细节进行恢复的过程。

            HDR的处理思路是这样的。首先,用户至少拍摄3张不同曝光量下的照片。分别对应低曝光,正常曝光和高曝光量。对于低曝光拍摄的图片,场景中比较亮的部分细节会比较突出,而其他部分则细节丢失比较严重。而对于高曝光量,则场景中较暗的部分被凸显出来,而其它部分曝光过度造成细节丢失。正常曝光水平则是丢失暗部细节和高亮的部分。

           值得一提的是HDR相机拍出来的图片,其每一个像素的分量并不是8位的,而是大于8位的。然而大多数显示设备目前只能显示每一个分量为8位的位图。如何把这3张不同曝光量水平的图片合成一张图片,以方便显示设备显示,这就是HDR色调映射的关键步骤。

          由此可见,对于场景光照不均的场合特别适合HDR效果,而正常光照下,其效果并不太明显。

          Photoshop提供的阴影高光工具可以一定程度上增强阴影高光的细节,但会产生噪点和色彩失真,尤其是在多次处理之后。iOS设备本身已经具备HDR功能,但处理时间很长,这主要是因为HDR算法复杂,在嵌入式设备上没法进行视频图像的实时处理。


    2. 新的实现思路

       类似于数字音频中的均衡器原理,通过对不同波段局部光照量的分析,分段映射不同局部光照量到原始图片上,实现了一种简单高效的阴影高光细节增强算法。而其中局部光照量的分析使用积分图可以快速计算。该算法只需要一张照片就可以处理,完全满足视频图像处理的需要,时间复杂度为O(1)。优化后的算法只占用一帧灰度图像的缓存空间,在iPod4设备上对于640x480的图片可以达到20FPS以上。


    3. 图像处理结果














    测试图片来源于网络,其中最后一张图片是连续两次增强的结果。




  • 相关阅读:
    小程序模板template问题记录
    datepicker 组件 的坑
    js实现 throttle 和 debounce
    vuex简单使用
    webpack 打包图片 缺失问题
    invalid prop `current` of type `string` supplied to `pagination`, expected `
    HTML5自定义属性之data-*
    vue组件传值方式介绍
    解决github.com 打不开问题
    git密令使用
  • 原文地址:https://www.cnblogs.com/celerychen/p/3588206.html
Copyright © 2020-2023  润新知