Intelligent Inspection.

Fast and accurate PCB defect detection powered by YOLO AI.

Upload your PCB image

JPEG or PNG files supported.

Analyzed PCB

Analysis Report

AI Generated

Project Members

1. Proposal

1.1 배경 및 동기

PCB(인쇄회로기판)은 현대 전자제품 제조 공정에 많이 쓰이는 회로입니다. 산업 현장에서는 머신러닝 패턴 인식을 활용한 자동 광학 검사를 주로 사용해 왔습니다. 하지만, 기존 머신러닝 기반 자동광학검사(AOI)는 spur와 같은 비정형 결함 탐지에 명확한 한계를 가지고 있습니다. 특히 5G 통신 및 AI 연산 기능이 고도화됨에 따라 회로 패턴이 초미세화되면서, 기존 방식으로는 탐지하기 어려운 미세 결함이 증가하고 있습니다. 이러한 배경에서, 딥러닝 기반의 객체 탐지 기술은 기존 검사 방식의 유연성 부족과 비일관성 문제를 해결할 강력한 대안으로 산업 현장에서 연구 중입니다.

1.2 목적

본 프로젝트는 YOLO 아키텍처를 기반으로, 6가지 특정 PCB 결함을 신속하고 정밀하게 구분해내는 자동화 시스템 구축을 목표로 합니다. YOLO 모델의 학습 및 구현을 넘어, 실제 산업 현장에서의 적용 신뢰도를 보증하는 것을 중점을 두었습니다. 최종 목적은 결함의 유무 판정을 넘어, 판정 부분 비교를 위한 정량적 데이터(mAP, Precision, Recall)를 제공함으로써 공정 개선에 기여하는 것입니다.

2. Datasets

2.1 데이터 수집

본 프로젝트는 Kaggle의 'PCB Defects' 데이터셋(akhatova/pcb-defects)을 사용하였습니다. 이 데이터셋은 6가지 주요 PCB 결함 유형을 포함하고 있습니다.

  • missing_hole
  • mouse_bite
  • open_circuit
  • short
  • spur
  • spurious_copper
PCB Defect Types 주요 PCB 결함 유형 예시

이 중 spur(회로에서 뾰족하게 튀어나온 돌기)와 spurious_copper(회로와 무관하게 잔류하는 구리 조각)는 모두 '불필요한 구리'라는 시각적 유사성을 공유하며, 형태가 비정형적이고 크기가 미세하여 모델이 탐지하고 분류하기에 가장 까다로운 유형으로 분석되었습니다.

2.2 데이터 전처리

  • XML 파싱: 수백 개의 개별 어노테이션 파일(.xml)을 파싱하여 정보를 추출하고 단일 Pandas DataFrame으로 변환하였습니다.
  • 이미지 리사이즈: YOLOv11 모델의 표준 입력 크기인 640x640 픽셀로 일괄 리사이즈하였습니다.
  • 좌표 스케일링: 바운딩 박스 좌표를 리사이즈된 크기에 맞게 비례적으로 스케일링하였습니다.
  • YOLO 포맷 변환: 학습에 필요한 텍스트(.txt) 라벨 형식으로 변환하였습니다.
  • 데이터 분할: Train:Val:Test = 8:1:1 비율로 분리하여 평가의 객관성을 확보하였습니다.

2.3 데이터 증강

모델의 일반화 성능과 강인성을 향상시키기 위해 Mixup, HSV 변환, Flip, Degrees 회전 등의 기법을 적용하여 과적합을 방지했습니다.

3. Methodology

실시간성과 높은 정확도를 강점으로 하는 YOLO(You Only Look Once) 아키텍처를 핵심 방법론으로 채택하였습니다.

3.1 데이터셋 분할

총 1386개의 이미지를 학습(1108), 검증(138), 테스트(138) 세트로 분할하여 과적합을 모니터링하고 일반화 성능을 평가했습니다.

3.2 모델 아키텍처 정의

YOLO v11s (Small) 버전을 기반으로 선정하였습니다. 이는 속도와 정확도 간의 균형이 뛰어나 산업 현장에 적합합니다.

Model Architecture YOLO v11s 아키텍처 구조

3.3 하이퍼파라미터 & 학습 프로세스

epochs: 100
batch_size: 16
optimizer: Adam
learning_rate: 0.001
imgsz: 640
mixup: 0.3

사전 훈련된 yolo11s.pt 모델을 기반으로 전이 학습(Transfer Learning)을 수행하여 적은 데이터로도 높은 성능을 확보했습니다.

4. Evaluation & Analysis

4.1 Performance Metrics

학습이 진행된 100 Epoch 동안 모델은 매우 안정적인 학습 양상을 보였습니다. Train Loss와 Validation Loss 모두 지속적으로 감소하며 과적합 없이 수렴했습니다.

Loss Graph
Precision Recall

mAP@0.5: 0.967로 매우 우수한 성능을 기록했습니다.
최상위 성능: missing_hole(0.995), open_circuit(0.991)
상대적 취약: spur(0.912) - 미세한 돌기 형태가 배경과 유사하여 탐지 난이도가 높음.

4.2 Confusion Matrix Analysis

Confusion Matrix

missing_hole은 100%의 완벽한 분류 성능을 보였으나, spur의 경우 약 18%를 Background로 잘못 예측하는 경향이 있었습니다. 이는 바운딩 박스가 주변 정상 회로 픽셀을 포함하면서 발생하는 구조적 한계로 분석됩니다.

6. Conclusion

6.1 요약 및 성과

본 프로젝트는 YOLOv11 기반의 PCB 결함 탐지 모델을 성공적으로 구현하여 mAP@0.5 0.973라는 우수한 성과를 달성했습니다. 이는 육안 검사를 대체할 수 있는 높은 잠재력을 입증합니다.

6.2 한계 및 향후 과제

mAP@0.5:0.95 수치가 0.520으로 정밀한 경계선 회귀에 한계를 보였습니다. 특히 spur 결함의 탐지 성능 개선을 위해 Focal Loss 적용이나 고해상도 학습을 고려할 필요가 있습니다.