123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108 |
- """
- @Authors: yangzihao(yangzihao@china-icv.cn)
- @Data: 2024/01/30
- @Last Modified: 2024/01/30
- @Summary: Evaluateion functions
- """
- import os
- import sys
- sys.path.append('../config')
- sys.path.append('../common')
- sys.path.append('../modules')
- sys.path.append('../results')
- import json
- import traceback
- import log
- from config_parser import ConfigParse
- from single_case_evaluate import single_case_evaluate, single_case_statistic
- from report_generate import report_generate
- def single_case_eval(configPath, dataPath, resultPath, trackPath, case_name):
- logger = log.get_logger()
-
-
-
- if len(os.listdir(dataPath)) == 0:
- print("No files in data_path!")
- logger.error(f"[case:{case_name}] SINGLE_CASE_EVAL: No files in data_path!")
- sys.exit(-1)
-
- try:
-
- config = ConfigParse(configPath)
- except Exception as e:
- print('Config file parsing ERROR!', e)
- traceback.print_exc()
- logger.error(f"[case:{case_name}] SINGLE_CASE_EVAL: Config file parsing ERROR: {repr(e)}!", exc_info=True)
- sys.exit(-1)
-
- try:
- case_dict = single_case_evaluate(config, dataPath, resultPath, case_name)
- single_case_dict = single_case_statistic(case_dict)
-
-
-
-
-
- reportDict = single_case_dict
-
- reportPdf = os.path.join(resultPath, 'report.pdf')
- report_generate(reportDict, reportPdf, trackPath)
- except Exception as e:
- traceback.print_exc()
- logger.error(f"[case:{case_name}] SINGLE_CASE_EVAL: Evaluate single case ERROR: {repr(e)}!", exc_info=True)
- sys.exit(-1)
|