The Voxel51 engineering team is thrilled to announce the general availability of FiftyOneOne 0.23 and FiftyOne Teams 1.5, which brings with them dozens of enhancements and fixes to streamline your computer vision workflows.
Wait, what’s FiftyOne?
FiftyOne is the open source machine learning toolset that enables data science teams to improve the performance of their computer vision models by helping them curate high quality datasets, evaluate models, find mistakes, visualize embeddings, and get to production faster.
![](https://voxel51.com/wp-content/uploads/2023/12/wait-what.gif)
Okay, but what’s FiftyOne Teams?
FiftyOne Teams extends FiftyOne with a GSuite-like experience for teams that want to collaborate on data stored in a centralized location with additional features like user permissions, dataset versioning, cloud-backed media, and enterprise security.
![](https://voxel51.com/wp-content/uploads/2023/12/compare.png)
What’s new in FiftyOne 0.23
This release includes two new exciting Integrations! A Redis integration and MongoDB integration for native text and image searches on FiftyOne datasets!
Also in this release:
App
- Added a new Lightning mode to the App sidebar that provides an optimized filtering experience for large datasets #3807
- Added support for viewing image groups as a video #3812
- Added support for configuring custom color schemes for semantic segmentation labels via the color scheme editor #3727
- Added support for configuring custom Heatmap colorscales via the color scheme editor #3804
- Improved rendering and customizability of label tags in the color scheme #3622
- Added an empty dataset landing page that allows for importing media and/or labels to the dataset from the App by running operators #3766
- Added a landing page that appears when no dataset is currently selected that allows for creating/opening datasets in the App by running operators #3766
- Added support for executing operators when the sample modal is open #3747
- Added a keyboard shortcut for batch selecting samples in grid and modal #3718
- Made field visibility’s selections persistent across page refreshes #3646
- Introduced error alert for view bar errors in view stages #3613
- Ensure that the last used brain key is loaded by default in the similarity search menu #3714
- Added support for launching the App with a non-default browser #3789
- Upgraded
werkzeug
from 2.0.3 to 3.0.1 in requirements for improved compatibility #3723
Core
- Adding support for registering custom evaluation methods #3695
- Optimized the
compute_metadata()
implementation #3801 - Added full support for working with images that use
EXIF
tags #3824 - Added support for parsing and exporting visibility attribute for keypoints in COCO format #3808
Plugins
- Added
ctx.current_sample
to operator’sExecutionContext
to support applying operators to the current sample open in the App modal #3792 - Added support for configuring an operator’s available execution options in cases where immediate and/or delegated execution should be available #3839
- Added support for programmatically executing generator operators via the SDK #3803
- Added a builtin
clear_sample_field
operator for clearing sample fields #3800 - Loosened the
OperatorConfig
constructor signature for enhanced forward/backward compatibility #3786 - Fixed an issue where operator form defaults were not always applied #3777
- Improved handling of fields in operator forms #3728
- Improved default value control in operator forms #3371
Annotation
- Updated the Labelbox integration to support the latest version of the Labelbox API #3781
- Removed the need for prepending sequence numbers to filenames when uploading images to the CVAT integration with sufficiently new versions of the CVAT SDK #3823
What’s new in FiftyOne Teams 1.5
Includes all updates from FiftyOne 0.23, plus the following new features:
- Added support for archiving older dataset snapshots to cold storage
- Added support for executing operators on dataset snapshots
- Added support for uploading multiple sets of cloud credentials, some of which may only apply to data in certain bucket(s)
- Added support for uploading media to Labelbox directly from S3 buckets
- Added support for executing the builtin
open_dataset
operator in the Teams UI - Added support for executing operators when viewing datasets with no samples, for example to add media/labels to the dataset from within the App
- Added support for editing the label of a delegated operation
- Added support for manually marking delegated operations as failed
- Added support for monioring the progress of delegated operations
- Improved handling of plugin secrets
- Added the ability to attach authorization tokens to media/asset requests
- Added new filter options to the dataset listing page
- Filters/searches on the dataset listing page are now persisted through URL query parameters
- Validate regexes before searching datasets to stop hard crashes
- Enforce exact version of
auth0
python package - Added debug logging on API startup
Get involved in the FiftyOne open source community!
If you are working on computer vision use cases and unstructured data, the FiftyOne community is for you. There are tons of ways to get involved, for example:
FiftyOne Community Slack
With over 2,000 members, the community Slack channel is a great place to interact with the FiftyOne developers and exchange solutions with machine learning engineers doing computer vision in production.
Join the FiftyOne Community Slack channel: https://slack.voxel51.com/
To make it easy to catch the highlights, every Friday we recap interesting questions and answers from Slack in our Tips & Tricks blog series. Check out almost 300 tips and tricks in the archives like:
- 3D Detections – FiftyOne Tips and Tricks
- Exploring Polylines – FiftyOne Tips and Tricks
- Creating Pose Skeletons from Scratch – FiftyOne Tips and Tricks
- Dynamic Groups – FiftyOne Tips and Tricks
- Understanding Grouped Datasets
Computer Vision and AI, Machine Learning, and Data Science Meetups
![](https://voxel51.com/wp-content/uploads/2023/12/cv-meetup.png)
Voxel51 sponsors 13 virtual Computer Vision Meetups and 12 AI, Machine Learning and Data Science Meetups around the world with almost 18,000 members. (To join, visit the Meetup links and scroll down to find the location friendliest to your time zone.)
The Meetups are geared towards data scientists, machine learning engineers, and open source enthusiasts who want to expand their knowledge of computer vision and complementary technologies. We put an emphasis on open source software, and speakers who are computer vision practitioners or academics doing research in the field. Our next Meetup is happening this Thursday!
![](https://voxel51.com/wp-content/uploads/2023/12/12.7.23_GIF_AIMeetup-2.gif)
- Building Yourself a Private Search System with Retrieval Augmentation with Haystack – Tuana Çelik at deepset
- Rise of the Intelligent Data Platform – Franco Patano at Databricks
- Scaling Similarity Search with USearch – Ash Vardanian at Unum Cloud
FiftyOne on GitHub
![](https://voxel51.com/wp-content/uploads/2023/12/stars.gif)
If you want to start contributing to the FiftyOne project resolving issues, reporting bugs or making enhancements to the Docs, check out these resources:
- Good first issues
- Building the Docs (video, instructions)
Community Spotlights
Last month we added ArgosAI and Kitro to the FiftyOne Success Stories page!
![](https://voxel51.com/wp-content/uploads/2023/12/unnamed.gif)
ArgosAI uses FiftyOne to increase the accuracy of the machine learning models that support their platform deployed at airports like Gatwick and Heathrow.
ArgosAI specializes in enhancing airside safety and efficiency through advanced AI-driven systems like A-FOD® for foreign object debris detection and A-CAM® for continuous airside monitoring. Their AI platform ensures early anomaly detection, 24/7 operational awareness, and reduced physical runway inspections, leading to superior performance and reduced operational complexity.
FiftyOne plays a vital role in their project, offering a robust framework for visualizing datasets and refining machine learning models. It significantly enhances the accuracy and reliability of their AI models, which is crucial for real-world applications. Moreover, it aligns with their commitment to continuous improvement in airside operations.
“FiftyOne’s powerful tools for dataset curation and model analysis empower us to fine-tune our systems for optimal performance, further reinforcing our dedication to safety and efficiency in airside operations. An integral part of our workflow is FiftyOne’s CVAT integration, streamlining the annotation process and thereby enhancing the accuracy of our machine learning models.”
Serkan Mengi , Machine Learning Engineer
![](https://voxel51.com/wp-content/uploads/2023/12/kitro.gif)
Kitro uses FiftyOne as a key ingredient in developing ML models and curating datasets for training.
Kitro is a Swiss company on a mission to harness the power of technology and use it for sustainable change. With artificial intelligence as the foundation, Kitro offers an automated food waste data collection and analysis solution that can be adopted by food and beverage outlets worldwide.
“FiftyOne is a key ingredient for Kitro in developing ML models and curating dataset for training our models. We use it extensively for data curation and it helps us a lot in investigating the mistakes our pipeline makes. The similarity search feature and looking at the data from the embedding view has helped us make changes in the dataset we couldn’t otherwise see. We are also more and more integrating FiftyOne in the automated models testing. It’s really a “Swiss army knife” for working with data.”
Luka Posilović , PhD, Head of Machine Learning
Is your organization already using FiftyOne to solve interesting computer vision problems? Share your success story and claim a box of community rewards as a thank you!