{"id":18389346,"url":"https://github.com/rightpoint/customvisiontools","last_synced_at":"2025-04-12T06:28:50.245Z","repository":{"id":143418199,"uuid":"297435255","full_name":"Rightpoint/CustomVisionTools","owner":"Rightpoint","description":"Useful utilities for training object detection models with Custom Vision.","archived":false,"fork":false,"pushed_at":"2020-09-25T17:48:07.000Z","size":60,"stargazers_count":1,"open_issues_count":1,"forks_count":0,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-02-16T00:48:19.572Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Rightpoint.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-09-21T19:04:56.000Z","updated_at":"2020-09-25T17:48:10.000Z","dependencies_parsed_at":null,"dependency_job_id":"c0ac85f9-2c32-4ebe-80d4-64b8d559a7cb","html_url":"https://github.com/Rightpoint/CustomVisionTools","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Rightpoint%2FCustomVisionTools","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Rightpoint%2FCustomVisionTools/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Rightpoint%2FCustomVisionTools/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Rightpoint%2FCustomVisionTools/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Rightpoint","download_url":"https://codeload.github.com/Rightpoint/CustomVisionTools/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248527892,"owners_count":21119174,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-06T01:42:45.576Z","updated_at":"2025-04-12T06:28:50.227Z","avatar_url":"https://github.com/Rightpoint.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# CustomVisionTools\n\nCustomVisionTools is a macOS command line toolset for working with [Custom Vision](https://www.customvision.ai/)'s object detection training. These tools make it easy to upload or download images and bounding box data, as well as augmenting your images to make your trained models much more robust.\n\n## Setup\n\nYou'll need Python 3.7 or higher and Homebrew installed.\n\nClone this repo. In the root of the repo, open the terminal and run the following:\n```sh\nbrew install poetry # Dependency manager, see https://github.com/python-poetry/poetry#installation\npoetry install # Install dependencies\n```\n\nThen you can start editing the code:\n```sh\npoetry shell\ncode . # Or whatever you want\n```\n\n## Usage\n\n### Download\n\nThis downloads all the images and bounding boxes in the project into a folder. The data will be saved in YOLO Darknet format.\n\n```\npoetry run ./download.py --endpoint \u003cendpoint\u003e --training_key \u003ctraining_key\u003e --project_id \u003cproject_id\u003e --output_directory ./downloads\n```\n\nParameters:\n* `--endpoint`: \"Endpoint\" from Custom Vision project settings.\n* `--training_key`: \"Key\" from Custom Vision project settings.\n* `--project_id`: \"Project Id\" from Custom Vision project settings.\n* `--output-directory`: The directory that you want the data saved into.\n\n\n### Upload\n\nThis uploads a folder to the specified project on Custom Vision.\n\n```\npoetry run ./upload.py --endpoint \u003cendpoint\u003e --training_key \u003ctraining_key\u003e --project_id \u003cproject_id\u003e --input_directory ./downloads\n```\n\nParameters:\n* `--endpoint`: \"Endpoint\" from Custom Vision project settings.\n* `--training_key`: \"Key\" from Custom Vision project settings.\n* `--project_id`: \"Project Id\" from Custom Vision project settings.\n* `--input-directory`: The directory that you want to upload from. The folder must be in YOLO Darknet format.\n\nAdditional flags:\n* `--add_superfluous_regions`: Setting this flag adds an extra useless region to 15 images. \n    - If there's only one tag in a Custom Vision model and you export it to a CoreML model, it won't work when used. This fixes that bug.\n    - Custom Vision requires a minimum of 15 images to be associated with a tag for it to get used.\n\n### Augment\n\nThis applies the augmentations specified in `get_augmentation_operations()` of `MyAugments.py` to every image in the input directory using [imgaug](https://github.com/aleju/imgaug). `MyAugments.py`, the original images, and the augmented images are then written to the output directory. You can upload the resulting directory using `upload.py`.\n\n```\npoetry run ./augment.py --input_directory ./downloads --output_directory ./augmented\n```\n\nParameters:\n* `--input-directory`: The directory that you want to augment. This must be a YOLO Darknet-formatted folder.\n* `--output-directory`: The directory that you want the data saved into.\n\nAdditional flags:\n* `--skip_originals`: Avoid copying input images into the output directory.\n* `--preview_only` or `-p`: Preview augmentations without writing to any files.\n* `--single_threaded` or `-s`: Perform augmentations on multiple threads.\n\n## Similar projects:\n- https://kevinsaye.wordpress.com/2020/05/01/uploading-and-downloading-content-from-custom-computer-vision/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frightpoint%2Fcustomvisiontools","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frightpoint%2Fcustomvisiontools","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frightpoint%2Fcustomvisiontools/lists"}