DOI QR코드

DOI QR Code

A Pedestrian Collision Warning System using a Fuzzy Logic

퍼지로직을 이용한 보행자 충돌 경고 시스템

  • Received : 2015.03.09
  • Accepted : 2015.04.29
  • Published : 2015.05.30

Abstract

A pedestrian collision warning system which makes a judgement of pedestrian's intention to help avoiding hitting accidents is proposed. This system uses the image sequences obtained from a car black box as well as vehicle's speed obtained from a GPS. It detects pedestrians, if any, based on the Histogram of Gradient method and extracts several information such as the pedestrian's relative positions, the direction of motion vectors, and distance between vehicle and pedestrian . A fuzzy logic based on these extracted information is applied to analyze the pedestrian's safety levels. When the safety level is determined to be danger, an alarm is triggered to the driver. The performance of the proposed algorithm is tested under various driving scenarios, which shows it works successfully in real-time.

논문에서는 지능형 차량에 적용하기 위해 보행자의 의도를 분석하여 보행자와의 사고를 미연에 방지하는 시스템을 제안한다. 제안하는 시스템은 블랙박스 영상으로부터 실시간으로 보행자를 검출하고, 소실점을 바탕으로 한 보행자의 상대 위치와 옵티컬 플로우를 이용한 움직임 방향 정보를 추출한다. 이러한 보행자의 정보와 차량의 현재 속도에 기반한 차량 정지 거리를 이용하여 보행자와의 충돌 위험도를 파악하는 퍼지 로직을 구현하였다. 최종적으로 퍼지 로직의 출력 정보인 충돌 위험도에 따라 운전자에게 경고를 주도록 하였다. 마지막으로 실제 주행 영상을 이용하여 제안된 시스템의 성능과 한계점을 분석하였다.

Keywords

Ⅰ. 서 론

전 세계 지능형 자동차 시스템 시장 규모는 2020년 827억 달러 규모로 성장할 것으로 예상되고 있으며, 소비자들의 자동차 안전과 편의에 대한 관심 증대로 자동차 제조 기술력 만큼이나 지능화된 소프트웨어 기술도 요구되고 있다. 지능형 자동차 시스템을 구현하기 위해서는 첨단 운전자 지원 시스템(ADAS: Advanced Driver Assistance System) 기능이 필수적이다. 그 중에서도 영상기반 주행지원 시스템은 전체 ADAS시스템 대비 약 25% 정도를 차지하고 있으며 매년 꾸준히 증가되고 있는 추세이다. 이러한 요구에 맞춰 차량에 탑재된 카메라와, 영상 분석 기술을 적용한 나이트 비전 시스템, 운전자 모니터링 시스템, 차선이탈 경고 시스템, 사각지대 모니터링 시스템, 주차 도움 시스템, 거리 경고 시스템 등 다양한 첨단 운전자 지원 시스템의 기술 개발이 요구되고 있는데 본 논문에서는 영상기반 보행자 검출을 이용한 충돌 경고 시스템을 제안하고자 한다.

보행자 인식 기술은 주로 지능형 감시 및 보안목적으로 연구되어 왔으나 최근 들어서는 보행자 안전 이슈가 대두되면서 자동차 업계를 중심으로한 관심이 크게 증가하였다. 특히 최근 유럽, 미국을 중심으로 자동차 보행자 안전 시스템의 탑재 의무화가 추진되고 있어서 요즘 자동차 업계에서는 차량 전방의 보행자를 검출하고 행동을 분석하여 보행자의 의도를 파악함으로써 사고를 미연에 방지할 수 있는 고안전 지능형 자동차를 위한 영상 분석 기술에 대한 요구가 증가하고 있다. 볼보는 차량 전방 보행자 접근에 대해 시각적인 경고와 함께 경고음을 울려주는 시티세이프티(City Safty)를 상용화하였으며, 모바일아이(Mobile Eye)가 개발한 보행자 및 차량 인식 장치가 만들어 충돌 탐지 기술을 개발하여 BMW, 볼보 등 다양한 차종에 탑재되고 있다[1][2]. Tirthankar 등은[3] 보행자를 검출 후 추적하고 인공지능 알고리즘을 통해 보행자의 심리를 추론하고 의도파악을 하여, 보행자의 돌발 상황에 미리 대처할 수 있는 알고리즘을 제안했다. 국내의 경우 서재규 등은[4] 스테레오 카메라를 이용해 운전자와 보행자가 서로 인지하기 힘든 곳을 관심영역으로 지정하여 이 영역에서 보행자를 검출하는 알고리즘을 제안하였다.

이와 같이 영상을 분석하여 보행자를 보호하고자 하는 연구는 꾸준히 진행되고 있지만 대부분 차량과 보행자와의 거리를 측정하여 알람을 주는 기술을 사용하고 있다. 하지만, 예를들어, 보행자가 같은 위치에 있더라도 차량방향으로 이동하는지, 차량의 바깥쪽으로 이동하느냐에 따라 보행자의 위험도는 다르다. 본 논문에서는 보행자의 위치, 이동하는 방향 현재 차량의 위도 등에 대한 분석을 통해, 검출 된 보행자들의 위험도를 지능적으로 판단하여 위험도에 따라 경고를 달리 하는 시스템을 제안한다.

 

Ⅱ. 제안하는 보행자 사고 방지 시스템

본 논문에서 제안하는 보행자 사고 방지 시스템은 크게 보행자들 검출하고 특징 정보를 분석하는 모듈과, 퍼지로직을 이용하여 보행자의 위험도를 분석하는 모듈로 구성되어 있으며 이를 그림 1에 나타내었다.

그림 1.제안하는 보행자 사고 방지 시스템 흐름도 Fig. 1. Flowchart of the proposed pedestrian collision warning system

1. 보행자 특징 정보 분석

1.1 보행자 검출 및 위치 분류

본 논문에서는 HOG(Histogram of Gradient)[5]를 이용한 보행자 검출 알고리즘을 적용하였다[6]. 사람을 검출하게 되면 바운딩 박스의 하단 중심점을 보행자의 위치로 결정한다. 그림 2는 HOG를 이용하여 보행자를 검출한 결과를 나타낸 것이다. 녹색 바운딩 박스는 보행자를 검출한 영역이고, 하얀색 점은 보행자 위치의 좌표값을 나타낸 것이다.

그림 2.HOG를 이용한 보행자 검출 결과 Fig. 2. Pedestrian detection results using the HOG method

보행자의 위치는 보행자의 위험성을 알려주는 중요한 정보라고 볼 수 있다. 보행자 검출 후, 보행자의 위치 좌표값을 이용하여 보행자가 차량의 정면에 위치하는지 왼쪽 또는 오른쪽 측면에 위치하는가를 판단하여야 한다. 이를 분석하기 위해 본 논문에서는 영상의 소실점[7][8]을 검출하여, 이를 기준으로 보행자의 위치를 차량의 왼쪽(Left), 정면(Front), 오른쪽(Right)으로 정의한다. 소실점을 이용하여 보행자의 위치를 세가지 영역으로 나눈 이유는 블랙박스에서 촬영한 영상은 항상 원근감이 존재하기 때문이다. 본 논문에서는 입력된 영상을 이진화하여 소벨(Sobel) 연산을 이용하여 에지를 검출되고, 검출된 에지를 이용하여 허프변환(Hough transform)을 통해 여러 개의 직선을 검출한다. 이때 직선은 영상의 잡음에 의해 불필요한 직선이 추출될 수 있기 때문에, 직선성분의 각도에 대한 임계값을 주었다. 우측 직선의 각도는 130°보다 크고 170°보다 작은 범위안의 직선을 찾고, 좌측 직선 각도는 10°보다 크고 70°보다 작은 범위안의 직선을 찾도록 하였다. 이러한 과정을 반복하게 되면 2개의 직선이 검출되고, 두 직선의 교차점을 소실점으로 판단한다. 이렇게 검출된 두 직선의 사이에서 보행자의 위치가 놓이면 보행자는 차량의 정면에 있다고 판단하고, 왼쪽 직선보다 왼쪽에 놓이면 차량의 왼쪽, 오른쪽 직선의 바깥쪽은 차량의 오른쪽에 보행자가 위치한다고 판단하게 된다. 그림 3은 좌회전 우회전 직진할 경우 소실점의 위치에 따른 보행자의 위치를 결정하는 방법을 나타낸 것이다.

그림 3.소실점 위치에 따른 보행자 위치 결정 (a)좌회전 (b)직진 (c)우회전 Fig. 3. Examples of pedestrian location by vanishing point (a) left turn(b) going straight (c) right turn

1.2 보행자와 차량의 거리 추정

보행자와 차량의 거리는 보행자의 위험도를 판단하는데 매우 중요하다. 하지만, 원근감이 존재하는 영상에서는 정확한 거리정보를 파악하기가 어렵다. 따라서 본 논문에서는 호모그래피 변환을 이용하여 입력된 블랙박스 영상을 영상의 원근감을 제거한 탑뷰(Top view)영상으로 변환하고, 변환된 영상의 좌표값을 이용하여 차량과 보행자와의 거리를 측정하였다[10][11]. 그림 4는 생성된 탑뷰 영상을 나타낸다. 하지만, 탑뷰 영상은 거리가 멀어질수록 오류가 많이 포함되므로 소실점 이하의 정보만을 사용하였다. 이렇게 변환된 탑뷰 영상을 이용하여 탑뷰에 매칭된 보행자의 위치좌표와 차량의 본네트를 나타내는 좌표와의 유클리디언 거리를 이용하여 보행자와 차량의 거리를 추정하였다.

그림 4.탑-뷰 변환 영상 (a) 입력 영상 (b) 변환 영상 Fig. 4. The transformed top-view image (a) input image (b) transformed image

1.3 보행자의 움직임 방향 추출

보행자의 움직임 방향은 위험도 분석에 또 하나의 중요한 특징정보라고 볼 수 있다. 예를 들어, 보행자가 차량의 정면에서 차량의 주행 방향과 반대로 움직인다면 위험도가 높을 것이다. 또한 보행자가 차량의 좌, 우 측면에 위치하고 있다가 차량 쪽으로 갑자기 뛰어들거나 걸어온다면 위험도 또한 높다고 판단할 수 있다. 따라서, 본 논문에서는 보행자 움직임의 방향 정보를 획득하기 위하여, 루카스-카나데 옵티컬 플로우 방법을 사용하였다. 피라미드 루카스-카나데 방법은 원본 영상에서 영상 피라미드를 구성하여 상위계층에서 하위계층으로 움직임을 추적하므로, 큰 움직임도 찾아낼 수 있다. 그 결과 그림 5와 같이 영상에서의 특징점에 관한 방향성과 크기를 얻을 수 있다[12]. 움직임을 추출하게 되면 움직임의 방향성과 크기 정보를 분석 할 수 있는데, 본 논문에서는 방향성 정보만을 사용하였다. 왜냐하면 영상에서 추출되는 움직임에 대한 정보는 차량에 대한 모션 정보와 보행자의 대한 모션정보를 함께 포함하고 있는 상대적인 움직임의 정보이고, 대부분 차량이 이동할 때 경우 차량의 움직임의 크기가 사람보다 크게 나타나기 때문 이다. 본 논문에서는 보행자검출을 통해 획득한 바운딩 박스영역 내의 움직임 방향정보를 10개의 빈(bin)으로 나누어 히스토그램을 생성하며 10-15프레임 동안의 같은 보행자의 움직임 정보를 누적하여 히스토그램의 최대 빈도수를 가지는 방향을 보행자의 방향으로 결정하였다.

그림 5.옵티컬플로우를 이용한 보행자 움직임 검출 결과 Fig. 5. Results of pedestrian motion detection using optical flows

 

Ⅲ. 보행자 위험도 분석

