Publishing 2019 R1 content
[platform/upstream/dldt.git] / inference-engine / samples / style_transfer_sample / README.md
1 # Neural Style Transfer C++ Sample
2
3 This topic demonstrates how to run the Neural Style Transfer sample application, which performs
4 inference of style transfer models.
5
6 > **NOTE**: The OpenVINO™ toolkit does not include a pre-trained model to run the Neural Style Transfer sample. A public model from the [Zhaw's Neural Style Transfer repository](https://github.com/zhaw/neural_style) can be used. Read the [Converting a Style Transfer Model from MXNet*](./docs/MO_DG/prepare_model/convert_model/mxnet_specific/Convert_Style_Transfer_From_MXNet.md) topic from the [Model Optimizer Developer Guide](./docs/MO_DG/Deep_Learning_Model_Optimizer_DevGuide.md) to learn about how to get the trained model and how to convert it to the Inference Engine format (\*.xml + \*.bin).
7
8 > **NOTE**: By default, Inference Engine samples and demos expect input with BGR channels order. If you trained your model to work with RGB order, you need to manually rearrange the default channels order in the sample or demo application or reconvert your model using the Model Optimizer tool with `--reverse_input_channels` argument specified. For more information about the argument, refer to **When to Specify Input Shapes** section of [Converting a Model Using General Conversion Parameters](./docs/MO_DG/prepare_model/convert_model/Converting_Model_General.md).
9
10 ## Running
11
12 Running the application with the <code>-h</code> option yields the following usage message:
13 ```sh
14 ./style_transfer_sample --help
15 InferenceEngine:
16     API version ............ <version>
17     Build .................. <number>
18
19 style_transfer_sample [OPTION]
20 Options:
21
22     -h                      Print a usage message
23     -i "<path>"             Required. Path to a .bmp image file or a sequence of paths separated by spaces.
24     -m "<path>"             Required. Path to an .xml file with a trained model.
25     -pp "<path>"            Path to a plugin folder
26     -d "<device>"           The target device to infer on; CPU, GPU, FPGA, HDDL or MYRIAD is acceptable. The sample looks for a suitable plugin for the device specified.
27     -ni "<integer>"         Number of iterations. Default value is 1
28     -pc                     Enables per-layer performance report
29     -mean_val_r,
30     -mean_val_g,
31     -mean_val_b             Mean values. Required if the model needs mean values for preprocessing and postprocessing
32
33 ```
34
35 Running the application with the empty list of options yields the usage message given above and an error message.
36
37 To perform inference on an image using a trained model of NST network on Intel® CPUs, use the following command:
38 ```sh
39 ./style_transfer_sample -i <path_to_image>/cat.bmp -m <path_to_model>/1_decoder_FP32.xml
40 ```
41
42 ## Sample Output
43
44 The application outputs an image (`out1.bmp`) or a sequence of images (`out1.bmp`, ..., `out<N>.bmp`) which are redrawn in style of the style transfer model used for sample.
45
46 ## See Also
47 * [Using Inference Engine Samples](./docs/IE_DG/Samples_Overview.md)
48 * [Model Optimizer](./docs/MO_DG/Deep_Learning_Model_Optimizer_DevGuide.md)
49 * [Model Downloader](https://github.com/opencv/open_model_zoo/tree/2018/model_downloader)