[ICCV 2025] SVTRv2: CTCBeats Encoder-Decoder Models in Scene Text Recognition

안녕하세요 2025년 ICCV에 accept된 Scene Text Recognition (STR) 논문 중 한 편인 SVTRv2을 가져왔습니다. 기존에 많이 사용됐던 CTC 기반의 방법론에 모듈을 추가해 트랜스포머 기반의 text recognizer를 능가하는 성능을 기록하는 모델을 제안한 연구입니다. 그래서 기존에 CTC 모델이 갖던 빠른 추론 속도, 간단한 구조의 장점은 그대로 가져가면서도 기존 CTC 기반 방법론들이 해결하기 못하던 걸 해결한 연구입니다. 아래에 바로 리뷰하겠습니다.

1. Introduction

스캔된 문서에 있는 텍스트를 읽는 것 보다 natural scene에서 텍스트를 인식하는 것이 더 어렵다. 배경이 복잡해 텍스트와 배경간의 분간이 어렵다거나 텍스트의 형태가 다양하다거나 글꼴도 하나로 정해진 게 없다는 이유가 있다. 이런 문제를 집중적으로 다룬 연구가 많았고 크게 제안됐던 text recognizer를 둘로 나눠보자면 CTC 기반의 방법론과 encoder-decoder (EDTRs) 기반의 방법론이 있다.

CTC 모델의 구조는 이렇다. 하나의 visual model이 있어 text image로 부터 feature 추출을 하고 CTC linear classifier 를 사용해 recognition 결과를 낸다. 직관적인 구조로 추론속도가 빠르다는 장점을 가진다. 이런 이유로 주로 상용화를 위한 OCR 모델로는 이 타입의 모델을 사용한다. 하지만 텍스트의 다양성에 대해서는 잘 다루지 못한다는 단점이 있습니다.

그래서 CTC가 갖는 이런 문제를 해결하기 위해 나온 것이 EDTRs 모델들이지요. 굽어 있거나, 방향이 여러 각도로 회전돼 있거나, 글꼴이 복잡하거나, occlusion이 있는 경우에도 그리고 다른 언어의 텍스트에도 보다 강건하게 인식할 수 있는 기술을 갖는다.

앞서 얘기한 CTC모델이 가지는 단점 즉 정확도가 EDTRs 보다 더 떨어지는 데에는 두가지 이유가 있다. 첫째, 비정형 텍스트에 대한 인식 정확도가 떨어진다. 보통 CTC는 왼쪽에서 오른쪽으로 수평방향과 거의 일치하게 정형의 텍스트에 대해서는 인식이 잘 되지만 그렇지 않은 경우에는 어려움이 있다. 둘째, EDTRs 과 다르게 텍스트가 갖는 의미 정보를 활용하지 않는다. CTC 자체로도 이런 문제를 해결하기 위해 비정형성을 완화할 수 있는 rectification을 추가하거나 2D CTC을 사용하거나, masked image modeling을 사용했다. 그럼에도 CTC와 EDTRs 간의 차이는 여전히 좁혀지지 않았다.

그리하여 이 논문의 저자는 비정형 텍스트도 잘 인식하고 텍스트의 의미 정보를 활용하도록 해 더 강력한 CTC 모델을 설계한 것이다. 1) 첫번째로 비정형 문제를 다루고자 visual feature 를 추출하고 나서 각 character에 대한 특징이 잘 정렬되도록 하는데 집중했다. 우선, 1-1) 기존에 존재하던 대부분의 text recognition 모델은 모든 이미지를 원래 크기가 다양한 것을 고려하지 않고 하나의 고정된 크기로 맞추는데 논문의 저자는 이런 기존의 방법의 유효성에 대한 의문을 제기하였다. 저자는 오히려 기존 이미지 크기와 모양을 고려하지 않고 단일 크기로 크기를 지정하는 것은 추가적으로 text에 distortion을 주는 일이라고 지적한다. 그래서 저자는 Multi-size resizing (MSR)을 도입해 종횡비에 따라 다른 크기로 reshaping하도록 해 resizing로 인한 텍스트 이미지 내 왝곡을 줄이고 각 문자가 확실히 구분되며 인식될 수 있도록 했다. 1-2) 그리고 이미지 내에서 다양하 형태로 배열돼 있는 텍스트에 대해 기존의 horizontal text에 대한 텍스트 인식에 적합한 CTC 방법을 조정해 비정형 텍스트에도 적절하게 정렬될 수 있도록 하는 feature rearrangement module (FRM)을 제안하였다. recognition 을 수행하기에 앞서 visual model로 부터 추출된 2D feature를 각 character에 대해 적절히 나눠서 하나의 시퀀스로 변환해야 한다. 이로써 CTC 모델이 rectification module을 추가로 두거나 attetion 기반의 디코더 없이도 비정형의 텍스트를 정확하게 인식할 수 있게 되었다. 2) 두번 째 문제인 문자의 의미 정보를 다루고 있지 않다는 점을 보완하기 위해서는 CTC는 visual feature로 부터 바로 text recognition을 수행하기 때문에 visual model 내에서 의미 정보를 이해할 수 있게 하는 것이 필요해 저자는 segmantic guidance module로 이를 구현하고자 했다. 간단하게 그 방법은 각 글자마다 주변 글자를 이용하는 것이었다.

text irregularity 문제에 대해서 1) MSR 2) FRM 을 linguistic context를 활용하지 않는다는 한계에 대해서는 3) SGM을 제안한 SVTRv2 모델을 최종적으로 제안함으로써 CTC 기반의 모델이 갖는 구조의 간단함과 빠른 속도를 유지하면서 성능 향상을 일으켰다.

이후 regular text와 irregular text에 대한 실험을 기존 모델과 비교하며 SVTRv2의 성능을 검증하였는데 해당 결과와 분석 내용은 방법론에 대한 설명 이후에 다시 자세하게 다루겠다.

2. Methods

overall pipeline

위는 SVTRv2의 전체 모델 구조를 나타낸 것이다. MSR을 통해 우선 입력된 이미지는 이미지의 종횡비에 맞게 크기가 조정된다. 3차례의 특징 추출 단계를 통과하며 visual feature 를 추출한다. 학습 때는 추출된 feature를 SGM, FRM에 둘 다 입력한다. SGM은 해당 모델로 부터 텍스트가 가지는 의미를 파악하고 활용할 수 있게 하고 FRM은 추출된 visual feature map은 2D인데 이를 순서를 갖는 시퀀스로 변환하는 역할을 한다. inference 시에는 SGM은 사용되지 않는다.

각 모듈에 대해서 추가적으로 설명하겠다

1. Multi-Size Resizing (MSR)

기존에는 텍스트 이미지를 32×128과 같이 하나의 고정된 해상도로 이미지를 resizing 했었다. 하지만 일부 이미지에서는 원치 않은 왜곡을 주는 꼴이 되기도 하고 이로써 character 간의 구별이 더 어려워 지게 한다는 단점이 있다. 따라서 논문의 저자는 원본 이미지가 갖는 종횡비를 고려하고 다르게 크기를 조정하는 것을 아래와 같이 제안하였다. 이미지가 워낙 긴 경우에도 유연하게 대처가 됟도록 하기 위해 R4의 경우 이미지 크기가 종횡비에 따라 유동적이게 되도록 했다. (R = W/H)

R1: R < 1.5 ⇒ [64, 64]

R2: 1.5 ≤ R < 2.5 ⇒ [48, 69]

R3: 2.5 ≤ R < 3.5 ⇒ [40, 112]

R4: R ≥ 3.5 ⇒ [32, R x 32]

2. Visual Feature Extraction

총 3단계를 거쳐 visual feature이 추출되는데 각 단계 마다 여러 번의 mixing block이 있다. mixing block도 local과 global 두가지로 나뉜다. local mixing layer에서는 grouped convolution이 수행되며 엣지, 텍스터 정보 같은 local한 character 특징을 추출하는데 쓰인다. global mixing layer는 multi-head self attention이 수행되며 텍스트를 구성하는 character 들 간의 관계에 대한 이해를 키운다.

3. Feature Rearanging Module (FRM)

어떤 각도로 회전돼 있는 것 처럼 irregular 한 텍스트에 대해서 발생하는 missalignment 를 다루는 게 FRM인데 visual feature F를 CTC가 요구하는 정렬에 맞게 \tilde{F} 의 시퀀스로 변환한다. 재정렬의 과정을 확률에 기반한 soft mapping이라고 정의하고 매핑 행렬 M을 구하도록 설계하였다. Visual feature Extraction 모듈을 통과하고 나온 feature map에서의 F_{i, j} feature를 시퀀스의 m 번째로 매핑하는 것이다. 수평 방향과 수직 방향 모두에 대해서 매핑을 수행한다. 수직 방향에 대한 매핑을 수행할 때는 수직 방향에서와는 다르게 selecting token이란 게 사용된다. 이 과정에서도 수직 방향으로 feature들이 어떻게 매핑돼서 정렬될 수 있는지를 본다. 이후 CTC clasifier를 통해 최종 예측을 낸다.

4. Semantic Guidance Module (SGM)

CTC는 visual feature로 부터 바로 CTC classifier를 통해 텍스트 시퀀스에 대한 예측이 이뤄졌었다. 여기에 lingustic information을 활용하기 위해선 visual feature에서 의미 정보를 함께 포함해야 했다. 그래서 제안한 게 SGM인데 텍스트에 대한 character 단위의 라벨이 다음과 같을 때 각 character를 주변 character 모음으로 나타낼 수 있다. character를 기준으로 왼쪽에 있는 character들의 모음 S_{i}^{l}, 오른쪽에 있는 character들의 모음 S_{i}^{r}으로 나타낼 수 있다. SGM의 역할은 이 둘로 부터 의미 정보를 visual feature로 통합하는 것이다. 즉 양 옆의 문자 정보를 이용해서 예측하는 문자의 의미를 더 명확하게 하자는 것과 같다. 왼쪽 String을 가지고 그 과정을 설명하겠다. S_{i}^{l}의 character들은 string embedding 으로 매핑된다. 그리고 어떤 representation을 생성하기 위해 인코딩된다 Q_{i}^{l} 이 인코딩된 것과 visual feature F간의 dot product로 attention map A_{i}^{l}이 만들어진다. 수식은 이렇다.

이렇게 만들어진 attetntion weight은 feature F를 가중하는 데 사용되며 현재 예측하고자 하는 문자가 이미지 상에 어디에 위치하는 지를 집중하는 거라고 보면 된다. Q_{i}^{l}대로 F에 attention된 F_{i}^{l}을 기반으로 해당 문자를 예측하고 GT와의 cross entorpy loss를 계산한다. 그리고 이 방법을 문자 우측에 위치한 문자열에 대해서도 동일하게 진행하는 것이다. SGM은 모듈은 추론 시에만 사용되는데 학습 때 해당 모듈을 통해 visual feature 자체가 context information을 가지도록 한다.

물론 SGM이 디코더 기반의 방법론을 사용하지만 추론 시에는 사용하지 않기 때문에 CTC 기반의 방법론이라고 하는데 문제가 없고 추론 과정에도 어텐션 기반의 디코딩 과정을 통해 의미 정보를 취득하는 모델들과는 차이가 있다고 강조한다.

최적화할 목적함수는 다음과 같이 나타내진다.

3. Experiments

3.1. ablation study

아래는 여러 ablation study에 대한 결과다

Effectiveness of MSR

데이터의 대부분은 R1, R2에 해당하는 종횡비를 갖는다. 고정된 크기로 resizing한 것과 비교하면 R1 은 15.3 정도의 개선 R2는 5.2 정도의 성능 개선을 갖는다고 할 수 있다. resizing 하는 크기 자체를 키웠을 때 기존 보다는 성능이 향상됐지만 그럼에도 MSR을 사용해 각 데이터에 맞는 크기로 reshaping이 하는 것이 효과적임을 알 수 있다.

Effectiveness of FRM

FRM은 방향에 따라 수직, 수평 방향의 정렬 모듈로 나눠볼 수 있는데 특히 비정형 텍스트로 구성된 Curve, MO 데이터셋 결과를 같이 보면 FRM을 전혀 사용하지 않은 것과 비교해서 각각의 모듈을 추가함으로써 각각에서의 성능 향상을 보이는 것을 확인할 수 있다. 그리고 대신 Transformer block을 사용했을 때는 향상 폭이 저조했다. text irregulary에 대해서 강인함을 알 수 있다.

Effectiveness of SGM

위는 SGM 모듈에 대한 ablation 결과로 occlusion 이 있는 OST 데이터셋에서의 향상 폭이 큰 게 특징인데 character 일부가 보이지 않는 상황에서 주변의 문자로 단어의 의미를 유추하고 이를 활용하는 것의 인식 정확도에 미치는 영향을 확인할 수 있는 결과였다.

3.2. Comparison with State-of-the-arts

