Comment on page
Getting Started
Quick Primer
To begin, import NatML to your Unity project by adding the following lines to your Unity project's
Packages > manifest.json
file:{
"scopedRegistries": [
{
"name": "NatML",
"url": "https://registry.npmjs.com",
"scopes": ["ai.natml"]
}
],
"dependencies": {
"ai.natml.natml": "1.1.8",
...
}
}
Once NatML has been imported, you can run ML models right in the Editor. For this example, we will classify an image using the popular MobileNet classifier architecture:
@natsuite/mobilenet-v2 - NatML
Get the MobileNet v2 predictor from NatML Hub.
Packages/manifest.json
1
{
2
...,
3
"dependencies": {
4
"ai.natml.natml": "1.1.8",
5
"ai.natml.vision.mobilenet-v2": "1.0.3",
6
...
7
}
8
}
The recommended way to make predictions with ML models is using Predictors. These are lightweight classes that 'know how' to format the model's input and output features.
https://hub.natml.ai/profile
Get your access key from NatML Hub
Once you have an access key, you can add it to your Unity project in
Project Settings > NatML
:
Specifying your access key in a Unity project.
Next, import the image below (download it into your Unity project):

A Cat
Make sure that in the advanced settings, you enable the
Read/Write Enabled
setting:
Import the cat image.
Now, we can write a small script to classify the image:
Classifier.cs
using UnityEngine;
using NatML.Vision;
public class Classifier : MonoBehaviour {
[Header(@"Prediction")]
public Texture2D image;
async void Start () {
// Create the MobileNet predictor
using var predictor = await MobileNetv2Predictor.Create();
// Classify the image feature
var (label, confidence) = predictor.Predict(image);
// Log the result
Debug.Log($"Image contains {label} with confidence {confidence}");
}
}
Now, let us add our script to the scene and assign the inspector variables:

Create an empty object and add the
Classifier
script we just created.Now, we run the script to confirm that our model predicted the image correctly!

It's a cat!
Last modified 4mo ago