
기존의 Crack Segmentation 연구들은 최근 선형 복잡도로 장거리 의존성을 모델링할 수 있는 Mamba 구조를 채택해 왔다. 하지만 기존 방식에는 다음과 같은 치명적 한계가 있었다.
균열은 일반 객체와 달리 정형화되지 않은 복잡한 형태를 가진다. 또한 도로 아스팔트와 같은 배경 속에서 파묻혀 있는 경우가 많아 전통적인 객체 탐지 기법으로는 판별하기 어렵다.
CNN에 기반한 초기 Crack Segmentation 모델들은 국소적 패턴에 집중하여 어느정도 합리적인 결과를 냈지만, CNN의 한계인 제한된 Receptive Field로 인해 균열의 전역적 연속성을 모델링하는 데에 어려움이 있었다.
Transformer 기반 모델들 또한 한계가 존재하는데, 고해상도나 실시간 환경에서의 확장성이 Quadratic Complexity에 의해 제한되었다. (해당 복잡도는 self-attention으로 제곱에 비례하게 복잡도가 증가한다.)
이 두 측면에서의 단점을 보완하기 위해 SSM(space state model)이 해결책으로 제안되었다.
그 중 Selective State Space 매커니즘을 기반으로 하는 Mamba는 linear time complexity를 가진다. ()
기존 SSM의 한계와 Selective의 중요성
기존의 선형 SSM(Linear SSM)은 시계열 데이터나 텍스트를 처리할 때 시간에 독립적인 행렬에 따라 과거의 정보를 압축하여 '상태(State)'로 유지했다. 이에 따른 장점과 단점은 다음과 같다.
- 기존 SSM의 장점: 연속적인 시스템을 모델링하므로, RNN처럼 이전 상태만 기억하면 되어 추론 속도가 매우 빠르고 매모리가 적게 소모된다.
- 기존 SSM의 단점: 입력 내용에 상관없이 항상 동일한 방식으로 정보를 축적하고 흘려보낸다. 때문에 어떠한 정보가 중요하고, 어떠한 정보가 덜 중요한지를 문맥에 맞게 Select하지 못하였다. 이로인해 언어 모델링처럼 맥락이 중요한 Task에서는 성능이 크게 떨어졌다.
Mamba의 핵심: Selective State Space
Mamba 논문의 연구진들은 기존 SSM의 행렬들을 "입력 데이터에 의존하는 함수"로 만들었는데, 이것이 바로 Selective SSM이다.
트랜스포머가 Attention을 통해 단어간의 연관성을 '선택적'으로 보는 것처럼, Mamba는 현재 들어온 입력 단어를 보고 상태 공간 행렬()와 시간 보폭()를 실시간으로 계산한다.
중요한 정보가 들어오면, 시간 보폭()를 작게 설정하여 현재 정보를 강력하게 State에 반영하고 오랫동안 기억한다. 덜 중요한 정보가 들어오면 시간 보폭()를 크게 하거나 가중치를 줄여 정보를 필터링하고 흘려보낸다.그럼 이게 왜 Linear Time Complexity?
논문에서 Mamba가 Linear한 Time complexity를 가진다고 하였는데, 이는 문장이 아무리 길어져도 연산량과 메모리가 그에 비례하여 완만하게만 증가하며, 동시에 아주 멀리 있는 정보도 놓치지 않고 기억할 수 있다라는 뜻이다. 이는 두 가지 구조로 가능한데,
1. Recurrent와 Convolution의 하이브리드 구조
- 학습할 때에는 전체 문장을 한 번에 계산하는 병렬 연산으로, GPU의 호환성을 극대화한다. ()수준의 고속 학습이다.
- 추론할 때에는 이전 핵심 정보만 압축된 고정 크기의 State만 참조하므로, 문장의 길이가 아무리 길어져도 단어 하나를 뱉는 속도가 일정하다.
- Hardware-aware SRAM/HBM의 이중화
- Selection 매커니즘으로 입력에 따라 행렬이 계속 바뀌면 GPU 메모리 전송 속도가 느려지는 고질적 문제가 있다. Mamba는 이를 SRAM와 HBM사이의 데이터 이동을 최소화하는 커널을 설계했다고 한다.
아니 잠시만... 이거 어디서 많이 익숙한데...
유레카!! Flash Attention이랑 같은 아이디어인 것이다!
그런데 적용 대상이 Attention Map()이냐, SSM Scan 연산()이냐의 차이라고 한다.
Mamba는 이만 여기까지만 알아보고.. 이어서 계속 CrackSSM을 알아보자. (Mamba는 추후 아예 리뷰를 진행 예정이다.)
VMamba는 Mamba를 시각 도메인으로 확장한 것인데, 2D Feature Map을 여러 공간 축을 따라 1D 시퀸스로 Flatten하는 다방향 스캐닝을 한다고 한다. 이 스캐닝 방식은 단방향 SSM보다 더 많은 공간적 맥락을 보존한다.
이러한 아이디어를 바탕으로 Crack Segmentation(CS)를 연구하고 있는데, SCSegamba는 대각선 형태의 뱀 모양 스캔 경로를 도입하고 균열 분석을 위한 경량 인코더에 SSM을 통합한다.
VMamba와 SCSegamba의 한계
사실 1D Sequence로 변환하기 위해 사용하는 고정된 다방향 스캐닝도 곡선 또는 단절된 균열의 경우 공간적 연속성을 방해하여 S6의 인과 모델링 능력을 약화시킨다.
여기서 가질 수 있는 질문은 다음과 같다.
1. 원래 이미지의 고주파 성분을 활용하는 웨이블릿 기반 디코딩 메커니즘이 미세 균열의 상세 표현을 개선하고 노이즈를 억제하여 분할 정확도를 높일 수 있는가?
2. 동적 스캐닝 및 웨이블릿 변환을 통합한 모델이 기존 SOTA 대비 더 적은 파라미터와 빠른 추론 속도로 우수한 균혈 분할 정확도를 달성할 수 있는가?
위 질문에 집중하며 논문을 읽어보자.
본 연구는 State Space Models (SSMs), 특히 Mamba의 S6 메커니즘을 기반으로 한다. SSM은 시퀸스 데이터 모델링에 강력하며, 선형 시간 복잡도로 Long range Dependency를 효율적으로 포착할 수 있다.
그러나 2D Feature Map을 1D 시퀸스로 Flatten할 때 고정된 스캐닝 경로를 사용하면 공간적 연속성이 깨져 불규칙한 균열 패턴을 효과적으로 모델링하기 어렵다.
CrackSSM은 이러한 한계를 극복하기 위해 동적 토큰 재정렬(Adaptive Token Reordering, ATR)전략을 도입하여 균열 관련 영역이 1D Sequence에서 인접하게 유지되도록 토큰 순서를 재정렬한다.
ATR에 대해서 조금 더 알아보자.
ATR 덕분에 Mamba의 S6 모듈은 고유의 장점인 '선형 연산 효율성'을 그대로 유지하면서도, 파편화된 균열 패턴 사이의 인과 관계를 훨씬 더 강하게 모델링하는 것이다.
재정렬을 거치고 나면, 실제 2D 이미지 공간에서 의미적으로 연결되어 있는 균열 영역의 픽셀들이 1D 시퀸스 상에서도 서로 Adjacent하게 위치한다.이것이 DPSM(Dynamic Path Scanning Mamba) 모듈의 핵심이다.
1. Directional Response Intensities
고정된 스캔 순서가 아닌, High-level Feature로부터 방향성 응답 강도를 계산한다. 이 때 보는 4가지 방향은 Wavelet 변환의 LL, LH, HL, HH와는 다르니 주의한다.
구분 DPSM의 4방향 (Encoder) Haar Wavelet (Decoder) 목적 균열이 어느 각도로 흐르는가? (경로 탐색) 어디에 픽셀 경계가 있는가? (선명도 복원) 구성 수평, 수직, 대각선1, 대각선2 LL(저주파), LH(수평), HL(수직), HH(대각선 통합) 대각선 2개로 분리 (좌/우 기울기 구분) 1개로 통합 (HH) 저주파 없음 (뻗어가는 방향만) LL로 존재 (WGM에선 안씀)
2. Token Reordering
계산된 방향성 단서들은 1D 토큰 시퀸스를 재정렬하는 데 핵심적인 가이드 역할을 한다. 의미론적으로 연관되고 공간적으로 연결된 균열 영역들이 1차원 배열 상에서도 서로 Adjacent하게 보장하도록 한다.
- 일반적인 모델들이[B, C, H, W]텐서를 단순 Flatten하여[B, C, L]형태로 순서대로 펴버린다면, CrackSSM은 앞서 구한 방향성 가중치를 기준으로argsort같은 정렬 연산을 수행한다.
3. 선형 효율성과 인과 모델링의 결합
스캐닝 경로를 균열의 본질적 규조와 딱 맞게 정렬시켜, S6 모듈은 파편화된 균열 패턴들 사이의 인과적 종속성을 더 잘 포착한다.
또한 웨이블릿 변환(Haar Wavelet Transform)의 고주파 성분을 활용한다. 웨이블릿 변환은 이미지를 저주파와 고주파 성분으로 분해하여, 고주파 성분이 미세한 균열 엣지 표현에 유용하다.
Decoder에서는 Feature Map을 Upsampling하는데, 기존의 일반적 업샘플링 방식은 얇거나 주변과의 대비가 낮은 미세한 균열의 경계선을 흐릿하게 블러처리하는 단점이 있다.
때문에 형태의 충실도를 높이고 이미지의 경계선이나 질감 등 급격하게 변하는 픽셀 정보(고주파)를 분리하기 위해 Haar Wavelet 변환을 사용했다.왜 DWT가 아닌 Haar Wavelet 변환인가?
기존 SOTA보다 효율적인 모델을 만드는 것이 목표이기도 하고, DWT를 쓰면 모델이 묵워진다. DWT 기법 중에서도 모델의 효율성과 균열의 형태에 가장 잘 맞는 필터를 사용한 것이다.
CrackSSM은 세 가지 stage로 구성된다. 인코딩 단계(Encoding Stage), 특징 강화 단계(Feature Enhancement Stage), 디코딩 단계(Decoding Stage).

