Hub 文件
FiftyOne
並獲得增強的文件體驗
開始使用
FiftyOne
FiftyOne 是一個開源工具包,用於組織、視覺化和管理非結構化視覺資料。該庫簡化了以資料為中心的工作流,從查詢低置信度預測到識別低質量樣本,以及發現數據中的隱藏模式。該庫支援各種視覺資料,從影像和影片到 PDF、點雲和網格。
FiftyOne 支援物件檢測、關鍵點、多段線和自定義模式。
FiftyOne 與 Hugging Face Hub 整合,因此您可以直接從 Hub 載入和共享 FiftyOne 資料集。
🚀 在 Colab 中試用 FiftyOne 🤝 Hugging Face 整合!
先決條件
hf auth login
確保已安裝 fiftyone>=0.24.0
pip install -U fiftyone
從 Hub 載入視覺資料集
透過 FiftyOne 的 Hugging Face 實用程式中的 load_from_hub()
,您可以載入
- 上傳到 Hub 的任何 FiftyOne 資料集
- 大多數儲存在 Parquet 檔案中的基於影像的資料集(這是透過 `datasets` 庫上傳到 Hub 的資料集的標準)
從 Hub 載入 FiftyOne 資料集
任何以 FiftyOne 支援的常見格式 推送到 Hub 的資料集都應在其 Hub 上的資料集倉庫中包含所有必要的配置資訊,因此您可以透過指定其 repo_id
來載入資料集。例如,要載入 VisDrone 檢測資料集
import fiftyone as fo
from fiftyone.utils import load_from_hub
## load from the hub
dataset = load_from_hub("Voxel51/VisDrone2019-DET")
## visualize in app
session = fo.launch_app(dataset)
您可以自定義下載過程,包括要下載的樣本數量、建立的資料集物件的名稱,以及是否將其持久化到磁碟。
您可以使用以下命令列出 Hub 上所有可用的 FiftyOne 資料集
from huggingface_hub import HfApi
api = HfApi()
api.list_datasets(tags="fiftyone")
使用 FiftyOne 從 Hub 載入 Parquet 資料集
您還可以使用 load_from_hub()
函式從 Parquet 檔案載入資料集。型別轉換將自動處理,如果需要,影像會從 URL 下載。
透過此功能,您可以載入以下任何資料集
- FiftyOne 相容的影像分類資料集,例如 Food101 和 ImageNet-Sketch
- FiftyOne 相容的物件檢測資料集,例如 CPPE-5 和 WIDER FACE
- FiftyOne 相容的影像分割資料集,例如 SceneParse150 和 Sidewalk Semantic
- FiftyOne 相容的影像字幕資料集,例如 COYO-700M 和 New Yorker Caption Contest
- FiftyOne 相容的視覺問答資料集,例如 TextVQA 和 ScienceQA
例如,我們可以使用以下命令將 WikiArt 資料集 的前 1,000 個樣本載入到 FiftyOne 中
import fiftyone as fo
from fiftyone.utils.huggingface import load_from_hub
dataset = load_from_hub(
"huggan/wikiart", ## repo_id
format="parquet", ## for Parquet format
classification_fields=["artist", "style", "genre"], ## columns to treat as classification labels
max_samples=1000, # number of samples to load
name="wikiart", # name of the dataset in FiftyOne
)
將 FiftyOne 資料集推送到 Hub
您可以使用以下命令將資料集推送到 Hub
import fiftyone as fo
import fiftyone.zoo as foz
from fiftyone.utils.huggingface import push_to_hub
## load example dataset
dataset = foz.load_zoo_dataset("quickstart")
## push to hub
push_to_hub(dataset, "my-hf-dataset")
當您呼叫 push_to_hub()
時,資料集將上傳到指定倉庫名稱下的您的使用者名稱倉庫,如果需要,將建立該倉庫。將自動生成並填充資料集卡片,其中包含從 Hub 載入資料集的說明。您可以使用 preview_path
引數上傳縮圖/gif,使其顯示在資料集卡片上。
以下是使用這些引數的示例,它將 FiftyOne 快速啟動影片資料集的前三個樣本上傳到私有倉庫 username/my-quickstart-video-dataset
,並帶有標籤、MIT 許可證、描述和預覽影像
dataset = foz.load_from_zoo("quickstart-video", max_samples=3)
push_to_hub(
dataset,
"my-quickstart-video-dataset",
tags=["video", "tracking"],
license="mit",
description="A dataset of video samples for tracking tasks",
private=True,
preview_path="<path/to/preview.png>"
)
📚 資源
- 🚀 協同編碼 Colab 筆記本
- 🗺️ FiftyOne 資料集使用者指南
- 🤗 FiftyOne 🤝 Hub 整合文件
- 🤗 FiftyOne 🤝 Transformers 整合文件
- 🧩 FiftyOne Hugging Face Hub 外掛