国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

Camera問(wèn)題解鎖:Sensor Flicker(banding)

2023-07-02 22:25 作者:小馳成長(zhǎng)圈  | 我要投稿

01

flicker(banding)現(xiàn)象


出現(xiàn)flicker(banding)問(wèn)題時(shí),從視頻上看會(huì)發(fā)現(xiàn)有規(guī)律的明暗相間的條紋,這種現(xiàn)象也叫做牛頓環(huán)。如下圖所示。



02

產(chǎn)生flicker(banding)問(wèn)題的原因


Sensor在日光燈作為光源下獲取圖像數(shù)據(jù)時(shí)會(huì)產(chǎn)生flicker,其根本原因是照在不同pixel上光能量不同產(chǎn)生的,所接受的光能量的不同也就是圖像的亮度的不同。


電源的頻率有兩種標(biāo)準(zhǔn):50Hz(大陸)和60Hz(臺(tái)灣、日本)的正弦波形,當(dāng)然能量是沒(méi)有方向性的,因此對(duì)應(yīng)的能量是一個(gè)頻率為100Hz和120Hz的波形,如下圖所示:


由于能量在時(shí)間方向上的波形,照在sensor上就使每一個(gè)pixel產(chǎn)生在時(shí)間方向上的相應(yīng)波形,由于CMOS sensor的曝光方式是一行一行的方式進(jìn)行的,任何一個(gè)pixel的曝光時(shí)間是一樣的,也就是同一行上的每個(gè)pixel的曝光開始點(diǎn)和曝光的時(shí)間都是一模一樣的,所以同一行的所有點(diǎn)所接受到的能量是一樣的,而在不同行之間雖然曝光時(shí)間都是一樣的,但是曝光的開始點(diǎn)是不同的,所以不同行之間所接受到的能量是不一定相同的。由此產(chǎn)生sensor出來(lái)的圖像可能在圖像高度方向上會(huì)有相應(yīng)的波形,如下圖:


為了使不同行之間所接受的能量相同,就必須找一個(gè)特定的條件,使得每一行即使曝光開始點(diǎn)不同,但是所接受的光能量是相同的,這樣就避開了flicker,這個(gè)特定的條件就是曝光時(shí)間必須是光能量頻率Hz的整數(shù)倍時(shí)間。

計(jì)算原理為:

50HZ交流電能量周期:T = 1/(50*2)

sensor曝光一幀所用的時(shí)間 T_frame = 1/FPS;

sensor曝光一行所用的時(shí)間 T_row = T_frame/Line_max? (Line_max = Exp_max);


為了避免flicker,必須滿足每一行獲取的能量是交流電能量周期的整數(shù)倍,否則會(huì)因?yàn)楂@取的能量不一致,導(dǎo)致水波紋現(xiàn)象的產(chǎn)生。即:

T_row * Step = n * T

故:Step = (n * T)/T_row = n*(FPS *Exp_max) /100; (n取正整數(shù))


這個(gè)是計(jì)算Banding Flicker的依據(jù),具體計(jì)算方法如下:

50Hz

Banding Value = Total lines * fps / 100


60Hz

Banding Value = Total lines * fps / 120


03

如何規(guī)避flicker(banding)問(wèn)題 --- sensor的修改


相信在很多地方都可以了解到,只要曝光時(shí)間是光能量周期(100Hz)的整數(shù)倍,即可規(guī)避工頻干擾導(dǎo)致的閃爍問(wèn)題。


但是當(dāng)曝光時(shí)間低于光能量周期(10ms)時(shí),有應(yīng)該如何規(guī)避這個(gè)問(wèn)題呢?

假設(shè)幀率為10fps,那么設(shè)置一幀的時(shí)間間隔剛好為100ms,那么,每幀開始曝光開始時(shí)間都會(huì)是一致的,在相同的曝光時(shí)間,得到的光能量也就一致了。(由于有些提示是100ms的幀間隔,但是由于誤差問(wèn)題,不是準(zhǔn)確的100ms,誤差累計(jì)導(dǎo)致閃爍)。


通過(guò)設(shè)置幀率,使得每一幀之間的間隔為10ms的整數(shù)倍,每幀對(duì)應(yīng)的每一行曝光得到的光能量一樣(從能量波形來(lái)看,要使得每一行曝光所對(duì)應(yīng)的能量一樣,只需要確保對(duì)應(yīng)的每一行時(shí)間內(nèi)對(duì)能量波形積分,所得到的面積一樣即可滿足),從視頻上來(lái)看,當(dāng)曝光時(shí)間低于光能量周期(10ms)時(shí),明暗相間的條紋位置固定不動(dòng),視頻上看來(lái)不會(huì)有明顯的頻閃現(xiàn)象。

