위험운전행동 감지를 위한 앙상블 딥러닝 모델 및 온보딩 기법
차량 기술의 발전에 따라 도로교통과 운전자의 안전을 위한 차량 안전 시스템에 대한 관심이 높아지고 있다. 특히 최근 인공지능 기술의 발전으로 차량 안전 시스템과 인공지능 기술을 결합한 지능형 차량 안전 시스템에 대한 관심이 뜨겁다. 위험운전행동 감지는 지능형 차량 안전 시스템의 대표적인 기술로 졸음, 주의분산 등과 같은 운전자의 상태변화와 과속, 과격한 끼어들기 등의 위험운전행위를 감지하는 기술이다. 본 연구에서는 위험운전행동 감지 기법 중 졸음운전 감지 기술에 대한 기존 연구들의 한계점을 제시하고, 이를 해결 할 수 있는 두 가지 기법을 제안한다. 이후 실험을 통해 제안하는 두 기법의 성능을 평가한다.
졸음운전 감지 기술은 활용하는 데이터에 따라 분류할 수 있다. 운전자의 신체 데이터를 활용하는 연구들은 매우 정확하지만 데이터 수집을 위한 장비의 부족한 착용성과 높은 비용이 문제가 된다. 영상 데이터를 활용하는 연구들 역시 높은 성능을 보여주지만 조도 변화, 카메라 렌즈의 오염, 운전자 복장 등과 같은 환경적 요소에 구조적으로 취약한 점이 존재한다. 센서 데이터를 활용하는 연구들은 상대적으로 감지 성능이 낮지만 적은 비용으로 설치의 용이하여 앞선 접근 방법들보다 실용성이 높다. 따라서 높은 감지 정확도를 가지는 센서 데이터 기반의 졸음운전 감지 기법에 대한 연구가 필요하다.
본 연구에서는 앙상블 딥러닝 기반의 졸음운전 감지 기법을 제안한다. 먼저 운전자의 졸음 지속시간을 기반으로 졸음운전을 긴 졸음운전과 짧은 졸음운전의 두 형태로 구분한다. 각 졸음운전을 잘 나타낼 수 있는 의미 있는 특징들을 시계열 분석 기법을 통해 탐색한다. 그리고 각 졸음운전을 잘 인식할 수 있는 서브네트워크들로 구성된 앙상블 딥러닝 모델을 제안한다. 그리고 효율적으로 딥러닝 모델을 학습시키기 위해 데이터 세트 내 일반운전과 졸음운전 데이터의 비율을 조절하는 데이터 불균형 처리 기법을 제안한다.
기존 센서 데이터를 활용한 졸음운전 감지들은 실제 도로에서 데이터 수집 시 발생하는 위험성 때문에 차량 시뮬레이션을 활용한다. 차량 시뮬레이션과 달리, 실제 차량에서는 저해상도 센서 데이터를 획득할 수 있으며, 이러한 저해상도 데이터는 차량 움직임 패턴을 분석하기 어렵게 만든다. 그리고 위험운전감지를 위한 임베디드 장치의 제한적인 계산능력과 메모리 공간의 제약이 존재한다. 이러한 두 가지 점들이 기존 연구들을 실제 환경에 적용하는 것을 어렵게 만든다.
이러한 문제를 해결하기 위해 본 연구에서는 온디바이스 감지를 위한 경량화 기법을 제안한다. 제안하는 경량화 기법은 차량 센서 데이터의 저해상도 문제를 극복하기 위한 BT 업샘플링 기법, 실제 장치에서 제안하는 앙상블 딥러닝 기반의 졸음운전 기법을 동작시키기 위한 최소특징선택 모델, 앙상블 딥러닝 모델 압축 기법으로 구성된다. 이를 통해 임베디드 장치의 제한적인 계산능력과 메모리 공간에서 동작할 수 있는 졸음운전 감지 기법을 제안한다.
본 연구에서 제안하는 기법들의 성능을 평가하기 위해 도심환경, 고속도로 등 다양한 도로 환경이 포함된 차량 시뮬레이션을 통해 17명의 운전자로부터 약 198.3시간 분량의 데이터 세트를 구성했다. 앙상블 딥러닝 기반의 졸음운전 기법의 성능을 평가한 결과 최대 94.20%의 정확도로 졸음운전을 검출할 수 있음을 확인했다.
온디바이스 감지를 위한 경량화 기법의 경우 저해상도의 시뮬레이션 데이터를 활용해 성능 평가를 수행했다. 제안하는 BT 업샘플링 기법을 통해 저해상도 센서 데이터를 사용함에 따라 발생하는 성능손실을 약 97.27% 줄일 수 있음을 확인했으며, 임베디드 장치 환경에서 최소 추론 소요시간은 5.2 ms, 최대 검출 정확도 92.48%를 달성했다.