KR20210108600A - 자율 주행 상황 인지 프로그램 성능 테스트 방법 및 동일 방법을 수행하기 위한 자율 주행 상황 인지 프로그램 성능 테스트 장치 - Google Patents

자율 주행 상황 인지 프로그램 성능 테스트 방법 및 동일 방법을 수행하기 위한 자율 주행 상황 인지 프로그램 성능 테스트 장치 Download PDF

Info

Publication number
KR20210108600A
KR20210108600A KR1020200023372A KR20200023372A KR20210108600A KR 20210108600 A KR20210108600 A KR 20210108600A KR 1020200023372 A KR1020200023372 A KR 1020200023372A KR 20200023372 A KR20200023372 A KR 20200023372A KR 20210108600 A KR20210108600 A KR 20210108600A
Authority
KR
South Korea
Prior art keywords
data
autonomous driving
driving situation
performance test
result
Prior art date
Application number
KR1020200023372A
Other languages
English (en)
Other versions
KR102337034B1 (ko
Inventor
이창수
신병철
Original Assignee
슈어소프트테크주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 슈어소프트테크주식회사 filed Critical 슈어소프트테크주식회사
Priority to KR1020200023372A priority Critical patent/KR102337034B1/ko
Publication of KR20210108600A publication Critical patent/KR20210108600A/ko
Application granted granted Critical
Publication of KR102337034B1 publication Critical patent/KR102337034B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3604Software analysis for verifying properties of programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3692Test management for test results analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/169Annotation, e.g. comment data or footnotes
    • G06K9/00798
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
    • G06V20/588Recognition of the road, e.g. of lane markings; Recognition of the vehicle driving pattern in relation to the road

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Multimedia (AREA)
  • Traffic Control Systems (AREA)

Abstract

본 발명의 실시예에 따른 자율 주행 상황 인지 프로그램 성능 테스트 방법은, 차량의 자율 주행에 관련된 원본 데이터를 취득하는 단계, 상기 원본 데이터가 소정의 데이터 형식에 적합하도록 가공된 기준 데이터를 취득하는 단계, 상기 원본 데이터를 소정의 테스트 프로그램을 통해 실행시켜 결과 데이터를 생성하는 단계 및 상기 기준 데이터와 상기 결과 데이터를 비교한 검증 데이터를 출력하는 단계를 포함할 수 있다.

Description

자율 주행 상황 인지 프로그램 성능 테스트 방법 및 동일 방법을 수행하기 위한 자율 주행 상황 인지 프로그램 성능 테스트 장치{AUTONOMOUS DRIVING SITUATION RECOGNITION PROGRAM PERFORMANCE TEST METHOD AND APPARATUS FOR PORCEEDING THE SAME}
본 발명은, 자율 주행 상황 인지 프로그램 성능 테스트 방법에 관한 것으로, 보다 구체적으로 자율 주행 상황에서 취득된 원본 데이터들을 소정의 테스트 프로그램을 통해 실행시켜 획득된 결과 데이터와 원본 데이터를 소정의 데이터 형식에 적합하도록 가공한 기준 데이터를 비교하여 테스트 프로그램의 성능을 측정하기 위한 것이고, 특히, 오브젝트 타입, 거리, 속도 정보 등을 함께 참조함으로서 테스트 프로그램의 성능 측정 결과의 정확도를 보다 향상시키고자 하는 테스트 방법에 관한 것이다.
차량 주행 시, 차량 주변 상황을 정확하게 인지하고 차량과 부딪히지 않도록 정지를 하는 등 차량을 정확하게 제어하는 것이 필요하고, 이를 위해서는 주변에 위치한 오브젝트 위치 판단 등을 정확하게 하는 것이 중요하다. 이를 위하여, 자율 주행 테스트 프로그램의 신뢰성 확보가 중요하며, 테스트 프로그램의 성능을 측정하기 위해 오브젝트 인식 정보를 활용하기도 한다. 다만, 종래의 테스트 프로그램 성능 측정 방식의 경우, 단순히 오브젝트 인식 정보만을 활용함으로서 테스트 프로그램 성능 측정 결과의 정확도가 상대적으로 낮다는 문제점이 있었다.
본 발명은 전술한 문제점을 해결하기 위한 것으로, 원본 데이터를 소정의 데이터 형식에 적합하도록 가공된 기준 데이터를 소정의 테스트 프로그램을 통해 실행시킨 결과 데이터와 함께 비교하여 테스트 프로그램의 성능을 측정하고자 하는 데에 그 목적이 있다.
본 발명은 또한, 기준 데이터에 포함되는 오브젝트 인식 여부 정보 이외에도 오브젝트의 타입, 오브젝트의 거리, 및 오브젝트의 속도 정보 정보까지 함께 고려함으로서, 자율 주행 테스트 프로그램의 성능 측정의 정확도가 보다 향상되도록 하는 데에 그 목적이 있다.
본 발명은 또한, 오브젝트의 타입, 오브젝트의 거리, 및 오브젝트의 속도 정보에 가중치 정보를 부여하여 산출된 계산값을 이용함으로서, 자율 주행 테스트 프로그램의 성능 측정의 정확도가 보다 향상될 수 있도록 하는 데에 그 목적이 있다.
본 발명은 또한, 영상 데이터와 센싱 데이터의 융합 정보를 활용하여 보다 정확한 오브젝트 인식 결과를 획득할 수 있도록 하는 데에 그 목적이 있다.
실시예에 따른 자율 주행 상황 인지 프로그램 성능 테스트 방법은, 차량의 자율 주행에 관련된 원본 데이터를 취득하는 단계, 상기 원본 데이터가 소정의 데이터 형식에 적합하도록 가공된 기준 데이터를 취득하는 단계, 상기 원본 데이터를 소정의 테스트 프로그램을 통해 실행시켜 결과 데이터를 생성하는 단계 및 상기 기준 데이터와 상기 결과 데이터를 비교한 검증 데이터를 출력하는 단계를 포함할 수 있다.
상기 검증 데이터 출력 단계는, 상기 기준 데이터에 포함되는 오브젝트 인식 여부, 상기 오브젝트의 타입, 상기 오브젝트의 거리, 및 상기 오브젝트의 속도 정보 중 적어도 하나에 기초하여 수행될 수 있다.
상기 검증 데이터는, 상기 오브젝트의 타입, 상기 오브젝트의 거리, 및 상기 오브젝트의 속도 정보 중 적어도 하나에 가중치 정보를 부여하여 산출될 수 있다.
상기 검증 데이터 출력은 상기 오브젝트가 포함되는 프레임 단위로 수행되고,
상기 프레임 단위로 출력된 검증 데이터들의 평균치로 상기 소정의 테스트 프로그램의 성능을 측정하는 단계를 더 포함할 수 있다.
상기 기준 데이터에 포함되는 상기 오브젝트 인식 여부는, 상기 기준 데이터에 포함되는 상기 오브젝트와 상기 결과 데이터에 포함되는 오브젝트가 일치한 경우의 정인식, 상기 기준 데이터에 포함되지 않는 오브젝트 정보가 상기 결과 데이터에 포함되는 오인식, 및 상기 기준 데이터에 포함되는 상기 오브젝트 정보가 상기 결과 데이터에 포함되지 않은 미인식 중 어느 하나에 해당할 수 있다.
상기 기준 데이터에 포함되는 상기 오브젝트의 타입과 상기 결과 데이터에 포함되는 상기 오브젝트의 타입이 일치하고, 상기 기준 데이터에 포함되는 상기 오브젝트의 좌표 정보와 상기 결과 데이터에 포함되는 상기 오브젝트의 좌표 정보 중 서로 일치하는 영역이 소정의 임계치 이상인 경우 상기 정인식으로 판별될 수 있다.
상기 기준 데이터는 상기 오브젝트를 라벨링하여 상기 소정의 데이터 형식에 적합하도록 주석을 부가하는 과정을 통해 생성될 수 있다.
상기 소정의 데이터 형식은 JSON(JavaScript Object Notation) 형식일 수 있다.
상기 원본 데이터는 상기 차량의 주변이 촬영되어 생성된 영상 데이터와 상기 차량의 센서로부터 생성된 센싱 데이터가 융합되어 생성된 것일 수 있다.
본 발명의 다른 실시예에 따른 자율 주행 상황 인지 프로그램 성능 테스트 장치는, 차량의 자율 주행 상황에 관련된 원본 데이터를 취득하는 원본 데이터 취득부, 상기 원본 데이터가 소정의 데이터 형식에 적합하도록 가공된 기준 데이터를 취득하는 기준 데이터 취득부, 상기 원본 데이터를 소정의 테스트 프로그램을 통해 실행시켜 결과 데이터를 생성하는 결과 데이터 생성부 및 상기 기준 데이터와 상기 결과 데이터를 비교한 검증 데이터를 출력하는 검증 결과 출력부를 포함할 수 있다.
기준 데이터에 포함되는 오브젝트 인식 여부 정보 이외에도 오브젝트의 타입, 오브젝트의 거리, 및 오브젝트의 속도 정보 정보까지 함께 고려함으로서, 자율 주행 테스트 프로그램의 성능 측정의 정확도가 보다 향상될 수 있게 된다.
오브젝트의 타입, 오브젝트의 거리, 및 오브젝트의 속도 정보에 가중치 정보를 부여하여 산출된 계산값을 이용함으로서, 자율 주행 테스트 프로그램의 성능 측정의 정확도가 보다 향상될 수 있게 된다.
영상 데이터와 센싱 데이터의 융합 정보를 활용하여 보다 정확한 오브젝트 인식 결과를 획득할 수 있게 된다.
도 1은 실시예에 따른 자율 주행 상황 인지 프로그램 성능 테스트 장치 및 차량의 전체 시스템도
도 2는 실시예에 따른 자율 주행 상황 인지 프로그램 테스트 방법을 설명하기 위한 순서도
도 3 내지 도 8은 실시예에 따른 자율 주행 상황 인지 프로그램 테스트 방법을 설명하기 위해 참조되는 도면들
후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예에 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 정신 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는, 적절하게 설명된다면, 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다.
도 1은 실시예에 따른 자율 주행 상황 인지 프로그램 성능 테스트 장치(1) 및 차량(2)의 전체 시스템도와 함께 자율 주행 상황 인지 프로그램 성능 테스트 장치(1)의 상세 블록도를 나타낸 도면이고, 도 2는 실시예에 따른 자율 주행 상황 인지 프로그램 테스트 방법을 설명하기 위한 순서도이다.
그리고, 도 3 내지 도 8은 실시예에 따른 자율 주행 상황 인지 프로그램 테스트 방법을 설명하기 위해 참조되는 도면들이다.
도 1에 도시한 바와 같이, 실시예에 따른 자율 주행 상황 인지 프로그램 테스트 장치(1)는, 제어부(10) 및 저장부(20)를 포함할 수 있다.
제어부(10)는 자율 주행 상황 인지 프로그램 테스트 장치(1)의 데이터 송수신, 처리 등을 위한 전반적인 제어를 담당하는 것으로, 원본 데이터 취득부(110), 기준 데이터 취득부(120), 결과 데이터 생성부(130), 및 검증 결과 출력부(140)를 포함할 수 있다.
저장부(20)는 제어부(10)가 처리한 데이터를 저장하거나 차량(2)등의 외부 기기로부터 수신한 데이터를 저장할 수 있다. 제어부(10)는 저장부(20)에 저장된 데이터를 독출할 수 있다.
저장부(20)는 원본 데이터 DB(21)와 검증 데이터 DB(22)를 포함할 수 있다.
원본 데이터 DB(21)는 차량의 자율 주행에 관련된 영상 데이터와 센싱 데이터를 시나리오별로 저장할 수 있다.
검증 데이터 DB(22)는 기준 데이터와 결과 데이터를 비교한 검증 데이터를 저장할 수 있다.
이하, 도 1 및 도 2를 함께 참조하여 자율 주행 상황 인지 프로그램 테스트 방법을 상세하게 설명한다.
먼저, 원본 데이터 취득부(110)는 차량(2)으로부터 차량의 자율 주행에 관련된 원본 데이터를 취득할 수 있다(S210).
실시예에 따른 차량(2)의 자율 주행에 관련된 원본 데이터는, 차량(2)의 주변이 촬영되어 차량(2)에서 생성된 영상 데이터와 차량(2)의 센서(222)로부터 생성된 센싱 데이터가 융합되어 생성된 것일 수 있다.
차량(2)에서 생성된 영상 데이터는 차량(2)의 카메라(221)가 주변 환경을 촬영하여 획득된 것으로, 360도 카메라 같이 차량의 주변 환경을 전방위로 촬영하여 획득된 전방위 영상 데이터를 포함할 수 있다.
차량(2)의 센서(222)는 차량(2) 외부에 위치하는 오브젝트를 검출하기 위한 것으로, 센싱 데이터에 기초하여 오브젝트 정보를 생성하고, 생성된 오브젝트 정보를 ECU(210)로 전달할 수 있다. 오브젝트는 예를 들어, 차량(2)의 운행과 관련된 다양한 물체, 예를 들면, 차선, 타 차량, 보행자, 교통 신호, 및, 도로, 구조물, 과속 방지턱, 동물, 지형물 등을 포함할 수 있다.
실 시예에 따른 센서(222)는 라이다 센서(미도시), 레이더 센서(미도시), 적외선 센서(미도시), 초음파 센서(미도시) 등을 포함할 수 있다.
라이다 센서(미도시)는 레이저 광 펄스를 오브젝트에 조사하고 그 오브젝트로부터 반사된 빛을 분석하여 오브젝트의 크기와 배치를 감지하고 오브젝트와의 거리를 맵핑할 수 있다.
센서(222)는 그밖에 충돌 센서, 휠 센서, 속도 센서, 자이로 센서, 스티어링 휠 센서 등을 포함하며, 차량(2)의 상태에 관한 신호를 감지할 있는 모든 종류의 센서를 포함할 수 있다. 차량 충돌 정보, 차량 방향 정보, 차량 위치 정보, 차량 가속도 정보, 차량 기울기 정보 등이 센싱 데이터로 생성될 수 있다.
센서(222) 및 카메라(221)의 정보들은 CAN, LIN, 이더넷 등의 차량 내 통신을 통해 ECU(210)로 전송될 수 있다.
ECU(210)로 전송된 센서(222) 및 카메라(221)의 정보들은 차량(2) 내 통신부(미도시)를 통해 유/무선 통신을 이용하여 자율 주행 상황 인지 프로그램 테스트 장치(1)로 전송될 수 있다. 다른 실시예에 따르면, ECU(210)로 전송된 센서(222) 및 카메라(221)의 정보들은 미리 저장부(20)에 원본 데이터 DB(21)로 기록된 후, 원본 데이터 취득부(110)에 의해 취득될 수 있다. 원본 데이터 DB(21)는 영상 데이터와 센싱 데이터의 융합 정보가 자율 주행 상황별로 작성되어 시나리오 리스트로서 기록될 수 있다. 각 시나리오 리스트는 영상 정보를 포함하고, 각 영상이 오브젝트 정보를 포함하는 프레임들로 구성될 수 있다.
기준 데이터 취득부(120)는 원본 데이터가 소정의 데이터 형식에 적합하도록 가공된 기준 데이터를 취득할 수 있다(S220).
구체적으로, 기준 데이터는 도 3a 및 도 3b에 예시한 바와 같이, 오브젝트를 라벨링하여 소정의 데이터 형식에 적합하도록 주석을 부가하는 과정
(Annotation)을 통해 생성된 것일 수 있다. 여기서, 소정의 데이터 형식은 JSON(JavaScript Object Notation) 형식일 수 있으나 본 발명의 권리범위가 이에 제한되는 것은 아니다.
원본 데이터는 영상, Lidar, Radar 등의 센서 데이터이며, 이를 기준 데이터로 출력하기 위해 Annotation 과정을 거칠 수 있다. 취득 영상을 프레임 단위(예> 초당 3~30 프레임)로 나누고 미리 개발된 Annotation 도구를 이용해 작업자들이 수동으로 프레임 내의 오브젝트 라벨링하고, 센싱 데이터를 이용해 거리 정보 등을 입력하는 방식으로 수행될 수 있다. Annotation 작업이 끝나면 이를 데이터 표준에 맞게 출력하게 되는데, 이때 데이터 형식은 확장이 용이하고 오브젝트 별 속성을 정리하기 좋은 JSON(JavaScript Object Notation) 형식을 이용할 수 있다.
도 3a 및 도 3b에 예시한 바와 같이, 이동 오브젝트의 경우, 오브젝트의 속성값은 오브젝트의 타입(종류), 상대 속도, 절대 속도, 거리 정보, 각도, 길이, 너비, 높이, 오브젝트 검출 위치 등의 정보를 포함할 수 있다. 그리고, lane(비이동 고정 오브젝트)의 경우, 오브젝트의 속성값은, lane style, lane type, lane direction 등의 정보를 포함할 수 있다. 도 3에 도시한 각 오브젝트들에 관련된 정보를 ANNOTAION을 이용해 테이블 형태로 보관하는 과정에서, 기준 데이터 및/또는 결과 데이터에 각 오브젝트 속성 정보가 포함되는 지 여부를 식별하기 위한 필드 정보도 반영될 수 있다.
특히, 오브젝트 검출 위치의 경우, 오브젝트의 타입에 따라 상이한 정보를 출력할 수 있다. 예를 들어, 보행자, 자동차 등 이동 오브젝트는 바운딩 박스 (2D box)의 좌상, 우하 좌표를 출력하고, 차선이나 주차선 등의 고정 오브젝트는 Polyline 형으로 vertices(정점)의 좌표를 출력할 수 있다. 참고로, 바운딩 박스(bounding box)는 검출하기 위한 오브젝트를 둘러싼 윈도우 영역으로 정의될 수 있다.
결과 데이터 생성부(130)는 원본 데이터를 소정의 테스트 프로그램을 통해 실행시켜 결과 데이터를 생성할 수 있다(S230).
결과 데이터는 원본 데이터를 소정의 테스트 프로그램에 적용했을 때 출력되는 결과물로, 이 때 출력되는 결과 데이터의 포맷도 소정의 데이터 형식에 맞도록 출력될 수 있다. 실시예에 따르면, 결과 데이터의 소정의 데이터 형식 또한 JSON(JavaScript Object Notation) 형식을 이용할 수도 있다.
결과 데이터는 이동 오브젝트의 검출 위치 정보(좌표 정보) 및 차선의 위치 정보(좌표 정보)를 반드시 포함하도록 구현할 수 있다.
검증 데이터 출력부(140)는 기준 데이터와 결과 데이터를 비교한 검증 데이터를 출력할 수 있다. 출력된 검증 데이터는 시각화되어 작업자에게 보여질 수 있다.
검증 데이터 출력부(140)는 기준 데이터를 기준으로 결과 데이터의 오브젝트 인식 결과를 비교하고, 비교 측정한 결과를 기준에 따라 평가하여 검증 데이터를 출력할 수 있다(S240).
검증 데이터 출력부(140)는 기준 데이터에 포함되는 오브젝트 인식 여부, 오브젝트의 타입, 오브젝트의 거리, 및 오브젝트의 속도 정보 중 적어도 하나에 기초하여 검증 데이터를 출력할 수 있다.
검증 데이터 출력부(140)는 오브젝트가 포함되는 프레임 단위로 검증 데이터 출력을 수행할 수 있고, 프레임 단위로 출력된 검증 데이터들의 평균치로 상기 소정의 테스트 프로그램의 성능을 측정할 수 있다.
실시예에 따르면, 기준 데이터에 포함되는 오브젝트 인식 여부는, 기준 데이터에 포함되는 오브젝트와 결과 데이터에 포함되는 오브젝트가 일치한 경우의 정인식, 기준 데이터에 포함되지 않는 오브젝트 정보가 결과 데이터에 포함되는 오인식, 및 기준 데이터에 포함되는 오브젝트 정보가 결과 데이터에 포함되지 않은 미인식 중 어느 하나에 해당할 수 있다.
구체적으로, 기준 데이터에 포함되는 오브젝트와 결과 데이터에 포함되는 오브젝트의 타입이 일치(예를 들어, 차량-차량, 보행자-보행자, 차선-차선)하고 상기 기준 데이터에 포함되는 상기 오브젝트의 좌표 정보와 상기 결과 데이터에 포함되는 상기 오브젝트의 좌표 정보 중 서로 일치하는 영역이 소정의 임계치 이상인 경우(예를 들어, IOU 수치가 0.5 이상인 경우), 정인식으로 판단할 수 있다.
여기서, 오브젝트의 좌표 정보가 소정의 임계치 이상인지 여부는 IOU(Intersection of Union) 지표를 통해 측정될 수 있다. 오브젝트 검출은 바운딩 박스를 얼마나 잘 예측하였는지에 관한 지표인 IOU를 측정하는 것을 통해 수행될 수 있다.
오브젝트 검출에서 정확도 계산은 정답(Ground Truth, GT)과 테스트 프로그램이 예측한 예측 결과(Predeciton)와의 비교를 통해 이루어질 수 있다. 정답(GT)과 예측 결과(Predection)과 100%일치하는 경우에 IOU 값은 1을 가질 수 있고, IOU 값이 0.5 이상인 경우 정답으로 인정하도록 할 수 있다. 다만, 0.5는 실시예일 뿐이며 다른 수치로도 적용 가능하다.
예를 들어, 도 4b에 도시한 바와 같이, 2개의 바운딩 박스를 비교할 수 있는데, 오브젝트의 타입이 일치하고 IOU 계산 결과가 0.5 이상이면 해당 오브젝트는 정인식된 것으로 판별할 수 있다.
실시예에 따르면, 바운딩 박스 뿐 아니라 Polygon 형태로 인식된 오브젝트의 경우에도 IOU를 적용할 수 있는데, 특히 오브젝트 중 Polyline 형태로 출력된 데이터를 비교 측정할 때 Polygon IOU를 이용할 수 있다. 도 4c에 도시한 바와 같이, 차선을 인식할 때, 데이터 표준 상 Polyline의 vertices가 입력되는데 이 vertices를 연결하여 Polygon을 생성할 수 있다. 그리고 기준 데이터와 결과 데이터의 Polygon이 겹치는 부분과 전체의 크기를 계산하여 Polygon의 IOU를 측정할 수 있다.
오인식의 경우는, 존재하지 않은 오브젝트를 인식한 것으로, 기준 데이터에는 포함되지 않는 오브젝트 정보가 결과 데이터에서 오브젝트 좌표 정보나 오브젝트 타입 등의 정보를 출력하는 경우 오인식으로 분류할 수 있다.
미인식의 경우는, 오브젝트가 존재하지만 이를 인식하지 못한 것으로, 프레임 내에 인식해야하는 오브젝트가 존재함에도 결과 데이터에서 해당 오브젝트의 정보를 출력하지 않은 경우, 또는 오브젝트를 인식하여 정보를 출력하였음에도 오류가 발생하여 오브젝트의 타입이 불일치한다거나 IOU 수치가 임계치 미만인 경우에 미인식으로 분류할 수 있다.
예를 들어, 도 4a를 참조하면, 점선이 기준 데이터의 오브젝트 좌표를 나타내는 바운딩 박스이고, 실선이 결과 데이터의 오브젝트 좌표를 나타내는 바운딩 박스이며, 여기서, 정인식, 미인식, 오인식은 다음과 같이 판별될 수 있다.
A가 Type = 차량이고 IoU가 0.5 이상일 경우 정인식이다.
A가 Type ≠ 차량이거나 IoU가 0.5 미만일 경우 미인식이다.
B가 Type = Dotted Lane이고 IoU가 0.5 이상일 경우 정인식이다.
B가 Type ≠ Dotted Lane이거나 IoU가 0.5 미만일 경우 미인식이다.
C는 기준 데이터에 없는 오브젝트의 좌표를 결과 데이터에서 출력하고 있으므로 오인식이다.
D는 기준 데이터에 존재하는 오브젝트의 좌표를 결과 데이터에서 출력하지 못하고 있으므로 미인식이다.
이하, 참고로 오브젝트 타입을 비교하는 방법에 대해 기술한다.
일반적으로 Object Detection에서 정확도의 계산은 주로 정답(Ground Truth, 이하 GT)과 모델이 예측한 결과(Prediction) 간의 비교를 통해 이루어진다. Object Detection에서 GT는 이미지의 각 object의 해당하는 Bounding Box와 Box 안의 class를 의미한다. 즉 정확도가 높다는 것은 모델이 GT와 유사한 Bounding Box를 예측(Regression)하면서 동시에 Box 안의 object의 class를 잘 예측(Classification)하는 것을 의미한다. 즉 class도 정확하게 예측하면서, 동시에 object의 영역까지 잘 예측을 해야 한다.
Object Detection에서 사용하는 정확도의 경우 Class를 예측하지 못하면 실패로 간주된다. Class를 올바르게 예측하였을 때의 Bounding Box의 정확도를 기준으로 정확도를 측정하게 된다. 본 발명에서도 마찬가지로 Class를 정확히 예측하지 못하면 인지 실패로 한다. 다만 본 발명에서는 Class란 용어대신 데이터 표준에 맞게 Object Type이란 이름으로 사용한다.
이하, 도 5a 및 도 5b를 참조하여 실시예에 따른 오브젝트 검출 메트릭 및 테스트 프로그램의 성능 측정 방식에 대하여 기술한다.
기계 학습 분야의 통계적 분류 같은 문제에서 Confusion matrix 란 분류 알고리즘의 성능을 시각화 할 수 있는 표이며 도 5a는 이의 예시이다. 행렬의 각 행은 예측 된 클래스의 인스턴스를 나타내며 각 열은 실제 클래스의 인스턴스를 나타낸다(또는 그 반대). 이를 각 case별로 살펴보면 아래와 같다.
True Positive(TP): 실제 True인 정답을 True라고 예측 (정답)
False Positive(FP): 실제 False인 정답을 True라고 예측 (오답)
False Negative(FN): 실제 True인 정답을 False라고 예측 (오답)
True Negative(TN): 실제 False인 정답을 False라고 예측 (정답)
본 발명의 테스트 프로그램에 전술한 Confusion matrix를 적용하면 아래와 같이 정의될 수 있다.
True Positive - 실제 존재하는 object를 인지함 (정인식)
False Positive - 실제 존재하지 않는 object를 인지함 (오인식)
False Negative - 실제 존재하는 object를 인지하지 않음 (미인식)
True Negative - 실제 존재하지 않는 object를 인지하지 않음 (Don't care)
위의 네 가지 인지 여부를 가지고 Precision, Recall, Average Precision등의 지표들을 계산해서 성능을 측정한다.
가. Precision (정밀도)
정밀도는 Object를 인지한 (좌표를 출력한) 것 중에서 실제로 Object가 존재하는 것의 비율이다. 아래와 같은 식으로 표현할 수 있다.
Figure pat00001
본 발명에서는 결과지가 출력한 인지 결과 중 정인식인 것의 비율로 나타낼 수 있다.
나. Recall (재현율)
재현율은 실제 존재하는 Object 중에서 결과지도 존재한다고 인지한 것의 비율이다. 아래와 같은 식으로 표현할 수 있다.
Figure pat00002
본 발명에서는 정답지에 출력된 인지 결과(인지 대상 객체) 중 정답지가 인지한 것(정인식)의 비율로 나타낼 수 있다.
Precision와 Recall은 알고리즘의 파라미터 조절에 따라 유동적으로 변하는 값이다. 가령 오인식의 비율을 줄이기 위해 확실히 인지된 것만 결과지로 출력한다면 Precision은 1에 가까워진다. 반대로 모든 좌표에 대해 결과를 출력한다면 미인식이 없어지므로 Recall이 1이 되게 된다. 따라서 Precision과 Recall은 반비례 관계를 갖게 되며, 테스트 프로그램의 성능을 제대로 비교하기 위해서는 precision과 recall의 성능변화 전체를 살펴봐야 한다. 이때 사용하는 개념이 Average Precision(AP)이다. Average precision은 인식 알고리즘의 성능을 하나의 값으로 표현한 것이다. Average precision이 높으면 높을수록 그 알고리즘의 성능이 전체적으로 우수하다는 의미이다. 컴퓨터 비전 분야에서 물체인식 알고리즘의 성능은 대부분 average precision으로 평가한다.
도 5b의 그래프처럼 Average Precision의 계산은 Recall을 0부터 0.1 단위로 증가시켜서 1까지(0, 0.1, 0.2,…, 1) 증가시킬 때 필연적으로 Precision이 감소하는데, 각 단위마다 Precision 값을 계산하여 평균을 내어 계산한다. 즉 11 가지의 Recall 값에 따른 Precision 값들의 평균이 AP를 의미한다. 이렇게 전체 Class에 대해 AP를 계산하여 평균을 낸 값이 mean Average Precision(mAP)이다. 1개의 object당 1개의 AP 값을 구하고, 여러 object-detector 에 대해서 mean 값을 구한 것이 mAP 이다.
본 발명에서도 기준 데이터와 결과 데이터 비교를 통해 mAP는 측정이 가능하다. 기준 데이터와 결과 데이터의 객체 인지 결과를 IOU와 Class (Type)을 비교 측정함으로써 해당 object의 인지 여부 등을 판정가능하고 그 결과에 대한 지표로 mAP를 계산해서 성능 측정 지표로 삼을 수 있다. 다만, 여타의 객체 인식 과는 다르게 본 발명은 특히 차량의 자율 주행 상황을 인지하기 위한 테스트 프로그램을 검증해야 한다. 주행 상황이라는 특수성을 반영해야 하기 때문에 mAP와 같은 측정 지표 외에 더 고려해야 할 사항이 있다.
이를 고려하여, 전술한 바와 같이, 본 발명의 실시예에 따른 검증 데이터 출력부(140)는 기준 데이터에 포함되는 오브젝트 인식 여부 이외에도 오브젝트의 타입, 오브젝트의 거리, 및 오브젝트의 속도 정보 중 적어도 하나에 기초하여 검증 데이터를 출력할 수 있다.
1) 구체적으로, 오브젝트의 타입 정보는 아래와 같이 기술될 수 있다.
일반적으로 자율 주행 중 교통 사고 발생은 보행자가 차량보다 더 위험할 수 있으므로, 오브젝트의 타입까지 고려하여 테스트 프로그램의 인지 평가 결과가 달라지면 오브젝트 검출의 정확도가 높아지게 된다.
2) 구체적으로, 오브젝트의 거리 정보는 아래와 같이 기술될 수 있다.
본 발명에서 테스트 프로그램을 검증하기 위해 취득한 데이터는 카메라 영상만이 아니라 Lidar, Radar, 초음파 센서 등 각종 센서 데이터를 포함한다. 이 센서 데이터들을 각각의 영상 frame에 synchronization하면 (이하 sensor fusion) 영상 frame안의 객체들에 대한 거리 정도를 알 수 있게 된다. Annotation 과정에서 이 거리 정보들을 객체에 속성값으로 지정해주면 기준 데이터에서 차량과 각 객체 사이의 거리 정보를 가지고 있게 된다.
주행 상황 인지 테스트 프로그램 평가에서 차량과 객체간의 거리를 감안해야 하는 이유는 두 가지 이다. 먼저 최대 인식 거리를 정해야 한다. 카메라 영상에는 취득 조건이나 환경에 따라 거리가 너무 멀거나 다른 객체에 가려져서 작게 보이는 객체 등이 있을 수 있는데 이러한 객체들도 인지 대상으로 (인지 테스트 프로그램 평가의 성능 측정 대상으로) 하기는 어렵다. 따라서 우선 인지 대상으로 하고자 하는 객체의 최대 거리를 정해야 한다. 다만 인지 테스트 프로그램 검증에 대한 국제 표준이 제정된 것이 없으므로 ADAS시스템의 개별 국제 표준 등의 자료를 참고하여 기준을 세울 수 있다.
먼저 Adaptive Cruise Control System에 대한 표준 (ISO 15622)을 참고하면 ACC 방식 중 전방 차량 추종에 대해서 직선 도로에서의 탐지 범위가 규정되어있다.
도 6a를 참조하면, 직선 도로에서 전방 차량에 대한 distance_max는 100m로 설정되어있다.
또한 교통공학상 정지거리 계산법 등을 참고할 수 있다.
도 6b는 교통공학상 제동거리와 공주거리를 포함한 정지거리를 구하는 방식을 보여준다. 100km/h(27.8m/s)의 속도로 주행하는 차량이 전방에 위험인자를 발견하여 제동을 하였을 때, 공주거리와 제동거리에 운전자 반응시간을 더한 안전거리는 100m가 된다. 자율 주행의 특성상 운전자 반응시간은 제외될 수 있는 인자이나 SAE Level3 정도를 대상으로 함을 고려하면 위 계산상 @(반응시간)도 포함됨이 타당하다. 현행 교통법상 고속도로에서의 100km/h속도 제한을 지킨다고 전제하고 최대 제동거리를 100m로 적용한다. 따라서 본 과제에서 인지 대상으로 하는 객체의 최대거리는 취득 차량으로부터 100m이다.
인지 대상의 최대거리 외에도 인지 대상과 취득 차량간의 거리도 인지SW 평가의 고려대상이다. Type에서 고려한 것과 마찬가지로 취득 차량과 인지대상 객체와의 거리는 자율주행 차량의 사고에 영향을 줄 수 있는 요인이기 때문이다. 가령 하나의 영상 frame에 두 개의 인지대상 객체 (차량)이 있는데 하나는 취득차량으로부터 20m, 하나는 취득차량으로부터 60m 떨어져있다면 기존의 mAP계산처럼 동일한 수준으로 취급할 순 없다. Sensor fusion을 전제로 한다면 각 객체의 거리를 이용해 거리에 따라 인지 결과를 다르게 평가하는 것이 필요하다.
3) 구체적으로, 오브젝트의 속도 정보는 아래와 같이 기술될 수 있다.
주행 상황을 전제로 하는 인지 SW의 평가이기 때문에 차량의 속도는 평가에
고려해야 하는 중요한 지표이다. 인지 SW평가에 필요한 속도 관련 지표는 차량의 속도와 인지 대상 객체와의 상대 속도이다.
본 발명에서 인지SW를 검증하기 위해 취득하는 데이터에는 취득 차량의 CAN 정보도 포함되어 있다. CAN 정보를 통해 취득 당시 차량의 속도를 알 수 있다. CAN 정보를 통해 속도가 입력된다는 점, 도로교통법상 최대 속도가 규정되어있다는 점을 종합하여 주행상 취득차량의 속도를 감안한 평가 지표를 수립하는 것이 필요하다.
본 발명에서, 취득차량의 속도보다 더 중요하게 참고해야 하는 지표는 인지대상 객체와의 상대 속도(Relative Velocity) 이다. 상대속도는 물체 A, B가 운동하고 있을 때 A와 함께 운동하고 있는 관측자가 B의 운동을 보았을 때의 속도이다. 한 좌표계에서 A 물체의 속도를
Figure pat00003
라 하고, B 물체의 속도를
Figure pat00004
라고 할 때, A가 측정한 B의 속도(A에 대한 B의 상대속도)는
Figure pat00005
이다.
본 발명에서 필요로 하는 상대 속도는 취득 차량을 기준으로 한 인지 대상 객체의 상대 속도이다. 예를 들어 50km/h로 주행 중인 차량에서 취득한 frame에 동일한 거리만큼 떨어진 두 개의 인지대상 차량이 있는데, 한대의 상대속도는 50 km/h이고 다른 한대의 상대속도는 -50km/h라면 전자의 차량은 취득차량보다 50km/h 빠르게 (100km/h 의 속도로) 주행중인 차량인 것이고, 후자의 차량은 50km/h 느린 (0km/h의 속도이므로 정지 중) 상태이다. 전자의 인지 객체는 다음 frame으로 넘어갈수록 멀어질 것이지만, 후자의 객체는 점점 가까워 질 것이다. 이 경우 두 객체를 같은 수준으로 취급한다면 이는 정확도가 떨어지는 데이터가 될 것이다. 따라서, 각 객체와의 상대속도가 측정이 가능하고, sensor fusion을 통해 그 데이터를 가지고 있다는 전제에서는 위와 같은 상대 속도도 평가에 고려대상이 된다.
본 발명의 실시예에 따른 검증 데이터 출력부(140)는 오브젝트의 타입, 오브젝트의 거리, 및 오브젝트의 속도 정보 중 적어도 하나에 가중치 정보를 부여하여 검증 데이터를 산출할 수 있다.
1) 구체적으로, 오브젝트의 타입을 반영한 가중치는 아래와 같이 기술된다.
특정 frame에서 거리 등 나머지 조건이 동일한 상황에서 서로 다른 type의 두 객체가 있을 때, 두 객체 사이에 어느 정도의 중요도 차이를 줄 것인가가 Type별 가중치를 결정하는 방법이다. 인지 객체 속성에 대한 표준상의 Object 분류에 따라 Type 별 가중치를 도 7a와 같이 부여하였다. 본 발명에서는, 객체 속성 중 보행자와 차량만을 중심으로 중요도를 선정하였는데, Type별로 차이가 아주 크지 않게 설정한 것은 가중치를 부여할 다른 지표들과의 계산을 거쳤을 때 점수 역전 현상 등을 방지 하기 위한 것이다.
차량보다 보행자가 중요도가 높은 이유는 차 대 사람의 교통사고에서의 보행자가 차 대 차의 교통사고의 탑승자보다 높은 사망률을 보이기 때문이다. 동일 조건 두 객체의 Type 차이로 인한 가중치는 이처럼 두 객체 사이에 중요도에 따른 차이를 주는 정도에서 가중치를 선정할 수 있다.
2) 구체적으로, 오브젝트의 거리를 반영한 가중치는 아래와 같이 기술된다.
인지 SW 평가 시에 고려하는 거리는 취득 차량과 인지대상 객체간의 거리이다. 객체와 취득차량 사이의 거리가 가까울수록 주행상황에서 해당 객체와의 사고발생 가능성이 더 높아지기 때문에 취득 영상의 프레임에서 상대적으로 더 가까운 거리에 있는 객체는 가중치를 부여한다. 본 발명에서 인지 대상 객체의 최장거리는 100m로 설정하였으므로 100m 안쪽에서 20m 세분하여 가중치 구간을 만들어 더 가까울수록 가중치가 높아지게 설정하였다(도 7b). 각 구간 내에서의 가중치는 Interpolation하여 반영한다.
거리 별 가중치는 인지 대상 객체의 거리가 가까울수록 높은 가중치를 부여함으로써 사고 유발 가능성이 높은 객체는 더 엄격하게 평가하겠다는 평가 방식에는 적합하긴 하나 자율 주행 상황임을 감안했을 때 차량의 속도 정보까지 고려해야 할 필요도 있다. 따라서 본 발명에서는 이러한 거리 지표에 속도 지표를 합친 TTC(time to collision)을 평가 지표로 활용한다.
3) 구체적으로, 오브젝트의 속도 정보를 반영한 가중치는 아래와 같이 기술된다.
TTC(Time to collision)란 차량간 충돌까지 남은 시간을 뜻하는데, 현재는 FCW (Forward Collision Warning 전방추돌경보)나 AEB(Autonomous Emergency Braking 자동긴급제동) 등의 기능에서 사용되고 있다. TTC는 상대 거리를 상대 속도로 나누어 계산한다. 전방 차량과의 거리를 D, 차량 주행속도를 Vr, 전방 차량의 속도를 Vf라 하면 추돌 예상 시간은 T = D / (Vr - Vf) 이 된다. FCW나 AEB에 쓰이는 TTC는 주행차량과 동일한 차선에 있는 차량을 대상으로 하므로 상대속도와 상대거리 그리고 TTC의 계산이 위와 같이 간단하게 이루어진다. 그러나 본 발명에서는 전방 추돌뿐만 아니라 주변 차선에서의 변경이나 주차장에서의 횡단 차량, 교차로에서의 충돌의 경우에도 적용할 수 있도록 범위가 다른 지표가 필요하다. 따라서 동일 차선이 아니더라도 사용할 수 있도록 TTC를 2차원 공간상에서 사용 가능하도록 확장할 수 있다.
도 7c는 상대거리와 상대속도의 개념도를 나타낸다.
도 7c에 도시한 바와 같이, 동일 차선이 아닌 위치에 있는 상대 차량(혹은 객체)에 대해서 상대 거리와 상대 속도를 측정하여 TTC를 계산할 필요가 있다.
도 7c를 기준으로 상대거리와 상대 속도는 다음과 같이 나타낼 수 있다.
Figure pat00006
위 상대 거리와 상대 속도를 이용한 TTC의 계산식은 아래와 같다.
Figure pat00007
Sensor fusion을 통해 취득된 데이터에서 필요한 위 값들을 산출해내고, 인지 대상 객체가 차량이거나 보행자 등 Moving Object일 경우에는 취득차량과 인지 대상 객체와의 TTC까지 계산하여 기준 데이터에 포함한다. 즉, 기준 데이터 JSON에는 인지 대상 객체의 type, 좌표 만이 아니라 최소한 상대 거리, 속도 (혹은 TTC)가 포함되도록 구현할 수 있다.
비교 결과 평가 시에 인지 대상 객체가 정인식인지 미인식인지에 따라 성능 측정을 할 때, 이 TTC를 반영할 수 있다. 가령 인지 대상 객체가 이동 중인 자동차일 경우, 취득 차량과 해당 차량간의 TTC가 얼마인지에 따라 해당 객체의 중요도가 달라지게 되고, 평가 시에 가중치가 다르게 부여되는 방식이다. 본 발명에서 최대 인식거리로 정한 100m안에 인지 대상 객체 (차량)이 있을 때, 상대 속도에 따른 TTC 계산은 도 7d와 같다.
상대 속도가 100km/h 라는 것은 취득 차량이 고속도로 최고 속도 100km/h로 주행하고 있을 때, 상대 차량이 정지해있는 경우에 해당 차량과의 상대속도는 100km/h (27.78m/s)가 되고, 이 경우 TTC는 두 차량간의 거리에서 상대속도를 나누어서 계산할 수 있다. 같은 방식으로 일반도로에서 나올 수 있는 최대 상대속도인 60km/h(16.67m/s)로도 TTC를 계산 할 수 있다.
위와 같은 방식으로 계산된 TTC를 특정 조건에 따라 경계를 나누어서 가중치를 도 7e와 같이 부여하였다. 맨 우측의 가중치가 현재 시뮬레이션 툴에 적용한 방식이고 지속적인 테스트를 통해 최종 값은 변경 될 수 있다.
TTC가 0s 이하인 것은 이미 충돌한 상황이므로 별도의 가중치가 없다. 각각의 경계를 1.6초, 3.6초, 6.0초로 하여 TTC가 해당 극간에 포함되어 있으면 오른쪽과 같은 가중치를 부여한다. 문턱 값은 1.6초 3.6초 6초로 설정된 것은 TTC에 따른 위험 발생률에 따른 것이다.
그 다음 3.6초와 6.0초의 경계는 앞에서 설명한 것처럼 고속도로 최고속도, 일반도로 최고속도기준인 100km/h(27.78m/s)와 60km/h(16.67m/s)로 상대속도가 측정될 때, 최대 거리인 100m를 기준으로 계산되는 TTC를 기준으로 삼았다. TTC가 6.0초를 넘는 경우에는 자율주행 상황에서 사실상 충돌 가능성이 낮은 것으로 보아 그 가중치를 가장 낮게 결정하였다. 각각의 구간에 TTC가 해당할 때마다 해당 object의 정인식 여부는 가중치를 반영하여 평가하게 된다.
또한 각각의 구간 내에서의 가중치는 Interpolation하여 같은 구간 내라 하더라도 TTC 정도에 따라 가중치가 차등하여 적용될 수 있도록 한다.
만약 Sensor Fusion을 통해 취득되는 데이터 중 상대 속도 부분이 정확히 산출 되지 않아 TTC 계산이 어렵게 되면, 거리 가중치를 대신 반영하여 평가할 수도 있다.
본 발명의 실시예에 따른 검증 데이터 출력부(140)는 오브젝트의 타입, 오브젝트의 거리, 및 오브젝트의 속도 정보 중 적어도 하나에 가중치 정보를 부여하여 검증 데이터를 산출할 수 있음은 전술한 바와 같다. 이하에서는, 가중치를 부여하여 검증 데이터를 산출하는 계산 예를 기술한다.
인지 대상 객체의 Type, TTC 가중치가 적용된 경우 객체 인지 점수는 아래와 같다.
수학식 1: 객체 인지 점수 = 1 * (type 가중치) * (TTC 가중치)
객체 인지 점수는 객체 인지가 정인식이면 +되고, 미인식이면 0점이 된다.
가령 ① 특정 프레임에 3개의 인지 대상 객체(차량, TTC가중치는 1로 가정)가 있는데, 2개는 정인식이고 1개가 미인식이면, 객체당 점수는 1*2(Type: 차량)*1(TTC) = 2 점이 되고, 해당 프레임의 점수는 4/6점(분자에는 인식된 객체의 인지 점수만 반영함, 미인식된 객체의 인지 점수는 0으로 산정)(분모에는 미인식된 객체의 인지 점수까지 반영함, 미인식된 객체라도 1*2*1로 계산), 이를 100점 만점으로 환산해서 66.67 점이 된다.
② ①의 예에서 TTC가중치가 다르면(미인식 객체의 TTC만 1.5초인 것으로 가정) 미인식 객체의 점수는 1*2(type: 차량)*30(TTC가중치) = 60이 되고 해당 프레임의 점수는 4/64, 이를 100점 만점으로 환산해서 6.25점이 된다. 이 예시의 상황은 TTC가 1.6초 이하인 고위험 객체의 인식에는 실패했으나 덜 중요한 객체 2개는 인지가 된 상태이기 때문에 가중치를 적용하여 낮은 성능평가가 되도록 한 것이다.
③ ②의 예에서 미인식 객체(TTC 1.5초)가 Type이 사람일 경우에 점수는 1*3(type: 사람)*30(TTC가중치) = 90이 되고 해당 프레임의 점수는 4/94, 환산해서 100점 만점에 4.25점이 된다. 똑같이 고위험 객체이더라도 Type이 사람일 경우엔 더 낮은 성능평가가 되도록 한 것이다.
객체 미인식의 경우에 위와 같이 성능평가가 가능하나 위의 객체 인지 점수에 가중치를 주는 방식으로는 오인식을 처리하지 못하는 문제가 있다. 기준 데이터의 객체를 기준으로 가중치를 반영한 객체 별 점수를 산정하고, 해당 객체를 인지 못할 경우 점수를 깎아나가는 방식이기 때문에 기준 데이터에 존재하지 않는 객체를 오인식해서 결과 데이터에 출력했을 경우에 성능 측정 방식이 추가로 필요하다. 오인식을 성능 평가하기 위해서 위 계산으로 나온 점수에 오인식률을 반영하는 방식을 이용할 수 있다. 결과 데이터에 포함된 출력 결과의 총수 대비 오인식 개수를 오인식률이라 하고 이를 수식에 반영할 때는 (1-오인식률)을 곱한다. 예를 들어 ④ 특정 프레임에 5개의 객체가 있는데 결과 데이터가 6개의 인지결과를 출력했고, 그 중에 4개가 정인식, 1개가 미인식일 경우, 가중치를 통해 계산한 객체 인지 점수에 (1-오인식률)인 5/6을 곱하는 방식이다. 미인식된 한 개의 객체에 대한 점수는 위 ①②③과 같은 방식으로 계산 될 것이고, 1개의 오인식에 대한 성능 평가 결과는 오인식률을 반영한 결과에 따라 더 낮아지게 될 것이다. 결과 데이터
위와 같은 방식으로 frame 단위의 성능 평가 결과가 나오면, 이를 영상 단위에서는 이 프레임 점수들의 평균치로 성능 측정 한다. 최종적으로는 인지 알고리즘의 성능을 100점 만점 단위로 측정할 수 있다.
도 8a 및 도 8b는 전술한 기준 데이터와 결과 데이터의 비교를 통한 오브젝트 정인식, 미인식, 오인식 정보에 객체 인지 점수를 반영한 결과로 프레임 단위의 성능을 평가하기 위한 추가적인 예시를 나타낸다.
참고로, 정답지는 기준 데이터를 의미하고 결과지는 결과 데이터를 의미한다.
도 8a는 정답지에 대한 예시이다. 각 정답지 마다 3개의 객체를 가지고 있는 것으로 가정하고, 각 객체의 Type이 차량 혹은 사람으로 다른 경우와 TTC가 각각 다른 경우를 설정하였다. 이에 따라 각각의 결과지 별로 만점이 다르게 산정된다.
도 8b는 위 정답지에 대해 알고리즘이 인지한 결과에 따라 평가 점수가 어떻게 다른지에 대한 내용이다. &는 IoU 수치를 나타내고 0.5 이상이어야 정인식이다.
결과지 1은 3개의 객체에 대해 3개의 결과를 출력했고, 모두 정인식이므로 인지 점수가 만점이 된다.
결과지 2는 3개의 객체에 대해 3개의 결과를 출력했고, 그 중 A객체 대한 인식이 미인식이므로 해당 객체 점수를 감하여 인지 점수를 산정한다.
결과지 3은 3개의 객체에 대해 4개의 결과를 출력했고, 3개의 객체에 대해서는 정인식이지만 하나의 오인식이 포함되어 있다. 이때 A객체와 IoU가 계산된 결과는 X, W 두 개인데, X의 IoU가 W보다 높으므로 X가 A객체를 정인식한 것이고 W는 없는 객체에 대한 결과를 출력한 것이 되어 W가 오인식이 된다. 한 개의 객체에 두 개의 결과가 IoU를 출력하면 더 높은 IoU를 가지는 결과가 해당 객체를 인식한 것으로 본다. 따라서 정인식으로 계산된 점수에 (1-오인식률)인 3/4를 곱하여 인지 점수를 산정한다.
결과지 4는 3개의 객체에 대해 5개의 결과를 출력했고, 2개의 객체는 정인식, A객체는 미인식이고, 2개의 오인식이 포함되어 있다. X, W는 A객체와의 IoU가 계산되지만 둘 다 정인식의 Threshold인 0.5를 넘기지 못했으므로 A는 미인식이 된다. 이때 IoU 수치가 더 높은 X가 A에 대한 미인식 결과이고 W는 오인식이 된다. B객체에 대해서는 Y와 V 두 결과가 IoU가 계산되고 0.5를 넘었지만 더 높은 수치를 보이는 Y가 B에 대한 정인식 결과가 되고, V는 다른 객체와의 IoU가 계산되지 않으므로 오인식이 된다. 따라서 모두 정인식이었을 경우의 만점에서 A의 미인식 객체 점수를 뺀 점수에 (1-오인식률)인 3/5를 곱하여 인지 점수를 산정한다.
이상 설명된 실시 형태는 다양한 컴퓨터 구성요소를 통하여 실행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터로 판독가능한 기록매체에 기록될 수 있다. 상기 컴퓨터로 판독가능한 기록매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다.
상기 컴퓨터로 판독가능한 기록매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다.
컴퓨터로 판독가능한 기록매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 실행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 실행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
본 명세서의 양상들은 전체적으로 하드웨어, 전체적으로 소프트웨어 (펌웨어, 상주 소프트웨어, 마이크로 코드 등을 포함 함) 또는 컴퓨터 판독 가능 프로그램 코드가 구현 된 하나 이상의 컴퓨터 판독 가능 매체에 구현 된 컴퓨터 프로그램 제품의 형태를 취할 수 있다.
이상에서 실시예들에 설명된 특징, 구조, 효과 등은 본 발명의 하나의 실시예에 포함되며, 반드시 하나의 실시예에만 한정되는 것은 아니다. 나아가, 각 실시예에서 예시된 특징, 구조, 효과 등은 실시예들이 속하는 분야의 통상의 지식을 가지는 자에 의해 다른 실시예들에 대해서도 조합 또는 변형되어 실시 가능하다. 따라서 이러한 조합과 변형에 관계된 내용들은 본 발명의 범위에 포함되는 것으로 해석되어야 할 것이다.
또한, 이상에서 실시예를 중심으로 설명하였으나 이는 단지 예시일 뿐 본 발명을 한정하는 것이 아니며, 본 발명이 속하는 분야의 통상의 지식을 가진 자라면 본 실시예의 본질적인 특성을 벗어나지 않는 범위에서 이상에 예시되지 않은 여러 가지의 변형과 응용이 가능함을 알 수 있을 것이다. 예를 들어, 실시예에 구체적으로 나타난 각 구성 요소는 변형하여 실시할 수 있는 것이다. 그리고 이러한 변형과 응용에 관계된 차이점들은 첨부된 청구 범위에서 규정하는 본 발명의 범위에 포함되는 것으로 해석되어야 할 것이다.

Claims (18)

  1. 차량의 자율 주행에 관련된 원본 데이터를 취득하는 단계;
    상기 원본 데이터가 소정의 데이터 형식에 적합하도록 가공된 기준 데이터를 취득하는 단계;
    상기 원본 데이터를 소정의 테스트 프로그램을 통해 실행시켜 결과 데이터를 생성하는 단계; 및
    상기 기준 데이터와 상기 결과 데이터를 비교한 검증 데이터를 출력하는 단계;를 포함하는,
    자율 주행 상황 인지 프로그램 성능 테스트 방법.
  2. 제 1항에 있어서,
    상기 검증 데이터 출력 단계는,
    상기 기준 데이터에 포함되는 오브젝트 인식 여부, 상기 오브젝트의 타입, 상기 오브젝트의 거리, 및 상기 오브젝트의 속도 정보 중 적어도 하나에 기초하여 수행되는,
    자율 주행 상황 인지 프로그램 성능 테스트 방법.
  3. 제 2항에 있어서,
    상기 검증 데이터는,
    상기 오브젝트의 타입, 상기 오브젝트의 거리, 및 상기 오브젝트의 속도 정보 중 적어도 하나에 가중치 정보를 부여하여 산출되는,
    자율 주행 상황 인지 프로그램 성능 테스트 방법.
  4. 제 3항에 있어서,
    상기 검증 데이터 출력은 상기 오브젝트가 포함되는 프레임 단위로 수행되고,
    상기 프레임 단위로 출력된 검증 데이터들의 평균치로 상기 소정의 테스트 프로그램의 성능을 측정하는 단계;를 더 포함하는,
    자율 주행 상황 인지 프로그램 성능 테스트 방법.
  5. 제 2항에 있어서,
    상기 기준 데이터에 포함되는 상기 오브젝트 인식 여부는, 상기 기준 데이터에 포함되는 상기 오브젝트와 상기 결과 데이터에 포함되는 오브젝트가 일치한 경우의 정인식, 상기 기준 데이터에 포함되지 않는 오브젝트 정보가 상기 결과 데이터에 포함되는 오인식, 및 상기 기준 데이터에 포함되는 상기 오브젝트 정보가 상기 결과 데이터에 포함되지 않은 미인식 중 어느 하나에 해당하는,
    자율 주행 상황 인지 프로그램 성능 테스트 방법.
  6. 제 5항에 있어서,
    상기 기준 데이터에 포함되는 상기 오브젝트의 타입과 상기 결과 데이터에 포함되는 상기 오브젝트의 타입이 일치하고, 상기 기준 데이터에 포함되는 상기 오브젝트의 좌표 정보와 상기 결과 데이터에 포함되는 상기 오브젝트의 좌표 정보 중 서로 일치하는 영역이 소정의 임계치 이상인 경우 상기 정인식으로 판별되는,
    자율 주행 상황 인지 프로그램 성능 테스트 방법.
  7. 제 1항에 있어서,
    상기 기준 데이터는 상기 오브젝트를 라벨링하여 상기 소정의 데이터 형식에 적합하도록 주석을 부가하는 과정을 통해 생성되는,
    자율 주행 상황 인지 프로그램 성능 테스트 방법.
  8. 제 7항에 있어서,
    상기 소정의 데이터 형식은 JSON(JavaScript Object Notation) 형식인,
    자율 주행 상황 인지 프로그램 성능 테스트 방법.
  9. 제 1항에 있어서,
    상기 원본 데이터는 상기 차량의 주변이 촬영되어 생성된 영상 데이터와 상기 차량의 센서로부터 생성된 센싱 데이터가 융합되어 생성된 것인,
    자율 주행 상황 인지 프로그램 성능 테스트 방법.
  10. 차량의 자율 주행 상황에 관련된 원본 데이터를 취득하는 원본 데이터 취득부;
    상기 원본 데이터가 소정의 데이터 형식에 적합하도록 가공된 기준 데이터를 취득하는 기준 데이터 취득부;
    상기 원본 데이터를 소정의 테스트 프로그램을 통해 실행시켜 결과 데이터를 생성하는 결과 데이터 생성부; 및
    상기 기준 데이터와 상기 결과 데이터를 비교한 검증 데이터를 출력하는 검증 결과 출력부;를 포함하는,
    자율 주행 상황 인지 프로그램 성능 테스트 장치.
  11. 제 10항에 있어서,
    상기 검증 결과 출력부는,
    상기 기준 데이터에 포함되는 오브젝트 인식 여부, 상기 오브젝트의 타입, 상기 오브젝트의 거리, 및 상기 오브젝트의 속도 정보 중 적어도 하나에 기초하여 상기 검증 데이터를 출력하는,
    자율 주행 상황 인지 프로그램 성능 테스트 장치.
  12. 제 11항에 있어서,
    상기 검증 결과 출력부는,
    상기 오브젝트의 타입, 상기 오브젝트의 거리, 및 상기 오브젝트의 속도 정보 중 적어도 하나에 가중치 정보를 부여하여 상기 검증 데이터를 산출하는,
    자율 주행 상황 인지 프로그램 성능 테스트 장치.
  13. 제 12항에 있어서,
    상기 검증 결과 출력부는 상기 검증 데이터 출력을 상기 오브젝트가 포함되는 프레임 단위로 수행하고, 상기 프레임 단위로 출력된 검증 데이터들의 평균치로 상기 소정의 테스트 프로그램의 성능을 측정하는,
    자율 주행 상황 인지 프로그램 성능 테스트 장치.
  14. 제 11항에 있어서,
    상기 기준 데이터에 포함되는 상기 오브젝트 인식 여부는, 상기 기준 데이터에 포함되는 상기 오브젝트와 상기 결과 데이터에 포함되는 오브젝트가 일치한 경우의 정인식, 상기 기준 데이터에 포함되지 않는 오브젝트 정보가 상기 결과 데이터에 포함되는 오인식, 및 상기 기준 데이터에 포함되는 상기 오브젝트 정보가 상기 결과 데이터에 포함되지 않은 미인식 중 어느 하나에 해당하는,
    자율 주행 상황 인지 프로그램 성능 테스트 장치.
  15. 제 14항에 있어서,
    상기 검증 결과 출력부는,
    상기 기준 데이터에 포함되는 상기 오브젝트의 타입과 상기 결과 데이터에 포함되는 상기 오브젝트의 타입이 일치하고, 상기 기준 데이터에 포함되는 상기 오브젝트의 좌표 정보와 상기 결과 데이터에 포함되는 상기 오브젝트의 좌표 정보 중 서로 일치하는 영역이 소정의 임계치 이상인 경우 상기 정인식으로 판별하는,
    자율 주행 상황 인지 프로그램 성능 테스트 장치.
  16. 제 10항에 있어서,
    상기 기준 데이터는 상기 오브젝트를 라벨링하여 상기 소정의 데이터 형식에 적합하도록 주석을 부가하는 과정을 통해 생성되는,
    자율 주행 상황 인지 프로그램 성능 테스트 장치.
  17. 제 16항에 있어서,
    상기 소정의 데이터 형식은 JSON(JavaScript Object Notation) 형식인,
    자율 주행 상황 인지 프로그램 성능 테스트 장치.
  18. 제 10항에 있어서,
    상기 원본 데이터는 상기 차량의 주변이 촬영되어 생성된 영상 데이터와 상기 차량의 센서로부터 생성된 센싱 데이터가 융합되어 생성된 것인,
    자율 주행 상황 인지 프로그램 성능 테스트 장치.
KR1020200023372A 2020-02-26 2020-02-26 자율 주행 상황 인지 프로그램 성능 테스트 방법 및 동일 방법을 수행하기 위한 자율 주행 상황 인지 프로그램 성능 테스트 장치 KR102337034B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200023372A KR102337034B1 (ko) 2020-02-26 2020-02-26 자율 주행 상황 인지 프로그램 성능 테스트 방법 및 동일 방법을 수행하기 위한 자율 주행 상황 인지 프로그램 성능 테스트 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200023372A KR102337034B1 (ko) 2020-02-26 2020-02-26 자율 주행 상황 인지 프로그램 성능 테스트 방법 및 동일 방법을 수행하기 위한 자율 주행 상황 인지 프로그램 성능 테스트 장치

Publications (2)

Publication Number Publication Date
KR20210108600A true KR20210108600A (ko) 2021-09-03
KR102337034B1 KR102337034B1 (ko) 2021-12-09

Family

ID=77784958

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200023372A KR102337034B1 (ko) 2020-02-26 2020-02-26 자율 주행 상황 인지 프로그램 성능 테스트 방법 및 동일 방법을 수행하기 위한 자율 주행 상황 인지 프로그램 성능 테스트 장치

Country Status (1)

Country Link
KR (1) KR102337034B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230055168A (ko) * 2021-10-18 2023-04-25 한국건설기술연구원 라이다 성능 평가 시스템 및 방법
KR20230079855A (ko) * 2021-11-29 2023-06-07 주식회사 와이즈오토모티브 자율 주행 차량의 장애물 인지 성능 평가 장치 및 방법

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101464344B1 (ko) * 2014-03-25 2014-11-25 (주)그린아이티코리아 감시 영상의 정상 상태 학습을 통한 이상 상태 감지 방법과 이를 적용한 감시 카메라 및 영상 관리 시스템
KR20180067199A (ko) * 2016-12-12 2018-06-20 현대모비스 주식회사 객체 인식 장치 및 방법
KR101943422B1 (ko) * 2018-05-11 2019-01-29 윤여표 자율주행차량 안전성 검사시스템 및 안전성 검사방법
KR102031503B1 (ko) * 2018-11-23 2019-11-08 유니셈(주) 다중 객체 검출 시스템 및 방법
KR102065693B1 (ko) * 2018-10-26 2020-01-13 인하대학교 산학협력단 자율주행 차량을 위한 기계학습 데이터 표준화 방법 및 시스템

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101464344B1 (ko) * 2014-03-25 2014-11-25 (주)그린아이티코리아 감시 영상의 정상 상태 학습을 통한 이상 상태 감지 방법과 이를 적용한 감시 카메라 및 영상 관리 시스템
KR20180067199A (ko) * 2016-12-12 2018-06-20 현대모비스 주식회사 객체 인식 장치 및 방법
KR101943422B1 (ko) * 2018-05-11 2019-01-29 윤여표 자율주행차량 안전성 검사시스템 및 안전성 검사방법
KR102065693B1 (ko) * 2018-10-26 2020-01-13 인하대학교 산학협력단 자율주행 차량을 위한 기계학습 데이터 표준화 방법 및 시스템
KR102031503B1 (ko) * 2018-11-23 2019-11-08 유니셈(주) 다중 객체 검출 시스템 및 방법

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230055168A (ko) * 2021-10-18 2023-04-25 한국건설기술연구원 라이다 성능 평가 시스템 및 방법
KR20230079855A (ko) * 2021-11-29 2023-06-07 주식회사 와이즈오토모티브 자율 주행 차량의 장애물 인지 성능 평가 장치 및 방법

Also Published As

Publication number Publication date
KR102337034B1 (ko) 2021-12-09

Similar Documents

Publication Publication Date Title
JP6714513B2 (ja) 車両のナビゲーションモジュールに対象物の存在を知らせる車載装置
US9524643B2 (en) Orientation sensitive traffic collision warning system
US10032085B2 (en) Method and system to identify traffic lights by an autonomous vehicle
KR100854766B1 (ko) 거리 센서를 이용한 주차 공간 검출 방법
JP5410730B2 (ja) 自動車の外界認識装置
JP6747269B2 (ja) 物体認識装置
US10336252B2 (en) Long term driving danger prediction system
JP6450294B2 (ja) 物体検出装置、物体検出方法、及びプログラム
US8885889B2 (en) Parking assist apparatus and parking assist method and parking assist system using the same
US10712445B2 (en) Method for detecting at least one parking space for a vehicle
JP5178276B2 (ja) 画像認識装置
US11238731B2 (en) Method and device for detecting the passage of a motor vehicle through a road sign gantry
KR101857554B1 (ko) 차량에 대한 외부 데이터 침입 탐지 장치 및 방법
US10964137B2 (en) Risk information collection device mounted on a vehicle
KR102337034B1 (ko) 자율 주행 상황 인지 프로그램 성능 테스트 방법 및 동일 방법을 수행하기 위한 자율 주행 상황 인지 프로그램 성능 테스트 장치
JP2010132056A (ja) 検知装置、検知方法および車両制御装置
KR102557620B1 (ko) 객체를 분류하는 레이더 장치 및 방법
CN108021899A (zh) 基于双目相机的车载智能前车防撞预警方法
JP6263453B2 (ja) 運動量推定装置及びプログラム
JP2022532941A (ja) 車両信号を処理して挙動危険性の測度を計算するための装置及び方法
JP5321640B2 (ja) 車両用道路形状認識方法及び装置、記録媒体
US20050004719A1 (en) Device and method for determining the position of objects in the surroundings of a motor vehicle
CN110095776B (zh) 用于确定对象的存在和/或特性的方法和周围环境识别设备
CN113591673A (zh) 用于识别交通标志的方法和设备
US20220156972A1 (en) Long range distance estimation using reference objects

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right