MIVisionX

MIVisionX toolkit is a set of comprehensive computer vision and machine intelligence libraries, utilities, and applications bundled into a single toolkit. AMD MIVisionX also delivers a highly optimized open-source implementation of the Khronos OpenVX™ and OpenVX™ Extensions.

YoloV2 using AMD WinML Extension

This application shows how to run tiny yolov2 (20 classes) with MIVisionX RunTime:

Pre-requisites

Run

Step 1. Get ONNX model

Train your YoloV2 ONNX model or get it from onnx github. ONNX version 1.3 is recommended.

Step 2. Build the app using MIVisionX_winml_YoloV2.sln on Visual Studio.

Step 3. Run tests

Open up the command line prompt or Windows Powershell and use the following commands to run the tests.

Usage:

 .\MIVisionX_winml_YoloV2.exe --image [image - required] --modelLoc [modelLocation - required] --confidence [1-100 - optional, default: 20]
 .\MIVisionX_winml_YoloV2.exe --capture [0 - required] --modelLoc [modelLocation - required] --confidence [1-100 - optional, default: 20]
 .\MIVisionX_winml_YoloV2.exe --video [video - required] --modelLoc [modelLocation - required] --confidence [1-100 - optional, default: 20]

The confidence parameter is an optional parameter that sets the confidence level of detection. Lower the confidence level if the detection is not good enough.

Example

.\MIVisionX_winml_YoloV2.exe --image image\cat.jpg --modelLoc model.onnx

Update parameters

Please update parameters (biases, object names, etc) in /source/Region.cpp, and parameters (dim, blockwd, targetBlockwd, classes, etc) in /source/AnnieYoloDetect.cpp