인코딩 단계에서는 주로 입력 이미지에서 다중 스케일 특징을 추출한다. 특징 추출의 효율을 위해, 연구진들은 바닐라 VSS 기반 백본을 사용했다.
바닐라 VSS는 VMamba 논문에서 제안된 아키텍처로, ResNet, Swin-T 등 비전 백본과 유사하게 총 4개의 Feature Extraction Stage로 구성되어있다.
- 입력 이미지 ()가 각 스테이지를 통과할 때마다 Spatial 해상도는 가로세로가 각각 절반으로 줄어들고 (), 특징 채널 수는 기본 채널 수 를 기준으로 배수()로 확장된다.
- 이 과정을 통해 모델은 저수준의 정밀한 경계선 Feature부터 고수준의 풍부한 의미론적 Feature까지 다루는 멀티스케일 특징 맵의 집합를 계층적으로 얻는다.
SS2D 매커니즘: VSS 블록의 핵심 연산으로, 1차원 순차 데이터에 종속적이었던 기존 Mamba의 S6 알고리즘을 2D 이미지 특징 구조에 맞게 변환해 주는 가교 역할을 한다.SS2D 매커니즘
텍스트와 달리 이미지는 사방으로 정보가 나열된 2D 평면이므로 인과적 방향성이 고정되어 있지 않다. 단순 이미지 픽셀을 좌측 상단부터 우측 하단 방향으로 일렬로 펴서 1D 시퀸스로 변환하면, 2D 평면상에서 세로축으로 바로 위아래 붙어있던 인접 픽셀들이 1D 시퀸스 상에서는 엄청나게 멀리 떨어지게 되는 공간적 연속성 파괴 문제가 발생한다.
⚠️ ViT의 패치화랑 헷갈리지 않도록 주의한다. 패치화는 원본 이미지를 깍둑기로 만드는 것이지만, VSS의 Flattening은 CNN을 거친 Feature Map이며, 1x1 픽셀이다.
이를 해결하기 위해 VSS의 SS2D 매커니즘은 '고정된 4가지 방향의 스캐닝 경로'를 수행하여 공간 왜곡을 상쇄한다.
- 스캔 1 (Horizontal Forward): 좌상단 우하단 방향으로 가로축 중심 순방향 스캔
- 스캔 2 (Horizontal Backward): 우하단 좌상단 방향으로 가로축 중심 역방향 스캔
- 스캔 3 (Vertical Forward): 좌상단 우하단 방향으로 세로축 중심 순방향 스캔
- 스캔 4(Vertical Backward): 우하단 좌상단 방향으로 세로축 중심 역방향 스캔
VSS Layer 내부에서는 다음과 같은 연산이 이루어진다.
SS2D는 하나의 2D Feature Map을 위 4가지 규칙에 맞춰 각기 다른 4개의 독립된 1D 토큰 시퀸스로 펼친다.
그 후, 각각의 시퀸스를 개별 S6 SSM 블록(VSS Layer 내부에 있음: 4개)에 병렬로 통과시켜 전역적 맥락을 병렬적으로 연산한다.
연산이 완료되면 역순으로 시퀸스들을 다시 원래의 2D 좌표에 맞춰 복원(Unflatten)한 뒤, 하나로 병합하여 최종 Feature Map을 만든다.
VSS Layer 4에서 나온 최상위 Feature Map ()는 의미론적 정보는 풍부하지만, 무엇이 어디에 있는지에 대한 위치 정보는 떨어진다. 이 Feature Map을 로 깎아내기 위해 두 가지 과정을 거친다.
Coord Conv와 DWConv를 이용하여 좌표 정보를 덧입히고 채널을 4개로 압축하여, 균열이 수평, 수직, 대각선(2개) 중 어느 방향으로 뻗어 있는지 알려주는 4채널 방향성 맵 ()을 만든다.
- Coord Conv (Coordinate Convolution): 일반적인 합성곱 (CNN)은 '형태'는 잘 보지만 '위치'는 잘 모른다는 단점이 있다. CoordConv는 입력 Feature Map에 좌표 채널을 물리적으로 끼워 넣는다.
모델이 어느 위치에서 어느 패턴을 보고 있는지 공간적 좌표 감각을 갖게 한다.
- DWConv (Depth-wise Convolution): 공간 감각을 얻은 Feature Map을 의 가볍고 효율적인 Feature Map으로 압축한다. ( 완성)
이 는 하위 레이어인 Layer 1, 2, 3에 배치된 각각의 DPSM Module로 들어가게 된다.
이후 Softmax를 에 Channel-wise로 하나의 픽셀 위치에서 4개의 채널에 대해 적용한다. 즉, "이 픽셀 안에서 수평일 확률, 수직일 확률을 계산하는 것이다.
이 는 네트워크의 다음 레이어로 넘어가는 게 아니라, Cross-Entropy Loss 계산으로 직행한다. GT에 Sobel 커널을 씌워서 만든 진짜 방향 정답지인 와 비교해서 오차를 계산한다.
DPSM에 가 아닌 을 넣는 이유는?
- Softmax를 채널에 대해 적용한다고 했다. 균열이 교차하는 지점을 생각해보자. 가로 세로의 확률이 50:50으로, 절대적 수치가 반토막난다.
토큰을 재정렬하는 DPSM은 픽셀의 응답 강도(Intensity)가 전체 이미지에서 얼마나 강한지, 절대적 신호의 세기가 필요한 것이다. 때문에 을 사용한다.- 공간적 정렬의 기준
논문의 수식 (2)를 보면 이라고 되어있다. 이 는 번째 방향에 대해 이미지 전체 픽셀들의 순위를 매긴다.
만약 확률값인 을 기준으로 하면 전체적으로 신호가 약한 배경 픽셀이더라도 우연히 상쇄하는 신호가 더 약해서 수평 확률이 높게 찍히면 정렬 최상단으로 올라오는 오류가 발생한다.
DPSM Block을 알아보기 전에, 텐서 차원을 한 번 정리하고 넘어가자.
(): VSS Layer 4에서 만들어져, 가로세로 크기가 ()로 아주 작다.
() - 현재 Feature Map: 예를 들어 Layer 1에서 넘어온 Feature Map이면 ()로 훨씬 크다.
이 둘이 융합되어야 하기 때문에 을 DPSM 내부에서 사용하기 직전, 현재 들어온 의 해상도에 맞춰 Upsampling한다. F.interpolate로 의 텐서 크기를 맞추는 것이 중요하다.
DPSM은 동적 경로 계획 접근 방식을 사용하여 초기 고정 경로 시퀸스를 재정렬한다. 이는 4가지 주요 방향(수평, 수직, 대각선(x2))을 따라 균열이 얼마나 강하게 표현되는지 나타내는 방향성 응답 강도를 계산하여 토큰 순서를 재정렬한다. 이를 통해 공간적으로 연관된 균열 영역이 1D 시퀸스에서 인접하게 유지되어 S6의 인과 모델링 능력을 향상시킨다,
,
를 각각 독립적인 S6블록(Mamba의 핵심 연산 모듈)에 통과시킨다.
1D Sequence 연산이 끝났으니, 다시 2D 이미지를 처리해야 한다.
마지막으로 Feature map의 퀄리티를 한 번 더 올리는 작업을 한다.
이 모든 과정을 거치고 나면, 모델이 균열 특징을 완벽히 잡을 수 있는 강화된 최종적인 피처맵 이 탄생한다.
U-Net 구조를 살펴보면 디코딩이 보통 Upsample과 Concat의 반복인 것을 알 수 있는데, CrackSSM은 여기에 Haar Wavelet을 더하여 뭉개진 균열을 살려낸다.
디코딩에서는 총 세 가지의 데이터를 사용하여 원본 해상도를 복원한다.
Figure 2의 노란색 Upsampling Block 내부에서는 해상도를 키우는 작업과 경계를 선명하게 다듬는 작업이 동시에 진행된다.

