"1조"의 두 판 사이의 차이
(→상세설계 내용) |
(→구성원 소개) |
||
17번째 줄: | 17번째 줄: | ||
===구성원 소개=== | ===구성원 소개=== | ||
+ | 서울시립대학교 토목공학부·과 2016860046 이지수 | ||
서울시립대학교 토목공학부·과 2016860048 홍태욱 | 서울시립대학교 토목공학부·과 2016860048 홍태욱 | ||
23번째 줄: | 24번째 줄: | ||
서울시립대학교 토목공학부·과 2013860017 박진우 | 서울시립대학교 토목공학부·과 2013860017 박진우 | ||
− | |||
− | |||
서울시립대학교 토목공학부·과 2013860016 박재성 | 서울시립대학교 토목공학부·과 2013860016 박재성 |
2019년 6월 27일 (목) 01:37 판
프로젝트 개요
기술개발 과제
국문 : YOLO와 Machine Learning을 결합한 이미지 기반 Pothole 탐지 모델 개발
영문 : Development of image-based Pothole Detection layer model Combining YOLO and Machine Learning
과제 팀명
1조
지도교수
조수진 교수님
개발기간
2019년 3월 ~ 2019년 6월 (총 4개월)
구성원 소개
서울시립대학교 토목공학부·과 2016860046 이지수
서울시립대학교 토목공학부·과 2016860048 홍태욱
서울시립대학교 토목공학부·과 2014840010 김승한
서울시립대학교 토목공학부·과 2013860017 박진우
서울시립대학교 토목공학부·과 2013860016 박재성
서울시립대학교 토목공학부·과 2016860044 서영진 (팀장)
서론
개발 과제의 개요
개발 과제의 목표 및 내용
- 서울시에만 발생하는 포트홀의 면적은 70,135로써 무려축구장11.7개의 면적에 달함.
- 포트홀로 인한 차량 파손은 빈번하게 일어나며 대형사고로까지 이어져 심각한 금전적 피해 및 인명 사고도 발생하므로 이를 소홀히 여길 수 없다고 판단됨.
- 기존의 시민들의 제보와 일상적인 점검만으로는 포트홀의 즉각적인 유지보수가 어렵고, 도로 점검에 드는 인력비용은 고비용을 수반하지만 도로파손을 초기에 발견하기엔 역부족이다.
- 따라서 딥 러닝을 이용한 포트홀 자동 탐지로 즉각적인 탐지 및 보수를 통한 안정성 확보 및 인력 비용의 절감을 구상하게 되었다.
관련 기술의 현황
관련 기술의 현황 및 분석(State of art)
<로봇을 이용한 시공 관리 감독>
<달 기지 건설을 위한 크레이터 탐지>
<드론을 이용한 관측 및 탐지>
<드론을 이용한 토공량 산정>
< 향후 인공지능을 이용한 자율 주행 건설 현장 >
- 안전성, 생산성 향상 기대 가능 -
시장상황에 대한 분석
● 기존&경쟁 에 대한 기술&제품 조사 비교
- 조사에 들어간 후 한국도로협회에서 2016년 8월부터 딥 러닝을 활용한 도로 탐지 시스템을 연구 중이며 다른 여러 단체 및 연구진에서도 이 기술을 연구 중이라는 것을 알게 되었다. 하지만 연구 진행 단계에 있는 것으로 파악 되었고, 상용화 되기까지는 시일이 걸릴 것이라 추정된다.
● 시장성 분석
현재 이 기술을 연구 중인 단체들 중 선구적이라 판단되는 한국 도로협회의 도로 탐지 방식을 예로 들면
다음 사진과 같이 지정된 차량을 이용한 탐지 방식이다. 현재 우리 조가 진행하는 방식이 차량의 블랙 박스를 이용한 탐지 방식 이라는 점에서 특별한 장비 및 차량이 필요하지 않다는 점에서 경쟁력을 갖출 것이라 판단된다.
● 사회성 분석
- 고속으로 주행되는 차량에 포트홀은 큰위협이 되며, 도로 파손 영역의 사이즈가 15cm 이상이 될 경우 바퀴가 빠지면서 펑크가 나거나 바퀴 축이 휘는 등의 손상이 생길 수 있다. 국내 고속도로의 관리 수준이 매우 높음에도 불구하고 기존의 인적자원의 육안점검에 의한 관리체계는 고비용을 수반하면서도 도로 파손을 조기에 발견하기에는 역부족이라 한다. 따라서 이 기술이 체계화 및 상용화 될 수 있다면 도로의 개선된 안정성 확보 및 비용의 절감에 도움이 될 것이라 생각한다.
개발과제의 기대효과
첫째, 신속한 파손 보수에 따른 주행 안전을 제공한다. 기존 피해 발생 후 파손을 인지하는 방식에서 선제적 인지 및 신속 대응으로 피해 발생을 예방할 수 있다.
둘째, 체계적인 도로포장 유지관리가 가능하다. 일관적이고 객관화 된 파손 정보(도로 파손 영역의 등급, 크기, 위치 정보, 시간 정보 등)을 지속적으로 축적할 수 있다.
셋째, 업무효율이 향상된다. 기존 업무 방식에서 단독 및 자동화 점검으로 전환할 수 있어 소요 시간 및 비용을 단축할 수 있다.
궁극적으로는 도로 관리의 효율성이 증대될 것으로 판단되며, 포트홀로 인한 교통사고 발생이 줄어들 것으로 기대하고 있다.
설계
설계사양
제품의 요구사항
1.딥 러닝에 대해 모르는 사람도 프로그램을 구동할 수 있는가?
-설명서를 첨부하고 필요한 부분에 있어서는 쉽게 구동할 수 있게 제작한다.
2.사진 인식에 대한 정확도가 기대치 만큼 충족되는가?
-학습방법을 다양하게 시도해서 요구되는 정확도를 높인다.
3.수익을 창출할 수 있는가?
-현 연구안이 공공기관에 채택이 된다면 실제 수익을 기대할 수 있다.
4.단가가 저렴한가?
-프로그래밍 관련 예산만 소요된다.
설계 사양
도로 면을 포장한 아스팔트-콘크리트 재료의 물리적인 특성과 시멘트-콘크리트 재료의 화학적 특성에 따라 도로 노면에 다양한 파손이 나타난다. 아스콘 포장도로 노면에서는 주로 포트홀이나 균열현상이 일어난다. 이는 고속으로 주행되는 차량에 경제적, 인명적으로 큰 위협을 가져다 줄 수 있으므로포트홀의 즉각적인 탐지 및 보수를 위해 딥 러닝을 활용한 자동 탐지를 기획하였다.
상세설계 내용
● Image 학습 카테고리 수집&분류
Crack(Asphalt)
- 462장 -
Manhole
- 159장 -
Road Drain(배수구)
- 116장 -
Pothole
- 786장 -
Plant
– 450장 -
● Image Augmentation
( 학습시킬 이미지의 분량이 부족하고 학습시키는데 원활하게 하기 위해 이미지를 후처리 시킨다)
이미지를 12% // 20% 만큼 밝게
이미지를 12% // 20% 만큼 어둡게
이미지를 30,45,60도만큼 회전시켜서
● ALEXNET을 이용한 학습 ( MATLAB 이용 )
● Training + Validation : Testing의 세트 비율
● ALEXNET을 이용한 Deep Learning의 결과
● 결과에 따른 해석
- 총 Image Set 12292장을 Training Set 8610장 + Test Set 3682장을 Epoch 10만큼 학습시킨 결과.
- 학습 결과 정확도 98.75 퍼센트로 높은 값을 기대할 수 있었다.
- 하지만 Augmentation을 진행했다고는 하나 아예 하얗게 날아가거나 너무 어두워서 어떤 이미지인지 구분이 힘든 상태에서 정확하게 이미지를 구별하는 모습을 보여주었다.
- 따라서 Image Set 내부의 이미지만 판별하도록 현재 모델이 Overfitting(과학습)상태에 이르렀음을 의심해 볼 수 있다.
- 이는 곧 실시간으로 블랙박스에 연결해 포트홀을 실시간으로 탐지하기엔 부적절하다는 결과를 도출했다.
● TensorFlow로 학습 ( Python 언어 이용 )
- 학습하는데 사용된 Image Set는 ALEXNET과 동일하다
● TensorFlow와 ALEXNET의 문제점 파악
● TensorFlow와 ALEXNET의 단점 고찰
- 위와 같은 사례들을 보면 판단을 잘못하거나 여러 가지 물체가 있는 경우에는 아예 물체 종류구별에서 꼬여버리는 상황이 발생하였다.
- 또한 ALEXNET에서 사용한 모델의 경우 육안으로 구별하기 힘든 상황임에도 불구하고 특정 물체라고 판단한 것을 보아 OVERFITTING을 의심해 볼 수 있는 상황이었다.
- 고속으로 달리는 도로 위에서 위와같은 탐지 결과를 보이게 되면 포트홀을 탐지하는데 어려움을 겪을 것이 자명하므로 학습방향이 잘못되었음을 판단할 수 있었다.
- 따라서 여태까지 진행했던 ALEXNET과 TENSORFLOW 모델을 포기하고 정확한 물체를 탐지하기 보단 빠르게 물체를 탐지할 수 있는 YOLO 모델을 이용하기로 선회하였다.
- 또한 기존 학습이미지 세트를 이용한 모델이 블랙박스 동영상에서 포트홀을 탐지할 수 있는지 다시한번 고찰해 볼 수 있는 결과를 가져왔다.
● YOLO v2&v3로 학습 ( C++ 언어 이용 )
- 실제 현장보다 두드러진 포트홀 조성 환경을 위해 찍은 도로배경에서 직접 포트홀 합성을 진행하여 Image Set를 제작하였다.
- 또한 크랙, 맨홀, 식물, 포트홀, 하수구 5개의 이미지 분류에서 크랙과 식물을 제외한 맨홀, 포트홀, 하수구 3개의 이미지 분류만 사용하게 되었다.
- 포트홀,맨홀,하수구 가 합성된 Original Image SET은 782장이다.( 포트홀 단독 이미지 : 483장, 포트홀,배수구,맨홀이 섞인 이미지 299장 )
- 합성된 이미지에 중 어디에 포트홀,맨홀,하수구가 있는지 Labeling도 별도로 진행하였다.
- 포트홀 사고현장에서 추출한 포트홀 이미지도 2184장으로 학습을 진행하였다.
- v2와 v3 모델로 포트홀을 합성한 Image Set1, 영상에서 추출한 Image Set2,이 둘을 혼합한 Image Set3 세가지 방법으로 각각 학습을 진행하여 최적의 상황을 결과로 도출하였다.
● YOLO 로 학습시키기 전 최대한 포트홀 현장과 비슷하게 이미지 합성( 학습에 사용된 합성 Image Set = 782장 )
● YOLO 로 학습시키기 전 실제 포트홀 사고 현장을 첨부하였다.( 학습에 사용된 실제 사고 현장 Image set = 2184장 )
● 학습 도중 중복되는 배경으로 인해 Overfitting을 방지하기 위해 모든 이미지들을 Random하게 밝기를 조절해주는 코드를 작성해 적용하였다.
좌우 비슷한 이미지의 밝기가 다르게 적용되어 있는 상황(배경보다는 포트홀의 이미지들이 비슷하여 overfitting이 많이 발생)
● YOLO로 학습하기 전 Labeling 진행
포트홀,맨홀,배수구를 지정해주어 특정 부분을 학습하도록 인식시켜 주었다.
● YOLO v2 & v3로 학습 진행 및 결과
v2를 iteration 10000회로 진행한 결과
v3를 iteration 4000회로 진행한 결과
진행된 학습을 토대로 모델이 이미지를 평가한 결과
실제 포트홀 사고 영상에서 포트홀을 탐지한 결과
● YOLO v2 & v3 학습결과에 대한 고찰
- 여러 가지 테스트 영상을 이용하여 결과를 파악해 본 결과 포트홀 탐지에 대해서는 어느정도 만족스러운 결과를 도출 해 내는데 성공하였다.
- 하지만 블랙박스 특성 상 여러 가지 예기치 못한 사물이 영상에 많이 보이는데 그때마다 포트홀 비슷한 사물은 포트홀로 인식하는 오류도 파악할 수 있었다.
- 또한 블랙박스로 학습 Image Set를 제작했을 때 저화질 사진도 학습으로 이용했음을 감안하면 오류도 감안해야 했었다.
- 이는 학습에 사용된 합성 이미지가 완벽하게 실제 환경과 같아질 순 없었으므로 이와 같은 결과를 도출할 수 있었던 듯 하다.