VPP design tool · Camera FOV overview

VPP 如何把 Camera 規格畫成 2D FOV

這是一份給其他 RD 的短版介紹。VPP 先把 Camera 型錄規格與安裝狀態整理成當下 H/V FOV,再分別計算地面幾何與 DORI 距離,最後合流成 Floorplan 上的 2D shape。

VPP Camera FOV 簡介流程VPP 整理 Camera 與 Placement 資料,取得目前 H/V FOV,平行計算垂直視角的地面近遠邊與水平視角加解析度的 DORI 距離,合流後輸出 Floorplan 2D shape。 01 · INPUTCamera + Placementfocal · FOV · h · tilt · resolution逐 CHANNEL 整理 02 · CURRENT FOV取得當下 H/V FOVspec 或 sensor + focalcurrentFovH · currentFovV 03 · V-FOV BRANCH投影到地面h · tilt · currentFovVdNear · geometric dFar 03 · DORI BRANCH計算 DORI 距離currentFovH · resolutionWdIdentify…dOuterDORI 04 · MERGE決定實際遠邊與寬度min(dFar, dOuterDORI)near / far width · meter points 05 · 2D OUTPUT畫到 Floorplanorigin · rotation · scaletrapezoid / wedge / circle ONE-SENTENCE MODELV-FOV 決定幾何近遠邊;H-FOV 與解析度決定細節距離;較短的外緣成為最後 2D shape。
01

四種資料責任

先分清楚資料層級,再看公式;Camera spec 不包含安裝位置,Current FOV 也不是另一個型錄欄位。

資料定義提供內容產生結果
Camera product spec型號層級、與安裝位置無關的光學與能力資料。focal range、Spec H/V FOV、sensor、resolution、產品類型。定義這個 Camera 可以怎麼算。
Placement某一顆 Camera 在 Floorplan 上的安裝實例。位置、高度、tilt、rotation、目前 focal。決定視野從哪裡、以什麼方向落地。
Channel可獨立設定並計算的一個鏡頭或子視野。可覆寫自己的 tilt、rotation 與 focal。每個 Channel 產生一個 2D FOV shape。
Resolved input套用 Channel、Placement 與 fallback 後的實際計算輸入。current H/V FOV 所需資料、地面參數及 Floorplan scale。成為後續公式的單一輸入。
02

三段核心計算

先求目前視角,再讓 V-FOV 與 H-FOV+resolution 分頭計算,最後以 effectiveFar 合流。

VPP 三段核心公式的幾何關係 第一段以 sensor dimension 與 focal length 求水平或垂直視角;第二段以高度、tilt 與垂直視角求地面近遠邊;第三段以水平視角與解析度求 DORI 外緣,並與幾何遠邊取較短者。 01 · CURRENT H/V FOV sensor 與 focal 形成視角 INPUT · sensor dimension S + focal f GEOMETRY S θ/2 f FORMULA θ = 2 × atan(S / 2f) OUTPUT currentFovH / currentFovV 02 · V-FOV → GROUND 上下視線落在地面的交點 INPUT · height h + tilt + currentFovV GEOMETRY h tilt V/2 dNear dFar FORMULA αnear = tilt + V/2 · αfar = tilt − V/2 d = h / tan(α) OUTPUT dNear / geometric dFar 03 · H-FOV + RESOLUTION DORI 外緣限制最後遠邊 INPUT · currentFovH + resolutionW GEOMETRY · TOP VIEW H/2 near effectiveFar geometric dFar FORMULA PPM(d) = resolutionW / sceneWidth(d) effectiveFar = min(dFar, dOuterDORI) OUTPUT trapezoid / wedge / circle
先用 sensor/focal 得到 Current H/V FOV;V-FOV 分支決定地面幾何近遠邊,H-FOV+resolution 分支決定 DORI 外緣;兩者以 effectiveFar 合流。圖示說明一般模型,特殊機型與 boundary 行為見 VPP 詳解。
02-A

取得 Current H/V FOV

Optical angle

水平與垂直分開判斷;輸出是這個 Channel 在目前焦距下真正送入後續計算的完整視角。

Camera spec 狀態VPP 行為
Fixed,已有 H/V FOV直接使用 datasheet 的單一完整視角。
沒有該軸 FOV以該軸 sensor dimension 與 current focal 使用 pinhole 推算。
Varifocal/PTZ Optical Zoom以 pinhole 曲線為主,加入 wide/tele datasheet 端點 correction。
θpinhole(S,f) = 2 × atan(S / 2f) × 180/π

變焦怎麼讀:焦距增加時 FOV 變小;wide 端對焦距變化較敏感,進入 tele 後角度變化逐漸收斂。VPP 以 (1-z)^9 控制 wide/tele 端點 correction 的過渡。

02-B

兩條分支平行計算

Geometry + density

V-FOV → 地面近/遠邊

用安裝高度、tilt 與垂直視角,求視野上下邊界第一次與地面相交的位置。

αnear = tilt + V/2
αfar = tilt − V/2
d = h / tan(α)

H-FOV + resolution → DORI

用水平視角求場景寬度,再把水平解析度換成 PPM,反推細節能維持到多遠。

sceneWidth(d) = 2√(d²+h²)tan(H/2)
PPM(d) = resolutionW / sceneWidth(d)

Resolution 的作用:解析度不改變 optical FOV,也不改變 V-FOV 的幾何交點;它只改變每公尺能分到多少 pixel。

02-C

合流並形成 2D shape

Ground footprint

幾何遠邊與 DORI 外緣誰先到,就由誰限制最後的 2D shape。接著用 H-FOV 求近/遠邊寬度,再依 Floorplan 位置、方向與比例轉成 pixel。

effectiveFar = min(dFar, dOuterDORI)
width(d) = 2 × √(d²+h²) × tan(currentFovH/2)

meter footprint → origin + rotation + pxPerMeter → 2D shape
03

IB9387:一組參數如何一路變成梯形

IB9387-EHTV-V3、current focal 6 mm、安裝高度 3 m、tilt 45°、rotation 0°、2560×1920。

sensor 5.6×3.2 mmfocal 2.7–13.5 mmspec H 100.1–29.9°spec V 71.8–22.4°
1Current FOV

6 mm pinhole 加上 wide/tele 端點 correction,得到 H 56.56°、V 38.81°。

2Ground projection

V-FOV 與 tilt 得到 near 1.44 m、geometric far 6.26 m。

3DORI

幾何遠邊仍有 342.66 PPM,因此 DORI 不會先截短這次視野。

4Merge

effectiveFar 取 6.26 m;H-FOV 得到近邊寬 3.58 m、遠邊寬 7.47 m。

5Floorplan output

meter 四角點依 scale 與 rotation 轉成 pixel,形成近窄遠寬的梯形。

04

一般流程之外

Fisheye、Panoramic、Thermal、Multi-channel,以及視線未落地或垂直向下時,會改變角度、DORI 外緣或 shape。短版只提示存在這些分支,不展開判斷矩陣。

閱讀到這裡應能回答:VPP 需要哪些類型的資料、Current FOV 從哪裡來、解析度扮演什麼角色,以及梯形的近邊、遠邊和寬度如何形成。完整欄位 fallback、公式推導、DORI policy 與特殊機型行為保留在詳解。

開啟 VPP 詳解 →