Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Correctness checking for security_barrier_camera_demo w/ 1 network multi channels with inputting 1 image #3392

Open
wants to merge 53 commits into
base: master
Choose a base branch
from

Conversation

yangwang201911
Copy link

Correctness checking for demo security_barrier_camera_demo with single image inputting for each channel.

JIRA:
https://jira.devtools.intel.com/browse/CVS-74969

Signed-off-by: Wang, Yang <[email protected]>
…video. 2 Update case parameters in order to capturing ROI data from this demo. 3 Enable parse function for AUTO device.

Signed-off-by: Wang, Yang <[email protected]>
…nputing single iamge for each channel.

Signed-off-by: Wang, Yang <[email protected]>
Signed-off-by: Wang, Yang <[email protected]>
Signed-off-by: Wang, Yang <[email protected]>
@vladimir-dudnik
Copy link
Contributor

there are some basic pre-commit checks failed:

06:15:26 + ./venv/bin/python ./src/ci/check-basics.py
06:15:26 running miscellaneous checks...
06:15:27 demos/tests/correctness_checker.py:26: trailing whitespace.
06:15:27 +
06:15:27 demos/tests/correctness_checker.py:29: trailing whitespace.
06:15:27 + pass
06:15:27 demos/tests/correctness_checker.py:61: trailing whitespace.
06:15:27 +
06:15:27 demos/tests/correctness_checker.py:66: trailing whitespace.
06:15:27 + index += 1
06:15:27 demos/tests/correctness_checker.py:68: trailing whitespace.
06:15:27 +
06:15:27 demos/tests/correctness_checker.py:94: trailing whitespace.
06:15:27 +
06:15:27 demos/tests/correctness_checker.py:120: trailing whitespace.
06:15:27 +
06:15:27 demos/tests/run_tests.py:269: trailing whitespace.
06:15:27 + content = ''
06:15:27 demos/tests/run_tests.py:335: trailing whitespace.
06:15:27 + rawResults = ''
06:15:27 demos/tests/run_tests.py:336: trailing whitespace.
06:15:27 + execution_time = -1
06:15:27 demos/tests/run_tests.py:360: trailing whitespace.
06:15:27 +
06:15:27 running yamllint...
06:15:35 running flake8...
06:15:47 ./demos/tests/run_tests.py:36:1: F401 'operator.contains' imported but unused
06:15:47 ./demos/tests/correctness_checker.py:18:1: F401 'unittest.case' imported but unused
06:15:47 ./demos/tests/correctness_checker.py:65:20: E111 indentation is not a multiple of 4
06:15:47 ./demos/tests/correctness_checker.py:66:24: E111 indentation is not a multiple of 4
06:15:47 ./demos/tests/correctness_checker.py:67:20: E111 indentation is not a multiple of 4
06:15:47 ./demos/tests/correctness_checker.py:103:22: E211 whitespace before '('
06:15:47 ./demos/tests/correctness_checker.py:109:22: E211 whitespace before '('
06:15:47 ./demos/tests/correctness_checker.py:113:21: F402 import 'case' from line 18 shadowed by loop variable
06:15:47 ./demos/tests/correctness_checker.py:114:26: E211 whitespace before '('
06:15:47 ./demos/tests/correctness_checker.py:116:30: E211 whitespace before '('
06:15:47 ./demos/tests/correctness_checker.py:117:26: E211 whitespace before '('
06:15:47 ./demos/tests/correctness_checker.py:126:4: E111 indentation is not a multiple of 4
06:15:47 ./demos/tests/correctness_checker.py:127:8: E111 indentation is not a multiple of 4
06:15:47 ./demos/tests/correctness_checker.py:127:13: E211 whitespace before '('
06:15:47 ./demos/tests/correctness_checker.py:128:8: E111 indentation is not a multiple of 4
06:15:47 ./demos/tests/correctness_checker.py:129:12: E111 indentation is not a multiple of 4
06:15:47 ./demos/tests/correctness_checker.py:130:8: E111 indentation is not a multiple of 4
06:15:47 ./demos/tests/correctness_checker.py:131:12: E111 indentation is not a multiple of 4

