KR102297578B1 - Method of controlling autonomous driving of moving object and apparatuses performing the same - Google Patents
Method of controlling autonomous driving of moving object and apparatuses performing the same Download PDFInfo
- Publication number
- KR102297578B1 KR102297578B1 KR1020200072492A KR20200072492A KR102297578B1 KR 102297578 B1 KR102297578 B1 KR 102297578B1 KR 1020200072492 A KR1020200072492 A KR 1020200072492A KR 20200072492 A KR20200072492 A KR 20200072492A KR 102297578 B1 KR102297578 B1 KR 102297578B1
- Authority
- KR
- South Korea
- Prior art keywords
- driving
- moving object
- image
- autonomous driving
- control information
- Prior art date
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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
- B60W30/00—Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units, or advanced driver assistance systems for ensuring comfort, stability and safety or drive control systems for propelling or retarding the vehicle
- B60W30/14—Adaptive cruise control
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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/00—Estimation 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/02—Estimation 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
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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/00—Estimation 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/10—Estimation 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 vehicle motion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60Y—INDEXING SCHEME RELATING TO ASPECTS CROSS-CUTTING VEHICLE TECHNOLOGY
- B60Y2300/00—Purposes or special features of road vehicle drive control systems
- B60Y2300/14—Cruise control
Abstract
이동체의 자율 주행 제어 방법 및 이를 수행하는 장치들이 개시된다. 일 실시예에 따른 이동체의 자율 주행 제어 방법은 상기 이동체의 내부 및 외부가 촬영된 주행 이미지를 획득하는 단계와, 상기 주행 이미지로부터 상기 이동체의 전방 주행 이미지 및 상기 이동체의 주행 속도를 추출하는 단계와, 상기 전방 주행 이미지 및 상기 주행 속도에 기초하여 상기 이동체의 주행을 제어하기 위한 자율 주행 제어 정보를 생성하는 단계를 포함한다.Disclosed are a method for controlling autonomous driving of a moving object and apparatuses for performing the same. A method for controlling autonomous driving of a moving object according to an embodiment includes the steps of: obtaining a driving image in which the inside and outside of the moving object are photographed; , generating autonomous driving control information for controlling the driving of the moving object based on the forward driving image and the driving speed.
Description
아래 실시예들은 이동체의 자율 주행 제어 방법 및 이를 수행하는 장치들에 관한 것이다.The following embodiments relate to a method for controlling autonomous driving of a moving object and apparatuses for performing the same.
최근에는 4차 산업혁명의 핵심으로 평가받고 있는 인공지능 기술, 특히 이미지를 빠르게 처리할 수 있는 합성곱 신경망(Convolutional Neural Network, CNN)의 등장으로 컴퓨터 비전과 관련된 다양한 산업이 발달하고 있다. 3차원 Convolution 연산을 하는 CNN의 특성은 인간의 시신경을 모방하여 컴퓨터 비전 산업을 크게 발전시켰고, 이미지를 처리해야하는 다양한 산업의 발달을 촉진하게 되었다.Recently, various industries related to computer vision are developing with the advent of artificial intelligence technology, which is evaluated as the core of the 4th industrial revolution, in particular, a convolutional neural network (CNN) that can process images quickly. The characteristics of CNN that perform 3D convolution operation have greatly developed the computer vision industry by mimicking the human optic nerve, and has promoted the development of various industries that need to process images.
특히, 최근에는 이미지를 처리하는 다양한 산업 중에서 자율주행 시스템 개발에 인공지능을 접목하여 다양한 연구가 진행되고 있다. 이미 google, NVIDIA, BMW 등 많은 대기업에서는 자율주행 시스템 개발을 오래전부터 진행해왔다. 기존 자율주행 시스템의 방식은 비싼 레이더, 라이다(LiDAR)와 같은 센서에 크게 의존해 왔고, 수집된 센서 데이터로부터 주행 방안을 결정하는 많은 연산량과 알고리즘을 필요로 했다.In particular, in recent years, among various industries that process images, various studies are being conducted by applying artificial intelligence to the development of autonomous driving systems. Many large companies, such as Google, NVIDIA, and BMW, have already been developing autonomous driving systems for a long time. Existing autonomous driving systems have largely relied on sensors such as expensive radar and LiDAR, and required a lot of computation and algorithms to determine the driving method from the collected sensor data.
하지만, 최근에는 NVIDIA에서 발표한 논문과 더불어 다양한 연구에서 종단간 학습 방식(End-to-End Learning)을 활용한 연구가 등장하고 있다. 종단간 학습 방식을 이용하는 경우에는 입력 영상을 한 번의 신경망에 통과시켜 주행 방안(스티어링 휠 등)을 출력으로 얻을 수 있다. 이때, 스티어링 휠은 차량의 운전대(또는 핸들)일 수 있다.However, recently, in addition to the papers published by NVIDIA, studies using the end-to-end learning method are emerging in various studies. In the case of using the end-to-end learning method, a driving plan (steering wheel, etc.) can be obtained as an output by passing an input image through a neural network once. In this case, the steering wheel may be a steering wheel (or steering wheel) of the vehicle.
실시예들은 이동체의 주행 이미지에 포함된 이동체의 전방 주행 이미지 및 이동체의 주행 속도를 이용하여 종단간 학습 방식을 통해 이동체의 자율 주행을 제어하기 위한 자율 주행 제어 정보를 생성할 수 있다.Embodiments may generate autonomous driving control information for controlling autonomous driving of the moving object through an end-to-end learning method using the forward driving image of the moving object and the moving speed of the moving object included in the moving image of the moving object.
다만, 기술적 과제는 상술한 기술적 과제들로 한정되는 것은 아니며, 또 다른 기술적 과제들이 존재할 수 있다.However, the technical problems are not limited to the above-described technical problems, and other technical problems may exist.
일 실시예에 따른 이동체의 자율 주행 제어 방법은 상기 이동체의 내부 및 외부가 촬영된 주행 이미지를 획득하는 단계와, 상기 주행 이미지로부터 상기 이동체의 전방 주행 이미지 및 상기 이동체의 주행 속도를 추출하는 단계와, 상기 전방 주행 이미지 및 상기 주행 속도에 기초하여 상기 이동체의 주행을 제어하기 위한 자율 주행 제어 정보를 생성하는 단계를 포함한다.A method for controlling autonomous driving of a moving object according to an embodiment includes the steps of: obtaining a driving image in which the inside and outside of the moving object are photographed; , generating autonomous driving control information for controlling the driving of the moving object based on the forward driving image and the driving speed.
상기 주행 이미지는 상기 주행 이미지가 촬영된 날짜 및 시간에 대한 정보가 포함되거나 매칭될 수 있다.The driving image may include or match information on the date and time the driving image was captured.
상기 생성하는 단계는 CNN(Convolutional Neural Network)-LSTM(Long Short-term Memory) 융합 네트워크를 통해 상기 전방 주행 이미지에 대한 특징 맵을 생성하는 단계와, 상기 특징 맵 및 상기 주행 속도를 이용하여 상기 CNN-LSTM 융합 네트워크를 통해 상기 자율 주행 제어 정보를 생성하는 단계를 포함할 수 있다.The generating may include generating a feature map for the forward driving image through a Convolutional Neural Network (CNN)-Long Short-term Memory (LSTM) convergence network, and the CNN using the feature map and the driving speed. - Generating the autonomous driving control information through the LSTM convergence network.
상기 특징 맵을 생성하는 단계는 상기 CNN-LSTM 융합 네트워크를 구성하는 CNN에 상기 전방 주행 이미지를 입력하여 상기 전방 주행 이미지의 특징을 추출하는 단계와, 상기 CNN-LSTM 융합 네트워크를 구성하는 LSTM에 상기 전방 주행 이미지의 특징을 입력하여 상기 특징 맵을 생성하는 단계를 포함할 수 있다.The generating of the feature map includes the steps of inputting the forward driving image to a CNN constituting the CNN-LSTM convergence network and extracting features of the forward driving image; and generating the feature map by inputting features of the forward driving image.
상기 CNN-LSTM 융합 네트워크를 통해 상기 자율 주행 제어 정보를 생성하는 단계는 상기 이동체에 대한 과거 주행 이미지에 대응하는 과거 특징 맵이 있는지 여부에 기초하여 상기 자율 주행 제어 정보 생성시 상기 과거 특징 맵을 반영하는 단계를 포함할 수 있다.The generating of the autonomous driving control information through the CNN-LSTM convergence network reflects the past feature map when generating the autonomous driving control information based on whether there is a past feature map corresponding to the past driving image of the moving object. may include the step of
상기 과거 주행 이미지는 상기 주행 이미지가 촬영된 시간 직전에 촬영된 주행 이미지일 수 있다.The past driving image may be a driving image taken just before the time at which the driving image was captured.
상기 자율 주행 제어 정보는 상기 이동체의 주행 방향을 제어하기 위한 주행 방향 파라미터 및 상기 이동체의 주행 속도를 제어하기 위한 주행 속도 파라미터를 포함할 수 있다.The autonomous driving control information may include a traveling direction parameter for controlling the traveling direction of the moving object and a traveling speed parameter for controlling the traveling speed of the moving object.
상기 주행 방향 파라미터는 상기 이동체의 스티어링 휠 각도 값일 수 있다.The driving direction parameter may be a steering wheel angle value of the mobile body.
상기 주행 속도 파라미터는 상기 이동체의 액셀러레이터(accelerator) 값 및 브레이크(break) 값일 수 있다.The traveling speed parameter may be an accelerator value and a break value of the moving object.
상기 자율 주행 제어 방법은 상기 자율 주행 제어 정보에 기초하여 상기 이동체의 주행을 제어하는 단계를 더 포함할 수 있다.The autonomous driving control method may further include controlling the driving of the moving object based on the autonomous driving control information.
일 실시예에 따른 이동체의 자율 주행을 제어하는 장치는 인스트럭션들을 포함하는 메모리와, 상기 인스트럭션들을 실행하기 위한 컨트롤러를 포함하고, 상기 컨트롤러는 상기 이동체의 내부 및 외부가 촬영된 주행 이미지를 획득하고, 상기 주행 이미지로부터 상기 이동체의 전방 주행 이미지 및 상기 이동체의 주행 속도를 추출하고, 상기 전방 주행 이미지 및 상기 주행 속도에 기초하여 상기 이동체의 주행을 제어하기 위한 자율 주행 제어 정보를 생성한다.An apparatus for controlling autonomous driving of a moving object according to an embodiment includes a memory including instructions and a controller for executing the instructions, wherein the controller acquires a driving image in which the inside and outside of the moving object are photographed, The forward driving image of the moving object and the traveling speed of the moving object are extracted from the driving image, and autonomous driving control information for controlling the traveling of the moving object is generated based on the forward traveling image and the traveling speed.
상기 주행 이미지는 상기 주행 이미지가 촬영된 날짜 및 시간에 대한 정보가 포함되거나 매칭될 수 있다.The driving image may include or match information on the date and time the driving image was captured.
상기 컨트롤러는 CNN(Convolutional Neural Network)-LSTM(Long Short-term Memory) 융합 네트워크를 통해 상기 전방 주행 이미지에 대한 특징 맵을 생성하고, 상기 특징 맵 및 상기 주행 속도를 이용하여 상기 CNN-LSTM 융합 네트워크를 통해 상기 자율 주행 제어 정보를 생성할 수 있다.The controller generates a feature map for the forward driving image through a Convolutional Neural Network (CNN)-Long Short-term Memory (LSTM) convergence network, and the CNN-LSTM convergence network using the feature map and the driving speed may generate the autonomous driving control information.
상기 컨트롤러는 상기 CNN-LSTM 융합 네트워크를 구성하는 CNN에 상기 전방 주행 이미지를 입력하여 상기 전방 주행 이미지의 특징을 추출하고, 상기 CNN-LSTM 융합 네트워크를 구성하는 LSTM에 상기 전방 주행 이미지의 특징을 입력하여 상기 특징 맵을 생성할 수 있다.The controller inputs the forward driving image to the CNN constituting the CNN-LSTM convergence network to extract the features of the forward driving image, and inputs the features of the forward driving image to the LSTM constituting the CNN-LSTM convergence network. to generate the feature map.
상기 컨트롤러는 상기 이동체에 대한 과거 주행 이미지에 대응하는 과거 특징 맵이 있는지 여부에 기초하여 상기 자율 주행 제어 정보 생성시 상기 과거 특징 맵을 반영할 수 있다.The controller may reflect the past feature map when generating the autonomous driving control information based on whether there is a past feature map corresponding to the past driving image of the moving object.
상기 과거 주행 이미지는 상기 주행 이미지가 촬영된 시간 직전에 촬영된 주행 이미지일 수 있다.The past driving image may be a driving image taken just before the time at which the driving image was captured.
상기 자율 주행 제어 정보는 상기 이동체의 주행 방향을 제어하기 위한 주행 방향 파라미터 및 상기 이동체의 주행 속도를 제어하기 위한 주행 속도 파라미터를 포함할 수 있다.The autonomous driving control information may include a traveling direction parameter for controlling the traveling direction of the moving object and a traveling speed parameter for controlling the traveling speed of the moving object.
상기 주행 방향 파라미터는 상기 이동체의 스티어링 휠 각도 값일 수 있다.The driving direction parameter may be a steering wheel angle value of the mobile body.
상기 주행 속도 파라미터는 상기 이동체의 액셀러레이터(accelerator) 값 및 브레이크(break) 값일 수 있다.The traveling speed parameter may be an accelerator value and a break value of the moving object.
상기 컨트롤러는 상기 자율 주행 제어 정보에 기초하여 상기 이동체의 주행을 제어할 수 있다.The controller may control the driving of the moving object based on the autonomous driving control information.
도 1은 기존의 차량 자율 주행 제어 시스템의 문제점을 설명하기 위한 일 예를 나타낸다.
도 2는 일 실시예에 따른 자율 주행 시스템의 개략적인 블록도를 나타낸다.
도 3은 도 2에 도시된 이미지 제공 장치가 제공하는 이미지의 일 예를 나타낸다.
도 4는 도 2에 도시된 차량 제어 장치의 개략적인 블록도를 나타낸다.
도 5는 도 4에 도시된 컨트롤러의 추출 동작을 설명하기 위한 일 예를 나타낸다.
도 6a는 도 4에 도시된 컨트롤러의 자율 주행 제어 정보 생성 동작을 설명하기 위한 일 예를 나타낸다.
도 6b는 도 4에 도시된 컨트롤러의 자율 주행 제어 정보 생성 동작을 설명하기 위한 다른 예를 나타낸다.
도 7은 도 4에 도시된 컨트롤러의 개략적인 블록도를 나타낸다.
도 8은 도 7에 도시된 주행 시뮬레이션 학습 모듈의 학습 동작을 설명하기 위한 일 예를 나타낸다.
도 9a는 자율 주행 제어 정보에 따른 주행 시뮬레이션 결과를 설명하기 위한 일 예를 나타낸다.
도 9b는 자율 주행 제어 정보에 따른 주행 시뮬레이션 결과를 설명하기 위한 다른 예를 나타낸다.
도 9c는 자율 주행 제어 정보에 따른 주행 시뮬레이션 결과를 설명하기 위한 또 다른 예를 나타낸다.
도 10은 도 2에 도시된 차량 제어 장치의 동작을 설명하기 위한 순서도를 나타낸다.1 illustrates an example for explaining a problem of a conventional autonomous vehicle driving control system.
2 shows a schematic block diagram of an autonomous driving system according to an embodiment.
FIG. 3 shows an example of an image provided by the image providing apparatus shown in FIG. 2 .
FIG. 4 is a schematic block diagram of the vehicle control device shown in FIG. 2 .
5 shows an example for explaining the extraction operation of the controller shown in FIG.
FIG. 6A illustrates an example for explaining an operation of generating autonomous driving control information of the controller shown in FIG. 4 .
FIG. 6B illustrates another example for explaining an operation of generating autonomous driving control information of the controller shown in FIG. 4 .
FIG. 7 shows a schematic block diagram of the controller shown in FIG. 4 .
FIG. 8 shows an example for explaining a learning operation of the driving simulation learning module shown in FIG. 7 .
9A illustrates an example for explaining a driving simulation result according to autonomous driving control information.
9B illustrates another example for explaining a driving simulation result according to autonomous driving control information.
9C illustrates another example for explaining a driving simulation result according to autonomous driving control information.
FIG. 10 is a flowchart for explaining the operation of the vehicle control apparatus shown in FIG. 2 .
이하에서, 첨부된 도면을 참조하여 실시예들을 상세하게 설명한다. 그러나, 실시예들에는 다양한 변경이 가해질 수 있어서 특허출원의 권리 범위가 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 실시예들에 대한 모든 변경, 균등물 내지 대체물이 권리 범위에 포함되는 것으로 이해되어야 한다.Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. However, since various changes may be made to the embodiments, the scope of the patent application is not limited or limited by these embodiments. It should be understood that all modifications, equivalents and substitutes for the embodiments are included in the scope of the rights.
실시예에서 사용한 용어는 단지 설명을 목적으로 사용된 것으로, 한정하려는 의도로 해석되어서는 안된다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terms used in the examples are used for description purposes only, and should not be construed as limiting. The singular expression includes the plural expression unless the context clearly dictates otherwise. In the present specification, terms such as “comprise” or “have” are intended to designate that a feature, number, step, operation, component, part, or combination thereof described in the specification exists, but one or more other features It should be understood that this does not preclude the existence or addition of numbers, steps, operations, components, parts, or combinations thereof.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless otherwise defined, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which the embodiment belongs. Terms such as those defined in commonly used dictionaries should be interpreted as having a meaning consistent with the meaning in the context of the related art, and should not be interpreted in an ideal or excessively formal meaning unless explicitly defined in the present application. does not
또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 실시예의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.In addition, in the description with reference to the accompanying drawings, the same components are given the same reference numerals regardless of the reference numerals, and the overlapping description thereof will be omitted. In the description of the embodiment, if it is determined that a detailed description of a related known technology may unnecessarily obscure the gist of the embodiment, the detailed description thereof will be omitted.
또한, 실시 예의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 접속될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다. In addition, in describing the components of the embodiment, terms such as first, second, A, B, (a), (b), etc. may be used. These terms are only for distinguishing the components from other components, and the essence, order, or order of the components are not limited by the terms. When it is described that a component is “connected”, “coupled” or “connected” to another component, the component may be directly connected or connected to the other component, but another component is between each component. It will be understood that may also be "connected", "coupled" or "connected".
어느 하나의 실시 예에 포함된 구성요소와, 공통적인 기능을 포함하는 구성요소는, 다른 실시 예에서 동일한 명칭을 사용하여 설명하기로 한다. 반대되는 기재가 없는 이상, 어느 하나의 실시 예에 기재한 설명은 다른 실시 예에도 적용될 수 있으며, 중복되는 범위에서 구체적인 설명은 생략하기로 한다.Components included in one embodiment and components having a common function will be described using the same names in other embodiments. Unless otherwise stated, a description described in one embodiment may be applied to another embodiment, and a detailed description in the overlapping range will be omitted.
도 1은 기존의 차량 자율 주행 제어 시스템의 문제점을 설명하기 위한 일 예를 나타낸다.1 illustrates an example for explaining a problem of a conventional autonomous vehicle driving control system.
도 1을 참조하면, 기존의 SAE Level 2 수준의 자율 주행 이동체들은 자율 주행 제어 알고리즘을 통해 복잡한 방식으로 제어될 수 있다. 이때, 이동체는 차량, 바이크, 전기 자전거 등 다양한 이동 수단일 수 있다. 이하에서는 자율 주행 이동체를 자율 주행 차량으로 가정하여 설명하도록 한다.Referring to FIG. 1 , the existing autonomous driving moving objects of the
A 내지 C는 실제 차량을 자율 주행으로 제어하기 위한 자율 주행 제어 알고리즘을 요약한 것으로 실제로는 이보다 더 복잡한 알고리즘이 사용될 수 있다.A to C summarize the autonomous driving control algorithm for controlling an actual vehicle by autonomous driving, and in reality, a more complex algorithm may be used.
A) 기존의 자율 주행 차량은 자율 주행 차량의 LiDAR를 이용해 차량 주변에 존재하는 다양한 객체들의 모양을 확인하고, 자율 주행 차량의 Radar를 이용해 주변 객체들의 속도와 거리를 확인할 수 있다.A) Existing autonomous vehicles can use the autonomous vehicle's LiDAR to check the shapes of various objects around the vehicle, and use the autonomous vehicle's radar to check the speed and distance of nearby objects.
B) 기존의 자율 주행 차량은 자율 주행 차량의 카메라를 통해 얻은 영상을 분석할 수 있다.B) Existing autonomous vehicles can analyze images obtained through the autonomous vehicle's camera.
C) 기존의 자율 주행 차량은 자율 주행 차량의 다양한 센서들을 통해 얻은 데이터를 주행 알고리즘에 대입하여 차량 제어 값을 얻어낼 수 있다.C) Existing autonomous vehicles can obtain vehicle control values by substituting data obtained through various sensors of the autonomous vehicle into a driving algorithm.
기존의 자율 주행 제어 알고리즘으로 차량을 제어하기 위해서는 고가의 센서 장비가 필요하여 연구에 무리가 있고, 실제 개발이 되더라도 상용화하기 어려울 수 있다.In order to control a vehicle with the existing autonomous driving control algorithm, expensive sensor equipment is required, which makes research difficult, and even if it is actually developed, it may be difficult to commercialize.
또한, 기존의 자율 주행 차량은 자율 주행 제어 알고리즘의 정확도가 높지 않기에, 완전한 자율 주행으로 제어되기에는 부족함이 많을 수 있다. 이는 기존의 자율 주행 차량의 수준이 SAE Level 2 수준인 이유이기도 하다. 기존의 차량 자율 주행 제어 알고리즘은 매우 복잡하기에, 실시간 처리가 중요한 차량 자율 주행 제어 시스템에서 문제가 발생할 수 있다.In addition, since the existing autonomous driving vehicle does not have high accuracy of the autonomous driving control algorithm, it may be insufficient to be fully autonomously controlled. This is also the reason why the level of existing autonomous vehicles is at the level of
기존의 차량 자율 주행 제어 시스템의 문제점을 해결하기 위해서 엔비디아(NVIDIA)에서는 종단간 학습 방식(End-to-End Learning)을 활용하여 자율 주행 차량을 제어하는 방법을 제시한 바 있다.In order to solve the problems of the existing vehicle autonomous driving control system, NVIDIA has proposed a method of controlling an autonomous driving vehicle using an end-to-end learning method.
종단간 학습 방식에 따라 자율 주행 차량을 제어하는 방법은 차량의 전방 주행 영상을 좌측/중앙/우측으로 3개로 나눠 받아 하나의 프레임의 이미지를 신경망에 입력으로 넣고, 그 결과로 스티어링 휠(steering wheel) 각도 값을 예측하는 것이다. 예를 들어, 종단간 학습 방식을 이용하는 자율 주행 제어 시스템은 간단한 CNN을 이용하여 구현이 가능하다고 한다.The method of controlling an autonomous vehicle according to the end-to-end learning method divides the vehicle's front driving image into three parts, left/center/right, and puts an image of one frame as an input into the neural network, and as a result, the steering wheel (steering wheel) ) to predict the angle value. For example, it is said that an autonomous driving control system using an end-to-end learning method can be implemented using a simple CNN.
차량을 운전할 때에는 순간적인 전방 상황만 보고 주행 방안을 결정하는 것이 아닌 연속된 상황을 종합적으로 고려하여 주행방안을 결정한다.When driving a vehicle, the driving plan is determined by comprehensively considering continuous situations, rather than determining the driving plan based on only the instantaneous forward situation.
차량의 주행 속도를 고려하지 않고 스티어링 휠을 제어하는 경우(특히, 고속 주행 상황인 경우), 종단간 학습 방식을 이용하여 자율 주행 차량을 제어하는 방법은 언더스티어(understeer)나 오버스티어(oversteer)와 같은 위험한 현상이 발생할 수 있다. 스티어링 휠은 차량의 운전대, 핸들을 의미한다.When the steering wheel is controlled without considering the driving speed of the vehicle (especially in a high-speed driving situation), the method of controlling the autonomous vehicle using the end-to-end learning method is understeer or oversteer. Dangerous phenomena such as Steering wheel refers to the steering wheel and steering wheel of a vehicle.
도 2는 일 실시예에 따른 자율 주행 시스템의 개략적인 블록도를 나타내고, 도 3은 도 2에 도시된 이미지 제공 장치가 제공하는 이미지의 일 예를 나타낸다.2 is a schematic block diagram of an autonomous driving system according to an embodiment, and FIG. 3 is an example of an image provided by the image providing apparatus shown in FIG. 2 .
도 2 및 도 3을 참조하면, 자율 주행 시스템(10)은 이미지 제공 장치(100), 차량 제어 장치(300) 및 차량(500)을 포함할 수 있다. 도 1에서 가정한 바와 같이 이동체를 차량(500)으로 가정하여 설명하기에, 이하에서 설명되는 이미지 제공 장치(100) 및 차량 제어 장치(300)에 관한 내용은 다양한 이동체에 적용 가능하다.2 and 3 , the
이미지 제공 장치(100)는 차량(500)의 내부 및 외부가 촬영된 이미지를 차량 제어 장치(300)에 전송할 수 있다. 이때, 차량(500)의 주행 이미지는 차량(500)에 설치된 카메라를 통해 생성될 수 있다. 예를 들어, 이미지 제공 장치(100)는 도 3과 같이 주행 중인 차량(500)의 주변 환경과 차량(500)의 운전석을 함께 촬영하여 차량(500)의 주행 이미지를 생성할 수 있다. 이때, 차량(500)의 주행 이미지는 차량(500)의 전방 및 차량(500)의 주행 속도를 포함할 수 있다. 차량(500)의 주행 이미지는 주행 이미지가 촬영된 날짜 및/또는 시간에 대한 정보가 포함되거나 매칭되어 전송될 수 있다. 시간 정보는 타임 스탬프일 수 있다.The
차량 제어 장치(300)는 이미지 제공 장치(100)가 제공한 차량(500)의 주행 이미지에 포함된 차량(500)의 전방 주행 이미지 및 차량(100)의 주행 속도를 이용하여 종단간 학습 방식을 통해 차량(500)의 자율 주행을 제어하기 위한 자율 주행 제어 정보를 생성할 수 있다. 차량 제어 장치(300)는 자율 주행 제어 정보에 기초하여 차량(500)의 주행을 제어할 수 있다.The
이에, 차량 제어 장치(300)는 비싼 센서와 연산량이 많이 필요한 자율 주행 제어 알고리즘을 사용하지 않고 오직 차량(500)의 주행 이미지만을 이용하여 차량(500)의 자율 주행을 효율적으로 제어할 수 있다. 또한, 차량 제어 장치(300)는 차량(500)의 전방 이미지뿐만 아니라 차량(500)의 주행 속도를 고려하여 차량(00)의 자율 주행을 더 정확하게 제어하여 기존의 자율 주행 제어 방식 보다 인간의 주행 방식을 더 정확하게 모방할 수 있다.Accordingly, the
도 4는 도 2에 도시된 차량 제어 장치의 개략적인 블록도를 나타낸다.FIG. 4 is a schematic block diagram of the vehicle control device shown in FIG. 2 .
차량 제어 장치(300)는 메모리(310) 및 컨트롤러(330)를 포함할 수 있다.The
메모리(310)는 컨트롤러(330)에 의해 실행가능한 인스트럭션들(또는 프로그램)을 저장할 수 있다. 예를 들어, 인스트럭션들은 컨트롤러(330)의 동작 및/또는 컨트롤러(330)의 각 구성의 동작을 실행하기 위한 인스트럭션들을 포함할 수 있다.The
컨트롤러(330)는 메모리(310)에 저장된 데이터를 처리할 수 있다. 컨트롤러(330)는 메모리(310)에 저장된 컴퓨터로 읽을 수 있는 코드(예를 들어, 소프트웨어) 및 컨트롤러(330)에 의해 유발된 인스트럭션(instruction)들을 실행할 수 있다.The
컨트롤러(330)는 목적하는 동작들(desired operations)을 실행시키기 위한 물리적인 구조를 갖는 회로를 가지는 하드웨어로 구현된 데이터 처리 장치일 수 있다. 예를 들어, 목적하는 동작들은 프로그램에 포함된 코드(code) 또는 인스트럭션들(instructions)을 포함할 수 있다.The
예를 들어, 하드웨어로 구현된 데이터 처리 장치는 마이크로프로세서(microprocessor), 중앙 처리 장치(central processing unit), 프로세서 코어(processor core), 멀티-코어 프로세서(multi-core processor), 멀티프로세서(multiprocessor), ASIC(Application-Specific Integrated Circuit), FPGA(Field Programmable Gate Array)를 포함할 수 있다.For example, a data processing device implemented as hardware includes a microprocessor, a central processing unit, a processor core, a multi-core processor, and a multiprocessor. , an Application-Specific Integrated Circuit (ASIC), and a Field Programmable Gate Array (FPGA).
컨트롤러(330)는 차량 제어 장치(300)의 전반적인 동작을 제어할 수 있다. 예를 들어, 컨트롤러(330)는 메모리(310)의 동작을 제어할 수 있다.The
컨트롤러(330)는 이미지 제공 장치(100)로부터 전송된 차량(500)의 주행 이미지와 CNN(Convolutional Neural Network)-LSTM(Long Short-term Memory) 융합 네트워크를 이용하여 자율 주행 제어 정보를 생성할 수 있다. CNN-LSTM 융합 네트워크는 종단간 학습 방식에 기반한 네트워크로 CNN-LSTM이 융합되어 설계되어 시간의 흐름에 따른 변화를 고려할 수 있다. CNN은 공간적 특징을 추출하기 유리할 수 있다. LSTM은 시간의 흐름을 고려하여 시간적 특징을 추출하기 유리할 수 있다.The
예를 들어, 컨트롤러(330)는 차량(500)의 주행 이미지로부터 차량(500)의 전방 주행 이미지 및 차량(500)의 주행 속도를 추출할 수 있다.For example, the
컨트롤러(330)는 CNN-LSTM 융합 네트워크에 전방 주행 이미지 및 주행 속도를 순차적으로 입력하여 주행 전방 이미지 및 주행 속도에 따른 자율 주행 제어 정보를 생성할 수 있다.The
도 5는 도 4에 도시된 컨트롤러의 전방 주행 이미지 및 주행 속도 추출 동작을 설명하기 위한 일 예를 나타낸다.FIG. 5 shows an example for explaining an operation of extracting a forward driving image and driving speed of the controller shown in FIG. 4 .
컨트롤러(330)는 이미지 제공 장치(100)로부터 차량(500)의 주행 이미지인 image 1을 수신할 수 있다.The
컨트롤러(330)는 CNN을 통해 image 1을 분석하여 image 1을 차량(500)의 전방 주행 이미지(image 2) 및 차량(500)의 주행 속도 이미지(image 3)로 분할(또는 추출)할 수 있다.The
컨트롤러(330)는 image 3을 통해 차량(500)의 주행 속도를 획득할 수 있다.The
도 6a는 도 4에 도시된 컨트롤러의 자율 주행 제어 정보 생성 동작을 설명하기 위한 일 예를 나타내고, 도 6b는 도 4에 도시된 컨트롤러의 자율 주행 제어 정보 생성 동작을 설명하기 위한 다른 예를 나타낸다.FIG. 6A shows an example for explaining the autonomous driving control information generating operation of the controller shown in FIG. 4 , and FIG. 6B shows another example for explaining the autonomous driving control information generating operation of the controller shown in FIG. 4 .
도 6a 및 도 6b를 참조하면, 컨트롤러(330)는 차량(500)의 주행 이미지에서 전방 주행 이미지 및 주행 속도를 추출한 후, CNN-LSTM 융합 네트워크를 통해 전방 주행 이미지의 특징에 따른 특징 맵을 생성할 수 있다. 이때, 전방 주행 이미지 및 주행 속도는 CNN-LSTM 융합 네트워크에 입력되기 전에 정규화될 수 있다. 예를 들어, 전방 주행 이미지는 80 x 200 벡터의 크기로 조정하여 정규화될 수 있다.6A and 6B , the
예를 들어, 컨트롤러(330)는 CNN-LSTM 융합 네트워크를 구성하는 CNN에 전방 주행 이미지를 입력하여 전방 주행 이미지의 특징을 추출할 수 있다. 컨트롤러(330)는 CNN-LSTM 융합 네트워크를 구성하는 LSTM에 전방 주행 이미지의 특징을 입력하여 전방 주행 이미지의 특징 맵을 생성할 수 있다.For example, the
컨트롤러(330)는 특징 맵과 주행 속도를 이용하여 CNN-LSTM 융합 네트워크를 통해 자율 주행 제어 정보를 생성(또는 추론, 예측)할 수 있다. 예를 들어, 컨트롤러(330)는 CNN-LSTM 융합 네트워크를 구성하는 LSTM에 특징 맵 및 주행 속도를 입력하여 자율 주행 제어 정보를 생성할 수 있다. 예를 들어, 컨트롤러(330)는 전방 주행 이미지의 특징을 LSTM에 입력할 때 주행 속도도 함께 LSTM에 입력할 수 있다.The
컨트롤러(330)는 차량(500)의 과거 주행 이미지에 대응하는 과거 특징 맵이 있는지 여부에 기초하여 자율 주행 제어 정보 생성시 과거 특징 맵을 반영할 수 있다. 과거 주행 이미지는 차량(500)의 주행 이미지가 촬영된 시간 직전에 촬영된 주행 이미지일 수 있다. 과거 특징 맵은 차량(500)의 과거 주행 이미지에 포함된 전방 주행 이미지의 특징에 따른 특징 맵일 수 있다.The
자율 주행 제어 정보는 차량(100)의 주행을 제어할 정보로, LSTM과 완전히 연결된 레이어(fully connected layer)를 통해 추론될 수 있다. 자율 주행 제어 정보는 차량(500)의 주행 방향을 제어하기 위한 주행 방향 파라미터 및 차량(500)의 주행 속도를 제어하기 위한 주행 속도 파라미터를 포함할 수 있다. 추론된 주행 방향 파라미터 및 주행 속도 파라미터는 차량(500)의 부드러운 주행을 위해서 Hanning 평활 알고리즘(Hanning smoothing algorithm)으로 평활화될 수 있다.The autonomous driving control information is information to control the driving of the
주행 방향 파라미터는 차량(500)의 스티어링 휠 각도값일 수 있다. 주행 속도 파라미터는 차량(500)의 액셀러레이터(accelerator) 및 브레이크(break) 값일 수 있다. 차량(500)의 자율 주행은 추론되는 주행 방향 및 주행 속도가 함께 반영되어 제어되어, 고속 환경에서 언더스티어 또는 오버스티어와 같은 위험한 상황이 방지될 수 있다.The driving direction parameter may be a steering wheel angle value of the
차량마다 데이터가 다르게 처리되기에, 실제 차량에서 데이터를 수집하는 것은 한계가 있을 수 있다.Since data is processed differently for each vehicle, collecting data from an actual vehicle may be limited.
따라서, 이하에서는 이미지 제공 장치(100)를 주행 시뮬레이터(driving simulator)로 가정하도록 한다. 또한, 이하에서는 차량 제어 장치(300)가 주행 시뮬레이터(driving simulator)를 통해 수집된 차량(100)에 대한 주행 데이터(또는 훈련 데이터, 이미지 데이터)를 이용하여 CNN-LSTM 융합 네트워크를 학습하는 동작에 대해서 설명하도록 한다.Therefore, hereinafter, it is assumed that the
도 7은 도 4에 도시된 컨트롤러의 개략적인 블록도를 나타내고, 도 8은 도 7에 도시된 주행 시뮬레이션 학습 모듈의 학습 동작을 설명하기 위한 일 예를 나타낸다.7 is a schematic block diagram of the controller shown in FIG. 4 , and FIG. 8 shows an example for explaining a learning operation of the driving simulation learning module shown in FIG. 7 .
컨트롤러(330)는 모듈화될 수 있다. 예를 들어, 컨트롤러(330)는 학습 데이터 수집 모듈(331) 및 주행 시뮬레이션 학습 모듈(333)을 포함할 수 있다.The
데이터 수집 모듈(331)은 주행 시뮬레이터인 유로 트럭 시뮬레이터(euro truck driving simulator)에서 차량(500)에 대한 주행 데이터를 수집하여 클라우드 서버에 저장 및 관리할 수 있다. 클라우드 서버는 HDFS(Hadoop Distributed File System)-based cloud server일 수 있다. 데이터 수집 모듈(331)은 차량(500)에 대한 주행 데이터를 타임 스탬프와 동기화하여 저장할 수 있다. 주행 데이터는 시간대 별로 저장될 수 있다. 주행 데이터는 차량(500)의 주행 이미지, 주행 방향 파라미터 및 주행 속도 파라미터 등일 수 있다.The
주행 시뮬레이션 학습 모듈(333)은 클라우드 서버에 저장된 주행 데이터를 시간 순서로 CNC-HLTM 융합 네트워크에 입력하여 자율 주행 제어 정보를 추론할 수 있다.The driving
주행 시뮬레이션 학습 모듈(333)은 추론된 자율 주행 제어 정보와 클라우드 서버에 저장된 실제 주행 데이터를 비교하여 CNC-HLTM 융합 네트워크를 학습할 수 있다. 예를 들어, 주행 시뮬레이션 학습 모듈(333)은 추론된 주행 방향 및 주행 속도 파라미터와 실제 주행 방향 및 주행 속도 파라미터 간의 평균 제곱 오차가 최소화되도록 CNC-HLTM 융합 네트워크의 가중치를 학습할 수 있다.The driving
도 9a는 자율 주행 제어 정보에 따른 주행 시뮬레이션 결과를 설명하기 위한 일 예를 나타내고, 도 9b는 자율 주행 제어 정보에 따른 주행 시뮬레이션 결과를 설명하기 위한 다른 예를 나타내고, 도 9c는 자율 주행 제어 정보에 따른 주행 시뮬레이션 결과를 설명하기 위한 또 다른 예를 나타낸다.9A shows an example for explaining a driving simulation result according to autonomous driving control information, FIG. 9B shows another example for explaining a driving simulation result according to autonomous driving control information, and FIG. 9C shows an example for explaining the driving simulation result according to autonomous driving control information Another example for explaining the driving simulation result is shown.
도 9a 내지 도 9c를 참조하면, 차량 제어 장치(300)가 생성한 자율 주행 제어 정보에 따른 주행 시뮬레이션 결과는 NVIDIA에서 연구한 End-to-End 자율주행 시스템에 의한 주행 시뮬레이션 결과보다 더 정확하다. 우측으로 굽은 도로에서의 주행 시뮬레이션 결과는 도 9a와 같고, 좌측으로 굽은 도로에서의 주행 시뮬레이션 결과는 도 9b와 같고, S로 굽은 도로에서의 주행 시뮬레이션 결과는 도 9c와 같다.9A to 9C , the driving simulation result according to the autonomous driving control information generated by the
도 10은 도 2에 도시된 차량 제어 장치의 동작을 설명하기 위한 순서도를 나타낸다.FIG. 10 is a flowchart for explaining the operation of the vehicle control apparatus shown in FIG. 2 .
컨트롤러(330)는 이미지 제공 장치(100)로부터 전송된 차량(500)의 주행 이미지를 수집(또는 획득)할 수 있다(1010).The
컨트롤러(330)는 주행 이미지를 분석하여 주행 이미지에서 전방 주행 이미지 및 주행 속도를 추출할 수 있다(1030).The
컨트롤러(330)는 전방 주행 이미지의 특징을 추출하여 전방 주행 이미지의 특징에 따른 특징 맵을 생성할 수 있다(1050).The
컨트롤러(330)는 특징 맵 및 주행 속도에 기초하여 차량(500)의 주행을 제어할 자율 주행 제어 정보를 생성할 수 있다(1070).The
컨트롤러(330)는 자율 주행 제어 정보에 기초하여 차량(500)의 주행을 제어할 수 있다(1090).The
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, etc. alone or in combination. The program instructions recorded on the medium may be specially designed and configured for the embodiment, or may be known and available to those skilled in the art of computer software. Examples of the computer-readable recording medium include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic such as floppy disks. - includes magneto-optical media, and hardware devices specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions include not only machine language codes such as those generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.Software may comprise a computer program, code, instructions, or a combination of one or more of these, which configures a processing device to operate as desired or is independently or collectively processed You can command the device. The software and/or data may be any kind of machine, component, physical device, virtual equipment, computer storage medium or device, to be interpreted by or to provide instructions or data to the processing device. , or may be permanently or temporarily embody in a transmitted signal wave. The software may be distributed over networked computer systems, and stored or executed in a distributed manner. Software and data may be stored in one or more computer-readable recording media.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.As described above, although the embodiments have been described with reference to the limited drawings, those skilled in the art may apply various technical modifications and variations based on the above. For example, the described techniques are performed in a different order than the described method, and/or the described components of the system, structure, apparatus, circuit, etc. are combined or combined in a different form than the described method, or other components Or substituted or substituted by equivalents may achieve an appropriate result.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents to the claims are also within the scope of the following claims.
Claims (20)
상기 이동체의 내부에서 상기 이동체의 주변 환경과 상기 이동체의 운전석이 함께 촬영된 주행 이미지를 획득하는 단계;
상기 주행 이미지로부터 상기 이동체의 전방 주행 이미지 및 상기 이동체의 주행 속도를 추출하는 단계; 및
상기 전방 주행 이미지 및 상기 주행 속도에 기초하여 상기 이동체의 주행을 제어하기 위한 자율 주행 제어 정보를 생성하는 단계
를 포함하고,
상기 생성하는 단계는,
CNN(Convolutional Neural Network)-LSTM(Long Short-term Memory) 융합 네트워크를 통해 상기 전방 주행 이미지에 대한 특징 맵을 생성하는 단계; 및
상기 특징 맵 및 상기 주행 속도를 이용하여 상기 CNN-LSTM 융합 네트워크를 통해 상기 자율 주행 제어 정보를 생성하는 단계
를 포함하는, 자율 주행 제어 방법.
A method for controlling autonomous driving of a moving object, the method comprising:
acquiring a driving image in which a surrounding environment of the moving object and a driver's seat of the moving object are photographed together in the interior of the moving object;
extracting a forward traveling image of the moving object and a traveling speed of the moving object from the traveling image; and
generating autonomous driving control information for controlling the driving of the moving object based on the forward driving image and the driving speed;
including,
The generating step is
generating a feature map for the forward driving image through a Convolutional Neural Network (CNN)-Long Short-term Memory (LSTM) fusion network; and
generating the autonomous driving control information through the CNN-LSTM convergence network using the feature map and the driving speed
Including, autonomous driving control method.
상기 주행 이미지는 상기 주행 이미지가 촬영된 날짜 및 시간에 대한 정보가 포함되거나 매칭되는, 자율 주행 제어 방법.
According to claim 1,
The autonomous driving control method, wherein the driving image includes or matches information on a date and time when the driving image was captured.
상기 특징 맵을 생성하는 단계는,
상기 CNN-LSTM 융합 네트워크를 구성하는 CNN에 상기 전방 주행 이미지를 입력하여 상기 전방 주행 이미지의 특징을 추출하는 단계; 및
상기 CNN-LSTM 융합 네트워크를 구성하는 LSTM에 상기 전방 주행 이미지의 특징을 입력하여 상기 특징 맵을 생성하는 단계
를 포함하는, 자율 주행 제어 방법.
According to claim 1,
The step of generating the feature map comprises:
extracting features of the forward driving image by inputting the forward driving image to a CNN constituting the CNN-LSTM convergence network; and
generating the feature map by inputting features of the forward driving image into LSTMs constituting the CNN-LSTM convergence network
Including, autonomous driving control method.
상기 CNN-LSTM 융합 네트워크를 통해 상기 자율 주행 제어 정보를 생성하는 단계는,
상기 이동체에 대한 과거 주행 이미지에 대응하는 과거 특징 맵이 있는지 여부에 기초하여 상기 자율 주행 제어 정보 생성시 상기 과거 특징 맵을 반영하는 단계
를 포함하는, 자율 주행 제어 방법.
According to claim 1,
The step of generating the autonomous driving control information through the CNN-LSTM convergence network comprises:
reflecting the past feature map when generating the autonomous driving control information based on whether there is a past feature map corresponding to the past driving image of the moving object;
Including, autonomous driving control method.
상기 과거 주행 이미지는 상기 주행 이미지가 촬영된 시간 직전에 촬영된 주행 이미지인, 자율 주행 제어 방법.
6. The method of claim 5,
and the past driving image is a driving image taken immediately before the time at which the driving image was captured.
상기 자율 주행 제어 정보는,
상기 이동체의 주행 방향을 제어하기 위한 주행 방향 파라미터 및 상기 이동체의 주행 속도를 제어하기 위한 주행 속도 파라미터를 포함하는, 자율 주행 제어 방법.
According to claim 1,
The autonomous driving control information is
and a traveling direction parameter for controlling the traveling direction of the moving object and a traveling speed parameter for controlling the traveling speed of the moving object.
상기 주행 방향 파라미터는 상기 이동체의 스티어링 휠 각도 값인, 자율 주행 제어 방법.
8. The method of claim 7,
and the driving direction parameter is a steering wheel angle value of the mobile body.
상기 주행 속도 파라미터는 상기 이동체의 액셀러레이터(accelerator) 값 및 브레이크(break) 값인, 자율 주행 제어 방법.
8. The method of claim 7,
and the traveling speed parameter is an accelerator value and a break value of the moving object.
상기 자율 주행 제어 정보에 기초하여 상기 이동체의 주행을 제어하는 단계
를 더 포함하는, 자율 주행 제어 방법.
According to claim 1,
controlling the driving of the moving object based on the autonomous driving control information;
Further comprising, an autonomous driving control method.
인스트럭션들을 포함하는 메모리; 및
상기 인스트럭션들을 실행하기 위한 컨트롤러
를 포함하고,
상기 컨트롤러는,
상기 이동체의 내부에서 상기 이동체의 주변 환경과 상기 이동체의 운전석이 함께 촬영된 주행 이미지를 획득하고, 상기 주행 이미지로부터 상기 이동체의 전방 주행 이미지 및 상기 이동체의 주행 속도를 추출하고, 상기 전방 주행 이미지 및 상기 주행 속도에 기초하여 상기 이동체의 주행을 제어하기 위한 자율 주행 제어 정보를 생성하고,
상기 컨트롤러는,
CNN(Convolutional Neural Network)-LSTM(Long Short-term Memory) 융합 네트워크를 통해 상기 전방 주행 이미지에 대한 특징 맵을 생성하고, 상기 특징 맵 및 상기 주행 속도를 이용하여 상기 CNN-LSTM 융합 네트워크를 통해 상기 자율 주행 제어 정보를 생성하는, 장치.
An apparatus for controlling autonomous driving of a moving object, the apparatus comprising:
a memory containing instructions; and
a controller for executing the instructions
including,
The controller is
Obtaining a driving image in which the surrounding environment of the moving object and the driver's seat of the moving object are photographed together inside the moving object, extracting a forward running image of the moving object and a running speed of the moving object from the driving image, the forward running image and generating autonomous driving control information for controlling the driving of the moving object based on the driving speed;
The controller is
A feature map for the forward driving image is generated through a Convolutional Neural Network (CNN)-Long Short-term Memory (LSTM) convergence network, and the feature map and the driving speed are used to generate the feature map through the CNN-LSTM convergence network. A device for generating autonomous driving control information.
상기 주행 이미지는 상기 주행 이미지가 촬영된 날짜 및 시간에 대한 정보가 포함되거나 매칭되는, 장치.
12. The method of claim 11,
The driving image includes or matches information on a date and time when the driving image was captured.
상기 컨트롤러는,
상기 CNN-LSTM 융합 네트워크를 구성하는 CNN에 상기 전방 주행 이미지를 입력하여 상기 전방 주행 이미지의 특징을 추출하고, 상기 CNN-LSTM 융합 네트워크를 구성하는 LSTM에 상기 전방 주행 이미지의 특징을 입력하여 상기 특징 맵을 생성하는, 장치.
12. The method of claim 11,
The controller is
The features of the forward driving image are extracted by inputting the forward driving image to the CNN constituting the CNN-LSTM convergence network, and the features of the forward driving image are inputted into the LSTM constituting the CNN-LSTM convergence network. A device that generates maps.
상기 컨트롤러는,
상기 이동체에 대한 과거 주행 이미지에 대응하는 과거 특징 맵이 있는지 여부에 기초하여 상기 자율 주행 제어 정보 생성시 상기 과거 특징 맵을 반영하는, 장치.
12. The method of claim 11,
The controller is
and reflecting the past feature map when generating the autonomous driving control information based on whether there is a past feature map corresponding to the past driving image of the moving object.
상기 과거 주행 이미지는 상기 주행 이미지가 촬영된 시간 직전에 촬영된 주행 이미지인, 장치.
16. The method of claim 15,
The apparatus of claim 1, wherein the past driving image is a driving image taken immediately before the time at which the driving image was captured.
상기 자율 주행 제어 정보는,
상기 이동체의 주행 방향을 제어하기 위한 주행 방향 파라미터 및 상기 이동체의 주행 속도를 제어하기 위한 주행 속도 파라미터를 포함하는, 장치.
12. The method of claim 11,
The autonomous driving control information is
and a traveling direction parameter for controlling the traveling direction of the movable body and a traveling speed parameter for controlling the traveling speed of the moving object.
상기 주행 방향 파라미터는 상기 이동체의 스티어링 휠 각도 값인, 장치.
18. The method of claim 17,
and the driving direction parameter is a steering wheel angle value of the mobile body.
상기 주행 속도 파라미터는 상기 이동체의 액셀러레이터(accelerator) 값 및 브레이크(break) 값인, 장치.
18. The method of claim 17,
and the traveling speed parameter is an accelerator value and a break value of the moving object.
상기 컨트롤러는,
상기 자율 주행 제어 정보에 기초하여 상기 이동체의 주행을 제어하는, 장치.12. The method of claim 11,
The controller is
and controlling the traveling of the moving object based on the autonomous driving control information.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20190144452 | 2019-11-12 | ||
KR1020190144452 | 2019-11-12 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20210057649A KR20210057649A (en) | 2021-05-21 |
KR102297578B1 true KR102297578B1 (en) | 2021-09-03 |
Family
ID=76157715
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200072492A KR102297578B1 (en) | 2019-11-12 | 2020-06-15 | Method of controlling autonomous driving of moving object and apparatuses performing the same |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102297578B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20240014975A (en) | 2022-07-26 | 2024-02-02 | (주)텔레컨스 | Server and method for sharing information of autonomous vehicle |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117709602A (en) * | 2024-02-05 | 2024-03-15 | 吉林大学 | Urban intelligent vehicle personification decision-making method based on social value orientation |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019028985A (en) | 2017-07-31 | 2019-02-21 | 株式会社エクォス・リサーチ | Image data generation apparatus, image recognition apparatus, image data generation program, and image recognition program |
WO2019106789A1 (en) * | 2017-11-30 | 2019-06-06 | 三菱電機株式会社 | Processing device and processing method |
KR102043142B1 (en) * | 2018-12-31 | 2019-11-12 | 호서대학교 산학협력단 | Method and apparatus for learning artificial neural network for driving control of automated guided vehicle |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180065498A (en) * | 2016-12-08 | 2018-06-18 | 한국항공대학교산학협력단 | Method for deep learning and method for generating next prediction image using the same |
KR102301232B1 (en) * | 2017-05-31 | 2021-09-10 | 삼성전자주식회사 | Method and apparatus for processing multiple-channel feature map images |
-
2020
- 2020-06-15 KR KR1020200072492A patent/KR102297578B1/en active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019028985A (en) | 2017-07-31 | 2019-02-21 | 株式会社エクォス・リサーチ | Image data generation apparatus, image recognition apparatus, image data generation program, and image recognition program |
WO2019106789A1 (en) * | 2017-11-30 | 2019-06-06 | 三菱電機株式会社 | Processing device and processing method |
KR102043142B1 (en) * | 2018-12-31 | 2019-11-12 | 호서대학교 산학협력단 | Method and apparatus for learning artificial neural network for driving control of automated guided vehicle |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20240014975A (en) | 2022-07-26 | 2024-02-02 | (주)텔레컨스 | Server and method for sharing information of autonomous vehicle |
Also Published As
Publication number | Publication date |
---|---|
KR20210057649A (en) | 2021-05-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109032103B (en) | Method, device and equipment for testing unmanned vehicle and storage medium | |
CN108692734B (en) | Path planning method and device | |
US11126891B2 (en) | Systems and methods for simulating sensor data using a generative model | |
US11693409B2 (en) | Systems and methods for a scenario tagger for autonomous vehicles | |
US11899748B2 (en) | System, method, and apparatus for a neural network model for a vehicle | |
CN108508881B (en) | Automatic driving control strategy adjusting method, device, equipment and storage medium | |
CN111860493B (en) | Target detection method and device based on point cloud data | |
CN108537326A (en) | For the method for automatic driving vehicle, medium and system | |
WO2020094033A1 (en) | Method and system for converting point cloud data for use with 2d convolutional neural networks | |
KR102297578B1 (en) | Method of controlling autonomous driving of moving object and apparatuses performing the same | |
WO2019047651A1 (en) | Driving behavior prediction method and device, and unmanned vehicle | |
US11257309B2 (en) | Systems and methods to test an autonomous vehicle | |
US10885240B2 (en) | Deterministic simulation framework for autonomous vehicle testing | |
CN110901656B (en) | Experimental design method and system for autonomous vehicle control | |
US20190064825A1 (en) | Vehicle Interface for Autonomous Vehicle | |
JP2020042794A (en) | Self-driving vehicle visual sensing method, self-driving vehicle visual sensing device, control instrument and computer readable storage medium | |
CN112382165B (en) | Driving strategy generation method, device, medium, equipment and simulation system | |
CN111062405A (en) | Method and device for training image recognition model and image recognition method and device | |
CN110968088A (en) | Method and device for determining vehicle control parameters, vehicle-mounted controller and unmanned vehicle | |
US11436498B2 (en) | Neural architecture search system for generating a neural network architecture | |
KR102521657B1 (en) | Method and apparatus of controlling vehicel | |
CN111210411B (en) | Method for detecting vanishing points in image, method for training detection model and electronic equipment | |
Noto et al. | Obstacle avoidance assisting system based on personalized potential field | |
Curiel-Ramirez et al. | Hardware in the loop framework proposal for a semi-autonomous car architecture in a closed route environment | |
CN112668596B (en) | Three-dimensional object recognition method and device, recognition model training method and device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |