Safemotion Lib
Loading...
Searching...
No Matches
det_demo.py
Go to the documentation of this file.
1#system path 설정
2import sys
3sys_path = ['/workspace/smlab', '/workspace']
4for path in sys_path:
5 if path not in sys.path:
6 sys.path.append(path)
7
8#import package
9import cv2
10import smrunner
11from smutils.utils_vis import vis_instance_segmentation, draw_bboxes_list
12
13#경로 설정
14# cfg_path = '/workspace/smlab/smdetect/configs/mmdet/rtmdet/rtmdet_trt.py' # rtmdet
15cfg_path = '/workspace/smlab/smdetect/configs/yolo/yolov8.py' # yolov8
16image_path = '/workspace/smlab/smdetect/demo/sample.bmp'
17save_path = '/workspace/smlab/smdetect/demo/det_demo.jpg'
18
19# 모델 빌드
20det_model = smrunner.build_model(cfg_path)
21
22# 이미지 로드 : 이미지 경로를 설정해야함
23image = cv2.imread(image_path)
24
25# 모델 inference
26result = det_model.run_detector(image)
27
28#시각화 영상 만들기 및 저장
29vis_img = image.copy()
30if 'masks' in result:
31 vis_img = vis_instance_segmentation(vis_img, result['masks']) #마스크 그리기
32
33vis_img = draw_bboxes_list(vis_img, result['det_bboxes'], (255, 0, 0), 2, 'xyxy') #박스그리기
34cv2.imwrite(save_path, vis_img) #저장
35
36#모델 결과 출력
37print(result)