<!-- # hard line break macro for HTML -->

<a id="tutorials"></a>

# FiftyOne Tutorials

Each tutorial below is a curated demonstration of how FiftyOne can help refine
your datasets and turn your good models into *great models*.

<!-- Tutorial cards section ----------------------------------------------------- --><div id="tutorial-cards-container">

<nav class="navbar navbar-expand-lg navbar-light tutorials-nav col-12">
    <div class="tutorial-tags-container">
        <div id="dropdown-filter-tags">
            <div class="tutorial-filter-menu">
                <div class="tutorial-filter filter-btn all-tag-selected" data-tag="all">All</div>
            </div>
        </div>
    </div>
</nav>

<hr class="tutorials-hr">

<div class="row">

<div id="tutorial-cards">
<div class="list">
<!-- Add tutorial cards below -->

<div class="col-md-6 tutorials-card-container" data-tags=Dataset-Curation,Annotation,Brain,Embeddings,Model-Evaluation,App>

<div class="card tutorials-card" link=fiftyone_annotation_workflows.html>

<div class="card-body">

<div class="tutorials-image"><img src="https://cdn.voxel51.com/tutorial_fiftyone_annotation_workflows/data_engine_tile.webp"></div>

<div class="tutorials-card-content">

<div class="card-title-container">
    <strong>Building Annotation Workflows and Ontologies with FiftyOne \_\_SUB_NEW_\_</strong>
</div>

<p class="card-summary">Design annotation workflows and ontologies that deliver consistent, high-quality labels at scale with FiftyOne. Curate the right data, draft a first pass with an agent or zoo models, review by error likelihood, and close the loop with evaluation.</p>

<p class="tags">Dataset-Curation,Annotation,Brain,Embeddings,Model-Evaluation,App</p>

</div>

</div>

</div>

</div>

<div class="col-md-6 tutorials-card-container" data-tags=Dataset-Curation,Model-Evaluation,Plugins>

<div class="card tutorials-card" link=gemini_fiftyone_skills.html>

<div class="card-body">

<div class="tutorials-image"><img src="https://cdn.voxel51.com/tutorial_gemini_fiftyone_skills/config_ready.webp"></div>

<div class="tutorials-card-content">

<div class="card-title-container">
    <strong>Using FiftyOne Skills with Gemini CLI \_\_SUB_NEW_\_</strong>
</div>

<p class="card-summary">Use natural language to orchestrate computer vision workflows in Google Colab with FiftyOne Skills and the Gemini CLI. Load data, run inference, and evaluate models through conversational commands.</p>

<p class="tags">Dataset-Curation,Model-Evaluation,Plugins</p>

</div>

</div>

</div>

</div>

<div class="col-md-6 tutorials-card-container" data-tags=Dataset-Curation,Visualization,Model-Evaluation>

<div class="card tutorials-card" link=cosmos-transfer-integration.html>

<div class="card-body">

<div class="tutorials-image"><img src="https://cdn.voxel51.com/cosmos.webp"></div>

<div class="tutorials-card-content">

<div class="card-title-container">
    <strong>Integrating Cosmos-Transfer with FiftyOne \_\_SUB_NEW_\_</strong>
</div>

<p class="card-summary">Learn how to integrate NVIDIA Cosmos-Transfer 2.5, a world foundation model for Physical AI, with FiftyOne to curate, visualize, and process multimodal datasets for robotics and autonomous systems.</p>

<p class="tags">Dataset-Curation,Visualization,Model-Evaluation</p>

</div>

</div>

</div>

</div>

<div class="col-md-6 tutorials-card-container" data-tags=Dataset-Evaluation,Dataset-Curation,Model-Evaluation,Brain,Plugins>

<div class="card tutorials-card" link=gemini_vision.html>

<div class="card-body">

<div class="tutorials-image"><img src="https://cdn.voxel51.com/tutorial_gemini_vision/editing_images.webp"></div>

<div class="tutorials-card-content">

<div class="card-title-container">
    <strong>Google Gemini Vision in FiftyOne \_\_SUB_NEW_\_</strong>
</div>

<p class="card-summary">Leverage Google Gemini Vision's multimodal AI to analyze datasets, detect biases, generate synthetic images, and improve data quality with FiftyOne.</p>

<p class="tags">Dataset-Evaluation,Dataset-Curation,Model-Evaluation,Brain,Plugins</p>

</div>

</div>

</div>

</div>

<div class="col-md-6 tutorials-card-container" data-tags=Dataset-Evaluation>

<div class="card tutorials-card" link=kaputt_dataset.html>

<div class="card-body">

<div class="tutorials-image"><img src="https://cdn.voxel51.com/kaputt_overview.webp"></div>

<div class="tutorials-card-content">

<div class="card-title-container">
    <strong>Exploring Kaputt Dataset</strong>
</div>

<p class="card-summary">Learn how to work with the Kaputt dataset in FiftyOne.</p>

<p class="tags">Dataset-Evaluation</p>

</div>

</div>

</div>

</div>

<div class="col-md-6 tutorials-card-container" data-tags=Embeddings,Brain,Model-Evaluation,Visualization>

<div class="card tutorials-card" link=dinov3.html>

<div class="card-body">

<div class="tutorials-image"><img src="https://cdn.voxel51.com/tutorial_dinov3/dinov3.png"></div>

<div class="tutorials-card-content">

<div class="card-title-container">
    <strong>DINOv3 visual search</strong>
</div>

<p class="card-summary">Leverage the power of DINOv3 embeddings for visual search, similarity analysis, and foreground segmentation in FiftyOne. Learn to compute embeddings, visualize them, and build classifiers using this state-of-the-art vision model.</p>

<p class="tags">Embeddings,Brain,Model-Evaluation,Visualization</p>

</div>

</div>

</div>

</div>

<div class="col-md-6 tutorials-card-container" data-tags=Filtering,Dataset-Evaluation>

<div class="card tutorials-card" link=pandas_comparison.html>

<div class="card-body">

<div class="tutorials-image"><img src="../_images/brain-mnist.png"></div>

<div class="tutorials-card-content">

<div class="card-title-container">
    <strong>pandas-style queries in FiftyOne</strong>
</div>

<p class="card-summary">Translate your pandas knowledge to FiftyOne. This tutorial gives a side-by-side comparison of performing common operations in pandas and FiftyOne.</p>

<p class="tags">Filtering,Dataset-Evaluation</p>

</div>

</div>

</div>

</div>

<div class="col-md-6 tutorials-card-container" data-tags=Model-Evaluation>

<div class="card tutorials-card" link=evaluate_detections.html>

<div class="card-body">

<div class="tutorials-image"><img src="../_images/evaluate_detections_dataset.jpg"></div>

<div class="tutorials-card-content">

<div class="card-title-container">
    <strong>Evaluating object detections</strong>
</div>

<p class="card-summary">Aggregate statistics aren't sufficient for object detection. This tutorial shows how to use FiftyOne to perform powerful evaluation workflows on your detector.</p>

<p class="tags">Model-Evaluation</p>

</div>

</div>

</div>

</div>

<div class="col-md-6 tutorials-card-container" data-tags=Model-Evaluation>

<div class="card tutorials-card" link=evaluate_classifications.html>

<div class="card-body">

<div class="tutorials-image"><img src="../_images/model-evaluation-confusion.gif"></div>

<div class="tutorials-card-content">

<div class="card-title-container">
    <strong>Evaluating a classifier</strong>
</div>

<p class="card-summary">Evaluation made easy. This tutorial walks through an end-to-end example of fine-tuning a classifier and understanding its failure modes using FiftyOne.</p>

<p class="tags">Model-Evaluation</p>

</div>

</div>

</div>

</div>

<div class="col-md-6 tutorials-card-container" data-tags=Visualization,Brain,Embeddings>

<div class="card tutorials-card" link=image_embeddings.html>

<div class="card-body">

