본문 바로가기
딥러닝 with Python

[개념정리]Fully Connected CRFs란?

by CodeCrafter 2024. 2. 7.
반응형

 

이번에 다룰 내용은 Fully Connected CRF입니다. 

여기서 CRF란, Conditional Random Field의 약자로, 이미지 Segmentation task에도 사용되는 확률적인 모델을 의미합니다.

 

1. Computer Vision에서 CRF란? 

 - Computer Vision task에서 CRF는, 이미지의 각 픽셀이 특정 클래스에 속할 확률을 계산하여 최종 Segmentaion 결과를 도출하는 것을 말합니다.

 

 - CRF는 은 아래와 같은 특징을 가지고 있습니다.

  a) 그래프 기반의 모델(GNN)로써, Node와 Edge로 구성됩니다. Node는 관측된 변수(예: 이미지 픽셀 등)을 나타내며, 엣지는 노드 간의 상호작용을 나타냅니다.

  b) 확률적 모델로써, 랜덤 변수들 간의 조건부 확률 분포를 정의합니다. 

  c) 조건부 모델링을 수행하는데, 관측된 변수의 조건하에서 다른 변수들의 확률 분포를 학습하거나 추론합니다. 즉, 이미지 Segmentation에서는 각 픽셀의 레이블을 예측하는 것은 주어진 이미지에 대한 레이블 분포를 학습하는 조건부 모델링 작업이 되는 것입니다. 

 

- CRF 모델의 구성

 * Unary potential : 각 픽셀이 특정 클래스에 속할 확률

 * Pairwise potential : 픽셀 간의 관계를 나타내며, 픽셀 간의 공간적 관계 및 색상적 유사성 등을 고려

 * Higher-order potential : 3개 이상의 픽셀 간의 관계를 의미

-CRF 학습 방법

  * Maximum likelihood 추정 : 학습 데이터의 log likelihood를 최대화하는 모델을 학습

  * 구조적 SVM : CRF 모델을 SVM으로 학습

  * Gibbs sampling : MCMC 방법을 사용하여 CRF 모델 학습

 

- CRF와 같은 작업은 픽셀 단위의 세밀한 예측이 필요하다는 측면에서, object-centric한 classifcation task를 할 때 큰 Receptive field와 다수의 Max pooling layer를 통해 global한 특징 추출에 초점을 맞추고 있다는 점이 Segmentation task에서는 한계가 된다는 부분에 착안하여 CV task에 사용되었습니다.

 

2. Fully Connected CRF란?

- 이와 같이 CRF는 픽셀 단위 분류를 하는 Segmentation에서 예측 과정간 발생하는 noise들을 없애기 위해 사용되었습니다. 하지만, 보통 중간 단계에서 후처리를 하는 Short range CRF가 대부분이었습니다. 

 

- 일반적인 DCNN에서는 여러 단계의 conv + pooling을 거쳐 feature map의 크기가 작아지고 그것을 upsampling 하는 과정에서 원래 크기의 이미지로 복원하기 때문에, Upsampling 과정에서 smoothing 현상이 이미 발생합니다. 이 과정에서 CRF를 적용한다면, 즉 smoothing 된 서로 차이가 크지 않은 픽셀들에 CRF를 적용한다면 결과가 더 나빠질 수 있습니다. 

 

- 이것에 대한 해결책으로 나온 것이 Fully Connected CRF입니다.

 * 기존의 Short range의 CRF를 적용시 아래 그림 처럼 local connection 정보만을 사용하게 되어 detail한 정보를 얻을 수는 없게 됩니다.

* 반면, fully Connected CRF를 사용하게 되면 아래 그림 처럼 detail한 결과를 얻을 수 있습니다. 

 

-이를 적용하여 

 

다음과 같이 이미지가 더 세분화되는 결과를 맞게 되었습니다.

 

* DCNN의 Score map은 객체의 대략적인 위치와 존재만을 예측해주지만, 경계는 잘 잡 못잡아내고 있습니다. 위에서 언급한 Global한 Fully connected CRF를 적용하게 되면 Iteration이 반복 될수록 점점 더 그 경계를 명확히 잡아내는 결과를 보여주고 있습니다. 

반응형

댓글