* Added info on DockerHub CI Framework
* Feature/azaytsev/change layout (#3295)
* Changes according to feedback comments
* Replaced @ref's with html links
* Fixed links, added a title page for installing from repos and images, fixed formatting issues
* Added links
* minor fix
* Added DL Streamer to the list of components installed by default
* Link fixes
* Link fixes
* ovms doc fix (#2988)
* added OpenVINO Model Server
* ovms doc fixes
Co-authored-by: Trawinski, Dariusz <dariusz.trawinski@intel.com>
* Updated openvino_docs.xml
* Updated the link to software license agreements
* Revert "Updated the link to software license agreements"
This reverts commit 706dac500e.
* Docs to Sphinx (#8151)
* docs to sphinx
* Update GPU.md
* Update CPU.md
* Update AUTO.md
* Update performance_int8_vs_fp32.md
* update
* update md
* updates
* disable doc ci
* disable ci
* fix index.rst
Co-authored-by: Andrey Zaytsev <andrey.zaytsev@intel.com>
# Conflicts:
# .gitignore
# docs/CMakeLists.txt
# docs/IE_DG/Deep_Learning_Inference_Engine_DevGuide.md
# docs/IE_DG/Extensibility_DG/Custom_ONNX_Ops.md
# docs/IE_DG/Extensibility_DG/VPU_Kernel.md
# docs/IE_DG/InferenceEngine_QueryAPI.md
# docs/IE_DG/Int8Inference.md
# docs/IE_DG/Integrate_with_customer_application_new_API.md
# docs/IE_DG/Model_caching_overview.md
# docs/IE_DG/supported_plugins/GPU_RemoteBlob_API.md
# docs/IE_DG/supported_plugins/HETERO.md
# docs/IE_DG/supported_plugins/MULTI.md
# docs/MO_DG/prepare_model/convert_model/Convert_Model_From_Caffe.md
# docs/MO_DG/prepare_model/convert_model/Convert_Model_From_Kaldi.md
# docs/MO_DG/prepare_model/convert_model/Convert_Model_From_MxNet.md
# docs/MO_DG/prepare_model/convert_model/Convert_Model_From_ONNX.md
# docs/MO_DG/prepare_model/convert_model/Converting_Model.md
# docs/MO_DG/prepare_model/convert_model/Converting_Model_General.md
# docs/MO_DG/prepare_model/convert_model/Cutting_Model.md
# docs/MO_DG/prepare_model/convert_model/pytorch_specific/Convert_RNNT.md
# docs/MO_DG/prepare_model/convert_model/tf_specific/Convert_EfficientDet_Models.md
# docs/MO_DG/prepare_model/convert_model/tf_specific/Convert_WideAndDeep_Family_Models.md
# docs/MO_DG/prepare_model/convert_model/tf_specific/Convert_YOLO_From_Tensorflow.md
# docs/doxygen/Doxyfile.config
# docs/doxygen/ie_docs.xml
# docs/doxygen/ie_plugin_api.config
# docs/doxygen/ngraph_cpp_api.config
# docs/doxygen/openvino_docs.xml
# docs/get_started/get_started_macos.md
# docs/get_started/get_started_raspbian.md
# docs/get_started/get_started_windows.md
# docs/img/cpu_int8_flow.png
# docs/index.md
# docs/install_guides/VisionAcceleratorFPGA_Configure.md
# docs/install_guides/VisionAcceleratorFPGA_Configure_Windows.md
# docs/install_guides/deployment-manager-tool.md
# docs/install_guides/installing-openvino-linux.md
# docs/install_guides/installing-openvino-macos.md
# docs/install_guides/installing-openvino-windows.md
# docs/optimization_guide/dldt_optimization_guide.md
# inference-engine/ie_bridges/c/include/c_api/ie_c_api.h
# inference-engine/ie_bridges/python/docs/api_overview.md
# inference-engine/ie_bridges/python/sample/ngraph_function_creation_sample/README.md
# inference-engine/ie_bridges/python/sample/speech_sample/README.md
# inference-engine/ie_bridges/python/src/openvino/inference_engine/ie_api.pyx
# inference-engine/include/ie_api.h
# inference-engine/include/ie_core.hpp
# inference-engine/include/ie_version.hpp
# inference-engine/samples/benchmark_app/README.md
# inference-engine/samples/speech_sample/README.md
# inference-engine/src/plugin_api/exec_graph_info.hpp
# inference-engine/src/plugin_api/file_utils.h
# inference-engine/src/transformations/include/transformations_visibility.hpp
# inference-engine/tools/benchmark_tool/README.md
# ngraph/core/include/ngraph/ngraph.hpp
# ngraph/frontend/onnx_common/include/onnx_common/parser.hpp
# ngraph/python/src/ngraph/utils/node_factory.py
# openvino/itt/include/openvino/itt.hpp
# thirdparty/ade
# tools/benchmark/README.md
* Cherry-picked remove font-family (#8211)
* Cherry-picked: Update get_started_scripts.md (#8338)
* doc updates (#8268)
* Various doc changes
* theme changes
* remove font-family (#8211)
* fix css
* Update uninstalling-openvino.md
* fix css
* fix
* Fixes for Installation Guides
Co-authored-by: Andrey Zaytsev <andrey.zaytsev@intel.com>
Co-authored-by: kblaszczak-intel <karol.blaszczak@intel.com>
# Conflicts:
# docs/IE_DG/Bfloat16Inference.md
# docs/IE_DG/InferenceEngine_QueryAPI.md
# docs/IE_DG/OnnxImporterTutorial.md
# docs/IE_DG/supported_plugins/AUTO.md
# docs/IE_DG/supported_plugins/HETERO.md
# docs/IE_DG/supported_plugins/MULTI.md
# docs/MO_DG/prepare_model/convert_model/Convert_Model_From_Kaldi.md
# docs/MO_DG/prepare_model/convert_model/tf_specific/Convert_YOLO_From_Tensorflow.md
# docs/install_guides/installing-openvino-macos.md
# docs/install_guides/installing-openvino-windows.md
# docs/ops/opset.md
# inference-engine/samples/benchmark_app/README.md
# inference-engine/tools/benchmark_tool/README.md
# thirdparty/ade
* Cherry-picked: doc script changes (#8568)
* fix openvino-sphinx-theme
* add linkcheck target
* fix
* change version
* add doxygen-xfail.txt
* fix
* AA
* fix
* fix
* fix
* fix
* fix
# Conflicts:
# thirdparty/ade
* Cherry-pick: Feature/azaytsev/doc updates gna 2021 4 2 (#8567)
* Various doc changes
* Reformatted C++/Pythob sections. Updated with info from PR8490
* additional fix
* Gemini Lake replaced with Elkhart Lake
* Fixed links in IGs, Added 12th Gen
# Conflicts:
# docs/IE_DG/supported_plugins/GNA.md
# thirdparty/ade
* Cherry-pick: Feature/azaytsev/doc fixes (#8897)
* Various doc changes
* Removed the empty Learning path topic
* Restored the Gemini Lake CPIU list
# Conflicts:
# docs/IE_DG/supported_plugins/GNA.md
# thirdparty/ade
* Cherry-pick: sphinx copybutton doxyrest code blocks (#8992)
# Conflicts:
# thirdparty/ade
* Cherry-pick: iframe video enable fullscreen (#9041)
# Conflicts:
# thirdparty/ade
* Cherry-pick: fix untitled titles (#9213)
# Conflicts:
# thirdparty/ade
* Cherry-pick: perf bench graph animation (#9045)
* animation
* fix
# Conflicts:
# thirdparty/ade
* Cherry-pick: doc pytest (#8888)
* docs pytest
* fixes
# Conflicts:
# docs/doxygen/doxygen-ignore.txt
# docs/scripts/ie_docs.xml
# thirdparty/ade
* Cherry-pick: restore deleted files (#9215)
* Added new operations to the doc structure (from removed ie_docs.xml)
* Additional fixes
* Update docs/IE_DG/InferenceEngine_QueryAPI.md
Co-authored-by: Helena Kloosterman <helena.kloosterman@intel.com>
* Update docs/IE_DG/Int8Inference.md
Co-authored-by: Helena Kloosterman <helena.kloosterman@intel.com>
* Update Custom_Layers_Guide.md
* Changes according to review comments
* doc scripts fixes
* Update docs/IE_DG/Int8Inference.md
Co-authored-by: Helena Kloosterman <helena.kloosterman@intel.com>
* Update Int8Inference.md
* update xfail
* clang format
* updated xfail
Co-authored-by: Trawinski, Dariusz <dariusz.trawinski@intel.com>
Co-authored-by: Nikolay Tyukaev <nikolay.tyukaev@intel.com>
Co-authored-by: kblaszczak-intel <karol.blaszczak@intel.com>
Co-authored-by: Yury Gorbachev <yury.gorbachev@intel.com>
Co-authored-by: Helena Kloosterman <helena.kloosterman@intel.com>
8.5 KiB
ExtractImagePatches
Versioned name: ExtractImagePatches-3
Category: Data movement
Short description: The ExtractImagePatches operation collects patches from the input tensor, as if applying a convolution. All extracted patches are stacked in the depth dimension of the output.
Detailed description:
The ExtractImagePatches operation extracts patches of shape sizes which are strides apart in the input image. The output elements are taken from the input at intervals given by the rate argument, as in dilated convolutions.
The result is a 4D tensor containing image patches with size size[0] * size[1] * depth vectorized in the "depth" dimension.
The "auto_pad" attribute has no effect on the size of each patch, it determines how many patches are extracted.
Attributes
-
sizes
- Description: sizes is a size
[size_rows, size_cols]of the extracted patches. - Range of values: non-negative integer number
- Type: int[]
- Required: yes
- Description: sizes is a size
-
strides
- Description: strides is a distance
[stride_rows, stride_cols]between centers of two consecutive patches in an input tensor. - Range of values: non-negative integer number
- Type: int[]
- Required: yes
- Description: strides is a distance
-
rates
- Description: rates is the input stride
[rate_rows, rate_cols], specifying how far two consecutive patch samples are in the input. Equivalent to extracting patches withpatch_sizes_eff = patch_sizes + (patch_sizes - 1) * (rates - 1), followed by subsampling them spatially by a factor of rates. This is equivalent to rate in dilated (a.k.a. Atrous) convolutions. - Range of values: non-negative integer number
- Type: int[]
- Required: yes
- Description: rates is the input stride
-
auto_pad
- Description: auto_pad how the padding is calculated. Possible values:
- same_upper (same_lower) the input is padded by zeros to match the output size. In case of odd padding value an extra padding is added at the end (at the beginning).
- valid - do not use padding.
- Type: string
- Required: yes
- Description: auto_pad how the padding is calculated. Possible values:
Inputs
- 1:
datathe 4-D tensor of type T with shape[batch, depth, in_rows, in_cols]. Required.
Outputs
- 1: 4-D tensor with shape
[batch, size[0] * size[1] * depth, out_rows, out_cols]with type equal todatatensor. Noteout_rowsandout_colsare the dimensions of the output patches.
Types
- T: any supported type.
Example
<layer type="ExtractImagePatches" ...>
<data sizes="3,3" strides="5,5" rates="1,1" auto_pad="valid"/>
<input>
<port id="0">
<dim>64</dim>
<dim>3</dim>
<dim>10</dim>
<dim>10</dim>
</port>
</input>
<output>
<port id="1" precision="f32">
<dim>64</dim>
<dim>27</dim>
<dim>2</dim>
<dim>2</dim>
</port>
</output>
</layer>
Image is a 1 x 1 x 10 x 10 array that contains the numbers 1 through 100. We use the symbol x to mark output patches.
sizes="3,3", strides="5,5", rates="1,1", auto_pad="valid"\f[ \begin{bmatrix} x & x & x & 4 & 5 & x & x & x & 9 & 10 \ x & x & x & 14 & 15 & x & x & x & 19 & 20 \ x & x & x & 24 & 25 & x & x & x & 29 & 30 \ 31 & 32 & 33 & 34 & 35 & 36 & 37 & 38 & 39 & 40 \ 41 & 42 & 43 & 44 & 45 & 46 & 47 & 48 & 49 & 50 \ x & x & x & 54 & 55 & x & x & x & 59 & 60 \ x & x & x & 64 & 65 & x & x & x & 69 & 70 \ x & x & x & 74 & 75 & x & x & x & 79 & 80 \ 81 & 82 & 83 & 84 & 85 & 86 & 87 & 88 & 89 & 90 \ 91 & 92 & 93 & 94 & 95 & 96 & 79 & 98 & 99 & 100 \end{bmatrix} \f]
output:
[[[[ 1 6]
[51 56]]
[[ 2 7]
[52 57]]
[[ 3 8]
[53 58]]
[[11 16]
[61 66]]
[[12 17]
[62 67]]
[[13 18]
[63 68]]
[[21 26]
[71 76]]
[[22 27]
[72 77]]
[[23 28]
[73 78]]]]
output shape: [1, 9, 2, 2]
sizes="4,4", strides="8,8", rates="1,1", auto_pad="valid"\f[ \begin{bmatrix} x & x & x & x & 5 & 6 & 7 & 8 & 9 & 10 \ x & x & x & x & 15 & 16 & 17 & 18 & 19 & 20 \ x & x & x & x & 25 & 26 & 27 & 28 & 29 & 30 \ x & x & x & x & 35 & 36 & 37 & 38 & 39 & 40 \ 41 & 42 & 43 & 44 & 45 & 46 & 47 & 48 & 49 & 50 \ 51 & 52 & 53 & 54 & 55 & 56 & 57 & 58 & 59 & 60 \ 61 & 62 & 63 & 64 & 65 & 66 & 67 & 68 & 69 & 70 \ 71 & 72 & 73 & 74 & 75 & 76 & 77 & 78 & 79 & 80 \ 81 & 82 & 83 & 84 & 85 & 86 & 87 & 88 & 89 & 90 \ 91 & 92 & 93 & 94 & 95 & 96 & 79 & 98 & 99 & 100 \end{bmatrix} \f]
output:
[[[[ 1]]
[[ 2]]
[[ 3]]
[[ 4]]
[[11]]
[[12]]
[[13]]
[[14]]
[[21]]
[[22]]
[[23]]
[[24]]
[[31]]
[[32]]
[[33]]
[[34]]]]
output shape: [1, 16, 1, 1]
sizes="4,4", strides="9,9", rates="1,1", auto_pad="same_upper"\f[ \begin{bmatrix} x & x & x & x & 0 & 0 & 0 & 0 & 0 & x & x & x & x\ x & x & x & x & 4 & 5 & 6 & 7 & 8 & x & x & x & x\ x & x & x & x & 14 & 15 & 16 & 17 & 18 & x & x & x & x\ x & x & x & x & 24 & 25 & 26 & 27 & 28 & x & x & x & x\ 0 & 31 & 32 & 33 & 34 & 35 & 36 & 37 & 38 & 39 & 40 & 0 & 0\ 0 & 41 & 42 & 43 & 44 & 45 & 46 & 47 & 48 & 49 & 50 & 0 & 0\ 0 & 51 & 52 & 53 & 54 & 55 & 56 & 57 & 58 & 59 & 60 & 0 & 0\ 0 & 61 & 62 & 63 & 64 & 65 & 66 & 67 & 68 & 69 & 70 & 0 & 0\ 0 & 71 & 72 & 73 & 74 & 75 & 76 & 77 & 78 & 79 & 80 & 0 & 0\ x & x & x & x & 84 & 85 & 86 & 87 & 88 & x & x & x & x\ x & x & x & x & 94 & 95 & 96 & 79 & 98 & x & x & x & x\ x & x & x & x & 0 & 0 & 0 & 0 & 0 & x & x & x & x\ x & x & x & x & 0 & 0 & 0 & 0 & 0 & x & x & x & x \end{bmatrix} \f] output:
[[[[ 0 0]
[ 0 89]]
[[ 0 0]
[ 81 90]]
[[ 0 0]
[ 82 0]]
[[ 0 0]
[ 83 0]]
[[ 0 9]
[ 0 99]]
[[ 1 10]
[ 91 100]]
[[ 2 0]
[ 92 0]]
[[ 3 0]
[ 93 0]]
[[ 0 19]
[ 0 0]]
[[ 11 20]
[ 0 0]]
[[ 12 0]
[ 0 0]]
[[ 13 0]
[ 0 0]]
[[ 0 29]
[ 0 0]]
[[ 21 30]
[ 0 0]]
[[ 22 0]
[ 0 0]]
[[ 23 0]
[ 0 0]]]]
output shape: [1, 16, 2, 2]
sizes="3,3", strides="5,5", rates="2,2", auto_pad="valid"This time we use the symbolsx,y,zandkto distinguish the patches: \f[ \begin{bmatrix} x & 2 & x & 4 & x & y & 7 & y & 9 & y \ 11 & 12 & 13 & 14 & 15 & 16 & 17 & 18 & 19 & 20 \ x & 22 & x & 24 & x & y & 27 & y & 29 & y \ 31 & 32 & 33 & 34 & 35 & 36 & 37 & 38 & 39 & 40 \ x & 42 & x & 44 & x & y & 47 & y & 49 & y \ z & 52 & z & 54 & z & k & 57 & k & 59 & k \ 61 & 62 & 63 & 64 & 65 & 66 & 67 & 68 & 69 & 70 \ z & 72 & z & 74 & z & k & 77 & k & 79 & k \ 81 & 82 & 83 & 84 & 85 & 86 & 87 & 88 & 89 & 90 \ z & 92 & z & 94 & z & k & 79 & k & 99 & k \end{bmatrix} \f]
output:
[[[[ 1 6]
[ 51 56]]
[[ 3 8]
[ 53 58]]
[[ 5 10]
[ 55 60]]
[[ 21 26]
[ 71 76]]
[[ 23 28]
[ 73 78]]
[[ 25 30]
[ 75 80]]
[[ 41 46]
[ 91 96]]
[[ 43 48]
[ 93 98]]
[[ 45 50]
[ 95 100]]]]
output_shape: [1, 9, 2, 2]
sizes="2,2", strides="3,3", rates="1,1", auto_pad="valid"Image is a1 x 2 x 5 x 5array that contains two feature maps where feature map with coordinate 0 contains numbers in a range[1, 25]and feature map with coordinate 1 contains numbers in a range[26, 50]
\f[ \begin{bmatrix} x & x & 3 & x & x\ x & x & 8 & x & x\ 11 & 12 & 13 & 14 & 15\ x & x & 18 & x & x\ x & x & 23 & x & x \end{bmatrix}\ \begin{bmatrix} x & x & 28 & x & x\ x & x & 33 & x & x\ 36 & 37 & 38 & 39 & 40\ x & x & 43 & x & x\ x & x & 48 & x & x \end{bmatrix} \f] output:
[[[[ 1 4]
[16 19]]
[[26 29]
[41 44]]
[[ 2 5]
[17 20]]
[[27 30]
[42 45]]
[[ 6 9]
[21 24]]
[[31 34]
[46 49]]
[[ 7 10]
[22 25]]
[[32 35]
[47 50]]]]
output shape: [1, 8, 2, 2]