<div class="tutorials-image"><img src="../_images/image_embeddings_test_split.png"></div>

<div class="tutorials-card-content">

<div class="card-title-container">
    <strong>Using image embeddings</strong>
</div>

<p class="card-summary">Visualize your data in new ways. This tutorial shows how to use FiftyOne's powerful embeddings visualization capabilities to improve your image datasets.</p>

<p class="tags">Visualization,Brain,Embeddings</p>

</div>

</div>

</div>

</div>

<div class="col-md-6 tutorials-card-container" data-tags=Annotation,Dataset-Evaluation>

<div class="card tutorials-card" link=cvat_annotation.html>

<div class="card-body">

<div class="tutorials-image"><img src="../_images/cvat_segmentation.png"></div>

<div class="tutorials-card-content">

<div class="card-title-container">
    <strong>Annotating with CVAT</strong>
</div>

<p class="card-summary">So you've loaded and explored your data in FiftyOne... but now what? See how to send it off to CVAT for annotation in just one line of code.</p>

<p class="tags">Annotation,Dataset-Evaluation</p>

</div>

</div>

</div>

</div>

<div class="col-md-6 tutorials-card-container" data-tags=Annotation,Dataset-Evaluation>

<div class="card tutorials-card" link=labelbox_annotation.html>

<div class="card-body">

<div class="tutorials-image"><img src="../_images/labelbox_detection.png"></div>

<div class="tutorials-card-content">

<div class="card-title-container">
    <strong>Annotating with Labelbox</strong>
</div>

<p class="card-summary">Unlock the power of the Labelbox platform. See how you can get your FiftyOne datasets annotated with just one line of code.</p>

<p class="tags">Annotation,Dataset-Evaluation</p>

</div>

</div>

</div>

</div>

<div class="col-md-6 tutorials-card-container" data-tags=Model-Training,Model-Evaluation>

<div class="card tutorials-card" link=detectron2.html>

<div class="card-body">

<div class="tutorials-image"><img src="../_images/open-images-v7.png"></div>

<div class="tutorials-card-content">

<div class="card-title-container">
    <strong>Training with Detectron2</strong>
</div>

<p class="card-summary">Put your FiftyOne datasets to work and learn how to train and evaluate Detectron2 models directly on your data.</p>

<p class="tags">Model-Training,Model-Evaluation</p>

</div>

</div>

</div>

</div>

<div class="col-md-6 tutorials-card-container" data-tags=Dataset-Evaluation,Model-Evaluation,Dataset-Zoo>

<div class="card tutorials-card" link=open_images.html>

<div class="card-body">

<div class="tutorials-image"><img src="../_images/open-images-v7.png"></div>

<div class="tutorials-card-content">

<div class="card-title-container">
    <strong>Downloading and evaluating Open Images</strong>
</div>

<p class="card-summary">Expand your data lake and evaluate your object detection models with Google's Open Images dataset and evaluation protocol, all natively within FiftyOne.</p>

<p class="tags">Dataset-Evaluation,Model-Evaluation,Dataset-Zoo</p>

</div>

</div>

</div>

</div>

<div class="col-md-6 tutorials-card-container" data-tags=Dataset-Evaluation,Brain>

<div class="card tutorials-card" link=uniqueness.html>

<div class="card-body">

<div class="tutorials-image"><img src="../_images/brain-cifar10-unique-viz.png"></div>

<div class="tutorials-card-content">

<div class="card-title-container">
    <strong>Exploring image uniqueness</strong>
</div>

<p class="card-summary">Your models need diverse data. This tutorial shows how FiftyOne can remove near-duplicate images and recommend unique samples for model training.</p>

<p class="tags">Dataset-Evaluation,Brain</p>

</div>

</div>

</div>

</div>

<div class="col-md-6 tutorials-card-container" data-tags=Dataset-Evaluation,Brain>

<div class="card tutorials-card" link=classification_mistakes.html>

<div class="card-body">

<div class="tutorials-image"><img src="../_images/zero_shot_classification_all_wrong_view.png"></div>

