Ultralytics YOLO(You Only Look Once) v8 사용해 보기

실시간 사물 검출에 탁월하다는 Ultralytics사의 YOLO v8를 테스트해 보았습니다.

YOLO(You Only Look Once)는 최첨단 실시간 Object Detection 시스템으로 기존의 모델보다 빠르고 정확한 데이터 처리 속도가 장점이라고 합니다. 

제 경우에는 우연히 YOLO 정보를 접하게 되었는데 전공 분야가 아니라 실사용 위주로 테스트를 해 보았습니다. 

아래 이미지를 클릭하시면 ultralytics 홈페이지로 연결되니 자세한 내용은 여기를 참고하시면 됩니다.

Ultralytics YOLOv8 Logo

YOLO는 입력된 이미지를 일정 분할로 그리드한 다음, 신경망을 통과하여 바운딩 박스와 클래스 예측을 생성하여 최종 감지 출력을 결정합니다. (아래 그림 참고)

Ultralytics YOLOv8 개념

이러한 YOLO v8의 물체 감시 및 객체 인식을 할 수 있는 것들을 아래 정리해 보았습니다.

Ultralytics YOLOv8 주요 Task

이제 YOLO v8을 설치하여 테스트해 보겠습니다.

테스트를하기 위해서는 Python에 Ultralytics 라이브러리를 설치해야 하는데 대부분 아나콘다를 설치하여 개발환경을 설정하는데 제 경우에는 Python에서 기본 제공되는 venv를 사용하여 개발환경을 구축 후 테스트를 해 보았습니다.

아래 명령어를 사용하여 윈도우10에서 작업환경을 설정하였습니다.

 python -m venv yolo_v8
 cd yolo_v8
 scripts/activate.bat

가상환경이 활성화되면 프롬프트 앞에 만든 가상환경 이름이 표시됩니다.(아래 이미지 참고)

Ultralytics YOLOv8를 위한 가상환경 구축

yolo_v8의 가상환경을 만든 후 pip install ultralytics 명령어로 라이브러리를 설치합니다. 설치 중간에 numpy관련 에러가 발생되는데 관련 dependency 라이브러리가 설치되어 있지 않다면 같이 설치합니다.

Ultralytics YOLOv8 사용을 위한 설치 작업

ultralytics의 설치가 완료되었습니다.

윈도우 10 PC에 웹캠을 연결한 후 아래 명령어를 실행해 봅니다.

source 값은 0번째 웹캠을 의미합니다. PC에 웹캠이 여러개 있는 경우 해당 웹캠 번호를 넣으시면 됩니다.

 yolo predict model=yolov8n.pt source=0 show=True 

아래와 같이 YOLO v8이 실행되며 실시간으로 웹캠 영상 사이즈, 검출되는 사물명, 검출 갯수, 검출하는데 걸린 시간등이 표시되는 것을 볼 수 있습니다.

Ultralytics YOLOv8 기본 사용법

제 경우 PC에서 웹브라우저를 띄워 놓은 상태에서 웹캠을 모니터로 촬영하였습니다.

Ultralytics YOLOv8을 사용한 인물 검색

제대로 인식 안되는 경우도 있지만 대체적으로 실시간 사물 검출이 잘 동작됩니다.

이렇게 빠른 사물 인식 및 검출로 인해 YOLO v8이 주목 받는것 같습니다.

Post a Comment

Previous Post Next Post