GstInference - Supported backends - NCSDK
Make sure you also check GstInference's companion project: R2Inference |
GstInference |
---|
Introduction |
Getting started |
Supported architectures |
InceptionV1 InceptionV3 YoloV2 AlexNet |
Supported backends |
Caffe |
Metadata and Signals |
Overlay Elements |
Utils Elements |
Legacy pipelines |
Example pipelines |
Example applications |
Benchmarks |
Model Zoo |
Project Status |
Contact Us |
|
The NCSDK Intel® Movidius™ Neural Compute SDK (Intel® Movidius™ NCSDK) enables deployment of deep neural networks on compatible devices such as the Intel® Movidius™ Neural Compute Stick. The NCSDK includes a set of software tools to compile, profile, and validate DNNs (Deep Neural Networks) as well as APIs on C/C++ and Python for application development.
The NCSDK has two general usages:
- Profiling, tuning, and compiling a DNN models.
- Prototyping user applications, that run accelerated with a neural compute device hardware, using the NCAPI.
Installation
You can install the NCSDK on a system running Linux directly, downloading a Docker container, on a virtual machine or using a Python virtual environment. Al the possible installation paths are documented on the official installation guide.
Tools
mvNCCheck
Checks the validity of a Caffe or TensorFlow model on a neural compute device. The check is done by running an inference on both the device and in software and then comparing the results to determine a if the network passes or fails. This tool works best with image classification networks. You can check all the available options on the official documentation.
For example lets test the googlenet caffe model downloaded by the ncappzoo repo:
mvNCCheck -w bvlc_googlenet.caffemodel -i ../../data/images/nps_electric_guitar.png -s 12 -id 546 deploy.prototxt -S 255 -M 110
- -w indicates the weights file
- -i the input image
- -s the number of shaves
- -id the expected label id for the input image (you can find the id for any imagenet model here)
- -S is the scaling sice
- -M is the substracted mean after scaling
Most of these parameters are available from the model documentation. The command produces the following result:
mvNCCheck v02.00, Copyright @ Intel Corporation 2017 usage: mvNCCheck [-h] [-w WEIGHTS] [-in INPUTNODE] [-on OUTPUTNODE] [-i IMAGE] [-s NSHAVES] [-is INPUTSIZE INPUTSIZE] [-S SCALE] [-M MEAN] [-id EXPECTEDID] [-cs [CHANNEL_SWAP]] [-dn ] [-ec] [--accuracy_adjust [ACCURACY_ADJUST]] [--ma2480] [--scheduler SCHEDULER] [--new-parser] [-of SAVE_OUTPUT] [-rof SAVE_REF_OUTPUT] [-metric METRIC] network mvNCCheck.py validates a Caffe or Tensorflow network on the Movidius Neural Compute Stick positional arguments: network Network file (.prototxt, .meta, .pb, .protobuf) optional arguments: -h, --help show this help message and exit -w WEIGHTS Weights file (override default same name of .protobuf) -in INPUTNODE Input node name -on OUTPUTNODE Output node name -i IMAGE Image to process -s NSHAVES Number of shaves (default 1) -is INPUTSIZE INPUTSIZE Input size for networks that don't provide an input shape, width and height expected -S SCALE Scale the input by this amount, before mean -M MEAN Numpy file or constant to subtract from the image, after scaling -id EXPECTEDID Expected output id for validation -cs [CHANNEL_SWAP] default: 2,1,0 for RGB-to-BGR; no swap: 0,1,2 -dn [] Experimental flag to run on a specified stick. -ec Force explicit concat --accuracy_adjust [ACCURACY_ADJUST] Scale the output by this amount --ma2480 Dev flag --scheduler SCHEDULER Dev flag --new-parser Dev flag -of SAVE_OUTPUT File name for the myriad result output in numpy format. -rof SAVE_REF_OUTPUT File name for the reference result in numpy format -metric METRIC Metric to be used for validation. Options: top1, top5 or accuracy_metrics, ssd_pred_metric
mvNCCompile
mvNCProfile
API