Yolo 비전 선전
선전
지금 참여하기
용어집

피라미드 네트워크(FPN)

기능 피라미드 네트워크(FPN)가 어떻게 YOLO11 및 최신 CV 시스템에서 크고 작은 객체에 대한 정확도를 높여 멀티스케일 객체 감지를 지원하는지 알아보세요.

피처 피라미드 네트워크(FPN)는 컴퓨터 비전(CV)에 사용되는 특수한 아키텍처입니다. 컴퓨터 비전(CV) 분야에서 다양한 크기의 객체 탐지 성능을 향상시키기 위해 사용되는 특수한 아키텍처입니다. 이는 현대적인 많은 객체 탐지 아키텍처에서 핵심 구성 요소 역할을 합니다. 객체 탐지 아키텍처의 핵심 구성 요소로, 작은 물체를 인식하는 데 어려움을 겪는 기존 탐지기의에서 핵심 구성 요소로, 작은 물체를 인식하는 데 어려움을 겪는 기존 탐지기의 한계를 극복하도록 설계되었습니다. 단일 해상도 입력 이미지로부터 다중 스케일 피라미드 특징을 생성함으로써, FPN은 모델이 큰 구조물과 미세한 세부 사항 detect 높은 정확도로 detect 수 있게 합니다. 이 아키텍처는 일반적으로 백본 (특징 추출)과 검출 헤드 검출 헤드 (클래스와 박스 예측) 사이에 위치하여 최종 레이어로 전달되는 의미 정보를 효과적으로 풍부하게 합니다.

FPN 아키텍처 이해하기

FPN의 주요 목표는 심층 신경망의 고유한 다중 스케일 피라미드형 계층 구조를 활용하는 것이다. 컨볼루션 신경망(CNN)의 고유한 다중 스케일 피라미드형 계층 구조를 활용하는 동시에 다중 이미지 스케일을 별도로 처리하는 데 따르는 계산 비용을 줄이는 것입니다. 이 아키텍처는 시각 데이터를 처리하는 세 가지 주요 경로로 구성됩니다:

  1. 상향식 경로: 이는 ResNet과 같은 백본 네트워크의 피드포워드 계산입니다. 잔차 네트워크(ResNet). 이미지가 레이어를 통과할수록 공간 해상도는 감소(이미지가 작아짐)하는 반면 의미적 가치(이미지 내 대상의 맥락)는 증가합니다.
  2. 탑다운 경로: 이 단계는 공간적으로 더 거칠지만 의미론적으로 더 강력한 피처 맵을 업샘플링하여 고해상도 특징을 환각합니다. 을 상향 샘플링하여 고해상도 특징을 환각합니다. 이는 상향식 과정에서 손실된 공간적 세부 정보를 복원합니다.
  3. 측면 연결: 이러한 연결은 상향 경로에서 업샘플링된 특징 맵을 하향 경로의 대응하는 특징 맵과 병합합니다. 이 융합은 고수준 의미적 맥락과 저수준 질감 및 에지 정보를 결합하여 정밀도를을 크게 향상시킵니다. FPN 연구 논문은 이 기법이 표준 벤치마크에서 최첨단 성능을 달성하는 방식을 입증합니다.

현대 인공지능에서의 중요성

FPN 이전에는 객체 탐지기가 일반적으로 최상위 레이어만 사용(큰 객체에는 좋으나 작은 객체에는 불리)하거나 이미지 피라미드를 처리(느리고 계산 비용이 높음)하는 것 중 하나를 선택해야 했습니다. FPN은 "두 가지 장점을 모두 갖춘" 해결책을 제공합니다. 이 기능은 실시간 추론에 필수적이며, YOLO26YOLO11 과 같은 고급 모델이 화면의 몇 픽셀만 차지하는 객체를 정확히 식별하면서도 높은 프레임 속도를 유지할 수 있게 합니다.

실제 애플리케이션

멀티스케일 데이터를 처리할 수 있는 기능 덕분에 FPN은 다음과 같은 다양한 산업에서 필수 불가결한 존재가 되었습니다. 인공 지능(AI).

FPN 대 BiFPN 및 PANet

FPN이 특징 추출에 혁명을 일으켰지만, 새로운 아키텍처들은 이 개념을 더욱 정교화했습니다.

  • BiFPN (양방향 피라미드 네트워크): EfficientDet에 사용되며, 다양한 입력 특징의 중요도를 학습하기 위한 학습 가능한 가중치를 도입하고 기존의 하향식 경로에 상향식 경로를 추가합니다.
  • PANet(경로 집계 네트워크): YOLO 흔히 사용되는 PANet은 FPN 구조에 추가적인 하향식 경로를 도입하여 저수준 특징의 정보 전달 경로를 단축함으로써 위치 추정 정확도를 더욱 향상시킵니다.
  • Ultralytics YOLO : YOLO26과 같은 최신 버전은 속도와 평균 정밀도(mAP).

구현 예시

딥 러닝 라이브러리와 Ultralytics FPN의 복잡성을 내부적으로 처리합니다. 다음 예시는 detect 위해 피처 피라미드 구조를 활용하는 모델을 로드하는 방법을 보여줍니다.

from ultralytics import YOLO

# Load the YOLO26 model, which utilizes an advanced feature pyramid architecture
# The 'n' suffix stands for nano, a lightweight version of the model
model = YOLO("yolo26n.pt")

# Run inference on an image to detect objects ranging from small to large
# The model internally uses its FPN neck to aggregate features at multiple scales
results = model.predict("https://ultralytics.com/images/bus.jpg")

# Display the resulting bounding boxes and class labels
results[0].show()

Ultralytics 커뮤니티 가입

AI의 미래에 동참하세요. 글로벌 혁신가들과 연결하고, 협력하고, 성장하세요.

지금 참여하기