?

以50Hz為例說(shuō)明,實(shí)現(xiàn)這個(gè)有兩種辦法:
  1、設(shè)置曝光控制,強(qiáng)制為10ms整數(shù)倍變化,但是這樣會(huì)浪費(fèi)一部分曝光時(shí)間,導(dǎo)致曝光無(wú)法用滿,在室內(nèi)自然就會(huì)損失性能。


  2、修改楨率,使每楨圖像分到的時(shí)間是10ms的整數(shù)倍,則可以用滿每楨曝光時(shí)間在,室內(nèi)效果更好。修改楨率可以插入Dummy Line或者Dummy Pixel。這需要一點(diǎn)點(diǎn)計(jì)算,具體計(jì)算需要看sensor輸出Timing。
  例如把楨率設(shè)置為7.14fps,則每楨曝光時(shí)間是140ms。如果是15fps,則每楨曝光時(shí)間是66.66ms,如果強(qiáng)制曝光為10ms整數(shù)倍,最大即60ms,則有6.66ms無(wú)法參與曝光,損失性能。
  具體調(diào)整楨率方法得和sensor的FAE溝通,每個(gè)sensor都可能不一樣,不能一概而論。調(diào)整楨率還有個(gè)原則要注意,預(yù)覽一般不能低于 10fps,再低就很卡,常用14.28fps和12.5fps;抓拍不能低于5fps,否則用手就很難拍出清晰的照片,常用7.14fps。楨率是一個(gè)權(quán) 衡折中的選擇

?????? 高了曝光時(shí)間不夠,暗光效果太差,低了沒(méi)法拍照,容易虛。


04

如何規(guī)避flicker(banding)問(wèn)題 ---?app?的修改


banding現(xiàn)象,也叫做牛頓環(huán),那防止這種現(xiàn)象,也就叫做防牛頓環(huán),在Android 里面叫做anti banding。


針對(duì)banding問(wèn)題,google也為我們提供了對(duì)應(yīng)的接口,CONTROL_AE_ANTIBANDING_MODE, 這個(gè)參數(shù),應(yīng)用上一般要求設(shè)置為AUTO。



05

如何規(guī)避flicker(banding)問(wèn)題 ---?hal?的修改



android/hardware/qcom/camera/QCamera2/HAL3/QCamera3HWI.cpp

從下面代碼可以看到,property屬性persist.vendor.camea.set.afd 控制的就是anti banding的值,如果上層設(shè)置下來(lái)是AUTO模式,那么代碼里面默認(rèn)值是5(AUTO_60HZ),實(shí)際上在我們國(guó)內(nèi),一般的燈光閃爍頻率是50hz,所以如果是國(guó)內(nèi)的產(chǎn)品,這個(gè)默認(rèn)值我們需要修改為4(AUTO_50HZ)。



圖片

推薦閱讀:

Android Camera 測(cè)光梳理

Android Camera2 對(duì)焦梳理

哪些坑爹的Android CTS測(cè)試

高通Camera數(shù)字成像系統(tǒng)簡(jiǎn)介

一篇文章帶你了解Android 最新Camera框架

這可能是介紹Android UvcCamera最詳細(xì)的文章了


參考資料:

1. [關(guān)于cmos工頻干擾導(dǎo)致的閃爍問(wèn)題]

? ? https://blog.csdn.net/weixin_41944449/article/details/94296676

2. [camera工頻干擾問(wèn)題]

? ? https://blog.csdn.net/jzwjzw19900922/article/details/108508416

3.[Camera Sensor 的工頻閃爍]

? ? https://blog.csdn.net/lz0499



Camera問(wèn)題解鎖:Sensor Flicker(banding)的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
高台县| 武功县| 古丈县| 玛沁县| 澎湖县| 永顺县| 镶黄旗| 焦作市| 雅江县| 海城市| 忻城县| 蕲春县| 株洲市| 大悟县| 岳池县| 定陶县| 高邮市| 离岛区| 巴塘县| 遵义市| 华安县| 临夏市| 基隆市| 定西市| 衡东县| 长岭县| 麟游县| 东台市| 靖远县| 新泰市| 手机| 利川市| 板桥市| 鄯善县| 枣庄市| 台东县| 宁乡县| 定远县| 德钦县| 桦川县| 泸溪县|