The Voxel51 engineering team is thrilled to announce the general availability of FiftyOne 0.23.7 and FiftyOne Teams 1.5.8, which brings with them dozens of enhancements and fixes to streamline your computer vision workflows. This pair of releases includes over a dozen new features and fixes. Read on to learn more.
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.
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.
If this sounds interesting, read on! Then schedule a demo to learn more about FiftyOne Teams.
What’s new in FiftyOne 0.23.7
This release includes the following updates:
App
- Fixed indexed boolean fields in lightning mode #4139
- Fixed app crash when many None-valued fields exist in the sample modal #4154
Docs
- Added an Albumentations integration for performing data augmentation on FiftyOne datasets #4155
- Added Places2 dataset to the zoo #4130
- Added a zero-shot image classification tutorial #4133
- Improved documentation for configuring AWS and GCP cloud credentials #4151
- Added YOLOv8, YOLOv9, and YOLO-World to the FiftyOne Model Zoo #4153
- Updated the lightning mode docs to clarify that wildcard indexes should not generally be used by default #4138
Plugins and Operators
- Added support for executing operators programmatically in notebook contexts #4134
- Improved execution of operators during loading of the App #4136
- Added a new on_dataset_open hook to auto-execute operators when datasets are opened in the App #4137
- Improved performance of operator type resolution by only calling
resolve_input()
on demand #4152 - Added support for loading saved views by name or slug when using the
set_view()
operator #4159 and #4178 - Added ability to trigger builtin operators during operator execution via
ctx.ops
#4164 - Fixed issue where JS operator input was not validated when calling
ctx.trigger()
orexecuteOperator()
directly #4170 - Show execution error of an operator in a notification when calling
ctx.trigger()
orexecuteOperator()
directly #4170 and #4178
Core
- Improved SuperGradients inference performance #4149
- Passing a grouped collection to a method that was not specifically designed to handle them now raises better validation errors #4150
MediaExporter
no longer re-exports media unnecessarily #4143- Added explicit support for Python 3.11 and 3.12 #4157
- Added a
perform_nms()
utility for non-maximum suppression on object detections #4160 - Improved error message when the given dataset name is unavailable #4161
- Removed use of deprecated non-integer arguments in
take()
andshuffle()
#4052 - Added ability to change
map_type
from the defaultroadmap
(carto-positron) tosatellite
(public USGS map imagery) inlocation_scatterplot()
#4075 - Cloning a dataset or view now includes any custom MongoDB indexes #4115
What’s new in FiftyOne Teams 1.5.8
Includes all updates from FiftyOne 0.23.7.
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,500 members, the community Slack channel is THE place to interact with the FiftyOne developers and exchange solutions with machine learning engineers doing computer vision in production.
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
Voxel51 sponsors 13 virtual Computer Vision Meetups and 12 AI, Machine Learning and Data Science Meetups around the world with over 20,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 April 18:
- Lumiere: A Space-Time Diffusion Model for Video Generation– Hila Chefer, PhD Candidate at Tel Aviv University and Student Researcher at Google
- Towards Resource Efficient Robust Text-to-Image Generative Models- Maitreya Patel, PHD student studying at Arizona State University
FiftyOne on GitHub
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)
Industry Spotlight: Computer Vision in Safety and Security
Check out the fifth installment of Voxel51’s computer vision industry spotlight blog series. In this series, we highlight how different industries — from construction to climate tech, from retail to robotics, and more — are using computer vision, machine learning, and artificial intelligence to drive innovation. We’ll dive deep into the main computer vision tasks being put to use, current and future challenges, and companies at the forefront.
In this edition, we’ll focus on safety and security! Check out the How Computer Vision Is Changing Safety & Security blog to get the details!