AI Research/Object Detection

[Object Detection] YOLOv5 이미지 사이즈 변경하는 법 (How to change YOLOv5 image resolution)

wawawaaw 2022. 8. 8. 19:56
반응형

 ⭐ 본 포스팅에서는 YOLOv5에서 원하는 크기로 이미지 사이즈 변경하는 방법을 다룬다. 이미지 사이즈를 지정해주지 않으면 자동으로 이미지가 resizing 된다.  원하는 크기로 이미지 사이즈를 바꾸어 detection 하는 방법에 대해서 알아보자 ! 

아래 활용할 yolov5 깃허브 주소다. 

https://github.com/ultralytics/yolov5

 

GitHub - ultralytics/yolov5: YOLOv5 🚀 in PyTorch > ONNX > CoreML > TFLite

YOLOv5 🚀 in PyTorch > ONNX > CoreML > TFLite. Contribute to ultralytics/yolov5 development by creating an account on GitHub.

github.com

 

이미지 사이즈 지정하는 코드 살펴보기 

  • detect.py에서 data를 로드하는 부분에서 이미지의 사이즈를 지정해준다.
# Dataloader
    if webcam:
        view_img = check_imshow()
        cudnn.benchmark = True  # set True to speed up constant image size inference
        dataset = LoadStreams(source, img_size=imgsz, stride=stride, auto=pt)
        bs = len(dataset)  # batch_size
    else:
        dataset = LoadImages(source, img_size=imgsz, stride=stride, auto=pt)
        bs = 1  # batch_size
    vid_path, vid_writer = [None] * bs, [None] * bs
  • img_size = imgsz 부분에서 사이지를 변경해준다. 원하는 사이즈로 지정해주기 위해서는 —imgsz 태그를 이용하면된다.
  • default는 640 으로 되어 있다.
imgsz=(640, 640),  # inference size (height, width)

 

이미지 사이즈 변경하는 방법 

  • detection 을 실행하는 코드 맨 뒤에 -- imgsz 후 원하는 resolution을 입력하면 된다. 
python detect.py --source /home/rtcl/workspace/yolov5/data/images/bus.jpg --imgsz 1280
  • 지정한 이미지 사이즈로 detection 한 것을 확인할 수 있다.
  • 주의할 점은 YOLO는 이미지 사이즈가 32로 나누어 떨어져야한다는 점이다.

(1280,1280)의 shape로 detection 된 콘솔창을 확인할 수 있다.

 

반응형