DEV Community

Cover image for Using GitHub Actions to Automate Image Classification with Microsoft Azure Custom Vision Services
Mritunjay Sharma
Mritunjay Sharma

Posted on

Using GitHub Actions to Automate Image Classification with Microsoft Azure Custom Vision Services

My Workflow

I created this new GitHub Action available here with which we can automate the entire process of image classification with Azure Custom Vision.
With this - all a user needs to do is:

  • Add the 4 SECRETS which are basically Azure Custom Vision Services Credentials. The process is explained in the README
  • Upload Image Dataset in the GitHub Repo and modify the tags, tagsVar and trainSize accordingly in the below yml file.

Here's a sample workflow YML file using this Action:

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 }}

Submission Category:

DIY Deployments

Yaml File or Link to Code

Link to GitHub Repo of the Action and the Workflow:

GitHub logo mritunjaysharma394 / autoCustomVision

GitHub Action automating the entire process of image classification with Microsoft Azure Custom Vision Service

Automating Image Classification with Microsoft Azure Custom Vision Training and Prediction

Build Status Open Source Love

This GitHub Action automates the entire process of image classification with Microsoft Azure Custom Vision Service.

How to use

Step 1:

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.

Step 2:

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…

Additional Resources / Info

Working Video Example:

Project where it is being used:

Top comments (0)