비전 알고리즘

딥러닝 vs 룰베이스, 언제 무엇을 쓰나

비전 검사를 새로 구성할 때 자주 나오는 질문이다. 딥러닝을 써야 하나, 전통적인 룰베이스로 충분한가.

딥러닝이 항상 낫다는 인식이 있지만 현장에서는 그렇지 않다. 오히려 룰베이스로 끝날 일을 모델 학습으로 끌고 가서 일정과 비용만 늘어나는 경우가 많다.

이 글에서는 두 방식의 성격을 비교하고, 어느 쪽을 고를지 판단하는 기준을 정리한다.


두 방식의 성격

룰베이스 — 사람이 규칙을 정한다

임계값, 면적, 길이, 위치 같은 조건을 사람이 직접 지정한다. 밝기가 이 값보다 어두운 영역이 이 면적 이상이면 불량, 같은 식이다.

블롭 분석, 템플릿 매칭, 엣지 검출, 패턴 매칭이 여기 속한다.

딥러닝 — 데이터에서 규칙을 찾는다

정상과 불량 이미지를 모델에 보여주면 모델이 구분 기준을 스스로 만든다. 사람이 규칙을 언어로 정의할 필요가 없다.

분류, 객체 검출, 세그멘테이션, 이상탐지가 여기 속한다.


비교

항목 룰베이스 딥러닝
개발 기간 짧음 데이터 수집 포함 시 길다
필요 데이터 거의 없음 수백~수천 장
연산 부담 가벼움 GPU 또는 가속기 필요
결과 설명 가능 — 어느 조건에 걸렸는지 명확 어려움 — 판단 근거 추적이 힘들다
조건 변화 대응 취약 — 조명·위치가 바뀌면 재조정 비교적 강함
미세 조정 파라미터 수정으로 즉시 재학습 필요
불량 유형 추가 조건 추가로 대응 데이터 확보 후 재학습

룰베이스로 충분한 경우

아래 조건에 해당하면 굳이 딥러닝을 쓸 이유가 없다.

1. 검사 대상의 위치와 자세가 고정된다

지그에 물려 항상 같은 자리에 오는 부품이라면 검사 영역을 고정할 수 있다. 위치 변동을 흡수할 필요가 없으니 룰베이스가 유리하다.

2. 판정 기준을 수치로 말할 수 있다

구멍 지름이 몇 밀리미터 이상인지, 부품이 있는지 없는지, 라벨이 붙었는지 같은 판정은 규칙으로 표현된다.

반대로 “이건 좀 이상한데”라는 말로밖에 설명이 안 되는 판정이라면 룰베이스로 옮기기 어렵다.

3. 조명과 배경을 통제할 수 있다

룰베이스가 무너지는 주된 원인은 조건 변화다. 조명이 안정적이고 배경이 일정하면 룰베이스는 오래 잘 돌아간다.

4. 판정 근거를 설명해야 한다

불량 판정에 대해 왜 그런지 답해야 하는 상황이라면 룰베이스가 낫다. 어떤 조건에 걸렸는지 바로 제시할 수 있다.


딥러닝이 필요한 경우

1. 불량의 모양이 매번 다르다

스크래치, 얼룩, 이물처럼 형태가 일정하지 않은 결함은 규칙으로 정의하기 어렵다. 조건을 하나 추가하면 다른 유형이 새어 나온다.

2. 정상 범위가 넓다

수작업 공정이나 자연물처럼 정상 상태 자체가 다양하면, 정상의 경계를 규칙으로 긋기가 어렵다.

3. 사람은 구분하는데 규칙으로는 안 된다

숙련자가 보면 바로 아는데 그 기준을 말로 옮기지 못하는 경우다. 이런 암묵적 판단이 딥러닝이 잘하는 영역이다.

4. 배경이나 조건이 자주 바뀐다

제품 종류가 자주 바뀌거나 조명 통제가 어려운 환경에서는 룰베이스 유지보수 부담이 커진다.


실무에서의 현실적인 선택

둘 중 하나를 고르는 문제로 보기보다, 역할을 나누는 편이 낫다.

단계 방식 역할
1차 위치 정렬 룰베이스 대상 위치·회전 보정
2차 영역 추출 룰베이스 검사 영역 잘라내기
3차 판정 상황에 따라 정형 결함은 룰, 비정형은 딥러닝
4차 치수 측정 룰베이스 수치는 규칙 계산이 정확

위치 정렬과 치수 측정까지 딥러닝으로 하려는 시도를 종종 본다. 대개 룰베이스가 더 빠르고 정확하다. 딥러닝은 규칙으로 안 되는 부분에만 쓰는 것이 효율적이다.


판단 순서

새 검사를 검토할 때 이 순서로 확인하면 결정이 쉬워진다.

  • 검사 기준을 수치로 쓸 수 있는가 → 가능하면 룰베이스
  • 불량 샘플을 수백 장 모을 수 있는가 → 어려우면 룰베이스 또는 이상탐지
  • 조명과 위치를 고정할 수 있는가 → 가능하면 룰베이스가 유리
  • 판정 근거를 설명해야 하는가 → 필요하면 룰베이스
  • 위 항목이 모두 아니오라면 → 딥러닝 검토

마무리

딥러닝을 쓰지 않았다고 뒤처진 시스템이 되는 것은 아니다. 문제에 맞는 방법을 고르는 것이 설계다.

반대로 룰베이스로 몇 달을 붙잡고 있는데 조건을 추가할수록 다른 곳이 터진다면, 그때가 방식을 바꿀 신호다.


이 글의 내용은 일반적인 판단 기준입니다. 실제 적용은 대상과 환경에 따라 달라질 수 있습니다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다