Study/CNN

[Paper] Detection and Segmentation of Manufacturing Defects with Convolutional Neural Networks and Transfer Learning

eatchu 2022. 5. 6. 12:30
반응형
[Paper]
Detection and Segmentation of Manufacturing Defects
with Convolutional Neural Networks and Transfer Learning 

 

 

 

사실 이미지 관련, 특히 object detection은 내가 해오던 분야가 아니라 지식이 많이 부족한편이다.

최근에 회사에서 object detection에 관한 과제가 생겼고.. 또 하필 세미나를 내가 맡아서 여기저기 찔러보는 공부 중

스마트팩토리를 메인으로 제조 기반의 Detection을 수행하게 되어 casting detection을 수행하는 해당 논문을 읽어보았다.

글을 뭐 어떻게 써야할진 잘 모르겠지만 내가 읽으면서 정리한 내용을 위주로 적어보려고 한다.

 

 

Introduction 

일반적인 주조 결함에는 air holes, foreign particle inclusions, shrinkage cavities, cracks, wrinkles, casting fins 등이 있다. 이러한 결함들이 감지되지 않으면 기계의 고장으로 이루어진다. 이러한 결함을 조기에 감지하면 제조 공정 초기에 결함이 있는 제품을 식별할 수 있어 시간과 비용을 절약할 수 있다.

 

Defect detection process는 objecct detection과 instance segmentation으로 구성된다.

Object Detection
  • To place a tight-fitting bounding box around each defect in the image
  • 이미지 속 결함 부분에 알맞은 bounding box를 배치하는 것.
  • 말 그대로 사물을 감지하여 표시를 해주는 것.
Image Segmentation
  • One of pixel classification. To classify each image pixel as a defect or not
  • 픽셀 분류 중 하나이며, object detection에서 감지된 bounding box anomaly 인지 아닌지를 분류하는 것
Instance Segmentation
  • Each segmentated pixel must be assigned to a particular casting defect
  • 분할된 픽셀이 우리가 찾고자하는 특정 anomaly에 알맞게 할당되어야 하는것

 

 

Related Works

선행연구

  • Background Substraction : 기존의 전처리 작업. 그러나 이미지의 위치와 이미지 노이즈에 매우 민감.
  • MODAN(modified median)-Filter : 조정된 중앙값 필터로 결함으로 보이는 부분의 구조적 윤곽을 구별함.
  • Wavelet : 주파수 기반의 기술. 결함은 고주파수 영역의 이미지로 식별되며 이것을 이용함.
  • 결론 : 이러한 기술들은 이미지의 local global 정보를 결합하지 못하여 결함 이미지의 구멍이나 모서리 같은 부분을 잘 식별하지 못함.

최근기술

  • Faster Region-Based CNN (Faster R-CNN) : 정확도 우선
  • Single Shot Multibos Detector (SSD) : 속도 우선
  • Mask R-CNN (Extended Faster R-CNN) : detection segmentation을 동시 수행

 

Convolutional Neural Networks

1. Residual Network (ResNet) 

  • 1001 layer 사용 
  • Skip Connection 
  • Residual Mapping : Weight layer 통과한 f(x) weight layer 통과하지 않은 x  
  • Overfitting, Vanishing Gradient 문제 해결 
  • Residual Block 쌓이면 Residual network  

 2. VGG Net (VGG16) 

  • 목적은 5x5 필터 한번 사용보다 3x3 필터를 두번 사용하는 것이 낫다는 개념을 사용. 적은 커널 필터로 레이어를 여러 두었을때 가중치의 수가 적어져 기울기 소실문제를 해결할 있고 비선형 문제를 해결할 있음 
  • 모든 필터가 kernel = 3x3, stride = 1 이루어짐 
  • 모든 활성화 함수로 ReLU 사용 
 

 

Defect Detection System

1. Mask R-CNN 구조의 4가지 모듈

  1. Feature Extraction : input image high-level 특징을 추출함
  2. Region Proposal Network(RPN) : 특징화된 이미지에서 Regions of Interest(RoIs) 제안하는 CNN
  3. RoIs에서 객체를 분류하는 CNN
  4. Image Segmentation

 

 

2. Regions Proposal Network (RPN)

  • 모든 크기의 feature map input으로 받아 사각형의 객체 집합을 출력함
  • 영역에는 객체가 포함될 likelihood score 제안
  • Input으로 ResNet 레이어의 feature map n x n window size 가짐
  • Output Bounding box 좌표와 현재 슬라이딩 위치에 있는 객체의 가능성을 설명하는 벡터를 가짐
Anchor Boxes 다양한 크기의 bounding box 생성하기 위해  feature map grid scale x ratio 만큼의 박스 수의 bounding box 생성함
- 현재 논문에서는 3 scale 5 ratio 사용하여 15 anchor box 생성
Architecture RPN에서 feature map box regression(4d) object classification(2d)으로 분리가 되며 각각 bounding box 좌표와 class score 산출
 grid에서 class score 따라 상위 n개의 anchor box 선택됨
Training 선택된 anchor box ground truth box(라벨링된 객체가 존재하는 실제값)를 input으로 받아 IoU값을 구하여 0.7이상은 1(객체존재), 0.3이하는 0(객체존재x)값을 
Transfer Learning 전이학습은  경에서 학습된 정보를 이용하여 다른 환경에서 일반화하는 학습 기법으로  학습으로 제한된 도메인 작업에 적용

 

 

Implementation Details and Experimental Results

Fast R-CNN과 Mask R-CNN을 활용한 object detection network 구현.

Pre-trained된 CNN을 활용하여 GDXray dataset으로 평가를 진행.

이미지 사이즈는 256 x 256 ~ 768 x 572로 구성.

 

  1. Training
    1) Preprocessing data
     - Adjust Image size : 768 x 768
     - Randomly flipped horizontally and vertically
    2) Transfer Learning
     - Feature Extractor : ImageNet
     - Defect detection : COCO (8
    개의 NVIDIA K80 GPU 사용)
    3) Hyper Parameter
     - mini batch : 2 images
     - 100 sampled RoIs
     - 1 : 3 positive to negatives
     - IoU threshold : 0.5
     - Training GDXray with 80 epochs + 80 epochs
반응형

'Study > CNN' 카테고리의 다른 글

Fast R-CNN 이론 노트 정리  (0) 2022.05.05