File size: 1,952 Bytes
5b9ac22
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
import psutil
from pathlib import Path
import os
from utils import utils
from utils.utils import Singleton,read_yaml_file

# 读取模型yaml文件
class FileConfig(metaclass=Singleton):
    def __init__(self):
#         read model.yaml文件
        cur_path = Path(os.path.abspath(__file__))
        base_dir = cur_path.parent
        self.model_config_path = base_dir / "model.yaml"
        self.model_file = read_yaml_file(self.model_config_path.as_posix())
        # self.model_path = base_dir / "resnet152-b121ed2d.pth"
        # self.model_path = base_dir / "resnet18-5c106cde.pth"
        # self.model_path = base_dir / "resnet34-333f7ec4.pth"
        self.model_path = base_dir / "resnet101-5d3b4d8f.pth"

class BaseUI(object):
    def __init__(self):
        cur_path = Path(os.path.abspath(__file__))
        cur_dir = cur_path.parent
        self.file_init()
        self.model_init()
    def file_init(self):
    #     初始化读取yaml文件
        file_config_singleton = FileConfig()
        self.mdoel_config_path = file_config_singleton.model_config_path
        self.model_file = file_config_singleton.model_file
        self.model_path = file_config_singleton.model_path
    def model_init(self):
        self.mdoel_name = self.model_file['model_name']
        self.contrast_path = ('.' + str(self.model_file['contrast_path']))
        self.transforms_Resize = [int(item) for item in self.model_file['transform']['Resize']]
        self.transforms_Normalize_mean = [float(item) for item in self.model_file['transform']['Normalize']['mean']]
        self.transforms_Normalize_std = [float(item) for item in self.model_file['transform']['Normalize']['std']]
        self.transforms_centercrop_isExist = bool(self.model_file['transform']['centercrop']['isExist'])
        if self.transforms_centercrop_isExist:
            self.transforms_centercrop_value = int(self.model_file['transform']['centercrop']['value'])
baseui = BaseUI()