Roboflow is a tool for building robust machine learning operations pipelines for computer vision: from collecting and organizing images, annotating, training, deploying, and creating active learning pipelines to rapidly create improved model performance.

When it comes to the training step, developers should optimize for ease. Roboflow Train enables teams to one-click train a model custom to their dataset and have a production-ready API and on-device model (like for NVIDIA Jetson and Luxonis OAK). Roboflow Train also enables seamless deployment integration for ensuring active learning is built in to your machine learning operations pipeline by default – by reducing the complexity between data organization to your model's use in production, you're saving thousands of hours (and many headaches) to getting models (re)deployed to production with improvements.

And with Roboflow Pro, developers are able to one-click train models with third party services like Microsoft Azure as well. For example, some enterprises have a notable amount of Azure credits via partnerships. If you're curious how Microsoft Azure compares versus Google Cloud Vision AutoML vs Amazon Rekognition, be sure to read our benchmarking big cloud vision post:

Benchmarking the Major Cloud Vision AutoML Tools
Until now, there has been little independent research published on the performance of AutoML tools - (both relative to each other and against state of the art open source models)

By organizing, preprocessing, and augmenting in Roboflow – then training wherever a developer finds most helpful for their situation – teams are able to maximize the value of improving their datasets before kicking off a training job. (It is worth noting when training outside of Roboflow, the model is not as integrated with the rest of your data improvement process, which may create friction for rapid improvement.)

How to Train with Microsoft Azure Custom Vision

To get setup, we'll first add keys from your Microsoft Azure account to your Roboflow Account. Then, we'll kickoff a training job in Azure.

⚠️ This guide assumes you already have: (1) a Roboflow dataset (2) a Microsoft Azure Custom Vision project.

Let's get started!

Adding API keys from your Microsoft Azure account to your Roboflow Account

We'll add keys from our Microsoft Azure account to our Roboflow account. This will enable our Roboflow Account to seamlessly add datasets to our Azure account for training.

First, sign in to your Microsoft Azure account. You'll see the name of your Azure Custom Vision project on your dashboard.

Microsoft Azure Portal Dashboard with Azure Custom Vision
In your Microsoft Azure account, you'll see your Azure Custom Vision project listed.

Select your Custom Vision project (in the screenshot above, our project is called "Roboflow Example Project").

On the subsequent page, you'll have the option to click "API Key" under the first option. Do so.

Azure Custom Vision Example Project.
Click "API Key" for this project.

That will take us to a page that has the API keys we need as well as the project endpoint.

The API Keys for a Microsoft Azure project.
We'll need to use KEY 1 and the Endpoint fields momentarily.

Now, in Roboflow, we need to navigate to our Workspace Third Party API Keys settings in order to copy and paste the keys from our Azure Account to our Roboflow account.

To navigate to workspace settings, click the dropdown menu on your Workspace name in Roboflow.

Workplace settings menu in Roboflow
In our workspace named "Roboflow," we click the name to see Workspace Settings.

In your Workspace Settings, click "Third Party Keys."

Roboflow Workspace Settings and Third Party Keys
Navigate to Third Party Keys.

Then, we'll paste Key 1 from your Azure account into the Training-key section in your Roboflow Workspace settings. In addition, paste your endpoint from your Azure Custom Vision settings to the Endpoint field in Roboflow.

Voila! We've now linked your Roboflow Account and Microsoft Azure Custom Vision for one-click integration. This only has to be done once for the Workspace.

Training with Roboflow and Azure Custom Vision

Now that our Azure and Roboflow accounts are linked, we can one-click export data from our Roboflow account to Microsoft Azure Custom Vision.

To do so, generate a dataset version in Roboflow. By generating a version in Roboflow, you can take advantage of image augmentation, which allows you to get more out of your datasets with your existing images.

A generated dataset version in Roboflow
A generated version in Roboflow (based on the aerial image dataset).

To export for training in Azure, select "Azure Custom Vision" as the export format option.

Export data from Roboflow as Azure Custom Vision.
Select Azure Custom Vision as the format option.

Because we completed the API key setup above, the dataset version will automatically be ported to your Azure account.

Then, click "Continue to Azure" (This link requires that you are logged into your Azure account in the same browser as your Roboflow account.)

Continue to Azure Custom Vision
Click "Continue to Azure." Note that this link requires that you are logged into your Azure account in the same browser as your Roboflow account.

Voila - your named dataset version (preprocessed and augmented images with annotations) are in your Azure Custom Vision Account.

The dataset is now in your Azure Custom Vision Account.

From here, you can proceed to train on your dataset as you would any other Azure Custom Vision project.

Happy training!