단순 업샘플링으로 발생하는 경계가 뭉개지는 현상을 해결하기 위해 각 디코딩 단계마다 를 적용한다.
원본 고주파 맵 를 현재 업샘플링 된 Feature Map의 해상도에 맞게 Downsampling한다.
이를 1x1 Conv과 Sigmoind에 통과시켜 0과 1사이의 값을 가지는 Spatial Gating Weights, )를 생성한다.
이 수식은 wavelet 고주파 맵을 통해 0~1사이의 가중치 맵 (, 내지는 ) 를 만드는 과정이다.
이 가중치를 방금 업샘플링한 Feature Map에 Element-wise 곱을 하여 실제 고주파가 존재하는 픽셀의 특징은 증폭시키고 배경 노이즈는 억제한다.
WGM을 거쳐 경계선이 명확해진 하향식 Feature Map은 동일한 해상도를 가진 DPSM의 출력 와 결합된다.
Figure 2의 좌측에 위치한 파란색 블록으로, 최종 분할 결과를 출력하기 직전에 수행되는 전역 최적화 단계이다.
GRO Mechanism: 원본 해상도로 복원된 최종 디코딩 Feature Map ()과, 크기 변환을 거치지 않은 원본 고주파 맵 전체 사이의 픽셀 단위 유사도를 연산한다.
는 뭐가 다른가요?
는 논문에서 공식적으로 정의한 1차원 통합 맵이지만, 는 딥러닝 연산과정에서 3개의 서브밴드가 합쳐진 '다채널 Feature Tensor' 상태를 직관적으로 설명하기 위한 개념적 표현입니다.
이를 통해 디코딩된 Feature Map이 실제 이미지의 물리적 엣지 구조와 얼마나 일치하는지 전역적으로 평가하여, 객체 관련 디테일을 한 번 더 강화하고 남아있는 노이즈를 억제한다.
최종 출력: GRO를 통과한 Feature Map은 마지막으로 1x1 conv와 sigmoid를 거쳐 각 픽셀이 0과 1의 확률을 갖는 Binary Segmentation Map으로 최종 출력된다.
Decoder 구조는 Skip Connection으로 다중 스케일 특징 융합이라는 전통적인 U-Net의 틀을 따르되, wavelet 기반의 고주파 정보를 매 단계(WGM)와 최종 단계(GRO)에 주입하여 불규칙적이고 얇은 균열의 구조적 충실도를 유지하도록 설계된 것이다.
CrackSSM의 최종 손실 함수는 직관적인 두 가지의 합으로 이루어져있다.
디코더를 통과한 최종 예측 결과물 ()과 GT 사이의 오차를 구하는, Segmentation Task의 정석적인 손실 함수이다.
이게 바로 를 학습 시키는 보조 손실함수이다.
이 손실 함수가 조금 특이한데, 모델이 방향을 잘 찾도록 두지 않고, 정답지를 만들어 직접 채점한다.
진짜 방향성 정답지 () 만들기
원본 GT에는 균열이 있다(1)는 정보만 있을 뿐, 방향성의 정보는 없다. 때문에 연구진들은 소벨 필터를 정답지에 문질러 수평, 수직, 대각선 2개의 엣지(방향성)을 수학적으로 추출한다. 이게 바로 모델이 봐야하는 방향성이 포함된 정답지 이다.
Wavelet도 4개 서브밴드 만드는데, 왜 굳이 Sobel Filter를?
방향을 계산하는 수학적 원리와 대각선을 처리하는 방식에서 결정적인 차이가 있다.
Sobel의 원리
소벨 필터는 영상처리에서 픽셀값의 미분값을 이용해 엣지를 찾는 고전적인 방법이다.
Part 1.
,
GT 위에 이 필터들을 픽셈라다 훑으면, 각 픽셀 위치에서 가로로 얼마나 색이 변했는지 (), 세로로 얼마나 변했는지() 수치가 나온다.Part 2. 계산
를 직각삼각형의 밑변과 높이라고 해보자. 삼각함수 아크탄젠트를 이용하여 엣지가 뻗어 나가는 정확한 각도를 다음과 같이 계산할 수 있다.
그럼 Wavelet은?
2D Haar Wavelet도 4개의 조각으로 분리하긴 한다. 하지만 구성이 소벨과는 약간 다른데,
- LL (Low-Low): 저주파 (방향성 x)
- LH (Low-High): 수평 엣지 (고주파)
- HL (High-Low): 수직 엣지 (고주파)
- HH (High-High): 대각선 엣지 (고주파)
웨이블릿은 LH, HL는 잘 분리하지만, 대각선 정보는 HH 하나로 통합된다.
딥러닝 모델이 토큰을 DPSM에서 재정렬하려면, 균열이 오른쪽 대각선인지, 왼쪽 대각선인지 명확히 알아야 한다.
때문에 Sobel 사용하는 것!
Cross-Entropy & Masking
앞서 에 Softmax를 씌워 만든 확률 분포 맵 을 가져와, 와 비교한다. 이 때 CE를 사용해서 가중치를 수정하도록 학습시킨다.
[0, 0, 0, 0] 벡터로 Masking 처리한다. 오직 진짜 균열이 지나는 전경 픽셀에서만 방향성 오차를 계산하도록 만들어, 혼란을 방지한다.기존 CNN이나 Transformer 기반 모델들과 비교했을 때, CrackSSM은 Mamba 특유의 선형 복잡도() 덕분에 엄청난 효율성을 보인다.
CrackSSM은 기존 SSM의 고정 스캐닝 한계를 극복하기 위한 동적 스캐닝(DPSM), 미세 균열 상세 복원으르 위한 웨이블릿 기반 디코딩 (WGM, GRP)라는 두 가지 핵심 이론적 접근 방식을 제시했다.
결론적으로는 CraskSSM은 동적 경로 계획과 고주파 사전 지식 활용을 통해 SSM의 잠재력을 균열 분할이라는 복잡한 문제에 효과적으로 적용하고, 기존 모델의 한계를 극복하며 효율성과 정확도 모두를 잡았던 것이다.