Intel® Distribution of OpenVINO™ Toolkit
Community assistance about the Intel® Distribution of OpenVINO™ toolkit, OpenCV, and all aspects of computer vision-related on Intel® platforms.
6403 Discussions

Unsupported layer in face-detection-retail-0004 using CPU with 2021.1 on Windows 10

Hawkes__Rycharde
New Contributor I
1,076 Views

I've been using face-detection-retail-0004 with 2020.1 with no issues on CPU, GPU and MYRIAD.   This is still the case with GPU (haven't tested MYRIAD yet) but not with the CPU plugin on Windows 10.

Following a demo example I check for unsupported layers when using the CPU plugin:

supported_layers = self.ie_core.query_network(net, device)
not_supported_layers = [
    l for l in net.layers.keys() if l not in supported_layers
]

Question 1) Having upgraded to 2021.1, this check reveals that Constant_11092 is not supported.  There is no CPU extension DLL since 2020.1 so how do I add support for this layer in one of the Intel provided models?

If I ignore the unsupported layer and carry on execution the model does appear to execute and detect faces. 

Question 2) How did the model execute OK with a missing supported layer?

Thanks.

0 Kudos
1 Solution
Hawkes__Rycharde
New Contributor I
1,056 Views

I should have been more clear, I am using the 2021.1 version of the model.

The code for checking supported layers uses methods that are now deprecated.  I've rewritten it:

            supported_layers = self.ie_core.query_network(net, device)
            function = ng.function_from_cnn(net)
            ops = function.get_ordered_ops()
            not_supported_layers = [
                l for l in iter(ops) if l.friendly_name not in supported_layers
            ]

Which I think is functionally equivalent.  The model now loads.  So either what I've written doesn't do what I think it does or there is a bug related to the deprecated methods that caused the error.

 

View solution in original post

0 Kudos
5 Replies
Vladimir_Dudnik
Employee
1,065 Views

I'd recommend to download Open Model Zoo models when you upgrade to the new version of OpenVINO. The reason is that we rebuild Intel pre-trained models IR for each OpenVINO version, so model IR corresponds to OpenVINO runtime.

Hawkes__Rycharde
New Contributor I
1,057 Views

I should have been more clear, I am using the 2021.1 version of the model.

The code for checking supported layers uses methods that are now deprecated.  I've rewritten it:

            supported_layers = self.ie_core.query_network(net, device)
            function = ng.function_from_cnn(net)
            ops = function.get_ordered_ops()
            not_supported_layers = [
                l for l in iter(ops) if l.friendly_name not in supported_layers
            ]

Which I think is functionally equivalent.  The model now loads.  So either what I've written doesn't do what I think it does or there is a bug related to the deprecated methods that caused the error.

 

0 Kudos
Iffa_Intel
Moderator
1,034 Views

Greetings,

 

I'm able to use the  face-detection-retail-0004 on windows 10 CPU on both OpenVINO 2021.1 and 2021.2 with no problems.

I downloaded the model through OpenVINO's official model_downloader.

The interactive_face_recognition_demo was used together with some other models.

Please help to refer to my attachments for further details.

0 Kudos
Hawkes__Rycharde
New Contributor I
1,012 Views

That code doesn't use query_network() and attempt to validate the results from that call so doesn't actually address the issue.  But since rewriting the code to avoid deprecated methods seems to work (although I'm not certain it does exactly the same thing), there is no point digging further.

0 Kudos
Iffa_Intel
Moderator
1,004 Views

Greetings,


Glad to know you had found the workaround for your issue.


Intel will no longer monitor this thread since this issue has been resolved. If you need any additional information from Intel, please submit a new question. 


Sincerely,

Iffa


0 Kudos
Reply