Pothole Detecting system
- 이원민
- 인천대학교
- 작품구분일반형
- 공개여부비공개
- 카테고리정보, 전자, 기계
- 등록일2016-06-02
- 팀원(공동개발자)윤순모,이민호,권예리,허재혁,박정은
- 출품 경진대회송도산업단지캠퍼스 캡스톤디자인 전시회
- 2
- 1
- 2,106
상세설명
가. 필요성
수많은 도로에 존재하는 Pothole에 대해서 정확한 Pothole 탐지하고 그에 대한 정보를 공기업과 공유함으로써 도로보수에 필요한 정보를 제공한다. 그로인해서 포트홀로 일어나는 사고에 대한 발생가능성 및 차량 파손을 방지하기에 차량에 대한 유지비 또한 감소할 것으로 기대된다. 기존에 있는 방법으로 영상처리를 하여 찾아내는 방법이 있는데 정확도가 낮고 크기가 작은 부분에서는 감지를 하지 못하는 문제가 있다. 이런 문제를 Lidar를 이용하여 해결할 수가 있고 크기가 작은 Pothole을 찾고 정확도 또한 월등히 높게 만들 수 있다.
나. 목표
도로에 사고를 유발하는 Pot hole이 많은 지역에 존재한다. 하지만 사람이 직접 돌아다니면서 탐지를 하기 힘든 실정이고, 또 탐지를 진행하여도 정확하게 Pothole을 찾을 수 없고 데이터를 측정할 수 없다. 우리는 그에 대한 해결방법으로 Pothole Detecting system을 개발하고자 한다.
2. 과제의 기술적 내용 및 수행방법
가. 기술적 내용
이번 과제를 수행하기 위해 필요한 요소를 크게 세가지로 분류 할 수 있다. 첫 번째로는 도로의 포트홀을 라이다를 사용하여서 인지하는 부분, 두 번째로는 포트홀이 인지 되었을 경우, 차속에 따라서 카메라가 포트홀을 가능한 위부분에서 찍을 수 있도록 하는 부분, 마지막으로는 이를 자료화 하여 통신을 이용 서버의 데이터베이스로 전송하는 것이다. 먼저 도로의 포트홀을 라이다를 사용하여 인지하기 위해, 라이다의 위치는 최대한 지면과 가까워야 할 것이다. 라이다의 경우 Laser를 사용하기 때문에 거리에 따라서 beam의 직경이 늘어나는 성질이 있다. 우리가 사용하려는 SICK社 LMS511 10100 PRO모델의 경우 20m일 경우에 빔의 직경이 약 10cm가 되기 때문에, 큰 포트홀이 아니라면 감지하기 힘들다는 결론이 나온다. 따라서 차량의 범퍼에 라이다 고정 기구부를 설치하여서, 라이다가 바닥으로 향하게 하는 방법과, 사선으로 기울여서 하는 방법을 고려하여 설치 위치와 높이, 그리고 각도를 정해야 한다.
Fig 1. Beam expansion
Fig 2. Beam diameter and distance between measured points of LMS500 at 0 to 80m
라이다에서 획득된 데이터는 TCP/IP통신을 이용하여, 피씨나 임베디드 보드에 전송이 된다. 이때 라이다에서 얻어온 데이터는 노이즈가 심하므로 이를 처리하는 Digital Signal Processing 과정이 필요하다.
Fig 3. Noise of measured data
두 번째는 포트홀이 인지되었을 때 카메라를 동작시키는 타이밍은 차량으로부터 속력을 받아와 서 구하게 된다. 우리가 쓰려는 라이다는 2D Lidar로써, 1 layer 스캔을 하게 된다. 스캔을 한 대상 포인트로부터, 카메라 까지의 바닥 수평면거리는 이미 알고 있기 때문에 속력을 계산하면 몇초 후에 사진을 찍을지 계산 할 수 있다. 차량의 속력데이터를 받아오기 위해서는 CAN통신을 알아야 한다. CAN은 Controll Network Area의 약자로 Bosch社가 제안한 통신 기법이다. CAN 데이터 버스는 주로 자동차 안전시스템, 편의사양 시스템들의 ECU들 간의 데이터 전송 그리고 정보/통신 시스템 및 엔터테인먼트 시스템의 제어 등에 사용된다. CAN은 노이즈의 강인성을 가지기 위해 꼬여 있거나 또는 피복에 의해 차폐되어 있는 2가닥 데이터 배선을 통해 데이터를 전송한다. CAN은 마스터/슬레이브 시스템에서 다수의 ECU가 마스터(master) 기능을 수행하는 멀티-마스터(multi-master) 원리에 따라 작동한다. CAN 데이터 버스 중, 우리는 버스등급 C인 C캔을 사용하여 차량의 속도를 받아 오게 된다. 차량의 속도는 약 100msec마다 한번씩 보드에서 수신하게 된다. 차량의 OBD2 단자를 이용할 경우, General하게 규격화된 B캔을 가져와서 사용할 수도 있지만, 이는 샘플링레이트의 저하로 인하여 정확한 추정을 어렵게 한다. 따라서 CAN Analyze를 통하여 차량의 속도정보가 있는 Message와 데이터 byte를 알아낼 계획이다. 또 이를 이용하여 카메라의 동작 시간을 계산하는 알고리즘을 만들 것이다.
마지막으로는 수집된 영상과 위치 좌표를 데이터화 하여 전송하는 것이다. 포트홀의 위치를 나타내기 위해서 GPS를 사용하게 된다. 하지만 정밀한 DGPS의 경우 1HZ의 샘플링 주파수를 갖는다. 따라서 포트홀의 위치가 실제 측정된 위치와 많이 다를 우려가 있다. 따라서 100msec마다 나오게 되는 CAN Signal과 조합하여, Quadratic extrapolation을 통해 위치를 개략적으로 추정하고 이를 수집된 영상과 함께 데이터베이스에 전송한다. 이때 데이터베이스는 서버에 있으므로 차량과 서버 사이에 통신이 필요하다. 차량의 경우 움직일 수 있는 범위가 넓기 때문에 기본적으로 LTE망을 사용하려고 한다. 하지만 구현적인 부분에서는 LTE모듈을 사용할 경우 비용이 많이 들기 때문에 테더링을 통하여서 LTE망을 이용할 예정이다. 데이터베이스는 Mysql을 사용할 것이다.
[네이버 지식백과] CAN [Controller Area Network] (최신자동차공학시리즈 3 - 첨단자동차전기전자, 2012. 9. 5., 도서출판 골든벨)
나. 수행방법
이를 수행하기 위해서, 먼저 LMS511의 작동테스트를 할 것이다. 차량의 상단에 라이다를 부착했을 경우와, 하단에 부착했을 경우 포트홀에 대해서 데이터가 어떻게 수집되는지 실험적으로 데이터를 측정할 것이다. 측정된 데이터를 통하여 차량의 최적 장착 높이와 각도를 구할 것이다. 라이다와 영상 그리고 데이터베이스에 전송하는 모든 것은 하나의 통합 프로그램을 사용할 것이며 C++과 QT를 사용하여서 GUI환경으로 제공할 것이다. 따라서 LMS511을 사용하기 위한 C++ 프로그램이 구현되어야 하며, 영상과 데이터베이스 전송도 구현할 것이다. 기본적으로 PC와 센서들간의 입출력 프로그래밍이 완료 되면, 이를 이용하여 알고리즘 개발 및 업그레이드를 지속적으로 하여 완성도 높은 프로그램을 제작 할 것이다.
3. 과제 수행의 이론적 근거 5. 작품 구조도
3.1) 과제 도출 과정
3.1.1) Lidar를 활용한 포트홀 탐지 알고리즘 개발
우선적으로, 포트홀 탐지에 적합한 Lidar의 스캔 주기, 각 분해능을 설정해야 한다. 그에 따라 스캔 주기, 각 분해능 별 실제 포트홀 데이터를 취득한 후 포트홀을 탐지 가능한 주기와 분해능을 설정한다.
도로 노면은 Lidar 센서로부터 균일한 값을 얻기 때문에, 포트홀의 경우 스캔 데이터가 도로의 값보다 큰 값이 나오게 된다. 그것에 맞춰 Lidar 데이터를 이용한 포트홀 탐지를 수행한다.
포트홀이 탐지된 경우, 탐지된 것을 보드에 알리고 다시 Lidar의 Scan을 반복하고 그렇지 않은 경우 해당 부분을 생략하고 Lidar의 Scan을 반복한다.
포트홀이 탐지 알림은 추후 3.1.2인 Camera process를 호출하도록 융합한다.
3.1.2) 영상처리를 이용한 포트홀 탐지 알고리즘 개발
영상처리를 이용한 포트홀 탐지는 1차적으로 Lidar를 이용해 포트홀이 탐지된 경우에 시작한다. Lidar로만 포트홀을 탐지할 경우 노이즈, 동작 불량 등에 따라 오작동할 경우가 있기 때문에 영상처리를 통해 추가적으로 포트홀인지 판단한다.
영상처리의 경우, 본 영상을 에지처리 한 후 포트홀에 따른 경계부분을 하나의 오브젝트로 잡아 포트홀인지 탐지하게 된다.
포트홀이 탐지 되면 탐지된 것을 알리고 카메라 프로세스를 종료한다. 탐지되지 않은 경우에는 바로 카메라 프로세스를 종료한다.
포트홀 탐지 알림은 추후 3.1.3인 GPS prcess를 호출하도록 융합한다.
3.1.3) 포트홀 탐지에 따른 GPS 데이터 처리
GPS 데이터 처리는 단순하다. GPS 데이터가 동작하는 경우는 1차적으로 Lidar를 통한 포트홀 탐지, 2차적으로 영상처리를 통한 포트홀 탐지가 완료된 경우이다.
GPS를 통해 해당 위치의 위도, 경도 데이터를 획득하고, 획득한 데이터를 처리한다. 데이터 처리 방법은 추후 3.1.1~3.1.3의 개발이 완료 되고, 데이터 베이스가 구축 되면 해당 데이터를 서버에 보내는 데에 있다.
3.1.4) 각 프로세스 (Lidar, Camera, GPS)간 융합
기본적으로 진행하는 과제는 Lidar를 통해 계속해서 도로 노면을 계속해서 스캔하여 일차적으로 포트홀 탐지를 하게 되고, 포트홀로 판단되는 경우 추가적으로 영상처리를 통해 포트홀을 확실하게 판단한다. 그리하여, 포트홀로 판단되는 경우 GPS로 위도, 경도 데이터를 얻어 서버에 전송하는 것이다.
이때, Lidar로 도로 노면을 스캔하는 것은 차량 이동 간 계속해서 진행 되어야 한다. 그렇지 않으면 포트홀에 대한 처리 도중 추가적인 포트홀을 놓칠 수 있기 때문이다.
해당 문제를 해결하기 위해서 Lidar를 통한 도로 노면을 Main Thread로 계속해서 동작하고 포트홀 탐지에 따른 이벤트가 발생하면 Camera, GPS Process를 별도의 Thread로 동작시킨다.
3.1.5) 포트홀 탐지에 대한 데이터 베이스 구축
진행 과제는 포트홀 탐지에 따라 해당 위치를 파악하고 그 위치를 서버에 전송하여 활용하는데 있다.
그에 따라, GPS의 위도/경도 데이터와 영상을 전송받을 서버를 구축하여 동작시킨다. 서버는 C++ 혹은 C#을 이용하여 TCP/IP Socket 소켓 통신을 구축한다.
3.1.6) 서버(데이터 베이스)와 보드 간 무선 통신 구현
진행 과제의 최종 목표는 차량을 통해 도로를 주행하면서 포트홀 탐지 결과를 LTE 모듈을 활용한 서버의 전송에 있다.
그러나, 실제 시연 및 테스트에 있어서 LTE 모듈을 사용하는 것은 어려움이 있기 때문에 WIFI를 활용한 통신으로 대체한다.
WIFI를 활용하여, 서버와 차량 내 보드간 TCP/IP 통신을 진행한다. 이때, 위도/경도 데이터와 영상 데이터에 따른 프로토콜을 맞춰서 구현한다.
4.기대 효과 및 활용방안
가. 기대효과
많은 도로에 존재하는 포트홀에 대해서 정확하게 탐지하고 그에 대한 사진, GPS 정보를 공기업과 공유함으로써 도로보수에 필요한 정보를 제공하게 된다. 데이터를 제공함으로써 공공기관은 빠르게 도로 보수를 하여 포트홀로 일어나는 사고에 예방을 할 수 있고 ,또 포트홀이 생기면 도로가 파손된 돌덩어리가 생기게 된다. 이것에 대하여 차량 파손을 방지하기 때문에 차량수리 및 유지비 또한 감소할 것으로 기대한다.
나. 활용방안
라이다 센서 기술은 현재 항공기 및 위성에 탑재되어 정밀한 관측을 위한 주요수단으로 사용되고 있으며, 미래의 완벽한 무인자동차를 위한 3차원 영상 센서의 핵심기술로 활용되면서 그 중요성이 높아지고 있다. 이러한 라이다 위치를 차량의 바닥을 탐지하는 방법으로 사용하기에 포트홀을 관측하지만 다양한 위치에서 라이다를 활용할 수 있다. 이에 따라서 목적을 추가적으로 설정할 수 있고 차량뿐 만아니라 정밀관측이 요구되는 부분에서 무한한 활용이 가능하다.소개 영상
소개 슬라이드
기타자료
비공개 자료입니다.
인지혜 (인천대학교) 2016-06-02 19:00:57
그림이 다 깨져서 보이지 않네요. 다시 올려주세요.