KR20200044182A - 자율 주행 장치의 객체 인식 방법 및 자율 주행 장치 - Google Patents

자율 주행 장치의 객체 인식 방법 및 자율 주행 장치 Download PDF

Info

Publication number
KR20200044182A
KR20200044182A KR1020180119303A KR20180119303A KR20200044182A KR 20200044182 A KR20200044182 A KR 20200044182A KR 1020180119303 A KR1020180119303 A KR 1020180119303A KR 20180119303 A KR20180119303 A KR 20180119303A KR 20200044182 A KR20200044182 A KR 20200044182A
Authority
KR
South Korea
Prior art keywords
rgb image
autonomous driving
region
driving device
area
Prior art date
Application number
KR1020180119303A
Other languages
English (en)
Other versions
KR102584501B1 (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 KR1020180119303A priority Critical patent/KR102584501B1/ko
Priority to US17/278,018 priority patent/US11875574B2/en
Priority to EP19869994.4A priority patent/EP3848849A4/en
Priority to PCT/KR2019/012484 priority patent/WO2020071683A1/ko
Priority to CN201980065499.5A priority patent/CN112805718A/zh
Publication of KR20200044182A publication Critical patent/KR20200044182A/ko
Application granted granted Critical
Publication of KR102584501B1 publication Critical patent/KR102584501B1/ko

Links

Images

Classifications

    • 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/58Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
    • G06K9/00791
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W40/00Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
    • B60W40/02Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to ambient conditions
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W60/00Drive control systems specially adapted for autonomous road vehicles
    • B60W60/001Planning or execution of driving tasks
    • B60W60/0027Planning or execution of driving tasks using trajectory prediction for other traffic participants
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/20Control system inputs
    • G05D1/24Arrangements for determining position or orientation
    • G05D1/247Arrangements for determining position or orientation using signals provided by artificial sources external to the vehicle, e.g. navigation beacons
    • G05D1/249Arrangements for determining position or orientation using signals provided by artificial sources external to the vehicle, e.g. navigation beacons from positioning sensors located off-board the vehicle, e.g. from cameras
    • G06K9/4642
    • G06K9/4652
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/10Cameras or camera modules comprising electronic image sensors; Control thereof for generating image signals from different wavelengths
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/70Circuitry for compensating brightness variation in the scene
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/70Circuitry for compensating brightness variation in the scene
    • H04N23/71Circuitry for evaluating the brightness variation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/70Circuitry for compensating brightness variation in the scene
    • H04N23/73Circuitry for compensating brightness variation in the scene by influencing the exposure time
    • H04N5/235
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2420/00Indexing codes relating to the type of sensors based on the principle of their operation
    • B60W2420/40Photo, light or radio wave sensitive means, e.g. infrared sensors
    • B60W2420/403Image sensing, e.g. optical camera
    • B60W2420/42
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2554/00Input parameters relating to objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30248Vehicle exterior or interior
    • G06T2207/30252Vehicle exterior; Vicinity of vehicle

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Automation & Control Theory (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Remote Sensing (AREA)
  • Mechanical Engineering (AREA)
  • Transportation (AREA)
  • Mathematical Physics (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Data Mining & Analysis (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Electromagnetism (AREA)
  • Studio Devices (AREA)
  • Image Analysis (AREA)
  • Traffic Control Systems (AREA)

Abstract

카메라를 이용하여 제 1 RGB 이미지를 획득하는 단계; 제 1 RGB 이미지의 명도 정보에 기초하여, 제 1 RGB 이미지 내에서 객체 인식이 불가능한 적어도 하나의 제 1 영역을 예측하는 단계; 동적 비전 센서를 통해 획득되는 객체 정보에 기초하여, 적어도 하나의 제 1 영역 중에서 객체가 존재하는 적어도 하나의 제 2 영역을 결정하는 단계; 적어도 하나의 제 2 영역과 관련하여 카메라의 촬영 설정 정보를 제어함으로써, 개선된 제 2 RGB 이미지를 획득하는 단계; 제 2 RGB 이미지 내에서 객체를 인식하는 단계를 포함하는 객체 인식 방법을 개시한다.

Description

자율 주행 장치의 객체 인식 방법 및 자율 주행 장치{METHOD FOR RECOGNIZING OBJECT AND AUTONOMOUS DRIVING DEVICE THEREFOR}
본 개시는 자율 주행 중에 주변의 객체를 인식하는 방법 및 이를 위한 자율 주행 장치에 관한 것이다.
자율주행자동차에 대한 관심이 커지면서 자율주행을 가능하게 해주는 기술들이 주목을 받고 있다. 운전자가 조작하지 않고 자동차가 스스로 움직이기 위해서는 ① 자동차 외부 환경을 인식하는 기술, ② 인식된 정보를 종합해 가속, 정지, 선회 등의 동작을 결정하고 주행 경로를 판단하는 기술, ③ 판단된 정보를 이용해 자동차의 움직임을 제어하는 기술 등이 필요하다. 자율주행이 되기 위해서는 모든 기술들이 유기적으로 결합돼야겠지만, 자동차의 외부 환경을 인식하는 기술이 점점 중요해지고 있다. 외부 환경을 인식하는 것이 자율주행의 첫 번째 요소일 뿐만 아니라, 외부 환경을 인식하기 위해서는 전기전자, IT기술과의 융합이 필요하기 때문이다.
외부 환경을 인식하는 기술은 크게 센서기반 인식기술과 연결기반 인식기술 두 가지로 분류될 수 있다. 자율주행을 위해 차량에 장착되는 센서는 초음파(Ultrasonic), 카메라(Camera), 레이다(Radar), 라이다(Lidar) 등이 있는데, 이들 센서들은 자동차에 장착되어 단독으로 또는 다른 센서와 같이 자동차의 외부 환경 및 지형을 인식하여 운전자와 차량에 정보를 제공한다.
자율주행을 위한 연결기반 인식기술은 V2X와 정밀 측위 기술이 있다. V2X는 Vehicle to Something의 약자로, 자동차간 통신하는 V2V(Vehicle to Vehicle), 인프라와 통신하는 V2I(Vehicle to Infrastructure), 보행자와 통신하는 V2P(Vehicle to Pedestrian) 등이 있다. V2X는 운행중인 자동차와 주위의 자동차, 교통 인프라, 보행자들을 연결해주는 무선 통신 기술이다. 연결된 통신망을 통해 자동차간 위치, 거리, 속도 등의 정보를 주고 받을 수 있고, 주변의 교통 정보 및 보행자의 위치 등의 정보를 자동차에게 제공할 수 있다.
일 실시예는, 동적 비전 센서에서 감지되는 객체 정보에 기반하여, 카메라의 촬영 설정 정보를 조절함으로써, 카메라를 통한 외부 객체의 인식률을 높이는 자율 주행 장치의 객체 인식 방법에 관한 것이다.
일 실시예에 따른 자율 주행 장치가 객체를 인식하는 방법은, 자율 주행 장치에 배치된 카메라를 이용하여 제 1 RGB 이미지를 획득하는 단계; 제 1 RGB 이미지의 명도 정보에 기초하여, 제 1 RGB 이미지 내에서 객체 인식이 불가능한 적어도 하나의 제 1 영역을 예측하는 단계; 자율 주행 장치에 배치된 동적 비전 센서(DVS: Dynamic Vision Sensor)를 통해 획득되는 객체 정보에 기초하여, 적어도 하나의 제 1 영역 중에서 객체가 존재하는 적어도 하나의 제 2 영역을 결정하는 단계; 적어도 하나의 제 2 영역과 관련하여 카메라의 촬영 설정 정보(photographic configuration information)를 제어함으로써, 개선된(enhanced) 제 2 RGB 이미지를 획득하는 단계; 및 제 2 RGB 이미지 내에서 객체를 인식하는 단계를 포함할 수 있다.
일 실시예에 따른 자율 주행 장치는, 카메라; 동적 비전 센서(DVS: Dynamic Vision Sensor); 및 적어도 하나의 프로세서를 포함하고, 적어도 하나의 프로세서는, 카메라를 통해 제 1 RGB 이미지를 획득하는 동작; 제 1 RGB 이미지의 명도 정보에 기초하여, 제 1 RGB 이미지 내에서 객체 인식이 불가능한 적어도 하나의 제 1 영역을 예측하는 동작; 동적 비전 센서를 통해 획득되는 객체 정보에 기초하여, 적어도 하나의 제 1 영역 중에서 객체가 존재하는 적어도 하나의 제 2 영역을 결정하는 동작; 적어도 하나의 제 2 영역과 관련하여 카메라의 촬영 설정 정보(photographic configuration information)를 제어함으로써, 개선된(enhanced) 제 2 RGB 이미지를 획득하는 동작; 및 제 2 RGB 이미지 내에서 상기 객체를 인식하는 동작을 수행할 수 있다.
일 실시예에 따른 컴퓨터 프로그램 제품은 카메라를 이용하여 제 1 RGB 이미지를 획득하는 동작; 제 1 RGB 이미지의 명도 정보에 기초하여, 제 1 RGB 이미지 내에서 객체 인식이 불가능한 적어도 하나의 제 1 영역을 예측하는 동작; 동적 비전 센서(DVS: Dynamic Vision Sensor)를 통해 획득되는 객체 정보에 기초하여, 적어도 하나의 제 1 영역 중에서 객체가 존재하는 적어도 하나의 제 2 영역을 결정하는 동작; 적어도 하나의 제 2 영역과 관련하여 카메라의 촬영 설정 정보(photographic configuration information)를 제어함으로써, 개선된(enhanced) 제 2 RGB 이미지를 획득하는 동작; 및 제 2 RGB 이미지 내에서 상기 객체를 인식하는 동작을 수행하도록 하는 프로그램을 저장할 수 있다.
도 1은 일 실시예에 따른 자율 주행 장치를 설명하기 위한 도면이다.
도 2는 일 실시예에 따른 자율 주행 장치의 객체 인식 방법을 설명하기 위한 순서도이다.
도 3은 일 실시예에 따른 RGB 이미지 내에서 결정되는 객체 인식 불가능 영역 및 관심 영역을 설명하기 위한 도면이다.
도 4는 일 실시예에 따른 카메라의 촬영 설정 정보를 설명하기 위한 도면이다.
도 5는 일 실시예에 따른 히스토그램을 이용하여 객체를 인식하는 방법을 설명하기 위한 순서도이다.
도 6은 일 실시예에 따른 히스토그램을 이용하여 RGB 이미지 내에 객체 인식 불가능 영역이 존재하는지 판단하는 동작을 설명하기 위한 도면이다.
도 7은 일 실시예에 따른 RGB 이미지에서 객체 인식 불가능 영역을 결정하는 동작을 설명하기 위한 도면이다.
도 8은 일 실시예에 따른 인공 지능 모델을 이용하여 객체를 인식하는 방법을 설명하기 위한 순서도이다.
도 9는 일 실시예에 따른 RGB 이미지와 DVS 이미지를 AI 프로세서에 적용하는 동작을 설명하기 위한 도면이다.
도 10은 일 실시예에 따른 자율 주행 장치가 개선된 RGB 이미지를 획득하는 동작을 설명하기 위한 도면이다.
도 11은 자율 주행 장치가 터널에 진입할 때 개선된 RGB 이미지를 획득하는 동작을 설명하기 위한 도면이다.
도 12는 역광에 의해 RGB 이미지 내에 객체 인식 불가능 영역이 존재하는 경우, 카메라의 촬영 설정 정보를 제어하는 동작을 설명하기 위한 도면이다.
도 13은 일 실시예에 따른 복수의 관심 영역의 우선 순위에 따라, 카메라의 촬영 설정 정보를 제어하는 방법을 설명하기 위한 순서도이다.
도 14는 일 실시예에 따른 복수의 관심 영역의 우선 순위를 설명하기 위한 도면이다.
도 15는 일 실시예에 따른 자율 주행 장치가 객체를 추적하는 방법을 설명하기 위한 순서도이다.
도 16은 자율 주행 장치가 동적 비전 센서에서 감지된 새로운 객체를 카메라로 인식하고 추적하는 동작을 설명하기 위한 도면이다.
도 17은 일 실시예에 따른 자율 주행 장치의 구성을 설명하기 위한 블록 구성도이다.
도 18은 일 실시예에 따른 프로세서의 블록 구성도이다.
도 19는 일 실시예에 따른 데이터 학습부의 블록 구성도이다.
도 20은 일 실시예에 따른 데이터 인식부의 블록 구성도이다
도 21는 일 실시예에 따른 자율 주행 장치 및 서버가 서로 연동함으로써 데이터를 학습하고 인식하는 예시를 나타내는 도면이다.
본 명세서에서 사용되는 용어에 대해 간략히 설명하고, 본 발명에 대해 구체적으로 설명하기로 한다.
본 발명에서 사용되는 용어는 본 발명에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 발명에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 발명의 전반에 걸친 내용을 토대로 정의되어야 한다.
명세서 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다. 또한, 명세서에 기재된 "...부", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다.
아래에서는 첨부한 도면을 참고하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
도 1은 일 실시예에 따른 자율 주행 장치를 설명하기 위한 도면이다.
일 실시예에 따른 자율 주행 장치(100)는 외부로부터 입력되는 제어 명령에 의존하지 않고 자율 주행할 수 있는 장치로서, 예를 들어, 자율 주행 차량, 자율 비행 장치(예컨대, 드론, 무인 항공기), 자율 주행 로봇(예컨대, 청소 로봇, 재난 구조 로봇 등) 등을 포함할 수 있으나, 이에 한정되는 것은 아니다. 이하에서는 설명의 편의상 자율 주행 장치(100)가 자율 주행 차량인 경우를 예로 들어 설명하기로 한다.
일 실시예에 의하면, 자율 주행 장치(100)는, 카메라(101), 동적 비전 센서(102), 프로세서(120)를 포함할 수 있으나, 이에 한정되는 것은 아니다. 예를 들어, 자율 주행 장치(100)는 라이다 센서, 레이더 센서, 관성 센서(IMU), 초음파 센서, 적외선 센서, 위치 센서(예컨대, GPS 모듈), 지자기 센서, 가속도 센서, 자이로스코프 센서 등을 더 포함할 수 있다. 다른 실시예에 의하면, 자율 주행 장치(100)는 통신부(예컨대, 블루투스 통신부, BLE 통신부, NFC 통신부, 지그비 통신부, UWB 통신부, 이동 통신부), 구동부(전원공급부, 추진부, 주행부, 주변 장치부), 출력부, 저장부 등을 더 포함할 수 있다. 자율 주행 장치(100)의 구성에 대해서는 도 17을 참조하여 후에 자세히 살펴보기로 한다.
일 실시예에 따른 카메라(101)는, 자율 주행 장치(100)로부터 소정 거리 내에 존재하는 적어도 하나의 객체를 인식할 수 있다. 이때, 객체를 인식하기 위한 카메라(101)는 한 개일 수도 있고 복수 개일 수도 있다. 예를 들어, 카메라(101)는 전방 카메라, 후방 카메라 및 측면 카메라 중 적어도 하나일 수 있으며, 카메라(101)는 스테레오 카메라 또는 어라운드 뷰 카메라일 수도 있다.
한편, 카메라(101)를 통해 인식되는 객체는 정적(靜的) 환경 요소(예컨대, 차선, 운전가능도로, 교통표지판, 신호등, 터널, 다리, 가로수 등)와 동적(動的) 환경 요소(예컨대, 차량, 보행자, 이륜차 등)를 포함할 수 있으나, 이에 한정되는 것은 아니다. 예를 들어, 카메라(101)를 통해 인식되는 객체는, 위치 인식 기술 (예컨대, SLAM(Simultaneous localization and mapping) 또는 VIO(Visual Inertial Odometry))에 적용되는 특징(feature)(예컨대, 특징 점, 특징 선)을 포함할 수 있다.
하지만, 일반적인 카메라(101)의 다이나믹 레인지는 높지 않으므로, 카메라(101)는 아주 어두운 곳이나 아주 밝은 곳에서의 객체를 인식하기 어렵다. 예를 들어, 자율 주행 장치(100)에 배치된 카메라(101)는 터널 진입 시(100-1), 터널 안의 어두운 영역(10)에 존재하는 객체를 감지하기 어렵다. 또한, 자율 주행 장치(100)에 배치된 카메라(101)는 터널 진출 시(100-2) 터널 밖의 밝은 영역(20)에 존재하는 객체를 감지하기 어렵고, 역광(100-3)에 의해 밝게 빛나는 영역(30)에 존재하는 객체를 감지하기도 어렵다. 한편, 자율 주행 장치(100)가 조명 변화가 심한 지역을 지나거나, 음영지역을 통과하거나, 야간에 고속으로 이동하거나, 배경색과 객체 색이 비슷한 경우에도, 카메라(101)는 객체를 정확히 인지하기 어렵다.
따라서, 자율 주행 장치(100)의 안전한 주행을 위해, 저조도 환경 또는 역광에서 카메라(101)의 객체 인식률을 높일 필요가 있다. 예를 들어, 일 실시예에 의하면, 자율 주행 장치(100)는 동적 비전 센서(102)에서 검출되는 정보를 이용하여, 카메라(101)의 촬영 설정 정보를 제어함으로써, 카메라(101)의 객체 인식률을 높일 수 있다.
동적 비전 센서(102)는, 고속으로 비전 변화를 캡처하는 이벤트 기반 카메라로, 움직이는 객체에 대한 이미지 데이터를 획득할 수 있는 센서이다. 예를 들어, 동적 비전 센서(102)는 픽셀 단위에서 움직임에 의해 국소적인 변화가 있을 때에만 이미지 데이터를 프로세서(120)로 전송하게 된다. 즉, 동적 비전 센서(102)는 움직이는 이벤트가 발생할 때 이미지 데이터를 프로세서(120)에 전송할 수 있다.
동적 비전 센서(102)는 일반적인 시각 인식 시스템이 빠른 움직임에 취약하다는 문제점을 해결할 수 있다. 동적 비전 센서(102)는 프레임 단위로 데이터를 받는 것이 아니라 낱낱의 픽셀 기준(per-pixel basis)으로 데이터를 받기 때문에 블러(blur) 현상을 극복할 수 있다.
또한, 동적 비전 센서(102)는 마이크로 초 단위의 해상도를 가질 수 있다. 다시 말해 동적 비전 센서(102)는 1초당 수천 프레임을 찍는 초고속 카메라보다 더 뛰어난 시간 분해능을 가질 수 있다(예컨대, 초고속 프레임 > 1K FPS). 뿐만 아니라 동적 비전 센서(102)는 전력 소모 및 데이터 저장 요구 조건 또한 매우 줄어들었기 때문에 다이나믹 레인지(센서가 구분할 수 있는 밝기의 범위) 또한 획기적으로 늘게 되었다. 따라서, 동적 비전 센서(102)는 어두운 곳에서도 약간의 빛만 있으면 객체의 움직임을 감지할 수 있다.
일 실시예에 의하면, 동적 비전 센서(102)는 카메라(101)와 근접한 위치에 배치될 수 있다. 또한, 동적 비전 센서(102)가 카메라(101)와 유사한 영역의 이미지를 획득하도록 동적 비전 센서(102)의 FOV(Field of view) 또는 동적 비전 센서(102)의 포즈가 조절될 수 있다. 한편, 일 실시예에 의하면, 동적 비전 센서(102)의 프레임 레이트는 카메라(101)의 프레임 레이트와 동일하거나 유사하게 설정될 수 있으나, 이에 한정되는 것은 아니다.
일 실시예에 의하면, 자율 주행 장치(100)에 배치된 동적 비전 센서(102)는 자율 주행 장치(100)가 주행하는 동안 픽셀 단위에서의 국소적인 변화를 감지하여 프로세서(120)로 감지된 정보를 전달해 줄 수 있다. 이 경우, 동적 비전 센서(102)는 카메라(101)보다 다이나믹 레인지가 넓으므로, 프로세서(120)는 카메라(101)에서 검출되지 않은 객체에 대한 정보를 동적 비전 센서(102)로부터 수신할 수 있다. 이 경우, 프로세서(120)는 카메라(101)에서는 검출되지 않았지만 동적 비전 센서(102)에서 검출된 객체를 카메라(101)에서도 검출할 수 있도록 카메라(101)의 촬영 설정 정보를 제어할 수 있다. 일 실시예에 의하면, 프로세서(120)는 일반적인 이미지 신호 프로세서(ISP) 또는 인공지능 프로세서(AI 프로세서)를 포함할 수 있다.
이하에서는, 자율 주행 장치(100)의 프로세서(120)가 동적 비전 센서(102)에서 검출되는 정보를 이용하여, 카메라(101)의 촬영 설정 정보를 제어함으로써, 카메라(101)의 객체 인식률을 높이는 방법에 대해서 도 2를 참조하여, 자세히 살펴보기로 한다.
도 2는 일 실시예에 따른 자율 주행 장치의 객체 인식 방법을 설명하기 위한 순서도이다.
단계 S210에서, 자율 주행 장치(100)는, 카메라(101)를 이용하여 제 1 RGB 이미지를 획득할 수 있다.
일 실시예에 의하면, 제 1 RGB 이미지는 자율 주행 장치(100) 주변에 있는 적어도 하나의 객체를 인식하기 위한 이미지로서, 적어도 하나의 프레임으로 구성될 수 있다. 예를 들어, 제 1 RGB 이미지가 정지 영상인 경우 제 1 RGB 이미지는 하나의 프레임으로 구성될 수 있고, 제 1 RGB 이미지가 동영상인 경우, 제 1 RGB 이미지는 복수의 프레임으로 구성될 수 있다.
일 실시예에 의하면, 자율 주행 장치(100)는 주행 중에 카메라(101)를 이용하여 제 1 RGB 이미지를 획득할 수도 있고, 주차 또는 정차 중에 카메라(101)를 이용하여 제 1 RGB 이미지를 획득할 수도 있다.
단계 S220에서, 자율 주행 장치(100)는, 제 1 RGB 이미지의 명도 정보에 기초하여, 제 1 RGB 이미지 내에서 객체 인식이 불가능한 적어도 하나의 제 1 영역을 예측할 수 있다. 여기서, 명도 정보는 제 1 RGB 이미지 내 각 픽셀의 밝기 정도를 나타내는 정보일 수 있다. 명도 정보는 각 픽셀의 밝기 값을 포함할 수도 있고, 제 1 기준 밝기 값보다 어두운 영역에 관한 정보, 제 2 기준 밝기 값보다 밝은 영역에 관한 정보 등을 포함할 수 있으나, 이에 한정되는 것은 아니다.
일 실시예에 의하면, 자율 주행 장치(100)는 제 1 RGB 이미지에 객체 인식 불가능 영역이 존재할 확률이 임계 값을 초과하는지 판단할 수 있다. 객체 인식 불가능 영역은 명도 값이 임계 범위(예컨대, 50~200)를 벗어나는 영역(예컨대, 너무 어둡거나 너무 밝은 영역)을 의미할 수 있다. 예를 들어, 자율 주행 장치(100)는 제 1 RGB 이미지의 히스토그램을 이용하여, 제 1 RGB 이미지에 객체 인식 불가능 영역이 존재할 확률을 결정할 수 있다. 제 1 RGB 이미지의 히스토그램 분포가 0 또는 255에 치우치는 경우, 자율 주행 장치(100)는 제 1 RGB 이미지에 객체 인식 불가능 영역이 존재할 확률이 높다고 판단할 수 있다. 자율 주행 장치(100)가 히스토그램을 이용하는 동작에 대해서는 도 5를 참조하여 후에 좀 더 자세히 살펴보기로 한다.
일 실시예에 의하면, 자율 주행 장치(100)는, 제 1 RGB 이미지와 동적 비전 센서(102)를 통해 획득되는 DVS 이미지의 차이에 기초하여, 제 1 RGB 이미지에 객체 인식 불가능 영역이 존재할 확률을 결정할 수도 있다. 예를 들어, DVS 이미지에서 검출되는 에지 정보(또는 강도(intensity) 정보)와 제 1 RGB 이미지에서 검출되는 에지 정보(또는 강도 정보)의 차이가 클수록, 자율 주행 장치(100)는 제 1 RGB 이미지에 객체 인식 불가능 영역이 존재할 확률이 높다고 판단할 수 있다.
일 실시예에 의하면, 자율 주행 장치(100)는, 복수의 RGB 이미지를 학습한 인공 지능 모델을 이용하여, 제 1 RGB 이미지에 객체 인식 불가능 영역이 존재할 확률을 결정할 수도 있다. 자율 주행 장치(100)가 인공 지능 모델을 이용하는 동작에 대해서는 도 8을 참조하여 후에 자세히 살펴보기로 한다.
자율 주행 장치(100)는, 제 1 RGB 이미지에 객체 인식 불가능 영역이 존재할 확률이 임계 값보다 크다고 판단된 경우, 제 1 RGB 이미지의 명도 정보를 이용하여, 제 1 RGB 이미지 내에서 객체 인식이 불가능한 적어도 하나의 제 1 영역을 예측할 수 있다. 여기서, 객체 인식이 불가능한 적어도 하나의 제 1 영역은, 객체 인식이 불가능한 정도가 임계 값을 초과하는 영역일 수 있다. 예를 들어, 자율 주행 장치(100)는, 제 1 RGB 이미지 내에서 명도 값(brightness value)이 임계 범위를 벗어나는 영역(예컨대, 너무 어두운 영역 또는 너무 밝은 영역)을 객체 인식이 불가능한 적어도 하나의 제 1 영역으로 예측할 수 있다. 따라서, 객체 인식이 불가능한 적어도 하나의 제 1 영역에서는 특징(feature)이 거의 검출되지 않을 수 있다. 이하에서는, 설명의 편의상 객체 인식이 불가능한 적어도 하나의 제 1 영역을 객체 인식 불가능 영역이라 표현할 수도 있다.
단계 S230에서, 자율 주행 장치(100)는, 자율 주행 장치(100)에 배치된 동적 비전 센서(102)를 통해 획득되는 객체 정보에 기초하여, 적어도 하나의 제 1 영역 중에서 객체가 존재하는 적어도 하나의 제 2 영역을 결정할 수 있다. 이하에서는 설명의 편의상, 적어도 하나의 제 2 영역을 관심 영역으로 표현할 수도 있다.
일 실시예에 의하면, 자율 주행 장치(100)는 동적 비전 센서(102)에서 통해 객체 정보를 획득할 수 있다. 여기서, 객체 정보는 동적 비전 센서(102)에서 감지되는 객체에 관한 정보로서, DVS 이미지 및 DVS 이미지에서 검출되는 적어도 하나의 객체에 대한 위치 정보 중 적어도 하나를 포함할 수 있으나, 이에 한정되는 것은 아니다.
일 실시예에 의하면, 자율 주행 장치(100)는, DVS 이미지와 제 1 RGB 이미지를 비교하여, 제 1 RGB 이미지의 적어도 하나의 제 1 영역 중에서 객체가 존재할 확률이 임계 값(예컨대, 98%)보다 큰 영역을 관심 영역으로 결정할 수 있다. 예를 들어, 관심 영역은 DVS 이미지 상에서는 특징 정보가 많이 나타나지만 제 1 RGB 이미지에서는 특징 정보가 많이 나타나지 않는 영역일 수 있다.
예를 들어, 도 3을 참조하여, 객체 인식 불가능 영역 및 관심 영역에 대해서 살펴보기로 한다. 도 3의 300-1을 참조하면, 자율 주행 장치(100)는, 터널을 통과하면서 RGB 이미지(310)를 획득할 수 있다. 이때, RGB 이미지(310) 상에서 터널 출구 쪽은 밝게 나타나고 터널 안 쪽은 어둡게 나타날 수 있다. 자율 주행 장치(100)는, RGB 이미지(310)의 히스토그램 또는 인공 지능 모델을 이용하여, RGB 이미지(310)를 분석할 수 있다. 자율 주행 장치(100)는, 분석 결과, 명도 값이 임계 범위를 벗어나는 제 1-1 영역(311), 제 1-2 영역(312), 제 1-3 영역(313), 제 1-4 영역(314), 제 1-5 영역(터널 출구 영역)(315), 제 1-6 영역(316), 제 1-7 영역(317)을 객체 인식 불가능 영역들로 결정할 수 있다. 이때, 제 1-1 영역(311), 제 1-2 영역(312), 제 1-3 영역(313), 제 1-6 영역(316), 제 1-7 영역(317)은 터널 안 영역으로 매우 어두운 영역일 수 있으며, 제 1-4 영역(314), 제 1-5 영역(315)은 터널 출구에서 들어오는 빛 때문에 매우 밝게 나타나는 영역일 수 있다.
도 3의 300-2를 참조하면, 자율 주행 장치(100)는 RGB 이미지(310)의 제 1-1 영역(311) 내지 제 1-7 영역(317)을 DVS 이미지(320)상의 대응 영역과 각각 비교할 수 있다. 이때, 터널 출구 영역(315)은 RGB 이미지(310) 상에서는 밝아서 객체가 검출되지 않았는데, DVS 이미지의 대응 영역(321)에서는 객체가 검출될 수 있다. 동적 비전 센서(102)가 카메라(101)보다 다이나믹 레인지가 넓으므로, 동적 비전 센서(102)는 밝은 영역에서의 객체도 감지할 수 있다.
따라서, 자율 주행 장치(100)는 현재 카메라(101)를 통해서는 객체 인식이 불가능하지만 동적 비전 센서(102)를 통해 객체가 감지된 영역(예컨대, 터널 출구 영역(315))을 관심 영역으로 결정할 수 있다.
단계 S240에서, 자율 주행 장치(100)는, 적어도 하나의 제 2 영역(설명의 편의상, 관심 영역이라 함)과 관련하여, 카메라(101)의 촬영 설정 정보(photographic configuration information)를 제어함으로써, 개선된(enhanced) 제 2 RGB 이미지를 획득할 수 있다. 여기서, 카메라(101)의 촬영 설정 정보는, 노출 정보, 포커스 정보, 화이트 밸러스 정보, 모드 정보 등을 포함할 수 있으나, 이에 한정되는 것은 아니다. 또한, 개선된 제 2 RGB 이미지는, 제 1 RGB 이미지의 제 2 영역에 대응하는 영역에서 객체 검출이 가능하도록 명도가 변경된 이미지를 의미할 수 있다.
일 실시예에 의하면, 자율 주행 장치(100)는, 카메라(101)의 현재 촬영 설정 정보를 확인하고, 관심 영역의 명도가 변경될 수 있도록 촬영 설정 정보를 제어할 수 있다. 예를 들어, 자율 주행 장치(100)는, 관심 영역에 대한 노출, 포커스 및 화이트 밸런스 중 적어도 하나를 제어할 수 있다. 특히, 자율 주행 장치(100)는, 카메라의 센서 감도(GAIN), 조리개 및 노출 시간 중 적어도 하나를 조절함으로써, 관심 영역에 대한 노출 값을 제어할 수 있다. 예컨대, 관심 영역이 어두운 영역인 경우, 자율 주행 장치(100)는, 센서 감도(Gain), 조리개, 노출 시간을 적절히 조절하여, 개선된 제 2 RGB 이미지에서는 관심 영역이 밝게 나타나도록 제어할 수 있다. 반대로 관심 영역이 밝은 영역인 경우, 자율 주행 장치(100)는, 센서 감도(Gain), 조리개, 노출 시간을 적절히 조절하여, 개선된 제 2 RGB 이미지에서는 관심 영역이 어둡게 나타나도록 제어할 수 있다.
도 4를 참조하면, 조리개(410)는 빛이 렌즈를 통과하는 구멍의 크기를 의미한다. 조리개(410)는 조일수록(오른쪽) 심도가 깊어져서 근경부터 원경까지 초첨이 맞는 이미지가 나오고, 개방할수록(왼쪽) 심도가 얕아져서 일명 아웃포커싱이라 부르는, 피사체와 배경이 분리되는 이미지가 나온다. 셔터 속도(노출 시간)(420)는 빠를수록(왼쪽) 빨리 움직이는 대상을 정지시키는 이미지가 나오고, 느릴수록(오른쪽) 블러 처리된 이미지가 나온다. ISO 감도(센서 감도)(430)는 낮을수록(왼쪽) 노이즈가 적은 이미지가 나온다. ISO 감도(430)는 높을수록 (오른쪽) 노이즈가 많아지며, 어두운 환경에서도 흔들림 없는 이미지를 찍을 수 있게 해준다.
ISO 감도(430)는 낮을수록(왼쪽) 명암대비가 크게 표현된다.  반대로 ISO 감도(430)는   높을수록 명암대비차를 포용하여 부드러운 이미지를 만든다.  그리고 낮은 ISO 감도(430)의 필름입자는 가늘어서 선명한 이미지를 만들고, 높은 ISO 감도(430)의 필름입자는 굵어서 거친 이미지가 나온다.
따라서, 일 실시예에 의하면, 자율 주행 장치(100)는 관심 영역이 어두운 경우, 카메라(101)의 감도(430)를 높이거나, 셔터 속도(420)를 느리게 제어할 수 있다. 반면에, 자율 주행 장치(100)는 관심 영역이 밝은 경우, 카메라(101)의 감도(430)를 낮출 수 있다.
한편, 일 실시예에 의하면, 관심 영역이 역광에 의해 밝게 빛나는 영역인 경우, 자율 주행 장치(100)는, 측광 모드를 변경(예컨대, 평가 측광(Evaluative metering), 부분측광(partial metering), 중앙부 중점 평균 측광(Center weighted average metering, 스팟 측광(spot metering) 중 하나로 변경)하거나, 측광을 위한 측거점(AF Point)을 변경할 수 있다. 예를 들어, 자율 주행 장치(100)는 관심 영역이 밝은 영역인 경우, 측거점을 관심 영역으로 이동시켜, 전체적으로 어두운 제 2 RGB 이미지를 획득할 수 있다.
또한, 일 실시예에 의하면, 자율 주행 장치(100)는, 광역 역광 보정(WDR: wide dynamic range) 기능을 선택할 수도 있다. 광역 역광 보정(WDR: wide dynamic range)은 밝은 곳과 어두운 곳의 이미지를 동시에 잘 볼 수 있게 구현해 주는 기술이다. 밝은 영역에서 고속 셔터 영상신호와 어두운 영역에서의 저속 셔터 영상 신호를 하나로 모아 영상화함으로써 역광의 문제점을 해결하여 선명한 영상을 구현하는 기능이다.
일 실시예에 의하면, 자율 주행 장치(100)의 AI 프로세서가 촬영 설정 정보를 제어하기 위해 학습된 인공 지능 모델을 이용하여, 카메라(101)의 촬영 설정 정보를 제어할 수도 있다. 자율 주행 장치(100)가 인공 지능 모델을 이용하여, 카메라(101)의 촬영 설정 정보를 제어하는 동작에 대해서는 도 8을 참조하여 후에 자세히 살펴보기로 한다.
단계 S250에서, 자율 주행 장치(100)는, 제 2 RGB 이미지 내에서 객체를 인식할 수 있다.
일 실시예에 의하면, 자율 주행 장치(100)는 제 2 RGB 이미지의 관심 영역에서 객체를 구성하는 적어도 하나의 특징(feature)를 추출할 수 있다. 제 2 RGB 이미지의 관심 영역은 제 1 RGB 이미지의 관심 영역에 대응하는 영역일 수 있다. 자율 주행 장치(100)는 추출된 적어도 하나의 특징을 이용하여, 제 2 RGB 이미지의 관심 영역에서 객체를 인식할 수 있다. 일 실시예에 의하면, 객체를 인식하는 것은 객체의 종류를 결정하는 것을 포함할 수 있다.
일 실시예에 의하면, 자율 주행 장치(100)는 템플릿 정보 또는 인공 지능 모델을 이용하여, 제 1 RGB 이미지의 관심 영역에 대응하는 제 2 RGB 이미지의 관심 영역에서 객체를 인식할 수 있다. 예를 들어, 자율 주행 장치(100)는, 카메라(101)를 통해 획득되는 제 2 RGB 이미지를 분석하여, 객체의 종류를 결정할 수 있다. 예컨대, 객체가 외부 차량인 경우, 자율 주행 장치(100)는, 제 2 RGB 이미지에 포함된 외부 차량의 외곽선을 특징(feature)으로 검출할 수 있다. 자율 주행 장치(100)는, 검출된 외부 차량의 외곽선을 기 정의된 템플릿(template)과 비교하여, 외부 차량의 종류, 외부 차량의 명칭 등을 검출할 수 있다. 예를 들어, 자율 주행 장치(100)는, 외부 차량의 외곽선이 버스의 템플릿과 유사한 경우, 외부 차량을 버스로 인식할 수 있다. 또한, 자율 주행 장치(100)는 버스의 경우 크기가 크고, 무게가 많이 나가므로, 외부 차량의 종류를 대형 차량으로 결정할 수도 있다.
일 실시예에 의하면, 자율 주행 장치(100)는, 정밀 지도를 이용하여, 제 2 RGB 이미지의 관심 영역에서 객체를 인식할 수도 있다. 여기서, 정밀 지도는 차량이 주행하는데 필요한 도로 정보를 포함할 뿐 아니라 기존 지도보다 10배 이상 정밀해 실제 도로와 10~20cm 이하의 오차를 갖는 지도를 의미할 수 있다. 예를 들어, 자율 주행 장치(100)는 주변의 정밀 지도를 호출할 수 있다. 그리고 자율 주행 장치(100)는 제 2 RGB 이미지를 호출된 정밀 지도와 비교하여, 제 2 RGB 이미지의 관심 영역에서 정적인 객체를 인식할 수 있다. 예를 들어, 자율 주행 장치(100)는 제 2 RGB 이미지에서 추출된 특징들(feature)을 정밀 지도와 비교하여, 객체가 차선, 정지선, 도로 표식, 도로 구조물 등이라는 것을 인식할 수 있다.
한편, 자율 주행 장치(100)는, 정밀 지도를 이용하여, 인식된 객체의 현재 위치(예컨대, 절대적 위치), 인식된 객체가 외부 차량인 경우 외부 차량이 주행 중인 주행 차선(예컨대, 1차선) 등의 식별할 수도 있다.
일 실시예에 의하면, 자율 주행 장치(100)는, 인식된 객체가 동적인 객체(예컨대, 외부 차량)인 경우, 카메라(101)를 통해 인식된 객체를 추적할 수 있다. 객체 추적(object tracking)은 일련의 영상 프레임 내 객체의 크기, 색, 모양, 윤곽선 등 특징적인 정보 간의 유사도를 이용하여 객체의 변화를 추적하는 것을 의미한다.
일 실시예에 의하면, 동적 비전 센서(102)는 자율 주행 장치(100) 주변에 나타나는 새로운 객체를 카메라(101)보다 먼저 감지할 수 있다. 따라서, 일 실시예에 의하면, 자율 주행 장치(100)는 동적 비전 센서(102)를 통해 새로운 객체가 감지된 경우, 새로운 객체가 감지된 위치에 기초하여, 카메라(101)의 RGB 이미지 상에서 새로운 객체가 인식될 가능성이 임계 값보다 큰 후보 영역을 결정할 수 있다. 그리고 자율 주행 장치(100)는 후보 영역에 대한 영상 처리를 통해 RGB 이미지 상에서 새로운 객체를 인식하고, 추적할 수 있다. 이 경우, 자율 주행 장치(100)는 카메라(101)를 통해 새로운 객체를 인식하기 위해 RGB 이미지의 전 영역에 대한 영상 처리를 하지 않고, 후보 영역에 대해서만 영상 처리를 하므로, 빠르게 새로운 객체를 인식할 수 있다. 자율 주행 장치(100)가 객체를 인식하고 추적하는 동작에 대해서는 도 15를 참조하여 후에 좀 더 자세히 살펴보기로 한다.
일 실시예에 의하면, 자율 주행 장치(100)는 제 2 RGB 이미지가 복수의 프레임으로 구성되는 경우, 복수의 프레임 각각에서 인식되는 객체에 포함된 특징(feature)을 추적(tracking)하여, 자율 주행 장치(100)의 위치 정보를 획득할 수도 있다. 예를 들어, 자율 주행 장치(100)는, 제 2 RGB 이미지에서 인식된 객체 포함된 특징(feature)을 비주얼 오도메트리(예컨대, VIO 또는 스테레오 카메라를 이용한 비주얼 오도메트리 등)에 적용하기 위한 특징(feature)으로 이용할 수 있다. 여기서, 비주얼 오도메트리는 이전 프레임과 현재 프레임의 차이를 이용하여 이동 장치의 위치변화를 예측하는 기술이다.
일 실시예에 의하면, 모든 픽셀에 대해서 이전 프레임과 현재 프레임의 변화를 계산하는 것은 매우 높은 연산량이 필요하기 때문에, 자율 주행 장치(100)는 화면 변화를 대표할 수 있는 선이나 코너와 같은 특징을 각 프레임에서 추출하고, 추출된 특징을 정합할 수 있다.
일 실시예에 의하면, 자율 주행 장치(100)는, 이전 프레임에서 추출된 특징점을 현재 프레임에서 정합시킴으로써, 화면에서의 특징점의 위치 변화를 예측할 수 있는 모션벡터를 생성할 수 있다. 이 모션벡터는 2차원 공간(x, y)에서의 영상 변화이므로, 자율 주행 장치(100)는, 스테레오 카메라의 거리정보(depth) 또는 관성 센서(IMU)의 거리 정보를 첨가하여, 모션 벡터를 3차원 공간(x, y, z)의 좌표로 변환할 수 있다. 자율 주행 장치(100)는, 정합된 특징점 집합에서 이전 프레임의 특징점에 해당하는 3차원 좌표와 현재 프레임에서 대응하는 특징점의 3차원 좌표를 이용하여, 실제 공간의 변화량을 의미하는 3차원 모션벡터를 계산할 수 있다. 자율 주행 장치(100)는, 3차원 모션벡터를 이용하여, 자율 주행 장치(100)의 현재 위치를 인식할 수 있다.
실외환경의 경우, 바닥의 재질이 균일하지 않을 뿐만 아니라, 평평하지도 않기 때문에 엔코더를 이용한 위치인식은 사용하기 어렵고, GPS(Global Positioning System)의 경우 터널과 같은 인공구조물이나 건물에 둘러싸인 환경에서는 신호를 받지 못하는 단점이 있고, 6자유도 INS(Inertial Navigation System)는 매우 고가라서 실용적으로 사용하기에는 어려움이 있다. 따라서, 일 실시예에 의하면, 제 2 RGB 이미지에서 추출되는 특징(feature)를 이용하여, 자율 주행 장치(100)의 위치를 인식함으로써, GPS와 INS의 단점을 보완할 수 있다.
일 실시예에 의하면, 자율 주행 장치(100)는, 비주얼 오도메트리를 통해 인식된 위치 정보에 기초하여 지도를 생성할 수도 있다.
일 실시예에 의하면, 자율 주행 장치(100)는, 제 2 RGB 이미지에서 인식된 객체에 관한 정보에 기초하여, 자율 주행 장치(100)의 경로를 결정할 수 있다. 예를 들어, 자율 주행 장치(100)는, 제 2 RGB 이미지에서 인식된 객체가 장애물인 경우, 장애물을 피하도록 움직임을 계획할 수 있다. 예컨대, 자율 주행 장치(100)는 차선을 변경하거나, 속도를 줄일 수 있다. 또한, 제 2 RGB 이미지에서 인식된 객체가 정차 신호등인 경우, 자율 주행 장치(100)는, 정지선 앞에서 정차할 수 있도록 경로를 계획할 수 있다.
따라서, 일 실시예에 의하면, 자율 주행 장치(100)는, 조명 변화가 심한 환경에서도 동적 비전 센서에서 감지되는 정보에 기초하여 카메라(101)의 촬영 설정 정보를 제어함으로써, 카메라(101)의 객체 인식률을 높일 수 있다. 또한, 카메라(101)의 객체 인식률이 높아짐에 따라, 현재 위치 인식률, 경로 계획의 정밀성, 객체 추적률도 향상될 수 있다.
이하에서는, 자율 주행 장치(100)가 히스토그램을 이용하는 동작에 대해서 도 5를 참조하여 자세히 살펴보기로 한다.
도 5는 일 실시예에 따른 히스토그램을 이용하여 객체를 인식하는 방법을 설명하기 위한 순서도이다.
단계 S500에서, 자율 주행 장치(100)는, 카메라(101)를 이용하여 제 1 RGB 이미지를 획득할 수 있다.
단계 S500은 도 2의 단계 S210에 대응되므로, 구체적인 설명은 생략하기로 한다.
단계 S510에서, 자율 주행 장치(100)는, 제 1 RGB 이미지를 분석하여, 제 1 RGB 이미지의 히스토그램을 획득할 수 있다. 히스토그램은 이미지의 밝기의 분포를 그래프로 표현한 방식이다. 예를 들어, 히스토그램은 0~255의 명암 값의 범위를 가지고 있으며, 각 명암 값의 빈도 수(픽셀 수)를 높이로 나타낼 수 있다. 즉, 히스토그램의 수평축은 명도 값으로 나타나고, 히스토그램의 수직 축은 픽셀의 수로 나타날 수 있다. 따라서, 제 1 RGB 이미지가 전체적으로 어두운 경우, 0 쪽에 치우친 히스토그램이 획득될 수 있으며, 제 1 RGB 이미지가 전체적으로 밝은 경우 255에 치우친 히스토그램이 획득될 수 있다.
단계 S520에서, 자율 주행 장치(100)는, 제 1 RGB 이미지의 히스토그램을 이용하여, 제 1 RGB 이미지 내에서 객체 인식 불가능 영역이 존재하는지 판단할 수 있다.
일 실시예에 의하면, 자율 주행 장치(100)는, 히스토그램의 분포가 고르지 않고, 좌측으로 치우치거나 우측으로 치우치는 경우, 객체 인식 불가능 영역이 존재한다고 판단할 수 있다.
예를 들어, 도 6을 참조하면, 제 1 히스토그램(610)의 경우, 명도 분포가 고르지 않고, 좌측과 우측에 치우친 것을 알 수 있다. 이 경우, 자율 주행 장치(100)는, 제 1 RGB 이미지는 아주 밝게 나타나는 영역과 아주 어둡게 나타나는 영역으로 대부분 구성될 수 있으므로, 제 1 RGB 이미지에는 객체 인식 불가능 영역이 존재할 확률이 높다고 판단할 수 있다. 반면에 제 2 히스토그램(620)의 경우, 명도 분포가 0부터 255까지 고르게 나타나므로, 자율 주행 장치(100)는 제 1 RGB 이미지에는 객체 인식 불가능 영역이 존재할 확률이 낮다고 판단할 수 있다.
단계 S530에서, 자율 주행 장치(100)는, 객체 인식 불가능 영역이 존재하지 않는 경우, 카메라(101)의 촬영 설정 정보를 변경하지 않을 수 있다. 즉, 자율 주행 장치는 카메라(101)의 현재 촬영 설정 정보에 기초하여 계속 RGB 이미지를 획득할 수 있다. 단계 S535에서, 자율 주행 장치(100)는 제 1 RGB 이미지에 객체 인식 불가능 영역이 존재하지 않으므로, 제 1 RGB 이미지에서 객체를 인식할 수 있다.
단계 S540에서, 자율 주행 장치(100)는, 객체 인식 불가능 영역이 존재하는 경우, 제 1 RGB 이미지 내에서 객체 인식이 불가능한 적어도 하나의 제 1 영역(객체 인식 불가능 영역)을 예측할 수 있다. 여기서 객체 인식이 불가능한 적어도 하나의 제 1 영역은 명도 값이 임계 범위를 벗어나는 영역일 수 있다.
제 1 RGB 이미지가 히스토그램으로 변환될 때 제1 RGB 이미지의 모든 공간적인 정보는 사라진다. 즉, 히스토그램은 각 명도 값을 가지고 있는 픽셀들의 개수를 나타내지만, 그 픽셀들이 어디에 위치하는지에 대해서는 전혀 정보를 주지 않는다. 따라서, 자율 주행 장치(100)는, 제 1 RGB 이미지 상에서 객체 인식 불가능 영역을 구분하기 위해, 히스토그램을 이용하여, 임계 값을 결정할 수 있다. 예를 들어, 자율 주행 장치(100)는, 히스토그램을 분석하여, 너무 어두워서 객체 인식이 불가능한 영역을 검출하기 위한 제 1 기준 값을 결정하거나, 너무 밝아서 객체 인식이 불가능한 영역을 검출하기 위한 제 2 기준 값을 결정할 수 있다.
예를 들어, 도 7을 참조하면, 제 1 RGB 이미지의 히스토그램(700)은 0~70사이의 명도 값을 갖는 픽셀들과 240~250 사이의 명도 값을 갖는 픽셀들로 구분될 수 있다. 따라서, 자율 주행 장치(100)는 제 1 RGB 이미지 상에서 어두워서 객체 인식이 불가능한 영역(710)을 결정하기 위한 제 1 기준 값(701)으로 '80'을 결정할 수 있다. 이때, 자율 주행 장치(100)는 명도 값이 80보다 작은 값을 갖는 픽셀은 '1'로 표현하고, 명도 값이 80이상인 픽셀은 '0'으로 표현함으로써, 어두워서 객체 인식이 불가능한 영역(710)을 결정할 수 있다. 또한, 자율 주행 장치(100)는 제 1 RGB 이미지 상에서 밝아서 객체 인식이 불가능한 영역(720)을 결정하기 위한 제 2 기준 값(702)으로 '230'을 결정할 수 있다. 이때, 자율 주행 장치(100)는 명도 값이 230보다 큰 값을 갖는 픽셀은 '1'로 표현하고, 명도 값이 230이하인 픽셀은 '0'으로 표현함으로써, 밝아서 객체 인식이 불가능한 영역(720)을 결정할 수 있다.
한편, 도 7에서는 제 1 기준 값(701)과 제 2 기준 값(702)이 다른 경우를 예로 들어 설명하였으나, 이에 한정되는 것은 아니다. 일 실시예에 의하면, 제 1 기준 값(701)과 제 2 기준 값(702)은 같은 값일 수 있다. 예컨대, 자율 주행 장치(100)는 제 1 기준 값(701)과 제 2 기준 값(702)을 모두 '150'으로 결정할 수 있다. 이 경우, 자율 주행 장치(100)는, 어두운 영역(710)을 검출하기 위해서는 150보다 작은 명도 값을 가지는 픽셀을 1로 표현하고, 밝은 영역(720)을 검출하기 위해서는 150보다 큰 명도 값을 가지는 픽셀을 1로 표현할 수 있다.
단계 S550에서, 자율 주행 장치(100)는, 동적 비전 센서(102)를 통해 획득되는 DVS 이미지의 객체 정보와 제 1 RGB 이미지의 객체 정보를 비교하여, 적어도 하나의 제 1 영역 중에서 객체가 존재하는 적어도 하나의 제 2 영역(관심 영역)을 결정할 수 있다.
예를 들어, 자율 주행 장치(100)는, DVS 이미지 상에서는 특징 정보가 많이 나타나지만 제 1 RGB 이미지에서는 특징 정보가 많이 나타나지 않는 영역을 관심 영역으로 결정할 수 있다.
단계 S550은 도 2의 단계 S230에 대응하므로, 구체적인 설명은 생략하기로 한다.
단계 S560에서, 자율 주행 장치(100)는, 적어도 하나의 제 2 영역(관심 영역)과 관련하여 카메라(101)의 촬영 설정 정보를 제어할 수 있다. 단계 S570에서, 자율 주행 장치(100)는, 변경된 촬영 설정 정보에 기초하여, 카메라(101)로부터 개선된(enhanced) 제 2 RGB 이미지를 획득할 수 있다.
일 실시예에 의하면, 자율 주행 장치(100)는, 카메라(101)의 현재 촬영 설정 정보를 확인하고, 관심 영역의 명도가 변경될 수 있도록 촬영 설정 정보를 제어할 수 있다. 예를 들어, 자율 주행 장치(100)는, 관심 영역에 대한 노출, 포커스 및 화이트 밸런스 중 적어도 하나를 제어할 수 있다. 특히, 자율 주행 장치(100)는, 카메라의 센서 감도(GAIN), 조리개 및 노출 시간 중 적어도 하나를 조절함으로써, 관심 영역에 대한 노출 값을 제어할 수 있다. 예컨대, 관심 영역이 어두운 영역인 경우, 자율 주행 장치(100)는, 센서 감도(Gain), 조리개, 노출 시간을 적절히 조절하여, 개선된 제 2 RGB 이미지에서는 관심 영역이 밝게 나타나도록 제어할 수 있다. 반대로 관심 영역이 밝은 영역인 경우, 자율 주행 장치(100)는, 센서 감도(Gain), 조리개, 노출 시간을 적절히 조절하여, 개선된 제 2 RGB 이미지에서는 관심 영역이 어둡게 나타나도록 제어할 수 있다.
단계 S560 및 단계 S570은 도 2의 단계 S240에 대응하므로, 구체적인 설명은 생략하기로 한다.
단계 S580에서, 자율 주행 장치(100)는, 제 2 RGB 이미지의 관심 영역(제 1 RGB 이미지의 적어도 하나의 제 2 영역에 대응하는 영역)에서 객체가 인식되지 않는 경우, 적어도 하나의 제 2 영역(관심 영역)과 관련하여 카메라(101)의 촬영 설정 정보를 다시 제어할 수 있다. 예를 들어, 관심 영역이 어두운 영역인 경우, 자율 주행 장치(100)는, 카메라(101)의 센서 감도를 더 높여, 관심 영역이 밝게 표현되도록 할 수 있다.
단계 S590에서, 자율 주행 장치(100)는, 인식된 객체를 이용하여 자율 주행 장치(100)의 위치 정보를 획득할 수 있다.
일 실시예에 의하면, 자율 주행 장치(100)는, 인식된 객체에 포함된 특징(feature)을 VIO 기술에 적용하기 위한 특징으로 이용할 수 있다. 예를 들어, 자율 주행 장치(100)는, 제 2 RGB 이미지의 현재 프레임의 관심 영역 및 이전 프레임의 관심 영역에서 각각 특징을 추출하고, 추출된 특징을 정합하여, 2차원 공간 상의 위치 변화를 예측할 수 있다. 자율 주행 장치(100)는, 스테레오 카메라 또는 관성 센서를 이용하여 실제 이동된 거리 정보를 획득할 수 있다. 자율 주행 장치(100)는, 예측된 위치 변화 및 스테레오 카메라 또는 관성 센서를 통해 획득된 거리 정보를 이용하여, 3차원의 위치 변화량을 추정할 수 있다. 자율 주행 장치(100)는 3차원의 위치 변화량을 이용하여, 주변의 3차원 지도를 생성할 수도 있다.
이하에서는 자율 주행 장치(100)가 히스토그램 대신에 인공 지능 모델을 이용하는 동작에 대해서 도 8을 참조하여 자세히 살펴보기로 한다.
도 8은 일 실시예에 따른 인공 지능 모델을 이용하여 객체를 인식하는 방법을 설명하기 위한 순서도이다.
단계 S810에서, 자율 주행 장치(100)는, 카메라(101)를 이용하여 제 1 RGB 이미지를 획득할 수 있다.
단계 S810은 도 2의 단계 S210에 대응되므로, 구체적인 설명은 생략하기로 한다.
단계 S820에서, 자율 주행 장치(100)는, 제 1 인공 지능 모델을 이용하여, 제 1 RGB 이미지 내에서 객체 인식 불가능 영역이 존재하는지 판단할 수 있다. 일 실시예에 의하면, 제 1 인공 지능 모델은, RGB 이미지들을 학습하는 신경망 모델로서, RGB 이미지들에서 객체 인식 불가능 영역을 판단하도록 학습된 모델일 수 있다. 일 실시예에 의하면, 제 1 인공 지능 모델은 자율 주행 장치(100)가 자주 주행하는 경로 상에서 획득되는 RGB 이미지들을 기초로 학습될 수 있다.
일 실시예에 의하면, 제 1 인공 지능 모델은, 제 1 RGB 이미지가 입력되는 경우, 제 1 RGB 이미지 상에서 어두운 영역과 밝은 영역을 구별할 수 있다. 이 경우, 제 1 인공 지능 모델은, 어두운 영역과 밝은 영역의 분포를 고려하여, 제 1 RGB 이미지 내에서 객체 인식 불가능 영역이 존재하는지 판단할 수 있다. 예를 들어, 제 1 인공 지능 모델은, 제 1 RGB 이미지 상의 명도가 고르지 않고, 너무 어둡거나 너무 밝은 경우, 제 1 RGB 이미지 내에 객체 인식 불가능 영역이 존재한다고 판단할 수 있다.
또한, 일 실시예에 의하면, 제 1 인공 지능 모델은, 주변 상황 정보(컨텍스트 정보)를 입력 받는 경우, 주변 상황 정보를 고려하여 제 1 RGB 이미지 상에서 객체 인식 불가능 영역이 존재하는지 판단할 수도 있다. 예를 들어, 제 1 인공 지능 모델은, 자율 주행 장치(100)가 터널에 진입하거나 터널을 통과하고 있는 상황인 경우, 제 1 RGB 이미지 상에서 객체 인식 불가능 영역이 존재할 확률이 높다고 판단할 수 있다. 또한, 제 1 인공 지능 모델은 현재 주행 경로 상의 현재 위치가 역광이 발생하는 위치인 경우, 제 1 RGB 이미지 상에 객체 인식 불가능 영역이 존재할 확률이 높다고 판단할 수 있다.
단계 S830에서, 자율 주행 장치(100)는, 객체 인식 불가능 영역이 존재하지 않는 경우, 카메라(101)의 촬영 설정 정보를 변경하지 않을 수 있다. 즉, 자율 주행 장치는 카메라(101)의 현재 촬영 설정 정보에 기초하여 계속 RGB 이미지를 획득할 수 있다. 단계 S535에서, 자율 주행 장치(100)는, 제 1 RGB 이미지에 객체 인식 불가능 영역이 존재하지 않으므로, 제 1 RGB 이미지에서 객체를 인식할 수 있다.
단계 S840에서, 자율 주행 장치(100)는, 객체 인식 불가능 영역이 존재하는 경우, 제 1 인공 지능 모델을 이용하여, 제 1 RGB 이미지 내에서 객체 인식이 불가능한 적어도 하나의 제 1 영역(객체 인식 불가능 영역)을 예측할 수 있다.
예를 들어, 자율 주행 장치(100)가 제 1 인공 지능 모델에 제 1 RGB 이미지를 적용하는 경우, 제 1 인공 지능 모델은 제 1 RGB 이미지에서 제 1 기준 값(예컨대, 100)보다 낮은 명도 값을 가지는 영역을 객체 인식 불가능 영역으로 예측하거나, 제 2 기준 값(예컨대, 150)보다 높은 명도 값을 가지는 영역을 객체 인식 불가능 영역으로 예측할 수 있다.
단계 S850에서, 자율 주행 장치(100)는, 제 2 인공 지능 모델에 DVS 이미지와 제 1 RGB 이미지를 적용하여, 적어도 하나의 제 1 영역 중에서 객체가 존재하는 적어도 하나의 제 2 영역을 결정할 수 있다.
일 실시예에 의하면, 제 2 인공 지능 모델은, 동일한 공간에 대한 DVS 이미지들과 RGB 이미지들을 학습하는 모델일 수 있다. 제 2 인공 지능 모델은, DVS 이미지와 RGB 이미지를 비교하여, RGB 이미지의 객체 인식 불가능 영역 중에서 객체가 존재하는 영역을 예측하는 신경망 모델일 수 있다.
일 실시예에 의하면, 제 2 인공 지능 모델은 RGB 이미지에서 객체 인식 불가능 영역을 결정하기 위한 제 1 인공 지능 모델과 분리된 별도의 모델일 수도 있고, 동일한 하나의 모델일 수도 있다.
도 9를 참조하면, 자율 주행 장치(100)는, 터널을 통과하는 중에 카메라(101)를 통해 RGB 이미지(910)를 획득하고, 동적 비전 센서(102)를 통해 DVS 이미지(920)를 획득할 수 있다. 이때, RGB 이미지(910)와 DVS 이미지(920)는 AI 프로세서(900)로 전달될 수 있다. AI 프로세서(900)는 RGB 이미지(910)와 DVS 이미지(920)를 제 2 인공 지능 모델에 입력할 수 있다. 이 경우, 제 2 인공 지능 모델은, RGB 이미지(910)와 DVS 이미지(920)를 비교하여, RGB 이미지(910)의 터널 출구 영역(911)에서는 특징(feature) 또는 엣지가 거의 추출되지 않지만, DVS 이미지(920)의 터널 출구 영역(921)에서는 특징(feature) 또는 엣지가 검출된다고 판단할 수 있다. 이때, 제 2 인공 지능 모델은 RGB 이미지(910)의 터널 출구 영역(911)을 객체가 존재하지만 객체가 인식이 되지 않는 관심 영역(930)으로 결정할 수 있다. 제 2 인공 지능 모델은 관심 영역(930)에 관한 정보를 AI 프로세서(900)로 전달할 수 있다.
단계 S860에서, 자율 주행 장치(100)는, 제 3 인공 지능 모델을 이용하여, 카메라(101)의 촬영 설정 정보를 제어할 수 있다. 단계 S870에서, 자율 주행 장치(100)는, 변경된 촬영 설정 정보에 기초하여, 개선된 제 2 RGB 이미지를 획득할 수 있다.
일 실시예에 의하면, 제 3 인공 지능 모델은 카메라(101)의 촬영 설정 정보(예컨대, 노출, 화이트 밸런스, 포커스)와 RGB 이미지들을 학습하는 신경망 모델일 수 있다. 제 3 인공 지능 모델은 적절한 촬영 설정 정보를 추천하는 모델일 수 있다. 제 3 인공 지능 모델은 제 1 인공 지능 모델 및 제 2 인공 지능 모델과 분리된 별도의 모델일 수 있다. 또한, 제 3 인공 지능 모델은 제 1 인공 지능 모델 및 제 2 인공 지능 모델과 하나의 모델을 구성할 수도 있다.
도 10을 참조하면, 자율 주행 장치(100)는 RGB 이미지(910) 및 관심 영역(930)에 관한 정보를 제 3 인공 지능 모델에 적용할 수 있다. 이 경우, 제 3 인공 지능 모델은 RGB 이미지(910)의 관심 영역(930)의 밝기가 변경되도록 하는 촬영 설정 값을 결정할 수 있다. 일 실시예에 의하면, 제 3 인공 지능 모델은, 관심 영역(930)에 대한 노출, 포커스 및 화이트 밸런스 중 적어도 하나를 변경할 수 있다. 특히, 제 3 인공 지능 모델은, 카메라(101)의 센서 감도(GAIN), 조리개 및 노출 시간 중 적어도 하나를 조절함으로써, 관심 영역(930)에 대한 노출 값을 제어할 수 있다. 예를 들어, 관심 영역(930)이 터널 출구의 아주 밝은 영역이므로, 제 3 인공 지능 모델은 관심 영역(930)이 어두워지도록 하는 촬영 설정 값(예컨대, 높은 센서 감도 값)을 결정할 수 있다.
자율 주행 장치(100)가 제 3 인공 지능 모델에 의해 결정된 촬영 설정 값으로 카메라(101)의 현재 촬영 설정 값을 변경하는 경우, 변경된 촬영 설정 값에 기초하여, 카메라(101)는 개선된 RGB 이미지(1000)를 획득할 수 있다. 예를 들어, 개선된 RGB 이미지(1000)는 RGB 이미지(910)에 비해 전체적으로 어두운 이미지일 수 있으며, 개선된 RGB 이미지(1000)의 관심 영역(1030)에서 특징(feature) 또는 엣지가 나타날 수 있다. 따라서, 자율 주행 장치(100)는, 개선된 RGB 이미지(1000)의 관심 영역(1030)에서 객체를 인식할 수 있다.
한편, 도 11을 참조하면, 자율 주행 장치(100)는, 터널에 진입할 때 카메라(101)를 통해 RGB 이미지(1110)를 획득하고, 동적 비전 센서(102)를 통해 DVS 이미지(1120)를 획득할 수 있다. 이때, RGB 이미지(1110)와 DVS 이미지(1120)는 AI 프로세서(900)로 전달될 수 있다. AI 프로세서(900)는 RGB 이미지(1110)와 DVS 이미지(1120)를 제 2 인공 지능 모델에 입력할 수 있다. 이 경우, 제 2 인공 지능 모델은, RGB 이미지(1110)와 DVS 이미지(1120)를 비교하여, RGB 이미지(1110)의 터널 입구 영역(1111)에서는 특징(feature) 또는 엣지가 거의 추출되지 않지만, DVS 이미지(1120)의 터널 입구 영역(1121)에서는 특징(feature) 또는 엣지가 검출된다고 판단할 수 있다. 이때, 제 2 인공 지능 모델은 RGB 이미지(1110)의 터널 입구 영역(1111)을 객체가 존재하지만 객체가 인식이 되지 않는 관심 영역으로 결정할 수 있다. 제 2 인공 지능 모델은 관심 영역에 관한 정보를 AI 프로세서(900)로 전달할 수 있다.
AI 프로세서(900)는 RGB 이미지(1110) 및 관심 영역에 관한 정보를 제 3 인공 지능 모델에 적용할 수 있다. 이 경우, 제 3 인공 지능 모델은 RGB 이미지(1110)의 관심 영역(예컨대, 터널 입구 영역(1111))의 밝기가 변경되도록 하는 촬영 설정 값을 결정할 수 있다. 예를 들어, 관심 영역이 터널 입구의 아주 어두운 영역이므로, 제 3 인공 지능 모델은 관심 영역이 밝아지도록 하는 촬영 설정 값(예컨대, 낮은 센서 감도 값)을 결정할 수 있다.
자율 주행 장치(100)가 제 3 인공 지능 모델에 의해 결정된 촬영 설정 값으로 카메라(101)의 현재 촬영 설정 값을 변경하는 경우, 변경된 촬영 설정 값에 기초하여, 카메라(101)는 개선된 RGB 이미지(1130)를 획득할 수 있다. 예를 들어, 개선된 RGB 이미지(1130)는 RGB 이미지(1110)에 비해 전체적으로 밝은 이미지일 수 있으며, 개선된 RGB 이미지(1130)의 관심 영역(1131)에서 특징(feature) 또는 엣지가 나타날 수 있다. 따라서, 자율 주행 장치(100)는, 개선된 RGB 이미지(1130)의 관심 영역(1131)에서 객체를 인식할 수 있다.
도 12를 참조하면, 자율 주행 장치(100)는, 역광이 발생하는 환경에서 카메라(101)를 통해 RGB 이미지(1210)를 획득하고, 동적 비전 센서(102)를 통해 DVS 이미지(1220)를 획득할 수 있다. 이때, RGB 이미지(1210)와 DVS 이미지(1220)는 AI 프로세서(900)로 전달될 수 있다. AI 프로세서(900)는 RGB 이미지(1210)와 DVS 이미지(1220)를 제 2 인공 지능 모델에 입력할 수 있다. 이 경우, 제 2 인공 지능 모델은, RGB 이미지(1210)와 DVS 이미지(1220)를 비교하여, RGB 이미지(1210)의 좌측 상단 영역(1211)에서는 특징(feature) 또는 엣지가 거의 추출되지 않지만, DVS 이미지(1220)의 좌측 상단 영역(1221)에서는 특징(feature) 또는 엣지가 검출된다고 판단할 수 있다. 이때, 제 2 인공 지능 모델은 RGB 이미지(1210)의 좌측 상단 영역(1211)을 객체가 존재하지만 객체가 인식이 되지 않는 관심 영역으로 결정할 수 있다. 제 2 인공 지능 모델은 관심 영역에 관한 정보를 AI 프로세서(900)로 전달할 수 있다.
AI 프로세서(900)는 RGB 이미지(1210) 및 관심 영역에 관한 정보를 제 3 인공 지능 모델에 적용할 수 있다. 이 경우, 제 3 인공 지능 모델은 RGB 이미지(1210)의 관심 영역(예컨대, 역광에 의해 밝게 나타나는 좌측 상단 영역(1211))의 밝기가 변경되도록 하는 촬영 설정 값을 결정할 수 있다. 예를 들어, 관심 영역이 아주 밝은 영역이므로, 제 3 인공 지능 모델은 관심 영역이 어두워지도록 하는 촬영 설정 값(예컨대, 높은 센서 감도 값)을 결정할 수 있다. 또는, 제 3 인공 지능 모델은 측거점의 위치를 조정하거나, 측광 모드를 변경하여 노출을 제어할 수도 있다.
자율 주행 장치(100)가 제 3 인공 지능 모델에 의해 결정된 촬영 설정 값으로 카메라(101)의 현재 촬영 설정 값을 변경하는 경우, 변경된 촬영 설정 값에 기초하여, 카메라(101)는 개선된 RGB 이미지(1230)를 획득할 수 있다. 예를 들어, 개선된 RGB 이미지(1230)는 RGB 이미지(1210)에 비해 전체적으로 어두운 이미지일 수 있으며, 개선된 RGB 이미지(1230)의 관심 영역(1231)에서 특징(feature) 또는 엣지가 나타날 수 있다. 따라서, 자율 주행 장치(100)는, 개선된 RGB 이미지(1230)의 관심 영역(1231)에서 객체(예컨대, 표지판)를 인식할 수 있다.
단계 S880에서, 자율 주행 장치(100)는, 자율 주행 장치(100)는, 제 2 RGB 이미지의 관심 영역(제 1 RGB 이미지의 적어도 하나의 제 2 영역에 대응하는 영역)에서 객체가 인식되지 않는 경우, 적어도 하나의 제 2 영역(관심 영역)과 관련하여 카메라(101)의 촬영 설정 정보를 다시 제어할 수 있다. 예를 들어, 관심 영역이 어두운 영역인 경우, 자율 주행 장치(100)는, 카메라(101)의 센서 감도를 더 높여, 관심 영역이 밝게 표현되도록 할 수 있다.
단계 S890에서, 자율 주행 장치(100)는, 인식된 객체를 이용하여 자율 주행 장치(100)의 위치 정보를 획득할 수 있다.
단계 S890은 도 5의 단계 S590에 대응되므로, 구체적인 설명은 생략하기로 한다.
이하에서는, 자율 주행 장치(100)가 복수의 관심 영역을 결정하는 경우, 복수의 관심 영역의 우선 순위에 따라서, 카메라(101)의 촬영 설정 정보를 제어하는 동작에 대해서 도 13 및 도 14를 참조하여 자세히 살펴보기로 한다.
도 13은 일 실시예에 따른 복수의 관심 영역의 우선 순위에 따라, 카메라의 촬영 설정 정보를 제어하는 방법을 설명하기 위한 순서도이다.
단계 S1310에서, 자율 주행 장치(100)는, 카메라(101)를 이용하여 제 1 RGB 이미지를 획득할 수 있다.
단계 S1310은 도 2의 단계 S210에 대응되므로, 구체적인 설명은 생략하기로 한다.
단계 S1320에서, 자율 주행 장치(100)는, 제 1 RGB 이미지의 명도 정보에 기초하여, 제 1 RGB 이미지 내에서 복수의 객체 인식 불가능 영역을 예측할 수 있다.
일 실시예에 의하면, 자율 주행 장치(100)는, 제 1 RGB 이미지의 히스토그램 또는 인공 지능 모델을 이용하여, 제 1 RGB 이미지 내에서 복수의 객체 인식 불가능 영역을 예측할 수 있다.
예를 들어, 자율 주행 장치(100)는, 제 1 RGB 이미지 내에서 명도 값(brightness value)이 임계 범위를 벗어나는 영역(예컨대, 너무 어두운 영역 또는 너무 밝은 영역)을 객체 인식 불가능 영역으로 예측할 수 있다. 이때, 제 1 RGB 이미지 내에서 명도 값(brightness value)이 임계 범위를 벗어나는 영역이 복수 개 존재하는 경우, 자율 주행 장치(100)는 복수의 객체 인식 불가능 영역을 검출할 수 있다.
단계 S1320은 도 2의 단계 S220에 대응되므로, 구체적인 설명은 생략하기로 한다.
단계 S1330에서, 자율 주행 장치(100)는, 동적 비전 센서(DVS)를 통해 획득되는 객체 정보에 기초하여, 복수의 객체 인식 불가능 영역 중에서 객체가 존재하는 복수의 관심 영역을 결정할 수 있다.
예를 들어, 자율 주행 장치(100)는, 카메라(101)를 통해서는 현재 객체 인식이 불가능하지만 동적 비전 센서(102)를 통해 객체가 감지된 복수의 영역을 복수의 관심 영역으로 결정할 수 있다. 이 때, 복수의 관심 영역의 명도 값은 상이할 수 있다. 예를 들어, 제 1 관심 영역은 어두운 영역이고, 제 2 관심 영역은 밝은 영역일 수 있다. 따라서, 카메라(101)의 촬영 설정 정보를 한번 조절해서 복수의 관심 영역 각각에서 객체를 모두 검출하기 어려울 수 있다.
따라서, 단계 S1340에서, 자율 주행 장치(100)는, 소정 기준에 따라, 복수의 관심 영역의 우선 순위를 결정할 수 있다.
일 실시예에 의하면, 자율 주행 장치(100)는 명도가 낮은 영역의 우선 순위를 높게 결정할 수 있다. 예를 들어, 어두운 영역이 밝은 영역보다 우선 순위가 높을 수 있다. 또는, 자율 주행 장치(100)는, 명도가 높은 영역의 우선 순위를 높게 결정할 수도 있다. 예를 들어, 밝은 영역이 어두운 영역보다 우선 순위가 높을 수 있다.
일 실시예에 의하면, 자율 주행 장치(100)는 관심 영역의 면적에 기초하여 우선 순위를 결정할 수도 있다. 예를 들어, 넓은 영역의 우선 순위가 좁은 영역의 우선 순위보다 높을 수 있다.
한편, 일 실시예에 의하면, 자율 주행 장치(100)는, 주변 환경 정보(예컨대, 컨텍스트 정보)를 이용하여, 관심 영역의 우선 순위를 결정할 수도 있다. 예를 들어, 자율 주행 장치(100)가 터널 입구 쪽에 위치하는 경우, 명도가 낮은 영역의 우선 순위를 높게 결정하고, 자율 주행 장치(100)가 터널 출구 쪽에 위치하는 경우 명도가 높은 영역의 우선 순위를 높게 결정할 수 있으나, 이에 한정되는 것은 아니다.
단계 S1350 내지 단계 S1380에서, 자율 주행 장치(100)는, 복수의 관심 영역의 우선 순위를 고려하여, 카메라(101)의 촬영 설정 정보를 제어함으로써, 개선된 RGB 이미지를 획득할 수 있다. 즉, 단계 S1350에서, 자율 주행 장치(100)는 제 n 순위의 관심 영역과 관련하여 카메라(101)의 촬영 설정 정보를 제어함으로써, 개선된 제 n+1 RGB 이미지를 획득할 수 있다. 단계 S1360에서, 자율 주행 장치(100)는, 제 n+1 RGB 이미지 내에서 제 n 객체를 인식할 수 있다. 단계 S1370에서, 자율 주행 장치(100)는 제 n 순위의 관심 영역이 마지막 관심 영역인지 판단할 수 있다. 단계 S1380에서, 자율 주행 장치(100)는, 제 n 순위의 관심 영역이 마지막 관심 영역이 아닌 경우, 제 n+1 순위의 관심 영역을 선택하고 단계 S1350으로 돌아갈 수 있다.
예를 들어, 자율 주행 장치(100)는, 제 1 순위의 관심 영역과 관련하여, 카메라(101)의 촬영 설정 정보를 제어함으로써, 개선된 제 2 RGB 이미지를 획득할 수 있다. 이때, 자율 주행 장치(100)는, 제 2 RGB 이미지의 관심 영역(제 1 순위 관심 영역에 대응하는 영역)에서 제 1 객체를 인식할 수 있다. 그리고 자율 주행 장치(100)는, 제 2 순위 관심 영역과 관련하여, 카메라(101)의 촬영 설정 정보를 제어함으로써, 개선된 제 3 RGB 이미지를 획득할 수 있다. 자율 주행 장치(100)는, 제 3 RGB 이미지의 관심 영역(제 2 순위 관심 영역에 대응하는 영역)에서 제 2 객체를 인식할 수 있다. 이때, 제 1 객체와 제 2 객체는 상이할 수 있다. 자율 주행 장치(100)는, 제 2 순위의 관심 영역이 마지막 관심 영역인지 판단할 수 있다. 자율 주행 장치(100)는, 제 2 순위 관심 영역이 마지막 관심 영역이 아닌 경우, 제 3 순위 관심 영역과 관련하여, 카메라(101)의 촬영 설정 정보를 제어함으로써, 개선된 제 4 RGB 이미지를 획득하고, 개선된 제 4 RGB 이미지의 관심 영역(제 3 순위 관심 영역에 대응하는 영역)에서 제 3 객체를 인식할 수 있다. 즉, 자율 주행 장치(100)는 우선 순위에 따라 순차적으로 관심 영역들에서 객체가 검출될 수 있도록 카메라(101)의 촬영 설정 정보를 제어할 수 있다.
도 14를 참조하여, 자율 주행 장치(100)가 복수의 관심 영역의 우선 순위를 고려하여, 카메라(101)의 촬영 설정 정보를 제어하는 동작에 대해서 좀 더 자세히 살펴보기로 한다.
도 14는 일 실시예에 따른 복수의 관심 영역의 우선 순위를 설명하기 위한 도면이다.
자율 주행 장치(100)는, 터널을 통과하는 중에 카메라(101)를 통해 RGB 이미지(1410)를 획득하고, 동적 비전 센서(102)를 통해 DVS 이미지(1420)를 획득할 수 있다. 이때, 자율 주행 장치(100)는, RGB 이미지(1410)와 DVS 이미지(1420)를 비교하여, RGB 이미지(1410)의 좌측 하단 영역(① 영역)에서는 특징(feature) 또는 엣지가 거의 추출되지 않지만, DVS 이미지(1420)의 좌측 하단 영역(① 영역)에서는 특징(feature) 또는 엣지가 검출된다고 판단할 수 있다. 또한, 자율 주행 장치(100)는, RGB 이미지(1410)의 터널 출구 영역(② 영역)에서는 특징(feature) 또는 엣지가 거의 추출되지 않지만, DVS 이미지(1420)의 터널 출구 영역(② 영역)에서는 특징(feature) 또는 엣지가 검출된다고 판단할 수 있다. 이 경우, 자율 주행 장치(100)는, RGB 이미지(1410)의 좌측 하단 영역(① 영역)과 터널 출구 영역(② 영역)을 관심 영역으로 결정할 수 있다.
만일, 명도가 낮은 관심 영역의 우선 순위가 높게 결정되도록 설정되어 있는 경우, 자율 주행 장치(100)는 터널 출구 영역(② 영역)보다 좌측 하단 영역(① 영역)의 우선 순위를 높게 결정할 수 있다.
이 경우, 자율 주행 장치(100)는, 먼저 좌측 하단 영역(① 영역)을 기준으로 카메라(101)의 촬영 설정 정보를 제어할 수 있다. 예를 들어, 자율 주행 장치(100)는, 좌측 하단 영역(① 영역)은 어두운 영역이므로, 센서 감도를 높게 조절하여, 좌측 하단 영역(① 영역)이 밝게 나타나도록 할 수 있다. 좌측 하단 영역(① 영역)이 밝아졌으므로, 자율 주행 장치(100)는 좌측 하단 영역(① 영역)에서 객체(예컨대, 외부 차량)를 인식할 수 있다. 한편, 센서 감도가 높아지면 터널 출구 영역(② 영역)은 더 밝아지므로, 터널 출구 영역(② 영역)에서는 여전히 객체가 검출되지 않을 수 있다.
그 다음, 자율 주행 장치(100)는, 터널 출구 영역(② 영역)을 기준으로, 카메라(101)의 촬영 설정 정보를 제어할 수 있다. 예를 들어, 자율 주행 장치(100)는, 터널 출구 영역(② 영역)은 밝은 영역이므로, 센서 감도를 낮게 조절하여, 터널 출구 영역(② 영역)이 어둡게 나타나도록 할 수 있다. 터널 출구 영역(② 영역)이 어두워졌으므로, 자율 주행 장치(100)는 터널 출구 영역(② 영역)에서 객체(예컨대, 차선, 육교, 가로수 등)를 인식할 수 있다.
도 15는 일 실시예에 따른 자율 주행 장치가 객체를 추적하는 방법을 설명하기 위한 순서도이다.
단계 S1510에서, 자율 주행 장치(100)는, 객체 검출을 위한 동작 모드를 선택할 수 있다. 객체 추적을 위한 동작 모드는 고속 검출 모드와 전 영역 검출 모드를 포함할 수 있으나, 이에 한정되는 것은 아니다.
고속 검출 모드는, RGB 이미지 내에서 객체가 검출될 가능성이 높은 후보 영역에 대해서 영상 처리를 수행함으로써, 고속으로 객체를 검출하는 모드를 의미한다. 이때, 후보 영역은 동적 비전 센서(102)에서 감지되는 정보에 기초하여 결정될 수 있다.
전 영역 검출 모드는 RGB 이미지의 전 영역에 대한 영상 처리를 수행함으로써, 객체를 검출하는 모드를 의미한다.
단계 S1520 및 단계 S1530에서, 자율 주행 장치(100)는, 고속 검출 모드가 선택된 경우, 고속 검출 모드로 동작할 수 있다.
일 실시예에 의하면, 자율 주행 장치(100)는, 동적 비전 센서(102)에서 새로운 객체가 감지되지 않는 경우, RGB 이미지에 대한 새로운 객체 인식 프로세스를 수행하지 않을 수 있다.
단계 S1540에서, 자율 주행 장치(100)는, 동적 비전 센서를 통해, 자율 주행 장치(100) 주변에 나타나는 새로운 객체를 감지할 수 있다. 여기서, 새로운 객체는 동적 객체(예컨대, 차량, 이륜차, 보행자 등)를 포함할 수 있다.
동적 비전 센서(102)는 프레임 단위로 데이터를 획득하는 것이 아니라 낱낱의 픽셀 기준(per-pixel basis)으로 데이터를 획득하므로, 카메라(101) 보다 먼저 새로운 객체를 감지할 수 있다.
일 실시예에 의하면, DVS 이미지의 현재 프레임과 이전 프레임을 비교하여, 자율 주행 장치(100) 주변에 나타나는 새로운 객체를 감지할 수 있다. 예를 들어, 자율 주행 장치(100)가 주행 중인 제 1 차선의 오른쪽에 위치한 제 2 차선에 외부 차량이 나타나는 경우, 동적 비전 센서(102)는 카메라(101)보다 먼저 외부 차량을 감지할 수 있다. 이때, DVS 이미지의 오른쪽 영역에 외부 차량의 외곽선이 나타날 수 있다.
단계 S1550에서, 자율 주행 장치(100)는, RGB 이미지 내에서 새로운 객체가 인식될 가능성이 임계 값보다 큰 후보 영역을 결정할 수 있다.
일 실시예에 의하면, 자율 주행 장치(100)는 DVS 이미지 상에 새로운 객체가 나타난 위치에 관한 정보에 기초하여, RGB 이미지 내에서 후보 영역을 결정할 수 있다. 예를 들어, DVS 이미지를 분석한 결과, 자율 주행 장치(100)의 오른쪽 영역에서 새로운 객체가 나타난 경우, 자율 주행 장치(100)는 RGB 이미지 내에서 오른쪽 영역을 후보 영역으로 결정할 수 있다.
단계 S1560에서, 자율 주행 장치(100)는, 후보 영역에 대한 영상 처리를 통해 RGB 이미지의 후보 영역에서 새로운 객체를 인식할 수 있다.
일 실시예에 의하면, 자율 주행 장치(100)는 후보 영역에서 객체를 구성하는 적어도 하나의 특징(feature)를 추출할 수 있다. 자율 주행 장치(100)는 추출된 적어도 하나의 특징을 이용하여, 후보 영역에서 객체를 인식할 수 있다. 예를 들어, 자율 주행 장치(100)는 RGB 이미지의 후보 영역에서 오른쪽 차선으로 주행하는 외부 차량을 인식할 수 있다. 이 경우, 자율 주행 장치(100)는 새로운 객체를 인식하기 위해 RGB 이미지의 전 영역에 대해서 영상 처리를 수행하지 않아도 됨으로, 객체 인식 속도 및 정확도가 향상될 수 있다.
단계 S1570에서, 자율 주행 장치(100)는, 고속 검출 모드가 선택되지 않은 경우, 전 영역 검출 모드로 동작할 수 있다.
일 시예에 의하면, 영상 처리 능력이 여유가 있거나, 중요 시점인 경우에, 자율 주행 장치(100)는 전 영역 검출 모드 선택할 수 있다. 또는, 자율 주행 장치(100)는, 주기적으로 전 영역 검출 모드로 동작할 수도 있다.
단계 S1590에서, 자율 주행 장치(100)는, 전 영역 검출 모드로 동작하는 경우, RGB 이미지의 전체 영역에 대한 영상 처리를 통해서, 새로운 객체를 인식할 수 있다.
단계 S1590에서, 자율 주행 장치(100)는, 카메라(101)를 이용하여 새로운 객체를 추적할 수 있다.
일 실시예에 의하면, 자율 주행 장치(100)는, RGB 이미지의 일련의 프레임에서 추출되는 새로운 객체의 특징적인 정보에 기초하여, 새로운 객체의 변화를 추적할 수 있다. 예를 들어, 자율 주행 장치(100)는 새로운 객체의 위치 변화를 추적할 수 있다. 일 실시예에 의하면, 자율 주행 장치(100)는 추적의 타겟이 되는 객체 주변에 식별 이미지를 표시할 수도 있다.
일 실시예에 의하면, 단계 S1510 내지 S1590 중 일부 단계가 생략될 수 있으며, 일부 단계들의 순서가 변경될 수도 있다.
도 16은 자율 주행 장치가 동적 비전 센서에서 감지된 새로운 객체를 카메라로 인식하고 추적하는 동작을 설명하기 위한 도면이다.
도 16의 제 1 RGB 이미지(1610)를 참조하면, 자율 주행 장치(100)는, 전방의 카메라(101)를 이용하여, 자율 주행 장치(100) 앞에서 이동하는 객체들을 인식하고 추적할 수 있다. 예를 들어, 자율 주행 장치(100)는 제 1 차량(1601), 제 2 차량(1602), 제 3 차량(1603)을 인식하고 추적할 수 있다.
도 16의 DVS 이미지(1620)를 참조하면, 자율 주행 장치(100)는 동적 비전 센서(102)를 이용하여, 자율 주행 장치(100)로 접근하는 새로운 객체(1621)를 검출할 수 있다. 예를 들어, 자율 주행 장치(100)는, 자율 주행 장치(100)의 좌측으로 접근하는 제 4 차량(1621)의 윤곽선을 DVS 이미지(1620)에서 검출할 수 있다.
도 16의 제 2 RGB 이미지(1630)을 참조하면, 자율 주행 장치(100)는, 동적 비전 센서(1620)를 통해서 새로운 객체가 감지된 경우, 이후 카메라(101)통해 획득되는 제 2 RGB 이미지(1630) 내에서 새로운 객체가 인식될 가능성이 임계 값보다 큰 후보 영역을 결정할 수 있다. 예를 들어, 자율 주행 장치(100)는, DVS 이미지(1620)를 통해 새로운 객체가 자율 주행 장치(100)의 좌측으로 접근하고 있는 것을 알았으므로, 제 2 RGB 이미지(1630)의 좌측 영역(1631)을 후보 영역으로 결정할 수 있다.
자율 주행 장치(100)는 제 2 RGB 이미지(1630)의 좌측 영역(1631)에 대한 영상 처리를 통해 제 4 차량(1621)을 인식할 수 있다. 그리고 자율 주행 장치(100)는, 카메라(101)를 이용하여, 제 1 차량(1601) 내지 제 3 차량(1603)과 함께 제 4 차량(1621)도 추적할 수 있다.
일 실시예에 의하면, 자율 주행 장치(100)는, 동적 비전 센서(102)를 통해 새로운 객체의 존재 및 위치를 예상할 수 있으므로, RGB 이미지 상에서 새로운 객체를 빠르게 인식하고 추적할 수 있다.
도 17은 일 실시예에 따른 자율 주행 장치의 구성을 설명하기 위한 블록 구성도이다.
도 17을 참조하면, 자율 주행 장치(100)는, 센싱부(110), 프로세서(120), 통신부(130), 구동부(140), 출력부(150), 저장부(160), 입력부(170)를 포함할 수 있다. 그러나, 도 17에 도시된 구성 요소 모두가 자율 주행 장치(100)의 필수 구성 요소인 것은 아니다. 도 17에 도시된 구성 요소보다 많은 구성 요소에 의해 자율 주행 장치(100)가 구현될 수도 있고, 도 17에 도시된 구성 요소보다 적은 구성 요소에 의해 자율 주행 장치(100)가 구현될 수도 있다. 예를 들어, 도 1 에 도시된 바와 같이, 자율 주행 장치(100)는, 카메라(101), 동적 비전 센서(102) 및 프로세서(120)로 구성될 수도 있다. 각 구성에 대해 차례로 살펴보기로 한다.
센싱부(110)는, 자율 주행 장치(100) 주변 환경에 관한 정보를 감지하도록 구성되는 다수의 센서들을 포함할 수 있다. 예를 들어, 센싱부(110)는, 카메라(101)(예컨대, 스테레오 카메라, 모노 카메라, 와이드 앵글 카메라, 어라운드 뷰 카메라 또는 3D 비전 센서 등), 동적 비전 센서(102), 라이다 센서(103), 레이더 센서(104), IMU(관성 센서)(105), 초음파 센서(106), 적외선 센서(107), 거리 센서(108), 온/습도 센서(109), 위치 센서(111)(예컨대, GPS(Global Positioning System), DGPS(Differential GPS), 관성항법장치(INS: Inertial Navigation System)), 움직임 센싱부(112)를 포함할 수 있으나, 이에 한정되는 것은 아니다.
움직임 센싱부(112)는, 자율 주행 장치(100)의 움직임을 감지하기 위한 것으로, 예를 들어, 지자기 센서(113), 가속도 센서(114), 자이로스코프 센서(115)를 포함할 수 있으나, 이에 한정되는 것은 아니다.
일 실시예에 의하면, 카메라(101)는 다수의 카메라들을 포함할 수 있고, 다수의 카메라들은 자율 주행 장치(100)의 내부 또는 외부 상의 다수의 위치들에 배치될 수 있다. 예를 들어, 자율 주행 장치(100)의 전면부에 3 대의 카메라가 배치되고, 후면부에 1대의 카메라 배치되고, 좌측면부에 2대의 카메라가 배치되고, 우측면부에 2대의 카메라 배치될 수 있으나, 이에 한정되는 것은 아니다. 각 센서들의 기능은 그 명칭으로부터 당업자가 직관적으로 추론할 수 있으므로, 구체적인 설명은 생략하기로 한다.
프로세서(120)는, 통상적으로 자율 주행 장치(100)의 전반적인 동작을 제어할 수 있다. 프로세서(120)는 저장부(160)에 저장된 프로그램들을 실행함으로써, 센싱부(110), 통신부(130), 구동부(140), 출력부(150), 저장부(160), 입력부(170)를 제어할 수 있다.
프로세서(120)는, 카메라(101)를 통해 제 1 RGB 이미지를 획득할 수 있다.
프로세서(120)는, 제 1 RGB 이미지를 분석하여, 제 1 RGB 이미지의 히스토그램을 획득하고, 제 1 RGB 이미지의 히스토그램을 이용하여, 제 1 RGB 이미지 내에서 객체 인식 불가능 영역이 존재하는지 판단할 수 있다.
프로세서(120)는, 제 1 RGB 이미지 내에서 객체 인식 불가능 영역이 존재한다고 판단되는 경우, 제 1 RGB 이미지의 명도 정보에 기초하여, 제 1 RGB 이미지 내에서 적어도 하나의 제 1 영역을 예측할 수 있다. 예를 들어, 프로세서(120)는, 제 1 RGB 이미지 내에서 명도 값(brightness value)이 임계 범위를 벗어나는 영역을 적어도 하나의 제 1 영역으로 예측할 수 있다.
프로세서(120)는 동적 비전 센서(102)를 통해 획득되는 객체 정보에 기초하여, 적어도 하나의 제 1 영역 중에서 객체가 존재하는 적어도 하나의 제 2 영역을 결정할 수 있다. 프로세서(120)는, 적어도 하나의 제 2 영역과 관련하여 카메라(101)의 촬영 설정 정보를 제어함으로써, 개선된(enhanced) 제 2 RGB 이미지를 획득할 수 있다. 예를 들어, 프로세서(120)는, 카메라(101)의 센서 감도(GAIN), 조리개 및 노출 시간 중 적어도 하나를 조절함으로써, 카메라(101)의 촬영 설정 정보를 제어할 수 있다.
프로세서(120)는 제 2 RGB 이미지 내에서 객체를 인식할 수 있다. 프로세서(120)는, 카메라(120)를 이용하여, 제 2 RGB 이미지에서 인식된 객체를 추적할 수 있다. 프로세서(120)는, 동적 비전 센서(102)를 통해, 자율 주행 장치(100) 주변에 나타나는 새로운 객체를 감지하고, 카메라(101)를 통해 획득되는 제 3 RGB 이미지 내에서 새로운 객체가 인식될 가능성이 임계 값보다 큰 후보 영역을 결정할 수 있다. 프로세서(120)는, 후보 영역에 대한 영상 처리를 통해 제 3 RGB 이미지에서 동적 비전 센서(102)를 통해 감지된 새로운 객체를 인식할 수 있다.
프로세서(120)는, 동적 비전 센서(102)의 프레임 레이트를 카메라(101)의 프레임 레이트와 동일하게 설정할 수도 있다.
일 실시예에 의하면, 프로세서(120)는, 인공 지능(AI; artificial intelligence) 프로세서를 포함할 수 있다. 이 경우, AI 프로세서는, 복수의 RGB 이미지를 학습한 제 1 인공 지능 모델을 이용하여, 제 1 RGB 이미지 내에서 객체 인식 불가능 영역이 존재하는지 판단하고, 제 1 RGB 이미지 내에서 객체 인식 불가능 영역이 존재한다고 판단되는 경우, 제 1 인공 지능 모델을 이용하여 제 1 RGB 이미지 내에서 적어도 하나의 제 1 영역(객체 인식 불가능 영역)을 예측할 수 있다. 또한, 프로세서(120)는, 인공지능(AI) 시스템의 학습 네트워크 모델을 이용하여, 자율 주행 장치(100)의 모션을 계획할 수도 있다.
AI 프로세서는, 인공 지능(AI)을 위한 전용 하드웨어 칩 형태로 제작될 수도 있고, 또는 기존의 범용 프로세서(예: CPU 또는 application processor) 또는 그래픽 전용 프로세서(예: GPU)의 일부로 제작되어 자율 주행 장치(100)에 탑재될 수도 있다.
통신부(130)는, 다른 장치(예컨대, 외부 차량 또는 외부 서버)와 무선으로 통신하기 위한 적어도 하나의 안테나를 포함할 수 있다. 예를 들어, 통신부(130)는, 자율 주행 장치(100)와 외부 차량 또는 자율 주행 장치(100)과 서버 간의 통신을 하게 하는 하나 이상의 구성요소를 포함할 수 있다. 예를 들어, 통신부(130)는, 근거리 통신부(short-range wireless communication unit)(131), 이동 통신부(132) 및 방송 수신부(133) 등을 포함할 수 있으나, 이에 한정되는 것은 아니다.
근거리 통신부(short-range wireless communication unit)(131)는, 블루투스 통신부, BLE(Bluetooth Low Energy) 통신부, 근거리 무선 통신부(Near Field Communication unit), WLAN(와이파이) 통신부, 지그비(Zigbee) 통신부, 적외선(IrDA, infrared Data Association) 통신부, WFD(Wi-Fi Direct) 통신부, UWB(ultra wideband) 통신부, Ant+ 통신부, 마이크로 웨이브(uWave) 통신부 등을 포함할 수 있으나, 이에 한정되는 것은 아니다.
이동 통신부(132)는, 이동 통신망 상에서 기지국, 외부의 단말, 서버 중 적어도 하나와 무선 신호를 송수신한다. 여기에서, 무선 신호는, 음성 호 신호, 화상 통화 호 신호 또는 문자/멀티미디어 메시지 송수신에 따른 다양한 형태의 데이터를 포함할 수 있다.
방송 수신부(133)는, 방송 채널을 통하여 외부로부터 방송 신호 및/또는 방송 관련된 정보를 수신할 수 있다. 방송 채널은 위성 채널, 지상파 채널을 포함할 수 있다. 구현 예에 따라서 자율 주행 장치(100)가 방송 수신부(133)를 포함하지 않을 수도 있다.
일 실시예에 의하면, 통신부(130)는 자율 주행 장치(100)로부터 소정의 거리 내에 위치한 외부 차량과 차량간 통신(예컨대, Vehicle to Vehicle) 또는 자율 주행 장치(100)으로부터 소정의 거리 내에 위치한 인프라와 통신(예컨대, V2I: Vehicle to Infrastructure)을 수행할 수 있다. 예를 들어, 통신부(130)는, 자율 주행 장치(100)의 식별 정보, 위치, 속도 등을 포함하는 패킷을 방송 또는 광고할 수 있다. 또한, 통신부(130)는, 외부 차량이 방송 또는 광고하는 패킷을 수신할 수도 있다.
구동부(140)는 자율 주행 장치(100)의 구동(운행) 및 자율 주행 장치(100) 내부의 장치들의 동작에 이용되는 구성들을 포함할 수 있다. 구동부(140)는 전원 공급부(141), 추진부(142), 주행부(143) 및 주변 장치부(144) 중 적어도 하나를 포함할 수 있으나, 이에 한정되지 않는다.
주변 장치부(144)는 네비게이션, 라이트, 방향 지시등, 와이퍼, 내부 조명, 히터 및 에어컨을 포함할 수 있다. 네비게이션은 자율 주행 장치(100)에 대한 운행 경로를 결정하도록 구성되는 시스템일 수 있다. 네비게이션은 자율 주행 장치(100)이 주행하고 있는 동안 동적으로 운행 경로를 갱신하도록 구성될 수 있다. 예를 들어, 네비게이션은 자율 주행 장치(100)에 대한 운행 경로를 결정하기 위해, GPS 모듈에 의하여 수집된 데이터를 이용할 수 있다.
출력부(150)는, 오디오 신호 또는 비디오 신호 또는 진동 신호의 출력을 위한 것으로, 디스플레이(151)와 음향 출력부(152), 진동부(153) 등이 포함될 수 있다.
디스플레이(151)는 자율 주행 장치(100)에서 처리되는 정보를 표시 출력할 수 있다. 예를 들어, 디스플레이(151)는 주행 경로를 포함하는 지도를 표시하거나, 외부 차량들의 위치를 표시하거나, 외부 차량들을 운전하는 운전자의 사각 지대를 표시하거나, 현재 속도, 잔여 연료량, 자율 주행 장치(100)의 주행 경로를 가이드하기 위한 정보 등을 표시할 수 있으나, 이에 한정되는 것은 아니다. 디스플레이(151)는, 통화 모드인 경우 통화와 관련된 UI(User Interface) 또는 GUI(Graphic User Interface)를 표시할 수도 있다.
한편, 디스플레이(151)와 터치패드가 레이어 구조를 이루어 터치 스크린으로 구성되는 경우, 디스플레이(151)는 출력 장치 이외에 입력 장치로도 사용될 수 있다. 디스플레이(151)는 액정 디스플레이(liquid crystal display), 박막 트랜지스터 액정 디스플레이(thin film transistor-liquid crystal display), 유기 발광 다이오드(organic light-emitting diode), 플렉시블 디스플레이(flexible display), 3차원 디스플레이(3D display), 전기영동 디스플레이(electrophoretic display) 중에서 적어도 하나를 포함할 수 있다. 그리고 장치(100)의 구현 형태에 따라 장치(100)는 디스플레이(151)를 2개 이상 포함할 수도 있다.
일 실시예에 의하면, 디스플레이(151)는 투명 디스플레이를 포함할 수 있다. 투명 디스플레이는 투명 LCD(Liquid Crystal Display) 형, 투명 TFEL(Thin-Film Electroluminescent Panel) 형, 투명 OLED 형 이외에 투사형으로도 구현될 수 있다. 투사형이란 HUD(Head Up Display)와 같이 투명한 스크린에 영상을 투사하여 디스플레이하는 방식을 의미한다.
음향 출력부(152)는 통신부(130)로부터 수신되거나 저장부(160)에 저장된 오디오 데이터를 출력할 수 있다. 또한, 음향 출력부(152)는 자율 주행 장치(100)에서 수행되는 기능과 관련된 음향 신호를 출력할 수 있다. 예를 들어, 음향 출력부(152)는 자율 주행 장치(100)의 주행 경로를 가이드하기 위한 음성 메시지를 출력할 수 있다. 이러한 음향 출력부(152)에는 스피커(speaker), 버저(Buzzer) 등이 포함될 수 있다.
진동부(153)는 진동 신호를 출력할 수 있다. 예를 들어, 진동부(153)는 오디오 데이터 또는 비디오 데이터(예컨대, 경고 메시지 등)의 출력에 대응하는 진동 신호를 출력할 수 있다.
저장부(160)는, 프로세서(120)의 처리 및 제어를 위한 프로그램을 저장할 수도 있고, 입/출력되는 데이터들(예컨대, RGB 이미지, DVS 이미지, 도로 상황 정보, 정밀 지도, 히스토그램 등)을 저장할 수도 있다. 저장부(160)는 인공지능 모델(161)을 저장할 수도 있다.
저장부(160)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(RAM, Random Access Memory) SRAM(Static Random Access Memory), 롬(ROM, Read-Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다. 또한, 장치(100)는 인터넷(internet)상에서 저장 기능을 수행하는 웹 스토리지(web storage) 또는 클라우드 서버를 운영할 수도 있다.
입력부(170)는, 사용자가 자율 주행 장치(100)를 제어하기 위한 데이터를 입력하는 수단을 의미한다. 예를 들어, 입력부(170)에는 키 패드(key pad), 돔 스위치 (dome switch), 터치 패드(접촉식 정전 용량 방식, 압력식 저항막 방식, 적외선 감지 방식, 표면 초음파 전도 방식, 적분식 장력 측정 방식, 피에조 효과 방식 등), 조그 휠, 조그 스위치 등이 있을 수 있으나, 이에 한정되는 것은 아니다.
도 18은 일 실시예에 따른 프로세서의 블록 구성도이다.
도 18을 참조하면, 일부 실시예에 따른 프로세서(120)는 데이터 학습부(1310) 및 데이터 인식부(1320)를 포함할 수 있다.
데이터 학습부(1310)는 객체 인식 상황을 판단하기 위한 기준을 학습할 수 있다. 예를 들어, 데이터 학습부(1310)는 카메라(101)를 통해 객체 인식이 어려운 상황 (예컨대, 터널 진입, 터널 진출, 저녁 또는 새벽의 역광, 야간, 조명 변화가 심한 지역 통과, 음영 지역 통과)을 판단하기 위한 기준을 학습할 수 있다. 또한, 데이터 학습부(1310)는 RGB 이미지에서 객체 인식 불가능 영역을 식별하기 위한 기준 또는 동적 비전 센서(102)의 객체 정보에 기반하여, RGB 이미지에서 관심 영역을 결정하기 위한 기준을 학습할 수 있다. 데이터 학습부(1310)는 카메라(101)의 촬영 설정 정보를 결정하기 위하여 어떤 데이터를 이용할 지, 데이터를 이용하여 촬영 설정 정보를 어떻게 결정할 지에 관한 기준을 학습할 수도 있다. 데이터 학습부(1310)는 학습에 이용될 데이터(예컨대, 이미지)를 획득하고, 획득된 데이터를 후술할 데이터 인식 모델에 적용함으로써, 카메라(101)를 통해 객체를 인식하기 위한 기준을 학습할 수 있다.
일 실시예에 의하면, 데이터 학습부(1310)는 개인화 데이터를 학습할 수도 있다. 예를 들어, 데이터 학습부(1310)는 자율 주행 장치(100)가 자주 주행하는 경로에서 얻어지는 RGB 이미지들, 컨텍스트 정보 등을 학습할 수 있다. 일 실시예에 의하면, 데이터 학습부(1310)는 자율 주행 장치(100)의 모션을 계획하기 위한 기준을 학습할 수도 있고, 자율 주행 장치(100)의 위치를 인식하기 위한 기준을 학습할 수도 있다.
데이터 인식부(1320)는 데이터에 기초한 객체 인식 상황을 판단할 수 있다. 데이터 인식부(1320)는 학습된 데이터 인식 모델을 이용하여, 검출된 데이터로부터 객체 인식 상황을 판단할 수 있다. 데이터 인식부(1320)는 학습에 의한 기 설정된 기준에 따라 이미지 데이터를 획득하고(예컨대, RGB 이미지 또는 DVS 이미지), 획득된 이미지 데이터를 입력 값으로 하여 데이터 인식 모델을 이용함으로써, 이미지 데이터에 기초한 객체 인식을 수행할 수 있다. 또한, 획득된 이미지 데이터를 입력 값으로 하여 데이터 인식 모델에 의해 출력된 결과 값은, 데이터 인식 모델을 갱신(refine)하는데 이용될 수 있다.
데이터 학습부(1310) 및 데이터 인식부(1320) 중 적어도 하나는, 적어도 하나의 하드웨어 칩 형태로 제작되어 자율 주행 장치(100)에 탑재될 수 있다. 예를 들어, 데이터 학습부(1310) 및 데이터 인식부(1320) 중 적어도 하나는 인공 지능(AI; artificial intelligence)을 위한 전용 하드웨어 칩 형태로 제작될 수도 있고, 또는 기존의 범용 프로세서(예: CPU 또는 application processor) 또는 그래픽 전용 프로세서(예: GPU)의 일부로 제작되어 자율 주행 장치(100)에 탑재될 수도 있다.
이 경우, 데이터 학습부(1310) 및 데이터 인식부(1320)는 하나의 자율 주행 장치(100)에 탑재될 수도 있으며, 또는 별개의 전자 장치들에 각각 탑재될 수도 있다. 예를 들어, 데이터 학습부(1310) 및 데이터 인식부(1320) 중 하나는 자율 주행 장치(100)에 포함되고, 나머지 하나는 서버(200)에 포함될 수 있다. 또한, 데이터 학습부(1310) 및 데이터 인식부(1320)는 유선 또는 무선으로 통하여, 데이터 학습부(1310)가 구축한 모델 정보를 데이터 인식부(1320)로 제공할 수도 있고, 데이터 인식부(1320)로 입력된 데이터가 추가 학습 데이터로서 데이터 학습부(1310)로 제공될 수도 있다.
한편, 데이터 학습부(1310) 및 데이터 인식부(1320) 중 적어도 하나는 소프트웨어 모듈로 구현될 수 있다. 데이터 학습부(1310) 및 데이터 인식부(1320) 중 적어도 하나가 소프트웨어 모듈(또는, 인스터력션(instruction) 포함하는 프로그램 모듈)로 구현되는 경우, 소프트웨어 모듈은 컴퓨터로 읽을 수 있는 판독 가능한 비일시적 판독 가능 기록매체(non-transitory computer readable media)에 저장될 수 있다. 또한, 이 경우, 적어도 하나의 소프트웨어 모듈은 OS(Operating System)에 의해 제공되거나, 소정의 애플리케이션에 의해 제공될 수 있다. 또는, 적어도 하나의 소프트웨어 모듈 중 일부는 OS(Operating System)에 의해 제공되고, 나머지 일부는 소정의 애플리케이션에 의해 제공될 수 있다.
도 19는 일 실시예에 따른 데이터 학습부(1310)의 블록 구성도이다.
도 19를 참조하면, 일 실시예에 따른 데이터 학습부(1310)는 데이터 획득부(1310-1), 전처리부(1310-2), 학습 데이터 선택부(1310-3), 모델 학습부(1310-4) 및 모델 평가부(1310-5)를 포함할 수 있다.
데이터 획득부(1310-1)는 객체 인식 상황 판단에 필요한 데이터를 획득할 수 있다. 데이터 획득부(1310-1)는 객체 인식 상황 판단을 위한 학습을 위하여 필요한 데이터(예컨대, RGB 이미지, DVS 이미지)를 획득할 수 있다. 일 실시예에 의하면, 데이터 획득부(1310-1)는 객체 인식 상황 판단에 필요한 데이터를 직접 생성할 수도 있고, 외부 장치 또는 서버로부터 객체 인식 상황 판단에 필요한 데이터를 수신할 수도 있다.
일 실시예에 의하면, 객체 인식 상황 판단에 필요한 데이터는, RGB 이미지, 동적 비전 센서(100) 객체 정보, 자율 주행 장치(100)의 주변 환경 정보, 개인화 학습 데이터 등을 포함할 수 있으나, 이에 한정되는 것은 아니다.
전처리부(1310-2)는 객체 인식 상황 판단을 위한 학습에 획득된 데이터가 이용될 수 있도록, 획득된 데이터를 전처리할 수 있다. 전처리부(1310-2)는 후술할 모델 학습부(1310-4)가 객체 인식 상황 판단을 위한 학습을 위하여 획득된 데이터를 이용할 수 있도록, 획득된 데이터를 기 설정된 포맷으로 가공할 수 있다.
학습 데이터 선택부(1310-3)는 전처리된 데이터 중에서 학습에 필요한 데이터를 선택할 수 있다. 선택된 데이터는 모델 학습부(1310-4)에 제공될 수 있다. 학습 데이터 선택부(1310-3)는 객체 인식 상황 판단을 위한 기 설정된 기준에 따라, 전처리된 데이터 중에서 학습에 필요한 데이터를 선택할 수 있다. 또한, 학습 데이터 선택부(1310-3)는 후술할 모델 학습부(1310-4)에 의한 학습에 의해 기 설정된 기준에 따라 데이터를 선택할 수도 있다.
모델 학습부(1310-4)는 학습 데이터에 기초하여 객체 인식 상황을 어떻게 판단할 지에 관한 기준을 학습할 수 있다. 또한, 모델 학습부(1310-4)는 객체 인식 상황 판단을 위하여 어떤 학습 데이터를 이용해야 하는 지에 대한 기준을 학습할 수도 있다.
또한, 모델 학습부(1310-4)는 객체 인식 상황 판단에 이용되는 데이터 인식 모델을 학습 데이터를 이용하여 학습시킬 수 있다. 이 경우, 데이터 인식 모델은 미리 구축된 모델일 수 있다. 예를 들어, 데이터 인식 모델은 기본 학습 데이터(예를 들어, 샘플 이미지 등)을 입력 받아 미리 구축된 모델일 수 있다.
데이터 인식 모델은, 인식 모델의 적용 분야, 학습의 목적 또는 장치의 컴퓨터 성능 등을 고려하여 구축될 수 있다. 데이터 인식 모델은, 예를 들어, 신경망(Neural Network)을 기반으로 하는 모델일 수 있다. 예컨대, DNN(Deep Neural Network), RNN(Recurrent Neural Network), BRDNN(Bidirectional Recurrent Deep Neural Network)과 같은 모델이 데이터 인식 모델로서 사용될 수 있으나, 이에 한정되지 않는다.
다양한 실시예에 따르면, 모델 학습부(1310-4)는 미리 구축된 데이터 인식 모델이 복수 개가 존재하는 경우, 입력된 학습 데이터와 기본 학습 데이터의 관련성이 큰 데이터 인식 모델을 학습할 데이터 인식 모델로 결정할 수 있다. 이 경우, 기본 학습 데이터는 데이터의 타입 별로 기 분류되어 있을 수 있으며, 데이터 인식 모델은 데이터의 타입 별로 미리 구축되어 있을 수 있다. 예를 들어, 기본 학습 데이터는 학습 데이터가 생성된 지역, 학습 데이터가 생성된 시간, 학습 데이터의 크기, 학습 데이터의 장르, 학습 데이터의 생성자, 학습 데이터 내의 오브젝트의 종류 등과 같은 다양한 기준으로 기 분류되어 있을 수 있다.
또한, 모델 학습부(1310-4)는, 예를 들어, 오류 역전파법(error back-propagation) 또는 경사 하강법(gradient descent)을 포함하는 학습 알고리즘 등을 이용하여 데이터 인식 모델을 학습시킬 수 있다.
또한, 모델 학습부(1310-4)는, 예를 들어, 학습 데이터를 입력 값으로 하는 지도 학습(supervised learning) 을 통하여, 데이터 인식 모델을 학습시킬 수 있다. 또한, 모델 학습부(1310-4)는, 예를 들어, 별다른 지도없이 상황 판단을 위해 필요한 데이터의 종류를 스스로 학습함으로써, 객체 인식 상황 판단을 위한 기준을 발견하는 비지도 학습(unsupervised learning)을 통하여, 데이터 인식 모델을 학습시킬 수 있다. 또한, 모델 학습부(1310-4)는, 예를 들어, 학습에 따른 객체 인식 상황 판단의 결과가 올바른 지에 대한 피드백을 이용하는 강화 학습(reinforcement learning)을 통하여, 데이터 인식 모델을 학습시킬 수 있다.
또한, 데이터 인식 모델이 학습되면, 모델 학습부(1310-4)는 학습된 데이터 인식 모델을 저장할 수 있다. 이 경우, 모델 학습부(1310-4)는 학습된 데이터 인식 모델을 데이터 인식부(1320)를 포함하는 자율 주행 장치(100)의 저장부(160)에 저장할 수 있다. 또는, 모델 학습부(1310-4)는 학습된 데이터 인식 모델을 후술할 데이터 인식부(1320)를 포함하는 자율 주행 장치(100)의 저장부(160)에 저장할 수 있다. 또는, 모델 학습부(1310-4)는 학습된 데이터 인식 모델을 자율 주행 장치(100)와 유선 또는 무선 네트워크로 연결되는 서버(200)의 메모리에 저장할 수도 있다.
이 경우, 학습된 데이터 인식 모델이 저장되는 저장부(160)는, 예를 들면, 자율 주행 장치(100)의 적어도 하나의 다른 구성요소에 관계된 명령 또는 데이터를 함께 저장할 수도 있다. 또한, 저장부(160)는 소프트웨어 및/또는 프로그램을 저장할 수도 있다. 프로그램은, 예를 들면, 커널, 미들웨어, 어플리케이션 프로그래밍 인터페이스(API) 및/또는 어플리케이션 프로그램(또는 "어플리케이션") 등을 포함할 수 있다.
모델 평가부(1310-5)는 데이터 인식 모델에 평가 데이터를 입력하고, 평가 데이터로부터 출력되는 인식 결과가 소정 기준을 만족하지 못하는 경우, 모델 학습부(1310-4)로 하여금 다시 학습하도록 할 수 있다. 이 경우, 평가 데이터는 데이터 인식 모델을 평가하기 위한 기 설정된 데이터일 수 있다.
예를 들어, 모델 평가부(1310-5)는 평가 데이터에 대한 학습된 데이터 인식 모델의 인식 결과 중에서, 인식 결과가 정확하지 않은 평가 데이터의 개수 또는 비율이 미리 설정된 임계치를 초과하는 경우 소정 기준을 만족하지 못한 것으로 평가할 수 있다. 예컨대, 소정 기준이 비율 2%로 정의되는 경우, 학습된 데이터 인식 모델이 총 1000개의 평가 데이터 중의 20개를 초과하는 평가 데이터에 대하여 잘못된 인식 결과를 출력하는 경우, 모델 평가부(1310-5)는 학습된 데이터 인식 모델이 적합하지 않은 것으로 평가할 수 있다.
한편, 학습된 데이터 인식 모델이 복수 개가 존재하는 경우, 모델 평가부(1310-5)는 각각의 학습된 동영상 인식 모델에 대하여 소정 기준을 만족하는지를 평가하고, 소정 기준을 만족하는 모델을 최종 데이터 인식 모델로서 결정할 수 있다. 이 경우, 소정 기준을 만족하는 모델이 복수 개인 경우, 모델 평가부(1310-5)는 평가 점수가 높은 순으로 미리 설정된 어느 하나 또는 소정 개수의 모델을 최종 데이터 인식 모델로서 결정할 수 있다.
한편, 데이터 학습부(1310) 내의 데이터 획득부(1310-1), 전처리부(1310-2), 학습 데이터 선택부(1310-3), 모델 학습부(1310-4) 및 모델 평가부(1310-5) 중 적어도 하나는, 적어도 하나의 하드웨어 칩 형태로 제작되어 자율 주행 장치(100)에 탑재될 수 있다. 예를 들어, 데이터 획득부(1310-1), 전처리부(1310-2), 학습 데이터 선택부(1310-3), 모델 학습부(1310-4) 및 모델 평가부(1310-5) 중 적어도 하나는 인공 지능(AI; artificial intelligence)을 위한 전용 하드웨어 칩 형태로 제작될 수도 있고, 또는 기존의 범용 프로세서(예: CPU 또는 application processor) 또는 그래픽 전용 프로세서(예: GPU)의 일부로 제작되어 자율 주행 장치(100)에 탑재될 수도 있다.
또한, 데이터 획득부(1310-1), 전처리부(1310-2), 학습 데이터 선택부(1310-3), 모델 학습부(1310-4) 및 모델 평가부(1310-5)는 하나의 자율 주행 장치(100)에 탑재될 수도 있으며, 또는 별개의 전자 장치들에 각각 탑재될 수도 있다. 예를 들어, 데이터 획득부(1310-1), 전처리부(1310-2), 학습 데이터 선택부(1310-3), 모델 학습부(1310-4) 및 모델 평가부(1310-5) 중 일부는 자율 주행 장치(100)에 포함되고, 나머지 일부는 서버(200)에 포함될 수 있다.
또한, 데이터 획득부(1310-1), 전처리부(1310-2), 학습 데이터 선택부(1310-3), 모델 학습부(1310-4) 및 모델 평가부(1310-5) 중 적어도 하나는 소프트웨어 모듈로 구현될 수 있다. 데이터 획득부(1310-1), 전처리부(1310-2), 학습 데이터 선택부(1310-3), 모델 학습부(1310-4) 및 모델 평가부(1310-5) 중 적어도 하나가 소프트웨어 모듈(또는, 인스터력션(instruction) 포함하는 프로그램 모듈)로 구현되는 경우, 소프트웨어 모듈은 컴퓨터로 읽을 수 있는 판독 가능한 비일시적 판독 가능 기록매체(non-transitory computer readable media)에 저장될 수 있다. 또한, 이 경우, 적어도 하나의 소프트웨어 모듈은 OS(Operating System)에 의해 제공되거나, 소정의 애플리케이션에 의해 제공될 수 있다. 또는, 적어도 하나의 소프트웨어 모듈 중 일부는 OS(Operating System)에 의해 제공되고, 나머지 일부는 소정의 애플리케이션에 의해 제공될 수 있다.
도 20은 일 실시예에 따른 데이터 인식부(1320)의 블록 구성도이다.
도 20을 참조하면, 일 실시예에 따른 데이터 인식부(1320)는 데이터 획득부(1320-1), 전처리부(1320-2), 인식 데이터 선택부(1320-3), 인식 결과 제공부(1320-4) 및 모델 갱신부(1320-5)를 포함할 수 있다.
데이터 획득부(1320-1)는 객체 인식 상황 판단에 필요한 데이터를 획득할 수 있으며, 전처리부(1320-2)는 객체 인식 상황 판단을 위해 획득된 데이터가 이용될 수 있도록, 획득된 데이터를 전처리할 수 있다. 전처리부(1320-2)는 후술할 인식 결과 제공부(1320-4)가 객체 인식 상황 판단을 위하여 획득된 데이터를 이용할 수 있도록, 획득된 데이터를 기 설정된 포맷으로 가공할 수 있다.
인식 데이터 선택부(1320-3)는 전처리된 데이터 중에서 객체 인식 상황 판단에 필요한 데이터를 선택할 수 있다. 선택된 데이터는 인식 결과 제공부(1320-4)에 제공될 수 있다. 인식 데이터 선택부(1320-3)는 객체 인식 상황 판단을 위한 기 설정된 기준에 따라, 전처리된 데이터 중에서 일부 또는 전부를 선택할 수 있다. 또한, 인식 데이터 선택부(1320-3)는 후술할 모델 학습부(1310-4)에 의한 학습에 의해 기 설정된 기준에 따라 데이터를 선택할 수도 있다.
인식 결과 제공부(1320-4)는 선택된 데이터를 데이터 인식 모델에 적용하여 객체 인식 상황을 판단할 수 있다. 인식 결과 제공부(1320-4)는 데이터의 인식 목적에 따른 인식 결과를 제공할 수 있다. 인식 결과 제공부(1320-4)는 인식 데이터 선택부(1320-3)에 의해 선택된 데이터를 입력 값으로 이용함으로써, 선택된 데이터를 데이터 인식 모델에 적용할 수 있다. 또한, 인식 결과는 데이터 인식 모델에 의해 결정될 수 있다.
예를 들어, 적어도 하나의 이미지의 인식 결과는 텍스트, 음성, 동영상, 이미지 또는 명령어(예로, 어플리케이션 실행 명령어, 모듈 기능 실행 명령어 등) 등으로 제공될 수 있다. 일 예로, 인식 결과 제공부(1320-4)는 적어도 하나의 이미지에 포함된 객체의 인식 결과를 제공할 수 있다. 인식 결과는, 예로, 적어도 하나의 이미지에 포함된 객체의 자세 정보, 객체의 주변 상태 정보, 동영상에 포함된 객체의 움직임 변화 정보 등이 될 수 있다.
모델 갱신부(1320-5)는 인식 결과 제공부(1320-4)에 의해 제공되는 인식 결과에 대한 평가에 기초하여, 데이터 인식 모델이 갱신되도록 할 수 있다. 예를 들어, 모델 갱신부(1320-5)는 인식 결과 제공부(1320-4)에 의해 제공되는 인식 결과를 모델 학습부(1310-4)에게 제공함으로써, 모델 학습부(1310-4)가 데이터 인식 모델을 갱신하도록 할 수 있다.
한편, 데이터 인식부(1320) 내의 데이터 획득부(1320-1), 전처리부(1320-2), 인식 데이터 선택부(1320-3), 인식 결과 제공부(1320-4) 및 모델 갱신부(1320-5) 중 적어도 하나는, 적어도 하나의 하드웨어 칩 형태로 제작되어 자율 주행 장치(100)에 탑재될 수 있다. 예를 들어, 데이터 획득부(1320-1), 전처리부(1320-2), 인식 데이터 선택부(1320-3), 인식 결과 제공부(1320-4) 및 모델 갱신부(1320-5) 중 적어도 하나는 인공 지능(AI; artificial intelligence)을 위한 전용 하드웨어 칩 형태로 제작될 수도 있고, 또는 기존의 범용 프로세서(예: CPU 또는 application processor) 또는 그래픽 전용 프로세서(예: GPU)의 일부로 제작되어 자율 주행 장치(100)에 탑재될 수도 있다.
또한, 데이터 획득부(1320-1), 전처리부(1320-2), 인식 데이터 선택부(1320-3), 인식 결과 제공부(1320-4) 및 모델 갱신부(1320-5)는 하나의 자율 주행 장치(100)에 탑재될 수도 있으며, 또는 별개의 전자 장치들에 각각 탑재될 수도 있다. 예를 들어, 데이터 획득부(1320-1), 전처리부(1320-2), 인식 데이터 선택부(1320-3), 인식 결과 제공부(1320-4) 및 모델 갱신부(1320-5) 중 일부는 자율 주행 장치(100)에 포함되고, 나머지 일부는 서버(200)에 포함될 수 있다.
또한, 데이터 획득부(1320-1), 전처리부(1320-2), 인식 데이터 선택부(1320-3), 인식 결과 제공부(1320-4) 및 모델 갱신부(1320-5) 중 적어도 하나는 소프트웨어 모듈로 구현될 수 있다. 데이터 획득부(1320-1), 전처리부(1320-2), 인식 데이터 선택부(1320-3), 인식 결과 제공부(1320-4) 및 모델 갱신부(1320-5) 중 적어도 하나가 소프트웨어 모듈(또는, 인스터력션(instruction) 포함하는 프로그램 모듈)로 구현되는 경우, 소프트웨어 모듈은 컴퓨터로 읽을 수 있는 판독 가능한 비일시적 판독 가능 기록매체(non-transitory computer readable media)에 저장될 수 있다. 또한, 이 경우, 적어도 하나의 소프트웨어 모듈은 OS(Operating System)에 의해 제공되거나, 소정의 애플리케이션에 의해 제공될 수 있다. 또는, 적어도 하나의 소프트웨어 모듈 중 일부는 OS(Operating System)에 의해 제공되고, 나머지 일부는 소정의 애플리케이션에 의해 제공될 수 있다.
도 21은 일 실시예에 따른 자율 주행 장치(100) 및 서버(200)가 서로 연동함으로써 데이터를 학습하고 인식하는 예시를 나타내는 도면이다.
도 21을 참조하면, 서버(200)는 객체 인식 상황 판단을 위한 기준을 학습할 수 있으며, 자율 주행 장치(100)는 서버(200)에 의한 학습 결과에 기초하여 객체 인식 상황을 판단할 수 있다.
이 경우, 서버(200)의 모델 학습부(2340)는 도 19에 도시된 데이터 학습부(1310)의 기능을 수행할 수 있다. 서버(200)의 모델 학습부(2340)는 객체 인식 상황을 판단하기 위하여 어떤 데이터를 이용할 지, 데이터를 이용하여 객체 인식 상황을 어떻게 판단할 지에 관한 기준을 학습할 수 있다. 모델 학습부(2340)는 학습에 이용될 데이터를 획득하고, 획득된 데이터를 후술할 데이터 인식 모델에 적용함으로써, 객체 인식 상황 판단을 위한 기준을 학습할 수 있다.
또한, 자율 주행 장치(100)의 인식 결과 제공부(1320-4)는 인식 데이터 선택부(1320-3)에 의해 선택된 데이터를 서버(200)에 의해 생성된 데이터 인식 모델에 적용하여 객체 인식 상황을 판단할 수 있다. 예를 들어, 인식 결과 제공부(1320-4)는 인식 데이터 선택부(1320-3)에 의해 선택된 데이터를 서버(200)에 전송하고, 서버(200)가 인식 데이터 선택부(1320-3)에 의해 선택된 데이터를 인식 모델에 적용하여 객체 인식 상황을 판단할 것을 요청할 수 있다. 또한, 인식 결과 제공부(1320-4)는 서버(200)에 의해 판단된 객체 인식 상황에 관한 정보를 서버(200)로부터 수신할 수 있다.
또는, 자율 주행 장치(100)의 인식 결과 제공부(1320-4)는 서버(200)에 의해 생성된 인식 모델을 서버(200)로부터 수신하고, 수신된 인식 모델을 이용하여 객체 인식 상황을 판단할 수 있다. 이 경우, 자율 주행 장치(100)의 인식 결과 제공부(1320-4)는 인식 데이터 선택부(1320-3)에 의해 선택된 데이터를 서버(200)로부터 수신된 데이터 인식 모델에 적용하여 객체 인식 상황을 판단할 수 있다.
일 실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
일부 실시예는 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. 통신 매체는 전형적으로 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈, 또는 반송파와 같은 변조된 데이터 신호의 기타 데이터, 또는 기타 전송 메커니즘을 포함하며, 임의의 정보 전달 매체를 포함한다.  또한, 일부 실시예는 컴퓨터에 의해 실행되는 컴퓨터 프로그램과 같은 컴퓨터에 의해 실행가능한 명령어를 포함하는 컴퓨터 프로그램 또는 컴퓨터 프로그램 제품 (computer program product)으로도 구현될 수 있다.
이상에서 본 발명의 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속한다.

Claims (20)

  1. 자율 주행 장치가 객체를 인식하는 방법에 있어서,
    상기 자율 주행 장치에 배치된 카메라를 이용하여 제 1 RGB 이미지를 획득하는 단계;
    상기 제 1 RGB 이미지의 명도(brightness) 정보에 기초하여, 상기 제 1 RGB 이미지 내에서 객체 인식이 불가능한 적어도 하나의 제 1 영역을 예측하는 단계;
    상기 자율 주행 장치에 배치된 동적 비전 센서(DVS: Dynamic Vision Sensor)를 통해 획득되는 객체 정보에 기초하여, 상기 적어도 하나의 제 1 영역 중에서 객체가 존재하는 적어도 하나의 제 2 영역을 결정하는 단계;
    상기 적어도 하나의 제 2 영역과 관련하여 상기 카메라의 촬영 설정 정보(photographic configuration information)를 제어함으로써, 개선된(enhanced) 제 2 RGB 이미지를 획득하는 단계; 및
    상기 제 2 RGB 이미지 내에서 상기 객체를 인식하는 단계를 포함하는, 방법.
  2. 제 1 항에 있어서, 상기 객체 인식이 불가능한 적어도 하나의 제 1 영역을 예측하는 단계는,
    상기 제 1 RGB 이미지 내에서 명도 값(brightness value)이 임계 범위를 벗어나는 영역을 상기 적어도 하나의 제 1 영역으로 예측하는 단계를 포함하는, 방법.
  3. 제 1 항에 있어서, 상기 객체 인식이 불가능한 적어도 하나의 제 1 영역을 예측하는 단계는,
    상기 제 1 RGB 이미지를 분석하여, 상기 제 1 RGB 이미지의 히스토그램을 획득하는 단계;
    상기 제 1 RGB 이미지의 히스토그램을 이용하여, 상기 제 1 RGB 이미지 내에서 객체 인식 불가능 영역이 존재하는지 판단하는 단계; 및
    상기 제 1 RGB 이미지 내에서 객체 인식 불가능 영역이 존재한다고 판단되는 경우, 상기 제 1 RGB 이미지의 명도 정보에 기초하여, 상기 제 1 RGB 이미지 내에서 상기 적어도 하나의 제 1 영역을 예측하는 단계를 포함하는, 방법.
  4. 제 1 항에 있어서, 상기 객체 인식이 불가능한 적어도 하나의 제 1 영역을 예측하는 단계는,
    복수의 RGB 이미지를 학습한 제 1 인공 지능 모델을 이용하여, 상기 제 1 RGB 이미지 내에서 객체 인식 불가능 영역이 존재하는지 판단하는 단계; 및
    상기 제 1 RGB 이미지 내에서 객체 인식 불가능 영역이 존재한다고 판단되는 경우, 상기 제 1 인공 지능 모델을 이용하여 상기 제 1 RGB 이미지 내에서 상기 적어도 하나의 제 1 영역을 예측하는 단계를 포함하는, 방법.
  5. 제 1 항에 있어서, 상기 객체 정보는,
    상기 동적 비전 센서(DVS)를 통해 획득되는 DVS 이미지 및 상기 DVS 이미지에서 검출되는 적어도 하나의 객체에 대한 위치 정보 중 적어도 하나를 포함하는, 방법.
  6. 제 1 항에 있어서, 상기 적어도 하나의 제 1 영역 중에서 객체가 존재하는 적어도 하나의 제 2 영역을 결정하는 단계는,
    상기 제 1 RGB 이미지 및 상기 동적 비전 센서를 통해 획득되는 DVS 이미지를 제 2 인공 지능 모델에 적용하여, 상기 적어도 하나의 제 2 영역을 결정하는 단계를 포함하는, 방법.
  7. 제 1 항에 있어서, 상기 제 2 RGB 이미지를 획득하는 단계는,
    상기 적어도 하나의 제 2 영역에 대한 노출, 포커스 및 화이트 밸런스 중 적어도 하나를 제어하는 단계를 포함하는, 방법.
  8. 제 1 항에 있어서, 상기 제 2 RGB 이미지를 획득하는 단계는,
    상기 카메라의 센서 감도(GAIN), 조리개 및 노출 시간 중 적어도 하나를 조절하는 단계를 포함하는, 방법.
  9. 제 1 항에 있어서, 상기 방법은,
    상기 제 2 RGB 이미지가 복수의 프레임으로 구성되는 경우, 상기 복수의 프레임 각각에서 인식되는 상기 객체에 포함된 특징(feature)을 추적 (tracking)하여, 상기 자율 주행 장치의 위치 정보를 획득하는 단계를 더 포함하는, 방법.
  10. 제 1 항에 있어서, 상기 방법은,
    상기 인식된 객체에 관한 정보에 기초하여, 상기 자율 주행 장치의 경로를 결정하는 단계를 더 포함하는, 방법.
  11. 제 1 항에 있어서, 상기 방법은,
    상기 카메라를 이용하여, 상기 인식된 객체를 추적하는 단계;
    상기 동적 비전 센서를 통해, 상기 자율 주행 장치 주변에 나타나는 새로운 객체를 감지하는 단계;
    상기 새로운 객체가 감지됨에 따라, 상기 카메라를 통해 획득되는 제 3 RGB 이미지 내에서 상기 새로운 객체가 인식될 가능성이 임계 값보다 큰 후보 영역을 결정하는 단계; 및
    상기 후보 영역에 대한 영상 처리를 통해 상기 제 3 RGB 이미지에서 상기 새로운 객체를 인식하는 단계를 더 포함하는, 방법.
  12. 카메라;
    동적 비전 센서(DVS: Dynamic Vision Sensor); 및
    적어도 하나의 프로세서를 포함하고,
    상기 적어도 하나의 프로세서는,
    상기 카메라를 통해 제 1 RGB 이미지를 획득하는 동작;
    상기 제 1 RGB 이미지의 명도 정보에 기초하여, 상기 제 1 RGB 이미지 내에서 객체 인식이 불가능한 적어도 하나의 제 1 영역을 예측하는 동작;
    상기 동적 비전 센서를 통해 획득되는 객체 정보에 기초하여, 상기 적어도 하나의 제 1 영역 중에서 객체가 존재하는 적어도 하나의 제 2 영역을 결정하는 동작;
    상기 적어도 하나의 제 2 영역과 관련하여 상기 카메라의 촬영 설정 정보(photographic configuration information)를 제어함으로써, 개선된(enhanced) 제 2 RGB 이미지를 획득하는 동작; 및
    상기 제 2 RGB 이미지 내에서 상기 객체를 인식하는 동작을 수행하는, 자율 주행 장치.
  13. 제 12 항에 있어서, 상기 적어도 하나의 프로세서는,
    상기 제 1 RGB 이미지 내에서 명도 값(brightness value)이 임계 범위를 벗어나는 영역을 상기 적어도 하나의 제 1 영역으로 예측하는, 자율 주행 장치.
  14. 제 12 항에 있어서, 상기 적어도 하나의 프로세서는,
    상기 제 1 RGB 이미지를 분석하여, 상기 제 1 RGB 이미지의 히스토그램을 획득하는 동작;
    상기 제 1 RGB 이미지의 히스토그램을 이용하여, 상기 제 1 RGB 이미지 내에서 객체 인식 불가능 영역이 존재하는지 판단하는 동작; 및
    상기 제 1 RGB 이미지 내에서 객체 인식 불가능 영역이 존재한다고 판단되는 경우, 상기 제 1 RGB 이미지의 명도 정보에 기초하여, 상기 제 1 RGB 이미지 내에서 상기 적어도 하나의 제 1 영역을 예측하는 동작을 수행하는, 자율 주행 장치.
  15. 제 12 항에 있어서,
    상기 적어도 하나의 프로세서는 인공 지능 프로세서를 포함하고,
    상기 인공 지능 프로세서는, 복수의 RGB 이미지를 학습한 제 1 인공 지능 모델을 이용하여, 상기 제 1 RGB 이미지 내에서 객체 인식 불가능 영역이 존재하는지 판단하고, 상기 제 1 RGB 이미지 내에서 객체 인식 불가능 영역이 존재한다고 판단되는 경우, 상기 제 1 인공 지능 모델을 이용하여 상기 제 1 RGB 이미지 내에서 상기 적어도 하나의 제 1 영역을 예측하는, 자율 주행 장치.
  16. 제 12 항에 있어서, 상기 적어도 하나의 프로세서는,
    상기 카메라의 센서 감도(GAIN), 조리개 및 노출 시간 중 적어도 하나를 조절함으로써, 상기 카메라의 촬영 설정 정보를 제어하는, 자율 주행 장치.
  17. 제 12 항에 있어서, 상기 적어도 하나의 프로세서는,
    상기 카메라를 이용하여, 상기 인식된 객체를 추적하는 동작;
    상기 동적 비전 센서를 통해, 상기 자율 주행 장치 주변에 나타나는 새로운 객체를 감지하는 동작;
    상기 새로운 객체가 감지됨에 따라, 상기 카메라를 통해 획득되는 제 3 RGB 이미지 내에서 상기 새로운 객체가 인식될 가능성이 임계 값보다 큰 후보 영역을 결정하는 동작; 및
    상기 후보 영역에 대한 영상 처리를 통해 상기 제 3 RGB 이미지에서 상기 새로운 객체를 인식하는 동작을 더 수행하는, 자율 주행 장치.
  18. 제 12 항에 있어서, 상기 적어도 하나의 프로세서는,
    상기 동적 비전 센서의 프레임 레이트를 상기 카메라의 프레임 레이트와 동일하게 설정하는, 자율 주행 장치.
  19. 제 12 항에 있어서, 상기 자율 주행 장치는,
    자율 주행 차량, 자율 비행 장치 및 자율 주행 로봇 중 적어도 하나를 포함하는, 자율 주행 장치.
  20. 카메라를 이용하여 제 1 RGB 이미지를 획득하는 동작;
    상기 제 1 RGB 이미지의 명도 정보에 기초하여, 상기 제 1 RGB 이미지 내에서 객체 인식이 불가능한 적어도 하나의 제 1 영역을 예측하는 동작;
    동적 비전 센서(DVS: Dynamic Vision Sensor)를 통해 획득되는 객체 정보에 기초하여, 상기 적어도 하나의 제 1 영역 중에서 객체가 존재하는 적어도 하나의 제 2 영역을 결정하는 동작;
    상기 적어도 하나의 제 2 영역과 관련하여 상기 카메라의 촬영 설정 정보(photographic configuration information)를 제어함으로써, 개선된(enhanced) 제 2 RGB 이미지를 획득하는 동작; 및
    상기 제 2 RGB 이미지 내에서 상기 객체를 인식하는 동작을 수행하도록 하는 프로그램이 저장된 기록매체를 포함하는 컴퓨터 프로그램 제품.
KR1020180119303A 2018-10-05 2018-10-05 자율 주행 장치의 객체 인식 방법 및 자율 주행 장치 KR102584501B1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020180119303A KR102584501B1 (ko) 2018-10-05 2018-10-05 자율 주행 장치의 객체 인식 방법 및 자율 주행 장치
US17/278,018 US11875574B2 (en) 2018-10-05 2019-09-26 Object recognition method of autonomous driving device, and autonomous driving device
EP19869994.4A EP3848849A4 (en) 2018-10-05 2019-09-26 OBJECT DETECTION METHOD OF AN AUTONOMOUS DRIVING DEVICE AND AUTONOMOUS DRIVING DEVICE
PCT/KR2019/012484 WO2020071683A1 (ko) 2018-10-05 2019-09-26 자율 주행 장치의 객체 인식 방법 및 자율 주행 장치
CN201980065499.5A CN112805718A (zh) 2018-10-05 2019-09-26 自动驾驶装置的对象识别方法以及自动驾驶装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180119303A KR102584501B1 (ko) 2018-10-05 2018-10-05 자율 주행 장치의 객체 인식 방법 및 자율 주행 장치

Publications (2)

Publication Number Publication Date
KR20200044182A true KR20200044182A (ko) 2020-04-29
KR102584501B1 KR102584501B1 (ko) 2023-10-04

Family

ID=70055578

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180119303A KR102584501B1 (ko) 2018-10-05 2018-10-05 자율 주행 장치의 객체 인식 방법 및 자율 주행 장치

Country Status (5)

Country Link
US (1) US11875574B2 (ko)
EP (1) EP3848849A4 (ko)
KR (1) KR102584501B1 (ko)
CN (1) CN112805718A (ko)
WO (1) WO2020071683A1 (ko)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210133827A (ko) * 2020-04-29 2021-11-08 한국건설기술연구원 딥러닝 모델을 학습시키기 위한 장치 및 그 방법
WO2022016340A1 (zh) * 2020-07-20 2022-01-27 深圳市大疆创新科技有限公司 确定主摄像装置曝光参数的方法、系统、可移动平台及存储介质
KR102378890B1 (ko) * 2021-07-08 2022-03-28 주식회사 인피닉 어노테이션을 위한 3d 점군의 데이터 로드를 감축시키는 방법
KR20220092132A (ko) * 2020-12-24 2022-07-01 고등기술연구원연구조합 크레인의 충돌 방지 시스템 및 충돌 방지 방법
WO2022250246A1 (ko) * 2021-05-25 2022-12-01 삼성전자 주식회사 움직이는 객체에 대한 효과를 이미지에 적용하는 전자 장치 및 그 작동 방법
US20220385832A1 (en) * 2021-05-25 2022-12-01 Samsung Electronics Co., Ltd. Electronic device for applying effect for moving object to image and method for operating the same
KR20230020845A (ko) 2021-08-04 2023-02-13 현대자동차주식회사 전자장치 및 그의 객체 추적 방법
KR102540632B1 (ko) * 2022-10-27 2023-06-13 주식회사 모빌테크 색상 보정을 적용한 컬러맵 생성 방법 및 이를 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램
WO2023158205A1 (ko) * 2022-02-16 2023-08-24 한화비전 주식회사 Ai 기반 객체인식을 통한 감시 카메라 영상의 노이즈 제거
CN116912798A (zh) * 2023-09-14 2023-10-20 南京航空航天大学 基于跨模态噪声感知的自动驾驶事件相机目标检测方法
KR102637641B1 (ko) * 2022-09-22 2024-02-16 한국지질자원연구원 지하 광산 갱도 및 터널용 초분광 스캐닝 시스템

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11126195B2 (en) * 2017-06-12 2021-09-21 Faraday & Future Inc. System and method for detecting occluded objects based on image processing
KR102584501B1 (ko) * 2018-10-05 2023-10-04 삼성전자주식회사 자율 주행 장치의 객체 인식 방법 및 자율 주행 장치
JP2022028982A (ja) * 2018-12-05 2022-02-17 ソニーセミコンダクタソリューションズ株式会社 固体撮像装置、信号処理チップ、および、電子機器
EP3770881B1 (en) * 2019-07-26 2023-11-15 Volkswagen AG Methods, computer programs, apparatuses, a vehicle, and a traffic entity for updating an environmental model of a vehicle
US20230171510A1 (en) * 2020-07-15 2023-06-01 Arriver Software Ab Vision system for a motor vehicle
US11562572B2 (en) 2020-12-11 2023-01-24 Argo AI, LLC Estimating auto exposure values of camera by prioritizing object of interest based on contextual inputs from 3D maps
CN116918342A (zh) * 2021-02-08 2023-10-20 华为技术有限公司 确定用于成像的曝光参数
JP7286691B2 (ja) * 2021-02-19 2023-06-05 本田技研工業株式会社 判定装置、車両制御装置、判定方法、およびプログラム
US11987264B2 (en) * 2021-03-31 2024-05-21 Wipro Limited Method and system for recognizing activities in surrounding environment for controlling navigation of autonomous vehicle
CN113378684B (zh) * 2021-06-04 2024-03-29 北京顺造科技有限公司 清洁设备及用于清洁设备的光触发事件识别方法
CN113506324B (zh) * 2021-07-15 2024-04-12 清华大学 图像处理方法及装置、电子设备和存储介质
CN113326820B (zh) * 2021-08-02 2021-11-30 中汽创智科技有限公司 一种行驶环境感知方法、装置、电子设备及存储介质
US20230132156A1 (en) * 2021-10-26 2023-04-27 Qualcomm Incorporated Calibration of a camera according to a characteristic of a physical environment
US11558542B1 (en) * 2022-01-03 2023-01-17 Omnivision Technologies, Inc. Event-assisted autofocus methods and apparatus implementing the same
US11594016B1 (en) * 2022-05-03 2023-02-28 Plusai, Inc. Navigating a vehicle based on data processing using synthetically generated images

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120052547A (ko) * 2010-11-16 2012-05-24 주식회사 만도 페일세이프 기능을 구비한 비전 시스템 및 그 비전 시스템의 페일세이프 방법
KR20180025591A (ko) * 2016-09-01 2018-03-09 삼성전자주식회사 자율 주행 차량을 위한 비전 센서의 제어 방법 및 장치
KR20180040209A (ko) * 2016-10-12 2018-04-20 현대자동차주식회사 자율 주행 제어 장치, 그를 가지는 차량 및 그 제어 방법

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102081087B1 (ko) * 2013-06-17 2020-02-25 삼성전자주식회사 동기적 영상과 비동기적 영상을 위한 영상 정합 장치 및 이미지 센서
JP6429452B2 (ja) * 2013-11-22 2018-11-28 ルネサスエレクトロニクス株式会社 車載用画像処理装置及び半導体装置
KR101940718B1 (ko) 2015-09-04 2019-01-22 한국전자통신연구원 Rgb-d 영상 기반 사람 영역 추출 장치 및 그 방법
KR102457724B1 (ko) * 2015-09-22 2022-10-24 삼성전자주식회사 영상 처리를 수행하기 위한 방법 및 그 전자 장치
KR101764222B1 (ko) * 2015-12-22 2017-08-03 재단법인대구경북과학기술원 고정밀 측위 시스템 및 방법
US10062151B2 (en) 2016-01-21 2018-08-28 Samsung Electronics Co., Ltd. Image deblurring method and apparatus
CN106991650B (zh) * 2016-01-21 2020-09-15 北京三星通信技术研究有限公司 一种图像去模糊的方法和装置
EP3433131B1 (en) 2016-03-23 2023-07-12 Netradyne, Inc. Advanced path prediction
KR20180097966A (ko) 2017-02-24 2018-09-03 삼성전자주식회사 자율 주행을 위한 영상 처리 방법 및 장치
WO2019111464A1 (ja) * 2017-12-04 2019-06-13 ソニー株式会社 画像処理装置及び画像処理方法
US10798368B2 (en) * 2018-03-13 2020-10-06 Lyft, Inc. Exposure coordination for multiple cameras
BR112021004210A2 (pt) * 2018-09-13 2021-05-25 Sony Semiconductor Solutions Corporation aparelho e método de processamento de informações, aparelho de formação de imagem, dispositivo móvel, e, programa de computador
US11508049B2 (en) * 2018-09-13 2022-11-22 Nvidia Corporation Deep neural network processing for sensor blindness detection in autonomous machine applications
KR102584501B1 (ko) * 2018-10-05 2023-10-04 삼성전자주식회사 자율 주행 장치의 객체 인식 방법 및 자율 주행 장치
EP3844714A4 (en) * 2018-10-26 2021-12-01 Samsung Electronics Co., Ltd. METHOD AND DEVICE FOR IMAGE SEGMENTATION USING AN EVENT SENSOR
US11170299B2 (en) * 2018-12-28 2021-11-09 Nvidia Corporation Distance estimation to objects and free-space boundaries in autonomous machine applications
US11847808B2 (en) * 2019-10-14 2023-12-19 Qualcomm Incorporated Systems and methods region-of-interest automatic gain or exposure control
JPWO2021111891A1 (ko) * 2019-12-05 2021-06-10
US11521371B2 (en) * 2019-12-26 2022-12-06 Woven Planet North America, Inc. Systems and methods for semantic map-based adaptive auto-exposure
CN114454809A (zh) * 2020-10-31 2022-05-10 华为技术有限公司 一种智能灯光切换方法、系统及相关设备
KR102445008B1 (ko) * 2020-12-31 2022-09-21 한국전자통신연구원 이벤트 기반 영상 센싱 장치 및 방법
KR20230086979A (ko) * 2021-12-09 2023-06-16 현대자동차주식회사 차량 및 차량의 제어방법
US20230186593A1 (en) * 2021-12-13 2023-06-15 Nvidia Corporation Glare mitigation using image contrast analysis for autonomous systems and applications

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120052547A (ko) * 2010-11-16 2012-05-24 주식회사 만도 페일세이프 기능을 구비한 비전 시스템 및 그 비전 시스템의 페일세이프 방법
KR20180025591A (ko) * 2016-09-01 2018-03-09 삼성전자주식회사 자율 주행 차량을 위한 비전 센서의 제어 방법 및 장치
KR20180040209A (ko) * 2016-10-12 2018-04-20 현대자동차주식회사 자율 주행 제어 장치, 그를 가지는 차량 및 그 제어 방법

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210133827A (ko) * 2020-04-29 2021-11-08 한국건설기술연구원 딥러닝 모델을 학습시키기 위한 장치 및 그 방법
WO2022016340A1 (zh) * 2020-07-20 2022-01-27 深圳市大疆创新科技有限公司 确定主摄像装置曝光参数的方法、系统、可移动平台及存储介质
KR20220092132A (ko) * 2020-12-24 2022-07-01 고등기술연구원연구조합 크레인의 충돌 방지 시스템 및 충돌 방지 방법
US11677898B2 (en) * 2021-05-25 2023-06-13 Samsung Electronics Co., Ltd. Electronic device for applying effect for moving object to image and method for operating the same
WO2022250246A1 (ko) * 2021-05-25 2022-12-01 삼성전자 주식회사 움직이는 객체에 대한 효과를 이미지에 적용하는 전자 장치 및 그 작동 방법
US20220385832A1 (en) * 2021-05-25 2022-12-01 Samsung Electronics Co., Ltd. Electronic device for applying effect for moving object to image and method for operating the same
KR102378890B1 (ko) * 2021-07-08 2022-03-28 주식회사 인피닉 어노테이션을 위한 3d 점군의 데이터 로드를 감축시키는 방법
KR20230020845A (ko) 2021-08-04 2023-02-13 현대자동차주식회사 전자장치 및 그의 객체 추적 방법
WO2023158205A1 (ko) * 2022-02-16 2023-08-24 한화비전 주식회사 Ai 기반 객체인식을 통한 감시 카메라 영상의 노이즈 제거
KR102637641B1 (ko) * 2022-09-22 2024-02-16 한국지질자원연구원 지하 광산 갱도 및 터널용 초분광 스캐닝 시스템
WO2024063370A1 (ko) * 2022-09-22 2024-03-28 한국지질자원연구원 지하 광산 갱도 및 터널용 초분광 스캐닝 시스템
KR102540632B1 (ko) * 2022-10-27 2023-06-13 주식회사 모빌테크 색상 보정을 적용한 컬러맵 생성 방법 및 이를 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램
CN116912798A (zh) * 2023-09-14 2023-10-20 南京航空航天大学 基于跨模态噪声感知的自动驾驶事件相机目标检测方法
CN116912798B (zh) * 2023-09-14 2023-12-19 南京航空航天大学 基于跨模态噪声感知的自动驾驶事件相机目标检测方法

Also Published As

Publication number Publication date
US11875574B2 (en) 2024-01-16
KR102584501B1 (ko) 2023-10-04
EP3848849A4 (en) 2021-11-10
EP3848849A1 (en) 2021-07-14
WO2020071683A1 (ko) 2020-04-09
US20210350145A1 (en) 2021-11-11
CN112805718A (zh) 2021-05-14

Similar Documents

Publication Publication Date Title
KR102584501B1 (ko) 자율 주행 장치의 객체 인식 방법 및 자율 주행 장치
US10479376B2 (en) Dynamic sensor selection for self-driving vehicles
US20200369271A1 (en) Electronic apparatus for determining a dangerous situation of a vehicle and method of operating the same
CN107368890B (zh) 一种以视觉为中心的基于深度学习的路况分析方法及系统
US11208115B2 (en) Method of assisting autonomous vehicle, and apparatus therefor
CN109219551B (zh) 道路状况抬头显示器
KR102060662B1 (ko) 차량의 주행 이벤트를 검출하는 전자 장치 및 방법
US11682137B2 (en) Refining depth from an image
KR102480416B1 (ko) 차선 정보를 추정하는 방법 및 전자 장치
US11508158B2 (en) Electronic device and method for vehicle driving assistance
US11521375B2 (en) Method and system for improved object marking in sensor data
CN113826108A (zh) 用于辅助车辆驾驶的电子装置和方法
KR20190134862A (ko) 전자 장치 및 그 동작 방법
US20230067887A1 (en) Techniques for detecting road blockages and generating alternative routes
JP7433146B2 (ja) 物体検出方法及び物体検出装置
JP2023527599A (ja) 自動運転車両を動作させるためのコンピュータ実施方法、非一時的機械可読媒体、データ処理システムおよびコンピュータプログラム
US20230068848A1 (en) Systems and methods for vehicle camera obstruction detection
JP2022142790A (ja) マルチタスクネットワークのための評価プロセス
CN115273509B (zh) 无人车通行交通路口的控制方法、无人车及存储介质
CN111836747B (zh) 用于车辆驾驶辅助的电子装置和方法
US11935254B2 (en) Systems and methods for predicting depth using style transfer

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant