benchmark_app python: fix incorrect -i argument parsing for wavernn-rnn input names (#14349)

* benchmark_app python: fix incorrect -i argument parsing for wavernn-rnn input names

* fix for Windows paths
This commit is contained in:
Ilya Naumov 2022-12-15 19:20:14 +03:00 committed by GitHub
parent e44a4fc6d2
commit a0ce891915
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -314,7 +314,7 @@ def parse_path(path, app_input_info):
""" """
input_names = list(info.name for info in app_input_info) input_names = list(info.name for info in app_input_info)
input_node_names = list(info.node_name for info in app_input_info) input_node_names = list(info.node_name for info in app_input_info)
parsed_names = re.findall(r"([^,]\w+):", path) parsed_names = re.findall(r"((?=[^,])(?![a-zA-Z]:\\)[\w\.]+):", path)
wrong_names = list(name for name in parsed_names if name not in input_names + input_node_names) wrong_names = list(name for name in parsed_names if name not in input_names + input_node_names)
if wrong_names: if wrong_names:
raise Exception( raise Exception(
@ -323,7 +323,7 @@ def parse_path(path, app_input_info):
"Please check `-i` input data" "Please check `-i` input data"
) )
tensor_names = [parsed_name if parsed_name in input_names else input_names[input_node_names.index(parsed_name)] for parsed_name in parsed_names] tensor_names = [parsed_name if parsed_name in input_names else input_names[input_node_names.index(parsed_name)] for parsed_name in parsed_names]
input_pathes = [path for path in re.split(r"[^,]\w+:", path) if path] input_pathes = [path for path in re.split(r"(?=[^,])(?![a-zA-Z]:\\)[\w\.]+:", path) if path]
input_path_mapping = defaultdict(list) input_path_mapping = defaultdict(list)
# input mapping is used # input mapping is used
if tensor_names: if tensor_names: