My IBM 로그인 구독하기

인스턴스 분할이란 무엇인가요?

작성자

Dave Bergmann

Senior Writer, AI Models

IBM

Cole Stryker

Editorial Lead, AI Models

Gather

인스턴스 분할이란 무엇인가요?

인스턴스 분할은 딥 러닝 기반의 컴퓨팅 비전 작업으로, 이미지 내 개별 객체의 픽셀 단위 경계를 정확하게 예측합니다.

인스턴스 분할은 이미지 분할이라는 더 큰 영역의 하위 집합으로, 기존의 객체 감지 알고리즘보다 더 상세하고 정교한 결과물을 제공합니다. 다른 이미지 분할 작업으로는 이미지의 각 픽셀을 ‘사물’이나 ‘물질’ 카테고리와 같은 시맨틱 클래스로 분류하는 시맨틱 분할과, 인스턴스 분할과 시맨틱 분할의 목적을 모두 결합한 판옵틱 분할이 있습니다.

인스턴스 분할은 의료 이미지 분석부터 위성 이미지에서 관심 객체 감지, 자율 주행 자동차의 항법 기능 지원 등에 이르기까지 여러 산업 분야에 걸쳐 다양한 이미지 처리 사용 사례를 보유하고 있습니다.

인스턴스 분할과 객체 감지 비교

인스턴스 분할 작업과 기존 객체 감지의 가장 큰 차이점은 인스턴스 분할은 각 객체의 픽셀 단위 경계를 예측하는 반면, 객체 감지는 객체의 대략적인 위치만 예측한다는 점입니다.

기존의 객체 감지 방법은 이미지 분류와 객체 위치 파악을 결합하여 발전한 방식입니다. 예를 들어, ‘자동차’나 ‘보행자’와 같은 관련 객체 카테고리의 시각적 패턴을 인식하도록 다양한 머신 러닝 알고리즘으로 학습된 자율 주행 모델과 같은 객체 감지 모델은 입력 이미지의 시각 데이터를 분석하여 관련 객체 인스턴스에 주석을 달고, 각 인스턴스의 위치를 직사각형 영역의 ‘경계 상자’로 표시합니다.

인스턴스 분할 시스템 역시 이미지 내 객체를 감지하지만 훨씬 더 세밀하게 수행합니다. 객체 인스턴스의 대략적 위치를 나타내는 경계 상자 대신, 인스턴스 분할 알고리즘은 각 인스턴스의 정확한 형태와 영역을 픽셀 단위로 표시하는 ‘분할 마스크’를 생성합니다.

Mask R-CNN과 같은 많은 선도적인 인스턴스 분할 모델 아키텍처는 분할 마스크를 생성하는 과정에서 예비 단계로 기존의 객체 감지를 수행합니다. 이러한 ‘2단계’ 모델은 일반적으로 속도 면에서는 성능이 다소 떨어질 수 있지만, 최첨단의 정확성을 지원합니다.

트랙에서 굴러가는 공의 3D 디자인

최신 AI 뉴스 + 인사이트 


주간 Think 뉴스레터에서 AI, 클라우드 등에 대한 전문적으로 선별된 인사이트와 뉴스를 발견하세요. 

인스턴스 분할과 시맨틱 분할 비교

시맨틱 분할은 인스턴스 분할보다 복잡성이 낮은 작업입니다. 인스턴스 분할과 달리, 시맨틱 분할은 서로 다른 인스턴스를 구분하거나 그 개수를 세는 것에 초점을 두지 않습니다. 시맨틱 분할의 유일한 목표는 이미지 내 각 픽셀에 시맨틱 클래스 레이블로 주석을 다는 것입니다.

시맨틱 분할 모델은 ‘자동차’나 ‘사람’과 같이 구체적인 형태를 가진 셀 수 있는 개체(thing)의 클래스와 ‘하늘’이나 ‘도로’처럼 형태가 일정하지 않은 셀 수 없는 개체(stuff)의 클래스를 구분하지 않습니다.

따라서 동일한 셀 수 있는 개체(thing) 클래스에 속하는 여러 객체 인스턴스가 서로 인접하거나 겹쳐 있는 경우, 시맨틱 분할 모델은 이를 단일 이미지 세그먼트로 그룹화합니다. 예를 들어, 이 이미지에서 도로 양쪽에 나란히 주차된 자동차들을 시맨틱 분할 모델이 어떻게 처리하는지 생각해 보세요. 시맨틱 분할 모델은 이 모든 자동차를 하나의 이미지 영역으로 처리합니다.

