使用 OSS 的資料索引功能,可以為網路攝像機(IPC)裝置採集的視頻構建智能語義檢索系統,對採集的視頻進行語義檢索,適用於智能安防等情境。
方案概覽
搭建智能語義檢索系統,只需兩步:
建立 Bucket 並上傳視頻:建立用於儲存原始 IPC 裝置採集的視頻檔案的 Bucket,並上傳待處理的視頻檔案,為後續視頻檢索提供有力支援。
開啟向量檢索功能:為 Bucket 開啟向量檢索功能,以支援基於自然語言描述的智能檢索。
方案優勢
語義化檢索:支援基於自然語言描述和多條件組合的精準檢索,能夠快速定位目標畫面,滿足複雜情境下的檢索需求。
多模態檢索:提供視頻、映像、文本等資料統一管理與檢索能力,降低技術門檻與營運成本。
橫向擴充:OSS 容量無限、彈性擴充,可輕鬆應對海量資料增長。
1. 建立Bucket並上傳視頻
登入OSS管理主控台。
進入Bucket列表頁面,並點擊建立Bucket。
在建立Bucket頁面,填寫Bucket名稱(建議使用業務相關的名稱,如
ipc-videos-oss-metaquery-demo),其餘參數可保持預設配置。單擊完成建立,在建立成功的頁面,點擊進入Bucket。
在檔案清單頁面,點擊,選擇待上傳的視頻檔案(如視頻A.mp4、視頻B.mp4和視頻C.mp4),其餘參數保留預設配置,點擊上傳檔案。
(可選)為上傳的視頻檔案配置標籤:在目標檔案右側操作欄下,選擇,在彈出的對話方塊中添加標籤索引值對(如設定鍵為
need-seek,值為true,用於後續索引建立的過濾條件;設定鍵為camera,值為camera-a,用於後續索引查詢的過濾條件),點擊確定。通過為視頻添加標籤,可以在後續索引和檢索時實現更精準的篩選。
2. 開啟向量檢索功能
為Bucket開啟向量檢索功能,支援對視頻進行基於自然語言描述和多條件組合的精準檢索。
說明 構建中繼資料索引需要等待一定的時間,具體等待時間長度取決於Bucket中Object的數量。若開啟時間過久可通過重新整理來查看開啟狀態。 |
|
結果驗證
只需輸入描述性文字,例如停著車的院子,系統便會返回與描述相符的關鍵視頻。
|
|
應用於生產環境
當您需要將此能力整合到生產環境中時,請考慮以下方面:
生產資料接入
在實際業務情境中,監控裝置(如 IPC 網路攝影機)會持續產生大量視頻資料,建議整合 OSS SDK,將錄製完成的視頻片段即時上傳至指定的 Bucket,以確保資料上傳的穩定性與時效性,提升整體系統的可用性和即時處理能力。
下面樣本利用 OSS Python SDK 調用檔案上傳管理器上傳視頻供參考:
檢索能力整合
在生產環境中,建議將檢索功能整合到後端服務中,利用 OSS SDK 實現自動化調用,避免依賴控制台進行人工操作。
以下為範例程式碼,展示如何構建符合 OSS MetaQuery 規範的 XML 請求,擷取檢索結果:
運行該程式後,您可以輸入描述性文字(例如停著車的院子)進行查詢。系統根據資料索引,返回包含符合描述的檢索結果,您可以直接通過URL連結查看視頻詳情。
共找到 1 個匹配結果:
檔案 1:
URI: oss://ipc-videos-oss-metaquery-demo/視頻A.mp4
檔案名稱: 視頻A.mp4
大小: 2311252
修改時間: 2025-05-23T17:38:10+08:00
ContentType: video/mp4
MediaType: video
檔案地址 (預簽名URL): https://ipc-videos-oss-metaquery-demo.oss-cn-beijing.aliyuncs.com/%E8%A7%86%E9%A2%91A.mp4?x-oss-signature-version=OSS4-HMAC-SHA256&x-oss-date=20250523T094511Z&x-oss-expires=900&x-oss-credential=LTAI********************%2F20250523%2Fcn-beijing%2Foss%2Faliyun_v4_request&x-oss-signature=0bf38092c42a179ff0e8334c8bea3fd92f5a78599038e816e2ed3e02755542af
--------------------設定標籤過濾
面對海量視頻資料,單純靠檔案路徑管理往往難以高效檢索和分類。建議使用 OSS 的標籤功能,為檔案添加索引值對標籤,以根據業務需求快速篩選和分類資料,例如按網路攝影機 ID、地理地區等維度進行過濾。
假設系統中有三個待分析的視頻檔案(如視頻A.mp4、視頻B.mp4、視頻C.mp4)如下:
視頻A.mp4 | 視頻B.mp4 | 視頻C.mp4 |
|
|
|
後院視頻,標記為camera-a拍攝 | 售貨視頻,標記為camera-b拍攝 | 後院視頻,和視頻A內容近似,標記為camera-c拍攝 |
標籤支援在檔案上傳時直接設定,也支援在上傳後進行動態管理,滿足不同業務情境的需求。
上傳時設定標籤
在上傳視頻檔案的同時設定標籤,實現上傳和標籤管理操作的一體化,提升資料管理效率。
以下樣本示範如何使用 OSS Python SDK 的檔案上傳管理器上傳視頻檔案並同時設定標籤:
上傳後管理標籤
如果檔案已經上傳,依然可以隨時為檔案添加或修改標籤,確保資料標籤的動態維護和準確性。
以 Python SDK 為例調用相應介面添加標籤樣本如下:
結合標籤篩選檢索
以下樣本展示了如何調用OSS Python SDK發起一次結合語義理解和標籤篩選的群組合查詢請求:
運行該程式後,如需篩選出包含停放車輛的院子的視頻內容,可以:
在描述性欄位輸入檢索關鍵詞:
停著車的院子設定標籤篩選條件:
camera = camera-a
在當前視頻檔案中,視頻 A 與視頻 C 均拍攝了符合停著車的院子的描述情境,但由於設定了標籤篩選(僅保留camera-a標記的視頻檢索結果),最終檢索結果僅包含視頻A。
發送 DoMetaQuery 請求...
請求成功,HTTP 狀態代碼: 200
從OSS擷取到 2 個初步匹配結果,開始進行用戶端標籤過濾...
[1] 檔案 '視頻A.mp4' 符合所有條件:
檔案地址:https://ipc-videos-oss-metaquery-demo.oss-cn-beijing.aliyuncs.com/%E8%A7%86%E9%A2%91A.mp4?x-oss-signature-version=OSS4-HMAC-SHA256&x-oss-date=20250526T054908Z&x-oss-expires=900&x-oss-credential=LTAI********************%2Fcn-beijing%2Foss%2Faliyun_v4_request&x-oss-signature=01bbf29790763d8e0f177d4cb0469cb00ae1c69d565219edb3866f75110b37ab
檔案路徑:視頻A.mp4
-----------------------
用戶端過濾完成,共找到 1 個最終匹配結果。
> 標籤



