等距柱狀全景擷取詳解

一段 360° 導覽作品,喺你未睇到佢背後嘅原始檔案之前,睇落就好似魔法一樣—— 一睇到,先發現嗰其實係一張扁平、肉眼可見扭曲嘅矩形圖片,同房間本身完全唔似。 呢種扭曲唔係一個缺陷,而正正就係呢種格式存在嘅全部意義所在,理解佢點解生成咁樣, 既可以解釋一段導覽作品點解感覺「啱」,亦可以解釋另一段點解感覺有啲唔對路。
2:1 等距柱狀投影
一張等距柱狀全景圖,將一整個球面視野——水平環繞 360°、垂直上下 180°—— 映射到一張闊度啱啱好係高度兩倍嘅扁平矩形上。呢個 2:1 嘅比例並非隨意揀嘅: 佢係將水平同垂直角度平均分佈喺畫幅上得出嘅結果——每一緯度一行像素, 每一經度一欄像素。
扭曲正正嚟自呢種映射。喺圖像水平中心附近,投影接近正確——角度到像素嘅 映射接近線性。而喺頂部同底部附近,球面表面積向極點收縮做一個點, 但同一條緯度帶依然要俾人拉伸鋪滿成張圖片嘅闊度。一盞正上方嘅天花燈, 最終會俾人抹開塗滿成個畫面嘅頂邊。呢個唔係拍攝質素差留低嘅痕跡—— 而係任何一個完整球面被強行攤平做矩形時都會發生嘅事。
真實相機擷取 vs 渲染擷取
一張實體拍攝嘅全景圖嚟自一部相機——通常係多鏡頭裝置——佢拍攝多張 互相重疊嘅相片,再將佢哋拼接做一張等距柱狀圖。真實拍攝要解決真實嘅問題: 每張源相片嘅曝光都要保持一致,兩次拍攝之間郁動嘅物件會造成鬼影, 而鏡頭之間嘅拼接線,如果算法融合得唔夠好,就會留低一道可見嘅接縫。

渲染出嚟嘅全景圖用另一種方式解決同一個問題:3D 場景入面一部虛擬相機 直接渲染成個球面,根據場景真實嘅幾何結構、物料同燈光, 計算出每一個角度應有嘅樣。呢度冇拼接,因為根本冇嘢需要拼接—— 一次連續渲染取代咗多張相片加一套拼接算法。取捨在於,渲染全景圖嘅好壞 完全取決於佢背後嘅場景;而真實相機會如實影低現場存在嘅一切,包括所有瑕疵。
呢個分別仲帶嚟一個超越畫面質素本身嘅實際結果:渲染全景圖可以喺場景 發生變化之後,由完全相同嘅取景點重新擷取一次——換一種物料、郁一件家具, 再渲染一次就得;而實體拍攝一旦要重來,就必須返到現場,由頭再影一次, 仲要人手重現相同嘅燈光條件。
點解取景點位置決定導覽作品感覺啱唔啱
投影格式只係故事嘅一半——相機喺房間裡面嘅位置,同樣重要, 甚至同投影方式一樣重要。取景點離牆太近,嗰面牆就會離鏡頭近到佔滿畫面裡面 不合理嘅比例,甚至完全穿過近裁剪面。取景點高度唔啱——太低、太高, 或者偏離一個自然嘅企立視線高度——即使房間嘅真實幾何結構完全冇變, 家具同天花嘅比例感都會讀錯。
好嘅取景點擺位,往往刻意顯得平淡:企立視線高度、離每一幅牆都留有足夠淨空, 擺喺一個真實訪客自然會企立、睇清房間嘅位置。呢一切都唔係為咗令畫面 更吸睛——而係為咗令投影可信,令觀者對房間真實比例嘅感受, 同房間實際嘅樣對得上。
接縫、極點,以及其他擷取特有嘅問題
有兩種失敗模式係等距柱狀格式特有嘅,無論嚟源係相機定係渲染。接縫 出現喺拼接源圖像嘅邊界處(相片拍攝)或者渲染分塊嘅邊界處(渲染拍攝)—— 兩個視角相遇嘅地方留低一道可見嘅線,或者一條曝光重疊嘅條帶。極點處理 係天頂同天底嘅問題:正上方同正下方各係一個點,投影卻要將佢拉伸鋪滿 成條圖像邊緣,所以一個帶有真實細節嘅極點(一盞燈具、地面上嘅一個標誌) 無論拍攝質素幾高,睇落都會俾人抹開。兩者都唔係靠「影得更好」就可以解決嘅—— 佢哋係將一個球面硬要話係矩形時固有嘅問題,實際嘅解決辦法係揀一個 兩個極點都唔落喺重要位置嘅取景點。
喺球面檢視器入面呈現
以上呢一切,對觀者嚟講都冇意義,除非最終圖像俾人重新映射返一個球面 用嚟展示。球面檢視器將呢張扁平嘅等距柱狀檔案投影到一個虛擬球面嘅內壁上, 再等觀者由球心向外環視——呢個正好抵消咗擷取階段產生嘅扭曲。嗰盞被拉伸嘅 天花燈,一旦重新包裹返真實嘅 3D 幾何結構,就又變返一盞正常嘅燈; 嗰張扁平檔案本來就從未打算俾人直接睇嘅。
立即開始
想了解全景步驟喺成套房間搭建流程入面處於咩位置,可以參考 3D 模型搭建流程完整解析。如果你而家 權衡緊全景導覽作品同其他 3D 格式,用於室內漫遊展示,可以參考 高斯濺射 vs 網格 vs 全景。 而想了解一段已發佈嘅導覽作品,究竟係靠咩真正說服一位而家決策緊嘅持份者, 可以參考 面向持份者評審嘅虛擬導覽。