The FSOCO Tools CLI facilitates preparing your dataset to contribute to the project. It is a small, extensible tool for data manipulation and analysis that is based on Click to sensibly combine scripts into a uniform package. For installation, please refer to the README.
We welcome contributions and would be thrilled to review and, hopefully, accept your contribution as well.
If you are interested, please refer to CONTRIBUTING.
A good way to find inspiration is by looking for “Help Wanted” Issues.
- In-house Tools
- 3rd Party Tools
Image Similarity Score
This tool will check your dataset for similarly looking images. Its purpose is to assure that all contributions are actually expanding the dataset, helping to achieve algorithms with greater generalization potential. Please find detailed information and instructions how to use our image similarity scorer on this page.
The FSOCO label viewer is an easy way to visualize our dataset. Currently, it supports bounding boxes in both Supervisely and Darknet YOLO format and segmentation labels from Supervisely.
# Activate python venv where tools are installed conda activate fsoco-tools fsoco viewers supervisely input_directory/
Team Logo Watermark
This tool allows you to test how your watermarked images will look like when using the Supervisely import plugin for image donations. Please refer to the tool’s help for usage details.
# Activate python venv where tools are installed conda activate fsoco-tools fsoco watermark input_directory/ jpg logo.png
This will generate watermarked images based on the matched contents of
input_directory/ with a
The generated watermark will consist of your team’s logo and a timestamp. Borders of
140px on each edge will be added to the image.
The logo will be resized to a height of
100px, while keeping the aspect ratio unchanged. To guarantee a crisp version of your logo and avoid unexpected distortions, use a version of your logo that fits these constraints.
Furthermore, the background on which the logo will be placed is black. To guarantee a good result, use a version of your logo with a black background.
Transparency is not guaranteed to work.
Example Watermarked Images
The converter tools enable you to quickly convert your dataset of bounding boxes to comply with the submission format. The currently available conversions are:
|Label Formats||Darknet YOLO||Supervisely||LabelBox||COCO||VOC||MM||NAS|
# Activate python venv where tools are installed conda activate fsoco-tools fsoco label-converter yolo2sly -p project_name -d dataset_name img/ darknet_labels/ .
dataset_name parameters will set the names of the created directory structure.
For uploading the created directories with converted labels and original images to Supervisely, please use the
project_name root directory to ensure the correct metadata file
meta.json is used.
More information is available in the documentation of the Supervisely FSOCO import plugins below.
3rd Party Tools
From Supervisely’s documentation page:
Supervisely is a powerful platform for computer vision development, where individual researchers and large teams can annotate and experiment with datasets and neural networks.
Our mission is to help people with and without machine learning expertise to create state-of-the-art computer vision applications.
A Plugin is a set of docker images that can be executed on the node using the agent from the web interface.
Writing a plugin allows you to run any program you would like with data either being imported or already accessible through your Supervisely account, neatly encapsulated in a Docker container. For the purposes of FSOCO, there are two relevant plugins that we provide you with.
- FSOCO Image Import: Import for raw images that does the watermarking for you, provided a valid logo image.
- FSOCO Supervisely Import: Import projects in the Supervisely format and have the contained images watermarked and labels adjusted accordingly.
Both plugins are documented to allow for a seamless experience when adjusting your data to fit the required format. If you are interested in writing your own plugin, please refer to Supervisely’s documentation on custom plugins.