The Korean Society Of Automotive Engineers
[ Article ]
Transactions of the Korean Society of Automotive Engineers - Vol. 25, No. 6, pp.719-731
ISSN: 1225-6382 (Print) 2234-0149 (Online)
Print publication date 01 Nov 2017
Received 27 Jul 2017 Revised 27 Aug 2017 Accepted 05 Sep 2017
DOI: https://doi.org/10.7467/KSAE.2017.25.6.719

속도-각속도 공간에서 경로 예측 오류의 룩업 테이블을 이용한 보행자 후보 필터링

이연주 ; 정호기*
한국교통대학교 정보통신공학전공
Pedestrian Hypothesis Filtering Using Look-up Table of Path Prediction Error in Speed-yaw Rate Space
Youn Joo Lee ; Ho Gi Jung*
Major of Information & Communications Engineering, Korea National University of Transportation, Chungbuk 27469, Korea

Correspondence to: *E-mail: hogijung@ut.ac.kr

Copyright Ⓒ 2017 KSAE

Abstract

As active pedestrian protection systems use irreversible measures such as autonomous emergency braking, false pedestrian detection should be minimized. Although CNN’s far superior performance compared to previous methods is expected to contribute to minimizing false detection, its application suffers from its excessive computation requirement. Recently, we proposed a method improving the pedestrian detection system in real-time by predicting an area that includes all possible future paths through statistical analysis of the path prediction error. This paper proposes a method that can narrow down the area by analyzing the path prediction error considering both vehicle speed and yaw rate simultaneously. It also proposes a lookup table-based implementation that makes training and execution easier and more robust. Experimental results show that the proposed method can reduce the computation burden of hypothesis verification by 63.68 % when it is applied to the raw data of the KITTI Vision Benchmark Suite.

Keywords:

Pedestrian recognition, Risk assessment, Path prediction, Look-up table, Realtime improvement

키워드:

보행자 인식, 위험도 평가, 경로 예측, 룩업 테이블, 실시간성 개선

1. 서 론

능동적 보행자 보호 시스템은 차대 보행자 사고를 예측하여 긴급 제동 등을 통하여 이를 미연에 방지하는 시스템이다.1,2) 일반적으로 기존 능동적 보행자 보호시스템은 후보생성(HG: Hypothesis Generation), 후보검증(HV: Hypothesis Verification), 위험도평가(RA: Risk Assessment)의 3단계로 구성되며, 순차적으로 수행된다.3) HG는 비교적 가벼운 알고리즘으로 구현되며, 영상 전체에서 보행자가 있을 것으로 예상되는 영역을 후보로 골라낸다. HV는 비교적 무겁지만 정확도가 높은 알고리즘으로 구현되며, 생성된 후보가 보행자인지 여부를 평가한다. RA는 검출된 보행자가 자차의 경로 상에 있는지 여부를 평가하여 사고 위험도를 평가한다.

능동적 보행자 보호시스템은 단순히 경보만을 제공하는 시스템에 비해 긴급 제동과 같이 돌이킬 수 없는 수단을 사용하기 때문에, 오동작에 의한 비용이 매우 크다.4) 오동작은 크게 보행자가 아닌 물체를 보행자로 인식하는 보행자 오검출(False detection)과 자차의 경로를 잘못 예측하여 안전한 보행자를 위험하다고 판단하는 경로예측 오류 때문에 발생한다. 따라서 실용성과 소비자 수용성을 확보하기 위해서는 오동작을 최소화하여야 한다.

먼저 보행자 오검출 최소화 방안을 살펴보자. 최근 CNN(Convolutional Neural Network)이 다양한 인식 분야에서 기존 시스템들의 성능을 월등히 앞서는 것으로 보고되고 있으며,5) 보행자 인식 분야에서도 매우 낮은 오검출율을 보였다.6) 하지만, CNN은 기존 시스템들에 비해 상당히 무거워서 실시간 구현에 많은 어려움을 겪고 있다.7) GPU(Graphic Processing Unit)나 FPGA와 같은 고속화 하드웨어를 사용하기도 하고,8) Faster R-CNN, F-FCN, SSD, YOLO와 같이 다양한 효율적인 검출기 구조들이 제안되기도 했지만,7) 아직은 임베디드 환경에서의 실시간성 확보가 어려운 것으로 알려져 있다. 따라서 CNN 기반 보행자 인식기의 실시간성 개선이 당분간 보행자 오검출 최소화의 중요한 수단이 될 것으로 예상된다.

경로예측은 크게 세 가지로 분류된다: Physics-based, Maneuver-based, Interaction-based.9) Physics-based는 속도, 가속도, 각속도 등 현재의 운동 상태를 연장하여 경로를 예측한다. 비교적 가벼운 알고리즘으로 실시간 구현이 용이하지만, 예측 가능 시간이 제한적이며 급격한 방향전환이 많은 도심에서 큰 오류가 발생한다. 이와 같은 불확실성의 원인은 차량 운동이 기본적으로 운전자의 의도에 따라 계속적으로 조종되기 때문이다. Maneuver-based는 운전자의 의도를 파악함으로써 이런 불확실성을 감소시킨다. 하지만, 운전자의 의도를 파악하기 위해서는 지도, 전방 영상, 운전자 영상 등 다양한 대용량 정보를 처리해야 하는 부담이 생기기 때문에, 양산제품 적용은 아직 제한적이다. Interaction-based는 자차와 타차의 상호작용까지 고려하는 방법으로, 개발 초기 단계에 머물고 있다.10)

이전 논문에서11,12) 우리는 주행 데이터의 통계적 분석을 통해 자차의 미래 경로가 존재할 수 있는 영역(ROPP: Region of Predicted Path)과 보행자가 위험한 영역(ROD: Region of Danger)을 설정하는 방법을 제안했으며, 이를 HG와 HV사이에 배치함으로써 능동적 보행자 보호시스템의 실시간성을 개선할 수 있음을 보였다. 본 논문은 자차의 속도와 각속도에 따른 종/횡 방향 운동상태의 범위를 분석함으로써 기존의 ROPP 설정을 개선하는 방법을 제안한다. 특히, 차속, 각속도 구역 별로 경로 예측 오류의 통계분석 결과를 저장하는 룩업 테이블(Look-up table)을 도입함으로써, 함수 근사화의 비효율성을 극복하고 학습데이터로부터 용이하게 시스템을 구축하고 간단하게 활용할 수 있는 구현방법을 제안한다. 본 논문은 제안방법을 KITTI Vision Benchmark Suit13)의 Raw data에 적용하여, ROPP가 미래 경로의 98.25 %를 포함하고 ROD가 탐색영역을 63.68 % 축소시킴을 보였다. 이는 기존방법과 비교하여 탐색영역이 대략 20 % 감소된 결과이다.


2. 기존방법: ROD 기반 탐색영역 축소11,12)

경로예측에는 차속과 각속도가 짧은 시간 동안 일정하다고 가정하는 CTRV(Constant Turn-Rate and Velocity) 모션 모델이 많이 사용된다.14)

xt=vωsinωt(1) 
yt=vω1-cosωt(2) 

이때, x, y는 자차 전방과 좌측을 x축과 y축으로 하는 좌표계 상의 좌표를 나타내고, vω는 각각 차속과 각속도를 나타낸다. t는 시각을 나타내는데 현재 시점인 0초에서 최대 예측 시각 T까지 증가한다. 하지만, CTRV 모션 모델을 사용하는 경로예측도 회전(Turning) 시에 큰 오차를 발생시킨다. 조향각을 일정하게 유지하는 곡선로와 달리, 회전 시에 운전자는 조향각을 점진적으로 크게 했다가 다시 점진적으로 작게 조정한다.15) 이때, 회전 반경은 조향각이 커질수록 작아지기 때문에,16) 현재 상태의 회전 반경을 기준으로 미래 경로를 예측할 경우 큰 오차가 발생된다.

이전 논문에서11,12) 우리는 정확한 미래 경로를 확정할 수 없다면 차선책으로 주행 데이터의 통계적 분석을 통해 자차의 미래 경로가 존재할 수 있는 영역 ROPP를 설정할 수 있음을 보였다. 종방향 운동 상태의 범위를 결정하기 위하여 속도와 가속도 사이 관계를 분석하여, 가속도의 범위를 최대값과 최소값으로 한정되고 속도에 반비례하는 함수로 표현하였다.

amax=maxminav+b,c,d(3) 

이때, amax(v)는 속도 v일 때 최대 가속도의 크기를 나타낸다. ab는 함수의 형태를 결정하는 매개변수이고, cd는 각각 최대값과 최소값을 나타내는 매개변수이다. 최대 가속도의 크기가 결정되면, 현재 속도 v를 근거로 최대 예측시간 T동안 이동할 수 있는 최대 이동거리를 계산한다.17)

Smaxv=vT+12amaxvT2(4) 

횡방향 운동 상태의 범위를 결정하기 위하여 속도와 방향 오류 사이 관계를 분석하여, 방향오류 절대값을 최대값과 최소값으로 한정되고 속도에 반비례하는 함수로 표현하였다.

Δϕmaxv=maxminav+b,c,d(5) 

이때, ΔΦmax(v)는 속도 v일 때 최대 방향 오류를 나타낸다. 식 (3)에서와 마찬가지로, a, b, c, d는 함수의 형태와 최대값, 최소값을 결정하는 매개변수이다.

이와 같은 종/횡방향 운동 상태 범위 모델링을 근거로 미래 경로가 존재할 수 있는 영역 ROPP를 아래와 같이 계산할 수 있다.

  • ① 현재의 차속 v와 각속도 ω 입력
  • 식 (1)(2)를 근거로 예산 경로 끝점 (x(T), y(T)) 계산
  • ③ 예상 경로 끝점의 위상각 Φ(T)=tan-1(y(T)/x(T)) 계산
  • 식 (5)에 근거해 최대 방향 오류 ΔΦmax(v) 계산
  • ⑤ ROPP의 위상각 범위 계산: Φ(T)-ΔΦmax(v) ~ Φ(T)+ΔΦmax(v)
  • 식 (3)에 근거해 최대 가속도 amax(v) 계산하고, 식 (4)에 근거해 최대 도달거리 smax(v) 계산결과적으로, ROPP는 반지름이 smax(v)이고 위상각이 Φ(T)±ΔΦmax(v) 범위인 부채꼴로 정의된다.

미래 경로가 존재할 수 있는 영역인 ROPP를 근거로 보행자 충돌의 위험이 있는 영역 ROD를 정의하고, 이를 입력영상에 투영하여 HG가 생성한 보행자 후보를 필터링하는 방법을 제안하였다. 이 방법은 상대적으로 무거운 HV가 처리해야 하는 보행자 후보의 수를 감소시킴으로써 능동적 보행자 보호시스템의 실시간성을 개선시킬 수 있었다. ROPP의 좌/우변으로부터 자차 횡방향 폭 W의 절반만큼 확장된 영역을 보행자 충돌의 위험이 있는 영역인 ROD로 정의한다. Fig. 1(a)(b)는 각각 ROPP와 ROD의 설정 예를 보여준다. Fig. 1(a)의 적색 점선은 CTRV 모션 모델을 근거로 계산한 예상 경로이고, 청색 부채꼴은 최대 도달거리와 최대 방향 오류를 근거로 계산한 ROPP를 나타낸다. Fig. 1(b)의 청색 영역은 설정된 ROPP의 양변에서 자차 횡방향 폭의 절반만큼 확장하여 설정한 ROD를 나타낸다.

Fig. 1

Setup method of ROPP and ROD: (a) ROPP setup method, (b) ROD setup method

설정된 ROD는 카메라의 Projection matrix P를 이용하여 입력영상에 투영할 수 있다. 자차 중심 좌표계 상의 한 점 X(X, Y, Z, 1)에 Projection matrix P를 곱하면 영상 상의 한 점 x(u, v, 1)를 구할 수 있다.18)

x=uv1=PXYZ1=PX(6) 

이때, P의 크기는 3×4이고, X와 x는 homogeneous 좌표계를 사용한다. 자차 중심 좌표계 상의 ROD는 지표면에 존재하기 때문에, Z는 카메라 높이의 음수 -H로 설정된다. ROD의 경계를 일정한 개수의 점들로 샘플링하고 이점들에 대응되는 영상 상의 점들을 계산함으로써, 영상 상의 ROD를 계산할 수 있다. Fig. 2(a)의 적색 실선으로 그려진 대략적인 부채꼴 모양 도형은 자차 중심 좌표계 상의 ROD를 보여주고, Fig. 2(b)는 이에 대응되는 영상 상의 ROD를 보여준다. ROD가 대략적으로 부채꼴 모양이지만, Perspective transformation 때문에 영상 상의 ROD는 부채꼴 모양으로 나타나지 않음을 알 수 있다.

Fig. 2

Example of ROD setup: (a) center coordinate system of the vehicle, (b) input image coordinate system

설정된 ROD는 정해진 시간 내에 자차가 점유할 수 있는 영역을 의미하기 때문에, 어떤 보행자가 ROD 내부에 존재한다면 그 보행자가 위험하다고 판단할 수 있다. 자차 중심 좌표계 ROD를 사용할 경우엔, 보행자 중심 좌표(X, Y)가 ROD 내부에 존재하는지 여부를 평가한다. 영상 좌표계 ROD를 사용할 경우엔 보행자 영역 사각형의 밑변 중심이 ROD 내부에 존재하는지 여부를 평가한다. Fig. 3은 ROD를 사용한 보행자 필터링의 예를 보여준다. 적색 실선은 설정된 ROD를 보여주는데, 차속이 작기 때문에 최대 도달 거리는 작고 좌우 각도 범위는 넓게 설정된 상황이다. 적색 사각형으로 표시된 보행자의 경우 밑면 중심이 ROD 내부에 존재하기 때문에 위험한 보행자로 분류되고, 청색 사각형으로 표시된 보행자는 위험하지 않은 보행자로 분류된다.

Fig. 3

Example of pedestrian filtering based on ROD

Fig. 4(a)는 기존 능동적 보행자 보호시스템의 구성을 보여준다. HG가 보행자 후보를 발생시키고, HV가 이를 검증해서 보행자를 검출한다. RA는 검출된 보행자 중에서 충돌 위험이 있는 위험한 보행자를 출력하고, 최종적으로 제어 부분에서 어떤 조치를 취할 것인지를 결정한다. 이때, CNN과 같은 무거운 HV는 전체 계산부하의 대부분을 차지한다. 양산 적용되는 RA들이 대부분 Physics-based 경로 예측을 사용하기 때문에 이들의 계산 요구량은 상대적으로 미미한 수준이다.

Fig. 4

Example of pedestrian filtering based on ROD: (a) previous system, (b) proposed system

이전 논문에서11,12) 우리는 이러한 계산 요구량 특성을 고려하여 RA를 HG와 HV 사이에 배치함으로써, HV가 처리해야 할 보행자 후보의 수를 감소시키는 방법을 제안했었다. Fig. 4(b)는 제안된 능동적 보행자 보호시스템의 구성을 보여준다. HG는 보행자 후보를 발생시키고, 앞서 제안한 ROD 기반 RA가 위험한 보행자 후보를 출력한다. HV는 위험한 보행자 후보를 검증하여 위험한 보행자를 출력한다. 이렇게 동작 순서를 변경하게 되면, RA는 기존 시스템에 비해서 많은 수의 입력을 처리해야 하지만, HV는 기존 시스템에 비해서 작은 수의 입력을 처리하게 된다. HV의 계산 요구량이 RA에 비해서 월등히 크기 때문에, 결과적으로 제안 방법은 기존 시스템보다 동작시간을 단축시킬 수 있게 된다. 예를 들어, 보행자 후보 하나를 처리하는데 HV와 RA가 각각 10 ms와 0.1 ms를 소비한다고 가정해 보자 (HV의 계산 요구량이 RA에 비해서 100배 크다고 가정한 것인데, 일반적으론 더 크다). 기존 시스템에서 HG가 10개의 보행자 후보를 출력하고 HV가 2명의 보행자를 출력한다면, HV와 RA가 소비한 시간은 100.2 ms (=10ms×10+0.1ms×2)이다. 이에 비해 제안 시스템에서 HG가 10개의 보행자 후보를 출력하고 RA가 4개의 위험한 보행자후보를 출력한다면, HV와 RA가 소비한 시간은 41ms(=0.1ms×10+10ms×4)이다. HV의 수행시간이 RA의 수행시간에 비해 월등히 크기 때문에, 수행시간이 HV가 처리하는 입력의 개수에 근사적으로 비례함을 알 수 있다. 따라서, 제안 시스템의 HV가 처리하는 입력의 개수가 기존 시스템에 비해서 작아지기 때문에 RA와 HV의 수행시간을 단축할 수 있다. 즉, 기존 시스템: 10개=100.2 ms, 제안 시스템: 4개=41 ms이다.


3. 제안방법

3.1 속도-각속도 공간 도입

기존방법은 차속에 따른 종/횡방향 운동 상태의 범위만 분석하여 ROPP를 결정하였으나, 실제로 차량의 운동 상태는 차속뿐만 아니라 각속도에도 영향을 받는다.

종방향 운동 상태 범위를 결정하기 위하여 속도-각속도에 따른 가속도를 분석하였다. Fig. 5(a)는 속도에 따른 가속도의 범위를 보여준다. 차속이 0에 가까울 때는 가속도의 범위가 비교적 넓고, 일정 속도에 도달하면 가속도의 범위가 크게 감소한다. 속도에 따른 최대 가속도는 반비례 관계로 근사화할 수 있다.11,12) Fig. 5(b)는 각속도에 따른 가속도의 범위를 나타낸다. 각속도의 경우 절대값이 0.1보다 작은 경우(|ω|<0.1)에는 직진주행 상태로, 0.1보다 크거나 같은 경우(|ω|≥0.1)를 회전주행 상태로 볼 수 있으며, 각속도의 부호는 회전방향을 나타낸다. 그림에서 각속도의 절대값이 0에 가까운 직진주행의 경우에는 속도의 변화가 크게 발생할 가능성이 높기 때문에 가속도의 범위가 넓게 나타나고, 가속도의 절대값이 큰 회전주행의 경우에는 직진주행에 비해 크게 감속 또는 가속을 하는 경우가 거의 없어서 가속도의 범위가 좁게 나타난다. 하지만, 최대가속도는 각속도에 상관없이 일정하게 유지되는 것을 볼 수 있다. 즉, ROPP를 결정할 때는 최대가속도만 필요로 하기 때문에 종방향의 경우에는 각속도에 따른 분석이 큰 의미를 갖지 않는다.

Fig. 5

Analysis on acceleration range according to speed and yaw rate: (a) acceleration range according to vehicle speed, (b) acceleration range according to yaw rate, (c) acceleration range according to speed and yaw rate

횡방향 운동 상태 범위를 결정하기 위해서 속도-각속도에 따른 방향오류를 분석하였다. Fig. 6(a)는 속도에 따른 방향오류의 범위를 보여준다. 가속도에서와 같이 방향오류도 속도가 증가함에 따라 그 범위가 감소되는 반비례 관계로 근사화할 수 있다.11,12) 반면에, 각속도에 따른 방향오류의 범위를 나타낸 Fig. 6(b)를 보면 각속도의 값에 따라서 방향오류의 범위의 폭은 비교적 일정하지만, 범위의 위치는 달라지는 것을 확인할 수 있다. 각속도가 양의 방향(좌회전)으로 증가할 때는 방향오류의 범위가 음수 값(실제경로가 예상경로를 기준으로 우측에 존재)을 가지며, 각속도가 음의 방향(우회전)으로 그 값이 증가할 때는 방향오류의 범위가 양수 값(실제경로가 예상경로를 기준으로 좌측에 존재)을 갖는다. 따라서 횡방향 운동 상태를 분석할 때 직진주행과 회전주행을 구분하지 않고 하나의 운동 상태로 분석하게 되면 직진주행과 회전주행 모두에서 불필요하게 넓은 ROPP를 얻게 된다.

Fig. 6

Analysis on orientation error range according to speed and yaw rate: (a) orientation error range according to vehicle speed, (b) orientation error range according to yaw rate, (c) orientation error range according to speed and yaw rate

각속도를 고려하여 방향오류 범위를 설정할 경우, ROPP가 횡방향으로 감소될 것이라고 예상할 수 있는 이유를 Fig. 7에서 확인할 수 있다. 기존 방법은 속도에 따른 방향오류 절대값의 최대, 최소 함수를 활용하여 방향오류 범위를 설정하였다. 이것은 각속도에 상관없이 동일한 속도에서는 동일한 방향오류 범위를 갖는다고 가정한 것이다. 하지만, 주행 데이터를 확인해보면 각속도 값에 따라 방향오류 범위가 다르게 나타난다. Fig. 7은 직진주행 중의 방향오류 분포(녹색 점들)와 좌회전 중의 방향오류 분포(적색 점들)를 보여준다. 진한청색 선과 밝은 청색 선은 각각 기존 방법에 의해 설정된 최대, 최소 방향오류 함수를 보여준다. 직진주행 시의 방향오류 범위는 최대, 최소 방향오류 함수 사이에 포함되지만, 좌회전 시의 방향오류 범위는 두 함수 사이를 벗어날 뿐만 아니라 그 폭도 좁게 나타난다. 예를 들어, 좌회전 중이면서 속도가 5 m/s일 때, 기존의 ROPP는 방향 오류의 범위를 A로 설정하게 되지만, 각속도를 고려하여 좌회전 중의 데이터만 구분하여 분석하게 되면 방향 오류의 범위를 B로 설정하게 된다. 결과적으로, 기존의 ROPP 예측 방법은 (A-B)만큼의 불필요한 영역을 만들어내기 때문에 효율성이 저하됐던 것으로 분석되며, 방향오류 범위를 각속도를 고려하여 설정할 수 있다면 ROPP의 위상각 범위를 축소시킬 수 있음을 알 수 있다.

Fig. 7

Orientation error range comparison between during straight driving and turning

3.2 방향오류의 재정의

기존 방법은 방향오류를 CTRV를 기반으로 얻은 예상경로의 끝점과 실제경로의 끝점 사이의 방향각도로 정의하였다. Fig. 8(a)와 같이 실제경로가 휘어진 경우에는 ROPP가 실제경로를 모두 포함하지 못하는 문제점이 있다. 자차는 녹색 선을 따라 좌회전하는 상황이며, 청색 점선과 적색 점선은 각각 현재부터 T초 사이의 실제경로와 예상경로를 나타낸다. 기존에는 현재위치 o와 예상경로의 끝점을 잇는 선분(a)과 o와 실제경로의 끝점을 잇는 선분(b) 사이의 각도인 Δφmin만 방향오류로 사용하였다. 이러한 경우 ROPP는 Fig. 8(a)와 같이 선분 a를 기준으로 ±Δφmin범위를 갖는 적색 부채꼴로 설정되고, 이는 T초 한 점을 제외한 나머지 시간 동안의 실제경로는 포함하지 못하는 문제를 초래한다. 반면에 실제경로를 지나는 점들 중 선분 a와 가장 큰 각도를 이루는 선분 c로부터 얻어지는 방향오류 Δφmax를 적용하면 녹색 부채꼴과 같이 실제경로를 모두 포함하는 ROPP를 얻을 수 있다.

Fig. 8

Redefinition of orientation error: (a) limitation of previous method, (b) definition of proposed orientation error

본 논문에서는 실제경로상의 모든 점에 대한 방향오류 모두를 분석에 사용할 것을 제안한다. 즉, Fig. 8(b)에서와 같이 현재위치 o에서 예상경로의 끝점을 잇는 선분 aT초 동안 이동되는 실제경로 상의 각각의 점을 잇는 선분들(b1, b2, b3, ..., bn) 사이 각도 모두를 방향오류(Δφ1, Δφ2, Δφ3, … , Δφn)로 재정의한다. 이러한 방향오류 데이터를 이용하여 최대, 최소 범위를 구하면 ROPP내 실제경로의 포함비율을 보다 향상시킬 수 있다.

3.3 룩업 테이블을 이용한 운동범위 모델링

본 논문은 다양한 주행상황에 따라 변할 수 있는 종/횡방향 운동상태의 범위를 보다 정확하게 분석하기 위해 속도-각속도 공간을 도입하였다. 또한, 속도-각속도 공간을 기반으로 하는 3차원 공간에서 운동 상태 범위를 결정하기 위하여 학습과 활용이 용이한 룩업 테이블을 활용하는 구현방법을 제안한다. 그림 Fig. 5(a), (b)Fig. 6(a), (b)에서와 같이 2차원 공간에서 운동 상태를 분석할 경우에는 속도와 가속도, 각속도와 가속도, 속도와 방향오류, 각속도와 방향오류의 데이터 분포를 각각 단순한 관계식으로 표현하는 것이 가능하다. 하지만, Fig. 5(c)Fig. 6(c)와 같이 3차원 공간에서 속도-각속도에 따른 가속도와 방향오류의 범위를 분석할 경우에는 정형화하기 어려운 복잡한 형태를 가지기 때문에 단순한 관계식으로 표현하는 것이 어렵다. 본 논문은 기존 방법의 함수 추정대신 속도-각속도 공간에서의 가속도와 방향오류 범위에 대한 룩업 테이블을 학습데이터를 이용하여 사전에 생성하고, 주행 중에는 이를 활용하여 ROPP를 설정하는 방법을 제안한다.

우선, 학습데이터로부터 Fig. 9(a)와 같이 속도의 최대값과 최소값, 각속도의 최대값과 최소값을 구하고, 속도와 각속도 공간에서 학습데이터가 존재하는 영역을 Fig. 9(b)의 적색 실선과 같이 설정한다. 이 영역을 속도와 각속도 축에 대해서 각각 일정한 간격으로 분할을 하고 분할된 특정한 범위의 속도와 각속도로 결정되는 하나의 작은 영역을 셀(Cell)이라 하였다. 학습데이터들은 각 순간의 속도와 각속도에 해당하는 셀에 할당된다. Fig. 9(b)의 녹색영역은 할당된 데이터가 존재하는 활성영역을 보여주고, 녹색 이외의 영역은 할당된 데이터가 없는 비활성영역을 나타낸다. 활성영역 셀마다 그 셀에 할당된 순간들의 가속도와 방향오류를 구하고, 이들의 평균과 분산을 구해 기록함으로써 종방향 운동범위와 횡방향 운동범위에 대한 룩업 테이블을 생성한다. 이때, 각 셀은 데이터들이 가우시안 분포를 갖는다고 가정한다. 주행 중에는 현재 차속과 각속도에 해당하는 종방향 룩업 테이블 셀의 정보를 활용하여 최대가속도를 계산하고, 횡방향 룩업 테이블 셀의 정보를 활용하여 최대방향오류(예상경로를 기준으로 좌측 방향)와 최소방향오류(예상경로를 기준으로 우측 방향)를 계산한다.

Fig. 9

Cell division in speed-yaw rate space for loop-up table: (a) distribution of driving data on speed-yaw rate space, (b) cell division in speed-yaw rate space

제안 방법이 룩업 테이블을 활용하여 미래 경로가 존재할 수 있는 영역 ROPP를 설정하는 방법을 정리하면 다음과 같다.

  • ① 현재의 차속 v와 각속도 ω 입력
  • ② CTRV 모션모델을 기반으로 예상 경로 끝점 (x(T), y(T)) 계산
  • ③ 예상경로 끝점의 위상각 Φ(T) = tan-1(y(T)/x(T)) 계산
  • ④ CTRV_EKF(Extended Kalman Filtering)를 통해 보정된 차속 v'와 각속도 ω'이 속하는 셀 선택. 만약, 해당되는 셀이 없을 경우 거리가 가장 가까운 활성영역 셀 선택
  • ⑤ 선택된 셀로부터 방향오류 평균(μφ)과 표준편차(σφ)를 가져오고 최대, 최소 방향오류 계산: Δφmax =μφ + βσφ , Δφmin =μφ - βσφ
  • ⑥ ROPP의 위상각 범위 계산: Φ(T) + Δφmin ~ Φ(T) + Δφmax
  • ⑦ 선택된 셀로부터 가속도의 평균(μa)과 표준편차(σa)를 가져오고 최대가속도 계산: amax =μa+βσa
  • ⑧ 최대도달거리 smax 계산: smax = vT + (1/2)amaxT2 최종적으로 ROPP는 반지름이 smax이고 위상각이 Φ(T) + Δφmin ~ Φ(T) + Δφmax 범위인 부채꼴로 정의된다. 4단계의 EKF는 측정된 차속과 각속도에 포함된 노이즈의 영향을 제거하기 위해 사용되었다. 5단계와 7단계에 사용된 β는 ROPP의 신뢰구간을 결정하는 매개변수를 나타낸다.

4. 실험결과

제안된 방법을 KITTI Vision Benchmark Suite의 Raw data13)를 사용하여 평가하였다. Raw data는 전방 칼라 스테레오 카메라와 전방 흑백 스테레오 카메라, 3D 레이저 스캐닝 라이더, 고정밀 측위 시스템을 탑재한 차량이 다양한 환경을 주행하면서 수집한 데이터와 Calibration 정보를 제공한다. 이중 측위 정보는 OXTS RT 3003을 사용하여 취득되었으며, 거리와 각도 해상도는 각각 0.02 m와 0.1°이다.19) Raw data는 총 71개 시퀀스로 구성되어 있는데, 이중 67개 시퀀스를 사용하였다. 제외된 시퀀스는 GPS음영 지역을 포함하여 측위 오류가 심한 경우와 정지 상태에서 IMU(Inertial measurement unit) 오류가 심한 경우, 길이가 너무 짧은 경우를 포함한다. 67개 시퀀스는 10 Hz로 획득된 35,637 프레임으로 구성되어 있으며, 약 59분 주행 분량에 해당한다. Raw data는 취득 지역에 따라 네 종류(City, residential, road, campus)로 분류된다.

