KR20230104592A - 센서 데이터의 주석을 다는 방법 및 시스템 - Google Patents
센서 데이터의 주석을 다는 방법 및 시스템 Download PDFInfo
- Publication number
- KR20230104592A KR20230104592A KR1020237010712A KR20237010712A KR20230104592A KR 20230104592 A KR20230104592 A KR 20230104592A KR 1020237010712 A KR1020237010712 A KR 1020237010712A KR 20237010712 A KR20237010712 A KR 20237010712A KR 20230104592 A KR20230104592 A KR 20230104592A
- Authority
- KR
- South Korea
- Prior art keywords
- objects
- sensor data
- neural network
- confidence level
- architecture
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 47
- 238000013528 artificial neural network Methods 0.000 claims abstract description 37
- 230000002596 correlated effect Effects 0.000 claims description 16
- 238000005259 measurement Methods 0.000 claims description 10
- 230000008569 process Effects 0.000 claims description 6
- 230000009467 reduction Effects 0.000 claims description 5
- 230000002123 temporal effect Effects 0.000 description 14
- 238000012549 training Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 238000013213 extrapolation Methods 0.000 description 6
- 238000013459 approach Methods 0.000 description 5
- 238000001514 detection method Methods 0.000 description 5
- 230000008030 elimination Effects 0.000 description 5
- 238000003379 elimination reaction Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 238000003908 quality control method Methods 0.000 description 5
- 238000012937 correction Methods 0.000 description 4
- 238000011156 evaluation Methods 0.000 description 4
- 230000001133 acceleration Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000000605 extraction Methods 0.000 description 3
- 238000009499 grossing Methods 0.000 description 3
- 238000012805 post-processing Methods 0.000 description 3
- 238000012552 review Methods 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000000875 corresponding effect Effects 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 230000004927 fusion Effects 0.000 description 2
- 238000000275 quality assurance Methods 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000010200 validation analysis Methods 0.000 description 2
- 241001465754 Metazoa Species 0.000 description 1
- 238000000342 Monte Carlo simulation Methods 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000002730 additional effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000003542 behavioural effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000000153 supplemental effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
- G06V20/58—Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S17/00—Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
- G01S17/88—Lidar systems specially adapted for specific applications
- G01S17/89—Lidar systems specially adapted for specific applications for mapping or imaging
- G01S17/894—3D imaging with simultaneous measurement of time-of-flight at a 2D array of receiver pixels, e.g. time-of-flight cameras or flash lidar
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S17/00—Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
- G01S17/88—Lidar systems specially adapted for specific applications
- G01S17/93—Lidar systems specially adapted for specific applications for anti-collision purposes
- G01S17/931—Lidar systems specially adapted for specific applications for anti-collision purposes of land vehicles
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/10—Image acquisition
- G06V10/12—Details of acquisition arrangements; Constructional details thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/80—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
- G06V10/803—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level of input or preprocessed data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
- G06V20/58—Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
- G06V20/584—Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads of vehicle lights or traffic lights
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Remote Sensing (AREA)
- Radar, Positioning & Navigation (AREA)
- Electromagnetism (AREA)
- Computer Networks & Wireless Communication (AREA)
- Image Analysis (AREA)
- Traffic Control Systems (AREA)
Abstract
본 발명은 주행 시나리오 센서 데이터에 주석을 첨부하기 위한 컴퓨터 구현 방법에 관한 것으로, 원시 센서 데이터를 수신하는 단계 - 원시 센서 데이터는 복수의 연속적인 LIDAR 포인트 클라우드들 및/또는 복수의 연속적인 카메라 이미지들을 포함함 -, 하나 이상의 신경 네트워크들을 사용하여 카메라 데이터의 각각의 이미지 및/또는 각각의 포인트 클라우드에서 객체들을 인식하는 단계, 연속적인 이미지들 및/또는 포인트 클라우드들 내의 객체들을 상관시키는 단계, 타당성 기준들에 기초하여 잘못된 긍정 결과들을 제거하는 단계, 및 주행 시나리오의 주석이 첨부된 센서 데이터를 내보내는 단계를 포함한다.
Description
본 발명은 주행 시나리오 센서 데이터에 자동으로 주석을 달기 위한 컴퓨터-구현 방법, 컴퓨터-판독가능 데이터 캐리어 및 컴퓨터 시스템에 관한 것이다.
자율주행은 일상 교통에서 유례없는 수준의 편안함과 안전성을 약속한다. 그러나, 다양한 회사들에 의한 막대한 투자에도 불구하고, 기존의 접근법들은 제한된 조건들에서만 이용되거나 진정한 자율적 거동의 일부만을 제공할 수 있다. 이러한 이유 중 하나는 충분한 수의 다양한 주행 시나리오의 부족이다. 자율 주행 기능들의 트레이닝을 위해 주행 시나리오들로부터 주석이 달린 센서 데이터가 요구된다. 데이터 강화(data enrichment)라고도 부르는 데이터에 주석을 다는 것에 대한 일반적인 접근 방식은 많은 수의 작업자를 사용하여 각 이미지에 수동으로 주석을 다는 것이다. 그 결과, 종래의 데이터 강화 방법들은 매우 시간-소모적이고, 오류가 발생하기 쉬우며, 따라서 매우 비싸다.
키프레임 주석 및 내삽/외삽(interplolation/extrapolation)을 포함하는 반-자동 접근법은 일부-제한된-개선을 제공한다. 이는 도 2에 개략적으로 도시되어 있고, 전파/외삽을 사용하여 수동으로 주석이 달린 다수의 이미지들을 키프레임들으로서 선택하는 것을 포함한다. 키프레임들을 수동으로 편집한 후 중간 프레임(intervening frame)들에 대한 주석들이 내삽에 의해 생성된다. 따라서, 키프레임들 상의 객체들의 인식(recognition)은 외삽을 사용하여 관련 객체들을 계속 링크하는 사람들에 의해 수행된다. 그런 다음 내삽 프로세스는 이 정보 - 객체 인식 및 링크 -를 사용하여 키프레임들 사이의 모든 프레임들에 있는 동일한 객체들에 대한 주석들을 생성한다. 이론적으로 키프레임들 사이의 거리를 증가시키면 더 많은 주석들이 자동으로 만들어지므로 이 메커니즘의 효율성을 높일 수 있다. 그러나 키프레임들 사이의 간격이 넓을수록 필요한 수동 보정들이 크게 늘어난다. 예를 들어, 키프레임들이 아닌 곳에서만 간략하게 볼 수 있는 객체들은 수동 개입에 의해 커버되어야만 한다. 이러한 자동화 접근 방식이 빠르게 한계에 도달하는 시점이 바로 이 지점이다.
따라서, 중-소형 데이터 강화 프로젝트들만이 종래의 주석 전략들에 의해 풀이될 수 있는 반면, 자율 주행 기능들의 검증, 데이터의 선택, 또는 시나리오 라이브러리들의 생성과 같은 다른 더 높은-레벨 기능들은 막대한 수작업 및 연관된 비용으로 인해 달성될 수 없다.
따라서, 본 발명의 목적은 주행 시나리오 센서 데이터에 주석을 달기 위한 개선된 방법들을 제공하는 것이며; 사람의 개입에 대한 최소한의 필요성을 갖는 자동화된 주석다는 방법이 특히 바람직할 것이다.
상기 목적은 제1항에 따른 주행 시나리오 센서 데이터에 주석을 달기 위한 방법, 제11항에 따른 컴퓨터-판독가능 데이터 캐리어, 및 제12항에 따른 컴퓨터 시스템에 의해 달성된다. 유리한 개선들(refinements)이 종속항들의 대상이다.
따라서, 주행 시나리오 센서 데이터에 주석을 달기 위한 컴퓨터-구현 방법이 제공되며, 방법은 다음의,
원시 센서 데이터를 수신하는 단계 - 원시 센서 데이터는 복수의 연속적인 LIDAR 포인트 클라우드들 및/또는 복수의 연속적인 카메라 이미지들을 포함함 -,
하나 이상의 신경 네트워크들을 사용하여 카메라 데이터의 각각의 이미지 및/또는 각각의 포인트 클라우드에서 객체들을 인식하는 단계 - 바람직하게는 객체 클래스, 객체 위치, 객체 크기, 및/또는 객체 범위들이 인식된 객체, 특히 객체를 둘러싸는 바운딩 박스의 좌표들에 할당됨 -,
연속 이미지들 및/또는 포인트 클라우드들 내의 객체들을 상관시키는 단계,
타당성 기준(plausibility criteria)을 기초로 거짓 양성(false positive) 결과들을 제거(remove)하는 단계, 및
주행 시나리오의 주석이 달린 센서 데이터 내보내는 단계를 포함한다.
유리하게는, 객체 인식을 위한 신경 네트워크들은 높은 리콜(recall)을 위해 최적화될 수 있고, 따라서 실제로 존재하는 객체들의 가능한 높은 백분율을 인식하기 위해 최적화될 수 있는데, 이는 타당성 기준에 기초하여 잘못된 양성 결과들의 추후 제거가 수동 개입 없이 잘못된 인식들을 효과적으로 최소화하기 때문이다.
본 발명은 이미지의 개별 프레임들에서 객체들의 시간적(temporal) 상관관계로부터 도출된 시맨틱 정보가 일련의 단계들/기술들을 이용하여 효율적으로 활용될 수 있다는 발상에 기반한다. 이 경우, 일련의 이미지들에 대해서도 편리하게 추적되거나 서로 상관되는 객체들이 먼저 인식된다. 채용된 기술들은 객체가 잘못 인식된 거짓 양성 결과들을 제거하는 것, 갭들을 채우는 것, 회귀에 의해 객체 크기 및 위치를 최적화하는 것, 및 궤적들(trajectories)을 평활화(smooth)하는 것을 더 포함한다. 객체 크기 및/또는 위치의 회귀와 같은 일부 단계들/기술들은 선택적일 수 있다.
본 발명은 주석달기가 사전에 자동으로 발생하고 프로젝트를 성공적으로 완료하기 위해 유도 품질 제어만이 요구되는 패러다임 시프트를 도입한다. 원시 데이터에 자동 주석 달기를 자동으로 적용함으로써 고품질의 주석들이
- 훨씬 빠르게(프로젝트 리드 타임 향상),
- 더 낮은 비용으로(수작업이 덜 필요함), 및
- 일관된 품질로 생성될 수 있다. 이에 비해, 종래 기술의 상태에 따른 주석은 저-임금 국가의 노동에 의존하는데, 여기서 경험이 거의 없는 많은 사람들이 주석을 생성하는 작업을 한다. 이로 인해 일반적으로 상당한 품질 문제 및 광범위한 사후-처리 주기가 발생하여 프로젝트 속도가 더욱 느려지고 비용이 증가한다.
새로운 수준의 품질, 일관성, 및 자동화는 이전의 주석 방법들보다 훨씬 더 높은 처리율(throughput rates)을 갖는 본 발명의 방법으로 달성된다. 품질 보증만이 여전히 인간 노동에 의해 커버되어야 하며, 이는 상당한 비용 절감을 초래한다.
이렇게 하면 기존에 수동 주석 비용 때문에 실현할 수 없었던 규모의 프로젝트를 수행할 수 있을 뿐만 아니라, 이제 주석은 계산 시간의 문제일 뿐 더 이상 수작업이 아니기 때문에 데이터 선택과 같은 상위 수준의 기능을 훨씬 더 의미 있게 수행할 수 있다. 따라서, 모든 원시 데이터에 대해 주석을 미리 달고, 주석을 바탕으로 재미있는 장면들을 선정할 수 있다. 수동 품질 보증 노력은 후속 단계에서 관심 있는 데이터에만 적용될 수 있다.
본 발명의 바람직한 실시예에서, 원시 센서 데이터는 LIDAR 포인트 클라우드들을 포함하고, LIDAR 포인트 클라우드는 적어도 2개의 영역들로 분할되고, 제1 아키텍처의 신경 네트워크가 제1 영역에서 사용되고 제2 아키텍처의 신경 네트워크가 제2 영역에서 사용되며, 제1 아키텍처는 제2 아키텍처와 상이하다. 자동 선택은 요건들에 사용되는 신경 네트워크의 최적의 적응을 허용한다.
본 발명의 특히 바람직한 실시예에서, 제1 영역은 원시 센서 데이터를 캡처한 측정 차량의 바로 부근을 포함하는 반면, 제2 영역은 측정 차량으로부터 최소 거리를 가지며, 바람직하게는 객체 인식을 위한 신경 네트워크에 대해 중심점 기반 아키텍처가 제1 영역에서 사용되고, pointRCNN 기반 아키텍처가 제2 영역에서 사용된다. 종종 소수의 측정 점들만을 갖는 더 먼 객체들에 대해, PointRCNN 아키텍처를 갖는 신경 네트워크는 적절한 치수들을 갖는 바운딩 박스들의 생성을 가능하게 한다. 근거리 영역에서, 중심점 아키텍처의 신경 네트워크는 상이한 객체 클래스들 사이의 더 나은 구별을 가능하게 한다. 수동 보정 노력은 이러한 방식으로 최소화된다.
본 발명의 바람직한 실시예에서, 방법은 객체들이 상관되기 전에 중복들을 제거하는 단계를 추가로 포함하며, 여기서 중복들의 제거는 바람직하게는 신경 네트워크의 중첩 기준 및/또는 신뢰 수준에 기초한다. 두 바운딩 박스들이 0.98과 같은 임계값과 비교하여 결정될 수 있는 매우 큰 오버랩을 가지는 경우, 이들은 동일한 객체를 지칭한다. 또한, 신뢰도가 낮은 객체들만 폐기(discard)하도록 제공할 수도 있다. 신뢰 수준은 특별히 트레이닝된 네트워크를 사용하여 결정될 수 있거나 객체 인식에 사용되는 네트워크의 정보에 의해 근사화될 수 있다.
본 발명의 특히 바람직한 실시예에서, 인식된 객체들의 중복들의 제거는 이미지 및/또는 포인트 클라우드 내에서 수행되며, 여기서 2개의 중첩하는 객체들, 즉 제 1 신뢰 레벨로 인식된 제 1 객체 및 제 2 신뢰 레벨로 인식된 제 2 객체에 대해, 제 1 신뢰 레벨은 제 2 신뢰 레벨보다 높으며, 중첩, 특히 합집합에 대한 교집합이 미리 정의된 임계값을 초과하는지 여부를 체크하고, 이 경우 제 2 객체는 중복으로서 폐기된다. 원칙적으로 폐기할 중복의 임의적 선택도 있을 수 있다.
본 발명의 바람직한 실시예에서, 객체들을 상관시키는 단계는 연속 프레임들 내의 객체들, 따라서 이미지들 및/또는 포인트 클라우드들을 링크시키는 단계를 포함하며, 객체들이 동일한 객체 클래스에 속하고 중첩, 특히 합집합(union)에 대한 교집합이 미리 정의된 임계값을 초과하는 경우, 제 1 프레임 내의 객체는 제 2 프레임 내의 객체와 상관된다. LIDAR 센서, 특히 카메라는 초당 많은 수의 측정을 하기 때문에, 차량의 환경은 보통 점차적으로 변한다. 연속적인 프레임들 사이의 시간적 상관관계를 분석함으로써, 추가적인 정보가 획득될 수 있고 및/또는 객체 인식의 타당성이 체크될 수 있다.
본 발명의 특히 바람직한 실시예에서, 객체들을 상관시키는 단계는 가우시안 프로세스 감소(Gaussian process reduction) 또는 칼만 필터(Kalman filter)에 의해 후속 이미지 및/또는 후속 포인트 클라우드 상의 객체의 위치를 예측하는 단계 및/또는 연속적인 이미지들에서 객체들의 추적은 인자 그래프(factor graph)에 의해 발생하고, 따라서 확률 분포를 팩터링(factoring)하기 위한 이분 그래프(bipartite graph)를 포함한다. 언급된 방법들은 상관을 결정하기 위해 특히 편리하다.
특히 바람직하게는, 객체들의 상관시키는 단계 후에, 누락된 객체들의 보정이 발생하고, 여기서, 2개 초과의 연속적인 프레임들이 분석되고, 여기서, 제1 프레임 내의 객체가 제3 프레임 내의 객체와 상관되었지만, 중간 프레임 내에서 어떠한 객체도 검출되지 않은 경우, 객체는 이어서 제2 프레임에 삽입된다. 대안적으로 또는 추가적으로, 더 많은 수의 연속적인 프레임들이 고려되는 것이 또한 제공될 수 있으며, 이에 의해 또한 다수의 프레임들을 포함하는 그러한 갭들이 폐쇄될 수 있다. 누락된 객체는 특히 폐색들(occlussions) 또는 절단(truncation)으로 인해 발생할 수 있다. 추가적인 기준으로서, 해당 위치 또는 그 근방에서 다른 객체가 인식되었을 경우에만 하나 이상의 프레임으로부터의 간격이 폐쇄됨을 제공할 수 있다. 특히, 추가 객체의 바운딩 박스의 분석은 폐색을 위해 충분히 큰지 여부를 결정하는데 사용될 수 있다.
본 발명의 바람직한 실시예에서, 거짓 양성 결과들을 제거하기 위한 타당성 기준은 지면 위의 높이, 존재 지속기간, 및/또는 신경 네트워크의 신뢰 수준에 기초한다. 주어진 부분(fraction) 이상이 지구 표면 아래에서 검출되었다면, 객체는 타당해 보이지 않는(implausible) 것으로 폐기될 수 있다. 나아가, 객체가 지면 위에서 사전 정의된 임계 값 이상 검출되었다면, 객체는 타당해 보이지 않아 폐기될 수 있다. 타당성 기준 및/또는 임계값은 객체 클래스에 따라 선택될 수 있다. 또한, 매우 짧은 존속 시간(duration of existence)을 가지면, 그 객체가 타당해 보이지 않는 것으로 폐기될 수 있으므로, 특히, 그 객체는 한 프레임에서만 검출되고, 인접한 프레임에서는 검출되지 않는다. 가능한 폐색(occlusion)은 존재 기간을 분석함에 있어서 편리하게 고려될 수 있다. 대안적으로 또는 추가적으로, 타당해 보이지 않는 객체의 폐기는 신경 네트워크의 신뢰 수준에 따라 달라질 수 있으며, 특히 낮은 신뢰 수준을 갖는 객체만이 폐기될 수 있다. 신뢰 수준은 특별히 트레이닝된 네트워크를 사용하여 결정될 수 있거나 객체 인식에 사용되는 네트워크의 정보에 의해 근사화될 수 있다.
바람직한 실시예에서, 방법은 회귀에 의해 카메라 데이터의 각각의 이미지 및/또는 각각의 포인트 클라우드에서 객체 크기 및/또는 객체 위치를 최적화하는 단계를 더 포함한다. 객체 인식이 이미 발생했기 때문에, 평가는 바운딩 박스들의 특히 정확한 결정을 위해 최적화될 수 있다.
바람직한 실시예에서, 방법은 연속적인 이미지들 및/또는 포인트 클라우드들에서 상관된 객체들의 크기를 조화시키는 단계를 더 포함하며, 여기서 바람직하게는 상관된 객체들의 크기를 조화시키는 단계는 객체 클래스에 따라 행해지거나 생략된다. 예를 들어, 승용차 또는 트랙터 트레일러와 같은 차량은 일관된 크기여야 한다. 크기를 조화하면 개체가 더 자연스럽게 나타난다.
원시 센서 데이터가 LIDAR 포인트 클라우드들 및 동시에 획득된 카메라 데이터를 포함하는 경우 유리하며, 여기서 객체들의 상관은 LIDAR 센서 및 카메라의 상대적 공간 배향을 고려하여 수행된다. 따라서, LIDAR 센서의 공간 정보 및 카메라의 고해상도를 최적으로 사용할 수 있다.
바람직한 실시예에서, 적어도 하나의 신경 네트워크는 인식된 객체에 대한 속성 인식(atrrubute recognition)을 위해 사용된다. 바람직하게는, 적어도 하나의 속성, 특히 차량의 회전 신호 상태는 카메라 이미지에 기초하여 결정되고 LIDAR 포인트 클라우드 내의 객체에 할당된다. 인식에 사용되는 적어도 하나의 속성 및 신경 네트워크(들)은 객체 클래스에 따라 선택될 수 있다. 포인트 클라우드들 및 카메라 이미지들이 둘 다 이용가능할 때, 센서 융합이 편리하게 수행될 수 있으며, 여기서 카메라 이미지는 속성 인식을 위해 사용되고 속성은 융합된 객체에 할당된다.
본 발명은 또한 컴퓨터 시스템의 프로세서에 의해 실행될 때, 컴퓨터 시스템으로 하여금 본 발명의 방법을 실행하게 하는 명령어들을 포함하는 컴퓨터 판독가능 데이터 캐리어에 관한 것이다.
또한, 본 발명은 프로세서, 인간-기계 인터페이스, 및 비휘발성 메모리를 포함하는 컴퓨터 시스템에 관한 것이며, 여기서 비휘발성 메모리는, 프로세서에 의해 실행될 때, 컴퓨터 시스템으로 하여금 본 발명의 방법을 실행하게 하는 명령어들을 포함한다.
프로세서는 워크스테이션 컴퓨터의 중앙 처리 유닛으로서 일반적으로 사용되는 범용 마이크로프로세서일 수 있거나, 예를 들어 그래픽 처리 유닛과 같은 특정 계산을 수행하기에 적합한 하나 이상의 처리 요소를 포함할 수 있다. 본 발명의 대안적인 실시예들에서, 프로세서는 프로그램가능 논리 디바이스, 예를 들어, 지정된 수의 동작들을 수행하도록 구성되는 필드-프로그램가능 게이트 어레이에 의해 대체되거나 보충될 수 있고, 및/또는 IP 코어 마이크로프로세서를 포함할 수 있다.
이하, 도면을 참조하여 본 발명을 더욱 상세히 설명한다. 이러한 점에서, 유사한 부분은 동일한 명칭으로 라벨링된다. 예시된 실시예들은 고도로 도식화된다; 즉, 거리들 및 측방향 및 수직 치수들은 스케일링되지 않고, 달리 표시되지 않으면, 또한, 서로에 대해 어떠한 유도가능한 기하학적 관계들도 갖지 않는다.
도면들에서:
도 1은 컴퓨터 시스템의 예시적인 다이어그램이다.
도 2는 키프레임들의 도움으로 반-자동으로 주석이 달린 여러 이미지들의 개략도이다.
도 3은 주행 시나리오 센서 데이터에 주석을 달기 위한 본 발명의 방법의 실시예의 개략적인 흐름도를 도시한다.
도 4는 자동 객체 인식이 수행된 다수의 이미지들의 개략도이다.
도 5는 시간적 상관관계가 결정된 다수의 이미지들의 개략도이다.
도 6은 보다 광범위한 평가가 수행될 수 있는 궤적을 갖는 다수의 연속적인 이미지들의 개략도이다.
도 7은 본 발명의 방법을 수행하기 위한 자동화 시스템의 실시예를 도시한다.
도 8은 속성 검출기들의 자동화된 트레이닝을 위한 방법의 실시예를 도시한다.
도 9는 품질 관리를 위한 사용자 인터페이스의 실시예를 보여준다.
도 1은 컴퓨터 시스템의 예시적인 다이어그램이다.
도 2는 키프레임들의 도움으로 반-자동으로 주석이 달린 여러 이미지들의 개략도이다.
도 3은 주행 시나리오 센서 데이터에 주석을 달기 위한 본 발명의 방법의 실시예의 개략적인 흐름도를 도시한다.
도 4는 자동 객체 인식이 수행된 다수의 이미지들의 개략도이다.
도 5는 시간적 상관관계가 결정된 다수의 이미지들의 개략도이다.
도 6은 보다 광범위한 평가가 수행될 수 있는 궤적을 갖는 다수의 연속적인 이미지들의 개략도이다.
도 7은 본 발명의 방법을 수행하기 위한 자동화 시스템의 실시예를 도시한다.
도 8은 속성 검출기들의 자동화된 트레이닝을 위한 방법의 실시예를 도시한다.
도 9는 품질 관리를 위한 사용자 인터페이스의 실시예를 보여준다.
도 1은 컴퓨터 시스템의 예시적인 실시예를 도시한다.
도시된 실시예는 모니터(DIS) 및 키보드(KEY) 및 마우스(MOU)와 같은 입력 디바이스들을 갖는 호스트 컴퓨터(PC)를 포함한다.
호스트 컴퓨터(PC)는 하나 이상의 코어를 갖는 적어도 하나의 프로세서(CPU), 랜덤 세스 메모리(RAM), 및 버스 제어기(BC)를 통해(CPU)와 데이터를 교환하는 (PCI 익스프레스와 같은) 로컬 버스에 연결된 다수의 디바이스를 포함한다. 디바이스들은, 예를 들어, 디스플레이를 구동하기 위한 그래픽 프로세서(GPU), 주변 디바이스들을 연결하기 위한 제어기(USB), 하드 디스크 또는 솔리드 스테이트 디스크와 같은 비휘발성 메모리, 및 네트워크 인터페이스(NC)를 포함한다. 비휘발성 메모리는, 프로세서(CPU)의 하나 이상의 코어에 의해 실행될 때, 컴퓨터 시스템으로 하여금 본 발명의 방법을 실행하게 하는 명령어들을 포함할 수 있다.
본 발명의 일 실시예에서, 도면에 양식화된 클라우드에 의해 표시된 바와 같이, 호스트 컴퓨터는 프로세서들 또는 FPGA들과 같은 하나 이상의 컴퓨팅 요소들을 포함하는 하나 이상의 서버들을 포함할 수 있고, 서버들은 네트워크를 통해 디스플레이 디바이스 및 입력 디바이스를 포함하는 클라이언트에 연결된다. 따라서, 시뮬레이션 시나리오들을 생성하기 위한 방법은 원격 서버 상에서, 예를 들어, 클라우드 컴퓨팅 장비에서 부분적으로 또는 완전히 실행될 수 있다. PC 클라이언트에 대한 대안으로서, 시뮬레이션 환경의 그래픽 사용자 인터페이스는 휴대용 컴퓨팅 디바이스 상에, 특히 태블릿 또는 스마트폰 상에 디스플레이될 수 있다.
도 2는 키프레임들의 도움으로 반-자동으로 주석이 달린 다수의 연속적인 이미지들을 개략적으로 도시한다.
제1, 제3 및 제5 프레임은 각각 키프레임(굵은 테두리로 표시됨)인 반면, 제2 및 제4 프레임은 중간 프레임(파선 테두리로 표시됨)으로 취급된다. 제1 단계(1. 주석)에서, 제1 키프레임에는 원하는 주석이 수동으로, 예를 들어, 인식된 객체들 주위에 바운딩 박스를 그리고, 예를 들어, 객체 클래스와 같은 추가 속성을 추가함으로써, 제공된다. 제2 단계(2. 외삽)에서, 제1 키프레임에서 주석이 달린 객체들의 예측 위치가 제2 키프레임에 대해 결정되고 수동으로 보정된다. 새로 추가된 객체들에 대한 주석이 수작업으로 완전히 추가되었을 수 있다. 제3 단계(3. 외삽)에서, 제3 키프레임에 대한 이미 주석이 달린 객체들의 예측 위치가 수동으로 결정되고 보정된다. 모든 키프레임들에 주석이 달리면, 제4 단계(4. 내삽)에서 내삽에 의해 중간 프레임들 상의 객체 위치들이 결정되고 속성들이 전송된다.
키프레임들 사이의 거리를 증가에 의한 자동화 레이트의 증가는 외삽 및 가능하게는 또한 객체 위치들의 내삽이 더 이상 충분히 정확하지 않기 때문에 수동 보정 노력이 매우 빠르게 증가한다는 사실에 의해 제한된다.
동일한 객체의 주석들이 시간 축에 걸쳐 자동으로 상관되는 시간적 상관관계의 도입과 신경 네트워크를 통한 객체 인식과의 조합은 현재의 반자동화의 한계를 효과적으로 극복할 수 있다. 시간적 상관성은 연속적인 이미지들이 시간에 따라 점차적으로만 변한다는 사실에 기초한다. 객체들 사이의 논리적 링크들이 자동으로 검출되고 더 높은 레벨의 시맨틱 정보를 추출하는데 사용될 수 있어서, 궁극적으로 훨씬 더 높은 레벨의 자동화를 이끄는 객체 인식-기반 접근법을 가능하게 한다.
도 3은 주행 시나리오 센서 데이터에 주석을 달기 위한 본 발명의 방법의 실시예의 개략적인 흐름도를 도시한다.
제1 단계(S1)(객체 인식)에서, 객체 인식을 위해, 바람직하게는 각각의 이미지 또는 각각의 포인트 클라우드에서 가능한 많은 객체를 인식하기 위해 신경 네트워크가 사용된다.
도 4는 신경 네트워크가 제1 패스에서 다수의 객체들을 인식한 일련의 이미지들을 개략적으로 나타낸다. 예를 들어, 표시된 바와 같이, 이는 자동차 차량들을 수반할 수 있고; 원칙적으로, 차량들, 보행자들, 동물들, 및 장애물들, 또는 임의의 다른 정적 또는 동적 관심 객체에 더해 다양한 유형들 또는 클래스들이 클립의 각각의 프레임 또는 연속적인 일련의 프레임들 및/또는 LIDAR 포인트 클라우드들에서 인식된다.
바람직한 실시예에서, 객체 클래스 및/또는 센서 데이터의 범위에 따라 객체 인식을 위해 상이한 신경 네트워크 아키텍처들이 사용된다. 특히, 상이한 영역들에서의 상이한 신경 네트워크 아키텍처들이 LIDAR 포인트 클라우드에서의 객체들의 인식을 위해 사용될 수 있으며, 여기서 영역들은 바람직하게는 측정 차량 주위의 근거리 영역 및 원거리 영역으로 분할된다.
원거리 영역 에서는 pointRCNN을 기반으로 하는 아키텍처가 바람직하게 사용되는데, 이는 Shaoshuai Shi et al., arXiv:1812.04244v2, 5/16/2019의 "PointRCNN: 3D Object Proposal Generation and Detection from Point Cloud"에 설명되어 있다. 합리적인 박스 크기를 제안하는 데 편리하게는 특히 좋고, 따라서 단지 소수의 측정 포인트로 구성될 수 있는 먼 객체들에 주석을 다는 데에도 적합하다.
근거리 영역에서는 Tianwei Yin et al., arXiv:2006.11275v1, 6/19/2020의 "Center-based 3D Object Detection and Tracking"에 설명된 중심점 기반 신경 네트워크 아키텍처를 사용하는 것이 바람직하다. 서로 다른 객체 클래스들을 구별하는 데 더 적합하며, 따라서 측정 점이 많은 근거리 영역에서 더 나은 결과들을 제공한다.
본 발명의 대안적인 실시예들에 따르면, 상이한 네트워크 아키텍처들이 더 나은 커버리지를 위해 조합될 수 있다.
제2 단계(S2)(중복 폐기)에서, 중복(duplicate)들이 제거되며, 여기서 사용된 객체 검출기들은 따라서 분석된 프레임(이미지 또는 포인트 클라우드) 내의 단일 객체 주위에 다수의 바운딩 박스들을 생성하였다. 이는 신경 네트워크들이 보통 어떤 객체들도 누락하지 않도록 가능한 가장 높은 커버리지에 최적화돼 있지만, 이로 인해 중복 현상이 많기 때문이다. 중복을 제거하거나 폐기하는 것은 하나 이상의 기준을 포함할 수 있는 필터링 규칙에 기초하여 수행될 수 있다.
하나의 기준은 2개의 바운딩 박스들 사이의 중첩, 특히 Jaccard 인덱스로도 알려진 합집합(union)에 대한 교집합(intersection)을 고려할 수 있다. 두 박스들의 겹침이 미리 정의된 임계값, 특히 합집합에 대한 교집합에 대해 0.98보다 크면 중복들로 간주된다. 미리 정의된 임계값은 또한 인식된 객체 클래스에 따라 선택될 수 있다. 또한 주어진 오버랩에 더하여, 동일한 객체 클래스가 중복들로 고려될 2개의 박스들에 대해 존재해야만 한다는 기준으로서 제공될 수 있다. 또한, 객체 인식에 사용되는 네트워크의 신뢰도는 필터 규칙에 대한 기준으로서 사용될 수 있고 및/또는 객체 클래스와 조합된 기준에서 고려될 수 있다. 또한, 검출된 중복의 경우, 할당된 신뢰도에 기초하여 삭제할 박스를 선택하고, 특히 신뢰도가 낮은 박스를 삭제하도록 제공될 수 있다.
제3 단계(S3)(시간적으로 객체들을 상관)에서, 나머지 객체들은 시간적 상관들을 결정하기 위해 그들의 시간 축을 따라 분석된다. 이는 차량이 화살표들에 의해 프레임들에 걸쳐 동일한 것으로 표시되는 3개의 연속적인 프레임들을 도시하는 도 5에 개략적으로 표시된다. 서로 상관 관계가 있는 객체들을 식별하여 체인들을 형성하도록 링크할 수 있다. 이렇게 하면 나중에 보다 광범위한 평가를 수행할 수 있을 뿐만 아니라 중간 프레임에서 인식 간격들을 폐쇄할 수 있다.
객체들의 상관관계는 단방향(unidirectional) 또는 양방향(bidirectional) 방식으로 링크로서 행해질 수 있다. 폐색, 절단, 및 누락된 객체를 극복하기 위해 이 연결에 기초하여 제1 패스 검출 갭들이 가교(bridge)될 수 있다.
본 발명의 제1 실시예에서, 단방향 링크는 후속 이미지에서 객체의 위치를 추정함으로써 수행된다. 객체 인식 동안 특정 타당성 검사들(클래스 유형, 차량 운동에 대한 애커만 모델, ...)을 만족하는 추정된 영역 내에서 객체가 검출되었다면, 이들 2개의 객체 인스턴스들은 동일한 객체에 속하는 것으로 표시된다.
위치를 추정하기 위한 전략으로 가우시안 프로세스 감소(Gaussian process reduction) 또는 칼만 필터(Kalman filter)가 사용될 수 있다. 가우시안 프로세스 감소는 Rohit Tripathy et al., arXiv:1602.04550v1, 2/15/2016의 "Gaussian processes with built-in dimensionality reduction: Applications in high-dimensional uncertainty propagation"에 설명되어 있다. 칼만 필터는 통계학 및 제어 이론에서 사용되며 선형 이차 추정(linear quadratic estimation)으로도 알려져 있다. 칼만 필터의 알고리즘은 시간에 걸쳐 관찰되고 통계적 잡음 및 다른 부정확성을 포함하는 일련의 측정들을 사용하여, 단일 측정에 기초한 추정들보다 일반적으로 더 정확한 미지의 변수들에 대한 추정들을 생성한다. 또한, 입자 필터들 또는 순차적 몬테 카를로 방법(SMC)이 위치 추정을 위해 사용될 수 있으며, 따라서 신호 처리 및 베이지안 통계적 추론에서 필터링 문제들을 해결하는 데 사용되는 몬테 카를로 알고리즘들의 세트가 있다. 이미 링크된 객체들의 체인이 길수록, 매우 정밀한 위치 추정을 위해 더 많은 정보가 사용될 수 있다.
본 발명의 제2 실시예에서, 인자 그래프(함수의 인수 분해를 나타내는 이분 그래프(bipartite graph))가 객체 추적을 위해 대안적으로 사용될 수 있다. 여기서, 하나의 이미지 상의 각각의 객체는 후속 이미지 상의 각각의 객체에 링크된다. 각 링크는 특정 기준에 따라 가중치가 적용되며 완벽한 링크가 두 프레임 및 모든 객체에 걸쳐 도출된다. 가중 규칙은 휴리스틱 또는 거동 모델을 사용하여 공식화될 수 있다.
일단 연속적인 프레임들 내의 객체들의 상관이 발생하면, 이러한 링크에 기초하여, 궤적들(따라서, 시간의 함수로서 공간을 통해 운동 내에 질량 점에 의해 이동하는 경로), 속도(시간에 따른 함수로서), 위치, 폐색(다른 객체들에 의해 일시적으로 폐색된 객체), 및 절단(truncation)(센서들에 의해 검출된 영역들의 에지들에서)과 같은 추가적인 시맨틱 정보뿐만 아니라, 검출 실패들에 관한 정보(객체는 이전 및 후속 프레임들 상에 존재하여, 그 사이에서 인식이 실패했을 수 있음)가 도출되고 후속 자동화 단계들을 위한 입력으로서 사용될 수 있다.
제4 단계(S4)(거짓 양성 결과들 제거)에서는 잘못 인식된 객체들을 제거한다. 거짓 양성 객체들의 제거를 위해 다양한 규칙 또는 기준이 사용 및/또는 조합될 수 있다.
예를 들어, 지면 위의 높이가 고려될 수 있으며, 여기서 부분적으로 지면 아래에 있는 것으로 검출된 객체들 및/또는 지면 위로 호버링하는 것으로 보이는 객체들은 타당해 보이지 않는 것으로 폐기된다. 대안적으로 또는 추가적으로, 운동 또는 궤적은 차량들에 대해 고려될 수 있으며, 여기서 가속도 또는 방향 변화와 같은 하나 이상의 양이 결정되고 미리 정의된 제한 값들과 비교될 수 있고; 특정 유형의 차량에 대해 전형적인 범위 밖의 가속도 또는 지면으로의 타이어들의 그립 제한들에 의해 제한되는 물리적 가능성들 밖의 가속도는 타당하지 않다. 또한, 단일 프레임 내에만 또는 몇 분의 1초(a few fractions of a second) 동안 존재하지만 이웃하는 프레임에는 나타나지 않는 객체는 타당해 보이지 않는, 존속 시간 범위(time span of existing)가 고려될 수 있다. 편리하게는, 이 존속 시간 범위의 결정에서의 에러들을 피하기 위해 여기서 다른 객체들에 의한 가능한 폐색이 또한 고려된다. 또한, 신경 네트워크에 의해 낮은 신뢰도만으로 인식되었던 그 객체들만이 타당해 보이지 않아 폐기될 수 있다는 것도 제공할 수 있다.
거짓 양성 결과들의 검출은 시간적 상관관계로부터 도출된 시맨틱 정보와 강하게 관련된다. 예를 들어, 현실 세계에서는, 객체가 1초의 일부(a fraction of a second) 동안에만 존재하지 않을 것이다. 타당해 보이지 않는 객체를 폐기함으로써, 주석 프로젝트에서 계약적으로 합의된 정밀도 및 인식 값을 달성할 수 있다.
제5 단계(S5)(회귀에 의해 객체 크기 최적화)에서, 각각의 객체는 신경 네트워크를 통해 그의 완벽한 위치 및 크기로 회귀된다. 본 발명의 일 실시예에서, 인접한 이미지들은 또한 박스 크기의 회귀에서 고려될 수 있다. 대안적으로 또는 추가적으로, 이는 또한, 아래의 단계 S7에서와 같이, 추가 후처리 단계에서 식별된 또는 상관된 객체의 박스들의 크기들을 매칭시키기 위해 제공될 수 있다.
제6 단계(S6)(갭들을 폐쇄)에서, 시간적 맥락에 기초하여, 갭들은 내삽에 의해 폐쇄된다. 폐색의 경우 - 전경에 위치된 객체가 일시적으로 다른 것을 폐색하는 경우 - 및/또는 클리핑(clipping)의 경우, 센서들에 의해 검출된 영역들로부터 객체가 돌출하거나 객체가 이전 및 후속 이미지들 상에 존재하는 인식 에러의 경우라도 - 라도 도로 사용자들에 대한 연속적인 궤적들을 획득하기 위해, 연속적인 프레임들에서의 객체들의 상관으로부터 추가적인 시맨틱 정보가 도출될 수 있고, 이러한 이유로 사이의 인식은 실패하였다. 추가적인 시맨틱 정보는 또한 시간적 상관관계로부터 도출될 수 있고, 후속 자동화 또는 후처리 단계들을 위한 입력으로서 사용될 수 있다. 도 6은 상관된 객체가 추가 평가를 위해 선택된 일련의 프레임을 개략적으로 나타낸다.
제7 단계(S7)(크기 조화)에서, 크기들은 연속적인 이미지들 및/또는 LIDAR 포인트 클라우드들의 체인들에 걸쳐 조화된다. 이는 객체가 더 잘 보이고 인간 뷰어에게 더 자연스럽게 느껴지도록 현실적인 크기를 달성하는 데 특히 중요하다. 연속적인 이미지들 및/또는 포인트 클라우드들에서 상관된 객체의 크기의 조화는 바람직하게는 객체 클래스에 따라 수행되거나 생략된다. 특히, 자동차들은 전형적으로 프레임들에 걸쳐 그 크기를 유지하기 때문에, 크기의 조화가 차량들에 대해 발생할 수 있다. 보행자는 현재 자세에 따라 서로 다른 간주된(presumed) 크기를 가질 수 있기 때문에 보행자 객체 클래스에 대한 크기의 조화를 자제하는 것이 유리하다.
제8 단계(S8)(물리적 모델에 기초한 궤적 평활화)에서, 장면들 내의 동적 객체들 또는 도로 사용자들의 궤적들은 그들의 기본 물리적 모델들에 따라 평활된다. 예를 들어, 공통 단일 추적 모델은 자동차의 주행 거동을 기술하는데 사용될 수 있다.
속성들의 인식은 제9단계(S9)에서 수행된다(속성 결정). 이는 다양한 추가 단계들을 포함할 수 있다.
관련 속성들은 현재 프로젝트에 유효한 라벨 사양에 따라 달라질 수 있고, 여기서 객체 클래스들은 종종 상이한 속성을 가진다. 예를 들어, 자동차는 방향의 계획된 변화를 나타내는 회전 신호 및 브레이크 작동을 나타내는 브레이크 등을 갖는다. 제9 패스 또는 단계에서, 프로젝트들에 대한 속성 인식은 바람직하게는 센서 융합에 기초하여 발생할 수 있다. 필요한 경우 회전 신호, 브레이크 표시등, 비상 표시등 또는 주석의 기타 설명 특성에 대한 값들이 설정된다. 2D 카메라 이미지들의 객체 인스턴스들을 3D LiDAR 스캔들의 동일한 객체의 객체 인스턴스들과 상관시킬 수 있기 위해, 공통 정보는 두 데이터세트들 모두에서 식별되어야 한다. 이러한 공통 데이터 포인트는 두 데이터 세트를 병합하는 데 사용된다. 속성 인식을 위해, 다양한 2D 기반 객체 인식 네트워크들이 병합된 데이터세트들 상에서 실행될 수 있다; 특히, 속성은 카메라 이미지 상에서 결정되고 LIDAR 포인트 클라우드 내의 객체에 할당될 수 있다.
주석이 달린 센서 데이터는, 예를 들어, 주행 시나리오들의 추출(시나리오 추출), 또는 지각 네트워크들의 트레이닝과 같은 다양한 목적들을 위해 사용될 수 있으며, 그에 대해 주석이 달거나 풍부한 데이터가 그라운드 트루쓰(ground truth)(데이터 강화)로서 요구된다. 자동화 목표에 따라, 이 경우, 상술한 단계들의 시퀀스 및 개별 구성 모두가 조정될 수 있어서, 상술한 단계들 중 일부는 선택적일 수 있고, 따라서 실행되거나 생략될 수 있고, 필요에 따라 데이터를 더 풍부하게 하기 위해 추가 단계들이 또한 추가될 수 있다.
예를 들어 시나리오 추출을 위해 다음 단계를 수행할 수 있다.
1. 객체들 인식(단계 S1)
2. 시간적 상관관계들에 기초한 추적(단계 S3)
3. 거짓 양성 결과의 인식/없앰(elimination)(단계 S4)
4. 회귀(단계 S5)
5. 크기 조화(단계 S7)
6. 궤적의 평활화(단계 S8)
예를 들어, 데이터 선택을 위해 다음 단계를 수행할 수 있다.
1. 객체 인식
2. 시간적 상관관계들에 기초한 추적
3. 거짓 양성 인식/없앰
예를 들어, 다음 단계는 데이터 강화를 위해 대안적으로 수행될 수 있다:
1. 객체 인식(단계 S1)
2. 시간적 상관관계들에 기초한 추적(단계 S3)
3. 거짓 양성 결과의 인식/없앰(단계 S4)
4. 위치 및 크기의 회귀(단계 S5 참조)
5. 크기 조화(단계 S7)
6. 위치만의 회귀(단계 S5 참조)
7. 회전 신호들, 브레이크 등 및 기타 설명적 특성들과 같은 속성들의 인식(단계 S9)
바람직하게는, 상기 다양한 단계들을 수행하기 위한 알고리즘들은, 서로 그리고 상기 시퀀스로 상호 교환 가능하도록, 공통 인터페이스 또는 API를 만족하도록 구성됨으로써, 상이한 목표 결과들을 달성하기 위해 상이한 방식들로 조합될 수 있다.
도 7은 본 발명의 방법을 수행하기 위한 자동화 시스템의 일 실시예를 도시한다. 자동화 시스템은 전용 컴포넌트들에서 다양한 보충 단계들을 구현하고, 클라우드 컴퓨팅 환경에서의 실행에 매우 적합하다.
제1 단계에서, 데이터 전처리에서, 원시 센서 데이터가 수신되며, 이는 예를 들어 분류되지 않을 수 있다. 원시 센서 데이터는 LIDAR 포인트 클라우드들과 같은 환경 센서들로부터의 데이터 및/또는 하나 이상의 카메라들로부터의 이미지들뿐만 아니라, GPS 수신기 및/또는 휠 속도, 가속도, 또는 요 레이트(yaw rate) 센서들과 같은 하나 이상의 차량 센서들로부터의 데이터를 포함할 수 있다. 데이터는 정규화될 수 있으며, 예를 들어, 균일한 처리를 가능하게 하기 위해 개별 프레임들로 스플릿되고/되거나 더 큰 패킷들로 조합될 수 있다. 다양한 센서들로부터 동시에 캡처된 데이터의 조합이 또한 발생할 수 있다.
제2 단계에서, 자동화 엔진에서, 프레임들의 패킷이 적어도 하나의 자동화 컴포넌트에 의해 처리된다. 자동화 컴포넌트들은 주석 시스템 워크플로의 중심 부분이다. 특히, 자동화 컴포넌트들은 지도, 반-지도, 또는 비지도 방식으로 데이터세트들로부터 학습하는 신경 네트워크들 또는 다른 머신 학습 기반 기술들일 수 있다. 자동화 컴포넌트들은 본 발명의 방법의 개별 단계들 또는 하위 단계들을 구현할 수 있다. 예를 들어, 속성 인식(S9)과 같은 일부 단계들에서, 각각의 경우에 하나의 속성을 인식하기 위해 상이한 신경 네트워크들과 같은 다수의 자동화 컴포넌트들이 사용될 수 있다.
제3 단계에서, 품질 제어에서, 바람직하게는 프레임들의 샘플이 인간에 의해 선택되고 체크된다. 여기서, 인간 품질 검사자는, 예를 들어, 바운딩 박스와 같은 대응하는 주석들을 갖는 카메라 이미지 및/또는 LIDAR 포인트 클라우드가 보여질 수 있고, 바운딩 박스가 정확한지 여부를 질문받을 수 있다. 대안적으로, 그는 바운딩 박스를 조정하고/하거나 객체가 신경 네트워크에 의해 누락된 경우 바운딩 박스를 추가하기 위한 사용자 인터페이스를 도시할 수 있다. 자동화 시스템은 품질 검사기로부터 입력들을 수신한다. 사용자 인터페이스의 가능한 실시예가 도 9에 도시되어 있다.
품질 검사가 성공적이면 주석이 달린 데이터를 내보낼 수 있다. 제4 단계인 고객 검토 단계에서는 내보낸 프레임의 샘플을 검토하여 주석이 자신의 사양 및 원하는 주석 품질을 충족하는지 확인할 수 있다. 고객이 주석을 거절할 경우 주석 처리된 데이터 패키지는 수정 단계에서 수동으로 보정된다.
제5 단계에서, 보정에서, 거절된 패키지의 수동 주석 달기가 발생한다. 새로운 품질 관리 및 성공적인 고객 검토 후에, 주석이 달린 프레임들은 트레이닝/검증 또는 테스트 데이터세트로서 사용될 수 있다. 이러한 데이터 세트는 원통형으로 상징적으로 표현되며 새로운 또는 추가적인 트레이닝을 위해 사용될 수 있다.
제6 단계, "플라이휠"에서, 하나 이상의 신경 네트워크 또는 자동화 컴포넌트가 트레이닝 데이터 세트에 기초하여 재트레이닝된다. 대응하는 테스트 데이터세트로 성공적인 테스트 후, 개선된 신경 네트워크는 자동화 엔진에서 출력되거나 사용될 수 있다.
도 8은 속성 검출기들의 자동화 트레이닝을 위한 "플라이휠" 방법의 예시적인 실시예를 도시한다.
플라이휠은 각각의 자동화 컴포넌트에 대한 트레이닝 세트들을 효율적으로 저장하고, 트레이닝 세트들의 변화들을 모니터링하고, 트레이닝 세트들 내의 변화들에 대한 미리 정의되거나 자동으로 결정된 임계값들이 검출되자마자 재트레이닝을 자동으로 트리거하기 위한 기술들을 포함한다. 또한, 플라이휠은 새로 트레이닝된 모델을 자동화 컴포넌트로 자동으로 롤 아웃(roll out)하는 기술을 포함한다.
어떤 속성을 인식해야 하는지는 특정 주석 프로젝트의 라벨 사양에 규정되어 있다. 클래스 승용차의 객체는 예를 들어, 회전 신호(turn signal)의 상태(status), 운동 상태(state of motion) 및 폐색 가능(possible occlusion)이 속성으로 명명된다. 기본적으로 객체는 특정 객체 클래스에 대해 지정될 다양한 속성들을 가질 수 있다.
바람직하게, 각 속성에 대한 속성 검출기로는 기존의 데이터 세트를 기반으로 미리 트레이닝된 신경 네트워크를 이용하는 것을 특징으로 한다. 검증된 새로운 데이터세트들의 존재로 인해, 적어도 하나의 속성 검출기가 재트레이닝되어, 속성 검출기들이 주석 프로젝트의 과정에 걸쳐 개선된 성능을 나타내고 수동 노력이 감소된다.
도 9는 품질 제어를 위한 사용자 인터페이스의 일 실시예를 도시한다.
LIDAR 포인트 클라우드의 발췌본이 좌측에 도시되며, 여기서 바운딩 박스는 그의 전방 방향 및 (원으로서) 지면 평면의 표시와 함께 도시된다. 중앙에는 동시에 획득된 카메라 이미지의 발췌본이 나타나며, 여기에도 바운딩 박스가 그려져 있다. 오른쪽에는 선택 목록이 나타나며, 이 목록에서 바운딩 박스로 둘러싸인 객체의 다양한 속성을 선택하거나 입력할 수 있다. 예를 들어, 이는 정지(정적)이고 회전 신호가 설정되지 않은(좌측/우측 회전 신호 오프) 차량이다. 사용자 인터페이스는 품질 문제를 나타내기 위한 다른 창을 여는 버튼(여기에 도시되지 않음)을 포함하는 것이 또한 제공될 수 있다. 예를 들어, 차량의 하나의 코너가 박스 외부에 있기 때문에 바운딩 박스의 치수는 여기서 정확하지 않다. 그러한 인터페이스는 품질 제어를 단순화하고 그에 필요한 시간을 감소시킨다.
본 발명의 방법은 연속적인 프레임들 사이의 시간적 상관을 사용하여 타당한 객체 인식들 및 일관된 크기들을 결정하고, 따라서 많은 양의 데이터의 주석을 가능하게 한다.
Claims (15)
- 주행 시나리오 센서 데이터에 주석을 다는 컴퓨터-구현 방법으로서, 상기 방법은:
LIDAR 센서로부터의 복수의 연속적인 포인트 클라우드들 및/또는 하나 이상의 카메라들로부터의 복수의 연속적인 이미지들을 포함하는 원시 센서 데이터를 수신하는 단계,
하나 이상의 신경 네트워크들을 사용하여 각각의 이미지 및/또는 각각의 포인트 클라우드에서 객체들을 인식하는 단계,
연속 이미지들 및/또는 포인트 클라우드들 내의 객체들을 상관시키는 단계,
타당성 기준을 기초로 거짓 양성 결과들을 제거하는 단계, 및
상기 주행 시나리오의 상기 주석이 달린 센서 데이터를 내보내는 단계를 포함하는,
방법. - 제1항에 있어서,
상기 원시 센서 데이터는 LIDAR 센서로부터의 포인트 클라우드들을 포함하고, 포인트 클라우드는 적어도 2개의 영역들로 분할되고, 제1 아키텍처의 신경 네트워크는 상기 제1 영역 내의 객체들을 인식하기 위해 사용되고, 제2 아키텍처의 신경 네트워크는 상기 제2 영역 내에서 사용되며, 상기 제1 아키텍처는 상기 제2 아키텍처와 상이한, 방법. - 제2항에 있어서,
상기 제1 영역은 측정 차량의 상기 바로 주변을 포함하는 반면, 상기 제2 영역은 상기 측정 차량으로부터의 최소 거리를 갖고, 바람직하게는, 객체 인식을 위한 상기 신경 네트워크에 대해 상기 제1 영역에서 중심점 기반 아키텍처(center-point-based architecture)가 사용되고, 상기 제2 영역에서 pointRCNN 기반 아키텍처가 사용되는, 방법. - 제1항 내지 제3항 중 어느 한 항에 있어서,
객체들이 상관되기 전에 중복들을 제거하는 단계를 더 포함하고, 중복들의 상기 제거는 바람직하게는 신경 네트워크의 중첩 기준 및/또는 신뢰 수준에 기초하는, 방법. - 제4항에 있어서,
인식된 객체들의 중복들의 상기 제거가 이미지 및/또는 포인트 클라우드 내에서 수행되고, 2개의 중첩 객체들, 즉 제1 신뢰 레벨로 인식된 제1 객체 및 제2 신뢰 레벨로 인식된 제2 객체에 대해, 상기 제1 신뢰 레벨은 상기 제2 신뢰 레벨보다 높고, 상기 중첩, 특히 합집합에 대한 상기 교집합이 미리 정의된 임계값을 초과하는지 여부가 체크되고, 이 경우 제2 객체는 중복으로서 폐기되는, 방법. - 제1항 내지 제5항 중 어느 한 항에 있어서,
객체들을 상관시키는 단계는 연속적인 프레임들 내의 객체들, 따라서 이미지들 및/또는 포인트 클라우드들을 링크하는 단계를 포함하고, 상기 객체들이 상기 동일한 객체 클래스에 속하고 상기 중첩, 특히 합집합에 대한 상기 교집합이 미리 정의된 임계값을 초과하는 경우, 제1 프레임 내의 객체는 제2 프레임 내의 객체와 상관되는, 방법. - 제1항 내지 제6항 중 어느 한 항에 있어서,
객체들을 상관시키는 단계는 가우시안 프로세스 감소 또는 칼만 필터에 의해 후속 이미지 및/또는 후속 포인트 클라우드 상의 객체의 포지션을 예측하는 단계를 포함하고, 및/또는 연속적인 이미지들에서의 객체들의 추적은 인자 그래프, 따라서 확률 분포를 팩터링하기 위한 이분 그래프에 의해 발생하는, 방법. - 제6항 또는 제7항에 있어서,
누락된 객체들을 보정하는 단계를 더 포함하고, 2개 초과의 연속적인 프레임들이 분석되고, 제1 프레임 내의 객체가 제3 프레임 내의 객체와 상관되었지만 상기 중간 프레임 내에서 어떠한 객체도 검출되지 않은 경우, 상기 객체는 그 후 상기 제2 프레임에 삽입되는, 방법. - 제1항 내지 제8항 중 어느 한 항에 있어서,
거짓 양성 결과들을 제거하기 위한 상기 타당성 기준들은 상기 지면 위의 높이, 존재 지속기간, 및/또는 신경 네트워크의 상기 신뢰도 레벨에 기초하는, 방법. - 제1항 내지 제9항 중 어느 한 항에 있어서,
회귀에 의해 상기 카메라 데이터 및/또는 각각의 포인트 클라우드 내의 각각의 이미지에서 상기 객체 크기 및/또는 객체 위치를 최적화하는 단계를 더 포함하는, 방법. - 제1항 내지 제10항 중 어느 한 항에 있어서,
연속적인 이미지들 및/또는 포인트 클라우드들에서 상관된 객체들의 상기 크기를 조화시키는 단계를 더 포함하고, 바람직하게는 상관된 객체들의 상기 크기를 상기 조화시키는 단계는 상기 객체 클래스에 따라 행해지거나 생략되는, 방법. - 제1항 내지 제11항 중 어느 한 항에 있어서,
상기 원시 센서 데이터는 LIDAR 포인트 클라우드들 및 동시에 획득된 카메라 데이터를 포함하고, 객체들의 상관은 상기 LIDAR 센서 및 상기 카메라의 상기 상대적 공간 배향을 고려하여 수행되는, 방법. - 제1항 내지 제12항 중 어느 한 항에 있어서, 인식된 객체에 대해 사용되는 속성 인식을 위한 적어도 하나의 신경 네트워크, 바람직하게는 적어도 하나의 속성, 특히 차량의 상기 회전 신호 상태는 카메라 이미지에 기초하여 결정되고 상기 LIDAR 포인트 클라우드 내의 객체에 할당되는, 방법.
- 컴퓨터 시스템의 프로세서에 의해 실행될 때, 상기 컴퓨터 시스템으로 하여금 제1항 내지 제13항 중 어느 하나에 따른 방법을 실행하게 하는 명령어들을 포함하는 컴퓨터 판독가능 데이터 캐리어.
- 프로세서, 인간-기계 인터페이스 및 비휘발성 메모리를 포함하는 컴퓨터 시스템으로서, 상기 비휘발성 메모리는, 상기 프로세서에 의해 실행될 때, 상기 컴퓨터 시스템으로 하여금 제1항 내지 제13항 중 어느 하나에 따른 방법을 실행하게 하는 명령어들을 포함하는, 컴퓨터 시스템.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102020130335.1 | 2020-11-17 | ||
DE102020130335 | 2020-11-17 | ||
PCT/EP2021/081845 WO2022106414A2 (de) | 2020-11-17 | 2021-11-16 | Verfahren und system zur annotation von sensordaten |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20230104592A true KR20230104592A (ko) | 2023-07-10 |
Family
ID=78790020
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020237010712A KR20230104592A (ko) | 2020-11-17 | 2021-11-16 | 센서 데이터의 주석을 다는 방법 및 시스템 |
Country Status (7)
Country | Link |
---|---|
US (1) | US20230237810A1 (ko) |
EP (1) | EP4248418A2 (ko) |
JP (1) | JP2023548749A (ko) |
KR (1) | KR20230104592A (ko) |
CN (1) | CN116324904A (ko) |
DE (1) | DE102021129864A1 (ko) |
WO (1) | WO2022106414A2 (ko) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102022130472A1 (de) | 2022-11-17 | 2024-05-23 | Valeo Schalter Und Sensoren Gmbh | Verfahren zum Betreiben eines Parkassistenzsystems für ein Fahrzeug |
-
2021
- 2021-11-16 CN CN202180067282.5A patent/CN116324904A/zh active Pending
- 2021-11-16 EP EP21815163.7A patent/EP4248418A2/de active Pending
- 2021-11-16 JP JP2023520248A patent/JP2023548749A/ja active Pending
- 2021-11-16 WO PCT/EP2021/081845 patent/WO2022106414A2/de active Application Filing
- 2021-11-16 DE DE102021129864.4A patent/DE102021129864A1/de active Pending
- 2021-11-16 KR KR1020237010712A patent/KR20230104592A/ko active Search and Examination
-
2023
- 2023-03-31 US US18/129,382 patent/US20230237810A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
CN116324904A (zh) | 2023-06-23 |
WO2022106414A2 (de) | 2022-05-27 |
DE102021129864A1 (de) | 2022-05-19 |
WO2022106414A3 (de) | 2022-08-11 |
US20230237810A1 (en) | 2023-07-27 |
JP2023548749A (ja) | 2023-11-21 |
EP4248418A2 (de) | 2023-09-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114269620B (zh) | 机器人系统的性能测试 | |
US11314989B2 (en) | Training a generative model and a discriminative model | |
JP2023055697A (ja) | 自動運転テスト方法、装置、電子機器及び記憶媒体 | |
US11803616B2 (en) | Function testing for movable objects in safety critical applications with spatial representation learning and adversarial generation | |
KR102664916B1 (ko) | 익스플레이너블 셀프-포커스드 어텐션을 이용하여 행동 예측을 수행하는 방법 및 장치 | |
Sharma et al. | Vehicle identification using modified region based convolution network for intelligent transportation system | |
Malawade et al. | Roadscene2vec: A tool for extracting and embedding road scene-graphs | |
CN113935143A (zh) | 通过自主车辆的增加的严重性等级估计碰撞概率 | |
US20230237810A1 (en) | Method and system for annotating sensor data | |
CN110909656B (zh) | 一种雷达与摄像机融合的行人检测方法和系统 | |
CN115830399A (zh) | 分类模型训练方法、装置、设备、存储介质和程序产品 | |
CN114663598A (zh) | 三维建模方法、装置和存储介质 | |
WO2022162116A1 (en) | Performance testing for robotic systems | |
Nguyen et al. | Lane detection and tracking based on fully convolutional networks and probabilistic graphical models | |
Kanakala et al. | Modelling a deep network using CNN and RNN for accident classification | |
CN117789160A (zh) | 一种基于聚类优化的多模态融合目标检测方法及系统 | |
Philipp et al. | Automated 3d object reference generation for the evaluation of autonomous vehicle perception | |
CN118115932A (zh) | 图像回归器训练方法与相关方法、装置、设备及介质 | |
US11720343B2 (en) | Methods and apparatus for automatically labeling data processing events in autonomous driving vehicles via machine learning | |
US11644331B2 (en) | Probe data generating system for simulator | |
US10997467B1 (en) | Visual analytics exposure of image object detector weakness | |
CN114140660A (zh) | 一种车辆检测方法、装置、设备及介质 | |
Rattadilok et al. | Inferential measurements for situation awareness | |
Shenoy et al. | A customizable dynamic scenario modeling and data generation platform for autonomous driving | |
Xiao et al. | VRSTNN: Visual-Relational Spatio-Temporal Neural Network for Early Hazardous Event Detection in Automated Driving Systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination |