전병주
(Byoung Ju Jeon)
1iD
김동헌
(Dong Hun Kim)
†iD
-
(Dept. of Mechatronics Engineering, Graduate School, Kyungnam University, Korea.
E-mail:wjsqudwn4672@gmail.com)
Copyright © The Korea Institute for Structural Maintenance and Inspection
Key words
Action Loader, Deep Learning, Classification, Defect Detection, Xception, Inception
1. 서 론
자동차 산업은 지속적인 혁신과 기술적 발전으로 급격한 변화를 겪고 있다. 이는 소비자들의 기대와 요구사항이 높아지면서 안전성과 성능에 대한 중요성이
더욱 부각되고 있다. 특히, 자동차의 부품들은 정밀한 조립과 철저한 검사가 필수적이다. 이는 안전한 운전 환경과 더불어 자동차의 성능과 신뢰도를 보장하기
위한 필수적인 단계이다.
자동차 종류가 전기 자동차, 하이브리드 자동차, 내연기관 자동차 등으로 확장됨에 따라 전동식 액추에이터의 활용이 확대되고 있다. 전동식 액추에이터는
모터의 회전 운동을 직선 또는 반회전 등의 위치 변환으로 전환하는 장치이다. 직선 운동 또는 반회전 모션 구동 장치인 액추에이터(기어, 스크류)와
모터를 결합하여 고정밀 직선 왕복운동 및 반 회전 구동 조건을 구현함에 있어 탁월한 제어 성능을 지니고 있어 특정 신호에 따라 작동 및 제어가 가능해
스마트 액추에이터로 불리기도 하며 현재 내연기관 기반 고급 자동차 및 전기 자동차에 활발히 적용되고 있다. 그림 1은 자동차 자동구동 문손잡이를 보여준다.
그림 1. 자동차 자동 구동 문손잡이
Fig. 1. Automatic actuated car door handle
본 논문은 자동차의 핵심 부품 중 하나인 "자동차 문손잡이 단차 자동 구동 액추에이터 장치"의 생산과정에서의 불량품 검출 문제에 초점을 맞추고자 한다.
[1]에서는 자동 구동 자동차 문손잡이 액추에이터의 동력성능을 만족시키고 구동력에 대한 최적화 설계에 대한 연구를 진행하였다. 액추에이터 장치는 자동차의
문을 개폐하는 중요한 기능을 수행하는 부품으로, 정밀한 조립 과정이 필요한 중요한 구성품이다. 문손잡이 단차 자동 구동 액추에이터 장치의 결함은 자동차의
안전성 및 기능을 저해할 수 있는 심각한 문제로 이어질 수 있다. 이를 신속하고 정확하게 감지하고 해결하는 것이 중요하다.
인공지능(AI)을 이용한 불량품 검출에 대한 연구는 다양한 종류가 있다. [2]에서는 케라스(Keras) 오픈소스 라이브러리를 이용하여 딥러닝(Deep Learning)과 머신비전(Machine vision) 기반으로 한 불량
검출 소프트웨어를 개발하였고, 불량 유무와 불량 위치를 정확하게 찾는 방법을 제안하였다. [3]에서는 토마토 잎의 흰가루병 발병 인식을 합성곱 신경망(Convolutional Neural Networks, CNN)을 이용하여 흰가루병 발병 유무를
검출하는 방법을 제안하였다. [4]에서는 자동화 공정 중 제품 이미지에서 불량 특징을 검출하는 딥러닝 알고리즘 합성곱 신경망(CNN)을 사용하여 체커스위치의 불량 검출 시스템을 제안하였다.
이러한 연구들은 본 연구에서 중요한 참고 자료로 활용되었다.
생산 공정에서 정상품을 추출하기 위하여 이루어지는 불량품 검출은 제품 제작 과정에서 매우 중요한 단계이다. 이를 위하여 많은 엔지니어들이 다양한
방식의 검출기 시스템을 연구 및 개발하였다. [5]에서는 프리프레그 섬유 제조 공정에서 발생하는 불량을 딥러닝 기반의 시스템으로 검출하고 분류하여 생산성을 높이는 것을 목표로 한다. [6]에서는 차량 제조 업계에서 품질 검사를 자동화하고 효율성을 높이기 위하여 인공지능 및 시각 검사 시스템의 적용을 제안한다. 그 결과로서, 다양한 방법들이
제조 공정에서 활용되어 왔으며, 이에 따라 생산성과 품질 관리가 향상되었다. 그러나 사람의 눈으로 수행되는 육안 검사는 착시 문제와 근로자의 건강
문제 등으로 한계가 있다. 이로 인하여 검사의 일관성과 정확성에 제한이 있을 수 있어 정확한 분류와 검출을 위하여 비전 검사 기술의 연구가 많이 진행되고
있다.
본 연구에서는 인공지능(AI) 기술의 발전을 활용하여 이러한 문제를 극복하고자 한다. 특히 딥러닝 분야 중에서도 CNN은 이미지 인식과 패턴 분석
분야에서 뛰어난 성능을 보여주고 있다. CNN을 활용하여 이미지를 분석하고 문손잡이 단차 자동 구동 액추에이터 장치의 모델 분류와 결함을 정확하게
식별하는 이미지 기반의 불량품 검출 시스템을 개발하고자 한다. 본 연구에서는 딥러닝 엔진으로 심층 컨볼루션 신경망 구조인 Xception을 이용하여
자동화된 생산 라인에서 실시간으로 검사를 통해 불량품 발생률을 감소시키고자 한다. 그림 3은 액션로더 분류 및 검사 전체 시스템 구조를 보여준다.
2. 검사 시스템 설계
자동차 문손잡이 내부의 모터 구동 시스템을 액션로더(Action Loader)라고 칭한다. 액션로더는 자동차 문손잡이가 열리고 닫히는 동작을 수행함으로
직선 운동 또는 반 회전 모션 구동 장치와 모터를 결합하여 고정밀 직선 왕복운동 및 반 회전 구동 조건을 구현함에 있어 탁월한 제어 성능을 가지고
있어 특정 신호에 따라 작동 및 제어가 가능해 스마트 액추에이터로 불리기도 하며 현재 내연기관 기반 고급 자동차 및 전기 자동차에 활발히 적용되고
있다. 그림 2는 자동 구동 액추에이터와 모터 등으로 구성된 부품을 보여준다.
액션로더 모델의 종류는 CE1_LH, CE1_RH, RS4_LH, RS4_RH 4가지 종류가 있다. CE1과 RS4는 서로 다른 종류의 모델이며 LH는
왼쪽 손잡이(Left Handle)이고 RH는 오른쪽 손잡이(Right Handle)이다. 그림 3은 4종류 모델의 액션로더를 보여준다.
그림 2. 액션로더 구성 부품
Fig. 2. Components of action loader
그림 3. 4종류의 액션로더
Fig. 3. 4 types of action loaders
그림 4. 모터 및 기어 부품에 구리스 도포 사진
Fig. 4. Grease application to motor and gear parts
액션로더에서 구리스는 원활한 회전을 위하여 모터와 기어에 도포된다. 그림 4는 생산 공정에서 촬영한 모터 부품과 기어 부품에 구리스를 도포한 사진이다. 액션로더 생산 공정에서 모터 부품과 기어 부품에 도포하는 자동 구리스
장치의 정확도가 떨어져 불량품이 발생한다. 구리스가 분사되어야 하는 위치를 넘어 분사되거나, 설정된 곳에 분사되지 않았을 때 액션로더가 정확하게 작동하지
못한다. 최근 연구에서는 액션로더 생산에 있어 생기는 구리스 도포 불량 검출을 위하여 머신비전과 딥러닝 기반의 검출시스템을 구현하였다[7]. 그림 5는 전체 액션로더 분류 및 검사 시스템 구조를 보여준다.
그림 5. 분류 및 검사를 위한 시스템 구조
Fig. 5. System configuration of classification and Inspection
3. 이미지 데이터 기반의 SW 설계
3.1 CNN 적용 모델
3.1.1 인셉션(Inception) 알고리즘
인셉션은 딥러닝 모델에서 네트워크의 깊이를 높이면서도 연산 효율성을 유지하기 위한 합성곱 신경망의 아키텍처 설계 패턴이다. 이 아키텍처는 2014년에
구글의 연구팀이 발표한 논문에서 처음으로 소개되었다[8]. 인셉션 모듈은 네트워크 내에서 다양한 크기와 형태의 필터를 동시에 사용하여 특징을 추출하는 방식을 제안했다. 이는 네트워크가 이미지의 다양한 구조적
특징을 캡처할 수 있게 하고, 매우 깊은 네트워크를 구축할 때 발생하는 문제를 완화하는 데 도움이 된다.
다양한 필터 크기와 형태를 동시에 사용하는 것은 연산량 증가와 관련된 문제를 야기할 수 있다. 인셉션 모듈은 1x1, 3x3, 5x5의 합성곱(Convolution)
연산을 병렬로 수행하고 결과를 결합하여 효율적으로 특징을 추출한다. 또한 이러한 병렬 연산을 통해 연산량을 줄이고 모델의 학습 가능한 파라미터 수를
제한함으로써 과적합(overfitting)을 방지하고 효율성을 높인다.
인셉션 모듈에서는 1x1 컨볼루션(Convolution) 연산을 사용하여 차원 축소(dimension reduction)를 수행한다. 이를 통해 입력
데이터의 채널 수를 줄이고 연산량을 감소시킴으로써 모델의 효율성을 높인다. 그림 6은 차원 축소를 수행한 인셉션 모듈을 보여준다.
그림 7은 인셉션 V3 모델의 전체 구조를 보여준다. 이러한 설계구조는 인셉션 모듈을 여러 층에 걸쳐 쌓아서 네트워크를 구성할 수 있다. 이렇게 구성된 네트워크는
매우 깊은 구조를 가지면서도 연산량을 효율적으로 관리할 수 있으며 이미지 인식 및 분류 작업에서 뛰어난 성능을 보여주었다. 본 연구에서는 더 좋은
결과를 얻기 위하여 기존의 인셉션 V3 모델 구조를 그대로 유지하고, GlobalAveragePooling2D와 2개의 Dense 레이어를 추가하여
모델 구조를 변형시켰다.
그림 6. 차원 축소 인셉션 모듈
Fig. 6. Inception module with reduced dimension
그림 7. 인셉션 V3 모델 전체 구조
Fig. 7. Overall structure of Inception V3 model
3.1.2 Xception 알고리즘
Xception은 Extreme Inception의 줄임말로, 인셉션 모듈을 기반으로 한 심층 컨볼루션 신경망 구조이다[9]. 이는 더 많은 레이어와 특징 추출 능력을 의미하며, 더 높은 성능을 달성한다.
그림 8은 Xception 모듈을 나타낸다. Xception은 깊이별 분리 컨볼루션(depthwise separable convolution)을 여러 층으로
쌓음으로써 복잡한 특징을 학습할 수 있다. 또한 Xception은 깊이별 분리 컨볼루션의 적절한 사용을 통해 매우 깊은 네트워크를 구축할 수 있다.
입력된 데이터는 먼저 엔트리 플로우를 거친다. 이어서 8번 반복되는 미들 플로우를 거치며, 각각의 단계에서는 깊이별 분리 합성곱과 같은 특별한 구조가
적용된다. 마지막으로 엑시트 플로우를 거치면서 최종적인 특징을 추출하고 이를 기반으로 클래스를 분류하거나 검사 시스템에 활용된다.
Xception은 ImageNet 데이터 세트에서 인셉션 V3보다 더 나은 성능을 보이고, 3억 5천만 개의 이미지와 17,000개의 클래스를 포함하는
더 큰 이미지 분류 데이터 세트에서 인셉션 V3보다 향상된 성능을 보인다. 그리하여 분류와 검사시스템에 Xception을 사용한다.
그림 9는 Xception의 전체 구조를 보여준다. 인셉션 V3 모델과 같이 본 연구에서는 Xception 모델에 Global Average Pooling
2D와 2개의 Dense 레이어를 추가하여 모델의 구조를 변형시켰다. 첫 번째는 512 유닛의 ReLU 활성화 함수를 사용하는 Danse이며, 두
번째는 4개의 유닛을 가진 Softmax 활성화 함수를 사용하여 최종 분류를 하였다. 이러한 변형은 분류 작업을 수행하기 위해 필요한 최종 출력 레이어를
구축할 수 있다.
그림 8. Xception 모듈
Fig. 8. Xception module
그림 9. Xception 모듈 전체 구조
Fig. 9. Overall structure of Xception
3.2 액션로더 분류 데이터 수집 및 전처리
본 논문은 액션로더 모델 분류 후 불량 검출을 하려고 한다. 액션로더 모델의 종류로 CE1_LH, CE1_RH, RS4_LH, RS4_RH 이렇게
4종류의 모델을 분류한다. 데이터 셋(set)을 훈련 시키기 위하여 사용한 CNN 모델은 Xception을 채택한다. Xception은 36개의 레이어로
구성되어 있으며, Depthwise Separble Convolution을 사용하여 계산 효율을 높였음을 보여준다[9]. 원래 Xception은 입력에 299 x 299 RGB 크기의 이미지를 사용하지만 본 논문에서는 224 x 224 RGB 크기의 이미지를 입력에
사용한다. 이는 모델을 구성하는데 있어서 이미지의 크기를 줄이면서도 모델의 성능을 유지하기 위한 선택이다.
모델 분류를 위하여 데이터 분할을 통해 훈련에 사용한 이미지는 훈련(train) 63%, 검증(validation) 18%, 테스트 데이터 19%로
나누었다. CE1_LH는 43장, CE1_RH는 48장, RS4_LH는 44장, RS4_RH는 41장을 사용한다. LabelEncoder 및 One-hot
Encoding을 사용하여 클래스 레이블을 숫자로 변환하고, One-hot 벡터로 변환하여 모델이 이해할 수 있는 형태로 준비한다. 이미지 데이터를
0과 1 사이의 값으로 정규화하여 학습 속도를 향상시키고 안정성을 높인다. 테스트 데이터에서는 CE1_LH는 9장, CE1_RH는 7장, RS4_LH는
11장, RS4_RH는 14장의 사진을 사용한다.
3.3 액션로더 불량 검출 데이터 수집 및 전처리
분류된 각 액션로더 불량 검출을 하기 위하여 2단계로 진행된다. 첫 번째는 기어가 들어가기 전 모터 위에 구리스를 도포하는 과정에서 불량 유무를 검사한다.
두 번째는 기어가 올라간 후 그 위에 구리스를 도포하는 과정에서 불량 유무를 검사한다. 기어가 올라간 액션로더는 M으로 표시하였다. 불량은 지정된
곳에 구리스가 균일하게 도포되지 않은 경우, 구리스가 누출된 경우와 구리스가 없는 경우를 불량이라고 정의한다.
불량 액션로더 검출을 위하여 수행된 데이터 수집 및 전처리 과정은 다음과 같다. 액션로더 이미지 데이터는 ‘NG’와 ‘OK’로 클래스를 구분하였으며,
각 클래스는 CE1_LH, CE1_RH, RS4_LH, RS4_RH, CE1_LH_M, CE1_RH_M, RS4_LH_M, RS4_RH_M으로 하위
디렉터리(Directory)를 구성하였다. 표 1은 훈련과 검증을 위하여 사용한 클래스별 하위 디렉터리의 이미지 개수를 나타낸다.
불량 검출 테스트는 액션로더 분류와 같이 데이터 셋을 훈련 시키기 위하여 Xception과 인셉션을 사용하여 비교하고, 테스트에 사용한 이미지 개수는
표 2와 같다.
표 1 액션로더 불량 검출 이미지 개수
Table 1 The number of images for action loader defect detection
Class
|
NG(each)
|
OK(each)
|
CE1_LH
|
32
|
47
|
CE1_LH_M
|
44
|
63
|
CE1_RH
|
29
|
60
|
CE1_RH_M
|
27
|
37
|
RS4_LH
|
53
|
69
|
RS4_LH_M
|
44
|
55
|
RS4_RH
|
72
|
53
|
RS4_RH_M
|
24
|
36
|
표 2 액션로더 불량 검출 테스트에 사용한 이미지 개수
Table 2 The number of images used in the defect detection test for the action loader
|
NG(each)
|
OK(each)
|
CE1_LH
|
11
|
9
|
CE1_RH
|
17
|
13
|
RS4_LH
|
14
|
14
|
RS4_RH
|
11
|
14
|
CE1_LH_M
|
9
|
14
|
CE1_RH_M
|
19
|
13
|
RS4_LH_M
|
7
|
10
|
RS4_RH_M
|
6
|
9
|
3.4 데이터 증강 및 전이 학습
대부분의 딥러닝 모델은 많은 데이터와 많은 학습 시간이 필요로 한다. 하지만 현실에서는 많은 데이터를 확보하거나 모델 학습에 많은 시간을 할애하는
것은 어려울 수 있다. 이러한 문제를 해결하기 위하여 표 1과 같이 인공지능에 사용하는 이미지 개수 확장을 위하여 데이터 증강(Data Augmentation)과 전이 학습(Transfer learning)
방법을 사용한다.
데이터 증강이란 적은 양의 데이터로 학습할 때 모델이 특정 데이터에 너무 의존하는 과적합(Overfitting)을 방지하기 위함과 클래스 간 데이터의
불균형을 해결하고, 모든 클래스에 대한 학습 데이터의 양을 균형 있게 만든다[10].
본 연구에서는 이미지를 10도씩 회전, 최대 10% 범위에서 축소 또는 확대, 최대 20%까지 무작위로 수직 및 수평 이동 그리고 이미지를 최대 10도까지
무작위로 전단 시킨다. 각 모델마다 데이터 증강에 의해 데이터 이미지 수는 64배로 늘어난다.
전이 학습은 기존에 힉습한 모델 또는 지식을 새로운 작업에 활용하는 기계 학습 기술이다. 주로 대규모 데이터 셋에서 사전에 학습된 모델을 가져와서
새로운 작업에 적용하거나, 한 도메인에서 학습된 모델을 다른 도메인의 작업에 재사용하는 방식으로 진행한다[11].
Xception과 인셉션은 모두 이미지넷에서 사전 훈련된 모델로, 이미지 분류 문제를 해결하는 데 사용된다. 이들 모델은 다양한 특징을 효과적으로
추출하여 전이 학습에 활용된다. 전이 학습을 위하여 모델의 대부분 층을 고정하고 새로운 작업에 맞는 출력 레이어를 추가한 후, 추가적인 학습을 통해
성능을 향상시킬 수 있다. 이를 통해 기존에 학습된 특성을 유지하면서 새로운 작업에 적합한 특성을 추가로 학습할 수 있다.
4. 실험 및 결과
4.1 실험 환경
본 연구를 위하여 다음과 같이 실험 환경을 구성하였다. 운영체제는 Windows11이고, CPU는 AMD Rtzen 7 7735HS, 메모리는 16GB,
GPU는 NVIDA GeForce RTX 4050, 딥러닝 프레임워크는 Tensorflow 2.16.1을 사용하였다. 입력 이미지의 크기는 224
× 224로 학습 데이터로 사용하였다. 학습률은 0.001로 하였고, 경사하강법은 Adam을 사용하였다. batch size는 32, epoch 50으로
Xception과 인셉션 둘 다 동일하게 설정하여 학습을 진행하여 비교하였다.
그림 10은 액션로더 회전 검사 장비 구성도를 보여준다. 고정된 카메라는 회전하는 플레이트 위에 있는 액션로더를 촬영하고, 얻어진 이미지는 제안된 알고리즘을
기반으로 분석하여 불량 여부를 찾아낸다. 여기서 카메라 1은 웜기어의 구리스 도포 상태 이미지를 촬영하고, 카메라 2는 평기어의 구리스 도포 상태의
이미지를 촬영한다. LED 조명은 빛 세기를 조절하고, 그림자가 생기지 않도록 설치하였다. 그림 11은 실제 작업 현장에서 사용하는 검사 장비 시스템을 보여준다.
그림 10. 액션로더 검사 시스템 구성도
Fig. 10. Configuration of action loader inspection system
그림 11. 실제 작업 현장에서 사용하는 검사 시스템
Fig. 11. Inspection system in the actual work site
4.2 분류 및 불량 검출 모델 성능 평가 지표
분류 및 불량 검출 모델의 성능을 측정하고 비교하기 위하여 분류 모델 성능 평가 지표가 사용된다. 이러한 지표는 모델이 얼마나 잘 작동하는지 이해하고
개선하기 위한 중요한 도구이다. 주로 혼동 행렬(Confusion Matrix)을 기반으로 정확도(Accuracy), 정밀도(Precision),
재현율(Recall), F1-score를 측정하여 성능 평가를 진행하였다[12]. 혼동 행렬은 실제 클래스와 예측된 클래스의 매칭을 이용하여 분류 모델을 평가하는 도구이다[13]. 따라서, 본 연구도 액션로더 모델 분류 및 불량 검출 모델 평가를 위하여 혼동 행렬을 기반으로 정확도, 정밀도, 재현율, F1-score를 사용하여
성능 평가를 한다.
4.2.1 정확도(Accuracy)
정확도는 판별한 전체 샘플 중 TP와 TN의 비율이다. 분류 모델을 평가하기에 가장 단순한 지표이지만, 불균형한 클래스를 가진 데이터 셋을 평가하기는
어렵다는 단점이 있다. 따라서 이 문제를 해결하기 위하여 정확도 성능 평가 지표를 사용한다.
여기서, TP는 True Positive, FP는 False Positive, FN은 False Negative이고 TN은 Ture Negative를
나타낸다.
4.2.2 정밀도(Precision)
정밀도는 분류 모델이 Positive로 판정한 것 중, 실제로 Positive인 샘플의 비율이다. 정밀도는 Positive로 검출된 결과가 얼마나
정확한지를 나타낸다.
4.2.3 재현율(Recall)
재현율은 실제 Positive 샘플 중 분류 모델이 Positive로 판정한 비율이다. 재현율은 분류 모델이 실제 Positive 클래스를 얼마나
빠지지 않고 잘 잡아내는지를 나타낸다.
4.2.4 F1-score
분류 모델의 정밀도와 재현율 성능을 동시에 고려하기 위하여 F1-score이라는 지표를 사용한다. F1-score는 정밀도와 재현율의 조화평균으로
정의된다. F1-score는 0과 1사이 값이며 1에 가까울수록 분류 성능이 좋음을 나타낸다. 식 (4)는 정밀도와 재현율을 사용하여 나타낸 식이다.
액션로더 모델 분류와 불량 검출 성능 평가를 위하여 신규로 수집된 이미지에서 분류된 각 클래스 별 데이터에 대한 성능 평가를 진행해 보았다. 하지만
실제 데이터를 구하기 힘들어 많은 사진으로 진행하지 못하였다. 표 3은 액션로더 분류에 대하여 VGG16, 인셉션, 본 연구에서 제안한 Xception과 Xception 축소 모델을 비교하여 정확도, 정밀도, 재현율,
F1-score를 나타내었다. Xception 축소 모델은 Xception에서 128개의 유닛을 가진 Dense를 128로 줄인 모델이다. VGG16과
Xception-reduced 모델은 인셉션과 Xception 보다 정확도, 정밀도, 재현율, F1-score 성능이 좋지 않다. 따라서 본 연구는
지면 할애의 이유로 가장 성능이 좋은 인셉션과 Xception에 대해서만 분류 모델 성능 평가와 불량 검출 모델 성능 평가를 보여준다. 액션로더 분류
모델에 대하여 그림 12(a), 그림 12(b) 는 각각 인셉션과 Xception의 혼동 행렬을 보여준다. 두 모델 모두 CE1_LH와 RS4_RH 클래스에서 높은 정확도를 기록하였으며, Xception
모델은 특히 RS4_RH 클래스에서 더 우수한 성능을 보였다. 인셉션 모델의 경우, CE1_LH 클래스에서 일부 오분류가 발생하였으나, Xception
모델은 해당 클래스에서 더 정확한 예측을 수행하였다. 전반적으로 Xception 모델이 인셉션 모델보다 일관된 성능을 보여 더 신뢰할 수 있는 분류
모델임을 확인할 수 있다.
표 3 분류 모델의 성능 평가
Table 3 Performance evaluation of classification model
|
VGG16
|
Inception
|
Xception
|
Xception - reduced
|
Accuracy
|
0.78
|
0.92
|
0.976
|
0.90
|
Precision
|
0.88
|
0.92
|
0.975
|
0.90
|
Recall
|
0.73
|
0.93
|
0.977
|
0.91
|
F1-score
|
0.76
|
0.92
|
0.975
|
0.89
|
그림 12. 분류 모델 혼동 행렬
Fig. 12. Confusion matrix of classification model
표 4는 인셉션과 Xception을 각각 사용하여 8종류 모델의 액션로더 불량 검출 모델의 성능 평가 결과이다. 혼동 행렬을 보면 CE1_RH와 CE1_RH_M에서
Xception보다 인셉션이 예측을 잘하였으나 나머지 모델에서 Xception이 더 예측을 잘하였다.
본 연구에서는 실제 생산 라인에서 실험을 하였으며, 실제 생산 라인에서 불량 액션로더는 1% 미만으로 검출되나, 본 연구에서는 불량 검출 확인에서
데이터 불균형을 방지하기 위하여 불량 액션로더를 실제 비율보다 더 많이 사용하였다.
표 4 액션로더 불량 검출 모델 혼동 행렬
Table 4 Confusion matrix of defect detection
표 5와 6은 액션로더 불량 검출에 대한 혼동 행렬을 활용하여 인셉션과 Xception을 각각 사용하여 정확도, 정밀도, 재현율, F1-score를 구하였다.
표 5 액션로더 분류 불량 검출 모델 인셉션 성능 평가
Table 5 Performance evaluation of Inception for defect detection
Inception
|
Accuracy
|
Precision
|
Recall
|
F1-score
|
CE1_LH
|
0.6
|
0.765
|
0.636
|
0.560
|
CE1_LH_M
|
0.733
|
0.809
|
0.765
|
0.729
|
CE1_RH
|
1.0
|
1.0
|
1.0
|
1.0
|
CE1_RH_M
|
0.960
|
0.958
|
0.964
|
0.959
|
RS4_LH
|
0.783
|
0.868
|
0.722
|
0.732
|
RS4_LH_M
|
0.844
|
0.861
|
0.868
|
0.843
|
RS4_RH
|
1.0
|
1.0
|
1.0
|
1.0
|
RS4_RH_M
|
1.0
|
1.0
|
1.0
|
1.0
|
표 6 액션로더 불량 검출 모델 Xception 성능 평가
Table 6 Performance evaluation of Xception for defect detection
Xception
|
Accuracy
|
Precision
|
Recall
|
F1-score
|
CE1_LH
|
0.950
|
0.958
|
0.944
|
0.949
|
CE1_LH_M
|
0.80
|
0.825
|
0.778
|
0.785
|
CE1_RH
|
0.964
|
0.967
|
0.965
|
0.964
|
CE1_RH_M
|
0.88
|
0.912
|
0.864
|
0.873
|
RS4_LH
|
0.957
|
0.967
|
0.944
|
0.953
|
RS4_LH_M
|
0.906
|
0.908
|
0.897
|
0.902
|
RS4_RH
|
1.0
|
1.0
|
1.0
|
1.0
|
RS4_RH_M
|
1.0
|
1.0
|
1.0
|
1.0
|
실험 결과 표 5와 6에 따르면, CE1_RH, CE1_RH_M에서는 Xception 보다 인셉션이 정화도, 정밀도, 재현율, F1-score 측면에서 더 나은 성능을
보였다. 하지만, 나머지 모델에서는 Xception이 인셉션보다 정확도, 정밀도, 재현율, F1-score 값에서 더 우수한 결과를 보여주었다.
5. 결 론
본 연구에서는 자동차 문손잡이 내부에 있는 액션로더의 기계 부품 이미지를 카메라로 얻었다. 카메라를 통해 얻은 액션로더 이미지를 제안한 CNN 알고리즘으로
모델 종류를 분류하고, 불량품 검출을 하였다. 본 실험에서는 부족한 이미지 데이터를 위하여 전이 학습과 데이터 증강 기법을 사용하여 학습을 진행하였다.
인셉션과 Xception 두 가지 알고리즘을 사용하여 평가 지표를 기반으로 성능을 비교하였다. 이를 위하여 혼동 행렬을 사용하여 정확도, 정밀도,
재현율 그리고 F1-score를 구한 후 평가 결과를 비교하였다. 실험 결과, 액션로더 분류에서는 Xception이 인셉션보다 우수한 성능을 보였으며,
블량 검출의 경우 일부 모델인 CE1_RH, CE1_RH_M에서는 인셉션이 더 나은 결과를 보였지만 전반적으로 Xception이 더 뛰어난 성능을
나타내었다.
본 연구에서 제안한 CNN 기반의 검사 시스템은 부품 분류와 불량품 검출 분야에서 실용적인 적용 가능성을 제시하였다. 향후 연구에서는 액션로더 외에도
엔진 조속기와 같은 다양한 공장 생산품의 불량품 검사를 위해 본 연구의 AI 기반 검사 시스템이 효과적으로 활용될 수 있을 것이다.다양한 공장 제품의
불량품 검사를 위해 본 연구의 AI 기반 검사 시스템이 효과적으로 활용될 수 있을 것이다.
Acknowledgements
This results was supported by "Regional Innovation Strategy (RIS)" through the National
Research Foundation of Korea(NRF) funded by the Ministry of Education(MOE) in 2023.(2021RIS-003)
References
J. Son, Y. Song, and M. Kim, “The study of actuator’s output for car door,” Korean
Automotive Engineers Association Fall Conference, pp. 1401-1402, 2022.
D. Kim, S. B. Boo, H. C. Hong, W. G. Yeo, and N. Y. Lee, “Machine vision-based
defect detection using deep learning algorithm,” Journal of the Korean Society for
Nondestructive Testing, vol. 40, no. 1, pp. 47-52, 2020.
H. Jung, A. Moon, S. An, and Y. E. Song, “CNN-based tomato powdery mildew recognition
method,” Journal of Institute of Control, Robotics and Systems, vol. 24, no. 7, pp.
617-623, 2018.
S. W. Suh, Y. H. Ko, S. G. Yoo, and K. T. Chong, “Development of checker-switch
error detection system using CNN algorithm,” Journal of the Korean Society of
Manufacturing Process Engineers, vol. 18, no. 12, pp. 38-44, 2019.
Y. Kim, and J. Kim, “Establishment of a deep learning-based defect classification
system for optimizing textile manufacturing equipment,” Journal of The Korea Society
of Computer and Information, vol. 28, no. 10, pp. 27-35, 2023.
C. Amal, et al., “Artificial intelligence for product quality inspection toward smart
industries: quality control of vehicle non-conformities,” International Conference
on Industrial Technology and Management (ICITM). IEEE, pp. 127-131, 2020.
D. H. Kim, “Implementation of an AI deep learning-based inspection system for detecting
defective vehicle action loaders,” The Transactions of the Korean Institute of Electrical
Engineers, vol. 72, no. 12, pp. 1714-1721, 2023.
S. Christian, et al., “Going deeper with convolutions,” Proceedings of the IEEE Conference
on Computer Vision and Pattern Recognition, pp. 1-9, 2015.
F. Chollet, Google, Inc, “Xception: deep learning with depthwise separable convolutions,”
Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pp.
1251-1258, 2017.
H. Cho, J. Moon, “A layered-wise data augmenting algorithm for small sampling data,”
Journal of Korean Society for Internet Information, vol. 20, no. 6, pp. 65-72, 2019.
H. C. Shin., H. R. Roth, M. Gao, L. Lu., Z. Xu, I. Nogues, and R. M. Summers, “Deep
convolutional neural networks for computer-aided detection: CNN architectures, dataset
characteristics and transfer learning,” IEEE Transactions on Medical Imaging, vol.
35, no. 5, pp. 1285-1298, 2016.
C. Goutte, and E. Gaussier. A Probabilistic Interpretation of Precision, Recall, and
F-Score, with Implication for Evaluation. In: Losada, D.E., Fernández-Luna, J.M. (eds)
Advances in Information Retrieval. ECIR, Lecture Notes in Computer Science, vol 3408,
Springer, Berlin, Heidelberg, 2005.
O. Caelen, “A bayesian interpretation of the confusion matrix,” Annals of Mathematics
and Artificial Intelligence, vol. 81, no. 3, pp. 429-450, 2017.
저자소개
He received his B.S. degree in Electrical Engineering, Kyungnam University, Korea,
in 2022. Currently, he is pursuing his M.Sc. degree in Mechatronics Engineering at
Kyungnam University. His research interests include AI-based defect detection and
classification and intelligent robot control.
He received his BS, MS and PhD degrees from the Department of Electrical Engineering,
Hanyang University, Korea, in 1995, 1997 and 2001, respectively. From 2001 to 2003,
he was a Research Associate under several grants in the Department of Electrical and
Computer Engineering, Duke University, NC, USA. In 2003, he joined Boston University,
MA, USA as Visiting Assistant Professor under several grants in the Department of
Aerospace and Mechanical Engineering. In 2004, he was engaged in Post-doctoral Research
at the School of Information Science and Technology, University of Tokyo, Japan. Currently,
he is a Professor with the Division of Electronic and Electrical Engineering, Kyungnam
University, South Korea. His research interests include AI-based automation, swarm
intelligence, mobile robot path planning, autonomous driving vehicles, intelligent
control, and adaptive non-linear control.