본문 바로가기

딥러닝

Learning to Count Anything - 참조 이미지와 위치 정보 없이 어떻게 시각 트랜스포머는 스스로 객체의 수를 세는가?

반응형


일러두기 (Disclaimer)

본 글은 AI의 도움을 받아 작성되었습니다. 최대한 정확한 정보를 전달하기 위해 검수를 거쳤으나, AI 모델의 특성상 내용에 일부 오류나 부정확한 정보가 포함될 수 있습니다. 따라서 실제 논문의 상세한 수식이나 실험 세부 조건 등은 반드시 원문을 직접 확인하시기 바랍니다.

 

 

논문 링크 : https://arxiv.org/abs/2205.10203

 

Learning to Count Anything: Reference-less Class-agnostic Counting with Weak Supervision

Current class-agnostic counting methods can generalise to unseen classes but usually require reference images to define the type of object to be counted, as well as instance annotations during training. Reference-less class-agnostic counting is an emerging

arxiv.org

 

 

초록 (Abstract)

현재의 범주 불가지론적(Class-agnostic - 특정 객체의 종류에 구애받지 않는) 객체 계수(Counting) 방법론들은 학습 과정에서 보지 못한 새로운 범주의 객체에 대해서도 일반화가 가능합니다. 하지만 이러한 방법론들은 대개 학습 시점에는 인스턴스 단위의 위치 주석(Instance annotations)을 필요로 하며, 추론 시점에는 세어야 할 객체의 유형을 정의하기 위한 참조 이미지(Reference images)를 요구합니다. 본 연구는 참조 이미지 없이 범주와 무관하게 객체를 세는 'Reference-less class-agnostic counting'이라는 새로운 분야를 탐구하며, 객체 계수 작업의 본질이 핵심적으로 '반복 인식(Repetition-recognition) 작업'임을 규명합니다.

이러한 접근 방식은 계속해서 변화하는 객체 구성 환경에서도 원활한 계수를 가능하게 합니다. 본 논문에서는 전역적 문맥(Global context)을 파악할 수 있는 범용적인 특징 공간(Feature space)을 활용하면, 현재 존재하는 객체 유형에 대한 사전 정보(Prior) 없이도 이미지 내의 인스턴스를 열거할 수 있음을 입증합니다. 구체적으로, 점 단위의 감독(Point-level supervision)이나 참조 이미지 없이 시각 트랜스포머(Vision Transformer)의 특징(Feature)으로부터 직접 개수를 회귀(Regression)하는 방식이 다른 참조 이미지 배제 방법론들보다 우수하며, 참조 이미지를 사용하는 기존 방법론들과도 충분히 경쟁력 있는 성능을 달성함을 증명합니다.

연구진은 현재 널리 사용되는 퓨샷(Few-shot) 계수 데이터셋인 FSC-147에서 이를 입증했습니다. 더불어 FSC-147에 존재하는 다양한 오류, 모호성, 중복 이미지 문제를 제거한 개선된 데이터셋인 FSC-133을 제안하고, 이 데이터셋 위에서도 유사한 성능을 달성함을 보여줍니다. 연구진이 아는 한, 본 방법론은 최초의 약지도 학습(Weakly-supervised) 기반의 참조 이미지 없는 범주 불가지론적 계수 방법론입니다.

 

1. 한줄 요약 & 3줄 핵심 (Executive Summary)

자가지도 학습 기반 시각 트랜스포머(ViT)의 전역적 문맥 인지 능력을 활용해, 참조 이미지나 객체의 위치 주석 없이 오직 이미지의 '총 객체 수'라는 단순한 정답만으로 임의의 새로운 객체를 세는 약지도 학습 모델(RCC)을 제안합니다.

    1. 기존의 문제점 (Pain point): 기존의 범주 불가지론적 객체 계수 모델들은 무엇을 세어야 할지 지정하는 '참조 이미지(Exemplar)'와 학습 시 객체의 정확한 위치를 픽셀 단위로 찍은 '점 주석(Point Annotation)' 데이터가 필수적으로 요구되어, 현실적인 데이터 수집 및 실제 환경 도입 비용이 높았습니다.
    2. 이 논문의 해결책 (Solution): 모델이 '무엇을 셀 것인가'와 '그것이 어떻게 반복되는가'를 시각 트랜스포머(ViT)의 다중 헤드 자가 주의 메커니즘을 통해 스스로 파악하게 하고, 추출된 전역적 특징을 단일 선형 투영(Linear Projection)에 통과시켜 객체 수를 직접 예측하는 구조를 설계했습니다.
    3. 달성한 성과 (Key Result): 위치 정보와 참조 이미지를 모두 배제한 가장 어려운 조건(Reference-less, Weakly-supervised)임에도 불구하고 기존 SOTA 모델들과 대등한 성능을 기록했으며, 기존 연구 표준 데이터셋(FSC-147)의 치명적 오류를 정제한 신규 데이터셋(FSC-133)을 학계에 기여하여 후속 연구의 기반을 다졌습니다.

 

2. 들어가며: 왜 이 연구가 필요했나? (The "Why")

인간이 사물을 인식하고 수를 세는 행위는 시각적 정보 처리의 가장 기본적이면서도 고차원적인 추상화 과정입니다. 컴퓨터 비전 분야에서 객체 계수(Object Counting)는 군중 밀집도 파악, 교통량 모니터링, 현미경 세포 분할, 야생 동물 개체 수 파악, 산업 현장의 재고 관리 등 광범위한 실제 응용 가치를 지니고 있습니다. 하지만 기계가 인간처럼 유연하게 사물을 "센다"는 것은 생각보다 매우 복잡한 인지적 과제입니다.

 

과거 초기의 객체 계수 모델들은 특정한 단일 범주에 대해서만 개별적으로 학습되었습니다. 예를 들어, 사람의 머리 형태와 어깨선을 인식하여 군중을 세는 모델(Crowd counting)이나, 차량의 형태를 인식하여 도로 위 자동차를 세는 모델(Vehicle counting)이 분리되어 연구되었습니다. 이러한 특정 범주 계수(Class-specific counting) 방식은 자신이 학습한 특정 도메인에서는 높은 성능을 발휘하지만, 치명적인 단점이 존재합니다. 새로운 종류의 객체를 세어야 할 때마다 수천 장의 이미지를 새로 수집하여 위치를 일일이 라벨링하고 모델 구조를 처음부터 다시 설계하여 학습시켜야 한다는 점입니다. 이러한 비효율성을 극복하기 위해 등장한 패러다임이 바로 학습 과정에서 보지 못한 새로운 객체라도 수를 셀 수 있는 범주 불가지론적 계수(Class-agnostic counting) 방법론입니다.

하지만 본 연구가 시작될 무렵 존재하던 기존의 범주 불가지론적 모델들(예: FamNet)은 여전히 현실 도입을 가로막는 두 가지 근본적인 한계를 가지고 있었습니다.

 

첫째, 추론 시점의 한계입니다. 모델에게 "이 이미지에서 무엇을 세어야 하는지"를 명확히 알려주기 위해, 사용자가 직접 세고자 하는 대상이 포함된 작은 영역(Bounding box)을 잘라내어 참조 이미지(Exemplar 또는 Reference image)로 제공해야 합니다. 만약 드론이나 로봇이 실시간으로 변하는 환경을 탐색하며 자동으로 물체를 세어야 하는 상황이라면, 매번 사람이 개입하여 참조 이미지를 지정해 주어야 한다는 것은 완전한 자동화를 불가능하게 만듭니다. 또한 화면 모서리에 잘려 있거나 다른 물체에 가려진 객체를 참조 이미지로 잘못 지정할 경우 모델의 전체 성능이 크게 저하되는 문제도 있었습니다.

 

둘째, 학습 시점의 데이터 구축 비용 한계입니다. 모델이 객체의 형태와 위치를 파악하도록 돕기 위해, 수많은 학습 데이터 내의 모든 객체 중심에 사람이 일일이 점을 찍는 점 단위 주석(Point-level annotation) 작업이 필수적이었습니다. 특히 곡물, 세포, 알약처럼 수백 개가 겹쳐 있는 이미지에서 사람이 정확히 중심점을 찍는 것은 막대한 시간과 노동력을 요구하며, 작업자의 주관에 따라 점을 찍는 위치(예: 새의 부리에 찍을 것인가, 몸통 중심에 찍을 것인가)가 달라져 데이터의 일관성이 훼손되는 문제도 발생합니다.

 

연구진은 이 지점에서 인간이 사물을 세는 본질적인 인지 메커니즘에 주목했습니다. 사람에게 처음 보는 다양한 형태의 블록들이 흩어져 있는 사진을 보여주며 "개수를 세어보세요"라고 지시하면, 사용자는 굳이 특정 블록의 샘플 이미지를 미리 보여주지 않아도 이미지 내에서 가장 두드러지게 반복되는 물체(Salient objects)의 패턴을 스스로 파악하고 개수를 셉니다. 즉, 계수의 본질은 '무엇을 세어야 하는가'를 이해하는 전역적인 문맥 파악 능력과 '그 대상이 반복되는 패턴'을 식별하는 능력의 자연스러운 결합입니다.

 

이러한 직관을 바탕으로, 연구진은 복잡한 픽셀 단위의 위치 주석이나 외부에서 주어지는 참조 이미지 없이, 오직 '이미지에 존재하는 총 객체 수(Scalar count)'라는 매우 약한 지도(Weak Supervision) 신호만으로 범용적인 계수가 가능한 모델을 구축하고자 하는 깊은 문제의식에서 본 연구를 출발시켰습니다. 이는 계수 모델이 스스로 이미지의 본질을 이해하고 추상화하도록 만드는 컴퓨터 비전 분야의 중요한 도약점입니다.

 

3. 이 논문의 뿌리 (Key Reference)

이 논문이 탄생하기 위해 가장 결정적인 영감을 제공하고, 비판적으로 계승 및 발전시킨 두 가지 핵심 선행 연구 흐름은 다음과 같습니다. 이들은 본 논문이 구축하고자 하는 아키텍처와 해결하려는 문제의 뼈대를 제공했습니다.

  • Learning to count everything (FamNet) (Ranjan et al., 2021): 이 논문은 본 연구가 비판적으로 극복하고자 한 대상이자, 범주 불가지론적 객체 계수 연구의 토대를 닦은 가장 중요한 벤치마크 연구입니다. FamNet은 퓨샷 계수(Few-shot counting) 패러다임을 정립하며, 모델이 학습하지 않은 객체라도 참조 이미지만 주어지면 셀 수 있도록 FSC-147 데이터셋을 처음 제안했습니다. FamNet은 ResNet과 같은 합성곱 신경망(CNN) 백본을 통해 전체 이미지와 참조 이미지의 특징을 각각 추출한 뒤, 두 특징 간의 상관관계(Cross-correlation)를 계산하여 객체가 존재할 확률을 2D 밀도 맵(Density map)으로 회귀하는 구조를 가졌습니다. 본 논문(RCC)은 FamNet이 제안한 범용 계수라는 거대한 목표를 계승하되, 참조 이미지에 의존해야만 하는 한계점과 밀도 맵을 정답으로 강제하는 구조적 제약을 모두 제거하는 방향으로 발전했습니다.
  • Emerging properties in self-supervised vision transformers (DINO) (Caron et al., 2021): 본 논문의 철학적, 기술적 해결책을 가능하게 한 가장 핵심적인 백본(Backbone) 기술입니다. 합성곱 신경망(CNN)은 필터의 크기에 제한된 국소적인 수용 영역(Receptive field)을 가지기 때문에, 이미지 전체의 문맥을 한 번에 파악하여 멀리 떨어져 있는 동일 객체 간의 관계를 인식하는 데 근본적인 한계가 있습니다. 반면, DINO 방법론으로 자가지도 학습(Self-supervised learning)된 시각 트랜스포머(ViT)는 다중 헤드 자가 주의(Multi-head self-attention) 메커니즘을 통해 이미지 전반의 전역적 문맥(Global context)을 즉각적으로 파악합니다. DINO 연구는 인간이 라벨링한 데이터 없이도 모델 스스로가 이미지 내의 의미 있는 대상(Semantic objects)의 경계를 명확히 분할(Segmentation)해 내는 특성을 지닌다는 것을 증명했습니다. 본 논문은 이처럼 DINO가 학습한 강력하고 범용적인 특징 공간이 별도의 위치 주석(Point annotation)이나 참조 이미지 없이도 객체의 반복되는 패턴을 자율적으로 군집화해 낼 수 있다는 점을 차용하여, 계수 문제의 해결책으로 전격 도입했습니다.

 

4. 핵심 아이디어: 무엇이 다른가? (The "Aha!" Moment)

기존 연구와 이 논문(RCC: Reference-less Class-agnostic Counter)의 가장 거대하고 본질적인 차이점은 문제의 정의 방식을 대폭 전환했다는 데 있습니다. 기존의 방식이 "특정 객체가 존재하는 픽셀 위치를 세밀하게 찾는 작업"이었다면, 이 논문은 "전체 이미지의 반복 패턴을 추상화하여 하나의 스칼라 숫자로 도출하는 작업"으로 시각을 바꿨습니다.

 

기존의 점 주석(Point-level annotation) 기반 모델들은 사용자가 찍은 점 위치를 중심으로 가우시안 커널(Gaussian kernel)을 적용하여 흐릿한 밀도 맵(Density map)을 생성했습니다. 그리고 모델이 이 2D 밀도 맵의 형태를 픽셀 단위로 똑같이 복제하도록(Pixel-wise MSE loss) 강제했습니다. 이 방식의 치명적인 문제점은 사람이 임의로 찍어 놓은 '점의 위치'가 모델의 인지 과정에 불필요한 혼란과 제약을 준다는 것입니다. 예를 들어, 여러 마리의 플라밍고 무리의 개수를 셀 때, 데이터를 구축하는 인간은 플라밍고의 머리 부분에 점을 찍었을 수 있습니다. 하지만 신경망 모델은 플라밍고의 날개 패턴이나 긴 다리에서 훨씬 더 식별하기 쉬운 특징적인 반복성을 찾아낼 수 있습니다. 모델이 날개 부분의 특징을 활성화시켜 밀도 맵을 구성하면, 정답(머리에 위치한 점)과 다르기 때문에 손실 함수에 의해 오답으로 처리되어 페널티를 받게 됩니다. 이러한 자의적인 위치 지정은 모델이 객체의 진정한 구조를 이해하는 것을 방해합니다.

 

본 논문의 핵심 아이디어는 이러한 인간의 자의적인 위치 사전 지식(Prior)을 완전히 배제하고, 모델에게 해석의 자유를 부여하는 것입니다.

  • 이전의 방식 (FamNet 등): 입력 이미지와 함께 사용자가 크롭한 참조 이미지 박스를 네트워크에 넣습니다. 네트워크는 두 이미지의 특징을 추출하고 상관관계를 계산하여 픽셀별로 객체 존재 확률을 나타내는 밀도 맵을 그립니다. 최종 개수는 이 밀도 맵의 전체 픽셀 값을 적분(Integration)하여 도출합니다.
  • 이 논문의 발상의 전환 (RCC): 참조 이미지를 입력에서 아예 삭제합니다. 자가지도 학습된 트랜스포머는 입력 이미지를 전체적으로 조망하며 "이 사진은 넓은 잔디밭 배경이고, 그 위에 흰색의 특정 덩어리들(양 떼)이 규칙적인 형태로 반복되고 있네"라는 전역적 문맥을 스스로 파악합니다. 그리고 모델은 이 특징들을 복잡한 2D 밀도 맵으로 변환하는 중간 단계를 생략하고, 곧바로 '단일한 숫자(예: 42)'로 직접 회귀(Direct regression)시킵니다.

인간이 사물의 개수를 셀 때 눈으로 물체의 윤곽선을 정확히 그리고 픽셀 단위의 확률을 계산하지 않듯이, 네트워크에게도 억지로 위치를 특정하도록 강요하지 않고 자유를 주었습니다. 모델 스스로가 '가장 잘 띄는 객체의 반복성'이라는 추상적 개념을 발달시키도록 유도한 것이 바로 이 논문의 "Aha!" 모먼트입니다.

 

5. 작동 원리: 어떻게 돌아가는가? (The "How")

본 연구에서 제안하는 RCC 모델의 데이터 처리 파이프라인은 크게 '특징 추출(Feature Extraction)'과 '계수 예측(Count Prediction)'이라는 두 가지 직관적인 단계로 구성되어 있습니다. 불필요한 하이퍼파라미터 튜닝이나 복잡한 지역 제안(Region proposal) 네트워크를 모두 걷어낸 매우 담백한 구조입니다.

  1. 입력 데이터 처리: 네트워크에 $224 \times 224$ 해상도의 질의 이미지(Query Image) 단 한 장만이 단독으로 입력됩니다. 어떤 추가적인 정보도 제공되지 않습니다.
  2. 시각 트랜스포머(ViT) 특징 추출: 입력된 이미지는 격자 형태의 작은 패치(Patch) 단위로 분할되어 ViT-Small 백본(Backbone)을 통과합니다. 이때 사용되는 백본은 무작위 가중치로 시작하는 것이 아니라, DINO와 같은 자가지도 학습(Self-supervised knowledge distillation) 방법론으로 대규모 데이터셋(ImageNet 등)에서 미리 사전 학습되어 있습니다. ViT 내부의 다중 헤드 자가 주의(Multi-head self-attention) 레이어를 거치면서, 이미지의 왼쪽 구석에 있는 패치와 오른쪽 구석에 있는 패치가 서로 정보를 교환합니다. 이 과정을 통해 각 패치는 주변 패치들과의 시각적 유사도 및 전체 이미지 내에서의 위치 정보를 학습하게 되며, 결과적으로 이미지 전반에 걸쳐 "어떤 시각적 패턴이 얼마나 빈번하게 반복되는가"에 대한 풍부한 정보를 담게 됩니다.
  3. 특징 결합 및 구조화: 네트워크를 모두 통과하여 추출된 $28 \times 28$ 공간 차원(총 784개의 패치)의 특징 맵(Feature map)들을 순서대로 결합(Concatenate)합니다. 이때 추출된 특징의 차원 깊이는 384차원을 가집니다.
  4. 선형 투영 (Linear Projection)을 통한 예측: 모델의 마지막 단에는 복잡한 합성곱(Convolution) 레이어나 수많은 층으로 이루어진 다층 퍼셉트론(MLP) 대신, 오직 단일 선형 계층(Single Linear Layer)만이 존재합니다. $28 \times 28 \times 384$ 차원의 방대한 패치 특징 정보를 입력받아 내부 연산을 통해 차원을 급격히 축소시키며, 최종적으로 이미지에 존재하는 객체의 총 개수를 나타내는 단일 스칼라(Scalar) 값을 출력합니다.

이 과정에서 주목할 점은 계수 예측 헤드(Count regression head)를 의도적으로 극도로 단순화시켰다는 것입니다. 연구진은 비교 실험을 통해 여러 층의 합성곱 레이어로 이루어진 복잡한 헤드를 붙여보았으나, 오히려 성능이 저하됨을 확인했습니다. 복잡한 헤드는 학습 데이터에 존재하는 특정 객체의 모양에 과적합(Overfitting)되어, 처음 보는 새로운 물체를 세어야 할 때 일반화 능력을 잃어버렸기 때문입니다. 잘 학습된 범용적 특징만 있다면, 숫자로 변환하는 과정은 단순한 선형 투영 하나로 충분하다는 것을 흐름으로 증명했습니다.

 

6. 작동 원리: 어떻게 학습하는가? (The "How")

참조 이미지나 위치 주석 없이 약지도 학습(Weakly-supervised learning)을 채택한 이 논문의 가장 큰 실용적 장점은 모델을 학습시키는 데 필요한 데이터 구축 비용이 극도로 낮다는 것입니다.

  • 입력 데이터 (Input Data):
    • 종류 및 포맷: 모델을 학습시키기 위해서는 오직 일상 환경이나 산업 현장에서 촬영된 2D 이미지 데이터만이 필요합니다. 복잡한 바운딩 박스(Bounding box) 좌표 파일이나 객체의 위치 픽셀을 기록한 밀도 맵(Density map) 넘파이(NumPy) 파일은 전혀 요구되지 않습니다.
    • 구체적인 예시: (1) 푸른 하늘을 배경으로 V자 대열로 날아가는 수십 마리의 기러기 떼가 찍힌 $224 \times 224$ 해상도의 이미지 한 장. (2) 컨베이어 벨트 위를 지나가는 다양한 형태의 알약들이 무작위로 흩어져 있는 이미지 한 장.
    • 타일링 증강 기법 (Tiling Augmentation): 계수 모델은 몇 개 안 되는 물체부터 수천 개의 물체까지 다양한 밀도(Density)와 스케일에 적응해야 합니다. 이를 위해 학습 과정에서 독특한 데이터 증강 기법을 적용합니다. 학습 반복(Iteration)의 50% 확률로 $224 \times 224$ 원본 이미지를 $112 \times 112$ 크기로 축소한 뒤, 이를 $2 \times 2$ 격자 형태로 이어 붙여 다시 $224 \times 224$ 크기의 빽빽한 이미지로 만듭니다. 이 과정은 별도의 데이터 추가 수집 없이도 모델이 밀도가 매우 높은(객체가 작고 개수가 많은) 환경의 군중성을 학습하도록 돕습니다.
  • 출력 및 정답 데이터 (Output & Ground Truth Data):
    • 포맷: 이미지가 입력되면, 모델은 해당 이미지에 존재하는 대상 객체의 '총 개수'를 단순한 실수형 정수로 출력하도록 훈련받습니다.
    • 구체적인 예시: (1) 기러기 이미지에 대응하는 텍스트 라벨: 18 (2) 알약 이미지에 대응하는 텍스트 라벨: 52.
    • 손실 함수 (Loss Function): 모델이 정답을 맞히도록 유도하는 손실 함수로는 '절대 백분율 오차(Absolute Percentage Error, APE)'를 사용합니다. 모델의 예측값을 $\hat{c}$, 실제 정답을 $c$라고 할 때, 오차를 계산하는 수식은 입력값과 정답의 차이를 정답으로 나눈 $|c - \hat{c}|/c$ 의 형태를 이룹니다. 단순한 절대 오차(Absolute Error) 대신 백분율 기반의 오차를 사용하는 이유는 밀도의 불균형 때문입니다. 객체가 1,000개 있는 사진에서 10개를 오차로 예측한 것과 객체가 20개 있는 사진에서 10개를 오차로 예측한 것은 모델의 파라미터를 수정하는 기울기(Gradient)에 미치는 영향도가 달라야 모델이 균형 있게 학습할 수 있기 때문입니다.