본 논문에서는 보행자의 위험도의 정도를 분석하기 위하여 퍼지로직(Fuzzy logic)을 사용하였다. 퍼지 로직은 명확하게 구분 짓기 힘든 물리량에 대해 퍼지 집합을 이용함으로써 애매모호함을 다룰 수 있게 해주며, 다른 분류기에 비해 속도가 빨라 실시간 시스템에 적합하다는 장점을 가지고 있다[13][14]. 본 논문에서는 추출한 보행자의 위치, 보행자와 차량과의 거리, 보행자의 이동방향과 GPS로부터 획득한 차량의 속도정보에 대한 총 4가지의 입력 변수와 위험도에 대한 1개의 출력 변수로 그림 6에 나타낸 것과 같이 멤버쉽 함수를 구성하였다. 그림 6-(a)는 보행자의 위치에 대해 Left, Front, Right 세 개의 퍼지집합을 정의한 것을 보여주며, 그림 6-(b)은 보행자와 차량의 거리에 대해 시속 30km/h에 대한 정지거리를 기준으로 본네트와 정지거리까지와 정지거리와 소실점까지의 거리를 구분하여 Near와 Far로 정의된 2개의 퍼지집합을 보여준다. 그림 6-(c)는 차량속도에 대해 정의된 Stop, Slow, Normal, Fast로 세개의 퍼지집합을 나타내고, 그림 6-(d)는 보행자의 움직임정보에 대한 멤버쉽 함수로, (만약 보행자가 90°의 방향과 270°의 방향으로 움직이고 있을 때 즉, 북쪽과 남쪽으로 움직이는 경우 상대적으로 방향을 변경할 가능성이 있기 때문에 NE와 SW에 범위를 더 넓게 분포하여) NW, NE, SW, SE로 4개의 퍼지집합으로 구성하였다. 마지막으로 그림 6-(e)는 출력 멤버쉽 함수로 위험도를 Safe, Warning, Danger로 세개의 퍼지집합으로 정의하였다.

그림 6.멤버쉽 함수 (a) 보행자 위치 (b) 보행자와 차량 사이의 거리 (c) 차량 속도 (d) 보행자 이동 방향 (e) 출력 Fig. 6. Membership functions for four inputs and one output (a)pedestrian's location (b)distance between vehicle and pedestrian (c)vehicle's speed (d) pedestrian's direction (e)output

이와같이 정의된 멤버쉽 함수를 이용하여 각 상황을 고려하며 퍼지규칙을 생성한다. 4개의 입력 변수와 1개의 출력 변수로 이루어진 퍼지 로직의 룰베이스는 3×2×4×4, 96개의 룰베이스를 가질 수 있으나, 중복된 규칙들을 정리하여 총 64개의 룰 베이스를 정의하였다. 룰 베이스는 표 1과 같다.

표 1.룰 베이스 Table 1. Rule base

이와 같이 정의된 멤버쉽 함수와 룰 베이스를 바탕으로 보행자 특징 정보와 차량의 속도에 대한 값이 입력되면 이에 대한 퍼지 로직의 출력 결과값을 산출한다. 본 논문에서는 퍼지 추론방식으로 Mamdani방법을 사용하였다. Mamdani 퍼지 추론에서의 최종적인 출력은 다음식과 같이 Max-Min 방법을 통해 얻어진다.

비 퍼지화(Defuzzification)값은 다음식과 같이 CoG (Center of Gravity) 방법을 이용하며 계산하였다[15][16].

비퍼지화된 퍼지로직의 크리스프 값을 0~10 사이로 출력하였으며, 이상의 값일 떼에는 운전자에게 알람 신호를 내보내도록 하였다.

 

Ⅳ. 실험 및 결과 고찰

