이 논문의 핵심 : synthesis, reconstruction, localization
기존의 one-model-N-classes 셋팅의 경우 storage, time cost, fearful degradation 문제가 존재함.
본 논문에서는 unified CNN framework OmniAL을 제안함. 기존 UniAD보다 성능또한 개선함.
정상 데이터로만 학습함. 간략히만 요약하면,
photo-realistic anomalous를 5개의 pre-defined panels로부터 고른 지역에 syntesize함.
anomaly-free reconstruction and an anomaly localization sub-networks(Alternative basic blocks, DCSA blocks로 구성)에 피드돼서 학습됨.
Introduction
fig 1a처럼 conventional 학습 패러다임은 N models for N classes임. 이 경우 class수가 증가함에 따라 storage와 training time cost가 증가함.
또 fig 1b를 보면 one model for N class 패러다임으로 바꾸게 될 경우 anomaly localization 성능이 하락함. (JNLD라는 연구는 reconstruction-based unified method인데, reconstruction failure or localization failure하는 결과를 보임.)
따라서 unsupervised anomaly localization을 위한 robust unified framework인 OmniAL 제안.
Panel guided anomaly synthesis 방식을 통해서 각 학습 방식마다 정상 비정상의 부분을 컨트롤 함. 이렇게 함으로써 identical shortcut 문제 해결.
Dilated channel and Spatial Attention(DCSA) blocks로 구성된 reconstruction and a localization sub-networks를 구성해서 anomaly reconstruction error 키움.
Anomaly region에 대한 localization을 잘 하기 위해 reconstruction and localization sub-networks 사이에 DiffNeck module을 적용
Method
Panel-guided anomaly synthesis
학습 시에 정상 샘플을 직접적으로 사용하게 될 경우, gt mask supervision이 직접적으로 인풋에 연관되기 떄문에 학습에 정상 샘플을 바로 쓰게 되면 information leak이 발생해서 곧 identical short-cut으로 이어짐.
이를 방지하기 위해 synthetic anomaly를 사용함. 근데 또 정상 샘플을 아예 안쓰게 될 경우 false alarm 문제로 이어지기 때문에 어떻게 synthetis anomaly를 더 잘 만드냐가 문제임.
Pseudo anomaly 만드는 법
5가지 종류의 panels('left', 'right', 'top', 'bottom', 'all')을 설계해서 정상과 이상 지역의 부분을 조절함. 즉 패널에 해당하는 부분에만 anomaly를 생성하는 것.
이 때 all을 제외한 나머지 protion들은 이미지 w,h 기준으로 범위 [0.5~0.8]배 사이에서 조절. (생각보다 범위가 크네?)
여기서 3 defect level(easy, medium, hard)가 있고 I는 anomaly-free image, T는 I에 ranodm augmentation(resize, crop, flip, color-jitter)을 적용해서 만들거나 DTD 데이터셋으로부터 random augmentation을 적용해서 만듦.
Q. 그럼 저 3개의 defect level은 어떻게 정의하는가? -> weight map을 통해.
여기서 J가 나타내는것이 JND map이고 베타는 different level of noticeable에 대한 bias term.
알파는 마스크에 적용되 smooth kernel, 정상과 이상 사이에 soft boundary를 만들어줌. easier-level anomaly일 경우 더 작은 smooth kernel을 사용한다.
랜덤 시드를 사용하기 때문에 different level anomaly regions가 서로 오버렙 될 수 있고 이로인해 anomaly segmentation task에 대한 gt mask가 label inconsistency를 가질 수 있음.
따라서 anomaly-free image I와 synthesized anomaly image A 사이에 structure similarity index measure(SSIM)을 통해서 3 defect level의 segmentation mask를 refine하고 quantify 함.
Anomaly reconstruction
reconstruction sub-network는 encoder, decoder로 구성되어 있음. 둘 다 alternating basic, DCSA blocks로 구성됨.
basic block의 경우 2층의 consecutive 3x3 convolution + instance normalization + ReLU 로 구성되어 있어서 각각 다른 level의 피쳐를 뽑음.
이 추출된 패쳐맵은 DCSA block으로 integrated 됨. 이 DSCA는 channel and spatial attention sequential sub-block으로 구성됨.
Average pooling, two consecutive 1x1 convolutions를 통해 패쳐 채널 간 채널 어텐션을 수행함.
Spatial attention의 경우 일단 앞에서 refine 된 피쳐맵에 average and maximun pooling으로 공간 정보를 concat 함.
그리고 나서 standard dilated 3x3 convolution-norm-relu 단계를 한번 거쳐서 spatial importance를 spot함.
이 dilated path랑 나머지 path랑 둘이 더해서 최종적인 spatial attention map 만듦.
Introduction
Method
Panel-guided anomaly synthesis
Pseudo anomaly 만드는 법
Q. 그럼 저 3개의 defect level은 어떻게 정의하는가? -> weight map을 통해.
Anomaly reconstruction