Table 1은 학습과 평가를 위한 데이터를 동일하게 사용한 경우에 대해서 기존방법11,12)과 제안방법을 비교한 결과를 나타낸다. 기존방법이 이런 방식의 평가결과만 제시했기 때문에 기존방법과의 비교를 위해 제시한 것이고, Table 2에 학습과 평가를 위한 데이터를 분리한 결과도 제시한다. Table 1에서는 기존방법, LUT(min-max), LUT(μ-σ) 세 가지 방법이 비교된다. 기존방법은 속도에 따른 종/횡방향 운동상태 범위를 함수로 표현한 방법이고, LUT(min-max)는 셀 값을 결정할 때 셀에 포함되는 데이터들의 최대, 최소값을 그대로 저장하는 방법이며, LUT(μ-σ)는 셀에 포함되는 데이터들의 평균과 표준편차로 최대, 최소 범위를 결정하는 방식이다. 룩업 테이블에 속하는 배열 즉, 셀의 개수는 27×33으로 결정하였고, LUT(μ-σ)에서 β=3(최대, 최소값은 분산의 3배 범위, μ±3σ)을 사용하였다. 본 논문에서는 최대 예측 시각 T를 3초로 설정하였다.17) ROPP의 성능은 설정된 ROPP가 실제 경로를 얼마나 포함하는가(실제경로 포함 비율)로 평가하였다. ROD 성능은 생성된 ROD를 입력영상에 투영하여 얼마나 탐색영역을 축소시킬 수 있는가(전체영상 대비 ROD 비율)로 평가하였다. 실제경로 포함 비율은 높을수록 우수한 것이고, 전체영상 대비 ROD 비율은 낮을수록 우수한 것이다.

Comparisons of real path inclusion rate and ROD ratio relative to full image when training data and test data are the same

LUT(min-max)는 데이터 분포에서 얻어지는 범위의 최대, 최소를 그대로 반영하기 때문에 실제경로포함비율이 99.95 %로 가장 높고, LUT(μ-σ)는 99.24 %로 기존방법과 거의 유사한 결과를 얻었다. 반면에, 전체영상 대비 ROD 비율은 LUT(μ-σ)의 경우 18.38 %로 기존방법보다 약 10 % 감소된 것을 확인할 수 있다. 따라서 기존방법과 비교했을 때 실제경로 포함 비율은 비슷하면서 전체영상 대비 ROD 비율의 감소가 가장 큰 LUT(μ-σ)방법이 가장 우수하다는 것을 알 수 있다.

LUT(min-max)와 LUT(μ-σ) 방법에 대해서 다시 학습과 평가 데이터를 분리하여 결과를 비교하였다. 이때, 기존 방법은 함수 근사화 절차가 명시되어 있지 않아 이 방법으로 평가할 수 없었다. 학습 및 평가를 위해서 67개의 시퀀스 중 2/3는 학습에 사용하고 나머지 1/3은 평가에 사용하였으며, 3-fold cross validation을 수행하였다.

또한, 방향오류를 계산할 때 예상경로와 실제경로의 양 끝점 사이의 각도오차만을 이용한 기존방법의 결과와 예상경로의 끝점과 실제경로 상의 모든 점 사이의 각도오차를 모두 이용한 방법도 함께 비교하였다. 우선, Table 2의 4, 5열의 결과들을 보면 학습과 평가 데이터를 분리하더라도 학습과 평가 데이터를 동일하게 사용한 경우와 비교하였을 때 ROPP와 ROD 성능이 거의 유사함을 확인할 수 있다. 그리고 논문에서 제안한 LUT(μ-σ) 방식의 실제경로 포함 비율이 98.25 %, 전체영상 대비 ROD 비율이 18.16 %로 LUT(min-max)보다 우수한 성능을 보여준다. 또한, Table 2의 2, 3열과 4, 5열을 비교해보면 끝점만을 이용한 방향오류 데이터를 이용한 경우보다 모든 점을 이용한 방향오류 데이터를 이용한 경우가 실제경로 포함 비율이 높게 나타났고, 전체영상 대비 ROD 비율은 LUT(μ-σ)의 경우에만 약간 감소하였다. 이러한 결과는 실제경로 상의 모든 점을 이용함으로써 끝점만을 이용하는 경우보다 학습데이터가 충분히 증가됨으로써 셀의 분포를 가우시안 분포로 모델링하는데 도움이 된 것으로 분석된다.

Comparisons of real path inclusion rate and ROD ratio relative to full image when training data and test data are separated

Fig. 10은 다양한 상황에서 설정된 ROPP의 예를 보여준다. 적색부채꼴과 흑색부채꼴은 각각 LUT(μ-σ) 방식의 ROPP와 기존방식의 ROPP를 보여주고, 적색 점선과 청색 점선은 각각 CTRV 모션모델 기반 예상 경로와 실제경로를 보여준다. Fig. 10(a)(b)는 저속 직진 상황을 보여주며, Fig. 10(c)는 고속 직진 상황을 보여준다. 저속에서는 각속도와 속도를 함께 분석함으로써 방향오류 범위와 최대가속도가 작아지기 때문에 불필요한 범위가 감소되어 ROPP가 더 작게 설정되었다. 고속에서는 회전이 거의 발생하지 않고 직진 상황에 있는 데이터만 존재하기 때문에 기존방식과 거의 유사한 크기의 ROPP가 그려진다. Fig. 10(d), (e), (f)는 각각 회전 초기 시점, 회전 중간 시점, 회전 종료 시점에서의 ROPP를 보여준다. 회전이 들어가는 초기에는 대부분의 운전자들이 속도를 감소시킨다. 이러한 경우 기존 방법을 적용하게 되면 방위각 범위가 180도가 되는 반원형태의 ROPP가 그려지는데, 제안방법에선 현재 시점의 속도와 각속도에서의 데이터 분포를 그대로 반영해주기 때문에 기존방법보다 작은 크기의 ROPP가 나타난다. 회전 중간지점과 종료지점에서도 실제경로는 모두 포함하면서 기존보다 작은 크기의 ROPP가 나타난다.

