在 Fiftyone 中导入一个简单的图像目录作为数据集

问题描述 投票:0回答:1

我是 51 的新手,想将一个简单的目录(包含 .jpg 文件)导入到 51 中(我在 Conda 环境中使用 Windows 和 Python 3.10.10)。我按照文档说明进行操作(https://docs.voxel51.com/user_guide/dataset_creation/index.html),但是在应用程序中打开时我的数据集似乎为空。

这是我的Python脚本:

import fiftyone as fo

DATASET_PATH = "\sandbox\images"

def load_dataset(path=DATASET_PATH, dataset_type=fo.types.ImageDirectory):
    dataset = fo.Dataset.from_dir(path, dataset_type)
    print(dataset)
    return dataset

def main():
    dataset = load_dataset()
    session = fo.launch_app(dataset, desktop=True)
    session.wait()

if __name__ == "__main__":
    main()

这是我导入的结果:

(fiftyone) C:\Windows>C:/Users/benoit.boidin/AppData/Local/anaconda3/envs/fiftyone/python.exe /sandbox/load_dataset.py
 100% |████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 0/0 [397.6us elapsed, ? remaining, ? samples/s] 
Name:        2024.04.10.13.13.22
Media type:  None
Num samples: 0
Persistent:  False
Tags:        []
Sample fields:
    id:       fiftyone.core.fields.ObjectIdField
    filepath: fiftyone.core.fields.StringField
    tags:     fiftyone.core.fields.ListField(fiftyone.core.fields.StringField)
    metadata: fiftyone.core.fields.EmbeddedDocumentField(fiftyone.core.metadata.Metadata)
Desktop App launched.

我尝试了多种格式,使用网络应用程序和桌面应用程序,以及大型或小型数据集。我期望显示图像,但一切正常,就好像我的目录中没有文件一样。

python dataset fiftyone
1个回答
0
投票

您想在这里使用

from_images_dir()
,而不是
from_dir()
。区别如下:

  • from_images_dir()
    假设该目录包含一堆图像文件
  • from_dir()
    假设有一个
    FiftyOne.Dataset
    已导出到该目录。

希望这有帮助!

© www.soinside.com 2019 - 2024. All rights reserved.