Paper
[논문 리뷰/요약] GRES: Generalized Referring Expression Segmentation
gyuilLim
2025. 4. 16. 12:38
728x90
반응형
GRES: Generalized Referring Expression Segmentation
Referring Expression Segmentation (RES) aims to generate a segmentation mask for the object described by a given language expression. Existing classic RES datasets and methods commonly support single-target expressions only, i.e., one expression refers to
arxiv.org
Author : Liu, Chang, Henghui Ding, and Xudong Jiang.
Journal : CVPR 2023
Keyword : Referring Expression Segmentation
Published Date : 2023년 6월 1일
RES 란?
- RES(Referring Expression Segmentation)이란, 특정 Langauge Expression에 해당하는 객체의 Segmentation Mask를 생성하는 Task이다.
- RES는 Video Production, Huamn-Machine Interaction, Robotics, AR 등 픽셀 수준에서 정교한 작업을 요구하는 응용 분야에 사용된다.
Limitation of classic RES
- 기존 Classic RES 데이터셋은 보통 하나의 Expression이 하나의 객체만 가리키는 Single-Target만 지원한다.
- 따라서 텍스트가 가리키는 객체가 이미지에 없다거나, 하나의 텍스트가 여러개의 객체를 가리키는 경우에 대한 대비가 되지 않는다.
- 그렇기 때문에 Classic RES 데이터셋으로 학습된 모델들은 위 이미지에서 (2), (6) 등의 경우, 잘 예측하지 못한다.
- 따라서 본 연구에서는 RefCOCO dataset을 보완하기 위해 Multi-Target, No-Target, Single-Target을 모두 지원하는 gRefCOCO라는 이름의 GRES 데이터셋을 구축한다.
Contributions
- RES를 더 Real-World에 가깝게, 현실적으로 만들 수 있는 GRES 벤치마크를 제안한다.
- 임의의 수의 객체를 대상으로하는 최초의 RES 데이터셋인 gRefCOCO를 제안한다.
- 벤치마크와 함께 베이스라인 모델을 제안한다.
Generalized RES
- GRES의 데이터 샘플은 다음의 네가지 요소로 구성된다.
- $I$ : Image
- $T$ : Langauge Expression
- $M_{GT}$ : Ground-Truth Segmentation Mask
- $E_{GT}$ : $T$가 지시하는 대상이 없을 경우(No-Target)를 나타내는 Binary Label
- GRES 모델은 $I$와 $T$를 입력으로 받고 마스크 $M$을 예측한다. No-Target의 경우 마스크는 모두 Negative가 된다.
- Multi-Target, No-Target 표현을 지원함으로써, 더욱 현실적인 시나리오에 맞춰 사용할 수 있다.
- 예를 들어 위 이미지에서 (a)의 경우 “all people”, “two players on left” 같은 표현으로 여러 객체를 한번에 찾을 수 있다.
- 또한 (b)와 같은 경우, 사용자의 표현에 해당하는 객체가 이미지에 있는지에 대한 정보도 제공해줄 수 있다.
- 기존 RES의 성능 측정을 위해 사용하던 평가 지표 cIoU(cunlative IoU)와 더불어, No-Target 경우까지 고려한 gIoU(generalized IoU)를 새롭게 제시한다.
gRefCOCO: A Large-scale GRES Dataset
- gRefCOCO 데이터셋은 총 278,232개의 Expression이 있고, 이 중 80,022개는 Multi-Target,
32,202개는 No-Target을 가리킨다. - 19,994장의 이미지와 60,287개의 Instance로 구성된다.
- Multi-Target Sample을 정확하게 찾기 위해서는 모델에게 다음과 같은 능력이 요구된다.
- Usage of counting expressions : 기존 RefCOCO 데이터셋에는 이미 “the second person from left” 등 서수 표현이 포함돼 있기 때문에, “The two people on the far left” 같은 다중 객체 표현을 처리하려면 Cardinal/Ordinal Number를 구별할 수 있어야한다.
- Compound sentence structures without geometrical relation : “A와 B”, “B를 제외한 A”, “B 또는 C와 함께있는 A”와 같은 표현을 처리해야 하므로, 더 높은 수준의 문장 및 이미지 이해 능력을 요구한다.
- Domain of attributes : “the right lady in blue and kid in white”와 같이 어떤 속성은 공유할 수 있고(right), 어떤 속성(blue, white)은 다를 수 있다. 따라서 속성, 관계에 대한 이해를 필요로 한다.
- More complex relationships : 다중 객체 표현은 하나 이상의 대상을 포함하기 때문에 문장이 더 복잡해진다. 예를 들어 위 이미지의 (b)에서 “The bike and two passengers on it”, “The bike that has two passengers and its driver” 모두 “and”, “two passengers”를 포함하고 있지만 가리키는 대상 객체는 다르다. 따라서 이미지 속 객체들과 상호작용, 관계 구조를 깊이있게 이해해야 한다.
- No-Target 샘플을 만들기 위해, 두 개의 규칙을 Annotator에게 부여했다.
- Expression이 이미지와 완전히 관련이 없으면 안된다. 예를 들어 위 이미지의 (a)에서 생뚱맞게 “river”, “dog” 같은 표현을 사용하면 안된다.
- 또한 같은 Split안에 있는 다른 이미지에 사용된 표현을 가져오기도 했다.
ReLA
- 앞서 설명했던 것처럼, Classic RES와 비교했을 때 GRES에서는 복잡한 상호작용 및 객체의 세밀한(Fine-Grained) 속성을 포착하는 것이 더 중요하다.
- 따라서 이미지안에서의 부분과 Expression 안의 단어들 간에 명시적인 상호작용을 수행할 수 있는 Baseline 모델 ReLAationship을 제안한다.
Architecture Overview
- 위 이미지는 ReLA 모델의 파이프라인이다.
- 순서대로 살펴보면, 먼저 입력 이미지와 입력 텍스트는 각각 Swin Transformer, BERT를 통해 Vision Feature $F_i$와 Text Feature $F_t$로 인코딩된다.
- 이어서 $F_i$는 Pixel Decoder로부터 Mask Feature $F_m$으로 만들어진다.
- 동시에 $F_i$와 $F_t$는 ReLAtionship modeling block에 입력된다.
- 이미지로부터 만들어진 특징맵 $F_i$는 $P\times P$개의 패치로 나누어지고 두 개의 브랜치로 나뉘어지는데, 하나는 Region Fiter $F_f$가 만들어지는 브랜치이다.
- 나머지 하나는 $F_t$와의 Cross Attention을 거친 후 Region Feature $F_r$로 만들어진다.
- n번째 패치의 Region Feature $f^n_r$은 해당 패치에 객체가 있을 확률을 나타내는 $P \times P$ 크기의 미니맵 $x_r^n$을 만들기 위해 사용된다.
- 동시에 n번째 패치의 Region Filter $f^n_f$는 Mask Feature $F_m$ 과 곱해져 Region Mask $M_r$로 만들어진다.
- 최종적으로 다음과 같이 Weighted Sum을 통해 예측 마스크가 만들어진다.
$$ M = \sum_n (x^n_rM^n_r) $$
- 이미지와 텍스트가 모델에 입력되면, 모델은 세 개의 Output을 만들어내고 각각 Loss 계산에 사용된다.
- $M$ : Predicted Mask → $M_{GT}$와 Supervised Learning
- $x_r$ : Probability Map(Minimap) → 다운샘플링된 $M_{GT}$와 Supervised Learning
- $E$ : No-Target Label → 객체의 유무에 따라 Supervised Learning
ReLAtionship Modeling
- ReLAtionship Modeling은 RIA(Region-Image Cross Attention), RLA(Region-Language Cross Attention) 두 개의 모듈로 구성되어있다.
- RIA는 Region Image Feature를 모아주고, RLA는 Region-Region, Region-Language 관계를 파악하는 역할을 한다.
Region-Image Cross Attention (RIA)
- RIA는 Vision Feature $F_i$와 학습가능한 $P \times P \times C$ 크기의 쿼리 벡터 $Q_r$을 입력으로 받는다.
$$ A_{ri} = \textrm {softmax}(Q_r \sigma (F_iW_{ik})^T) $$
- $W_{ik}$ 는 $C \times C$ 크기의 학습 가능한 파라미터이고 $\sigma$는 GELU 활성화 함수이다.
- 위 Cross Attention을 거쳐 $P^2\times HW$ 크기의 Region Attention Map $A_{ri}$가 만들어진다.
- 쉽게 말해 Q, K, V가 각각 $Q_i, F_i, F_i$ 인 Cross Attention을 수행하는 것이다.
Region-Langauge Cross Attention (RLA)
- RIA로부터 만들어진 Region Image Feature $F'_r$은 Region, Langauge에 대한 정보가 부족하다. 따라서 RLA에서는 Region-Region, Region-Langauge에 대한 상호작용을 목표로 한다.
- 먼저 $F'r$ 을 Q, K, V로 사용한 Self Attention을 수행하여 $F{r1}$을 만들어내고,
- Q, K, V를 각각 $F'r, F_t, F_t$로 사용한 Cross Attention을 수행하여 $F{r2}$를 만들어낸다.
- Cross Attetnion을 수식으로 설명하면, 먼저 Q, K의 내적을 통해 Attention Map $A_l$을 계산한다.
$$ A_l = \textrm {softmax}(\sigma (F'r W{lq} \sigma(F_tW_{lk})^T) $$
- 이어서 V인 $F_t$를 행렬곱하여 Cross Attention을 계산한다. $F_{r2} = A_lF_t$
- 그 후 $F'r, F{r1}, F_{r2}$를 모두 더하고 MLP를 거쳐 Region Feature $F_r = \textrm{MLP}(F'r+F{r1} + F_{r2})$가 만들어진다.
Evaluation Metrics
- RES에서 자주 사용되는 cIoU(cumulative IoU)를 포함하여 N-acc(No-target Accuracy), T-acc(Target Accuracy), gIoU(generalized IoU)를 소개한다.
cIoU and Pr@X
- cIoU는 Segmentation Task에서 주로 사용하는 mIoU와 차이가 있다. 이미지에서 클래스 마다 IoU를 구한 후 평균을 취하는 mIoU와 다르게, cIoU는 전체 이미지의 예측 마스크, 정답 마스크의 합집합 픽셀과 교집합 픽셀을 모두 더한후 나눈다.
- 예를 들어 이미지 A의 교집합 픽셀과 합집합 픽셀이 각각 100, 200이고 이미지 B의 교집합 픽셀과 합집합 픽셀이 각각 300, 600인 경우, (100+300) / (300+600) = 0.5가 되는 것이다.
- Pr@X는 예측 마스크와 정답 마스크의 IoU가 특정 임계값 X 이상일 때의 비율이다. Multi-Target의 경우, 이미지에서 객체가 많아지면 자연스럽게 교집합도 커지기 때문에, X는 0.7부터 시작이다.
N-acc and T-acc
- No-Target 샘플에서, 아무 전경(Foreground)도 예측되지 않으면 TP(True Positive)로 간주하고, 타겟이 있다고 예측하면 FN(False Negative)로 간주한다. 이 때, $\textrm{N-acc} = \frac{TP}{TP+FN}$이다.
- T-acc는 No-Taret의 영향이 Taget 샘플에 얼마나 끼치는지 확인하기 위한 수치이다. 객체가 있는 이미지에서 객체가 있다고 예측하면 TP, 없다고 예측하면 FN으로 간주한다. 이 때, $\textrm{T-acc} = \frac{TN}{TN+FP}$이다.
gIoU
- cIoU는 큰 객체에 유리하다는 것이 알려져 있는데, Multi-Target 샘플은 보통 큰 영역을 차지하기 때문에, 이를 보완하기 위해 gIoU(generalized IoU)를 도입한다.
- gIoU는 이미지 별 IoU를 계산한 후 평균을 취한다. 이 때, No-Target 이미지에서는 아래와 같이 반영한다.
- No-Target 이미지에서 객체가 없다고 예측한 경우는 IoU를 1로 취급
- No-Target 이미지에서 객체가 있다고 예측한 경우는 IoU를 0으로 취급
728x90
728x90