반대로, 인스턴스 분할 모델은 셀 수 있는 개별 개체(thing)에 대한 분할 마스크를 감지하고 생성하는 데에만 집중합니다. 인스턴스 분할 모델은 동일한 클래스에 속하더라도, 가려진 인스턴스를 포함하여 각각의 다른 객체 인스턴스를 명확히 설명할 수 있어야 합니다.

인스턴스 분할과 판옵틱 분할 비교

판옵틱 분할은 이미지의 모든 픽셀을 시맨틱 클래스별로 분류하는 동시에, 각기 다른 객체 인스턴스를 명확히 구분하는 작업을 모두 포함합니다.

판옵틱 분할 모델은 이론적으로 인스턴스 분할을 수행할 수 있지만, 출력에 인스턴스 분할 작업과 꼭 필요하지 않은 추가 정보가 포함되므로 계산 비용이 훨씬 더 많이 듭니다.

초기의 판옵틱 분할 시도는 단순히 인스턴스 분할과 시맨틱 분할을 각각 수행한 후, 후처리 단계에서 두 결과를 결합하는 방식으로 이루어졌습니다. 이 방법은 계산 효율성이 낮으며, 시맨틱 모델과 인스턴스 모델의 출력 데이터 간 불일치를 해결하는 데 어려움이 있습니다.

조금 더 최근의 방식은 공통된 ‘백본’에 시맨틱 분할 ‘헤드’와 인스턴스 분할 ‘헤드’를 연결하는 것입니다. 이 백본은 주로 특징 피라미드 네트워크(FPN)과 같은 특징 추출을 수행하는 데 사용되며, 관련된 시각 데이터를 분리하는 역할을 합니다. 이 방법은 효율성을 높이고, 데이터 출력 간의 불일치를 제거합니다.

인스턴스 분할 사용 사례

인스턴스 분할은 다양한 컴퓨팅 비전 작업에 필수입니다.

  •  의료 영상: 인스턴스 분할은 종양과 같이 조직과 병리의 특정 경계를 감지하는 데 사용됩니다.
  • 자율 주행: 자율 주행 자동차는 인스턴스 분할을 통해 자동차, 물체, 사람, 신호등과 같은 도로 특징을 정확히 감지하고 분류할 수 있습니다.
  • 위성 이미지: 인스턴스 분할은 도로를 따라 위치한 여러 건물을 구별하는 등, GPS 용도로 필요한 개별 객체를 식별하고 분리하는 데 도움이 될 수 있습니다.
  • 로보틱: 인스턴스 분할을 사용하면 물품을 분류하고 결함을 감지할 수 있으며, 자율 주행 자동차와 마찬가지로 로봇이 주변 환경의 물체를 식별하고 탐색할 수 있습니다.
Mixture of Experts | 팟캐스트

AI 디코딩: 주간 뉴스 요약

세계적인 수준의 엔지니어, 연구원, 제품 리더 등으로 구성된 패널과 함께 불필요한 AI 잡음을 차단하고 실질적인 AI 최신 소식과 인사이트를 확인해 보세요.

인스턴스 분할은 어떻게 작동하나요?

딥 러닝은 인스턴스 분할에서 필수적인 요소가 되었으며, 거의 모든 최신 이미지 분할 방법은 신경망을 활용합니다. 최근에는 트랜스포머 모델이 실행 가능한 대안으로 떠오르고 있지만, 인스턴스 분할을 포함한 대부분의 이미지 분할 방법은 여전히 어떤 형태로든 컨볼루션 신경망(CNN)을 활용하고 있습니다.

CNN 기반의 인스턴스 분할 모델은 크게 두 가지 카테고리로 나뉩니다.

  • 2단계 모델(예: Mask R-CNN)은 먼저 객체 감지를 수행한 후, 객체 분할 마스크를 생성합니다.
  • 원샷(또는 단일 단계) 모델(예: YOLACT)은 두 작업을 동시에 수행합니다.

CNN 기반 및 트랜스포머 기반 인스턴스 분할 모델 모두 인코더-디코더 구조를 사용합니다. 이 구조에서는 인코더 네트워크가 입력 이미지에서 관련 데이터를 추출하고, 디코더 네트워크가 추출된 특징 데이터를 사용하여 분할 맵으로 이미지를 재구성합니다.

인스턴스 분할 모델을 이해하려면 그 구성 요소를 이해하는 것이 도움이 됩니다.

컨볼루션 신경망(CNN)

간단한 CNN은 이미지 분류와 (단일 객체를 포함하는 이미지의 경우) 객체 분류를 수행할 수 있습니다.

수학적 알고리즘이 이미지와 호환되려면 이미지를 숫자 형식으로 표현해야 합니다. CNN은 RGB 입력 이미지를 3차원(3D) 픽셀 배열로 처리하며, 여기서 픽셀의 3차원은 각각 R(ed), G(reen), (B)lue 값을 나타냅니다.

기존 CNN에는 다음과 같이 세 가지 유형의 레이어가 있습니다.

  • 컨볼루션 레이어는 커널이라고 하는 2차원 필터를 사용하여 이미지에서 관련 특징을 추출하기 위해 컨볼루션을 수행합니다. 각 컨볼루션이 끝나면 커널은 인접한 영역으로 이동하며 전체 이미지를 순회할 때까지 이 과정을 반복합니다. 이 특징 추출의 결과물은 특징 맵입니다.

  • 풀링 레이어는 특징 맵의 데이터를 압축하는 역할을 합니다. 다운샘플링 또는 차원 축소라고도 하는 이 프로세스는 계산 효율성을 높이고 모델 학습에서 과적합의 위험을 줄입니다.

  • 완전 연결 레이어는 신경망의 모든 노드에서 시각 데이터를 수신하고 대조하며(즉 '완전 연결'), 이미지가 인식하도록 학습된 카테고리 중 하나와 일치하는지 예측합니다.

컨볼루션 레이어를 추가하면 정확도를 높일 수 있지만, 너무 많은 레이어를 추가하면 기울기 소실 문제가 발생하여 모델 최적화를 방해할 수 있습니다. ResNet 아키텍처는 이 문제를 해결하여 CNN이 수백, 또는 수천 개의 레이어를 가질 수 있도록 길을 열었습니다.

영역 기반 CNN(R-CNN)

R-CNN은 표준 CNN으로는 달성할 수 없는 복잡한 다중 객체 감지 작업을 해결하기 위해 개발되었습니다. 이후 발전된 형태인 Faster R-CNN은 많은 인스턴스 분할 모델의 필수 구성 요소가 되었습니다.

R-CNN은 이미지 수준이 아닌 객체 수준에서 예측하기 위해 영역 제안 개념을 도입했습니다. R-CNN은 선택적 검색을 사용하여 객체를 포함할 수 있는 약 2,000개의 겹치는 상자를 제안하고, 각 '객체 제안'을 CNN에 입력하여 특징을 추출합니다. 이후 서포트 벡터 머신(SVM) 알고리즘을 사용하여 객체를 분류하고 경계 상자를 생성합니다.

Fast R-CNN은 먼저 전체 이미지를 CNN에 입력하여 특징을 추출한 후, 그 결과물인 특징 맵을 사용하여 관심 영역(RoI)을 식별하는 방식으로 R-CNN의 속도를 크게 개선했습니다. 곧이어 Faster R-CNN은 더 느리고 학습이 불가능한 선택적 검색 알고리즘을 대체하기 위해 학습 가능한 영역 제안 네트워크(RPN)를 도입하여 속도와 정확도를 더욱 개선했습니다.

완전 컨볼루션 네트워크

FCN은 간단한 CNN의 고정되고 완전히 연결된 레이어를 추가 컨볼루션 및 풀링 레이어로 대체하여 ‘완전 컨볼루션(Fully Convolutional)’이라고 합니다. FCN의 출현으로 이미지 분할의 새로운 시대가 열렸습니다.

기존 CNN과 마찬가지로 FCN은 특징 추출과 다운샘플링을 위해 ResNet 또는 VGG와 같은 인코더 네트워크를 사용합니다. 하지만 인코딩된 데이터를 완전히 연결된 레이어로 전달하여 전체 이미지를 분류하는 대신, FCN은 압축된 특징 데이터를 분류하고 업샘플링하여 픽셀 단위의 분할 마스크로 원본 이미지를 재구성하는 ‘디코더’ 네트워크 레이어를 통해 인코딩된 데이터를 전달합니다.

당연히 다운샘플링 과정에서 일부 데이터가 손실됩니다. 후속 FCN 변형 모델인 U-Net과 같은 경우, 일부 컨볼루션 계층을 선택적으로 우회하는 스킵 연결을 도입하여 더 세부적인 정보를 보존할 수 있게 되었습니다.

Mask R-CNN

Mask R-CNN 아키텍처는 Faster R-CNN의 객체 감지와 FCN의 분할 기능을 결합하여 인스턴스 분할 분야에서 획기적인 발전을 이루었습니다.

RPN이 제안된 객체에 대한 경계 상자를 생성하고, 나머지 Faster R-CNN 네트워크가 객체가 있는 영역 제안을 확인한 후(그리고 객체 경계 상자의 정확도를 높이기 위해 회귀를 수행), FCN이 각 경계 상자 내에 있는 객체의 분할 마스크를 생성합니다.

이 프로세스는 객체가 가려진 경우에도 효과적입니다. Faster R-CNN 네트워크는 각 객체 인스턴스를 구별할 수 있으므로 객체를 개별적으로 분할할 수 있기 때문입니다.

원샷(단일 단계) 모델

제조 조립 라인에서 불량품을 감지하는 작업과 같이 인스턴스 분할의 특정 응용 분야에는 실시간 결과가 필요합니다. 단일 단계 모델은 속도가 최우선인 사용 사례를 위해 개발되었습니다.

Mask R-CNN과 같은 2단계 모델은 매우 정확하지만 본질적으로 순차적인 접근 방식이기 때문에 속도를 높이기가 어렵습니다. YOLACT(You Only Look At CoefficienTs)와 같은 원샷 인스턴스 분할 모델은 YOLO(You Only Look Once)와 같은 단일 단계 객체 감지 모델을 기반으로 합니다.

YOLACT에서 FPN은 고해상도 특징 맵을 생성하여 두 개의 병렬 브랜치로 전달합니다. 하나의 FCN 브랜치는 잠재적인 객체 인스턴스에 대한 k개의 ‘프로토타입 마스크’를 제안합니다. 동시에 완전 연결 레이어로 구성된 또 다른 브랜치는 영역 제안과 유사한 다수의 ‘앵커 박스’를 생성하며, 각 프로토타입 마스크에 대한 k개의 ‘마스크 계수’를 예측합니다. 이 계수는 제안된 객체가 제안된 분할 마스크와 일치할 가능성을 나타냅니다. 비최대 억제(NMS)는 마스크 계수가 가장 높은 제안된 인스턴스를 필터링하는 데 사용됩니다.

변환기 모델

최근 인스턴스 분할 및 판옵틱 분할 분야에서 이루어진 혁신은 자연어 처리 분야에서의 성공을 바탕으로 변환기 모델을 탐색하는 방향으로 발전하고 있습니다. 비전 트랜스포머(ViT)와 같은 모델은 컨볼루션 대신 셀프 어텐션 메커니즘을 활용하여 이미지의 시각적 컨텍스트를 전체적으로 분석할 수 있도록 설계되었습니다.

극복해야 할 주요 과제는 계산의 필요성에 관한 것으로, 셀프 어텐션의 계산 복잡성이 이미지 크기에 따라 제곱으로 증가한다는 점입니다. Swin Transformer는 기존의 슬라이딩 스트라이드 대신 이동식 윈도우(shifted window) 방식을 적용하여 비중첩 셀프 어텐션 레이어를 생성하므로, 계산 복잡도가 이미지 크기에 따라 선형적으로 증가합니다. 현재 Swin 기반 모델은 선도적인 CNN 기반 프레임워크의 정확도에 필적합니다.

인스턴스 분할 모델 학습

인스턴스 분할에 사용되는 딥 러닝 알고리즘을 포함한 머신 러닝 알고리즘은 반드시 학습이 필요합니다. CNN 기반 모델과 트랜스포머 기반 모델 모두 역전파를 통해 학습됩니다. 이 모델들은 주석이 달린 학습 이미지를 역설계하여 해당 작업에 적절한 가중치와 편향을 학습합니다.

학습 데이터의 주석은 적절한 머신 러닝 성능을 극대화하고, 학습된 모델을 평가하고 최적화하는 기준인 “정답 데이터(ground truth)” 벤치마크 역할을 하기 때문에 매우 정확해야 합니다. 인간의 능력은 가장 정확한 컴퓨팅 비전 모델을 훨씬 능가하기 때문에 이 주석 작업은 비용이 많이 들고 노동 집약적인 프로세스인 수작업으로 이루어집니다.

맞춤형 데이터 세트를 구축하는 데 드는 시간과 비용을 절감하기 위해, 대부분의 모델은 대규모 오픈 소스 학습 데이터 세트를 활용하거나 사전 학습된 인코더 네트워크를 미세 조정하여 보다 특정한 시각적 작업을 수행할 수 있도록 합니다. 일반적으로 사용되는 오픈 소스 이미지 데이터 세트는 다음과 같습니다.

  • COCO(Common Objects in Context): 80개의 셀 수 있는 개체(thing) 카테고리와 91개의 셀 수 없는 개체(stuff) 카테고리에 걸쳐 주석이 달린 33만 개 이상의 이미지가 포함된 대규모 데이터 세트

  • ADE20K: MIT에서 만든 장면 분할 데이터 세트로, 150개 이상의 시맨틱 클래스가 있는 2만 개 이상의 이미지 포함

  • Cityscapes: 도시 거리에 초점을 맞춘 대규모 데이터 세트로, 다양한 시간대, 계절, 날씨 조건에서 50개 도시의 이미지 포함

