共用方式為


使用 Azure Kinect 感應器 SDK 來錄製檔案格式

為了錄製感應器資料,會使用 Matroska (.mkv) 容器格式,這會允許使用各種不同的轉碼器來儲存多個軌道。 錄製檔案包含用來儲存色彩、深度、IR 影像和 IMU 的軌道。

您可以在 Matroska 網站上找到 .mkv 容器格式的低階詳細資料。

軌道名稱 轉碼器格式
COLOR 相依模式 (MJPEG、NV12 或 YUY2)
DEPTH b16g (16 位元灰階、Big-endian)
IR b16g (16 位元灰階、Big-endian)
IMU 自訂結構,請參閱下方的 IMU 範例結構

使用第三方工具

ffmpeg 之類的工具或來自 MKVToolNix 工具組的 mkvinfo 命令,可用來檢視和擷取錄製檔案中的資訊。

例如,下列命令會將深度軌道擷取為 16 位元 PNG 的序列至相同的資料夾:

ffmpeg -i output.mkv -map 0:1 -vsync 0 depth%04d.png

-map 0:1 參數會擷取軌道索引 1,其對大部分的錄製內容都會是深度。 如果錄製內容未包含色彩軌道,則會使用 -map 0:0

-vsync 0 參數會強制 ffmpeg 依原樣擷取畫面,而不是嘗試比對 30 fps、15 fps 或 5 fps 的畫面播放速率。

IMU 範例結構

如果是在未使用播放 API 的情況下從檔案擷取 IMU 資料,則資料會是二進位格式。 IMU 資料的結構如下。 所有欄位都是 little-endian。

欄位 類型
加速計時間戳記 (微秒) uint64
加速計資料 (x, y, z) float[3]
陀螺儀時間戳記 (µs) uint64
陀螺儀資料 (x, y, z) float[3]

識別軌道

可能需要識別哪些軌道包含色彩、深度、IR 等等。 使用第三方工具來讀取 Matroska 檔案時,需要識別軌道。 軌道號碼會根據相機模式和啟用的軌道集而有所不同。 標記可用來識別每個軌道的意義。

下列標記清單分別附加至特定的 Matroska 元素,並可用來查閱對應的軌道或附件。

這些標記可透過 ffmpegmkvinfo 之類的工具檢視。 標記的完整清單會列在 [錄製和播放] 頁面上。

標記名稱 標記目標 標記值
K4A_COLOR_TRACK 色彩軌道 Matroska 軌道 UID
K4A_DEPTH_TRACK 深度軌道 Matroska 軌道 UID
K4A_IR_TRACK IR 軌道 Matroska 軌道 UID
K4A_IMU_TRACK IMU 軌道 Matroska 軌道 UID
K4A_CALIBRATION_FILE 校正附件 附件檔案名稱

後續步驟

錄製和播放