Fully Convolutional Cross-Scale-Flows for Image-based Defect Detection 요약

경근·2023년 8월 30일
0

Abstract
자동적으로 defect detection을 수행하는 것을 defective 샘플 없이 수행한다. 최근 defect free data에 대한 distibtuion 모델 연구가 진행되어 왔는데, 이는 통계적 priors 에 강하게 의존하거나, 간단한 data representation에 의존하였다. 반면에 우리의 접근 방법론은 fine-grained representataions를 글로벌과 로컬 이미지 문맥을 통합하며, 동시에 유연하게 density를 estimating 한다. Fully convolutional cross-scale nomalizing flow를 수행한다. (CS-Flow) 이며, 이는 다차원의 feature maps를 다른 스케일로 jointly 처리한다. normalizing flow를 활용하여 인풋 샘플에 대한 likelihood 를 만들어 이미지 레벨에서 효과적인 defect detection을 진행한다. 그러므로, normalizing flow의 latent space를 arragement 덕분에, 이미지 레벨에서 defective regions을 검출한다.

Introduction

defects는 시간에 따라 점차 발생하는데, 실 세계에서 몇몇 defecct은 예시가 존재하지 않는다. 즉, unseen type 에 대한 defect은 standard classification approach에 적용이 어렵다. 즉, defect detector가 정상 샘플에 대해서만 학습하는 상황을 피할 수 없다는 것이다. 이를 OOD 라고 한다. 우리는 이것을 feature level에서 distribution의 OOD를 normalizing flow를 통해 수행한다.
보통의 이상치 탐구 연구는 intra 분산, inter 분산에 집중한다. 하지만 실제 defect은 아주 작은 분산을 가지고 있다. 따하서, 대부분의 AD 접근론은 적절하지 않다. 최근의 연구는 이미지넷의 feature의 density estimation을 통해서 이루어진다. 하지만 이런 정보는 feature map의 averaging 과정이 포함되기 때문에 혹은 density estimation 과정을 거쳐야 하기 때문에 문제가 있다.
본 연구에서는 이러한 이슈를 해결하기 위해 normalizing flow를 제안하여 multi-scale feature maps를 density를 예측하는데 사용한다. 또한, 노멀라이징플로우(NF)는 생성 모델로 학습 set의 분포를 latent space의 prioir 분포로 maximum likelihood optimiztion을 통해 변환을 진행한다. VAEs 혹은 GANs 와는 다르게 NFs의 잠재공간 벡터의 likelihood는 인풋 데이터의 likelihood로 분석이 가능하다. 그러므로, 잠재공간상의 높은 우도를 보이는 것은 정상 샘플일 가능성이 높고, 이상 샘플일 수록 잠재공간상에서의 위치가 멀어질 것이다.
하지만, 이미지의 NFs 를 통한 OOD는 아직 잘 정립되지 않았다. 이는 네트워크가 유용한 분포를 학습하지 못한다면, 이는 local pixel의 상관관계에 집중하고, semantics를 무시하게 되는 것이다. 이러한 이유 때문에 feature maps에 density estimation을 진행하고, compressed 된 semantic 정보를 획득한다.
본 연구의 contribution은 다음과 같다.
1. CS-Flow는 defects를 멀티 스케일의 feature maps를 jointly likelihoods를 estimation 함으로써 탐지한다.
2. 본 연구는 latent space의 해석력을 이용하여 이미지 구조를 유지하고, 정확한 defect detection이 가능하도록 한다.
3. SOTA를 MVTec 의 AD에서 달성하였다.

Normalizing Flows

NF는 데이터를 추적가능한 분포로 변환하는 생성모델이다. 기존의 neural network와는 다르게, 이들의 mapping 은 bijjective(일대일 대응) 이며, 학습과 평가가 양방향으로 가능하다. forward 방향으로는 데이터를 latent space로 project하고 predefined 된 latent distribution의 likelihood를 계산한다. 반대로, predefined 분포에서의 샘플된 데이터는 오리지널 space로 맵핑되어 데이터를 생성한다. 이를 가능케 하는 변환은 invertible affine transformations 이라고 한다. 인는 fixed 혹은, autoregressive flow를 통해 수행되는데, 후자에는 MADE라는 기법이 있다. 이것은 Bayesian chain 룰에 의해 density 계산이 이루어지는데 코스트가 많이 들어가게 된다. 반대로, invese autoregressive flows는 샘플링에 효과적이지만 likelihoods를 계산하는데는 효과적이지 않다. Real-NVP는 이러한 문제를 해결하기 위해 양방향으로 계산이 효율적이게 설계하였다. 따라서 본 연구는 Real-NVP를 개선하는데, 멀티플 스케일에서 작동이 가능하도록 한다.

