日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

android 测光模式,Android Camera1中的对焦与测光

發布時間:2025/3/8 Android 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 android 测光模式,Android Camera1中的对焦与测光 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Android Camera1開發系列連載:

Android Camera1詳解

Android Camera1顯示預覽的四種方式

對焦模式

在使用特定的對焦模式的時候,必須確保相機支持該模式,相機支持的對焦模式可以通過Parameters#getFocusMode接口來獲取:

常用的對焦模式為:

//?連續自動對焦caf,預覽場景變化時會自動去對焦Camera.Parameters.FOCUS_MODE_CONTINUOUS_VIDEOCamera.Parameters.FOCUS_MODE_CONTINUOUS_PICTURE//?單次自動對焦af,下發一次請求則對焦一次Camera.Parameters.FOCUS_MODE_AUTO

對焦區域

當對焦模式為caf或者af時,可以指定對焦區域,如果未設置,則驅動程序將會自己選擇焦點目標,看一張來自官網描述對焦坐標系的圖:

如圖所示,無論屏幕是橫屏還是豎屏,預覽視圖的中心點坐標都是(0,0),左上角為(-1000,-1000),右下角為(1000,1000)

在計算屏幕坐標系中的UI點擊坐標(x,y)到sensor對焦坐標系對焦區域focusRect的時候,還需要考慮預覽的旋轉角和前置鏡像,計算過程大致如下:

設置對焦區域的時候,需要先查詢一下可設置對焦區域的最大個數:

//?返回0的時候表示不支持設置對焦區域,通常都是返回1// 當返回個數大于1的時候,可以設置對焦區域列表,//?每個對焦區域可以設置權重,權重范圍為1~1000Parameters#getMaxNumFocusAreas

常見對焦模式的切換場景

單拍時,先對焦再拍照,拍照結束后切換到caf

連拍時,先對焦再拍照,連拍結束后切換到caf

觸屏對焦TouchAF后,可以進行鎖焦,預覽場景變化時再轉為caf;或者設置超時機制,3-5s后從af轉為caf。不同手機的系統相機中選擇的策略不同,主流策略大概就這兩種

af切換到caf的時候,需要切換對焦模式和callback,從af切換到caf:

parameters.setFocusMode(Camera.Parameters.FOCUS_MODE_CONTINUOUS_PICTURE);camera.setAutoFocusMoveCallback(cafCallback);

從caf切換到af:

parameters.setFocusMode(Camera.Parameters.FOCUS_MODE_AUTO);camera.autoFocus(afCallback);

對焦畫框邏輯

autoFocus流程:五種狀態,三類UI

//?三類UI:正在對焦畫白框,對焦成功畫綠/黃框,失敗畫紅框// 五種狀態IDEL // focus is not activeFOCUSING?// focus is in progressFOCUSING_SNAP_ON_FINISH?//?will?take?picture?after?focus?finishSUCCESS??//?focus?finished?and?successFAIL?????//?focus?finished and fails

autoFocusMoving流程:三種狀態,兩類UI

//?兩類UI:moving的時候畫白框,對焦成功畫綠/黃框,超時直接清除UI// 三種狀態MOVING_START?//?caf startMOVING_END? // caf endTIMEOUT?????// time out

上面的顯示策略對對焦狀態的展示是很明晰的,不過現在的主流相機app都不會搞這么復雜,比如我手頭的iPhone和小米手機的系統相機就沒這么多顏色切換

測光

測光的坐標系和使用流程與對焦是一樣的,就不具體描述了。

在TouchAF的時候,測光區域可以和對焦區域一樣,也可以區域中心點相同,而框的大小不同,或者對焦區域和測光區域設置為不同區域,這種焦側分離的功能一般都是在相機app中的專業模式中提供。考慮用戶體驗選擇不同的策略即可

常見測光方式

注:Redmi k30 5G版?系統相機專業模式

點測光:對畫面中較小的區域(占整體面積的1.5% - 3%)進行測光,不考慮周邊環境亮度,測光點所偵測的畫面非常小,結果比較精確。這種測光模式適合用于場景光線反差大,或者主體在畫面中所占比例較小的時候使用;

中央重點測光:測光重點放在畫面的中心約75%的區域。在光線色差反差較大的情況下,這種測光模式比矩陣測光更容易控制效果;

平均測光:又叫矩陣測光,對畫面中整體區域的光線強弱和色彩等情況進行偵測分析后,得到一個平均比較科學的測光值。這種測光模式適合在場景中光線、色彩等反差 不大的情況下使用;

以下面這張照片為例,在逆光場景下展示花瓣的紋路,為了讓花瓣顯得通透一點,可以采用點測光模式進行拍攝

測光方式的選擇依賴于芯片提供支持或者相機Turing實現,在標準api中是沒有直接提供相關接口的

該功能多見于系統相機專業模式,一般在第三方的相機類app啟動相機預覽后,都是默認的中央重點測光。第三方相機要實現測光方式的選擇,除了依賴于廠商提供支持外,其實也可以自己研究一套AE權重表然后利用OpenGL來實現

總結

以上是生活随笔為你收集整理的android 测光模式,Android Camera1中的对焦与测光的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。