제안한 시스템의 소프트웨어는 인텔 코어 i5-2400 3.30 GHz CPU와 4GB의 메모리를 갖춘 PC환경에서 Visual studio C++ 2010과OpenCV 2.4.3를이용하여 c++언어로구현하였다. 주행 중 영상을 획득하기 위해서 지면으로부터 약120Cm 높이에 설치된 아이나비의 BLACK CLAIR CCD카메라를 이용하였으며, 영상은 초당 30fps, 영상 크기는 320x 240 최대 146°화각을 갖는다. 차량의 속도를 측정하기 위하여 뉴티씨(NEWTC)의 GPS모듈인 AD-GPSSUIT V1.0를 사용하였고, 매 초당 속도, 좌표, 시간 데이터를 획득하였다. 실험데이터는 표 2와 같이 아파트 부근, 백화점부근, 학교 부근의 환경에서 주간 촬영 총 5개의 샘플을 이용하였다.

표 2.실험 비디오 속성 Table 2. Properties of the test videos

그림 7은 제안하는 시스템의 보행자의 위험도를 분석한 결과 영상을 실험 데이터별로 나타낸 예이다. 그림 7(a)에서 ART_S1의 프레임 번호 2321번 영상을 보면 녹색 바운딩 박스는 보행자 검출 결과이며, 아래의 빨간색의 화살표는 보행자의 움직임의 대표 방향을 나타낸다. 녹색 바운딩 박스 상단 오른쪽의 빨강색의 숫자는 퍼지로직을 통해 추정한 보행자의 위험도 수치를 0-10사이의 값으로 나타낸것이다. 또한, 영상의 상단에는 프레임 번호와 차량의 속도의 정보를 표기하였고, 하단에는 보행자의 위치 정보와 보행자와 차량과의 거리, 보행자의 움직이는 방향에 대한 정보를 나타내었다. 이 영상에서는 차량이 직진 주행중에 보행자가 횡단보도를 건너고 있고, 위험도 수치가 4.37로 산출되고 있다. 그림 7(c)에서 데이터 STORE_S1의 프레임 번호 526번 영상에서는 보행자가 차량의 왼쪽에 위치하고 있으나 차량과 반대 방향인 왼쪽으로 움직이고 있기 때문에 위험도 수치가 앞의 경우보다 낮게 2.51로 계산되는 것을 볼 수 있다. 또한 그림 7(e)에서의 데이터 UNIV_S2의 프레임 번호 4810번 영상에서는 차량과 보행자의 거리가 멀리 떨어져 있지만, 보행자가 차량의 정면으로 향하고 있기 때문에 위험도 수치가 3.08로 보다 높게 나오는 것을 볼 수 있다.

그림 7.보행자 사고 방지 시스템 결과 (a) ART_S1 (b) ART_S2 (c) STORE_S1 (d)UNIV_S1 (e) UNIV_S2 Fig. 7. Experimental results of pedestrian collision warning system (a) ART_S1 (b) ART_S2 (c) STORE_S1 (d)UNIV_S1 (e) UNIV_S2

하지만 보행자의 움직임 추정의 오차로 인해 분석이 정확하지 않은 경우도 발생한다. 분석에 문제가 발생하는 경우는 크게 두 가지로 나누어 볼 수 있다. 첫 번째는, 차량이 우회전, 좌회전 할때와 방지턱이 있어 아래위로 흔들리는 경우, 보행자의 움직임 분석이 부정확하여 보행자의 위험도 분석에도 크게 영향을 끼치는 것으로 실험결과 분석되었다. 또한, 역광 또는 나무 그림자 등과 같은 조명변화가 급격하게 발생하는 경우 영상 분석이 어려운 문제가 있다. 이러한 문제점들을 개선하는 추가적인 연구와 필요하다.

 

Ⅴ. 결 론

기존의 연구들은 대부분 단순히 차량 전방에서 검출된 보행자는 모두 위험한 상황으로 판단하였다. 본 논문에서는 차량의 전면에 장착된 블랙박스로부터 영상과 GPS를 통해 얻은 차량 속도를 이용하여 보행자 위치, 거리, 이동 방향, 차량속도를 입력하는 퍼지 로직을 통해 위험도를 판단하고 이 값을 바탕으로 경고를 취하여 운전자가 미연에 사고를 예방하는데 도움을 줄 수 있는 시스템을 제안하였다. 차후 자동 브레이킹 시스템과 결합될 수 있다면 운전자가 부주의 하더라도 차량으로 뛰어드는 등의 위험도가 높은 보행자에 대한 사고를 사전에 방지 할 수 있을 것이라고 판단된다.

