덕배의 블로그
인공지능(AI) 딥러닝 YOLOv8의 result(x, y 좌표, width, height) 값 추출 본문
YOLOv8 result (x, y 좌표, width, height) 추출
이번에는 YOLOv8 n 모델로 result 값들을 추출해보려고 한다.
물론 n모델뿐만 아니라 다른 모델 예를 들어 YOLOv8 x 모델도 가능하다.
마지막에는 x 모델과 n 모델을 비교할 것이기 때문에 n 모델만 써야 한다는 강박증은 없어도 될 것 같다.
x좌표와 y좌표, width, height를 추출하기 전에 나는 아나콘다 가상환경에서 추론할 것 이기에 아나콘다의 설치 방법 또는 사용 방법에 대해서 모른다면 밑에 사이트에서 공부를 하고 오는 게 좋을 듯하다.
https://rkdtmdqja98.tistory.com/3
인공지능 딥러닝 YOLOv8 설치 및 커스텀 학습(파이썬 아나콘다 환경)
아나콘다 가상 환경 생성 아나콘다란? 아나콘다는 파이썬을 포함한 데이터 과학에 필요한 다양한 언어 및 패키지의 배포 장점은 프로젝트마다 다른 환경을 만드는데 편리하고 환경마다 필요한
rkdtmdqja98.tistory.com
가상환경을 만들었다면 아래 그림처럼 따라와 주길 바란다.
conda activate yolov8
- yolov8이라는 가상 환경을 만든다. 처음에는 base로 되어있는 모습을 볼 수 있다.
test 폴더 하나 만든다.
- cd test
pip install ultralytics
- yolov8 설치
yolo
- yolo라는 명령어를 치면 위에 그림처럼 길게 나온다. 그렇다면 성공
이제 파이썬 파일을 하나 만들 것이다. test.py를 만들었다.
만든 test.py를 test 폴더 안에 넣어주도록 하겠다.
- 우리는 먼저 yolov8 n 모델을 이용해 보겠다. results 안에 있는 bus 이미지 파일은 알아서 자동으로 다운로드하여질 것이다.
- class_id는 bus가 yolvo8이 학습한 모델 중에 몇 번인지 알 수 있다.
- confideces는 정확도 - 이것이 몇 퍼센트 일치하느냐를 알 수 있다.
- xyxy는 x 좌표와 y 좌표, width , height를 알 수 있다.
이렇게 코드를 실행하게 되면 5번이 버스, 0번은 사람, 1번은 자전거
위에서부터 xyxy, class_id, confidences 쭉 결괏값이 내가 print한대로 나오는 것을 볼 수 있다.
위 그림처럼 yolov8n.pt 파일과 bus 이미지가 없었는데 자동으로 다운로드된 모습이다.
왜 버스가 5번인지 궁금한 사람들을 위해서 밑에 사진을 캡처해 봤다.
yolov8이 미리 학습된 class는 총 80개이다. 그래서 버스가 5번으로 되었다고 볼 수 있다.
그리고 yolov8x도 똑같이 돌려보면
YOLOv8x와 YOLOv8n의 비교
yolov8n과 yolov8x를 비교하면 yolov8n을 기준으로 YOLOv8x와 추론 속도는 3배 이상이면서 정확도도 87 퍼로 차이가 많이 난다.
파라미터 수도 20배 차이가 난다.
이렇게 yolov8 x 모델은 무겁지만 상당히 정확하고 성능이 좋다.

'인공지능' 카테고리의 다른 글
인공지능(AI) 딥러닝 YOLO 역사 series(yolov4,yolov5)에 대해 알아보자 (0) | 2023.07.27 |
---|---|
인공지능(AI) 딥러닝 YOLO 역사 series(yolov1,yolov2,yolov3)에 대해 알아보자 (0) | 2023.07.26 |
인공지능(AI) 딥러닝과 알고리즘( CNN, RNN, LSTM)에 대해 알아보자 (0) | 2023.07.20 |
인공지능(AI) 머신러닝 알고리즘 지도학습, 비지도 학습, 강화 학습, 자기 지도 학습에 대해 알아보자 (0) | 2023.07.20 |
인공지능(AI) 머신러닝에 대해서 알아보자 (1) | 2023.07.20 |