关于自动曝光方面论文的阅读,Recovering High Dynamic Range Radiance Maps from Photographs,这篇论文主要针对vSLAM希望了解相应的曝光算法,由加大伯克利的Paul E. Debevec,Jitendra Malik完成。
上述篇论文被ICRA2017 中的Active Exposure Control for Robust Visual Odometry in HDR Environments 所引用,主要引用了其中的曝光模型(自己理解,专用名词未必正确)。仅作为阅读笔记以记录,如果能够对阅读者有所帮助,那再好不过。如有错误,也请各位大神多多指出并指点。
2.1
关键参数
曝光量exposure X, 幅照度 irradiance E, 曝光时间 exposure time delta t, 光密度optical density D
关于Z,是一个关于每个像素上原始曝光量X的非线性方程,后被称之为f。
算法的实现第一步也就是要恢复处这个f,这样就可以计算每个像素上的曝光量X,
可表述为反函数X = f ^(-1) ( Z ), f^(-1)为反函数而非-1次方,注意这里假设f为单调递增。
在求解f时,有一些前提假设
1、场景是静止的;2、处理速度足够快,可忽略光照变化;3、幅照度E对于每个像素都是一样的。
这样可以得到Zij = f(Ei Tj) (1)
依然假设Z是单调且是可以求反,(1)可以写成
Ei Tj = f(^-1)(Zij);
两边同时求ln可得
ln[ f(^-1)(Zij) ] = ln(Ei) * (Tj) = ln(Ei) + ln(Tj);
将 f(^-1) 表示为g,就可得式(2):
g(Zij) = ln(Ei) + ln(Tj);
(2)式中,Z和T是已知的,E是未知的。
恢复g,只需要恢复出一副图像中所有像素亮度的g值。
最终问题归为一个最小化问题
上述最小化问题中分为两个部分,第一部分是为了该最小化问题求解出的解满足公式(2)。
第二部分是为了保证g函数是平滑的,在这里g''(z) = g(z-1) - 2g(z) + g(z+1), 加权系数λ,需要根据实际测量量中的噪声来选择。
因为在(3)中的最小化问题中是关于E,g的平方,所以这个最小化问题是较为简单的线性最小二乘问题。求解这个超定方程组,还需要使用SVD分解。
除此之外,还需要三个点来完成上述公式的实现。
1、g和E可以加上一个尺度因子α。论文中对此进行了描述,将E+α代替E,g+α代替g,公式3并不会发生变化。
2、在第二个多项式中添加权重函数w。
所以公式3就变成了:
3、在计算的过程中,并不需要遍历所有像素。论文中做了详细叙述,给定P副图像中的N个像素值,必须要求解N个ln(Ei)的值和(Zmax-Zmin)个g值,为了保证超定方程的求解,需要满足
N*(P-1) > (Zmax - Zmin);
而每个像素值的范围为0-255,所以,假设有P = 11,每个图像只需要有50个像素即可,即N = 50. 公式3所需要满足的方程个数为N × P + Zmax - Zmin,如果遍历所有像素,很显然方程数量太过庞大。论文中提到,可以在方差较小的图像区域进行采样,以便保证光照亮度在选择的区域内是不变的。作者在文中最后交代当时他是用人工来选取区域的,但也说这部分很容易能够实现自动选取。
2.2
从公式2中可得公式5:
这里将公式4中的权重系数重新使用,目的是让增加接近响应函数中的中间部分像素的权重。
结合多次曝光,有助于降低恢复E中包含的噪声。
2.3 How many images are necessary?
1. 恢复图像响应曲线。至少2张。
2. 恢复辐照图,给定响应曲线。这里没有确定的数量,是一个动态数,R/F ,R为要恢复的最大辐照亮度范围,F为图像工作范围。
内容上基本就是以上这么多,由于我的研究内容不设计彩色部分,所以后续彩色部分便不再描述。论文比较老,但是思想比较实用。提出了恢复响应曲线和辐照图的方法,这对于后续做AE有很大帮助。对于vSLAM而言,尤其是基于灰度不变假设的方案来说,论文中的思想同样十分有帮助。
网友评论