인스턴스 분할 모델 평가

인스턴스 분할 및 객체 감지 성능에 가장 일반적으로 적용되는 측정 기준은 IoU(Intersection over Union)와 AP(Average Precision)입니다. 이러한 메트릭은 주로 ‘COCO 데이터 세트에서 AP 54.4’와 같이 벤치마크 데이터 세트 대비 성능으로 표현됩니다.

Intersection over Union(IoU)

IoU는 모델이 예측한 분할 마스크와 실제 정답(ground truth) 마스크 간의 픽셀 단위가 겹치는 정도를 측정하며, 백분율 또는 0에서 1 사이의 정수로 표기됩니다. 여러 인스턴스가 있는 이미지의 경우 평균 IoU(mIoU)가 사용됩니다.

IoU는 직관적이지만 몇 가지 중요한 한계가 있습니다.

  • 지나치게 광범위한 예측에 높은 점수를 부여합니다. 분할 마스크가 지나치게 크더라도, 정답 마스크가 그 안에 포함되어 있으면 IoU 값은 1로 완벽한 점수를 얻게 됩니다.
  • 손실 함수로 사용할 수 없습니다. 겹치는 부분이 아예 없는 잘못된 예측의 경우, 약간 틀렸든 크게 틀렸든 겹치는 정도와 관계없이 IoU 값은 0이 됩니다. 즉 IoU는 미분할 수 없는 메트릭이므로, 알고리즘이 모델을 최적화하는 데 활용될 수 없습니다. 이러한 한계를 보완하기 위해 Generalized Intersection over Union(또는 GIoU)은 IoU를 수정하여 미분 가능한 형태로 변환합니다.

평균 정밀도(AP)

AP는 정밀도-재현율 곡선 아래의 면적으로 계산됩니다. 이는 정밀도와 재현율이라는 두 가지 메트릭 간의 균형을 조정하며, 참 양성(True Positives, TP), 참 음성(True Negatives, TN), 거짓 양성(False Positives, FP), 거짓 음성(False Negatives, FN)과 같은 이산적 결과 값을 기반으로 계산됩니다.

  • 정밀도는 양성 예측(이 경우 분할된 인스턴스의 픽셀)이 얼마나 자주 들어맞는지 측정합니다(TP/(TP+FP)). 이는 거짓 음성(FN)을 허용한다는 단점이 있습니다.
  • 재현율은 양성 예측이 포착되는 빈도를 측정합니다(TP/(TP+FN)). 이는 거짓 양성(FP)을 허용한다는 단점이 있습니다.

관련성을 극대화하기 위해 AP는 특정 IoU 임계값 내에서 계산되는 경우가 많습니다. 예를 들어, ‘AP50’은 IoU가 50% 초과인 예측만을 고려하여 AP를 계산합니다. 평균 AP(mAP)는 모든 계산된 임계값에 대한 평균 정밀도 값으로 상황에 따라 사용됩니다.

관련 솔루션

관련 솔루션

IBM watsonx.ai

AI 빌더를 위한 차세대 엔터프라이즈 스튜디오인 IBM watsonx.ai로 생성형 AI, 파운데이션 모델 및 머신 러닝 기능을 학습, 검증, 조정 및 배포하세요. 적은 데이터로 짧은 시간 내에 AI 애플리케이션을 구축하세요.

watsonx.ai에 대해 알아보기
인공 지능 솔루션

업계 최고의 AI 전문성과 솔루션 포트폴리오를 보유한 IBM과 함께 AI를 비즈니스에 활용하세요.

AI 솔루션 살펴보기
AI 컨설팅 및 서비스

AI 추가를 통해 중요한 워크플로와 운영을 혁신함으로써 경험, 실시간 의사 결정 및 비즈니스 가치를 극대화합니다.

AI 서비스 살펴보기
다음 단계 안내

AI 개발 라이프사이클 전반에 걸친 기능에 원스톱으로 액세스하세요. 사용자 친화적인 인터페이스, 워크플로, 업계 표준 API 및 SDK에 대한 액세스를 통해 강력한 AI 솔루션을 제작할 수 있습니다.

watsonx.ai 살펴보기 라이브 데모 예약하기