Project
타이어 정상/불량 판정 자동화를 위한 이미지 처리 + 설비 내장 가능한 서비스 구현
프로젝트 관련 설명
1. 딥러닝 모델 개발
다음과 같은 최적의 딥러닝 모델을 구하기 위해 30여번의 실험을 진행
대략적인 코드는 다음과 같다
CNN 모델 최적화 과정을 간단하게 정리하자면
1. 먼저 data를 argumentaion 진행 (코드1, 이미지를 증폭, 변화를 주어 모델 적용 -> 보통 데이터 부족 할 때 사용)
2. 각각의 이미지에 대해 폴더별로 labeling( 정상 /비정상)
3. 이후 일반적인 딥러닝 모델을 정의한다 ( 지금 같은경우는 Vggnet 을 기본으로잡고 거기서 변화를 주고 실험)
4. 정의된 모델을 테스트 해가며 accuracy를 확인하고 이 과정에서 val acc set의 과적합을 확인한다
5. Hyper parmeter를 바꿔가며 실험을 진행하고 최종적으로 그림 1과 같은 파라미터 생성
6. 생성한 모델을 저장하고 배포
7. 이미지를 수직/수평으로 뒤집고 각도를 조절하여 단순한 Training set에 적합 시키지 않고 더 많은 예시에 fitting 시킴
-> (코드3, Trend를 잃지 않게하기 위해)
2. 파이썬 앱(exe)개발 및 Xml parsing
이것도 간단하게 과정을 설명하자면
1. Raw 데이터를 XML 파싱으로 특정 부분 추출 (xml 1 참고)
2. 추출한 후 이전에 배포한 CNN 모델 적용후 학습 내장 (개발 1 참고)
3. 이후 Front End 코드 적용 ( EX) text , label 등 )
4. 실제 이미지를 적용하여 모델을 돌리고 결과 값을 반환하는 코드 설계
5. Model output을 따로 파일에 자동저장 하도록 설계 (개발 2 참고 , 결과 저장 참고)
향후 프로젝트 고도화 과제
1. Directory 선택
2. 하위 디렉토리 경로 reading ex) 1월 1일 folder -> A조 -> 특정 타이어
3. 각 Directory 마다 XML 읽는 인터페이스(코드) 구현
6. Raw 데이터를 폴더 별로 접근하여 Reading 까지 자동화 (서비스 고도화 - 그리드 형식 )
구체적으로는 앞서 구현한 하단 딥러닝 EXE 모델 파일 전 단계를 Directory 설정 으로 구성하는 것
밑에 처럼 각 이미지가 생성 된 날짜와 그 날짜에 찍힌 8각도별 타이어를 개별적으로
결과를 낼 수 있는 디렉토리 설정을 EXE 파일 안에서 구현..
앞으로 계속 고도화 시키면서 수정할 예정이다.
'Project & Kaggle' 카테고리의 다른 글
철판 제조 공정 데이터를 활용한 분류모형 생성 및 성능 비교 (0) | 2021.04.07 |
---|---|
유럽 축구 경기 및 선수 특징 추출을 통한 승부 예측 (0) | 2021.04.02 |
데이터로 알아보는 리그 오브 레전드의 승리 예측 및 인사이트 (0) | 2021.02.09 |
학생들의 수업 시간 행동 분석을 통한 성적 예측 (0) | 2021.02.02 |
심부전증 환자 데이터를 통한 사망 여부 Classification (0) | 2021.02.01 |