Polygon PLY (.ply)
史丹佛大學電腦圖學實驗室標準 標準Polygon File Format(PLY,也稱為史丹佛三角形格式)是由史丹佛大學的 Greg Turk 所開發的可擴充 3D 格式,用於部分掃描、攝影測量與點雲工作流程。
將 PLY 轉換為 OBJ
免費的瀏覽器端 PLY 轉 OBJ 轉換器。在您的裝置上即時轉換檔案。
檢查與中繼資料
作業系統與檔案分析工具透過檢查開頭的二進位位元組序列來識別 PLY 檔案:
位元組層級標頭簽章(檔案簽章)
作業系統與檔案分析工具透過檢查開頭的二進位位元組序列來識別 PLY 檔案:
十六進位簽章(偏移量 0):
70 6C 79 0AASCII 表示法: ply\n
標準化: 史丹佛大學電腦圖學實驗室標準
技術規格
| 容器架構 | 定義擴充元素與屬性的 ASCII 或二進位標頭,後接原始頂點/面資料陣列 |
| 壓縮 | 未壓縮的結構化二進位或 ASCII 文字 |
| 位元組序 | 標頭中宣告:「format binary_little_endian 1.0」、「format binary_big_endian 1.0」或「format ascii 1.0」 |
| 色彩空間 | 每頂點 RGB/RGBA 顏色, 信賴度純量, 表面法向量 |
| 色版與結構 | 頂點、多邊形面、點雲、每頂點顏色、法向量與任意自訂感測器屬性 |
| 最大尺寸 | 無限制的 3D 座標空間與頂點數量 |
| 透明度 | 透過 alpha 屬性支援每頂點 alpha 色頻 |
| 串流與漸進式 | 標頭指定確切的元素數量,可進行即時預先配置與快速循序讀取 |
技術比較矩陣:PLY 對比競爭格式
| 技術屬性 | PLY (目前) | OBJ | STL | XYZ |
|---|---|---|---|---|
| 每頂點顏色 | 原生每頂點 RGB/RGBA | 需要材質紋理 | 無(僅幾何圖形) | 原始座標純量 |
| 可擴充屬性 | 標頭中的任意自訂屬性 | 固定標籤語法 | 固定三角形語法 | 固定座標欄位 |
| 點雲支援 | 原生高效能點雲 | 笨重(需要單頂點面) | 無(需要封閉三角形) | 原生原始點座標 |
| Gaussian Splatting | 用於 Gaussian Splatting 資料的單一格式 | 不支援 | 不支援 | 不支援 |
常見損壞模式與十六進位修復指南
軟體回報「PLY: End of file reached before all elements read」。
根本原因: 標頭中宣告的元素數量與二進位資料列的實際數量不符。
修復: 使用 File2File.app PLY 修復工具重新計算標頭元素數量。
安全性分析與解析器攻擊向量
PLY 解碼器會解析定義屬性大小的標頭宣告,其中的整數溢位可能會導致堆積損壞。
已知攻擊向量
- property_count * element_count 記憶體配置期間發生整數溢位。
- 讀取格式錯誤的二進位屬性類型時發生緩衝區過度讀取(例如將 float64 讀入 float32 緩衝區)。
- 透過偽造的元素數量觸發過量記憶體配置,進而導致阻斷服務。
防禦最佳實務: 在配置記憶體之前,請先驗證宣告的元素位元組數是否與實際檔案大小相符。
歷史起源與里程碑
2023Gaussian Splatting 有助於推廣點雲工作流程;PLY 是用來儲存或交換 splat 資料的多種格式之一。
2000史丹佛數位米開朗基羅專案掃描了無價的義大利雕塑,並以 PLY 格式保存。
1994Greg Turk 在史丹佛電腦圖學實驗室建立 PLY,以克服 OBJ 的限制。
主要優勢與優點
- 極具擴充性:使用者可以定義任意自訂屬性(每頂點顏色、信賴度、曲率、溫度)。
- 同時支援精簡的二進位格式與易讀的 ASCII 格式,並支援大端序與小端序位元組順序。
- PLY 可以儲存頂點、面以及選用的顏色或法向量欄位,因此掃描與攝影測量工具會用它處理點雲和網格。請確認接收工具能讀取您的檔案所包含的欄位。
技術限制與缺點
- 相較於 glTF 或 FBX,若沒有專門的點雲外掛程式,消費級 3D 遊戲引擎的支援有限。
- 原生不支援骨架綁定、骨骼權重或角色動畫階層。
- 缺乏標準的 PBR 材質定義(主要依賴每頂點著色或簡單的漫射紋理)。
有趣的技術冷知識
- 每個有效的 PLY 檔案都必須在第 1 行以確切的 4 個字元「ply\n」開頭。
- 著名的史丹佛兔子(Stanford Bunny)於 1994 年使用 Cyberware 3030 雷射掃描器掃描陶瓷兔子而建立,最初以 PLY 格式儲存。
- 2023 年的 Gaussian Splatting 論文使用了帶有球諧函數的點雲;PLY 是用來儲存此類資料的其中一種格式。
常見技術問題
PLY 格式現在用於哪些用途?
PLY 廣泛用於 3D Gaussian Splatting、3D 雷射掃描、考古數位保存、攝影測量及 LiDAR 點雲。
ASCII PLY 與二進位 PLY 有什麼區別?
ASCII PLY 將頂點和面值儲存為可讀取的數字,而二進位 PLY 則將其儲存為位元組。二進位檔案通常較為精簡;ASCII 則便於在文字編輯器中檢查。
如何將 PLY 檔案轉換為 OBJ 或 STL?
將您的 PLY 檔案放入 File2File.app,即可在網頁瀏覽器中立即將其轉換為標準的 OBJ 模型或可進行 3D 列印的 STL 網格。