This GitHub Action automates the entire process of image classification with Microsoft Azure Custom Vision Service.
To use the Custom Vision Service you will need to create Custom Vision Training and Prediction resources in Azure. To do so in the Azure portal, fill out the dialog window on the Create Custom Vision page to create both a Training and Prediction resource.
Get the Endpoint, Training Key, Prediction Key and Prediction Resource ID credentials andd save it as Secrets in your GitHub repository settings. You can find the items at the Custom Vision website . Sign in with the account associated with the Azure account you used to create your Custom Vision resources. On the home page (the page with the option to add a new project), select the gear icon in the upper right.
Save the above credentials with SECRET_NAME as: AZURE_ENDPOINT
, AZURE_TRAINING_KEY
, AZURE_PREDICTION_KEY
, AZURE_PREDICTION_RESOURCE_ID
respectively.
Upload the image dataset and Test File in the Repository. After pushing the changes, Copy the below workflow file and push it:
name: Auto Custom Vision Classifier
on:
push:
paths:
- '**.yml'
jobs:
build_model:
runs-on: ubuntu-latest
steps:
- name: Automating Image Classification with Microsoft Azure Custom Vision Training and Prediction
uses: mritunjaysharma394/autoCustomVision@v1.0
with:
tags: "[Hemlock,Japanese Cherry]" # Rename it according to the folder name under images/ which will also be our name to the tags
tagsVar: "[hemlock_,japanese_cherry_]" # Rename it according to the symmetry of file names under images/tag/
trainSize: "10" # Train Size of Each Tag
endpoint: ${{ secrets.AZURE_ENDPOINT }}
trainingKey: ${{ secrets.AZURE_TRAINING_KEY }}
predictionKey: ${{ secrets.AZURE_PREDICTION_KEY }}
predictionResourceid: ${{ secrets.AZURE_PREDICTION_RESOURCE_ID }}