- 파이썬 가상 환경을 설정해주고 pytorch을 설치한다.
# 파이썬 가상환경 설치
python -m venv venv
# 가상환경 활성화
source venv/Script/active # source venv/bin/active 이건 맥
# torch 설치 / cpu를 쓰는 버전임
pip3 install torch torchvision torchaudio --index-url <https://download.pytorch.org/whl/cu118>
- 원하는 모델을 github에서 다운로드 해온다.
- requirements 에 있는 사항들을 pip 에서 다운로드 해준다.
pip install -r requirements.txt
# 혹은
## 이런식으로
pip install yolov5 easyocr python-opencv
- README 에 보통 써있는 실행 파일을 찾고 load_model() 을 찾는다. 보통 이렇게 생김.
def load_model():
car_m = torch.hub.load("ultralytics/yolov5", 'yolov5s', force_reload=True, skip_validation=True)
lp_m = torch.hub.load('ultralytics/yolov5', 'custom', 'lp_det.pt')
reader = easyocr.Reader(['en'], detect_network='craft', recog_network='best_acc', user_network_directory='lp_models/user_network', model_storage_directory='lp_models/models')
car_m.classes = [2,3, 5, 7]
return car_m, lp_m, reader
- torch.hub.load 가 모델을 불러오는 부분이고 "ultralytics/yolov5" 이게 불러오는 경로인데, "ultralytics/yolov5" 이 친구는 Github의 yolov5 공식 페이지에서 불러오는 부분이다.
- ‘yolov5s’ 는 해당 파일에서 모델의 이름이다. ‘custom’ 은 말 그대로 custom 한 모델을 불러오겠다는 거고, 그 뒤에 있는 ‘lp_det.pt’ 이게 가중치이다.
- 이 경우에는 yolov5의 모델을 가져와서 사용하므로 yolov5를 Github에서 검색하고, zip 형태로 다운로드 해서 같은 경로에 압축 해제해서 설치한다. 그 뒤 필요한 것들을 설치한다.
cd yolov5-master
pip3 install -r requirements.txt
def load_model():
car_m = torch.hub.load('./yolov5', 'yolov5s', './yolov5/models/yolo.py', force_reload=True, skip_validation=True, source='local')
lp_m = torch.hub.load('./yolov5', 'custom', 'lp_det.pt', source='local')
reader = easyocr.Reader(['en'], detect_network='craft', recog_network='best_acc', user_network_directory='lp_models/user_network', model_storage_directory='lp_models/models')
car_m.classes = [2,3, 5, 7]
return car_m, lp_m, reader