Fig. 10

Examples of ROPP setting comparison between previous method and proposed method: (a) straight driving at low speed 1, (b) straight driving at low speed 2, (c) straight driving at high speed, (d) before turning, (e) during turning, (f) after turning

Fig. 11Fig. 10에서 보여준 예시들과 동일한 시점의 주행상황에서 설정된 ROD 예를 보여준다. 적색 실선과 청색 실선은 각각 제안방법과 기존방법의 ROD를 보여주고, 적색 점선과 청색 점선은 예상경로와 실제경로를 보여준다. Fig. 11(a)(b)는 저속 직진 상황에서의 ROD를 보여준다. Fig. 11(a)는 정지된 상태에서 자차가 출발할 때의 ROD이며 이는 매우 저속인 상태라 좌우로는 넓고 종방향으로는 짧은 ROD가 생성된다. 하지만, 기존방식에 비해 제안방법이 종/횡방향으로 모두 작은 ROD를 갖는다. Fig. 11(b)는 저속 직진 상황에서의 ROD를 보여주며, 기존방식과 비교하여 제안방법의 ROD가 상당부분 감소된다. Fig. 11(c)는 고속 직진 상태의 ROD이며, 좌우로는 좁고 종방향으로는 긴 ROD가 생성된다. 고속 직진 상황에서는 기존방법과 제안방법이 거의 유사하게 나타난다. Fig. 11(d), (e), (f)는 회전의 초기, 중간, 종료 시점에서의 ROD를 보여준다. ROD가 기존방법보다 상당히 작아졌지만 실제 경로를 모두 포함하고 있는 것을 확인할 수 있다.

Fig. 11

Examples of ROD setting comparison under various driving environments: (a) straight driving at low speed 1, (b) straight driving at low speed 2, (c) straight driving at high speed, (d) before turning, (e) during turning, (f) after turning

일반적으로 전방 카메라는 지면에 수평하게 설치되기 때문에 지평선은 영상의 수직방향으로 중간쯤에 위치한다고 가정할 수 있다. 그렇기 때문에 입력 영상의 아래쪽 절반 내부에 보행자 후보의 밑면이 위치하는 경우에만 HV로 검증한다. 따라서, ROD의 성능은 ROD의 면적이 입력 영상 아래쪽 절반에 비해 얼마나 작은 지로 평가하였다. Raw data 전체에 대해서 ROD를 평가한 결과, ROD의 면적은 평균적으로 입력 영상 면적의 18.16 %를 차지하는 것으로 측정되었다. 이것은 제안 방법이 보행자 후보 중 약 63.68 %(=(50.0-18.16)/50.0)에 대한 HV를 절약할 수 있음을 의미한다.


5. 결 론

본 논문은 운동 상태, 경로예측 오류를 분석함에 있어 속도뿐 아니라 각속도를 고려하여 미래 경로가 존재할 수 있는 영역 ROPP를 기존방법보다 더 좁게 설정하는 방법과 룩업 테이블을 이용하여 학습과 활용이 용이한 구현 방법을 제안하였다. 실험결과 제안방법이 보행자 후보 중 63.68 %에 대한 검증을 절약할 수 있음을 확인하였는데, 이것은 기존 방법에 비해서 20 % 이상 증가한 수치이다.

추가 연구가 필요한 내용은 다음과 같다. 첫째, 경로 예측의 신뢰성 개선이 필요하다. 특히, 거동센서 출력을 근거로 운전자의 의지를 파악할 수 있다면, 회전 주행 상황에서의 방향오류 범위를 획기적으로 감소시킬 수 있을 것으로 예상된다. 둘째, 대표적인 HG와 HV로 구성된 시스템에 제안 방법을 적용해 실제 주행환경에서의 효과를 측정할 예정이다. 특히, CNN 기반 HV를 적용하여 CNN의 실시간 임베디드 구현이 가능한지를 검증할 예정이다.

Acknowledgments

이 논문은 2017년도 정부(미래창조과학부)의 재원으로 정보통신기술진흥센터의 지원을 받아 수행된 연구임(No. 2016-0-00152, Deep Learning 기반의 보행자 안전 지원 스마트카 비전 기술의 개발).