특성 비교 기존 범주 불가지론적 계수 (예: FamNet) 본 논문의 방법론 (RCC)
지도 학습 수준 강지도 학습 (Point-level Annotation) 약지도 학습 (Image-level Count)
학습 입력 데이터 2D 이미지 + 참조 이미지 크롭 (Exemplar) 2D 이미지 (단독)
학습 정답 데이터 공간 정보가 포함된 2D 밀도 맵 객체 총합을 나타내는 단일 스칼라 숫자

 

7. 결과: 얼마나 좋아졌나? (Results)

연구진은 제안된 모델을 범용 계수 표준 데이터셋에서 평가하였으며, 기존의 복잡한 패러다임을 뒤흔드는 의미 있는 결과를 도출했습니다.

 

기존 데이터셋(FSC-147)의 문제점 발견과 FSC-133의 탄생

모델 평가에 앞서, 연구진은 기존 학계에서 범주 불가지론적 계수의 벤치마크 표준으로 널리 사용되던 FSC-147 데이터셋에서 평가의 신뢰도를 무너뜨릴 수 있는 심각한 오류들을 발견했습니다.

  1. 중복 데이터 문제: 시각적으로 동일한 159장의 이미지가 각기 다른 파일명과 고유 ID를 부여받은 채 총 334번 중복되어 등장했습니다.
  2. 데이터 유출(Data Leakage) 문제: 모델이 학습하는 학습(Train) 세트에 있는 이미지가, 모델의 성능을 평가해야 할 검증(Validation)이나 테스트(Test) 세트에도 유출되어 포함된 경우가 무려 11건 발견되었습니다. 이는 모델이 정답을 미리 외우고 시험을 치는 것과 같아 평가 지표를 왜곡시킵니다.
  3. 라벨링 불일치 문제: 완전히 동일한 이미지임에도 불구하고, 픽셀 단위로 객체가 가려져 있거나(Occlusion) 이미지 모서리에 걸쳐 있는 경우 작업자에 따라 정답 개수가 다르게 기입된 사례가 71건 존재했습니다. 심지어 오차율이 25%에 달하는 경우도 있었습니다.

연구진은 이러한 모호성과 오류를 깔끔하게 정제하고 합쳐 FSC-133이라는 새로운 데이터셋을 구축하여 학계에 공개했습니다. 이를 통해 모델이 보지 못한 객체에 대한 일반화 능력을 훨씬 더 엄밀하고 공정하게 평가할 수 있는 척도를 마련했습니다.

 

압도적인 성능 향상과 대등한 경쟁

기존의 참조 이미지를 배제한 유일한 계수 모델인 RepRPN-Counter와 비교했을 때, RCC는 점 주석(Point Annotation) 데이터를 전혀 사용하지 않았음에도 불구하고 FSC-147 데이터셋의 테스트 세트에서 평균 절대 오차(MAE) 17.12, 평균 제곱근 오차(RMSE) 104.53을 기록하며 기존의 모든 참조 이미지 배제 모델들을 압도적으로 뛰어넘는 SOTA(State-of-the-Art) 성능을 달성했습니다.

 

더욱 놀라운 점은, 객체의 위치를 픽셀 단위로 하나하나 가르쳐주고 추론 시 정답 샘플 이미지까지 친절하게 제공받는 퓨샷(Few-shot) 기반의 강지도 학습 모델들(FamNet, BMNet 등)과 비교하더라도 성능 지표상 전혀 뒤처지지 않고 대등하게 경쟁(Competitive)할 수 있었다는 점입니다. 모델의 일반화 능력을 측정하기 위해 학습 과정에서 한 번도 본 적 없는 위성 기반 자동차 주차장 데이터셋인 CARPK에 교차 검증(Cross-dataset validation)을 수행했을 때도, 추가적인 미세조정(Fine-tuning) 없이 높은 적응력을 입증했습니다.

 

솔직한 한계점과 실패 케이스 (Failure Cases)

