1盼铁、問題背景
調(diào)試OV的一款sensor,客戶反饋亮度從暗到亮變化后尝偎,畫面會閃一下饶火;
有發(fā)現(xiàn)是和開啟了降幀有關(guān)系,當(dāng)關(guān)閉降幀后致扯,就看不到閃爍了肤寝,這里主要分析一下開啟降幀后,導(dǎo)致圖像閃一下的原因是什么抖僵。
2鲤看、問題分析
之前的想法是,肯定是和AE算法有關(guān)的耍群,當(dāng)幀率發(fā)生變化時(shí)义桂,曝光時(shí)間和增益都會發(fā)生變化找筝,AE會重新計(jì)算、重新收斂慷吊,所以圖像出現(xiàn)閃爍袖裕。
看如上的視頻,降幀和AE收斂是都存在的溉瓶。
整個(gè)過程是手捂住畫面急鳄,圖像先變暗(會達(dá)到降幀閾值,開啟降幀)堰酿,然后手放開疾宏,畫面亮度恢復(fù),AE收斂完成(降幀恢復(fù))触创。
所以這個(gè)問題需要分開來看坎藐;
a、關(guān)閉降幀嗅榕,執(zhí)行此過程顺饮,圖像是否閃爍。
b凌那、固定亮度場景兼雄,切換幀率,圖像是否閃爍帽蝶。
目前是執(zhí)行a后赦肋,沒看到有閃爍了,執(zhí)行b的話励稳,就會明顯閃一下佃乘,所以這肯定是和降幀有關(guān)系了。
但實(shí)際上降幀不會導(dǎo)致亮度變化驹尼,降幀只是增加了最大曝光時(shí)間趣避,是表示曝光支持的一個(gè)上限值有變化,并不是曝光有變化新翎。
比如在固定亮度場景下程帕,手動設(shè)置200行曝光+1倍增益,和100行曝光+2倍增益地啰,
出來的亮度是一樣的愁拭,不應(yīng)該有亮度的變化,切換也不應(yīng)該有亮度跳變亏吝。
切換幀率導(dǎo)致的亮度閃爍岭埠,算法那邊回復(fù)應(yīng)該是曝光和增益寫給 sensor 的時(shí)間不同步導(dǎo)致的,和AE沒有關(guān)系,是驅(qū)動要保證的惜论。
那怎么做到曝光和增益可以同時(shí)寫給 sensor 呢许赃?
一般在寫 sensor 寄存器時(shí),sensor 中會提供一個(gè)hold的功能来涨,可以多個(gè)寄存器同時(shí)去寫图焰,
所以可以在執(zhí)行降幀后,同時(shí)去寫曝光和增益的寄存器就可以了 , sensor datasheet中關(guān)于hold 的描述如下:
如下是關(guān)于sensor驅(qū)動中增加 hold 后的簡單說明蹦掐。
3技羔、問題總結(jié)
另外有個(gè)問題,當(dāng)不降幀時(shí)卧抗,曝光和增益沒加hold藤滥,為什么不會出現(xiàn)閃爍呢?
因?yàn)橐话鉇E的工作策略是曝光優(yōu)先社裆,畫面從亮到暗時(shí)拙绊,先走曝光行,曝光行走滿了泳秀,再走增益标沪。
從暗到亮?xí)r,也是先減增益嗜傅,再減曝光行金句,所以不存在同步的說法。
但幀率變化時(shí)涉及到曝光和增益的同時(shí)變化吕嘀,所以為了避免閃爍违寞,需要做同步的操作。