References

  • T. Gandhi, and M. M. Trivedi, “Pedestrian Protection Systems: Issues, Survey, and Challenges”, IEEE Transactions on Intelligent Transportation Systems, Vol.8(No.3), p413-430, (2007). [https://doi.org/10.1109/tits.2007.903444]
  • H. -K. Lee, S. -G. Shin, and D. -S. Kwon, “Design of Emergency Braking Algorithm for Pedestrian Protection based on Multi-Sensor Fusion”, Int. J. Automotive Technology, Vol. 18(No.6), p1067-1076, (2017). [https://doi.org/10.1007/s12239-017-0104-7]
  • D. Gerónimo, A. M. López, A. D. Sappa, and T. Graf, “Survey of Pedestrian Detection for Advanced Driver Assistance Systems”, IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol.32(No.7), p1239-1258, (2010).
  • A. Broggi, P. Cerri, S. Ghidoni, P. Grisleri, and H. G. Jung, “A New Approach to Urban Pedestrian Detection for Automatic Braking”, IEEE Transactions on Intelligent Transportation Systems, Vol.10(Issue 4), p594-605, (2009). [https://doi.org/10.1109/tits.2009.2032770]
  • A. Krizhevsky, I. Sutskever, and G. E. Hinton, “ImageNet Classification with Deep Convolutional Neural Networks”, Advances in Neural Information Processing Systems, p1097-1105, (2012). [https://doi.org/10.1145/3065386]
  • S. Zhang, R. Beneson, M. Omran, J. Hosang, and B. Schiele, “How Far are We from Solving Pedestrian Detection?”, The IEEE Conference on Computer Vision and Pattern Recognition, p1259-1267, (2016). [https://doi.org/10.1109/cvpr.2016.141]
  • J. Huang, V. Rathod, C. Sun, M. Zhu, A. Korattikara, A. Fathi, I. Fischer, Z. Wojna, Y. Song, S. Guadarrama, and K. Murphy, “Speed/ accuracy Trade-offs for Modern Convolutional Object Detectors”, 2017 IEEE Conference on Computer Vision and Pattern Recognition, (2017). [https://doi.org/10.1109/cvpr.2017.351]
  • V. Sze, Y. -H. Chen, T. -J. Yang, and J. Emer, “Efficient Processing of Deep Neural Networks: A Tutorial and Survey”, 2017 IEEE Conference on Computer Vision and Pattern Recognition, (2017).
  • S. Lefévre, D. Vasquez, and C. Laugier, “A Survey on Motion Prediction and Risk Assesment for Intelligent Vehicles”, ROBOMECH Journal, Vol.1(No.1), p1-14, (2014).
  • B. Kim, J. Kim, C. M. Kang, S. -H. Lee, C. C. Chung, and J. W. Choi, “Probabilistic Vehicle Trajectory Prediction via Deep Learning”, KSAE Spring Conference Proceedings, p1363, (2017).
  • H. G. Jung, “Risk Assessment-Based Hypothesis Filtering for The Realtime Improvement of Active Pedestrian Protection System”, Journal of Korea National University of Transportation, Vol.51, p255-263, (2016).
  • H. G. Jung, “Probabilistic Modeling of Future Path for Active Pedestrian Protection System”, KSAE Fall Conference Proceedings, p295-296, (2016).
  • A. Geiger, P. Lenz, C. Stiller, and R. Urtasun, “Vision Meets Robotics: The KITTI Dataset”, The International Journal of Robotics Research, Vol.32(No.11), p1231-1237, (2013). [https://doi.org/10.1177/0278364913491297]
  • J. J. Anaya, P. Merdrignac, O. Shagdar, F. Nashashibi, and J. E. Naranjo, “Vehicle to Pedestrian Communications for Protection of Vulnerable Road Users”, IEEE Intelligent Vehicles Symposium Proceedings, p1037-1042, (2014). [https://doi.org/10.1109/ivs.2014.6856553]
  • P. F. Lima, M. Trincavelli, J. Mrtensson, and B. Wahlberg, “Clothoid-Based Speed Profiler and Control for Autonomous Driving”, IEEE 18th International Conference on Intelligent Transportation Systems, p2194-2199, (2015). [https://doi.org/10.1109/itsc.2015.354]
  • K. R. Meidenbauer, An Investigation of the Clothoid Steering Model for Autonomous Vehicles, M. S. Thesis, Virginia Polytechnic Institute and State University, Blacksburg, (2007).
  • N. Tiemann, W. Branz, and D. Schramm, “Predictive Pedestrian Protection - Sensor Requirements and Risk Assessment”, 21th International Technical Conference on the Enhanced Safety of Vehicles, Paper No.09-0226, (2009).
  • R. Hartley, and A. Zisserman, Multiple View Geometry in Computer Vision, Cambridge University Press, Cambridge, p153-158, (2004). [https://doi.org/10.1017/cbo9780511811685]
  • Oxford Technical Solutions, RT v2 GNSSAided Inertial Measurement Systems, User’s Manual, http://www.oxts.com/Downloads/Products/RT3000/rtman.pdf (2017).

Fig. 1

Fig. 1
Setup method of ROPP and ROD: (a) ROPP setup method, (b) ROD setup method

Fig. 2

Fig. 2
Example of ROD setup: (a) center coordinate system of the vehicle, (b) input image coordinate system

Fig. 3

Fig. 3
Example of pedestrian filtering based on ROD

Fig. 4

Fig. 4
Example of pedestrian filtering based on ROD: (a) previous system, (b) proposed system

Fig. 5

Fig. 5
Analysis on acceleration range according to speed and yaw rate: (a) acceleration range according to vehicle speed, (b) acceleration range according to yaw rate, (c) acceleration range according to speed and yaw rate

Fig. 6

Fig. 6
Analysis on orientation error range according to speed and yaw rate: (a) orientation error range according to vehicle speed, (b) orientation error range according to yaw rate, (c) orientation error range according to speed and yaw rate

Fig. 7

Fig. 7
Orientation error range comparison between during straight driving and turning

Fig. 8

Fig. 8
Redefinition of orientation error: (a) limitation of previous method, (b) definition of proposed orientation error

Fig. 9

Fig. 9
Cell division in speed-yaw rate space for loop-up table: (a) distribution of driving data on speed-yaw rate space, (b) cell division in speed-yaw rate space

Fig. 10

Fig. 10
Examples of ROPP setting comparison between previous method and proposed method: (a) straight driving at low speed 1, (b) straight driving at low speed 2, (c) straight driving at high speed, (d) before turning, (e) during turning, (f) after turning

Fig. 11

Fig. 11
Examples of ROD setting comparison under various driving environments: (a) straight driving at low speed 1, (b) straight driving at low speed 2, (c) straight driving at high speed, (d) before turning, (e) during turning, (f) after turning

Table 1

Comparisons of real path inclusion rate and ROD ratio relative to full image when training data and test data are the same

Method Real path inclusion rate (%) ROD ratio relative to full image (%)
Previous method 99.28 28.96
LUT (min-max) 99.95 24.02
LUT (μ-σ) 99.24 18.38

Table 2

Comparisons of real path inclusion rate and ROD ratio relative to full image when training data and test data are separated

Method Orientation error using end points Orientation error using all points on real path
Real path inclusion rate (%) ROD ratio relative to full image (%) Real path inclusion rate (%) ROD ratio relative to full image (%)
LUT (min-max) 94.38 21.87 98.14 22.23
LUT (μ-σ) 96.94 19.73 98.25 18.16