차후 실험 및 분석에서 언급했던 조명 문제로 인한 분석실패 및 차량의 좌회전, 우회전, 방지턱에 의한 움직임 등으로 인한 사람의 위치정보 또는 움직임의 방향 및 크기 분석에 에러가 높은 것은 추후 개선해야 할 점이다. 보행자의 검출의 정확성을 높이고 복잡한 다양한 환경에서 실험하여 움직임 정보 분석을 향상 시켜 성능을 향상시키고자 한다.

References

  1. PalJoo Yoon, Hyung-Jin Kang and Ho Gi Jung, “Next Generation Pedestrian Protection Systems,” Transactions of KSAE, Vol.28, No.4 pp.28-39. 2006.
  2. Yoo, Hunjae and Sohn, Kwanghoon, “Video-based intelligent vehicle technology,” Transactions of IEEK, Vol.39, No.2, pp.148-156, 2012.
  3. Jae Kyu Shur, Hyung Min Kang and Ho Gi Jung, “Selection of Regions of Interest for Pedestrian Detection Using Stereo Vision,” KSAE spring Conference Proceedings , pp.827-830. 2012.
  4. Tirthankar Bandyopadhyay, Chong Zhuang Jie, David Hsu, Marcelo H.Jr. Daniela Rus and Emilio Frazzoli, "Intention-Aware Pedestrian Avoidance", MIT University, Massachusetts.
  5. Jae Kwan Lee and In Sik Lee, “Intelligent Advanced Safety Vehicle Technology Development,” Transactions of KSAE, Vol.28, No.4, pp.22-27, 2006.
  6. N.Dalal and B.Triggs. "Histograms of Oriented Gradients for Human Detection," in IEEE Computer Society Conference on Computer Vision and Pattern Recognition, Vol. 1, pp.886-893, 2005.
  7. Dong-Wook Kim, "Distance Estimation Between Vanishing Point and Moving Object," KIECS Annual Conference Proceedings, Vol.6, No.5, pp.637-642.
  8. Dae Gwon Yun, “Idle running distance and the breaking distance of a vehicle stopping distance estimate,” Transactions of TS FOR YOU, pp.38-39, 2008.
  9. J. Zhou and B. Li, "Homography-based ground detection for a mobile robot platform using a single camera," IEEE Int. Conf. on Robotics and Automation, pp.4100-4105, 2006.
  10. Yong-In Yoon, "3D Reconstruction Using the Planar Homograpy", J-KICS, pp.381-390, 2006.
  11. J. Zhou and B. Li, "Homography-based ground detection for a mobile robot platform using a single camera," IEEE Int. Conf. on Robotics and Automation, pp. 4100-4105, 2006.
  12. Jae-kwang Lee and Chang-Joon Park, "Algorithm for Arbitrary Point Tracking using Pyramidal Optical Flow," KMMS Annual Conference Proceedings, Vol.10, No.11, pp.1407-1418, 2007.
  13. Li-Xin Wang, “A Course in Fuzzy Systems and Control,” Prentice-Hall, 1997.
  14. Chang Yong Choi, "Fuzzy Logic Based Sound Source Localization System Using Sound Strength in the Underground Parking Lot", J-KICS, pp.434-439, 2013.
  15. E.H. Mamdani and S. Assilian, “An Experiment in Linguistic Synthesis with a Fuzzy Logic Controller,” International Journal of Man-Machine Studies, Vol.7, No.1, pp.1-13, 1975. https://doi.org/10.1016/S0020-7373(75)80002-2
  16. E.H. Mamdani, “Advances in The Linguistic Synthesis of Fuzzy Controllers,” International Journal of Man-Machine Studies, Vol.8, No.6, pp.669-678, 1976. https://doi.org/10.1016/S0020-7373(76)80028-4