Ultralytics YOLO27: 대기자 명단에 등록하세요.
YOLO 라이선스 받기
Ultralytics YOLO

컴퓨터 비전 프로젝트의 속도 추정을 위한 Ultralytics YOLOv8

컴퓨터 비전 프로젝트에서 속도 추정에 Ultralytics YOLOv8 모델을 활용하는 방법을 알아보세요. 간단한 코드 예제로 직접 사용해 보세요.

Abirami VinaAbirami Vina6 분 읽기
컴퓨터 비전 프로젝트에서 속도 추정에 Ultralytics YOLOv8 모델을 활용하는 방법을 알아보세요. 간단한 코드 예제로 직접 사용해 보세요.

제한 속도 도로 표지판은 누구나 한 번쯤 보았을 것입니다. 우편이나 이메일로 자동 과속 위반 통지를 받은 사람도 있을 수 있습니다. 인공지능(AI) 교통 관리 시스템은 컴퓨터 비전을 활용해 과속 위반을 자동으로 감지할 수 있습니다. 가로등과 고속도로에 설치된 카메라로 촬영한 실시간 영상을 속도 추정에 활용하고 도로 안전을 강화합니다.

속도 추정은 고속도로 안전에만 국한되지 않습니다. 스포츠, 자율주행차 및 다양한 분야에서도 사용할 수 있습니다. 이 문서에서는 컴퓨터 비전 프로젝트에서 Ultralytics YOLOv8 모델을 사용해 속도를 추정하는 방법을 살펴봅니다. 직접 시도해 볼 수 있도록 코드 예제를 단계별로 안내합니다.

속도 추정으로 간편해지는 교통 관리#

세계보건기구(WHO)에 따르면 매년 약 116만 명이 도로 교통사고로 사망하며, 과속은 주요 원인 중 하나입니다. 또한 2,000만 명에서 5,000만 명이 비치명적 부상을 입으며, 그중 상당수는 장애로 이어집니다. 속도 추정은 사고를 예방하고 생명을 구하며 도로를 안전하고 효율적으로 유지하는 데 도움이 되므로 교통 안전의 중요성은 아무리 강조해도 지나치지 않습니다.

컴퓨터 비전을 이용한 속도 추정은 비디오 프레임에서 객체를 탐지하고 추적하여 객체의 이동 속도를 계산하는 방식입니다. Ultralytics YOLOv8과 같은 모델은 연속된 프레임에서 차량 등의 객체를 식별하고 추적할 수 있습니다. 시스템은 보정된 카메라나 기준점을 사용해 객체가 이동한 거리를 측정하고 실제 거리를 파악합니다. 객체가 두 지점 사이를 이동하는 데 걸리는 시간을 측정하면 거리와 시간의 비율을 사용해 속도를 계산합니다.

Ultralytics YOLOv8 모델을 사용한 속도 추정

그림 1. Ultralytics YOLOv8 모델을 사용한 속도 추정.

과속 차량을 적발하는 것 외에도 AI 통합 속도 추정 시스템은 교통 예측에 활용할 데이터를 수집할 수 있습니다. 이러한 예측은 신호 주기와 자원 배분 최적화와 같은 교통 관리 작업에 도움이 됩니다. 교통 패턴과 혼잡 원인에 관한 인사이트를 활용하면 교통 체증을 줄이는 새 도로를 계획할 수 있습니다.

다른 산업 분야의 속도 추정 활용 사례#

속도 추정은 도로 모니터링 외에도 다양하게 활용됩니다. 선수의 경기력을 모니터링하고, 자율주행차가 주변에서 움직이는 객체의 속도를 파악하도록 돕고, 의심스러운 행동을 감지하는 데도 유용합니다. 카메라로 객체의 속도를 측정할 수 있는 곳이라면 어디서나 컴퓨터 비전 기반 속도 추정을 활용할 수 있습니다.

속도 추정이 활용되는 분야의 예시는 다음과 같습니다.

  • Tesla의 자율주행차는 충돌을 방지하기 위해 비전 기반 속도 추정을 사용합니다.
  • 스마트 시티에서는 보행 속도를 모니터링하고 도시의 이동성과 안전을 향상하기 위해 보행자 보행 분석을 연구하고 있습니다. 이러한 시스템은 운전자에게 보행자의 존재를 알리고 사고를 방지할 수 있습니다.
  • 동물 행동 모니터링 시스템은 속도 추정을 사용해 동물의 움직임을 추적하고 고통이나 질병의 징후를 감지합니다.

밤에 빨간 보행자 신호 아래 도시 교차로에서 기다리는 통근자들

그림 2. 속도 추정을 통해 사람의 보행 속도를 측정할 수 있습니다.

컴퓨터 비전을 이용한 속도 추정의 이점#

비전 기반 속도 추정 시스템은 정확도, 비용 효율성, 유연성이 높아 기존 센서 기반 방식을 대체하고 있습니다. LiDAR와 같은 고가 센서에 의존하는 시스템과 달리 컴퓨터 비전은 일반 카메라를 사용해 실시간으로 속도를 모니터링하고 분석합니다. 속도 추정을 위한 컴퓨터 비전 솔루션은 기존 교통 인프라와 통합할 수 있습니다. 또한 차량 종류 식별 및 교통 패턴 분석과 같은 여러 복잡한 작업을 수행하도록 이러한 시스템을 구축하여 전반적인 교통 흐름과 안전성을 개선할 수 있습니다.

직접 사용해 보기: Ultralytics YOLOv8을 이용한 속도 추정#

속도 추정과 활용 사례를 살펴보았으니, 코드를 통해 컴퓨터 비전 프로젝트에 속도 추정을 통합하는 방법을 자세히 알아보겠습니다. Ultralytics YOLOv8 모델을 사용해 움직이는 차량을 감지하고 속도를 추정합니다.

이 예제에서는 인터넷에서 다운로드한 도로 위 자동차 동영상을 사용합니다. 같은 동영상이나 관련된 다른 동영상을 사용할 수 있습니다. Ultralytics YOLOv8 모델은 각 차량을 탐지하고 추적하며, 속도 추정기는 비디오 프레임률과 미터/픽셀 척도를 사용해 여러 프레임에 걸쳐 추적된 각 차량이 이동한 거리를 속도로 변환합니다.

시작하기 전에 이 경우 거리 계산은 근삿값이며, 추정된 미터/픽셀 값에 유클리드 픽셀 거리를 곱해 산출한다는 점을 알아두는 것이 중요합니다. 카메라 보정은 고려되지 않으므로 속도 추정이 완전히 정확하지 않을 수 있습니다.

1단계: 먼저 Ultralytics 패키지를 설치합니다. 명령 프롬프트나 터미널을 열고 아래에 표시된 명령을 실행하세요.

pip install ultralytics

설치 단계와 모범 사례를 확인하려면 단계별 안내가 담긴 Ultralytics 설치 가이드를 참조하세요. YOLOv8에 필요한 패키지를 설치하는 중 문제가 발생하면 해결 방법과 유용한 팁이 담긴 일반적인 문제 가이드를 확인하세요.

2단계: 다음으로 필요한 라이브러리를 가져옵니다. OpenCV 라이브러리를 사용해 동영상 처리를 수행합니다.

import cv2
from ultralytics import solutions

3단계: 이 단계에서는 OpenCV의 VideoCapture 모듈을 사용해 입력 비디오 파일을 엽니다. 비디오의 너비, 높이, 초당 프레임 수 (fps)도 추출합니다.

cap = cv2.VideoCapture("path/to/video/file.mp4")
assert cap.isOpened(), "Error reading video file"
w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))

4단계: 여기서는 속도 추정의 최종 결과를 저장할 비디오 작성기를 초기화합니다. 출력 비디오 파일은 “speed_estimation.avi”로 저장됩니다.

video_writer = cv2.VideoWriter("speed_estimation.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h))

5단계: 이제 Ultralytics YOLOv8 모델과 비디오의 프레임률을 사용해 속도 추정 객체를 초기화할 수 있습니다. meter_per_pixel 값은 장면의 실제 크기를 설정하므로, 카메라 설정에 맞게 조정해도 됩니다.

speed_obj = solutions.SpeedEstimator(
    model="yolov8n.pt",
    fps=fps,
    meter_per_pixel=0.05,
    show=True,
)

프로젝트에 가장 적합한 모델을 확인하려면 지원되는 모든 모델을 살펴보세요.

6단계: 스크립트의 핵심 부분에서는 비디오를 프레임 단위로 처리합니다. 각 프레임을 읽으면 속도 추정기가 객체를 탐지 및 추적하고 속도를 추정한 다음 주석이 추가된 프레임을 반환하며, 이 프레임은 출력 비디오에 기록됩니다.

while cap.isOpened():
    success, im0 = cap.read()
    if not success:
        print("Video frame is empty or video processing has been successfully completed.")
        break
    results = speed_obj(im0)
    video_writer.write(results.plot_im)

7단계: 마지막으로 비디오 캡처 및 작성기 객체를 해제하고 열려 있는 OpenCV 창을 닫습니다.

cap.release()
video_writer.release()
cv2.destroyAllWindows()

8단계: 스크립트를 저장합니다. 터미널이나 명령 프롬프트에서 작업 중이라면 다음 명령으로 스크립트를 실행합니다:

python your_script_name.py

비전 기반 속도 추정의 과제#

컴퓨터 비전을 사용한 속도 추정을 구현할 때 발생하는 문제도 이해하는 것이 중요합니다. 비, 안개, 눈과 같은 악천후는 도로 시야를 가려 시스템에 문제를 일으킬 수 있습니다. 마찬가지로 다른 차량이나 객체로 인한 가림 현상은 시스템이 대상 차량의 속도를 정확하게 추적하고 추정하기 어렵게 만듭니다. 그림자나 햇빛으로 인한 눈부심을 유발하는 조명 상태도 속도 추정 작업을 더욱 복잡하게 만들 수 있습니다.

또 다른 과제는 연산 성능입니다. 실시간으로 속도를 추정하려면 고품질 교통 카메라에서 수집한 방대한 시각 데이터를 처리해야 합니다. 이 모든 데이터를 처리하고 지연 없이 빠르게 작동하도록 하려면 고가의 하드웨어가 필요할 수 있습니다.

개인정보 보호 문제도 있습니다. 이러한 시스템이 수집하는 데이터에는 개인의 동의 없이 수집될 수 있는 차량 제조사, 모델, 번호판 정보 등의 세부 정보가 포함될 수 있습니다. 일부 최신 HD 카메라는 차량 내부 탑승자의 이미지까지 촬영할 수 있습니다. 이러한 데이터 수집은 최대한 신중하게 다뤄야 하는 심각한 윤리적·법적 문제를 일으킬 수 있습니다.

미래를 향해 속도를 높이다#

속도 추정에 Ultralytics YOLOv8 모델을 사용하면 다양한 용도에 유연하고 효율적인 솔루션을 제공할 수 있습니다. 까다로운 환경에서의 정확도와 개인정보 보호 문제 해결 등의 과제가 있지만, 장점은 상당합니다. 컴퓨터 비전 기반 속도 추정은 기존 방식보다 비용 효율적이고 적응성이 뛰어나며 정밀합니다. 교통, 스포츠, 감시, 자율주행차 등 다양한 분야에서 유용합니다. 이점과 응용 분야를 고려하면 미래 스마트 시스템의 핵심 요소가 될 가능성이 높습니다.

AI에 관심이 있으신가요? 저희 커뮤니티에 참여해 보세요! 다양한 산업 분야에서 AI를 활용해 혁신적인 솔루션을 개발하는 방법을 알아보려면 GitHub 저장소를 살펴보고, 의료 및 농업 분야의 사례를 확인해 보세요. 함께 협업하고 혁신하며 배워 보세요!

작성자

Abirami Vina
Abirami Vina

콘텐츠 크리에이터 · Ultralytics

컴퓨터 비전 엔지니어로 경력을 시작한 Abirami Vina는 비전 AI와 머신러닝에 대한 탄탄한 기반을 다졌습니다. 그녀는 Ultralytics의 콘텐츠 제작자이자 Scribe of AI의 창립자 겸 수석 작가로, AI 중심 기업을 위한 고품질 기술 콘텐츠를 작성합니다. AI를 이해하기 쉽고 흥미롭게 만들려는 열정을 바탕으로, 그녀의 글은 최첨단 기술과 실제 영향 사이의 간극을 좁힙니다.

댓글

질문하거나 결과를 공유하거나 다른 사람을 도와주세요.

솔루션 살펴보기

스포츠 분야의 컴퓨터 비전

스포츠 분야의 컴퓨터 비전

Ultralytics YOLO가 선수 및 공 추적, 경기력 분석, 코칭 인사이트, 선수 재활을 통해 스포츠 비전을 구현하는 방법을 알아보세요.
자세히 알아보기
항공 이미지 컴퓨터 비전

항공 이미지 컴퓨터 비전

Ultralytics YOLO를 활용해 드론 및 항공 이미지를 농업, 양식업, 보전, 지리 공간 분석을 위한 실시간 인사이트로 전환하세요.
자세히 알아보기
항공우주 분야의 컴퓨터 비전

항공우주 분야의 컴퓨터 비전

Ultralytics YOLO를 활용해 항공기 검사, 활주로 FOD 감지, 공항 지상 운영, 복합재 결함 감지 등 항공우주 분야에 컴퓨터 비전을 적용하세요.
자세히 알아보기
보안 분야의 컴퓨터 비전

보안 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 모든 시설을 보호하세요. Vision AI는 경계 모니터링, 위협 감지, 번호판 인식, 작업장 안전을 지원합니다.
자세히 알아보기
로보틱스 분야의 컴퓨터 비전

로보틱스 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 더 스마트한 머신을 구현하세요. 로보틱스 분야의 Vision AI는 자율 주행, 인식, 객체 추적, 실시간 제어를 지원합니다.
자세히 알아보기
물류 분야의 컴퓨터 비전

물류 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 물류를 간소화하세요. 비전 AI는 화물 검사, 분류, 차량 추적, 실시간 창고 안전 모니터링을 지원합니다.
자세히 알아보기
리테일 분야의 컴퓨터 비전

리테일 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 리테일의 새로운 가능성을 열어 보세요. 비전 AI는 재고 추적, 선반 모니터링, 대기열 관리, 더욱 심층적인 고객 인사이트를 지원합니다.
자세히 알아보기
의료 분야의 컴퓨터 비전

의료 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 의료 솔루션을 구축하세요. 의료 분야의 비전 AI는 의료 영상 판독을 가속화하고, 진단을 개선하며, 환자 모니터링을 지원합니다.
자세히 알아보기
제조 분야의 컴퓨터 비전

제조 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 제조 공정을 최적화하세요. 비전 AI는 품질 관리, 결함 탐지, PPE 규정 준수, 조립 라인 자동화를 지원합니다.
자세히 알아보기
자동차 분야의 컴퓨터 비전

자동차 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 자동차 분야에 컴퓨터 비전을 적용하세요. 비전 AI는 도로 안전, 운전자 지원, 차량 자동화를 개선해 더 스마트한 도로를 구현합니다.
자세히 알아보기
농업 분야의 컴퓨터 비전

농업 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 스마트 농업에 비전 AI를 도입하세요. 작물 모니터링, 가축 추적, 정밀 농업을 지원하여 더 높은 수확량과 더 스마트한 농업을 실현합니다.
자세히 알아보기

함께 AI의 미래를 만들어 가세요!

머신러닝의 미래와 함께 여정을 시작하세요