KR102343062B1 - Control method for sensors with height difference, and computer program recorded on record-medium for executing method therefor - Google Patents
Control method for sensors with height difference, and computer program recorded on record-medium for executing method therefor Download PDFInfo
- Publication number
- KR102343062B1 KR102343062B1 KR1020210102995A KR20210102995A KR102343062B1 KR 102343062 B1 KR102343062 B1 KR 102343062B1 KR 1020210102995 A KR1020210102995 A KR 1020210102995A KR 20210102995 A KR20210102995 A KR 20210102995A KR 102343062 B1 KR102343062 B1 KR 102343062B1
- Authority
- KR
- South Korea
- Prior art keywords
- data
- image
- identified
- identifying
- vehicle
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 54
- 238000004590 computer program Methods 0.000 title claims description 14
- 238000013480 data collection Methods 0.000 claims abstract description 75
- 238000013473 artificial intelligence Methods 0.000 claims abstract description 73
- 238000010801 machine learning Methods 0.000 claims abstract description 28
- 238000012545 processing Methods 0.000 claims description 64
- 238000013503 de-identification Methods 0.000 description 46
- 238000001514 detection method Methods 0.000 description 27
- 238000004891 communication Methods 0.000 description 25
- 238000010586 diagram Methods 0.000 description 20
- 230000008569 process Effects 0.000 description 18
- 238000010295 mobile communication Methods 0.000 description 13
- 238000012549 training Methods 0.000 description 13
- 230000004044 response Effects 0.000 description 12
- 230000005540 biological transmission Effects 0.000 description 7
- 238000000926 separation method Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 238000013461 design Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 230000002787 reinforcement Effects 0.000 description 5
- 238000000746 purification Methods 0.000 description 4
- 238000012795 verification Methods 0.000 description 3
- 229920001621 AMOLED Polymers 0.000 description 2
- 230000009193 crawling Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 230000008447 perception Effects 0.000 description 2
- 238000003672 processing method Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000001149 cognitive effect Effects 0.000 description 1
- 238000013524 data verification Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000007639 printing Methods 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 230000001502 supplementing effect Effects 0.000 description 1
- 238000002604 ultrasonography Methods 0.000 description 1
Images
Classifications
-
- H04N5/23206—
-
- 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
- B60W60/00—Drive control systems specially adapted for autonomous road vehicles
- B60W60/001—Planning or execution of driving tasks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/02—Knowledge representation; Symbolic representation
- G06N5/022—Knowledge engineering; Knowledge acquisition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
-
- H04N5/2257—
-
- H04N5/247—
-
- B60W2420/42—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10032—Satellite or aerial image; Remote sensing
- G06T2207/10044—Radar image
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Mechanical Engineering (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Transportation (AREA)
- Automation & Control Theory (AREA)
- Medical Informatics (AREA)
- Human Computer Interaction (AREA)
- Multimedia (AREA)
- Computational Linguistics (AREA)
- Traffic Control Systems (AREA)
Abstract
Description
본 발명은 인공지능(Artificial Intelligence, AI) 기계 학습용 데이터의 수집에 관한 것이다. 보다 상세하게는, 인공지능(AI)의 기계 학습용 데이터를 수집하기 위한 차량에 서로 다른 높이에 설치된 복수 개의 동종 센서들을 위한 제어 방법 및 이를 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램에 관한 것이다.The present invention relates to the collection of data for artificial intelligence (AI) machine learning. More specifically, it relates to a control method for a plurality of same types of sensors installed at different heights in a vehicle for collecting data for machine learning of artificial intelligence (AI), and a computer program recorded on a recording medium for executing the control method.
인공지능(AI)은 인간의 학습능력, 추론능력 및 지각능력 등의 일부 또는 전부를 컴퓨터 프로그램을 이용하여 인공적으로 구현하는 기술을 의미한다. 인공지능(AI)과 관련하여, 기계 학습(machine learning)은 다수의 파라미터로 구성된 모델을 이용하여 주어진 데이터로 파라미터를 최적화하는 학습을 의미한다. 이와 같은, 기계 학습은 학습용 데이터의 형태에서 따라, 지도 학습(supervised learning), 비지도 학습(unsupervised learning) 및 강화 학습(reinforcement learning)으로 구분된다.Artificial intelligence (AI) refers to a technology that artificially implements some or all of human learning ability, reasoning ability, and perception ability using computer programs. In relation to artificial intelligence (AI), machine learning refers to learning to optimize parameters with given data using a model composed of multiple parameters. Such machine learning is classified into supervised learning, unsupervised learning, and reinforcement learning according to the type of data for learning.
일반적으로, 인공지능(AI) 학습용 데이터의 설계는 데이터 구조의 설계, 데이터의 수집, 데이터의 정제, 데이터의 가공, 데이터의 확장 및 데이터의 검증 단계로 진행된다.In general, the design of data for artificial intelligence (AI) learning proceeds in the stages of data structure design, data collection, data purification, data processing, data expansion, and data verification.
각각의 단계에서 대하여 보다 구체적으로 설명하면, 데이터 구조의 설계는 온톨로지(ontology) 정의, 분류 체계의 정의 등을 통해 이루어진다. 데이터의 수집은 직접 촬영, 웹 크롤링(web crawling) 또는 협회/전문 단체 등을 통해 데이터를 수집하여 이루어진다. 데이터 정제는 수집된 데이터 내에서 중복 데이터를 제거하고, 개인 정보 등을 비식별화하여 이루어진다. 데이터의 가공은 어노테이션(annotation)을 수행하고, 메타데이터(metadata)를 입력하여 이루어진다. 데이터의 확장은 온톨로지 매핑(mapping)을 수행하고, 필요에 따라 온톨로지를 보완하거나 확장하여 이루어진다. 그리고, 데이터의 검증은 다양한 검증 도구를 활용하여 설정된 목표 품질에 따른 유효성을 검증하여 이루어진다.To describe each step in more detail, the design of the data structure is made through the definition of an ontology, a definition of a classification system, and the like. Data collection is performed by collecting data through direct shooting, web crawling, or association/professional organizations. Data purification is performed by removing duplicate data from the collected data and de-identifying personal information. Data processing is performed by performing annotations and inputting metadata. Data expansion is performed by performing ontology mapping, and supplementing or extending the ontology as necessary. And, the verification of the data is performed by verifying the validity according to the set target quality using various verification tools.
한편, 차량의 자율주행(automatic driving)은 차량 스스로 판단하여 주행할 수 있는 시스템을 의미한다. 이와 같은, 자율주행은 시스템이 주행에 관여하는 정도와 운전차가 차량을 제어하는 정도에 따라 비자동화부터 완전 자동화까지 점진적인 단계로 구분될 수 있다. 일반적으로, 자율주행의 단계는 국제자동차기술자협회(SAE(Society of Automotive Engineers) International)에서 분류한 6단계의 레벨로 구분된다. 국제자동차기술자협회(SAE)가 분류한 6단계에 따르면, 레벨 0단계는 비자동화(no automation), 레벨 1단계는 운전자 보조(driver assistance), 레벨 2단계는 부분 자동화(partial automation), 레벨 3단계는 조건부 자동화(conditional automation), 레벨 4단계는 고도 자동화(high automation), 그리고 레벨 5단계는 완전 자동화(full automation) 단계이다.Meanwhile, automatic driving of a vehicle refers to a system capable of driving by determining the vehicle itself. Such autonomous driving may be divided into gradual stages from non-automation to full automation according to the degree to which the system is involved in driving and the degree to which the driver controls the vehicle. In general, the stage of autonomous driving is divided into six levels classified by the Society of Automotive Engineers (SAE) International. According to the 6 levels classified by the Society of Automotive Engineers (SAE), Level 0 is no automation, Level 1 is driver assistance, Level 2 is partial automation, and Level 3 is The stage is a conditional automation stage, the level 4 stage is a high automation stage, and the
차량의 자율주행은 인지(perception), 측위(localization), 경로 계획(path planning) 및 제어(control)의 메커니즘을 통해 수행된다. 현재 여러 기업체들은 자율주행 메커니즘 중에서 인지 및 경로 계획을 인공지능(AI)을 이용하여 구현하기 위해 개발 중에 있다. Autonomous driving of a vehicle is performed through mechanisms of perception, localization, path planning, and control. Currently, several companies are developing to implement cognitive and path planning among autonomous driving mechanisms using artificial intelligence (AI).
이러한 차량의 자율주행에 사용될 수 있는 인공지능(AI)의 기계 학습에 사용되는 데이터는 차량에 설치된 다양한 종류의 센서들에 의해 수집된다. 예를 들어, 차량의 자율주행에 사용될 수 있는 인공지능(AI)의 기계 학습에 사용되는 데이터들은 차량에 고정 설치된 라이다(lidar), 카메라(camera), 레이더(radar), 초음파 센서(ultrasonic sensor) 및 GPS(Global Positioning System) 등에 의해 획득, 촬영 또는 감지된 데이터들이 될 수 있으며, 이에 한정되는 것도 아니다.Data used for machine learning of artificial intelligence (AI) that can be used for autonomous driving of these vehicles is collected by various types of sensors installed in the vehicle. For example, data used for machine learning of artificial intelligence (AI) that can be used for autonomous driving of a vehicle is a lidar, a camera, a radar, and an ultrasonic sensor that are fixedly installed in the vehicle. ) and data acquired, photographed, or detected by a Global Positioning System (GPS), etc., but is not limited thereto.
그러나, 인공지능(AI)의 기계 학습에 사용하기 위해 차량에 설치된 다양한 종류의 센서들을 이용하여 실시간으로 데이터들을 수집할 경우, 수집된 데이터들의 용량이 기하 급수적으로 커지게 되나 이동통신의 대역폭, 음영 지역 등에 의해 수집된 데이터들을 실시간으로 외부에 전송할 수 없는 어려움이 있다.However, when collecting data in real time using various types of sensors installed in vehicles for use in machine learning of artificial intelligence (AI), the capacity of the collected data increases exponentially, but the bandwidth and shadow of mobile communication There is a difficulty in that it is impossible to transmit data collected by a region or the like to the outside in real time.
또한, 다양한 센서들에 의해 수집된 데이터 속에는 무의미한 데이터(useless data)가 포함되어 있거나, 또는 개인 정보(personal information)가 포함되어 있을 수 있다. 나아가, 데이터들을 수집하기 위한 다양한 센서들이 설치된 차량과 실제 자율주행을 수행할 차량의 물리적인 조건이 서로 다를 경우, 수집된 데이터들을 이용하여 기계 학습된 인공지능(AI)에 의한 자율주행의 성능을 보장할 수 없다는 한계가 있다.In addition, data collected by various sensors may include useless data or personal information. Furthermore, when the physical conditions of the vehicle in which various sensors for collecting data are installed and the vehicle that will actually perform autonomous driving are different, the performance of autonomous driving by machine-learned artificial intelligence (AI) using the collected data is different. There are limitations that cannot be guaranteed.
본 발명의 일 목적은 차량의 자율주행에 사용될 수 있는 인공지능(AI)의 기계 학습용 데이터를 수집하기 위한 차량에 서로 다른 높이에 설치된 복수 개의 동종 센서들을 위한 제어 방법을 제공하는 것이다.One object of the present invention is to provide a control method for a plurality of sensors of the same type installed at different heights in a vehicle for collecting data for machine learning of artificial intelligence (AI) that can be used for autonomous driving of the vehicle.
본 발명의 다른 목적은 기계 학습용 데이터를 수집하기 위한 차량에 서로 다른 높이에 설치된 복수 개의 동종 센서들을 위한 제어 방법을 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램을 제공하는 것이다.Another object of the present invention is to provide a computer program recorded on a recording medium for executing a control method for a plurality of same types of sensors installed at different heights in a vehicle for collecting machine learning data.
본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The technical problems of the present invention are not limited to the technical problems mentioned above, and other technical problems not mentioned will be clearly understood by those skilled in the art from the following description.
상술한 바와 같은 기술적 과제를 달성하기 위하여, 본 발명은 차량의 자율주행에 사용될 수 있는 인공지능(AI)의 기계 학습용 데이터를 수집하기 위한 차량에 서로 다른 높이에 설치된 복수 개의 동종 센서들을 위한 제어 방법을 제안한다. 상기 방법은 학습 데이터 수집 장치가 차량에 서로 다른 높이에 설치된 복수 개의 카메라들(cameras)에 의해 동시에 촬영된 2D 이미지들을 수집하는 단계; 상기 학습 데이터 수집 장치가 상기 복수 개의 카메라들 사이의 우선순위(priority)를 기초로, 상기 우선순위가 가장 높은 카메라에 의해 촬영된 2D 이미지에 포함된 객체를 식별하는 단계; 및 상기 학습 데이터 수집 장치가 상기 우선순위가 가장 높은 카메라에 의해 촬영된 2D 이미지 및 상기 식별된 객체에 관한 정보를 학습 데이터 생성 장치에 전송하는 단계를 포함할 수 있다. 이 경우, 상기 복수 개의 카메라들 사이의 우선순위는 상기 인공지능(AI)을 이용하여 자율주행을 수행할 차량의 차고(vehicle height)를 기초로 임시적으로 설정될 수 있다.In order to achieve the technical task as described above, the present invention provides a control method for a plurality of homogeneous sensors installed at different heights in a vehicle for collecting data for machine learning of artificial intelligence (AI) that can be used for autonomous driving of a vehicle suggest The method includes: collecting, by a learning data collection device, 2D images simultaneously photographed by a plurality of cameras installed at different heights in the vehicle; identifying, by the learning data collection device, an object included in a 2D image captured by a camera having the highest priority based on a priority between the plurality of cameras; and transmitting, by the learning data collection device, the 2D image captured by the camera having the highest priority and information on the identified object to the learning data generating device. In this case, the priority among the plurality of cameras may be temporarily set based on the vehicle height of the vehicle to be autonomously driven using the artificial intelligence (AI).
구체적으로, 상기 객체를 식별하는 단계는 상기 우선순위가 가장 높은 카메라에 의해 촬영된 2D 이미지를 대상으로 수행된 객체의 식별이 사전에 설정된 횟수만큼 연속적으로 실패한 경우, 상기 우선순위의 조정을 수행할 수 있다.Specifically, in the step of identifying the object, if the identification of the object performed for the 2D image taken by the camera having the highest priority fails continuously for a preset number of times, the priority adjustment is performed. can
상기 객체를 식별하는 단계는 상기 복수 개의 카메라들에 의해 촬영된 2D 이미지들을 대상으로 각각의 2D 이미지에 포함된 객체를 식별하고, 상기 각각의 2D 이미지로부터 식별된 객체의 완전성(integrity)을 기준으로 상기 우선순위를 조정할 수 있다. 이 경우, 상기 객체의 완전성은 객체의 전체 형상 중에서 카메라의 화각 또는 다른 객체에 의해 잘리지 않고 2D 이미지에 포함된 비율을 의미할 수 있다.The step of identifying the object identifies the object included in each 2D image for the 2D images photographed by the plurality of cameras, and based on the integrity of the object identified from each 2D image You can adjust the priority. In this case, the completeness of the object may mean a ratio included in the 2D image without being cut by the angle of view of the camera or other objects among the entire shape of the object.
일 예에 따르면, 상기 2D 이미지들을 수집하는 단계는 상기 차량에 설치된 라이다(lidar)에 의해 획득된 3D 점군 데이터를 더 수집할 수 있다. 그리고, 상기 객체를 식별하는 단계는 상기 3D 점군 데이터에 포함된 점들의 3차원 좌표를 기초로 상기 3D 점군 데이터에 포함된 객체를 식별하고, 상기 3D 점군 데이터로부터 식별된 객체와 상기 각각의 2D 이미지로부터 식별된 객체를 서로 대비한 결과를 기초로, 상기 객체의 완전성을 평가할 수 있다.According to an example, the collecting of the 2D images may further collect 3D point cloud data obtained by a lidar installed in the vehicle. And, the step of identifying the object identifies the object included in the 3D point cloud data based on the three-dimensional coordinates of the points included in the 3D point cloud data, the object identified from the 3D point cloud data and each of the 2D images Based on the result of comparing the objects identified from , the integrity of the object may be evaluated.
이를 위하여, 상기 객체를 식별하는 단계는 상기 3D 점군 데이터에 포함된 점들 중에서 사전에 설정된 임계 범위 내에서 군집(crowd)을 형성하고 있는 점들을 식별하고, 상기 식별된 군집의 X축 상의 폭, Y축 상의 높이 및 Z축 상의 깊이를 기초로 상기 객체의 유형을 식별할 수 있다. 이 경우, 상기 객체를 식별하는 단계는 객체의 유형별로 사전에 구비된 폭, 높이 및 깊이의 비율 관계(rate relation)를 기초로, 상기 식별된 군집의 X축 상의 폭, Y축 상의 높이 및 Z축 상의 깊이에 대응하는 객체의 유형을 식별할 수도 있다.To this end, the step of identifying the object identifies points forming a crowd within a preset threshold range among points included in the 3D point cloud data, and the identified cluster width on the X-axis, Y The type of object may be identified based on the height on the axis and the depth on the Z axis. In this case, the step of identifying the object includes the width on the X-axis, the height on the Y-axis, and the Z-axis of the identified cluster based on a rate relation of width, height, and depth provided in advance for each type of object. It is also possible to identify the type of object corresponding to the depth on the axis.
다른 예에 따르면, 상기 객체를 식별하는 단계는 상기 각각의 2D 이미지로부터 식별된 객체를 구성하는 점들 중에서 상기 식별된 객체의 유형에 따라 사전에 설정된 복수 개의 필수점(essential point)들에 대응하는 점들을 몇 개나 포함하고 있는지 여부에 따라 상기 완전성을 평가할 수 있다. 이 경우, 상기 복수 개의 필수점은 상기 객체의 유형을 다른 유형과 구별하기 위하여 요구되는 점들이 될 수 있다.According to another example, the step of identifying the object corresponds to a plurality of essential points preset according to the type of the identified object among points constituting the object identified from each of the 2D images. The completeness can be evaluated depending on how many of them are included. In this case, the plurality of essential points may be points required to distinguish the type of the object from other types.
한편, 상기 객체를 식별하는 단계는 상기 우선순위가 가장 높은 카메라에 의해 촬영된 2D 이미지로부터 상기 객체의 식별이 실패한 경우, 차순위의 우선순위를 가지는 카메라에 의해 촬영된 2D 이미지로부터 상기 객체의 식별을 시도할 수 있다.On the other hand, in the step of identifying the object, if the identification of the object from the 2D image photographed by the camera having the highest priority fails, the object is identified from the 2D image photographed by the camera having the next priority. you can try
또한, 상기 객체를 식별하는 단계는 상기 복수 개의 카메라들에 의해 동시에 촬영된 모든 2D 이미지들로부터 상기 객체의 식별이 실패한 경우, 상기 2D 이미지들이 촬영된 시점과 동시에 라이다에 의해 획득된 3D 점군 데이터를 제거할 수도 있다.In addition, in the step of identifying the object, when the identification of the object from all 2D images simultaneously photographed by the plurality of cameras fails, 3D point cloud data obtained by the lidar at the same time when the 2D images are photographed can also be removed.
상술한 바와 같은 기술적 과제를 달성하기 위하여, 본 발명은 높이 차이를 가지는 센서들을 위한 제어 방법을 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램을 제안한다. 상기 컴퓨터 프로그램은 메모리(memory); 송수신기(transceiver); 및 상기 메모리에 상주된 명령어를 처리하는 프로세서(processor)를 포함하여 구성된 컴퓨팅 장치와 결합될 수 있다. 그리고, 상기 컴퓨터 프로그램은 상기 프로세서가 차량에 서로 다른 높이에 설치된 복수 개의 카메라들에 의해 동시에 촬영된 2D 이미지들을 수집하는 단계; 상기 프로세서가 상기 복수 개의 카메라들 사이의 우선순위를 기초로, 상기 우선순위가 가장 높은 카메라에 의해 촬영된 2D 이미지에 포함된 객체를 식별하는 단계; 및 상기 프로세서가 상기 우선순위가 가장 높은 카메라에 의해 촬영된 2D 이미지 및 상기 식별된 객체에 관한 정보를 학습 데이터 생성 장치에 전송하는 단계를 실행시키기 위하여, 기록매체에 기록된 컴퓨터 프로그램이 될 수 있다. In order to achieve the technical problem as described above, the present invention proposes a computer program recorded on a recording medium to execute a control method for sensors having a height difference. The computer program includes a memory; transceiver; and a processor for processing instructions resident in the memory. The computer program may include: collecting, by the processor, 2D images simultaneously photographed by a plurality of cameras installed at different heights in the vehicle; identifying, by the processor, an object included in the 2D image captured by the camera having the highest priority based on the priority among the plurality of cameras; and a computer program recorded on a recording medium in order for the processor to transmit the 2D image captured by the camera having the highest priority and information on the identified object to the learning data generating device. .
기타 실시 예들의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.Specific details of other embodiments are included in the detailed description and drawings.
본 발명의 실시 예들에 따르면, 인공지능(AI)을 기계 학습시키기 위하여 데이터를 수집하는 차량에 설치된 센서와, 학습된 인공지능(AI)을 이용하여 실제 자율주행을 수행하는 차량에 설치된 센서 사이의 높이가 서로 달라 객체의 검출율이 달라지는 문제점을 해소할 수 있다.According to embodiments of the present invention, between a sensor installed in a vehicle that collects data for machine learning of artificial intelligence (AI), and a sensor installed in a vehicle that actually performs autonomous driving using the learned artificial intelligence (AI) It is possible to solve the problem that the detection rate of the object is different due to the different heights.
또한, 차량의 서로 다른 높이에 설치된 복수 개의 카메라들 사이의 우선순위를 정의하고 조절함으로써, 복수 개의 카메라들에 의해 동시에 실시간으로 촬영된 모든 2D 이미지를 처리하기 위한 연산 부하(computing load) 및 네트워킹 부하(networking load)를 감소시킬 수 있게 된다.In addition, by defining and adjusting the priority among a plurality of cameras installed at different heights of the vehicle, a computing load and networking load for processing all 2D images simultaneously shot in real time by the plurality of cameras (networking load) can be reduced.
본 발명의 효과들은 이상에서 언급한 효과로 제한되지 아니하며, 언급되지 않은 또 다른 효과들은 청구범위의 기재로부터 본 발명이 속한 기술분야의 통상의 기술자에게 명확하게 이해될 수 있을 것이다.Effects of the present invention are not limited to the effects mentioned above, and other effects not mentioned will be clearly understood by those skilled in the art from the description of the claims.
도 1은 본 발명의 일 실시예에 따른 인공지능 학습 시스템의 구성도이다.
도 2는 본 발명의 일 실시예에 따른 센서들을 설명하기 위한 예시도이다.
도 3은 서로 다른 높이에 설치된 카메라들의 서로 다른 객체 인식율을 설명하기 위한 예시도이다.
도 4는 본 발명의 일 실시예에 따른 학습 데이터 수집 장치의 논리적 구성도이다.
도 5는 본 발명의 일 실시예에 따른 학습 데이터 수집 장치의 하드웨어 구성도이다.
도 6은 본 발명의 일 실시예에 따라 3D 점군 데이터에 포함된 객체의 유형을 식별하는 과정을 설명하기 위한 예시도이다.
도 7은 본 발명의 일 실시예에 따라 2D 이미지 내에서 객체의 영역을 식별하는 과정을 설명하기 위한 예시도이다.
도 8 및 도 9는 본 발명의 몇몇 실시예에 따라 객체를 검출한 결과를 설명하기 위한 예시도들이다.
도 10은 본 발명의 일 실시예에 따라 개인정보를 비식별 처리한 결과를 설명하기 위한 예시도이다.
도 11은 본 발명의 일 실시예에 따라 데이터를 전송하는 과정을 설명하기 위한 예시도이다.
도 12는 본 발명의 일 실시예에 따라 최악의 통신 환경에 데이터를 전송하는 과정을 설명하기 위한 예시도이다.
도 13은 본 발명의 일 실시예에 따른 데이터 수집 방법을 설명하기 위한 순서도이다. 1 is a block diagram of an artificial intelligence learning system according to an embodiment of the present invention.
2 is an exemplary diagram for explaining sensors according to an embodiment of the present invention.
3 is an exemplary diagram for explaining different object recognition rates of cameras installed at different heights.
4 is a logical configuration diagram of an apparatus for collecting learning data according to an embodiment of the present invention.
5 is a hardware configuration diagram of an apparatus for collecting learning data according to an embodiment of the present invention.
6 is an exemplary diagram for explaining a process of identifying a type of an object included in 3D point cloud data according to an embodiment of the present invention.
7 is an exemplary diagram for explaining a process of identifying a region of an object in a 2D image according to an embodiment of the present invention.
8 and 9 are exemplary views for explaining a result of detecting an object according to some embodiments of the present invention.
10 is an exemplary diagram for explaining a result of de-identification processing of personal information according to an embodiment of the present invention.
11 is an exemplary diagram for explaining a process of transmitting data according to an embodiment of the present invention.
12 is an exemplary diagram for explaining a process of transmitting data in the worst communication environment according to an embodiment of the present invention.
13 is a flowchart illustrating a data collection method according to an embodiment of the present invention.
본 명세서에서 사용되는 기술적 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아님을 유의해야 한다. 또한, 본 명세서에서 사용되는 기술적 용어는 본 명세서에서 특별히 다른 의미로 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 의미로 해석되어야 하며, 과도하게 포괄적인 의미로 해석되거나, 과도하게 축소된 의미로 해석되지 않아야 한다. 또한, 본 명세서에서 사용되는 기술적인 용어가 본 발명의 사상을 정확하게 표현하지 못하는 잘못된 기술적 용어일 때에는, 당업자가 올바르게 이해할 수 있는 기술적 용어로 대체되어 이해되어야 할 것이다. 또한, 본 발명에서 사용되는 일반적인 용어는 사전에 정의되어 있는 바에 따라, 또는 전후 문맥상에 따라 해석되어야 하며, 과도하게 축소된 의미로 해석되지 않아야 한다.It should be noted that the technical terms used herein are used only to describe specific embodiments, and are not intended to limit the present invention. In addition, the technical terms used in this specification should be interpreted as meanings generally understood by those of ordinary skill in the art to which the present invention belongs, unless otherwise specifically defined in this specification, and excessively inclusive It should not be construed in the meaning of a human being or in an excessively reduced meaning. In addition, when the technical terms used in the present specification are incorrect technical terms that do not accurately express the spirit of the present invention, they should be understood by being replaced with technical terms that can be correctly understood by those skilled in the art. In addition, the general terms used in the present invention should be interpreted according to the definition in the dictionary or according to the context before and after, and should not be interpreted in an excessively reduced meaning.
또한, 본 명세서에서 사용되는 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "구성된다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 여러 구성 요소들, 또는 여러 단계들을 반드시 모두 포함하는 것으로 해석되지 않아야 하며, 그 중 일부 구성 요소들 또는 일부 단계들은 포함되지 않을 수도 있고, 또는 추가적인 구성 요소 또는 단계들을 더 포함할 수 있는 것으로 해석되어야 한다.Also, as used herein, the singular expression includes the plural expression unless the context clearly dictates otherwise. In the present application, terms such as "consisting of" or "having" should not be construed as necessarily including all of the various components or various steps described in the specification, and some of the components or some steps are included. It should be construed that it may not, or may further include additional components or steps.
또한, 본 명세서에서 사용되는 제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성 요소는 제2 구성 요소로 명명될 수 있고, 유사하게 제2 구성 요소도 제1 구성 요소로 명명될 수 있다. Also, terms including ordinal numbers such as first, second, etc. used herein may be used to describe various components, but the components should not be limited by the terms. The above terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, a first component may be referred to as a second component, and similarly, a second component may also be referred to as a first component.
어떤 구성 요소가 다른 구성 요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성 요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성 요소가 존재할 수도 있다. 반면에, 어떤 구성 요소가 다른 구성 요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성 요소가 존재하지 않는 것으로 이해되어야 할 것이다.When a component is referred to as being “connected” or “connected” to another component, it may be directly connected or connected to the other component, but another component may exist in between. On the other hand, when it is said that a certain element is "directly connected" or "directly connected" to another element, it should be understood that no other element is present in the middle.
이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성 요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 또한, 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 발명의 사상을 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 발명의 사상이 제한되는 것으로 해석되어서는 아니 됨을 유의해야 한다. 본 발명의 사상은 첨부된 도면 외에 모든 변경, 균등물 내지 대체물에 까지도 확장되는 것으로 해석되어야 한다. Hereinafter, a preferred embodiment according to the present invention will be described in detail with reference to the accompanying drawings, but the same or similar components are assigned the same reference numerals regardless of reference numerals, and redundant description thereof will be omitted. In addition, in the description of the present invention, if it is determined that a detailed description of a related known technology may obscure the gist of the present invention, the detailed description thereof will be omitted. In addition, it should be noted that the accompanying drawings are only for easy understanding of the spirit of the present invention, and should not be construed as limiting the spirit of the present invention by the accompanying drawings. The spirit of the present invention should be interpreted as extending to all changes, equivalents or substitutes other than the accompanying drawings.
상술한 바와 같이, 인공지능(AI)의 기계 학습에 사용하기 위해 차량에 설치된 다양한 종류의 센서들을 이용하여 실시간으로 데이터들을 수집할 경우, 수집된 데이터들의 용량이 기하 급수적으로 커지게 되나 이동통신의 대역폭, 음영 지역 등에 의해 수집된 데이터들을 실시간으로 외부에 전송할 수 없는 어려움이 있었다. 또한, 다양한 센서들에 의해 수집된 데이터 속에는 무의미한 데이터(useless data)가 포함되어 있거나, 또는 개인 정보(personal information)가 포함되어 있을 수 있다. 나아가, 데이터들을 수집하기 위한 다양한 센서들이 설치된 차량과 실제 자율주행을 수행할 차량의 물리적인 조건이 서로 다를 경우, 수집된 데이터들을 이용하여 기계 학습된 인공지능(AI)에 의한 자율주행의 성능을 보장할 수 없다는 한계가 있었다.As described above, when data is collected in real time using various types of sensors installed in a vehicle for use in machine learning of artificial intelligence (AI), the capacity of the collected data increases exponentially, but There was a difficulty in that it was impossible to transmit the collected data to the outside in real time due to bandwidth, shaded area, etc. In addition, data collected by various sensors may include useless data or personal information. Furthermore, when the physical conditions of the vehicle in which various sensors for collecting data are installed and the vehicle that will actually perform autonomous driving are different, the performance of autonomous driving by machine-learned artificial intelligence (AI) using the collected data is different. There was a limit that could not be guaranteed.
이러한 한계를 극복하고자, 본 발명은 인공지능(AI)의 기계 학습용 데이터를 수집하는 장치가 차량에 설치된 각종 센서들을 효율적으로 제어하고, 실시간으로 수집된 데이터로부터 객체 검출 및 개인정보 비식별의 전처리를 수행하고, 통신 품질에 따라 데이터를 효율적으로 전송할 수 있는 수단들을 제안하고자 한다.In order to overcome this limitation, the present invention provides an apparatus for collecting data for machine learning of artificial intelligence (AI) to efficiently control various sensors installed in a vehicle, and to perform pre-processing of object detection and personal information de-identification from data collected in real time. We intend to propose means for efficiently transmitting data according to communication quality.
도 1은 본 발명의 일 실시예에 따른 인공지능 학습 시스템의 구성도이다.1 is a block diagram of an artificial intelligence learning system according to an embodiment of the present invention.
도 1에 도시된 바와 같이, 본 발명의 일 실시예에 따른 인공지능 학습 시스템은 복수의 학습 데이터 수집 장치(100a, 100b, …, 100n; 100)), 학습 데이터 생성 장치(200), 복수의 어노테이션 장치(300a, 300b, …, 300n; 300) 및 인공지능 학습 장치(400)를 포함하여 구성될 수 있다.1, the artificial intelligence learning system according to an embodiment of the present invention includes a plurality of learning
이와 같은, 일 실시예에 따른 인공지능 학습 시스템의 구성 요소들은 기능적으로 구분되는 요소들을 나타낸 것에 불과하므로, 둘 이상의 구성 요소가 실제 물리적 환경에서는 서로 통합되어 구현되거나, 하나의 구성 요소가 실제 물리적 환경에서는 서로 분리되어 구현될 수 있을 것이다.As such, since the components of the AI learning system according to an embodiment are merely functionally distinct elements, two or more components are integrated with each other in the actual physical environment, or one component is the actual physical environment. may be implemented separately from each other.
각각의 구성 요소에 대하여 설명하면, 학습 데이터 수집 장치(100)는 자율주행에 사용될 수 있는 인공지능(AI)을 기계 학습시키기 위한 데이터를 수집하기 위하여, 차량에 설치된 라이다(lidar), 카메라(camera), 레이더(radar) 및 초음파 센서(ultrasonic sensor) 중 하나 이상으로부터 실시간으로 데이터를 수집하는 장치이다.When explaining each component, the learning
특징적으로, 본 발명의 다양한 실시예에 따른 학습 데이터 수집 장치(100)는 차량에 서로 다른 높이에 설치되어 동일한 방향을 동시에 실시간으로 촬영하는 복수 개의 카메라들을 효율적으로 제어할 수 있다. 학습 데이터 수집 장치(100)는 수집된 데이터를 학습 데이터 생성 장치(200)에 전송하기 이전에, 수집된 데이터에 포함된 객체를 자동으로 검출하고, 개인 정보를 자동으로 비식별 처리할 수 있다. 또한, 학습 데이터 수집 장치(100)는 수집된 데이터를 학습 데이터 생성 장치(200)와의 통신 품질에 따라 효율적으로 전송할 수 있다.Characteristically, the learning
이러한, 학습 데이터 수집 장치(100)의 제어 대상이자, 차량에 설치되어 기계 학습용 데이터를 획득, 촬영 또는 감지하는 센서의 종류에는 라이다(lidar), 카메라(camera), 레이더(radar) 및 초음파 센서(ultrasonic sensor) 중 하나 이상이 포함될 수 있으나, 이에 한정되는 것은 아니다. 또한, 학습 데이터 수집 장치(100)의 제어 대상이자, 차량에 설치되어 기계 학습용 데이터를 획득, 촬영 또는 감지하는 센서는 종류별로 하나씩 구비되는 것으로 한정되지 아니하며, 동일한 종류의 센서라 할지라도 복수 개로 구비될 수 있다.The types of sensors that are control objects of the learning
학습 데이터 수집 장치(100)의 제어 대상이자, 차량에 설치되어 기계 학습용 데이터를 획득, 촬영 또는 감지하는 센서들의 종류에 대해서는 추후 도 2를 참조하여 보다 구체적으로 설명하기로 한다. 또한, 학습 데이터 수집 장치(100)의 특징들에 대해서는 추후 도 3 및 도 4를 참조하여 보다 구체적으로 설명하기로 한다.The types of sensors that are control objects of the learning
다음 구성으로, 학습 데이터 생성 장치(200)는 복수의 학습 데이터 수집 장치(100) 각각으로부터 이동통신(mobile communication)을 이용하여 각각의 학습 데이터 수집 장치(100)에 의해 실시간으로 수집된 데이터를 수신하고, 수신된 데이터를 복수의 어노테이션 장치(300)에 분배하고, 각각의 어노테이션 장치(300)로부터 수신된 어노테이션 작업 결과물을 기초로 인공지능(AI)을 기계 학습시키기 위한 데이터를 생성하는 장치이다. In the following configuration, the learning
구체적으로, 학습 데이터 생성 장치(200)는 인공지능 학습 장치(400)로부터 인공지능(AI) 학습과 관련된 프로젝트의 속성을 수신할 수 있다. 학습 데이터 생성 장치(200)는 사용자의 제어 및 수신된 프로젝트의 속성을 기초로, 인공지능(AI) 학습을 위한 데이터 구조의 설계, 수집된 데이터의 정제, 데이터의 가공, 데이터의 확장 및 데이터의 검증을 수행할 수 있다.Specifically, the learning
우선적으로, 학습 데이터 생성 장치(200)는 인공지능(AI) 학습을 위한 데이터 구조를 설계할 수 있다. 예를 들어, 학습 데이터 생성 장치(200)는 사용자의 제어 및 수신된 프로젝트의 속성을 기초로, 인공지능(AI) 학습을 위한 온톨로지(ontology), 인공지능(AI) 학습을 위한 데이터의 분류 체계를 정의할 수 있다.First, the learning
학습 데이터 생성 장치(200)는 설계된 데이터 구조를 기초로, 인공지능(AI) 학습을 위한 데이터를 수집할 수 있다. 이를 위하여, 학습 데이터 생성 장치(200)는 학습 데이터 수집 장치(100)로부터 감지 데이터들, 3D 점군 데이터들, 2D 이미지들 및 거리 정보들을 수신할 수 있다. 그러나, 이에 한정되지 아니하고, 학습 데이터 생성 장치(200)는 웹 크롤링(web crawling)을 수행하거나, 또는 외부 기관의 장치로부터 데이터들을 다운로드할 수도 있다.The learning
학습 데이터 생성 장치(200)는 수집된 감지 데이터들, 3D 점군 데이터들, 2D 이미지들 및 거리 정보들 중에서 중복되거나 또는 극히 유사한 데이터를 제거할 수 있다. 학습 데이터 생성 장치(200)는 학습 데이터 수집 장치(100)가 2D 이미지를 대상으로 자동으로 비식별 처리한 개인 정보가 올바른지 여부를 검증할 수 있다.The training
한편, 학습 데이터 생성 장치(200)는 학습 데이터 수집 장치(100)가 수행하는 객체 검출의 자동화를 지원하기 위하여, 다수의 2D 이미지들을 대상으로 기존의 어노테이션 작업의 결과물을 기초로 기계 학습된 객체 검출 인공지능(AI)을 구비할 수 있다. 그리고, 학습 데이터 생성 장치(200)는 객체 검출 인공지능(AI)을 이용하여 객체 검출 규칙을 생성하고, 생성된 객체 검출 규칙을 복수 개의 학습 데이터 수집 장치(100)에 대하여 배포할 수 있다.Meanwhile, the learning
이 경우, 객체 검출 규칙은 2D 이미지 내에서 식별된 객체를 검증할 수 있도록, 객체의 유형별로 분류된 엣지의 패턴들을 열거한 규칙이 될 수 있다. In this case, the object detection rule may be a rule enumerating patterns of edges classified by type of object to verify the object identified in the 2D image.
학습 데이터 생성 장치(200)는 학습 데이터 수집 장치(100)로부터 객체 검출 규칙에 대한 업데이트 요청을 수신할 수 있다. 이 경우, 업데이트 요청에는 기존의 객체 검출 규칙으로 올바르게 검증하지 못한 2D 이미지, 2D 이미지로부터 식별된 객체의 유형, 식별된 객체에 대하여 추출된 엣지의 패턴이 포함될 수 있으나, 이에 한정되는 것은 아니다. 학습 데이터 생성 장치(200)는 수신된 업데이트 요청을 기초로, 객체 검출 인공지능(AI)의 강화 학습(reinforcement learning)을 수행할 수 있다. 그리고, 학습 데이터 생성 장치(200)는 강화 학습의 결과로 새로운 객체 검출 규칙이 생성된 경우, 새로운 객체 검출 규칙을 복수 개의 학습 데이터 수집 장치(100)들에 대하여 재배포할 수 있다.The learning
또한, 학습 데이터 생성 장치(200)는 학습 데이터 수집 장치(100)가 수행하는 비식별 처리의 자동화를 지원하기 위하여, 다수의 2D 이미지들을 대상으로 기존에 개인 정보를 비식별 처리한 이미지들을 기초로 기계 학습된 비식별 처리 인공지능(AI)을 구비할 수 있다. 그리고, 학습 데이터 생성 장치(200)는 비식별 처리 인공지능(AI)을 이용하여 비식별 처리 규칙을 생성하고, 생성된 비식별 처리 규칙을 복수 개의 학습 데이터 수집 장치(100)들에 대하여 배포할 수 있다. In addition, in order to support the automation of the de-identification processing performed by the learning
이 경우, 비식별 처리 규칙은 2D 이미지 내에서 비식별 처리할 영역을 결정할 수 있도록, 객체 내의 존재하는 비식별 영역에 대한 엣지의 패턴들을 열거한 규칙이 될 수 있다. 또한, 비식별 처리는 2D 이미지에 포함된 개인 정보를 사람이 식별하지 못하도록 영상 처리하는 것이다. 구체적인 비식별 처리 방법의 예로서 2D 이미지 일부의 블러링(blurring) 처리가 포함될 수 있으나, 이에 한정되는 것은 아니다.In this case, the de-identification processing rule may be a rule enumerating patterns of edges with respect to the non-identification area existing in the object so as to determine the area to be de-identified in the 2D image. In addition, de-identification processing is image processing so that a person cannot identify personal information included in a 2D image. A specific example of the non-identification processing method may include, but is not limited to, blurring processing of a part of a 2D image.
학습 데이터 생성 장치(200)는 학습 데이터 수집 장치(100)로부터 비식별 처리 규칙에 대한 업데이트 요청을 수신할 수 있다. 이 경우, 업데이트 요청에는 기존의 비식별 처리 규칙으로 처리하지 못한 2D 이미지, 2D 이미지로부터 식별된 객체의 유형, 식별된 객체에 대하여 추출된 엣지의 패턴이 포함될 수 있으나, 이에 한정되는 것은 아니다. 학습 데이터 생성 장치(200)는 수신된 업데이트 요청을 기초로, 비식별 처리 인공지능(AI)의 강화 학습을 수행할 수 있다. 그리고, 학습 데이터 생성 장치(200)는 강화 학습의 결과로 새로운 비식별 처리 규칙이 생성된 경우, 새로운 비식별 처리 규칙을 복수 개의 학습 데이터 수집 장치(100)들에 대하여 재배포할 수 있다.The learning
한편, 학습 데이터 생성 장치(200)는 수집 및 정제된 감지 데이터들, 3D 점군 데이터들, 2D 이미지들 및 거리 정보들을 복수 개의 어노테이션 장치(300)에 분배하여 전송할 수 있다. 이 경우, 학습 데이터 생성 장치(200)는 어노테이션 장치(300)의 작업자(즉, 라벨러)에 대하여 사전에 할당된 양에 대응하여, 감지 데이터들, 3D 점군 데이터들, 2D 이미지들 및 거리 정보들을 분배할 수 있다.Meanwhile, the learning
학습 데이터 생성 장치(200)는 각각의 어노테이션 장치(300)로부터 어노테이션 작업 결과물을 수신할 수 있다. 학습 데이터 생성 장치(200)는 수신된 어노테이션 작업 결과물을 패키징(packaging)하여 인공지능(AI) 학습용 데이터를 생성할 수 있다. 그리고, 학습 데이터 생성 장치(200)는 생성된 인공지능(AI) 학습용 데이터를 인공지능 학습 장치(400)에 전송할 수 있다. The training
이와 같은 특징을 가지는, 학습 데이터 생성 장치(200)는 학습 데이터 수집 장치(100), 어노테이션 장치(300) 및 인공지능 학습 장치(400)와 데이터를 송수신하고, 송수신된 데이터를 기초로 연산을 수행할 수 있는 장치라면 어떠한 장치라도 허용될 수 있다. 예를 들어, 학습 데이터 생성 장치(200)는 데스크탑(desktop), 워크스테이션(workstation) 또는 서버(server)와 같은 고정식 컴퓨팅 장치 중 어느 하나가 될 수 있으나, 이에 한정되는 것은 아니다.The training
다음 구성으로, 어노테이션 장치(300)는 라이다, 카메라, 레이더 또는 초음파로부터 수집된 데이터를 대상으로, 어노테이션 작업을 수행하는데 사용될 수 있는 장치이다. 즉, 어노테이션 장치(300)는 학습 데이터 생성 장치(200)에 의해 분배된 감지 데이터들, 3D 점군 데이터들, 2D 이미지들 및 거리 정보를 대상으로 어노테이션 작업을 수행하는데 사용될 수 있는 장치이다. With the following configuration, the
이와 같은, 어노테이션 장치(300)의 전부 또는 일부는 어노테이션 작업자가 클라우딩 서비스(clouding service)를 통해 어노테이션 작업을 수행하는 장치가 될 수도 있다.As such, all or a part of the
구체적으로, 어노테이션 장치(300)는 학습 데이터 생성 장치(200)로부터 수신된 감지 데이터들, 3D 점군 데이터들, 2D 이미지들 및 거리 정보들 중에서 어노테이션 작업 대상이 되는 하나의 감지 데이터, 3D 점군 데이터, 2D 이미지 또는 거리 정보를 디스플레이에 출력할 수 있다. Specifically, the
어노테이션 장치(300)는 입출력장치를 통해 사용자로부터 입력된 신호에 따라 툴(tool)을 선택할 수 있다. 여기서, 툴은 감지 데이터, 3D 점군 데이터, 2D 이미지 또는 거리 정보 속에 포함되어 있는 하나 이상의 객체(object)를 특정하는 바운딩 박스를 설정하기 위한 도구이다. The
어노테이션 장치(300)는 입출력장치를 통해 선택된 툴에 따른 좌표를 입력 받을 수 있다. 그리고, 어노테이션 장치(300)는 입력된 좌표를 기초로 바운딩 박스(bounding box)를 설정하여, 감지 데이터, 3D 점군 데이터, 2D 이미지 또는 거리 정보 속에 포함된 객체를 특정할 수 있다. The
여기서, 바운딩 박스는 감지 데이터, 3D 점군 데이터, 2D 이미지 또는 거리 정보 속에 포함된 객체들 중에서 인공지능(AI) 학습의 대상이 되는 객체를 특정하기 위한 영역이다. 이와 같은, 바운딩 박스는 사각형(rectangle) 또는 정육면체(cube)의 형상을 가질 수 있으며, 이에 한정되는 것은 아니다.Here, the bounding box is an area for specifying an object to be subjected to artificial intelligence (AI) learning among objects included in sense data, 3D point cloud data, 2D image, or distance information. As such, the bounding box may have a shape of a rectangle or a cube, but is not limited thereto.
예를 들어, 어노테이션 장치(300)는 입출력장치를 통해 두 개의 좌표를 입력 받고, 입력된 두 좌표를 기초로 감지 데이터, 3D 점군 데이터, 2D 이미지 또는 거리 정보 내에서 좌상단 꼭지점(vertex)의 좌표와 우하단 꼭지점의 좌표로 가지는 사각형을 기초로 바운딩 박스를 설정하여 객체를 특정할 수 있다. 이 경우, 두 개의 좌표는 사용자가 한 종류의 입력 신호를 두 번 입력(예들 들어, 마우스 클릭)하여 설정되거나, 사용자가 두 종류의 입력 신호를 한번씩 입력(예를 들어, 마우스 드래그)하여 설정될 수 있으나, 이에 한정되는 것은 아니다.For example, the
이와 다르게, 어노테이션 장치(300)는 학습 데이터 생성 장치(200)로부터 수신된 2D 이미지와, 해당 2D 이미지를 대상으로 학습 데이터 생성 장치(100)에 의해 자동으로 검출된 객체에 관한 정보를 디스플레이에 출력할 수 있다. 그리고, 어노테이션 장치(300)는 자동으로 검출된 객체에 관한 정보가 올바른지 여부를 검증한 결과를 사용자로부터 입력 받을 수 있다. 만약, 자동으로 검출된 객체에 관한 정보에 오류가 존재하는 경우, 어노테이션 장치(300)는 입출력장치를 통해 사용자로부터 입력된 신호에 따라, 2D 이미지 속에 포함된 객체를 재특정할 수 있다.Alternatively, the
어노테이션 장치(300)는 입출력장치를 통해 사용자로부터 입력된 신호에 따라, 어노테이션 작업의 대상이 되는 감지 데이터, 3D 점군 데이터, 2D 이미지, 거리 정보, 또는 설정된 객체에 대한 메타데이터(metadata)를 생성할 수 있다. 여기서, 메타데이터는 감지 데이터, 3D 점군 데이터, 2D 이미지, 거리 정보, 또는 객체를 설명하기 위한 데이터이다. 이와 같은, 메타데이터에는 특정된 객체의 카테고리, 객체가 화각에 의해 잘려진 비율, 객체가 다른 객체 또는 물체에 의해 가려진 비율, 객체의 트래킹 아이디, 이미지가 촬영된 시각, 이미지가 촬영된 날의 기상 조건 등이 포함될 수 있으며, 이에 한정되지 아니하고, 파일 크기, 이미지 크기, 저작권자, 해상도, 비트 값, 조리개 투과량, 노출 시간, ISO 감도, 초점 거리, 조리개 개방 수치, 화각, 화이트 밸런스, RGB 깊이, 클래스 명, 태그, 촬영 장소, 도로의 유형, 도로 표면 정보 또는 교통 체증 정보가 더 포함될 수도 있다.The
어노테이션 장치(300)는 특정된 객체와 생성된 메타데이터를 기초로, 어노테이션 작업 결과물을 생성할 수 있다. 이 경우, 어노테이션 작업 결과물을 JSON(Java Script Object Notation) 파일 형식을 가질 수 있으나, 이에 한정되는 것은 아니다. 어노테이션 장치(300)는 생성된 어노테이션 작업 결과물을 학습 데이터 생성 장치(200)에 전송할 수 있다. The
이와 같은 특징을 가지는, 어노테이션 장치(300)는 학습 데이터 생성 장치(200)와 데이터를 송수신하고, 송수신된 데이터를 기초로 연산을 수행할 수 있는 장치라면 어떠한 장치라도 허용될 수 있다. 예를 들어, 어노테이션 장치(100)는 데스크탑(desktop), 워크스테이션(workstation) 또는 서버(server)와 같은 고정식 컴퓨팅 장치, 또는 스마트폰(smart phone), 랩탑(laptop), 태블릿(tablet), 패블릿(phablet), 휴대용 멀티미디어 재생장치(Portable Multimedia Player, PMP), 개인용 휴대 단말기(Personal Digital Assistants, PDA) 또는 전자책 단말기(E-book reader)과 같은 이동식 컴퓨팅 장치 중 어느 하나가 될 수 있다.The
다음 구성으로, 인공지능 학습 장치(400)는 차량의 자율주행에 사용될 수 있는 인공지능(AI)을 기계 학습시키는데 사용될 수 있는 장치이다.With the following configuration, the artificial
구체적으로, 인공지능 학습 장치(400)는 차량의 자율주행에 사용될 수 있는 인공지능(AI)의 목적 달성을 위한 요구 사항을 학습 데이터 생성 장치(200)에 전송할 수 있다. 인공지능 학습 장치(400)는 학습 데이터 생성 장치(200)로부터 인공지능(AI) 학습용 데이터를 수신할 수 있다. 그리고, 인공지능 학습 장치(400)는 수신된 인공지능(AI) 학습용 데이터를 이용하여, 차량의 자율주행에 사용될 수 있는 인공지능(AI)을 기계 학습할 수 있다.Specifically, the artificial
이와 같은, 인공지능 학습 장치(400)는 학습 데이터 생성 장치(200)와 데이터를 송수신하고, 송수신된 데이터를 이용하여 연산을 수행할 수 있는 장치라면 어떠한 장치라도 허용될 수 있다. 예를 들어, 인공지능 학습 장치(400)는 데스크탑, 워크스테이션 또는 서버와 같은 고정식 컴퓨팅 장치 중 어느 하나가 될 수 있으나, 이에 한정되는 것은 아니다.As such, the artificial
지금까지 상술한 바와 같은, 복수 개의 학습 데이터 수집 장치(100)와 학습 데이터 생성 장치(200)는 이동통신망을 이용하여 데이터를 송수신할 수 있다. 예를 들어, 이동통신망에는 코드 분할 다중 접속(Code Division Multiple Access, CDMA), 와이드 밴드 코드 분할 다중 접속(Wideband CDMA, WCDMA), 고속 패킷 접속(High Speed Packet Access, HSPA), 롱텀 에볼루션(Long Term Evolution, LTE), 5세대 이동통신(5th generation mobile telecommunication)가 포함될 수 있으나, 이에 한정되는 것은 아니다. As described above, the plurality of learning
또한, 학습 데이터 생성 장치(200), 복수 개의 어노테이션 장치(300) 및 인공지능 학습 장치(400)는 장치들 사이를 직접 연결하는 보안 회선, 공용 유선 통신망 또는 이동통신망 중 하나 이상이 조합된 네트워크를 이용하여 데이터를 송수신할 수 있다. 예를 들어, 공용 유선 통신망에는 이더넷(ethernet), 디지털가입자선(x Digital Subscriber Line, xDSL), 광동축 혼합망(Hybrid Fiber Coax, HFC), 광가입자망(Fiber To The Home, FTTH)가 포함될 수 있으나, 이에 한정되는 것도 아니다. In addition, the learning
이하, 상술한 바와 같은 학습 데이터 수집 장치(100)의 제어 대상이자, 차량에 설치되어 기계 학습용 데이터를 획득, 촬영 또는 감지하는 센서들에 대하여 보다 구체적으로 설명하기로 한다.Hereinafter, sensors that are control objects of the learning
도 2는 본 발명의 일 실시예에 따른 센서들을 설명하기 위한 예시도이다.2 is an exemplary diagram for explaining sensors according to an embodiment of the present invention.
도 2에 도시된 바와 같이, 본 발명의 일 실시예에 따른 학습 데이터 수집 장치(100)는 차량(10)에 고정 설치된 레이더(20), 라이다(30), 카메라(40) 및 초음파 센서(50) 중 하나 이상을 제어하여, 인공지능(AI)을 기계 학습시키기 위한 기초 데이터를 수집할 수 있다.As shown in FIG. 2 , the learning
여기서, 차량(10)은 인공지능(AI)을 기계 학습시키기 위한 기초 데이터를 수집하기 위한 레이더(20), 라이다(30), 카메라(40) 및 초음파 센서(50)가 설치된 차량으로, 인공지능(AI)에 의해 자율주행을 수행하는 차량과는 서로 구별될 수 있다.Here, the
레이더(20)는 차량(10)에 고정 설치되어 차량(10)의 주행 방향을 향하여 전자기파(electromagnetic wave)를 발사하고, 차량(10)의 전방에 위치하는 객체(object)에 의해 반사되어 돌아온 전자기파를 감지하여, 차량(10)이 전방에 대한 영상에 해당하는 감지 데이터를 생성할 수 있다. The
다르게 말하면, 감지 데이터는 차량(10)에 고정 설치된 레이더(20)에 의해 차량의 주행 방향을 향하여 발사된 전자기파를 반사시킨 점들(points)에 대한 정보이다. 따라서, 감지 데이터에 포함된 점들의 좌표들은 차량(10)의 전방에 위치하는 객체의 위치 및 형상에 대응하는 값을 가질 수 있다. 이러한, 감지 데이터는 2차원 정보가 될 수 있으나, 이에 한정되지 않고 3차원 정보가 될 수도 있다.In other words, the sensed data is information about points at which electromagnetic waves emitted toward the driving direction of the vehicle by the
라이다(30)는 차량(10)에 고정 설치되어 차량(10)의 주위로 레이저 펄스(laser pulse)를 방사하고, 차량(10)의 주위에 위치하는 객체에 의해 반사되어 돌아온 빛을 감지하여, 차량(10)의 주위에 대한 3차원 영상에 해당하는 3D 점군 데이터를 생성할 수 있다.The
다르게 말하면, 3D 점군 데이터는 차량(10)에 고정 설치된 라이다(30)에 의해 차량의 주위로 방사된 레이저 펄스를 반사시킨 점들에 대한 3차원 정보이다. 따라서, 3D 점군 데이터에 포함된 점들의 좌표들은 차량(10)의 주위에 위치하는 객체의 위치 및 형성에 대응하는 값을 가질 수 있다. In other words, the 3D point cloud data is 3D information about points that reflect a laser pulse radiated around the vehicle by the
카메라(40)는 차량(10)에 고정 설치되어 차량(10)의 주위에 대한 2차원 이미지를 촬영할 수 있다. 이와 같은, 카메라(40)는 서로 다른 방향을 촬영할 수 있도록 복수 개가 지표면과 수평 또는 수평 방향으로 이격되게 설치될 수 있다. 예를 들어, 도 2는 서로 다른 6개의 방향을 촬영할 수 있는 6개의 카메라(40)가 고정 설치된 차량(10)의 예시를 도시하고 있으나, 차량(10)에 설치될 수 있는 카메라(40)가 다양한 개수로 구성될 수 있음은 본 발명이 속한 기술분야의 통상의 지식을 가진 자에게 자명할 것이다.The
다르게 말하면, 2D 이미지는 차량(10)에 고정 설치된 카메라(40)에 의해 촬영된 이미지이다. 따라서, 2D 이미지에는 카메라(40)가 향하는 방향에 위치하는 객체의 색상 정보가 포함될 수 있다. In other words, the 2D image is an image captured by the
초음파 센서(50)는 차량(50)에 고정 설치되어 차량(10)의 주위로 초음파(ultrasonic)를 발사하고, 차량(10)과 인접하게 위치하는 객체에 의해 반사되어 돌아온 음파를 감지하여, 차량(10)에 설치된 초음파 센서(50)와 객체 사이의 거리에 해당하는 거리 정보를 생성할 수 있다. 일반적으로, 초음파 센서(50)는 복수 개로 구성되어, 객체와 접촉하기 쉬운 차량(10)의 전방, 후방, 전측방 및 후측방에 고정 설치될 수 있다.The
다르게 말하면, 거리 정보는 차량(10)에 고정 설치된 초음파 센서(50)에 의해 감지된 객체로부터의 거리에 관한 정보이다. In other words, the distance information is information about a distance from an object sensed by the
도 3은 서로 다른 높이에 설치된 카메라들의 서로 다른 객체 인식율을 설명하기 위한 예시도이다.3 is an exemplary diagram for explaining different object recognition rates of cameras installed at different heights.
기계 학습된 인공지능(AI)을 이용하여 자율주행을 수행할 차량의 차고(vehicle height)는 다양할 수 있으며, 자율주행을 수행할 차량에 설치되는 카메라의 설치 높이 또한 다양할 수 있다. The vehicle height of a vehicle to perform autonomous driving using machine-learned artificial intelligence (AI) may vary, and the installation height of a camera installed in a vehicle to perform autonomous driving may also vary.
따라서, 일정한 하나의 높이에서 촬영된 2D 이미지만을 기초로 인공지능(AI)을 기계 학습시키게 되면, 기계 학습된 인공 지능(AI)을 이용하여 자율주행을 수행할 차량들에 카메라가 서로 다른 높이에 설치될 경우, 각각의 차량에 설치된 카메라의 높이에 따라 객체의 검출율이 서로 다르게 되는 한계가 있다.Therefore, when artificial intelligence (AI) is machine-learned based on only 2D images taken at a certain height, the cameras are placed at different heights in vehicles that will perform autonomous driving using the machine-learned artificial intelligence (AI). When installed, there is a limit that the detection rate of an object is different depending on the height of the camera installed in each vehicle.
이러한 한계를 극복하고자, 도 3에 도시된 바와 같이, 인공지능(AI)을 기계 학습시키기 위한 기초 데이터를 수집하는 차량(10)에 복수 개의 카메라(40_high, 40_low)를 지표면과 수직 방향으로 이격되게 설치하고, 지표면과 수직 방향으로 이격되게 설치된 복수 개의 카메라(40_high, 40_low)가 각각 2D 이미지(45_high, 45_low)를 촬영하도록 구성할 수 있다.In order to overcome this limitation, as shown in FIG. 3 , a plurality of cameras 40_high and 40_low are vertically spaced apart from the ground surface in a
그러나, 지표면과 수평한 2차원 관점에서 동일한 방향을 중복하여 촬영하고 있는 복수 개의 카메라(40_high, 40_low)가 촬영한 모든 2D 이미지들(45_high, 45_low)을 모두 중복적으로 영상 처리하고 외부로 전송하는 것은 비효율적이다. However, all 2D images (45_high, 45_low) taken by a plurality of cameras (40_high, 40_low) that are photographed in the same direction in overlapping two-dimensional perspectives horizontal to the ground surface are duplicated for image processing and transmitted to the outside. is inefficient
본 발명의 일 실시예에 따른 학습 데이터 수집 장치(100)는 서로 다른 높이에 설치된 복수 개의 카메라(40_high, 40_low) 사이의 우선순위를 정의하고 조절함으로써, 복수 개의 카메라(40_high, 40_low)에 의해 촬영된 모든 2D 이미지들(45_high, 45_low)을 영상 처리하기 위한 연산 부하 및 네트워크 부하를 감소시킬 수 있다. The learning
이하, 상술한 바와 같은 특징들을 가지는 학습 데이터 수집 장치(100)의 구성에 대하여 보다 구체적으로 설명하기로 한다.Hereinafter, the configuration of the learning
도 4는 본 발명의 일 실시예에 따른 학습 데이터 수집 장치의 논리적 구성도이다.4 is a logical configuration diagram of an apparatus for collecting learning data according to an embodiment of the present invention.
도 4에 도시된 바와 같이, 본 발명의 일 실시예에 따른 학습 데이터 수집 장치(100)는 통신부(105), 입출력부(110), 다중 센서 제어부(115), 객체 식별부(120), 비식별화 처리부(125), 데이터 제공부(130) 및 저장부(135)를 포함하여 구성될 수 있다.As shown in FIG. 4 , the learning
이와 같은, 학습 데이터 수집 장치(100)의 구성 요소들은 기능적으로 구분되는 요소들을 나타낸 것에 불과하므로, 둘 이상의 구성 요소가 실제 물리적 환경에서는 서로 통합되어 구현되거나, 하나의 구성 요소가 실제 물리적 환경에서는 서로 분리되어 구현될 수 있을 것이다.As such, the components of the learning
각각의 구성 요소에 대하여 설명하면, 통신부(105)는 차량(10)에 설치된 다중 센서들과 학습 데이터 생성 장치(200)와 데이터를 송수신할 수 있다.Each of the components will be described. The
구체적으로, 통신부(105)는 차량(10)에 고정 설치된 레이더(20), 라이다(30), 카메라(40) 및 초음파 센서(50)로부터 감지 데이터, 3D 점군 데이터, 2D 이미지 및 거리 정보를 수신할 수 있다.Specifically, the
통신부(105)는 사전에 설정된 주기마다 학습 데이터 생성 장치(200)와의 이동통신의 통신 품질을 측정할 수 있다. 예를 들어, 통신부(105)는 사전에 설정된 주기마다 ICMP(Internet Control Message Protocol)의 ping 패킷(echo request)를 학습 데이터 생성 장치(200)에 전송하고, 학습 데이터 생성 장치(200)로부터 응답 패킷(echo reply)을 수신할 수 있다.The
통신부(105)는 데이터 제공부(130)의 제어에 따라, 감지 데이터, 3D 점군 데이터, 2D 이미지 및 거리 정보를 학습 데이터 생성 장치(200)에 전송할 수 있다. 이 경우, 2D 이미지에는 객체 식별부(120)에 의해 2D 이미지로부터 식별된 객체가 차지하고 있는 영역에 관한 정보 및 비식별 처리된 개인정보에 관한 정보가 포함될 수 있다.The
그리고, 통신부(105)는 객체 식별부(120) 및 비식별화 처리부(125)의 제어에 따라 객체 검출 규칙의 업데이트 요청 메시지 또는 비식별 처리 규칙의 업데이트 요청 메시지를 학습 데이터 생성 장치(200)에 전송할 수 있다.Then, the
다음 구성으로, 입출력부(110)는 사용자 인터페이스(UI)를 통해 사용자로부터 신호를 입력 받거나 연산 결과를 외부로 출력할 수 있다.With the following configuration, the input/output unit 110 may receive a signal from a user through a user interface (UI) or output an operation result to the outside.
구체적으로, 입출력부(110)는 학습 데이터 생성 장치(200)와의 통신 품질을 측정하기 위한 주기를 사용자로부터 입력 받을 수 있다. 입출력부(110)는 3D 점군 데이터, 2D 이미지, 감지 데이터 및 거리 정보를 저장하기 위한 버퍼(buffer)의 기본 크기 및 버퍼에 우선적으로 저장할 데이터의 우선순위를 사용자로부터 입력 받을 수 있다.Specifically, the input/output unit 110 may receive an input from the user of a period for measuring the communication quality with the learning
입출력부(110)는 감지 데이터 또는 3D 점군 데이터에 포함된 점들 중에서 객체로 식별될 수 있는 점들의 군집(crowd)을 결정하기 위한 크기 범위인 임계 범위를 사용자로부터 입력 받을 수 있다. 이 경우, 임계 범위는 인공지능(AI)의 기계 학습의 대상이 되는 객체의 유형에 따라 결정된 값이 입력될 수 있다. 입출력부(110)는 2D 이미지에 포함된 객체에 대한 객체 영역을 설정하기 위한 정점들(vertices)의 개수를 사용자로부터 입력 받을 수 있다.The input/output unit 110 may receive, from the user, a threshold range, which is a size range for determining a crowd of points that can be identified as objects among points included in the sensed data or 3D point cloud data. In this case, as the threshold range, a value determined according to the type of object to be subjected to machine learning of artificial intelligence (AI) may be input. The input/output unit 110 may receive, from a user, the number of vertices for setting an object region for an object included in the 2D image.
입출력부(110)는 2D 이미지에 포함된 객체를 비식별 처리하기 위한 영역과 객체의 엣지 사이의 최소 이격 거리를 사용자로부터 입력 받을 수 있다. 입출력부(110)는 비식별 처리된 2D 이미지를 디스플레이를 통해 출력할 수 있다.The input/output unit 110 may receive, from a user, a minimum separation distance between an edge of the object and an area for de-identifying an object included in the 2D image. The input/output unit 110 may output the de-identified 2D image through the display.
그리고, 입출력부(110)는 차량(10)에 서로 다른 높이에 설치된 복수 개의 카메라들에 대한 우선순위를 사용자로부터 입력 받을 수 있다. 입출력부(110)는 각 카메라에 의해 촬영된 2D 이미지마다 객체 검출을 시도하기 위한 횟수를 사용자로부터 입력 받을 수 있다.In addition, the input/output unit 110 may receive an input from a user of priorities for a plurality of cameras installed at different heights in the
다음 구성으로, 다중 센서 제어부(115)는 차량(10)에 고정 설치된 레이더(20), 라이다(30), 카메라(40) 및 초음파 센서(50) 중 하나 이상을 제어하고, 레이더(20), 라이다(30), 카메라(40) 및 초음파 센서(50) 중 하나 이상으로부터 실시간으로 데이터를 수집할 수 있다. With the following configuration, the
구체적으로, 다중 센서 제어부(115)는 통신부(105)를 통해 감지 데이터, 3D 점군 데이터, 2D 이미지 및 거리 정보 중에서 하나 이상을 수집할 수 있다. 여기서, 감지 데이터는 차량(10)에 고정 설치된 레이더(20)에 의해 차량의 주행 방향을 향하여 발사된 전자기파를 반사시킨 점들(points)에 대한 정보이다. 3D 점군 데이터는 차량(10)에 고정 설치된 라이다(30)에 의해 차량의 주위로 방사된 레이저 펄스를 반사시킨 점들에 대한 3차원 정보이다. 2D 이미지는 차량(10)에 고정 설치된 카메라(40)에 의해 촬영된 이미지이다. 그리고, 거리 정보는 차량(10)에 고정 설치된 초음파 센서(50)에 의해 감지된 객체로부터의 거리에 관한 정보이다. Specifically, the
다중 센서 제어부(115)는 언제나 감지 데이터, 3D 점군 데이터, 2D 이미지 및 거리 정보를 모두 수집할 필요는 없으며, 다중 센서 제어부(115)는 객체 식별부(120), 비식별화 처리부(125) 또는 데이터 제어부(130)의 요청에 대응하여, 감지 데이터, 3D 점군 데이터, 2D 이미지 및 거리 정보 중에서 하나 이상을 수집할 수 있다.The
예를 들어, 다중 센서 제어부(115)는 라이다(30) 및 카메라(40)에 의해 동시에 획득 및 촬영된 3D 점군 데이터 및 2D 이미지만을 수집할 수 있다. 또는, 다중 센서 제어부(115)는 차량(10)에 서로 다른 높이에 설치된 복수 개의 카메라들(40)에 의해 동시에 촬영된 2D 이미지들을 수집할 수도 있다.For example, the
그리고, 다중 센서 제어부(115)는 레이더(20), 라이다(30), 카메라(40) 및 초음파 센서(50) 중 하나 이상으로부터 실시간으로 수집된 데이터를 데이터 제공부(130)의 버퍼에 저장할 수 있다.In addition, the
특징적으로, 본 발명의 일 실시예에 따른 다중 센서 제어부(115)는 차량(10)에 서로 다른 높이에 설치된 복수 개의 카메라들에 의해 동시에 촬영된 2D 이미지들을 수집하는 경우, 서로 다른 높이에 설치된 복수 개의 카메라들을 우선순위에 따라 제어할 수 있다.Characteristically, the
보다 상세하게, 다중 센서 제어부(115)는 서로 다른 높이에 설치된 복수 개의 카메라들 사이의 우선순위(priority)를 기초로, 우선순위가 가장 높은 카메라에 의해 촬영된 2D 이미지에 포함된 객체가 식별되도록, 우선순위가 가장 높은 카메라에 의해 촬영된 2D 이미지를 객체 식별부(120)에 제공할 수 있다.In more detail, the
만약, 우선순위가 가장 높은 카메라에 의해 촬영된 2D 이미지로부터 객체의 식별이 실패한 경우, 다중 센서 제어부(115)는 차순위의 우선순위를 가지는 카메라에 의해 촬영된 2D 이미지로부터 객체의 식별이 시도되도록, 차순위의 우선순위를 가지는 카메라에 의해 촬영된 2D 이미지를 객체 식별부(120)에 제공할 수 있다.If the identification of the object from the 2D image taken by the camera having the highest priority fails, the
또한, 서로 다른 높이에 설치된 복수 개의 카메라들에 의해 동시에 촬영된 모든 2D 이미지들로부터 객체의 식별이 실패한 경우, 다중 센서 제어부(115)는 해당 2D 이미지들이 촬영된 시점과 동시에 라이다에 의해 획득된 3D 점군 데이터를 저장부(135)로부터 제거할 수 있다.In addition, when the identification of an object from all 2D images simultaneously photographed by a plurality of cameras installed at different heights fails, the
상술한 바와 같이 2D 이미지들을 처리하기 위한, 서로 다른 높이에 설치된 복수 개의 카메라들 사이의 우선순위는 기본적으로 인공지능(AI)을 이용하여 자율주행을 수행할 차량의 차고를 기초로 학습 데이터 생성 장치(200)에 의해 임시적으로 설정될 수 있다.As described above, the priority among a plurality of cameras installed at different heights for
그러나, 우선순위가 가장 높은 카메라에 의해 촬영된 2D 이미지들을 대상으로 수행된 객체의 식별이 사전에 설정된 횟수만큼 연속적으로 실패한 경우, 다중 센서 제어부(115)는 서로 다른 높이에 설치된 복수 개의 카메라들 사이의 우선순위를 조정할 수 있다.However, when the identification of the object performed on the 2D images taken by the camera having the highest priority fails continuously for a preset number of times, the
보다 상세하게, 다중 센서 제어부(115)는 서로 다른 높이에 설치된 복수 개의 카메라들에 의해 촬영된 2D 이미지들을 대상으로, 객체 식별부(120)를 통해 각각의 2D 이미지에 포함된 객체를 식별할 수 있다. 그리고, 다중 센서 제어부(115)는 각각의 2D 이미지로부터 식별된 객체의 완전성(integrity)을 기준으로, 서로 다른 높이에 설치된 복수 개의 카메라들 사이의 우선순위를 조정할 수 있다.In more detail, the
이 경우, 객체의 완전성은 객체의 전체 형상 중에서 카메라의 화각 또는 다른 객체에 의해 잘리지 않고 2D 이미지에 포함된 비율을 의미한다.In this case, the object's completeness means a ratio included in the 2D image without being cut by the camera's angle of view or other objects among the overall shape of the object.
이를 위하여, 다중 센서 제어부(115)는 2D 이미지로부터 식별된 객체와 3D 점군 데이터를 대비하여 객체의 완전성을 평가하거나, 또는 2D 이미지 자체에서 필수점을 몇 개나 포함하고 있는지 여부를 기초로 객체의 완전성을 평가할 수 있다.To this end, the
일 예로, 다중 센서 제어부(115)는 차량(10)에 설치된 라이다(30)에 의해 획득된 3D 점군 데이터를 더 수집하고, 객체 식별부(120)를 통해 3D 점군 데이터에 포함된 점들의 3차원 좌표를 기초로 3D 점군 데이터에 포함된 객체를 식별할 수 있다. 그리고, 객체 식별부(120)는 3D 점군 데이터로부터 식별된 객체와 각각의 2D 이미지로부터 식별된 객체를 서로 대비한 결과를 기초로, 객체의 완전성을 평가할 수 있다.As an example, the
다른 예로, 다중 센서 제어부(115)는 각각의 2D 이미지로부터 식별된 객체를 구성하는 점들 중에서, 객체 식별부(120)에 의해 식별된 객체의 유형에 따라 사전에 설정된 복수 개의 필수점(essential point)들에 대응하는 점들을 몇 개나 포함하고 있는지 여부에 따라, 객체의 완전성을 평가할 수 있다. 이 경우, 필수점은 객체의 유형을 다른 유형과 구별하기 위하여 요구되는 점들이 될 수 있다.As another example, the
다음 구성으로, 객체 식별부(120)는 다중 센서 제어부(115)에 의해 수집된 감지 데이터, 3D 점군 데이터, 2D 이미지 및 거리 정보로부터 객체를 식별할 수 있다. With the following configuration, the
기본적으로, 본 발명의 일 실시예에 따른 객체 식별부(120)는 3D 점군 데이터에 포함된 점들(points)의 3차원 좌표를 기초로, 2D 이미지 내에서 객체가 존재할 것으로 예측되는 객체 영역을 설정할 수 있다. 이 경우, 객체 영역은 정점들(vertices)과 정점들을 서로 연결한 간선들(edges)로 구성된 2차원 영역일 수 있다.Basically, the
객체 영역을 구성하는 정점들은 기본적으로 학습 데이터 수집 장치(100)의 연산 능력(computing power)에 대응하여 학습 데이터 생성 장치(200)에 의해 사전에 설정된 개수로 구성될 수 있다.The number of vertices constituting the object region may be basically set in advance by the learning
그러나, 객체 식별부(120)는 카메라(40)에 의해 촬영된 2D 이미지의 중요도가 변화되는 경우, 객체 영역을 구성하는 정점들의 개수를 조절할 수 있다.However, when the importance of the 2D image captured by the
일 예로, 객체 식별부(120)는 차량(10)에 설치된 카메라(40)가 2D 이미지를 촬영하는 주기(period)의 크기에 비례하여, 객체 영역을 구성하는 정점들의 개수를 증가시킬 수 있다. For example, the
다른 예로, 객체 식별부(120)는 카메라(40)가 설치된 차량(10)의 이동 속도에 비례하여, 객체 영역을 구성하는 정점들의 개수를 증가시킬 수도 있다.As another example, the
한편, 3D 점군 데이터로부터 2D 이미지 내의 객체를 식별하기 위하여, 객체 식별부(120)는 3D 점군 데이터에 포함된 점들 중에서 사전에 설정된 임계 범위 내에서 군집을 형성하고 있는 점들을 식별할 수 있다. Meanwhile, in order to identify the object in the 2D image from the 3D point cloud data, the
객체 식별부(120)는 식별된 군집의 X축 상의 폭(width), Y축 상의 높이(height) 및 Z축 상의 깊이(depth)를 기초로, 객체의 유형을 식별할 수 있다. 보다 상세하게, 객체 식별부(120)는 데이터베이스 내에 객체의 유형별로 사전에 구비된 폭, 높이 및 깊이의 비율 관계(rate relation)를 기초로, 식별된 군집의 X축 상의 폭, Y축 상의 높이 및 Z축 상의 깊이에 대응하는 객체의 유형을 식별할 수 있다. The
객체 식별부(120)는 식별된 객체의 유형에 따라 데이터베이스 내에 사전에 구비된 3D 모델을 해당 2D 이미지를 촬영한 카메라(40)의 광축(optical axis) 방향에 따라 3차원 회전시킬 수 있다. 그리고, 객체 식별부(120)는 3차원 회전된 3D 모델을 카메라(40)의 광축 방향에서 바라본 2차원 형상을 객체 영역으로 식별할 수 있다. The
그리고, 객체 식별부(120)는 객체 영역으로 식별된 2차원 형상을 2D 이미지에 반영하여 정점들과 간선들을 구성함으로써, 2D 이미지 내에서 객체가 존재할 것으로 예측되는 객체 영역을 설정할 수 있다.In addition, the
한편, 객체 식별부(120)는 식별된 객체 영역에 대하여 엣지를 추출(edge detection)하고, 데이터베이스로부터 객체의 유형 및 추출된 엣지의 패턴(edge pattern)에 대응하는 객체 검출 규칙이 존재하는 여부를 기초로 식별된 객체 영역을 검증할 수 있다. 이 경우, 객체 검출 규칙은 학습 데이터 생성 장치(200)에 의해 배포되며, 2D 이미지 내에서 식별된 객체를 검증할 수 있도록 객체의 유형별로 분류된 엣지의 패턴들을 열거한 규칙이다.On the other hand, the
객체 식별부(120)는 데이터베이스 내에 객체 검출 규칙이 존재하지 않는 경우, 해당 2D 이미지, 3D 점군 데이터로부터 식별된 객체의 유형 및 2D 이미지로부터 추출된 엣지의 포함을 포함시켜, 객체 검출 규칙에 대한 업데이트 요청 메시지를 생성할 수 있다. 객체 식별부(120)는 업데이트 요청 메시지가 생성되면, 생성된 업데이트 요청 메시지를 통신부(105)를 통해 학습 데이터 생성 장치(200)에 전송할 수 있다.When the object detection rule does not exist in the database, the
또한, 객체 식별부(120)는 2D 이미지 내에서 어떠한 객체도 식별되지 않은 경우, 객체가 식별되지 않은 2D 이미지가 촬영된 시점과 동시에 획득된 3D 점군 데이터를 저장부(135)로부터 제거할 수 있다.In addition, when no object is identified in the 2D image, the
다음 구성으로, 비식별화 처리부(125)는 객체 식별부(120)에 의해 식별된 객체의 유형에 대응하여, 2D 이미지의 일부를 비식별(de-identify) 처리할 수 있다.With the following configuration, the
구체적으로, 비식별화 처리부(125)는 객체 식별부(120)가 3D 모델을 이용하여 객체 영역을 설정하면, 3D 모델에 사전에 부여된 비식별 처리 영역에 대응하는 영역에 대하여 비식별 처리를 수행할 수 있다.Specifically, when the
이를 위하여, 비식별화 처리부(125)는 2D 이미지의 엣지를 추출하고, 데이터베이스로부터 객체 식별부(120)에 의해 식별된 객체의 유형 및 2D 이미지로부터 추출된 엣지의 패턴에 대응하는 비식별 규칙을 조회할 수 있다. 데이터베이스로부터 비식별 처리 규칙이 조회되는 경우, 비식별화 처리부(125)는 조회된 비식별 처리 규칙에 따라, 2D 이미지의 일부를 비식별 처리할 수 있다. 이 경우, 비식별 처리 규칙은 학습 데이터 생성 장치(200)에 의해 배포되며, 2D 이미지 내에서 비식별 처리할 영역을 결정할 수 있도록, 객체 내에 존재하는 비식별 영역에 대한 엣지의 패턴을 열거한 규칙이다.To this end, the
비식별 처리부(125)는 데이터베이스로부터 비식별 처리 규칙이 조회되지 않은 경우, 해당 2D 이미지, 3D 점군 데이터로부터 식별된 객체의 유형 및 2D 이미지로부터 추출된 엣지의 포함을 포함시켜, 비식별 처리 규칙에 대한 업데이트 요청 메시지를 생성할 수 있다. 비식별 처리부(125)는 업데이트 요청 메시지가 생성되면, 생성된 업데이트 요청 메시지를 통신부(105)를 통해 학습 데이터 생성 장치(200)에 전송할 수 있다.The
한편, 비식별 처리부(125)는 비식별 처리를 수행함에 있어, 비식별 처리를 수행할 영역의 경계선과 2D 이미지로부터 추출된 엣지에 의한 폐쇄 영역(enclosure)의 경계선(boundary line)이 사전에 설정된 최소 이격 거리 내로 인접한 경우, 비식별 처리를 수행할 영역의 경계선과 폐쇄 영역의 경계선이 최소 이격 거리 이상으로 이격되도록, 비식별 처리를 수행할 영역의 크기를 감소시킬 수 있다. 이 경우, 최소 이격 거리는 두 경계선 사이에 위치하는 픽셀의 최소 개수가 될 수 있다.On the other hand, when the
이와 같이, 비식별 처리부(125)는 비식별 처리를 수행할 영역의 경계선과 2D 이미지의 엣지가 서로 겹치지 않고, 최소 이격 거리 이상으로 이격되게 함으로써, 개인정보의 비식별 처리가 어노테이션 작업에 미치는 영향을 최소화할 수 있다.In this way, the
한편, 상술한 바와 같은 비식별 처리부(125)는 2D 이미지의 일부를 블러링 처리하여 비식별 처리를 수행할 수 있다. 이 경우, 비식별 처리의 대상이 되는 2D 이미지의 선명도(visibility)는 차량(10)의 이동속도에 따라 변화될 수 있으므로, 비식별 처리부(125)는 비식별 처리를 위한 블러링의 강도를 카메라(40)가 설치된 차량(10)의 이동속도에 반비례하게 설정할 수도 있다.Meanwhile, the
그리고, 비식별 처리부(125)는 블러링 처리를 수행하기 이전에, 비식별 처리를 수행할 영역을 크롭(crop)한 후, 크롭된 영상을 포함시켜 복원 데이터를 생성할 수도 있다.In addition, the
다음 구성으로, 데이터 제공부(130)는 다중 센서 제어부(115)에 의해 수집된 감지 데이터, 3D 점군 데이터, 비식별 처리부(125)에 의해 비식별 처리된 2D 이미지, 거리 정보, 및 객체 식별부(120)에 의해 설정된 객체 영역에 관한 정보를 학습 데이터 생성 장치(200)에 전송할 수 있다.With the following configuration, the data providing unit 130 includes the sensed data collected by the
특징적으로, 본 발명의 일 실시예에 따른 데이터 제공부(130)는 사전에 설정된 주기마다 학습 데이터 생성 장치(200)와의 이동통신의 통신 품질을 측정하고, 측정된 통신 품질에 대응하여 감지 데이터, 3D 점군 데이터, 2D 이미지 및 거리 정보를 저장할 버퍼(buffer)의 크기를 조정하고, 버퍼(buffer)에 누적 저장된 데이터가 꽉 차면 버퍼에 저장된 감지 데이터, 3D 점군 데이터, 2D 이미지 및 거리 정보를 학습 데이터 생성 장치(200)에 전송할 수 있다. 즉, 버퍼는 레이더(20), 라이다(30), 카메라(40) 및 초음파 센서(50)로부터 수집된 데이터를 저장하기 위한 임시 저장 공간이다.Characteristically, the data providing unit 130 according to an embodiment of the present invention measures the communication quality of mobile communication with the learning
기본적으로, 데이터 제공부(130)는 사전에 설정된 주기마다 학습 데이터 생성 장치(200)와의 이동통신의 통신 품질을 측정하고, 측정된 통신 품질에 대응하여 버퍼의 크기를 조정할 수 있다.Basically, the data providing unit 130 may measure the communication quality of mobile communication with the learning
구체적으로, 데이터 제공부(130)는 통신부(105)를 통해, 설정된 주기마다 ICMP의 ping 패킷을 학습 데이터 생성 장치(200)에 전송하고, 학습 데이터 생성 장치로부터 수신된 응답 패킷에 포함된 RTT(Round Trip Time)와 TTL(Time To Live)을 기초로 버퍼의 크기를 결정할 수 있다. 이 경우, 데이터 제공부(130)는 레이더(20), 라이다(30), 카메라(40) 및 초음파 센서(50)가 설치된 차량(10)의 이동 속도에 반비례하여, ICMP의 ping 패킷을 전송할 주기를 조절할 수 있다. Specifically, the data providing unit 130 transmits an ICMP ping packet to the learning
한편, 응답 패킷에 포함된 TTL을 기초로 모든 패킷이 손실되는 것으로 판단되는 경우, 데이터 제공부(130)는 학습 데이터 생성 장치(200)와 직접 이동통신을 수행하지 아니하고, 다른 학습 데이터 수집 장치(100)를 경유하여 학습 데이터 생성 장치(200)와 이동통신을 수행하도록 제어할 수도 있다.On the other hand, when it is determined that all packets are lost based on the TTL included in the response packet, the data providing unit 130 does not directly perform mobile communication with the learning
만약, 데이터 제공부(130)에 의해 결정된 버퍼의 크기가 사전에 설정된 기본 전송 크기보다 작은 경우, 데이터 제공부(130)는 레이더(20), 라이다(30), 카메라(40) 및 초음파 센서(50) 중 하나 이상으로부터 수집된 데이터 중 일부를 제거(discard)할 수 있다. 이 경우, 기본 전송 크기는 사전에 설정된 기본 수집 시간동안 레이더(20), 라이다(30), 카메라(40) 및 초음파 센서(50)에 의해 동시에 획득, 촬영 및 감지된 데이터를 모두 합한 데이터의 크기가 될 수 있다.If the size of the buffer determined by the data providing unit 130 is smaller than a preset basic transmission size, the data providing unit 130 may include the
우선, 데이터 제공부(130)는 사전에 설정된 우선순위에 따라, 레이더(20)에 의해 획득된 감지 데이터, 라이다(30)에 의해 획득된 3D 점군 데이터, 카메라(40)에 의해 촬영된 2D 이미지 및 초음파 센서(50)에 의해 감지된 거리 정보를 순서대로 제거할 수 있다.First, the data providing unit 130 according to a preset priority, the detection data acquired by the
이 경우, 데이터 제공부(130)는 레이더(20)에 의해 획득된 감지 데이터를 기초로 차량(10)이 객체로부터 이격된 거리를 추정하고, 추정된 거리를 기준으로 레이더(20)에 의해 획득된 감지 데이터, 라이다(30)에 의해 획득된 3D 점군 데이터, 카메라(40)에 의해 촬영된 2D 이미지 및 초음파 센서(50)에 의해 감지된 거리 정보 사이의 우선순위를 조정할 수 있다. In this case, the data providing unit 130 estimates the distance at which the
또한, 데이터 제공부(130)는 우선순위에 따라 카메라(40)에 의해 촬영된 2D 이미지들을 제거해야 하는 경우, 기본 수집 시간동안 카메라(40)에 의해 촬영된 복수 개의 2D 이미지들 중에서 객체가 포함되지 않은 2D 이미지를 우선적으로 제거할 수 있다. In addition, when the data providing unit 130 needs to remove the 2D images photographed by the
이 경우, 2D 이미지로부터 객체를 정확히 특정할 필요 없이 2D 이미지 내에 객체가 포함되어 있는지 여부만을 판단하면 족하므로, 객체 식별부(120)를 통해 정확한 객체를 식별하기 아니하고, 데이터 제공부(130)가 3D 점군 데이터에 포함된 점들 중에서 군집을 형성하고 있는 점들의 경계와 2D 이미지의 엣지를 단순 매칭하여, 2D 이미지 내에 객체가 포함되어 있는지 여부만을 판단할 수도 있다.In this case, since it is sufficient to determine whether an object is included in the 2D image without accurately specifying the object from the 2D image, the data providing unit 130 does not identify the correct object through the
다음 구성으로, 저장부(135)는 학습 데이터 수집 장치(100)의 동작에 필요한 데이터를 저장할 수 있다.With the following configuration, the storage unit 135 may store data necessary for the operation of the learning
구체적으로, 저장부(135)는 3D 점군 데이터, 2D 이미지, 감지 데이터 및 거리 정보를 저장하기 위한 버퍼(buffer)를 포함하여 구성될 수 있다. 그리고, 저장부(135)는 영상 처리 및 데이터 전송에 필요한 규칙 및 기초 데이터를 저장하기 위한 데이터베이스(database)를 포함하여 구성될 수 있다.Specifically, the storage unit 135 may include a buffer for storing 3D point cloud data, 2D image, sensing data, and distance information. In addition, the storage unit 135 may be configured to include a database for storing rules and basic data required for image processing and data transmission.
저장부(135)를 구성하는 데이터베이스에는 객체 검출 규칙, 비식별 처리 규칙 및 객체의 유형별 3D 모델이 저장될 수 있다. 여기서, 객체 검출 규칙은 2D 이미지 내에서 식별된 객체를 검증할 수 있도록 객체의 유형별로 분류된 엣지의 패턴들을 열거한 규칙이 될 수 있다. 비식별 처리 규칙은 2D 이미지 내에서 비식별 처리할 영역을 결정할 수 있도록 객체 내에 존재하는 비식별 영역에 대한 엣지의 패턴들을 열거한 규칙이 될 수 있다. 그리고, 3D 모델은 객체의 유형별로 분류된 객체의 3차원 형상 데이터이다.The database constituting the storage unit 135 may store object detection rules, non-identification processing rules, and 3D models for each type of object. Here, the object detection rule may be a rule enumerating patterns of edges classified by type of object to verify the object identified in the 2D image. The de-identification processing rule may be a rule enumerating patterns of edges for the de-identification area existing in the object so that the area to be de-identified in the 2D image can be determined. And, the 3D model is three-dimensional shape data of an object classified by type of object.
이하, 상술한 바와 같은 학습 데이터 수집 장치(100)의 논리적 구성요소를 구현하기 위한 하드웨어에 대하여 보다 구체적으로 설명한다.Hereinafter, hardware for implementing the logical components of the learning
도 5는 본 발명의 일 실시예에 따른 학습 데이터 수집 장치의 하드웨어 구성도이다.5 is a hardware configuration diagram of an apparatus for collecting learning data according to an embodiment of the present invention.
도 5에 도시된 바와 같이, 학습 데이터 수집 장치(100)는 프로세서(Processor, 150), 메모리(Memory, 155), 송수신기(Transceiver, 160), 입출력장치(Input/output device, 165), 데이터 버스(Bus, 170) 및 스토리지(Storage, 175)를 포함하여 구성될 수 있다. 5, the learning
프로세서(150)는 메모리(155)에 상주된 본 발명의 실시예들에 따른 방법이 구현된 소프트웨어(180a)에 따른 명령어를 기초로, 학습 데이터 수집 장치(100)의 동작 및 기능을 구현할 수 있다. 메모리(155)에는 본 발명의 실시예들에 따른 방법이 구현된 소프트웨어(180a)가 상주(loading)될 수 있다. 송수신기(160)는 레이더(20), 라이다(30), 카메라(40), 초음파 센서(50) 및 학습 데이터 생성 장치(200)와 데이터를 송수신할 수 있다. 입출력장치(165)는 학습 데이터 수집 장치(100)의 동작에 필요한 데이터를 입력 받고, 수집된 감지 데이터, 3D 점군 데이터, 2D 이미지 및 거리 정보를 출력할 수 있다. 데이터 버스(170)는 프로세서(150), 메모리(155), 송수신기(160), 입출력장치(165) 및 스토리지(175)와 연결되어, 각각의 구성 요소 사이가 서로 데이터를 전달하기 위한 이동 통로의 역할을 수행할 수 있다.The
스토리지(175)는 본 발명의 실시예들에 따른 방법이 구현된 소프트웨어(180a)의 실행을 위해 필요한 애플리케이션 프로그래밍 인터페이스(Application Programming Interface, API), 라이브러리(library) 파일, 리소스(resource) 파일 등을 저장할 수 있다. 스토리지(175)는 본 발명의 실시예들에 따른 방법이 구현된 소프트웨어(180b) 및 데이터베이스(185)를 저장할 수 있다. 데이터베이스(185)에는 객체 검출 규칙, 비식별 처리 규칙 및 객체의 유형별 3D 모델이 저장될 수 있다. The
본 발명의 일 실시예에 따르면, 메모리(155)에 상주되거나 또는 스토리지(175)에 저장된 센서들의 제어 방법을 구현하기 위한 소프트웨어(180a, 180b)는 프로세서(150)가 차량(10)에 서로 다른 높이에 설치된 복수 개의 카메라(40)들에 의해 동시에 촬영된 2D 이미지들을 수집하는 단계. 프로세서(150)가 상기 복수 개의 카메라(40)들 사이의 우선순위를 기초로, 상기 우선순위가 가장 높은 카메라에 의해 촬영된 2D 이미지에 포함된 객체를 식별하는 단계, 및 프로세서(150)가 상기 우선순위가 가장 높은 카메라(40)에 의해 촬영된 2D 이미지 및 상기 식별된 객체에 관한 정보를 학습 데이터 생성 장치(200)에 전송하는 단계를 실행시키기 위하여 기록매체에 기록된 컴퓨터 프로그램이 될 수 있다.According to an embodiment of the present invention, the
본 발명의 다른 실시예에 따르면, 메모리(155)에 상주되거나 또는 스토리지(175)에 저장된 객체의 선제 검출 방법을 구현하기 위한 소프트웨어(180a, 180b)는 프로세서(150)가 차량(10)에 설치된 라이다(20) 및 카메라(30)에 의해 동시에 획득 및 촬영된 3D 점군 데이터 및 2D 이미지를 수집하는 단계, 프로세서(150)가 상기 3D 점군 데이터에 포함된 점들의 3차원 좌표를 기초로, 상기 2D 이미지 내에서 객체가 존재할 것으로 예측되는 객체 영역을 식별하는 단계, 및 프로세서(150)가 상기 2D 이미지 및 상기 예측되는 영역에 관한 정보를 학습 데이터 생성 장치(200)에 전송하는 단계를 실행시키기 위하여 기록매체에 기록된 컴퓨터 프로그램이 될 수 있다.According to another embodiment of the present invention, the
본 발명의 또 다른 실시예에 따르면, 메모리(155)에 상주되거나 또는 스토리지(175)에 저장된 개인정보 비식별 처리 방법을 구현하기 위한 소프트웨어(180a, 180b)는 프로세서(150)가 차량(10)에 설치된 라이다(20) 및 카메라(40)에 의해 동시에 획득 및 촬영된 3D 점군 데이터 및 2D 이미지를 수집하는 단계, 프로세서(150)가 상기 3D 점군 데이터에 포함된 점들의 3차원 좌표를 기초로, 상기 2D 이미지에 포함된 객체를 식별하는 단계, 및 프로세서(150)가 상기 식별된 객체의 유형에 대응하여 상기 2D 이미지의 일부를 비식별(de-identify) 처리하는 단계를 실행시키기 위하여 기록매체에 기록된 컴퓨터 프로그램이 될 수 있다.According to another embodiment of the present invention, the
보다 구체적으로, 프로세서(150)는 ASIC(Application-Specific Integrated Circuit), 다른 칩셋(chipset), 논리 회로 및/또는 데이터 처리 장치를 포함할 수 있다. 메모리(155)는 ROM(Read-Only Memory), RAM(Random Access Memory), 플래쉬 메모리, 메모리 카드, 저장 매체 및/또는 다른 저장 장치를 포함할 수 있다. 송수신기(160)는 유무선 신호를 처리하기 위한 베이스밴드 회로를 포함할 수 있다. 입출력장치(165)는 키보드(keyboard), 마우스(mouse), 및/또는 조이스틱(joystick) 등과 같은 입력 장치 및 액정표시장치(Liquid Crystal Display, LCD), 유기 발광 다이오드(Organic LED, OLED) 및/또는 능동형 유기 발광 다이오드(Active Matrix OLED, AMOLED) 등과 같은 영상 출력 장치 프린터(printer), 플로터(plotter) 등과 같은 인쇄 장치를 포함할 수 있다. More specifically, the
본 명세서에 포함된 실시 예가 소프트웨어로 구현될 경우, 상술한 방법은 상술한 기능을 수행하는 모듈(과정, 기능 등)로 구현될 수 있다. 모듈은 메모리(155)에 상주되고, 프로세서(150)에 의해 실행될 수 있다. 메모리(155)는 프로세서(150)의 내부 또는 외부에 있을 수 있고, 잘 알려진 다양한 수단으로 프로세서(150)와 연결될 수 있다.When the embodiment included in this specification is implemented in software, the above-described method may be implemented as a module (process, function, etc.) that performs the above-described function. The module resides in the
도 5에 도시된 각 구성요소는 다양한 수단, 예를 들어, 하드웨어, 펌웨어(firmware), 소프트웨어 또는 그것들의 결합 등에 의해 구현될 수 있다. 하드웨어에 의한 구현의 경우, 본 발명의 일 실시예는 하나 또는 그 이상의 ASICs(Application Specific Integrated Circuits), DSPs(Digital Signal Processors), DSPDs(Digital Signal Processing Devices), PLDs(Programmable Logic Devices), FPGAs(Field Programmable Gate Arrays), 프로세서, 콘트롤러, 마이크로 콘트롤러, 마이크로 프로세서 등에 의해 구현될 수 있다.Each component shown in FIG. 5 may be implemented by various means, for example, hardware, firmware, software, or a combination thereof. In the case of implementation by hardware, an embodiment of the present invention is one or more ASICs (Application Specific Integrated Circuits), DSPs (Digital Signal Processors), DSPDs (Digital Signal Processing Devices), PLDs (Programmable Logic Devices), FPGAs ( Field Programmable Gate Arrays), a processor, a controller, a microcontroller, a microprocessor, etc. may be implemented.
또한, 펌웨어나 소프트웨어에 의한 구현의 경우, 본 발명의 일 실시예는 이상에서 설명된 기능 또는 동작들을 수행하는 모듈, 절차, 함수 등의 형태로 구현되어, 다양한 컴퓨터 수단을 통하여 판독 가능한 기록매체에 기록될 수 있다. 여기서, 기록매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 기록매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 예컨대 기록매체는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(Magnetic Media), CD-ROM(Compact Disk Read Only Memory), DVD(Digital Video Disk)와 같은 광 기록 매체(Optical Media), 플롭티컬 디스크(Floptical Disk)와 같은 자기-광 매체(Magneto-Optical Media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치를 포함한다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 이러한, 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.In addition, in the case of implementation by firmware or software, an embodiment of the present invention is implemented in the form of a module, procedure, function, etc. that performs the functions or operations described above, and is stored in a recording medium readable through various computer means. can be recorded. Here, the recording medium may include a program command, a data file, a data structure, etc. alone or in combination. The program instructions recorded on the recording medium may be specially designed and configured for the present invention, or may be known and available to those skilled in the art of computer software. For example, the recording medium includes a magnetic medium such as a hard disk, a floppy disk, and a magnetic tape, an optical recording medium such as a compact disk read only memory (CD-ROM), a digital video disk (DVD), and a floppy disk. Magneto-Optical Media, such as a disk, and hardware devices specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions may include high-level language codes that can be executed by a computer using an interpreter or the like as well as machine language codes such as those generated by a compiler. Such hardware devices may be configured to operate as one or more software to perform the operations of the present invention, and vice versa.
이하, 상술한 바와 같은 본 발명의 다양한 실시예에 따른 인공지능 학습 시스템의 특징들에 대하여, 도면을 참조하여 구체적으로 설명하기로 한다.Hereinafter, the features of the artificial intelligence learning system according to various embodiments of the present invention as described above will be described in detail with reference to the drawings.
도 6은 본 발명의 일 실시예에 따라 3D 점군 데이터에 포함된 객체의 유형을 식별하는 과정을 설명하기 위한 예시도이다. 도 7은 본 발명의 일 실시예에 따라 2D 이미지 내에서 객체의 영역을 식별하는 과정을 설명하기 위한 예시도이다. 그리고, 도 8 및 도 9는 본 발명의 몇몇 실시예에 따라 객체를 검출한 결과를 설명하기 위한 예시도들이다.6 is an exemplary diagram for explaining a process of identifying a type of an object included in 3D point cloud data according to an embodiment of the present invention. 7 is an exemplary diagram for explaining a process of identifying a region of an object in a 2D image according to an embodiment of the present invention. 8 and 9 are exemplary views for explaining a result of detecting an object according to some embodiments of the present invention.
도 6을 참조하면, 본 발명의 일 실시예에 따른 학습 데이터 수집 장치(100)는 3D 점군 데이터로부터 2D 이미지 내의 객체를 식별하기 위하여, 3D 점군 데이터에 포함된 점들 중에서 임계 범위 내에 군집(60)을 형성하고 있는 점들을 식별할 수 있다.Referring to FIG. 6 , the learning
학습 데이터 수집 장치(100)는 식별된 3D 점군 데이터로부터 군집(60)을 평면(top)에서 바라봤을 때(60_top)의 X축 상의 폭(width), 군집(60)을 측면(side)에서 바라봤을 때(60_side)의 Z축 상의 깊이(depth), 군집(60)을 정면(front)에서 바라봤을 때(60_front)의 Y축 상의 높이(height)를 기초로 객체의 유형을 식별할 수 있다.The learning
구체적으로, 학습 데이터 수집 장치(100)는 데이터베이스 내에 객체의 유형별로 구비된 객체의 폭, 높이 및 깊이의 비율 관계를 기초로, 군집(60)의 X축 상의 폭, Y축 상의 높이 및 Z축 상의 깊이에 대응하는 객체의 유형을 식별할 수 있다. Specifically, the learning
도 7을 참조하면, 학습 데이터 수집 장치(100)는 식별된 객체의 유형에 따라 데이터베이스 내에 사전에 구비된 3D 모델(70)을 해당 2D 이미지를 촬영한 카메라(40)의 광축(optical axis) 방향에 따라 3차원 회전시킬 수 있다.Referring to FIG. 7 , the learning
이 경우, 3D 모델(70)은 객체의 유형별로 분류된 객체의 3차원 형상 데이터이다. 이와 같은, 3D 모델(70)에는 객체의 유형별로 개인정보를 제거하기 위한 비식별 처리 영역(90)이 부여되어 있을 수 있다.In this case, the
그리고, 학습 데이터 수집 장치(100)는 3차원 회전된 3D 모델을 카메라(40)의 광축 방향에서 바라본 2차원 형상을 객체 영역(80)으로 식별할 수 있다. In addition, the learning
이 경우, 객체 영역(80)은 정점들(85)과 정점들(85)을 서로 연결한 간선들로 구성된 2차원 영역으로, 2D 이미지 내에 객체가 존재할 것으로 예측되는 영역이다. 이와 같은, 정점(85)은 객체를 자동으로 특정하는 지점이라는 의미에서 매직 핀(magic pin)이라 지칭될 수도 있다.In this case, the
이와 같은, 객체 영역(80)을 구성하는 정점들(85)의 개수가 많은 경우, 카메라(40)에 의해 실시간으로 촬영된 수많은 2D 이미지들을 영상 처리해야 하는 학습 데이터 수집 장치(100)에 큰 부하가 발생할 수 있다.As such, when the number of
따라서, 도 8 및 도 9에 도시된 바와 같이, 객체 영역(80)을 구성하는 정점들(85)은 기본적으로 학습 데이터 수집 장치(100)의 연산 능력에 대응하여, 학습 데이터 생성 장치(200)에 의해 설정된 개수로 구성될 수 있다. 다만, 카메라(40)에 의해 촬영된 2D 이미지의 중요도가 변화되는 경우, 학습 데이터 수집 장치(100)는 객체 영역(80)을 구성하는 정점들(85)의 개수를 능동적으로 조절할 수도 있다.Accordingly, as shown in FIGS. 8 and 9 , the
예를 들어, 학습 데이터 수집 장치(200)는 차량(10)에 설치된 카메라(40)가 2D 이미지를 촬영하는 주기(period)의 크기에 비례하여, 객체 영역(80)을 구성하는 정점들(85)의 개수를 증가시킬 수 있다. 또한, 학습 데이터 수집 장치(200)는 카메라(40)가 설치된 차량(10)의 이동 속도에 비례하여, 객체 영역(80)을 구성하는 정점들(85)의 개수를 증가시킬 수도 있다.For example, the learning
상술한 바와 같이, 학습 데이터 수집 장치(200)는 자율주행에 사용될 수 있는 인공지능(AI)을 기계 학습시키기 위하여 실시간으로 수집된 데이터에 포함된 객체를 선제적으로 검출함으로써 어노테이션의 작업량을 감소시킬 수 있게 된다.As described above, the learning
또한, 학습 데이터 수집 장치(200)는 장치의 연산 능력에 대응하여 객체를 검출함으로써, 실시간으로 수집된 대용량의 데이터로부터 병목 현상 없이 객체를 검출할 수 있게 된다.In addition, the learning
도 10은 본 발명의 일 실시예에 따라 개인정보를 비식별 처리한 결과를 설명하기 위한 예시도이다.10 is an exemplary diagram for explaining a result of de-identification processing of personal information according to an embodiment of the present invention.
도 10에 도시된 바와 같이, 본 발명의 일 실시예에 따른 학습 데이터 수집 장치(100)는 2D 이미지의 일부(즉, 개인정보가 포함된 영역)을 비식별 처리할 수 있다.As shown in FIG. 10 , the learning
구체적으로, 학습 데이터 수집 장치(100)는 3D 모델(70)을 이용하여 객체 영역(80)이 설정되면, 3D 모델(70)에 부여된 비식별 처리 영역(90)에 대응하는 영역에 대하여 비식별 처리를 수행할 수 있다.Specifically, when the
특징적으로, 학습 데이터 수집 장치(100)는 비식별 처리를 수행함에 있어, 비식별 처리를 수행할 영역의 경계선과 2D 이미지로부터 추출된 엣지에 의한 폐쇄 영역의 경계선이 사전에 설정된 최소 이격 거리 내로 인접한 경우, 비식별 처리를 수행할 영역의 경계선과 폐쇄 영역의 경계선이 최소 이격 거리 이상으로 이격되도록, 비식별 처리를 수행할 영역의 크기를 감소시킬 수 있다. 이를 통하여, 학습 데이터 수집 장치(100)는 개인정보의 비식별 처리가 어노테이션 작업에 미치는 영향을 최소화할 수 있다.Characteristically, when the learning
또한, 학습 데이터 수집 장치(100)가 수행하는 비식별 처리는 2D 이미지의 일부를 블러링 처리하여 수행될 수 있다. 이 경우, 비식별 처리의 대상이 되는 2D 이미지의 선명도는 차량(10)의 이동속도에 따라 변화될 수 있으므로, 학습 데이터 수집 장치(100)는 비식별 처리를 위한 블러링의 강도를 카메라(40)가 설치된 차량(10)의 이동속도에 반비례하게 설정할 수도 있다.In addition, the de-identification process performed by the learning
한편, 학습 데이터 수집 장치(100)는 블러링 처리를 수행하기 이전에, 비식별 처리를 수행할 영역을 크롭(crop)한 후, 크롭된 영상을 포함시켜 복원 데이터를 생성할 수도 있다.On the other hand, the learning
상술한 바와 같이, 학습 데이터 수집 장치(200)는 실시간으로 수집된 데이터에 포함된 개인정보를 즉각적으로 비식별 처리함으로써 외부에 개인 정보를 노출하지 않을 수 있게 된다.As described above, the learning
이 경우, 데이터에 포함된 개인정보의 비식별화 작업을 사람이 직접 수행할 필요가 없이 이미 비식별화된 영역을 단순 검토하게 됨으로써. 데이터 정제 과정의 효율이 향상될 수 있다.In this case, there is no need for a person to directly de-identify the personal information contained in the data, by simply reviewing the already de-identified area. The efficiency of the data purification process can be improved.
도 11은 본 발명의 일 실시예에 따라 데이터를 전송하는 과정을 설명하기 위한 예시도이다. 그리고, 도 12는 본 발명의 일 실시예에 따라 최악의 통신 환경에 데이터를 전송하는 과정을 설명하기 위한 예시도이다.11 is an exemplary diagram for explaining a process of transmitting data according to an embodiment of the present invention. And, FIG. 12 is an exemplary diagram for explaining a process of transmitting data in the worst communication environment according to an embodiment of the present invention.
도 11에 도시된 바와 같이, 본 발명의 일 실시예에 따른 학습 데이터 수집 장치(100)는 사전에 설정된 주기마다 학습 데이터 생성 장치(200)와의 이동통신의 통신 품질을 측정하고, 측정된 통신 품질에 대응하여 버퍼의 크기를 조정할 수 있다. 이 경우, 버퍼는 레이더(20), 라이다(30), 카메라(40) 및 초음파 센서(50)로부터 수집된 데이터를 저장하기 위한 임시 저장 공간이다.11 , the learning
구체적으로, 학습 데이터 수집 장치(100)는 사전에 설정된 주기마다 ICMP의 ping 패킷을 학습 데이터 생성 장치(200)에 전송하고, 학습 데이터 생성 장치로부터 수신된 응답 패킷에 포함된 RTT(Round Trip Time)와 TTL(Time To Live)을 기초로 버퍼의 크기를 결정할 수 있다. Specifically, the training
이 경우, 학습 데이터 수집 장치(100)는 레이더(20), 라이다(30), 카메라(40) 및 초음파 센서(50)가 설치된 차량(10)의 이동 속도에 반비례하여, ICMP의 ping 패킷을 전송할 주기를 조절할 수 있다. In this case, the learning
한편, 응답 패킷에 포함된 TTL을 기초로 모든 패킷이 손실되는 것으로 판단되는 경우, 도 12에 도시된 바와 같이, 학습 데이터 수집 장치(100a)는 학습 데이터 생성 장치(200)와 직접 이동통신을 수행하지 아니하고, 다른 학습 데이터 수집 장치(100b)를 경유하여 학습 데이터 생성 장치(200)와 이동통신을 수행하도록 제어할 수도 있다.On the other hand, when it is determined that all packets are lost based on the TTL included in the response packet, as shown in FIG. 12 , the learning
또한, 학습 데이터 수집 장치(100)에 의해 결정된 버퍼의 크기가 사전에 설정된 기본 전송 크기보다 작은 경우, 학습 데이터 수집 장치(100)는 레이더(20), 라이다(30), 카메라(40) 및 초음파 센서(50) 중 하나 이상으로부터 수집된 데이터 중 일부를 제거할 수 있다.In addition, when the size of the buffer determined by the learning
우선, 학습 데이터 수집 장치(100)는 사전에 설정된 우선순위에 따라, 레이더(20)에 의해 획득된 감지 데이터, 라이다(30)에 의해 획득된 3D 점군 데이터, 카메라(40)에 의해 촬영된 2D 이미지 및 초음파 센서(50)에 의해 감지된 거리 정보를 순서대로 제거할 수 있다.First, the learning
이 경우, 학습 데이터 수집 장치(100)는 레이더(20)에 의해 획득된 감지 데이터를 기초로 차량(10)이 객체로부터 이격된 거리를 추정하고, 추정된 거리를 기준으로 레이더(20)에 의해 획득된 감지 데이터, 라이다(30)에 의해 획득된 3D 점군 데이터, 카메라(40)에 의해 촬영된 2D 이미지 및 초음파 센서(50)에 의해 감지된 거리 정보 사이의 우선순위를 조정할 수 있다. 또한, 학습 데이터 수집 장치(100)는 우선순위에 따라 카메라(40)에 의해 촬영된 2D 이미지들을 제거해야 하는 경우, 기본 수집 시간동안 카메라(40)에 의해 촬영된 복수 개의 2D 이미지들 중에서 객체가 포함되지 않은 2D 이미지를 우선적으로 제거할 수도 있다. In this case, the learning
상술한 바와 같이, 학습 데이터 수집 장치(200)는 실시간으로 수집된 데이터를 효율적으로 전송하게 됨으로써, 안정적인 데이터 전송을 위해 차량의 주행을 중단할 필요가 없으며, 대용량의 저장 공간을 구비하지 않아도 된다.As described above, since the learning
이하, 상술한 바와 같은 본 발명의 다양한 실시예에 따른 학습 데이터 수집 장치(100)의 동작에 대하여, 도면을 참조하여 구체적으로 설명하기로 한다.Hereinafter, the operation of the learning
도 13은 본 발명의 일 실시예에 따른 데이터 수집 방법을 설명하기 위한 순서도이다. 13 is a flowchart illustrating a data collection method according to an embodiment of the present invention.
도 13을 참조하면, 본 발명의 일 실시예에 따른 학습 데이터 수집 장치(100)는 레이더(20), 라이다(30), 카메라(40) 및 초음파 센서(50)로부터 감지 데이터, 3D 점군 데이터, 2D 이미지 및 거리 정보 중에서 하나 이상을 수집할 수 있다(S100). 이 경우, 학습 데이터 수집 장치(100)는 차량(10)에 서로 다른 높이에 설치된 복수 개의 카메라들에 의해 동시에 촬영된 2D 이미지들을 수집하는 경우, 서로 다른 높이에 설치된 복수 개의 카메라들을 우선순위에 따라 제어할 수 있다.Referring to FIG. 13 , the learning
다음으로, 학습 데이터 수집 장치(100)는 수집된 감지 데이터, 3D 점군 데이터, 2D 이미지 및 거리 정보로부터 객체를 식별할 수 있다(S200). 이 경우, 학습 데이터 수집 장치(100)는 3D 점군 데이터에 포함된 점들의 3차원 좌표를 기초로, 2D 이미지 내에서 객체가 존재할 것으로 예측되는 객체 영역을 설정할 수 있다. 이 경우, 객체 영역은 정점들과 정점들을 서로 연결한 간선들로 구성된 2차원 영역일 수 있다. 또한, 객체 영역을 구성하는 정점들은 기본적으로 학습 데이터 수집 장치(100)의 연산 능력에 대응하는 개수로 구성될 수 있다.Next, the learning
다음으로, 학습 데이터 수집 장치(100)는 식별된 객체의 유형에 대응하여 2D 이미지에 포함된 개인 정보를 비식별 처리할 수 있다(S300). 이 경우, 학습 데이터 수집 장치(100)는 객체의 유형 및 2D 이미지로부터 추출된 엣지의 패턴에 대응하는 비식별 규칙을 조회하고, 조회된 비식별 처리 규칙에 따라 2D 이미지의 일부(즉, 개인 정보)를 비식별 처리할 수 있다. Next, the learning
다음으로, 학습 데이터 수집 장치(100)는 수집된 감지 데이터, 3D 점군 데이터, 비식별 처리된 2D 이미지, 거리 정보, 및 객체 영역에 관한 정보를 학습 데이터 생성 장치(200)에 전송할 수 있다(S400).Next, the learning
이상과 같이, 본 명세서와 도면에는 본 발명의 바람직한 실시예에 대하여 개시하였으나, 여기에 개시된 실시예 외에도 본 발명의 기술적 사상에 바탕을 둔 다른 변형 예들이 실시 가능하다는 것은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 자명한 것이다. 또한, 본 명세서와 도면에서 특정 용어들이 사용되었으나, 이는 단지 본 발명의 기술 내용을 쉽게 설명하고 발명의 이해를 돕기 위한 일반적인 의미에서 사용된 것이지, 본 발명의 범위를 한정하고자 하는 것은 아니다. 따라서, 상술한 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니 되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 선정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.As described above, in the present specification and drawings, preferred embodiments of the present invention have been disclosed, but it is in the technical field to which the present invention pertains that other modifications based on the technical idea of the present invention are possible in addition to the embodiments disclosed herein. It is obvious to those with ordinary knowledge. In addition, although specific terms have been used in the present specification and drawings, these are only used in a general sense to easily explain the technical contents of the present invention and help the understanding of the present invention, and are not intended to limit the scope of the present invention. Accordingly, the above detailed description should not be construed as restrictive in all respects but as exemplary. The scope of the present invention should be determined by a reasonable interpretation of the appended claims, and all modifications within the equivalent scope of the present invention are included in the scope of the present invention.
차량: 10 레이더: 20
라이다: 30 카메라: 40
초음파 센서: 50
학습 데이터 수집 장치: 100 학습 데이터 생성 장치: 200
어노테이션 장치: 300 인공지능 학습 장치: 400
통신부: 105 입출력부: 110
다중 센서 제어부: 115 객체 식별부: 120
비식별화 처리부: 125 데이터 제공부: 130
저장부: 135Vehicle: 10 Radar: 20
Lidar: 30 Camera: 40
Ultrasonic sensor: 50
Training data collection device: 100 Training data generation device: 200
Annotation device: 300 AI learning device: 400
Communication unit: 105 Input/output unit: 110
Multi-sensor control unit: 115 Object identification unit: 120
De-identification processing unit: 125 Data providing unit: 130
Storage: 135
Claims (10)
학습 데이터 수집 장치가, 차량에 서로 다른 높이에 설치된 복수 개의 카메라들(cameras)에 의해 동시에 촬영된 2D 이미지들을 수집하는 단계;
상기 학습 데이터 수집 장치가, 상기 복수 개의 카메라들 사이의 우선순위(priority)를 기초로, 상기 우선순위가 가장 높은 카메라에 의해 촬영된 2D 이미지에 포함된 객체를 식별하는 단계; 및
상기 학습 데이터 수집 장치가, 상기 우선순위가 가장 높은 카메라에 의해 촬영된 2D 이미지 및 상기 식별된 객체에 관한 정보를 학습 데이터 생성 장치에 전송하는 단계를 포함하되,
상기 복수 개의 카메라들 사이의 우선순위는
상기 인공지능(AI)을 이용하여 자율주행을 수행할 차량의 차고(vehicle height)를 기초로 임시적으로 설정된 것을 특징으로 하고,
상기 객체를 식별하는 단계는
상기 복수 개의 카메라들에 의해 촬영된 2D 이미지들을 대상으로 각각의 2D 이미지에 포함된 객체를 식별하고, 상기 각각의 2D 이미지로부터 식별된 객체의 완전성(integrity)을 기준으로 상기 우선순위를 조정하되,
상기 객체의 완전성은
객체의 전체 형상 중에서 카메라의 화각 또는 다른 객체에 의해 잘리지 않고 2D 이미지에 포함된 비율을 의미하는 것을 특징으로 하며,
상기 2D 이미지들을 수집하는 단계는
상기 차량에 설치된 라이다(lidar)에 의해 획득된 3D 점군 데이터를 더 수집하고,
상기 객체를 식별하는 단계는
상기 3D 점군 데이터에 포함된 점들의 3차원 좌표를 기초로 상기 3D 점군 데이터에 포함된 객체를 식별하고, 상기 3D 점군 데이터로부터 식별된 객체와 상기 각각의 2D 이미지로부터 식별된 객체를 서로 대비한 결과를 기초로, 상기 객체의 완전성을 평가하는 것을 특징으로 하는, 높이 차이를 가지는 센서들을 위한 제어 방법.
A method of collecting data for machine learning of artificial intelligence (AI) that can be used for autonomous driving, the method comprising:
collecting, by the learning data collection device, 2D images simultaneously photographed by a plurality of cameras installed at different heights in the vehicle;
identifying, by the learning data collection device, an object included in a 2D image captured by a camera having the highest priority based on a priority between the plurality of cameras; and
Comprising the step of transmitting, by the learning data collection device, the 2D image captured by the camera having the highest priority and information about the identified object to the learning data generating device,
The priority among the plurality of cameras is
It is characterized in that it is temporarily set based on the vehicle height of the vehicle to be autonomously driven using the artificial intelligence (AI),
The step of identifying the object
Identifying an object included in each 2D image for the 2D images taken by the plurality of cameras, and adjusting the priority based on the integrity of the object identified from each 2D image,
The object's integrity is
Characterized in that it refers to the ratio included in the 2D image without being cut by the angle of view of the camera or other objects among the entire shape of the object,
The step of collecting the 2D images is
Further collecting 3D point cloud data obtained by a lidar installed in the vehicle,
The step of identifying the object
A result of identifying an object included in the 3D point cloud data based on the three-dimensional coordinates of points included in the 3D point cloud data, and comparing the object identified from the 3D point cloud data with the object identified from each of the 2D images Based on the, characterized in that for evaluating the integrity of the object, a control method for sensors having a height difference.
상기 우선순위가 가장 높은 카메라에 의해 촬영된 2D 이미지를 대상으로 수행된 객체의 식별이 사전에 설정된 횟수만큼 연속적으로 실패한 경우, 상기 우선순위의 조정을 수행하는 것을 특징으로 하는, 높이 차이를 가지는 센서들을 위한 제어 방법.
According to claim 1, wherein the step of identifying the object
Sensor having a height difference, characterized in that when the identification of the object performed for the 2D image taken by the camera having the highest priority fails continuously for a preset number of times, the priority is adjusted control method for them.
상기 3D 점군 데이터에 포함된 점들 중에서 사전에 설정된 임계 범위 내에서 군집(crowd)을 형성하고 있는 점들을 식별하고, 상기 식별된 군집의 X축 상의 폭, Y축 상의 높이 및 Z축 상의 깊이를 기초로 상기 객체의 유형을 식별하는 것을 특징으로 하는, 높이 차이를 가지는 센서들을 위한 제어 방법.
According to claim 1, wherein the step of identifying the object
Among the points included in the 3D point cloud data, points forming a crowd within a preset critical range are identified, and the identified cluster is based on the width on the X-axis, the height on the Y-axis, and the depth on the Z-axis. A control method for sensors having a height difference, characterized in that for identifying the type of the object.
객체의 유형별로 사전에 구비된 폭, 높이 및 깊이의 비율 관계(rate relation)를 기초로, 상기 식별된 군집의 X축 상의 폭, Y축 상의 높이 및 Z축 상의 깊이에 대응하는 객체의 유형을 식별하는 것을 특징으로 하는, 높이 차이를 가지는 센서들을 위한 제어 방법.
The method of claim 3, wherein the step of identifying the object comprises:
Based on the rate relation of width, height, and depth provided in advance for each type of object, the type of object corresponding to the width on the X-axis, the height on the Y-axis, and the depth on the Z-axis of the identified cluster is determined. A control method for sensors having a height difference, characterized in that for identifying.
상기 각각의 2D 이미지로부터 식별된 객체를 구성하는 점들 중에서 상기 식별된 객체의 유형에 따라 사전에 설정된 복수 개의 필수점(essential point)들에 대응하는 점들을 몇 개나 포함하고 있는지 여부에 따라 상기 완전성을 평가하되,
상기 복수 개의 필수점은
상기 객체의 유형을 다른 유형과 구별하기 위하여 요구되는 점들인 것을 특징으로 하는, 높이 차이를 가지는 센서들을 위한 제어 방법.
5. The method of claim 4, wherein the step of identifying the object
Among the points constituting the object identified from each of the 2D images, the completeness is determined according to how many points corresponding to a plurality of essential points preset according to the type of the identified object are included. Evaluate, but
The plurality of essential points
Control method for sensors having a height difference, characterized in that the points required to distinguish the type of the object from other types.
상기 우선순위가 가장 높은 카메라에 의해 촬영된 2D 이미지로부터 상기 객체의 식별이 실패한 경우, 차순위의 우선순위를 가지는 카메라에 의해 촬영된 2D 이미지로부터 상기 객체의 식별을 시도하는 것을 특징으로 하는, 높이 차이를 가지는 센서들을 위한 제어 방법.
According to claim 1, wherein the step of identifying the object
Height difference, characterized in that when identification of the object from the 2D image taken by the camera having the highest priority fails, identification of the object is attempted from the 2D image photographed by the camera having the next priority A control method for sensors having
상기 복수 개의 카메라들에 의해 동시에 촬영된 모든 2D 이미지들로부터 상기 객체의 식별이 실패한 경우, 상기 2D 이미지들이 촬영된 시점과 동시에 라이다에 의해 획득된 3D 점군 데이터를 제거하는 것을 특징으로 하는, 높이 차이를 가지는 센서들을 위한 제어 방법.
The method of claim 6, wherein the identifying the object comprises:
When the identification of the object from all the 2D images simultaneously photographed by the plurality of cameras fails, the 3D point cloud data acquired by the lidar is removed at the same time when the 2D images are photographed, the height Control method for different sensors.
송수신기(transceiver); 및
상기 메모리에 상주된 명령어를 처리하는 프로세서(processor)를 포함하여 구성된 컴퓨팅 장치와 결합되어,
상기 프로세서가, 차량에 서로 다른 높이에 설치된 복수 개의 카메라들에 의해 동시에 촬영된 2D 이미지들을 수집하는 단계;
상기 프로세서가, 상기 복수 개의 카메라들 사이의 우선순위를 기초로, 상기 우선순위가 가장 높은 카메라에 의해 촬영된 2D 이미지에 포함된 객체를 식별하는 단계; 및
상기 프로세서가, 상기 우선순위가 가장 높은 카메라에 의해 촬영된 2D 이미지 및 상기 식별된 객체에 관한 정보를 학습 데이터 생성 장치에 전송하는 단계를 실행시키되,
상기 복수 개의 카메라들 사이의 우선순위는
상기 인공지능(AI)을 이용하여 자율주행을 수행할 차량의 차고를 기초로 임시적으로 설정된 것을 특징으로 하고,
상기 객체를 식별하는 단계는
상기 복수 개의 카메라들에 의해 촬영된 2D 이미지들을 대상으로 각각의 2D 이미지에 포함된 객체를 식별하고, 상기 각각의 2D 이미지로부터 식별된 객체의 완전성(integrity)을 기준으로 상기 우선순위를 조정하되,
상기 객체의 완전성은
객체의 전체 형상 중에서 카메라의 화각 또는 다른 객체에 의해 잘리지 않고 2D 이미지에 포함된 비율을 의미하는 것을 특징으로 하며,
상기 2D 이미지들을 수집하는 단계는
상기 차량에 설치된 라이다(lidar)에 의해 획득된 3D 점군 데이터를 더 수집하고,
상기 객체를 식별하는 단계는
상기 3D 점군 데이터에 포함된 점들의 3차원 좌표를 기초로 상기 3D 점군 데이터에 포함된 객체를 식별하고, 상기 3D 점군 데이터로부터 식별된 객체와 상기 각각의 2D 이미지로부터 식별된 객체를 서로 대비한 결과를 기초로, 상기 객체의 완전성을 평가하는 것을 특징으로 하는, 기록매체에 기록된 컴퓨터 프로그램.
memory;
transceiver; and
Combined with a computing device configured to include a processor (processor) for processing instructions resident in the memory,
collecting, by the processor, 2D images simultaneously photographed by a plurality of cameras installed at different heights in the vehicle;
identifying, by the processor, an object included in a 2D image captured by a camera having the highest priority based on a priority among the plurality of cameras; and
Execute, by the processor, transmitting the 2D image taken by the camera with the highest priority and information about the identified object to the learning data generating device,
The priority among the plurality of cameras is
It is characterized in that it is temporarily set based on the garage of the vehicle to perform autonomous driving using the artificial intelligence (AI),
The step of identifying the object
Identifying an object included in each 2D image for the 2D images taken by the plurality of cameras, and adjusting the priority based on the integrity of the object identified from each 2D image,
The object's integrity is
Characterized in that it refers to the ratio included in the 2D image without being cut by the angle of view of the camera or other objects among the entire shape of the object,
The step of collecting the 2D images is
Further collecting 3D point cloud data obtained by a lidar installed in the vehicle,
The step of identifying the object
The object included in the 3D point cloud data is identified based on the three-dimensional coordinates of the points included in the 3D point cloud data, and the object identified from the 3D point cloud data and the object identified from the respective 2D images are compared with each other. Based on the, characterized in that for evaluating the integrity of the object, a computer program recorded on a recording medium.
상기 3D 점군 데이터에 포함된 점들 중에서 사전에 설정된 임계 범위 내에서 군집(crowd)을 형성하고 있는 점들을 식별하고, 상기 식별된 군집의 X축 상의 폭, Y축 상의 높이 및 Z축 상의 깊이를 기초로 상기 객체의 유형을 식별하는 것을 특징으로 하는, 기록매체에 기록된 컴퓨터 프로그램.
The method of claim 8, wherein identifying the object comprises:
Among the points included in the 3D point cloud data, points forming a crowd within a preset critical range are identified, and the identified cluster is based on the width on the X-axis, the height on the Y-axis, and the depth on the Z-axis. A computer program recorded on a recording medium, characterized in that for identifying the type of the object with
객체의 유형별로 사전에 구비된 폭, 높이 및 깊이의 비율 관계(rate relation)를 기초로, 상기 식별된 군집의 X축 상의 폭, Y축 상의 높이 및 Z축 상의 깊이에 대응하는 객체의 유형을 식별하는 것을 특징으로 하는, 기록매체에 기록된 컴퓨터 프로그램.The method of claim 9, wherein identifying the object comprises:
Based on the rate relation of width, height, and depth provided in advance for each type of object, the type of object corresponding to the width on the X-axis, the height on the Y-axis, and the depth on the Z-axis of the identified cluster is determined. A computer program recorded on a recording medium, characterized in that for identification.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210102995A KR102343062B1 (en) | 2021-08-05 | 2021-08-05 | Control method for sensors with height difference, and computer program recorded on record-medium for executing method therefor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210102995A KR102343062B1 (en) | 2021-08-05 | 2021-08-05 | Control method for sensors with height difference, and computer program recorded on record-medium for executing method therefor |
Publications (1)
Publication Number | Publication Date |
---|---|
KR102343062B1 true KR102343062B1 (en) | 2021-12-27 |
Family
ID=79177104
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210102995A KR102343062B1 (en) | 2021-08-05 | 2021-08-05 | Control method for sensors with height difference, and computer program recorded on record-medium for executing method therefor |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102343062B1 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180085718A (en) * | 2015-11-24 | 2018-07-27 | 콘티 테믹 마이크로일렉트로닉 게엠베하 | METHOD AND APPARATUS FOR CALCULATING INTERACTIVE AREA IN VEHICLE AREA |
KR20200042629A (en) | 2018-10-16 | 2020-04-24 | 주식회사 키센스 | Method for generating annotation and image based on touch of mobile device to learn artificial intelligence and apparatus therefor |
KR20210075293A (en) * | 2019-12-12 | 2021-06-23 | 현대자동차주식회사 | Vehicle and control method thereof |
-
2021
- 2021-08-05 KR KR1020210102995A patent/KR102343062B1/en active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180085718A (en) * | 2015-11-24 | 2018-07-27 | 콘티 테믹 마이크로일렉트로닉 게엠베하 | METHOD AND APPARATUS FOR CALCULATING INTERACTIVE AREA IN VEHICLE AREA |
KR20200042629A (en) | 2018-10-16 | 2020-04-24 | 주식회사 키센스 | Method for generating annotation and image based on touch of mobile device to learn artificial intelligence and apparatus therefor |
KR20210075293A (en) * | 2019-12-12 | 2021-06-23 | 현대자동차주식회사 | Vehicle and control method thereof |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102356910B1 (en) | Method for preemptively detecting object, and computer program recorded on record-medium for executing method therefor | |
KR102343059B1 (en) | Data collecting system for artificial intelligence machine learning, and device therefor | |
US10936908B1 (en) | Semantic labeling of point clouds using images | |
KR102310608B1 (en) | Method for processing data of machine learning for automatic driving based on radar and lidar, and computer program recorded on record-medium for executing method therefor | |
JP2021089724A (en) | 3d auto-labeling with structural and physical constraints | |
KR102310613B1 (en) | Method for tracking object in continuous 2D image, and computer program recorded on record-medium for executing method therefor | |
KR102389998B1 (en) | De-identification processing method and a computer program recorded on a recording medium to execute the same | |
KR102343056B1 (en) | A method of reducing data load of images for annotation, and computer program recorded on record-medium for executing method thereof | |
KR102403169B1 (en) | Method for providing guide through image analysis, and computer program recorded on record-medium for executing method therefor | |
WO2022193515A1 (en) | Devices, systems, methods, and media for adaptive augmentation for a point cloud dataset used for training | |
KR102310606B1 (en) | Method for correcting difference of multiple sensors, and computer program recorded on record-medium for executing method therefor | |
KR102310602B1 (en) | Method for correcting difference of multiple sensors, and computer program recorded on record-medium for executing method therefor | |
CN111598065A (en) | Depth image acquisition method, living body identification method, apparatus, circuit, and medium | |
CN114830177A (en) | Electronic device and method for controlling the same | |
KR102343061B1 (en) | Method for de-identifying personal information, and computer program recorded on record-medium for executing method therefor | |
KR102313918B1 (en) | Synchronization method of 3D data and 2D image, and computer program recorded on record-medium for executing method thereof | |
KR102310601B1 (en) | Control method of multiple sensors for data collection, and computer program recorded on record-medium for executing method thereof | |
KR102310604B1 (en) | Method for processing data collected by multiple sensors, and computer program recorded on record-medium for executing method therefor | |
KR102343062B1 (en) | Control method for sensors with height difference, and computer program recorded on record-medium for executing method therefor | |
KR102313922B1 (en) | A method of increasing quality for data of connected 3D points group, and computer program recorded on record-medium for executing method thereof | |
US20230281975A1 (en) | Systems and methods for generating three-dimensional annotations for training a machine learning model | |
KR102310605B1 (en) | Control method of multiple sensors for data collection, and computer program recorded on record-medium for executing method thereof | |
KR102310607B1 (en) | Distributed processing method for annotations, and computer program recorded on record-medium for executing method therefor | |
KR102310609B1 (en) | Method for preprocessing 2D image using 3D data, and computer program recorded on record-medium for executing method therefor | |
KR102313938B1 (en) | Method for tracking object through 3D path inference, and computer program recorded on record-medium for executing method therefor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |