Object Detection
객체 검출은 이미지에서 모든 객체를 찾아 각각의 바운딩 박스, 클래스 레이블, 신뢰도 점수를 반환합니다. 검출기의 작동 및 평가 방식을 살펴봅니다.
객체 탐지는 이미지나 비디오 프레임에서 알려진 클래스의 모든 인스턴스를 찾아 각각의 위치를 표시하는 컴퓨터 비전 작업입니다. 각 객체에 대해 바운딩 박스, 클래스 레이블, 신뢰도 점수를 반환하므로, 거리 사진은 자동차, 사람, 신호등마다 하나씩 표시된 박스 목록으로 변환됩니다. 이 목록은 개수 세기, 측정, 추적, 로봇 제어의 입력으로 사용됩니다.
탐지기가 반환하는 결과#
각 탐지 결과는 세 부분으로 구성됩니다. 박스는 모서리 좌표(x1, y1, x2, y2) 또는 중심점과 너비 및 높이로 저장되며, 단위는 픽셀 또는 이미지 크기에 대한 정규화 값입니다. 클래스는 COCO 데이터셋의 80개 카테고리처럼 모델의 라벨 집합을 참조하는 인덱스입니다. 0과 1 사이의 점수는 박스에 해당 클래스가 포함될 가능성을 나타내며, 애플리케이션은 미탐과 오탐 사이의 균형을 고려해 신뢰도 임계값을 초과하는 탐지만 유지합니다.
from ultralytics import YOLO
# Load a YOLO26 nano detector pretrained on the 80 COCO classes
model = YOLO("yolo26n.pt")
# Run detection on one image
results = model("https://ultralytics.com/images/bus.jpg")
result = results[0]
# Each detection carries a class, a confidence score, and a box in pixels
for box in result.boxes:
name = result.names[int(box.cls)]
corners = box.xyxy[0].int().tolist()
print(f"{name} {box.conf.item():.2f} {corners}")출력되는 각 줄은 하나의 탐지된 객체를 나타내며, 클래스 이름과 신뢰도, 왼쪽 위 및 오른쪽 아래 모서리의 픽셀 좌표를 표시합니다.
객체 탐지기의 작동 방식#
최신 탐지기는 세 단계로 구성된 신경망입니다. 일반적으로 컨볼루션 네트워크 또는 비전 트랜스포머인 백본은 이미지를 특징 맵으로 변환합니다. 특징 피라미드 네트워크와 같은 넥은 여러 스케일의 특징 맵을 결합해 작은 객체와 큰 객체를 모두 표현합니다. 그런 다음 탐지 헤드가 수천 개 위치에서 클래스 점수와 박스 좌표를 예측합니다. 인접한 위치에서 동일한 객체가 탐지되므로 원시 출력에는 서로 겹치는 후보가 다수 포함됩니다. 대부분의 파이프라인은 점수가 낮은 박스를 제거하고 비최대 억제(NMS)를 실행해 객체마다 박스 하나만 남깁니다. 종단 간 탐지기인 DETR 등은 객체마다 예측을 정확히 하나씩 출력하도록 학습되므로 이 단계를 생략합니다.
탐지기 설계는 후보를 찾는 방식에 따라 다릅니다. 2단계 탐지기인 Faster R-CNN 등은 먼저 객체가 있을 만한 영역을 제안한 다음 각 영역을 분류하고 보정합니다. 2015년에 등장한 YOLO 등의 1단계 탐지기는 한 번의 패스로 모든 박스와 클래스를 예측해 실시간 탐지를 실용화했습니다. 초기 1단계 모델은 미리 정의된 앵커 박스의 오프셋을 회귀했지만, 앵커 프리 탐지기는 그리드 지점에서 박스의 네 모서리까지의 거리를 직접 예측합니다. YOLO26은 기본적으로 NMS를 적용하는 1단계 앵커 프리 탐지기이며, nms=False을 전달하면 일대일 헤드로 전환되어 NMS 단계 없이 최종 박스를 출력합니다.
학습 및 평가#
탐지기는 모든 객체에 박스와 클래스를 표시한 이미지를 사용해 학습합니다. 학습 중 레이블 할당 단계에서는 각 레이블 객체를 담당할 예측을 결정하고, 손실 함수는 일반적으로 예측 박스와 레이블 박스의 겹치는 정도인 교집합 대비 합집합(IoU)을 기반으로 하는 박스 회귀 항과 분류 항을 결합합니다. 평가에서도 IoU를 사용합니다. 클래스가 일치하고 레이블 박스와의 IoU가 임계값에 도달하면 탐지 결과가 정답으로 처리됩니다. 이어서 평균 정밀도(mAP)는 모든 신뢰도 수준과 클래스의 정밀도 및 재현율을 요약합니다. COCO는 IoU 0.5에서 평가한 mAP50을 보고하며, 0.50~0.95의 IoU 임계값 10개에 대한 평균인 mAP50-95를 주요 지표로 사용합니다. VLM 리더보드는 클래스 이름만으로 객체를 탐지하는 비전 언어 모델을 비교할 때 mAP50을 사용합니다. Ultralytics Platform은 YOLO26이 레이블을 학습하기 전에 이러한 모델을 사용해 탐지 데이터셋에 자동으로 어노테이션을 추가합니다.
실제 적용 사례#
- 자율주행: 운전자 보조 및 자율주행 시스템은 모든 카메라 프레임에서 차량, 보행자, 자전거 이용자, 교통 표지판을 탐지하며, 추적 및 경로 계획은 이 박스를 기반으로 작동합니다.
- 리테일: 선반 카메라는 제품과 비어 있는 진열 공간을 탐지해 품절 상품을 표시하고, 셀프 계산 시스템은 계산대에 놓인 상품을 탐지합니다.
- 제조 검사: 생산 라인의 카메라는 부품이 지나갈 때 흠집, 찌그러짐, 누락된 구성 요소를 탐지해 결함이 있는 부품을 걸러냅니다.