본 논문은 학문적 신뢰도를 높이고 향후 연구 방향을 제시하기 위해 모델이 실패하는 한계 상황을 솔직하고 투명하게 공개했습니다.

  1. 극단적 초고밀도 이미지에서의 한계: 한 화면에 객체가 1,000개가 넘어가는 군중 집회나 미세 세포 이미지 등 극단적인 고밀도 상황에서는 오차가 급증하는 양상을 보였습니다. 모델 아키텍처의 구조상 $224 \times 224$의 입력 이미지를 $28 \times 28$ 패치 수준의 특징 맵으로 압축하기 때문에, 물리적 해상도의 한계로 인해 하나의 작은 패치 안에 식별 불가능할 정도로 너무 많은 객체가 뭉쳐 있는 경우 이를 낱개로 구분해 내지 못하는 한계가 존재했습니다.
  2. 다중 클래스 환경에서의 인지 혼란: 참조 이미지를 입력하지 않기 때문에 발생하는 근본적인 한계입니다. 만약 이미지 안에 사과 5개와 바나나 10개가 섞여 있다면, 사용자가 둘 중 어떤 것을 세고 싶은지 모델이 독심술을 하듯 알 수는 없습니다. 실험 결과, 모델은 스스로 가장 두드러지는 객체군(예: 바나나)을 하나만 선택해서 세거나, 비슷한 두 객체를 뭉뚱그려 하나의 상위 개념(과일 총 15개)으로 통합하여 세어버리는 경향을 보였습니다.

 

8. 이 논문의 계보와 발전 (Impact & Follow-ups)

RCC 모델이 "참조 이미지나 픽셀 단위의 위치 주석 없이도 시각 트랜스포머의 전역 문맥 이해를 통해 임의의 객체를 셀 수 있다"는 사실을 성공적으로 증명한 이후, 컴퓨터 비전 학계에서는 이 논문의 핵심 철학을 기반으로 한 다양한 후속 연구와 응용 방법론이 폭발적으로 등장하며 뚜렷한 연구 트렌드를 형성했습니다.

  • 다중 범주 계수 한계의 극복 (ABC Easy as 123, 2024): 본 논문에서 솔직하게 밝힌 RCC 모델의 가장 큰 약점은 이미지 내에 여러 종류의 객체(예: 필통 안의 연필, 지우개, 클립)가 혼재되어 있을 때 무엇을 세어야 할지 특정할 수 없다는 점이었습니다. 이에 본 논문의 저자(Hobley)는 후속 연구인 ABC Easy as 123 모델(ECCV 2024 구두 발표)을 통해 이 한계를 정면으로 극복했습니다. 이 연구는 참조 이미지 없이도 다수의 상이한 객체들이 섞인 환경에서 객체들을 의미적으로 군집화하고 각 범주별로 개별적인 숫자를 도출하는 데 성공했습니다. 더불어 다중 범주 평가를 위해 MCAC(Multi-Class Class-Agnostic Counting)라는 새로운 형태의 데이터셋을 학계에 공개하며 영역을 확장했습니다.
  • 생성형 AI(Diffusion)의 환각 제어를 위한 융합 (Counting Guidance, 2025): 최근 각광받는 텍스트-이미지 생성형 모델(Stable Diffusion, Midjourney 등)은 프롬프트에 "테이블 위에 사과 6개를 그려줘"라고 입력해도 4개나 7개를 그리는 등 수치적 인지 능력(Numeracy)이 매우 떨어지는 고질적인 환각(Hallucination) 현상을 겪고 있습니다. WACV 2025에 발표된 Counting Guidance 연구는 이미지 생성 과정에 RCC 모델을 핵심 모듈로 삽입하는 창의적인 해결책을 제시했습니다. RCC는 복잡한 열지도(Heatmap)를 거치지 않고 직접 스칼라 개수를 회귀하므로, 이 예측 오차에 대한 기울기(Gradient)를 노이즈 제거 과정에 역전파하기 매우 용이합니다. 이를 활용해 생성 중인 이미지의 노이즈 잠재 공간(Latent space)을 미세 조정하여, 텍스트 프롬프트에 명시된 숫자를 정확하게 생성하도록 유도하는 데 성공했습니다.
  • 대형 시각-언어 모델(VLM) 평가 지표로의 정착 (VAQUUM, 2025): 최신 연구들은 GPT-4V나 LLaVA와 같은 거대 시각-언어 모델들이 시각적 이미지 내의 수량적 정보를 얼마나 정확히 이해하고 표현하는지 평가하기 위해, 본 논문이 오류를 정제하여 공개한 FSC-133 데이터셋을 신뢰할 수 있는 벤치마크의 기본 뼈대로 적극 채택하고 있습니다.
  • 텍스트 프롬프트 기반의 제로샷(Zero-shot) 계수로의 진화: 참조 이미지(Visual Exemplar)를 배제한 RCC의 철학은 최근 사용자가 텍스트로 대상의 이름을 적으면 개수를 세어주는 제로샷 언어-시각 계수 모델(예: CLIP-Count, CounTR, LOCA, CountSE)들로 이어지며 더욱 발전하고 있습니다.

 

