Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Conversation

@dkurt
Copy link
Member

@dkurt dkurt commented Aug 25, 2023

Pull Request Readiness Checklist

resolves #24102

  • Use ngraph::Output<ngraph::Node>> insead of std::shared_ptr<ngraph::Node> as a backend wrapper. It lets access to multi-output nodes:
    // FIXIT refactor ".initNgraph()" API to use Output<Node>
    // WA: use Concat to emulate Identity operation with requested output port
    auto oid_node = std::make_shared<ngraph::op::Concat>(ngraph::OutputVector { ngraph_input_node->output(oid) }, 0);
    inputNodes[i] = Ptr<BackendNode>(new InfEngineNgraphNode(oid_node));
  • All layers can be customizable with OpenVINO >= 2022.1. nGraph reference code used for default layer implementation does not required CPU plugin also (might be tested by commenting CPU plugin at /opt/intel/openvino/runtime/lib/intel64/plugins.xml).
  • Correct inference if only intermediate blobs requested.

See details at https://github.com/opencv/opencv/wiki/How_to_contribute#making-a-good-pull-request

  • I agree to contribute to the project under Apache 2 License.
  • To the best of my knowledge, the proposed patch is not based on a code under GPL or another license that is incompatible with OpenCV
  • The PR is proposed to the proper branch
  • There is a reference to the original bug report and related work
  • There is accuracy test, performance test and test data in opencv_extra repository, if applicable
    Patch to opencv_extra has the same branch name.
  • The feature is well documented and sample code can be built with the project CMake
force_builders=Custom

Xbuild_image:Custom=ubuntu-openvino-2021.4.2:20.04
build_image:Custom=ubuntu-openvino-2022.1.0:20.04

test_modules:Custom=dnn,python2,python3,java,gapi,video

buildworker:Custom=linux-1
# disabled due high memory usage: test_opencl:Custom=ON
test_opencl:Custom=ON
test_bigdata:Custom=1
test_filter:Custom=*

@dkurt dkurt marked this pull request as ready for review August 28, 2023 07:07
Copy link
Contributor

@asmorkalov asmorkalov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

@asmorkalov asmorkalov self-assigned this Sep 5, 2023
@asmorkalov asmorkalov added this to the 4.9.0 milestone Sep 5, 2023
@dkurt
Copy link
Member Author

dkurt commented Sep 5, 2023

@asmorkalov, let's wait for #24223 and I will re-run the tests

@asmorkalov
Copy link
Contributor

@dkurt merged.

@dkurt dkurt force-pushed the ov_backend_cleanups branch from ca1da48 to 4f25ac0 Compare September 5, 2023 13:44
@asmorkalov
Copy link
Contributor

Tested manually with OpenVINO 2022.1.1. Works well! Thanks!

@asmorkalov asmorkalov merged commit 178fdbb into opencv:4.x Sep 5, 2023
@dkurt dkurt deleted the ov_backend_cleanups branch September 5, 2023 15:32
@asmorkalov asmorkalov mentioned this pull request Sep 11, 2023
fengyuentau added a commit to fengyuentau/opencv that referenced this pull request Sep 26, 2023
@opencv-alalek opencv-alalek removed their request for review December 26, 2023 20:47
thewoz pushed a commit to thewoz/opencv that referenced this pull request Jan 4, 2024
Use ngraph::Output in OpenVINO backend wrapper opencv#24196

### Pull Request Readiness Checklist

resolves opencv#24102

* Use `ngraph::Output<ngraph::Node>>` insead of `std::shared_ptr<ngraph::Node>` as a backend wrapper. It lets access to multi-output nodes: https://github.com/opencv/opencv/blob/588ddf1b181aa7243144b27d65fc7690fb89e344/modules/dnn/src/net_openvino.cpp#L501-L504
* All layers can be customizable with OpenVINO >= 2022.1. nGraph reference code used for default layer implementation does not required CPU plugin also (might be tested by commenting CPU plugin at `/opt/intel/openvino/runtime/lib/intel64/plugins.xml`).
* Correct inference if only intermediate blobs requested.


See details at https://github.com/opencv/opencv/wiki/How_to_contribute#making-a-good-pull-request

- [x] I agree to contribute to the project under Apache 2 License.
- [x] To the best of my knowledge, the proposed patch is not based on a code under GPL or another license that is incompatible with OpenCV
- [x] The PR is proposed to the proper branch
- [x] There is a reference to the original bug report and related work
- [x] There is accuracy test, performance test and test data in opencv_extra repository, if applicable
      Patch to opencv_extra has the same branch name.
- [x] The feature is well documented and sample code can be built with the project CMake
thewoz pushed a commit to thewoz/opencv that referenced this pull request May 29, 2024
Use ngraph::Output in OpenVINO backend wrapper opencv#24196

### Pull Request Readiness Checklist

resolves opencv#24102

* Use `ngraph::Output<ngraph::Node>>` insead of `std::shared_ptr<ngraph::Node>` as a backend wrapper. It lets access to multi-output nodes: https://github.com/opencv/opencv/blob/588ddf1b181aa7243144b27d65fc7690fb89e344/modules/dnn/src/net_openvino.cpp#L501-L504
* All layers can be customizable with OpenVINO >= 2022.1. nGraph reference code used for default layer implementation does not required CPU plugin also (might be tested by commenting CPU plugin at `/opt/intel/openvino/runtime/lib/intel64/plugins.xml`).
* Correct inference if only intermediate blobs requested.


See details at https://github.com/opencv/opencv/wiki/How_to_contribute#making-a-good-pull-request

- [x] I agree to contribute to the project under Apache 2 License.
- [x] To the best of my knowledge, the proposed patch is not based on a code under GPL or another license that is incompatible with OpenCV
- [x] The PR is proposed to the proper branch
- [x] There is a reference to the original bug report and related work
- [x] There is accuracy test, performance test and test data in opencv_extra repository, if applicable
      Patch to opencv_extra has the same branch name.
- [x] The feature is well documented and sample code can be built with the project CMake
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add a test for backends on retrieving intermediate blobs in any order

2 participants