<div class="tutorials-card-content">

<div class="card-title-container">
    <strong>Finding classification mistakes</strong>
</div>

<p class="card-summary">Better models start with better data. This tutorial shows how FiftyOne can automatically find label mistakes in your classification datasets.</p>

<p class="tags">Dataset-Evaluation,Brain</p>

</div>

</div>

</div>

</div>

<div class="col-md-6 tutorials-card-container" data-tags=Dataset-Evaluation,Brain>

<div class="card tutorials-card" link=detection_mistakes.html>

<div class="card-body">

<div class="tutorials-image"><img src="../_images/detection_mistakes_full_dataset.png"></div>

<div class="tutorials-card-content">

<div class="card-title-container">
    <strong>Finding detection mistakes</strong>
</div>

<p class="card-summary">How good are your ground truth objects? Use the FiftyOne Brain's mistakenness feature to find annotation errors in your object detections.</p>

<p class="tags">Dataset-Evaluation,Brain</p>

</div>

</div>

</div>

</div>

<div class="col-md-6 tutorials-card-container" data-tags=Dataset-Evaluation,Model-Evaluation,Embeddings>

<div class="card tutorials-card" link=qdrant.html>

<div class="card-body">

<div class="tutorials-image"><img src="../_images/places-validation.png"></div>

<div class="tutorials-card-content">

<div class="card-title-container">
    <strong>Nearest Neighbor Embeddings Classification with Qdrant</strong>
</div>

<p class="card-summary">Easily pre-annotate your FiftyOne datasets using approximate nearest neighbors search on embeddings with Qdrant.</p>

<p class="tags">Dataset-Evaluation,Model-Evaluation,Embeddings</p>

</div>

</div>

</div>

</div>

<div class="col-md-6 tutorials-card-container" data-tags=Model-Evaluation>

<div class="card tutorials-card" link=yolov8.html>

<div class="card-body">

<div class="tutorials-image"><img src="../_images/yolov8_coco_val_predictions.png"></div>

<div class="tutorials-card-content">

<div class="card-title-container">
    <strong>Fine-tuning YOLOv8 model predictions</strong>
</div>

<p class="card-summary">Visualize and evaluate YOLOv8 model predictions before fine-tuning for your custom use case.</p>

<p class="tags">Model-Evaluation</p>

</div>

</div>

</div>

</div>

<div class="col-md-6 tutorials-card-container" data-tags=Dataset-Curation,Filtering,Visualization>

<div class="card tutorials-card" link=pointe.html>

<div class="card-body">

<div class="tutorials-image"><img src="../_images/pointe_preview.gif"></div>

<div class="tutorials-card-content">

<div class="card-title-container">
    <strong>Build 3D point cloud datasets with Point-E</strong>
</div>

<p class="card-summary">Lidar is expensive. This tutorial shows how FiftyOne can help you construct high quality 3D point cloud datasets using Point-E point cloud models.</p>

<p class="tags">Dataset-Curation,Filtering,Visualization</p>

</div>

</div>

</div>

</div>

<div class="col-md-6 tutorials-card-container" data-tags=Model-Evaluation,Visualization>

<div class="card tutorials-card" link=monocular_depth_estimation.html>

<div class="card-body">

<div class="tutorials-image"><img src="../_images/mde_gt_heatmaps.png"></div>

<div class="tutorials-card-content">

<div class="card-title-container">
    <strong>Monocular Depth Estimation with Hugging Face</strong>
</div>

<p class="card-summary">Metrics for monocular depth estimation can be deceiving. Run MDE models on your data and visualize their predictions with FiftyOne.</p>

<p class="tags">Model-Evaluation,Visualization</p>

</div>

</div>

</div>

</div>

<div class="col-md-6 tutorials-card-container" data-tags=Brain,Visualization>

<div class="card tutorials-card" link=dimension_reduction.html>

<div class="card-body">

<div class="tutorials-image"><img src="../_images/dimension_reduction_cifar10_base_dataset.png"></div>