@myshevts
Copy link
Contributor

I'm generally fine with the changes, yet the correctness checking seems to happen on the OMZ side? how do we get the results of such correctness, is there a weekly/nightly etc report or what? also the question to @vladimir-dudnik

@vladimir-dudnik
Copy link
Contributor

@myshevts the idea is to extend OMZ tests with inference results correctness check (currently we do not have this). OMZ tests currently used in automatic public runs, but there is no any reports on this.
Question on regular official validation runs and reports should be addressed to OpenVINO validation team. Our goal is to provide tools for that.

Copy link
Contributor

@anzhella-pankratova anzhella-pankratova left a comment

Choose a reason for hiding this comment

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

I would suggest to refer my branch with scratch validation scenario and simplify the implementation of parser() for multi channel correctness checking.

Since in parser() the results are parsed from log file, these results obtained from runtime should be saved in the parser while run_tests.py running.

The main loop in run_tests.py consists of 3 loops: iteration over demos -> iteration over test cases -> iteration over devices. While the third loop, the output log might be saved in the parser directly (just need to fill self.results[device][test_case]).
Finally, after all combinations of devices + test cases are ended, checker() might be called for the demo having parsed results.

And if parser() with checker() are transformed into some class MultiChannelCorrectnessChecker, the list of demos will be (it's aligned to the implementation of performance_scope, validation_scope):

DEMOS = [
    deepcopy(BASE['security_barrier_camera_demo/cpp'])
        .update_option({'-r': None})
        .add_parser(MultiChannelCorrectnessChecker)
]

demos/tests/correctness_checker.py Outdated Show resolved Hide resolved
demos/tests/run_tests.py Outdated Show resolved Hide resolved
demos/tests/run_tests.py Outdated Show resolved Hide resolved
demos/tests/correctness_checker.py Outdated Show resolved Hide resolved
demos/tests/correctness_checker.py Outdated Show resolved Hide resolved
@@ -42,7 +42,7 @@

log.basicConfig(format='[ %(levelname)s ] %(message)s', level=log.DEBUG, stream=sys.stdout)

DEVICE_KINDS = ['CPU', 'GPU', 'MYRIAD', 'HETERO', 'HDDL']
DEVICE_KINDS = ['CPU', 'GPU', 'AUTO', 'AUTO:CPU,GPU', 'MULTI:CPU,GPU', 'MYRIAD', 'HETERO', 'HDDL']

Choose a reason for hiding this comment

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

This should not be required for security_barrier_camera_demo ?

Copy link
Author

Choose a reason for hiding this comment

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

Update

Signed-off-by: Wang, Yang <[email protected]>
@vladimir-dudnik
Copy link
Contributor

there are still some precommit checks failed
09:06:00 running flake8...
09:06:10 ./demos/tests/run_tests.py:36:1: F401 'operator.contains' imported but unused

09:06:39 running documentation checks...
09:06:40 demos/tests/correctness_checker.py:133: last line doesn't end with a newline character

…inputting video. 2. Update the correctness checker that allows insignificant difference for the ROI.

Signed-off-by: Wang, Yang <[email protected]>
…2. Update the raw data format for the demo.

Signed-off-by: Wang, Yang <[email protected]>
…rred frames. 2. update correctness checking logic that could validate the correctness the multi results within 1 frame individually.

Signed-off-by: Wang, Yang <[email protected]>
…alue assign logic for the output port name of vehicle attribution.

Signed-off-by: Wang, Yang <[email protected]>
Signed-off-by: Wang, Yang <[email protected]>
…l_zoo into ywang2/analysis_result_automatically_for_AUTO_plugin
Signed-off-by: Wang, Yang <[email protected]>
Signed-off-by: Wang, Yang <[email protected]>
Signed-off-by: Wang, Yang <[email protected]>
…eout_occurs' into ywang2/analysis_result_automatically_for_AUTO_plugin
Signed-off-by: Wang, Yang <[email protected]>
…eout_occurs' into ywang2/analysis_result_automatically_for_AUTO_plugin
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants