Panoptic Segmentation
파놉틱 세그멘테이션이 시맨틱 세그멘테이션과 인스턴스 세그멘테이션을 통합하는 방식을 살펴보세요. Ultralytics YOLO26이 AI 프로젝트에서 정밀한 장면 이해를 제공하는 방법을 알아보세요.
파놉틱 세그멘테이션은 두 가지 서로 다른 이미지 분석 방식인 시맨틱 세그멘테이션과 인스턴스 세그멘테이션을 통합하는 종합적인 컴퓨터 비전 (CV) 작업입니다. 기존 방식에서는 이러한 작업을 별도로 처리하여 "하늘"이나 "잔디"와 같은 배경 영역을 일반적으로 분류하거나, "자동차"나 "사람"과 같은 특정 객체를 탐지합니다. 반면 파놉틱 세그멘테이션은 이를 하나의 일관된 프레임워크로 결합합니다. 이 접근 방식은 이미지의 모든 픽셀에 고유한 값을 할당하여 장면을 완전히 이해하도록 하며, 셀 수 있는 객체(이를 "things"라고 함)와 형태가 불분명한 배경 영역(이를 "stuff"라고 함)을 구분합니다. 모든 픽셀이 누락 없이 고려되고 분류되도록 함으로써, 이 기법은 개별적으로 수행되는 탐지 방식보다 인간의 시각적 인식을 더욱 유사하게 모방합니다.
핵심 개념: Stuff와 Things#
파놉틱 세그멘테이션을 완전히 이해하려면 처리되는 시각 정보의 이분법을 이해하는 것이 도움이 됩니다. 이 작업은 시각적 세계를 다음 두 가지 주요 범주로 나눕니다.
- Stuff 범주: 셀 수 없는 유사한 텍스처나 재질의 형태가 불분명한 영역을 나타냅니다. 예로 도로, 물, 잔디, 하늘, 벽 등이 있습니다. 파놉틱 분석에서는 "도로"에 속하는 모든 픽셀을 하나의 시맨틱 영역으로 그룹화합니다. 일반적으로 "도로 구간 A"와 "도로 구간 B"를 구분하는 것은 중요하지 않기 때문입니다.
- Things 범주: 명확한 기하 구조와 경계를 가진 셀 수 있는 객체입니다. 예로 보행자, 차량, 동물, 도구 등이 있습니다. 파놉틱 모델은 각 "thing"을 고유한 개체로 식별해야 하므로, 나란히 서 있는 두 사람이 하나로 합쳐진 덩어리가 아니라 별도의 인스턴스(예: "Person A"와 "Person B")로 인식되도록 합니다.
이러한 구분은 고급 인공지능 (AI) 시스템에 매우 중요하며, 시스템이 특정 객체와 동시에 상호작용하면서 환경을 탐색할 수 있도록 합니다.
파놉틱 아키텍처의 작동 방식#
최신 파놉틱 세그멘테이션 아키텍처는 일반적으로 강력한 딥러닝 (DL) 백본을 사용합니다. 예를 들어 합성곱 신경망 (CNN)이나 비전 Transformer (ViT)을 사용하여 이미지에서 풍부한 특징 표현을 추출합니다. 네트워크는 일반적으로 다음과 같이 두 개의 브랜치 또는 "헤드"로 나뉩니다.
-
시맨틱 헤드: 이 브랜치는 모든 픽셀의 클래스 라벨을 예측하여 장면의 "stuff"를 나타내는 밀집 맵을 생성합니다.
-
인스턴스 헤드: 동시에 이 브랜치는 객체 탐지와 유사한 기법을 사용하여 "things"의 위치를 파악하고 해당 객체의 마스크를 생성합니다.
그런 다음 퓨전 모듈 또는 후처리 단계에서 이러한 출력 간의 충돌을 해결합니다. 예를 들어 픽셀이 "사람" 인스턴스에 속하는지, 사람 뒤의 "배경" 벽에 속하는지를 결정하여 최종적으로 서로 겹치지 않는 파놉틱 세그멘테이션 맵을 생성합니다.
실제 적용 사례#
파놉틱 세그멘테이션의 전체론적 특성은 안전과 맥락이 매우 중요한 산업에서 필수적입니다.
- 자율주행 차량: 자율주행 자동차는 안전하게 주행하기 위해 파놉틱 인식에 의존합니다. 시맨틱 구성 요소는 주행 가능한 표면(도로)과 경계(보도)를 식별하고, 인스턴스 구성 요소는 보행자와 다른 차량 같은 동적 장애물을 추적합니다. 이러한 통합된 관점은 복잡한 교통 관리 상황에서 차량의 계획 알고리즘이 더 안전한 결정을 내리는 데 도움이 됩니다.
- 의료 이미지 분석: 디지털 병리학에서는 조직 샘플을 분석할 때 일반적인 조직 구조(stuff)를 세그먼테이션하는 동시에 특정 세포 유형이나 종양(things)을 세고 측정해야 하는 경우가 많습니다. 이러한 세부적인 분석은 의사가 질병을 정확하게 정량화하고 진단하는 데 도움이 됩니다.
- 로보틱스: 가정이나 창고와 같은 비정형 환경에서 작동하는 서비스 로봇은 이동할 수 있는 바닥(배경)과 조작하거나 피해야 하는 객체(인스턴스)를 구분해야 합니다.
Ultralytics를 사용한 세그멘테이션 구현#
전체 파놉틱 학습은 복잡할 수 있지만, 개발자는 파놉틱 문제의 핵심 구성 요소인 고정밀 인스턴스 세그멘테이션을 Ultralytics YOLO26을 사용하여 구현할 수 있습니다. 이 최첨단 모델은 실시간 성능을 제공하며 엣지 배포에 최적화되어 있습니다.
다음 Python 예제에서는 사전 학습된 세그멘테이션 모델을 로드하고 추론을 실행하여 서로 다른 객체를 분리하는 방법을 보여줍니다.
from ultralytics import YOLO
# Load the YOLO26 segmentation model
model = YOLO("yolo26n-seg.pt")
# Run inference on an image to segment individual instances
# The model identifies 'things' and generates pixel-perfect masks
results = model("https://ultralytics.com/images/bus.jpg")
# Display the resulting image with overlaid segmentation masks
results[0].show()학습 데이터를 관리하고 어노테이션 프로세스를 자동화하려는 팀을 위해 Ultralytics Platform은 데이터셋 관리와 모델 학습을 위한 도구 모음을 제공합니다. 고품질 데이터 어노테이션은 세그멘테이션 작업에 매우 중요합니다. 모델이 효과적으로 학습하려면 정밀한 픽셀 수준 라벨이 필요하기 때문입니다.
관련 용어 구분#
프로젝트에 적합한 모델을 선택하려면 세그멘테이션 유형 간의 차이를 이해하는 것이 중요합니다.
- 시맨틱 세그멘테이션: 픽셀을 범주로 분류하는 데만 중점을 둡니다. "이 픽셀은 어떤 클래스인가?"(예: 나무, 하늘)라는 질문에는 답할 수 있지만, 같은 클래스에 속한 개별 객체를 구분할 수는 없습니다. 두 대의 자동차가 겹쳐 있으면 하나의 큰 "자동차" 덩어리로 나타납니다.
- 인스턴스 세그멘테이션: 셀 수 있는 객체를 탐지하고 마스킹하는 데만 중점을 둡니다. "이 객체는 어느 것인가?"라는 질문에는 답할 수 있지만, 일반적으로 배경 맥락은 완전히 무시합니다.
- 파놉틱 세그멘테이션: 두 방식을 결합합니다. 이미지 전체에서 "이 픽셀은 무엇인가?"와 "이 픽셀은 어느 객체 인스턴스에 속하는가?"라는 질문에 답하여 분류되지 않은 픽셀이 없도록 합니다.
이러한 작업에 사용되는 데이터셋 형식을 더 자세히 살펴보려면, 세그멘테이션 성능을 측정하는 표준 벤치마크인 COCO 데이터셋 문서를 검토할 수 있습니다.