Method

첫번째로, 통계 feature y 를 학습하며, defect 이 없는 이미지 x 에서도 학습한다. likelihood를 인풋 이미지 x에 대해 assign 한다. 이는 이미지 feature y에 대해서 density estimation을 진행하여 인풋 이미지 x에 대한 likelihood를 assign 한다. density estimation은 feature space Y(unknown dist.) 에서 latent space Z(Gaussian dist.)로 mapping하며 학습된다.

feature extraction X-> Y
desity estimation Y-> Z
인풋 이미지 x에서 feature y를 추출하는 것은 pretrained 된 neural network에서 이루어진다. 이는 학습 도중에 바뀌지 않는다.
fine-grained positional 과 contextual 정보가 보존된다. threshold 세타가 있다면, 이것이 likely hood estimation으로 세타보다 작으면 anomalies 라고 판단한다.

CrossScale Flow

기존의 normalizing flow를 cross-scale 을 통해 발전하였다. feature maps를 다른 사이즈로 각각 interact 할 수 있다. 게다가 fully convolution network 이기때문에 공간 정보가 보존된다.

cross-scale flow는 coupling blocks의 chain 이다. 알고리즘 수식은 다음과 같다.

Learning Objective

학습 과정에서, cross-scle flow를 통해 likelihoods를 최대화 한다.

이는 우리의 로스식에서 negative log-likelyhood를 주게 된다.

야코비안 행렬을 통해 CrossCale Flow term 이 간단하게 나타난다. 또한 l2 norm 을 추가하여 로스식을 안정화 한다.

Localization

우리의 feature map 은 fully-convolutional 이기 때문에, positional information이 보존된다. 이것은 각 output 이미지의 interpertation을 통해 likelighood 에 대한 localization 정보를 제공한다. 전체 이미지의 anomaly score가 있으므로, 각 feature map의 local position에 대한 anomaly score를 계산할 수 있다. 이르 통해 이미지 region의 defect 을 마킹할 수 있다.

Experiments

데이터셋 : MVTec AD, Magnetic Tile Defects (MTD)
Implementation Details : s = 3으로, 인풋 이미지는 768  768, 384  384, 192192 의 픽셀을 가짐. feature maps는 2424, 1212 66 픽셀을 가지며, 304개의 채널을 가짐
nblocks = 4

Detection

AUROC를 metrics로 사용

MVTec AD


SOTA를 달성하였음. 더 자세한 비교를 위해 1-NN 과 Mahal. 방법론을 같은 multi-scale features로 평가하였다. 제시한 방법론이 단지 16개의 shot을 보여주었을 때에도 좋은 성능을 보였다.

MTD


본 데이터에셋에 대해서도 성능이 SOTA를 달성하였음. 또한, likelihood 가 지정된 것으로 보아 non-defective part와 defective part를 잘 구분함

Localization

output value는 highest scale output이다. 따라서, 이는 anomalous 가 나타나는 region의 receptive position이라고 보면 된다.

이 결과를 통해 defective regions가 적절히 탐지됨을 확인할 수 있다.

Ablation Studies

멀티 스케일에 따라 defect detection 퍼포먼스가 어떻게 변화하는지를 보였다.

싱글 스케일의 NF 일때 3가지 픽셀 사이즈 모두 성능이 멀티스케일보다 낮았다.
또한 NF에서 cross되는 부분을 seperate 하게 네트워크를 변화하였을때도 성능이 좋지 못헀다.
이는 cross-convolutional multi-scale procedure 이 성능 향상의 핵심 프레임워크임을 보인다.


커플링 블럭의 갯수가 4까지 cross-convolutional의 퍼포먼스가 상승하다가, 그 이후로는 saturated 됨을 볼 수 있다.

Conclusion

semi-supervised method로 효과적으로 defect 을 탐지할 수 있었다. 이는 normalizaing flow를 통해 가능하며, 멀티 스케일의 feature map을 cross-convolution blocks을 통해 normalizing flow 구조에서 likelihoods를 assign 하는 알고리즘을 가졌다. 이를 통해 SOTA 성능을 보였다.

0개의 댓글