9. 마무리

"Learning to Count Anything"은 딥러닝 객체 계수 분야의 뿌리 깊은 패러다임을 '밀도 맵 기반의 국소적 위치 탐색'에서 '전역 문맥 기반의 패턴 회귀'로 과감하게 전환한 매우 의미 있고 실용적인 연구입니다. 인간의 개입이 필요한 참조 이미지와 위치 주석 데이터를 완전히 걷어냄으로써, 모델 구축에 소요되는 시간과 자본을 극적으로 줄이는 계기를 마련했습니다. 특히 자가지도 학습된 트랜스포머가 스스로 의미 있는 시각적 특징을 군집화하고 분리할 수 있다는 특성을 절묘하게 활용하여, 데이터 구축 비용이 막대한 강지도 학습(Point-level annotation)의 구조적 한계를 우아하게 우회했습니다.

 

실무 적용 시 고려할 점과 한계

현업에서 이 모델 구조를 자동화 시스템이나 산업 현장에 응용할 때 반드시 고려해야 할 실무적 특성들이 존재합니다.

  1. 고정된 저해상도 입력의 한계: 시각 트랜스포머 백본 구조를 채택하고 있어 입력 이미지가 보통 $224 \times 224$ 해상도로 축소되어 제한됩니다. 만약 광활한 항만을 비추는 4K 해상도의 CCTV 영상에서 픽셀 몇 개 크기에 불과한 수천 개의 컨테이너 박스나 드론 시점의 군중을 세어야 한다면, 이미지 스케일링 과정에서 디테일한 특징이 소실되어 성능이 급감할 위험이 있습니다. 이를 해결하려면 입력 이미지를 큰 해상도로 유지한 채 분할(Cropping)하여 윈도우 단위로 처리하거나, 더 높은 해상도를 지원하는 계층적(Hierarchical) 트랜스포머 아키텍처(예: Swin Transformer)의 도입을 고려해야 합니다.
  2. 연산량과 실시간 처리 (GPU Memory): 밀도 맵을 예측하지 않아 최종 예측을 수행하는 꼬리 부분(Regression head)은 가볍지만, 백본 자체가 무거운 시각 트랜스포머 연산을 요구하므로 메모리 제약이 심한 저사양 엣지(Edge) 디바이스나 초당 수십 프레임을 분석해야 하는 실시간 영상 처리에 그대로 적용하기에는 연산량과 추론 지연(Latency) 부담이 존재합니다.
  3. 단일 클래스 우세 현상의 위험성: 사용자의 구체적인 의도(텍스트나 참조 이미지)가 입력되지 않기 때문에, 모델 스스로가 보기에 '가장 눈에 띄는(Salient) 반복 패턴'을 독단적으로 세어버리는 경향이 있습니다. 예를 들어 산업 공정에서 '파손된 불량품'만 골라서 세고 싶은데 주변에 놓인 정상 제품까지 모두 하나의 '반복되는 물건'으로 묶어서 세어버릴 치명적 위험이 존재합니다. 따라서 다중 객체가 섞여 있고 특정 대상만을 필터링해야 하는 환경에서는 후속 연구인 'ABC Easy as 123'의 접근 방식을 결합하거나 언어 모델 기반의 프롬프트 입력을 혼합하는 설계가 필수적입니다.

결론적으로, 이 논문은 데이터 라벨링 노가다에 얽매여 있던 수동적인 컴퓨터 비전의 한계를 넘어, 신경망 모델 스스로가 이미지 내의 수학적 질서와 반복성을 깨닫게 만든 시야가 넓은 연구입니다. 이 연구가 뿌린 철학적 씨앗이 이미지 계수 도구를 넘어 생성형 AI의 수치적 환각을 통제하는 가이던스(Guidance) 기술로 진화하는 궤적을 보면, 본질에 집중한 단순한(Simple) 아키텍처가 얼마나 넓은 범용성과 무한한 확장성을 가질 수 있는지 다시금 깊게 체감할 수 있습니다.

 

반응형