Transformers 文件

影片處理器

Hugging Face's logo
加入 Hugging Face 社群

並獲得增強的文件體驗

開始使用

影片處理器

影片處理器是一種工具,負責為影片模型準備輸入特徵,並處理其輸出的後處理。它提供諸如調整大小、歸一化和轉換為 PyTorch 等轉換。

影片處理器擴充套件了影像處理器的功能,允許模型處理具有與影像不同的引數集的影片。它充當原始影片資料和模型之間的橋樑,確保輸入特徵針對 VLM 進行了最佳化。

使用 from_pretrained() 從 Hugging Face Hub 或本地目錄中的影片模型載入影片處理器配置(影像大小、是否歸一化和重新縮放等)。每個預訓練模型的配置應儲存到 [video_preprocessor_config.json] 檔案中,但舊模型可能將配置儲存在 preprocessor_config.json 檔案中。請注意,後者不推薦使用,將來會刪除。

用法示例

這是一個使用 llava-hf/llava-onevision-qwen2-0.5b-ov-hf 模型載入影片處理器的示例

from transformers import AutoVideoProcessor

processor = AutoVideoProcessor.from_pretrained("llava-hf/llava-onevision-qwen2-0.5b-ov-hf")

目前,如果將基礎影像處理器用於影片,它會將每幀視為單獨的影像並逐幀應用轉換來處理影片資料。雖然功能正常,但這種方法效率不高。使用 AutoVideoProcessor 允許我們利用快速影片處理器,利用 torchvision 庫。快速處理器可以一次性處理整個影片批次,無需迭代每個影片或幀。這些更新引入了 GPU 加速,顯著提高了處理速度,特別是對於需要高吞吐量的任務。

快速影片處理器適用於所有模型,並在初始化 AutoVideoProcessor 時預設載入。當使用快速影片處理器時,您還可以設定 device 引數以指定進行處理的裝置。預設情況下,如果輸入是張量,則在與輸入相同的裝置上進行處理,否則在 CPU 上進行處理。為了進一步提高速度,在使用“cuda”作為裝置時,我們可以編譯處理器。

import torch
from transformers.video_utils import load_video
from transformers import AutoVideoProcessor

video = load_video("video.mp4")
processor = AutoVideoProcessor.from_pretrained("llava-hf/llava-onevision-qwen2-0.5b-ov-hf", device="cuda")
processor = torch.compile(processor)
processed_video = processor(video, return_tensors="pt")
< > 在 GitHub 上更新

© . This site is unofficial and not affiliated with Hugging Face, Inc.