<div class="tutorials-card-content">

<div class="card-title-container">
    <strong>Visualizing Data with Dimensionality Reduction</strong>
</div>

<p class="card-summary">Compare and contrast dimensionality reduction techniques for visualizing your data in FiftyOne.</p>

<p class="tags">Brain,Visualization</p>

</div>

</div>

</div>

</div>

<div class="col-md-6 tutorials-card-container" data-tags=Filtering,Model-Evaluation,Model-Zoo>

<div class="card tutorials-card" link=zero_shot_classification.html>

<div class="card-body">

<div class="tutorials-image"><img src="../_images/zero_shot_classification_initial_dataset.png"></div>

<div class="tutorials-card-content">

<div class="card-title-container">
    <strong>Zero-Shot Image Classification</strong>
</div>

<p class="card-summary">Run and evaluate zero-shot image classification models with OpenCLIP, Hugging Face Transformers, and FiftyOne.</p>

<p class="tags">Filtering,Model-Evaluation,Model-Zoo</p>

</div>

</div>

</div>

</div>

<div class="col-md-6 tutorials-card-container" data-tags=App,Dataset-Curation,Visualization>

<div class="card tutorials-card" link=data_augmentation.html>

<div class="card-body">

<div class="tutorials-image"><img src="../_images/augmentations_initial_dataset.png"></div>

<div class="tutorials-card-content">

<div class="card-title-container">
    <strong>Augmenting Datasets with Albumentations</strong>
</div>

<p class="card-summary">Learn how to apply and test out different augmentations on your datasets using FiftyOne and Albumentations.</p>

<p class="tags">App,Dataset-Curation,Visualization</p>

</div>

</div>

</div>

</div>

<div class="col-md-6 tutorials-card-container" data-tags=App,Brain,Dataset-Curation,Embeddings,Visualization>

<div class="card tutorials-card" link=clustering.html>

<div class="card-body">

<div class="tutorials-image"><img src="../_images/clustering_preview.jpg"></div>

<div class="tutorials-card-content">

<div class="card-title-container">
    <strong>Clustering Images with Embeddings</strong>
</div>

<p class="card-summary">Use embeddings to cluster images in your dataset and visualize the results in FiftyOne.</p>

<p class="tags">App,Brain,Dataset-Curation,Embeddings,Visualization</p>

</div>

</div>

</div>

</div>

<div class="col-md-6 tutorials-card-container" data-tags=Model-Evaluation,Model-Zoo>

<div class="card tutorials-card" link=small_object_detection.html>

<div class="card-body">

<div class="tutorials-image"><img src="../_images/sahi_dataset.jpg"></div>

<div class="tutorials-card-content">

<div class="card-title-container">
    <strong>Small Object Detection with SAHI</strong>
</div>

<p class="card-summary">Detect small objects in your images with Slicing-Aided Hyper-Inference (SAHI) and FiftyOne.</p>

<p class="tags">Model-Evaluation,Model-Zoo</p>

</div>

</div>

</div>

</div>

<div class="col-md-6 tutorials-card-container" data-tags=Embeddings,Model-Evaluation,Model-Training,Visualization>

<div class="card tutorials-card" link=anomaly_detection.html>

<div class="card-body">

<div class="tutorials-image"><img src="../_images/anomaly_detection_thumbnail.jpg"></div>

<div class="tutorials-card-content">

<div class="card-title-container">
    <strong>Anomaly Detection with Anomalib</strong>
</div>

<p class="card-summary">Detect anomalies in your images with Anomalib and FiftyOne.</p>

<p class="tags">Embeddings,Model-Evaluation,Model-Training,Visualization</p>

</div>

</div>

</div>

</div>

<!-- End of tutorial cards --></div>

<div class="pagination d-flex justify-content-center"></div>

</div>

</div>
<!-- End tutorial cards section ------------------------------------------------- -->

#### NOTE
Check out the
[fiftyone-examples](https://github.com/voxel51/fiftyone-examples)
repository for more examples of using FiftyOne!