다음은 24개의 기존 STR 모델들과 성능을 비교한 결과다. SVTRv2-B가 15개의 데이터셋 중 9개에 대해서 제일 좋은 성능을 보였다. 다른 모델과 비교했을 때 훨씬 더 빠른 추론 속도를 갖는다. 예를 들어 CPPD 모델도 빠른 속도로도 충분히 높은 정확도를 내기로 유명한 모델인데 저자가 제안한 SVTRv2은 이 만큼 빠르며 더 좋은 성능을 보이는 것이 확인된다. 더 작은 SVTRc2-T, S 모델들도 대체적으로 경쟁력이 있는 정확도를 가진다.

그리고 다음은 Curve, Multi-Oriented(MO)라는 데이터셋에 대한 더 자세한 분석 결과인데. 우선 위 table 3. 에서 확인할 수 있는데 두 데이터셋에 대해 다른 CTC 모델보다 높은 정확도를 갖는다. 그리고 아래표로는 rectification module이나 attention-based Decoder를 사용했을 때 보다도 더 성능이 좋음을 확인할 수 있어 SVTRv2 가 비정형 텍스트에 대한 인식 정확도가 높다는 것을 알 수 있다.

또한 긴 텍스트가 있는 데이터셋 LTB에 대한 정량적 결과와 정성적 결과를 함께 살펴보면 rectification 모듈을 사용한 것과 attention decode를 사용한 것의 결과가 현저히 낮은 한 편 SVTRv2의 정확도는 비교적 꽤 큰 차이로 높다는 것을 확인할 수 있다. 이로써 SVTRv2이 비정형 텍스트에 대해 충분히 강인하게 인식 정확도를 갖는다고 할 수 있지 않을까 싶다.

4. Conclusion

논문에서 제안한 방법론에 대해 정리하고 마무리 짓겠습니다. 기존의 CTC 기반의 STR 모델이 갖는 효율성을 그대로 가져가면서도 정확도를 높인 방법을 제안하였는데요. 기존에는 CTC 기반의 모델은 1) 비정형의 텍스트를 다루는데 정확도가 낮았고 2) 텍스트의 의미 정보를 활용하지 못했었습니다. 이를 보완하기 나온 것이 트랜스포머 기반의 STR 들이었지만 이들은 추론속도가 느리고 무겁다는 단점이 있었습니다. 그래서 논문의 저자가 제안한 것은 CTC 기반의 모듈이 앞서 설명한 문제를 해결하도록 적절히 모델을 재설계하는 것이었습니다. 우선 1번 문제를 해결하기 위해 MSR, FRM을 도입해 이미지의 왜곡을 최소한으로 하고 비정형 텍스트일지라고 character 각각에 대한 feature가 정확하게 분리되고 이용되도록 수직, 수평 방향으로 재정렬하는 과정이 추가로 설계되었었습니다. 그리고 문자가 단어에서 가지는 문맥 정보를 얻기 위해서는 각 문자를 기준으로 왼쪽, 오른쪽 문자열을 사용하도록 하는 SGM 모듈을 제안하였습니다. 그리고 실험 결과를 통해 일반적인 텍스트와 그렇지 않은 텍스트에 대해서도 전반적으로 높은 성능을 보이는 것 또한 확인할 수 있었습니다.

Author: 류 지연

1 thought on “[ICCV 2025] SVTRv2: CTCBeats Encoder-Decoder Models in Scene Text Recognition

  1. 안녕하세요. 좋은 리뷰 감사합니다.
    본 논문이 CTC 기반으로 기존 transformer 기반의 모델보다 좋은 성능을 낸 논문이라고 이해했습니다.
    1. 궁금한 점이, CTC 모델 구조를 설명해주시는 부분에서 그냥 feature에 CTC linear classifier를 사용하면 결과가 나온다고 하셨는데, CTC linear 가 어떻게 동작하는 건가요?
    2. 또, FRM 부분이 중요한 부분이라고 생각이 드는데요, 확률 기반으로 soft aranging한다는건 알겠는데 어떻게 한다는 건지는 설명이 안되어 있는 것 같아 보충 설명 부탁드립니다. 추가적으로 수직 방향에 대한 매핑에서는 왜 selecting token이 사용되는거고 어떻게 사용된다는 건지 궁금합니다.
    감사합니다.

Leave a Reply to 정 윤서 Cancel reply

Your email address will not be published. Required fields are marked *