FiftyOne是用于构建高质量数据集和计算机视觉模型的开源工具,由Python语言实现,最新发布版本为v0.14.0,它的License是Apache 2.0。源码位于https://github.com/voxel51/fiftyone 。FiftyOne支持Windows、Linux、macOS平台,默认情况下,FiftyOne应用程序将在你启动时在你的网络浏览器中打开。FiftyOne还提供了桌面版本,最新发布版本为Desktop v0.18.0。FiftyOne可以使我们更快、更有效地可视化数据集和解释模型,从而增强机器学习工作流程。也可以通过FiftyOne直接下载数据集,支持的数据集包括cifar10、cifar100、coco-2017、imagenet-2012、fashion-mnist、mnist等。
可以通过Anaconda在Windows和Linux上进行安装。
在Windows上安装执行以下命令:
conda create -n fiftyone python=3.8
conda activate fiftyone
pip3 install fiftyone
在Ubuntu上当Ubuntu版本>=18.04时与Windows上执行命令相同,如果版本低,需将以上第三条语句调整为以下命令: 否则将报以下error: mongod: loading shared libraries: libcrypto.so.1.1: cannot open shared object file: No such file or directory
pip3 install fiftyone-db-ubuntu1604
FiftyOne核心能力包括:
(1).导入数据集进行操作,轻松管理数据。
(2).评估模型。
(3).使嵌入数据和模型可视化。
(4).查找标注错误。
(5).管理数据集去除冗余图像。
FiftyOne工具包含三个组件:Python库、App、Brain。
(1).提供的Python接口可轻松以多种常见格式加载数据集,并提供以自定义格式加载数据集。
(2).App是一个图形用户界面,可快速直观了解数据集。
(3).Brain是一个强大的机器学习驱动功能库,可提供对数据集的洞察并推荐修改数据集的方法,从而提高模型的性能。
关于FiftyOne详细介绍和用法参考:https://voxel51.com/docs/fiftyone/
以下为测试代码:
import fiftyone as fo
import fiftyone.zoo as foz
# reference: https://voxel51.com/docs/fiftyone/tutorials/evaluate_detections.html
datasets = foz.list_zoo_datasets()
print("available datasets:", datasets)
dataset = foz.load_zoo_dataset("coco-2017", split="validation", dataset_name="evaluate-detections-tutorial")
dataset.persistent = True
session = fo.launch_app(dataset)
# print some information about the dataset
print("dataset info:", dataset)
# print a ground truth detection
sample = dataset.first()
print("ground truth:", sample.ground_truth.detections[0])
session.wait()
执行结果如下:
GitHub:https://github.com/fengbingchun/PyTorch_Test