Golang Sample | Python Sample | Node.js Sample | PHP Sample |
---|---|---|---|
Images and annotations taken from - https://github.com/bourdakos1/Custom-Object-Detection
Images consists of frames taken from a clip from Star Wars: The Force Awakens.
Annotations are present for each frame and have the same name as the image name. You can find the example to train a model in python and node, by updating the api-key and model id in corresponding file. There is also a pre-processed json annotations folder that are ready payload for nanonets api.
git clone https://github.com/NanoNets/object-detection-sample-php.git
cd object-detection-sample-php
Need to install php-cli and php-curl: Here are the command to do same on Ubuntu
sudo apt-get install php<version>-cli
sudo apt-get install php<version>-curl
for PHP5
sudo apt-get install php5-cli
sudo apt-get install php5-curl
for PHP7
sudo apt-get install php7.0-cli
sudo apt-get install php7.0-curl
Get your free API Key from http://app.nanonets.com/user/api_key
export NANONETS_API_KEY=YOUR_API_KEY_GOES_HERE
php ./code/create-model.php
_Note: This generates a MODEL_ID that you need for the next step
export NANONETS_MODEL_ID=YOUR_MODEL_ID
_Note: you will get YOUR_MODEL_ID from the previous step
The training data is found in images
(image files) and annotations
(annotations for the image files)
php ./code/upload-training.php
Once the Images have been uploaded, begin training the Model
php ./code/train-model.php
The model takes ~2 hours to train. You will get an email once the model is trained. In the meanwhile you check the state of the model
php ./code/model-state.php
Once the model is trained. You can make predictions using the model
php ./code/prediction.php PATH_TO_YOUR_IMAGE.jpg
Sample Usage:
php ./code/prediction.php ./images/videoplayback0051.jpg
Note the php sample uses the comverted json instead of the xml payload for convenience purposes, hence it has no dependencies.