KR102665806B1 - Method and system for generating synthetic radar data - Google Patents

Method and system for generating synthetic radar data Download PDF

Info

Publication number
KR102665806B1
KR102665806B1 KR1020240014197A KR20240014197A KR102665806B1 KR 102665806 B1 KR102665806 B1 KR 102665806B1 KR 1020240014197 A KR1020240014197 A KR 1020240014197A KR 20240014197 A KR20240014197 A KR 20240014197A KR 102665806 B1 KR102665806 B1 KR 102665806B1
Authority
KR
South Korea
Prior art keywords
points
information
data
radar
bounding box
Prior art date
Application number
KR1020240014197A
Other languages
Korean (ko)
Inventor
임호준
유희철
이진우
Original Assignee
주식회사 모라이
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 모라이 filed Critical 주식회사 모라이
Priority to KR1020240014197A priority Critical patent/KR102665806B1/en
Application granted granted Critical
Publication of KR102665806B1 publication Critical patent/KR102665806B1/en

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S7/00Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
    • G01S7/02Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S13/00
    • G01S7/40Means for monitoring or calibrating
    • G01S7/4052Means for monitoring or calibrating by simulation of echoes
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/02Systems using the reflection of electromagnetic waves other than radio waves
    • G01S17/50Systems of measurement based on relative movement of target
    • G01S17/58Velocity or trajectory determination systems; Sense-of-movement determination systems
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/88Lidar systems specially adapted for specific applications
    • G01S17/89Lidar systems specially adapted for specific applications for mapping or imaging
    • G01S17/8943D imaging with simultaneous measurement of time-of-flight at a 2D array of receiver pixels, e.g. time-of-flight cameras or flash lidar
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S7/00Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
    • G01S7/02Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S13/00
    • G01S7/41Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S13/00 using analysis of echo signal for target characterisation; Target signature; Target cross-section
    • G01S7/411Identification of targets based on measurements of radar reflectivity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/521Depth or shape recovery from laser ranging, e.g. using interferometry; from the projection of structured light
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/16Anti-collision systems
    • G08G1/165Anti-collision systems for passive traffic, e.g. including static obstacles, trees
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/16Anti-collision systems
    • G08G1/166Anti-collision systems for active traffic, e.g. moving vehicles, pedestrians, bikes
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2420/00Indexing codes relating to the type of sensors based on the principle of their operation
    • B60W2420/40Photo, light or radio wave sensitive means, e.g. infrared sensors
    • B60W2420/408Radar; Laser, e.g. lidar
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2554/00Input parameters relating to objects
    • B60W2554/20Static objects
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2554/00Input parameters relating to objects
    • B60W2554/40Dynamic objects, e.g. animals, windblown objects

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Electromagnetism (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Theoretical Computer Science (AREA)
  • Optics & Photonics (AREA)
  • Geometry (AREA)
  • Radar Systems Or Details Thereof (AREA)

Abstract

본 개시는 합성 레이더 데이터 생성 방법 및 시스템을 제공한다. 합성 레이더 데이터 생성 방법은, 라이다(LiDAR: Light Detection And Ranging) 센서에 의해 생성된 포인트 클라우드 데이터를 수신하는 단계, 포인트 클라우드 데이터와 연관된 3차원 바운딩 박스 정보를 수신하는 단계 및 포인트 클라우드 데이터 및 3차원 바운딩 박스 정보에 기초하여, 포인트 클라우드 데이터와 대응하는 합성 레이더 데이터를 생성하는 단계를 포함하고, 합성 레이더 데이터는 레이더 센서에 의해 생성된 데이터를 모사할 수 있다.This disclosure provides a method and system for generating synthetic radar data. A method of generating synthetic radar data includes receiving point cloud data generated by a LiDAR (Light Detection And Ranging) sensor, receiving three-dimensional bounding box information associated with the point cloud data, point cloud data, and 3. Based on the dimensional bounding box information, generating synthetic radar data corresponding to the point cloud data, wherein the synthetic radar data can simulate data generated by a radar sensor.

Description

합성 레이더 데이터 생성 방법 및 시스템{METHOD AND SYSTEM FOR GENERATING SYNTHETIC RADAR DATA}Method and system for generating synthetic radar data {METHOD AND SYSTEM FOR GENERATING SYNTHETIC RADAR DATA}

본 개시는 합성 레이더 데이터 생성 방법 및 시스템에 관한 것으로, 구체적으로 라이다 센싱에 의해 생성된 포인트 클라우드 데이터를 이용하여 합성 레이더 데이터를 생성하는 방법 및 시스템에 관한 것이다.This disclosure relates to a method and system for generating synthetic radar data, and specifically relates to a method and system for generating synthetic radar data using point cloud data generated by lidar sensing.

레이더(RADAR: RAdio Detection And Ranging) 센서는 날씨변화와 무관하게 거리, 속도 등의 데이터를 수집하기 용이하다. 또한, 레이더 센서는 장거리의 데이터 수집에 적합하다. 이러한 레이더 센서에 의해 생성된 레이더 데이터는 차량의 자율주행 또는 차량 운행 시뮬레이션의 이용에 적합할 수 있다.RADAR (RAdio Detection And Ranging) sensors are easy to collect data such as distance and speed regardless of weather changes. Additionally, radar sensors are suitable for long-distance data collection. Radar data generated by such radar sensors may be suitable for use in autonomous vehicle driving or vehicle operation simulation.

그러나 카메라, 라이다 센서 등과 같은 다른 센서에 의해 생성된 데이터보다 레이더 데이터는 상대적으로 공개된 것이 거의 없다. 또한, 가상 현실의 시뮬레이터를 활용하더라도 레이더 센서의 복잡성으로 인해 레이더 데이터의 실시간성을 확보하기 어렵다. 이로 인해, 대용량의 레이더 데이터의 생성/확보가 어려운 실정이다.However, relatively little radar data is publicly available compared to data generated by other sensors such as cameras and lidar sensors. In addition, even if a virtual reality simulator is used, it is difficult to secure real-time radar data due to the complexity of the radar sensor. Because of this, it is difficult to generate/secure large amounts of radar data.

본 개시는 상기와 같은 문제점을 해결하기 위한 합성 레이더 생성 방법, 기록 매체에 저장된 컴퓨터 프로그램 및 시스템(장치)을 제공한다.The present disclosure provides a synthetic radar generation method, a computer program stored in a recording medium, and a system (device) to solve the above problems.

본 개시는 방법, 장치(시스템) 및/또는 컴퓨터 판독 가능 저장 매체에 저장된 컴퓨터 프로그램, 컴퓨터 프로그램이 저장된 컴퓨터 판독 가능 저장 매체를 포함한 다양한 방식으로 구현될 수 있다.The present disclosure may be implemented in various ways, including a method, a device (system), and/or a computer program stored in a computer-readable storage medium, and a computer-readable storage medium on which the computer program is stored.

본 개시의 일 실시예에 따르면, 적어도 하나의 프로세서에 의해 수행되는, 합성 레이더(RADAR: RAdio Detection And Ranging) 데이터 생성 방법에 있어서, 라이다(LiDAR: Light Detection And Ranging) 센서에 의해 생성된 포인트 클라우드 데이터를 수신하는 단계, 포인트 클라우드 데이터와 연관된 3차원 바운딩 박스 정보를 수신하는 단계 및 포인트 클라우드 데이터 및 3차원 바운딩 박스 정보에 기초하여, 포인트 클라우드 데이터와 대응하는 합성 레이더 데이터를 생성하는 단계를 포함하고, 합성 레이더 데이터는 레이더 센서에 의해 생성된 데이터를 모사할 수 있다.According to an embodiment of the present disclosure, in a synthetic radar (RAdio Detection And Ranging) data generation method performed by at least one processor, a point generated by a LiDAR (Light Detection And Ranging) sensor Receiving cloud data, receiving three-dimensional bounding box information associated with the point cloud data, and generating synthetic radar data corresponding to the point cloud data based on the point cloud data and three-dimensional bounding box information. And, synthetic radar data can simulate data generated by a radar sensor.

본 개시의 일 실시예에 따르면, 3차원 바운딩 박스 정보는 위치 정보, 배향(orientation) 정보, 클래스 정보, 너비 정보, 높이 정보, 깊이 정보 또는 상대 속도 정보 중 적어도 하나를 포함할 수 있다.According to an embodiment of the present disclosure, the 3D bounding box information may include at least one of position information, orientation information, class information, width information, height information, depth information, or relative speed information.

본 개시의 일 실시예에 따르면, 포인트 클라우드 데이터는 제1 세트의 포인트를 포함하고, 합성 레이더 데이터를 생성하는 단계는, 라이다 센서와 연관된 제1 외부 파라미터(extrinsic parameter)를 수신하는 단계, 레이더 센서와 연관된 제2 외부 파라미터를 수신하는 단계 및 제1 외부 파라미터 및 제2 외부 파라미터에 기초하여, 제1 세트의 포인트 중 레이더 센서의 FOV(Field Of View) 내의 제2 세트의 포인트를 식별하는 단계를 포함할 수 있다.According to an embodiment of the present disclosure, the point cloud data includes a first set of points, and generating synthetic radar data includes receiving a first extrinsic parameter associated with a lidar sensor, the radar Receiving a second external parameter associated with the sensor and, based on the first external parameter and the second external parameter, identifying a second set of points within the field of view (FOV) of the radar sensor among the first set of points. may include.

본 개시의 일 실시예에 따르면, 제2 세트의 포인트를 식별하는 단계는, 제1 외부 파라미터 및 제2 외부 파라미터에 기초하여, 제1 세트의 포인트를 구면 좌표계(spherical coordinate system)로 변환하는 단계를 포함하고, 제2 세트의 포인트의 위치 정보가 구면 좌표계로 표현될 수 있다. According to an embodiment of the present disclosure, identifying the second set of points includes transforming the first set of points into a spherical coordinate system based on the first external parameter and the second external parameter. It includes, and the location information of the second set of points may be expressed in a spherical coordinate system.

본 개시의 일 실시예에 따르면, 합성 레이더 데이터를 생성하는 단계는, 제2 세트의 포인트 중 3차원 바운딩 박스에 포함된 제3 세트의 포인트를 동적 객체와 연관된 것으로 판정하는 단계 및 제2 세트의 포인트 중 3차원 바운딩 박스에 포함되지 않은 제4 세트의 포인트를 정적 객체와 연관된 것으로 판정하는 단계를 더 포함할 수 있다.According to an embodiment of the present disclosure, generating synthetic radar data includes determining a third set of points included in a three-dimensional bounding box among the second set of points as being associated with a dynamic object, and the second set of points including: It may further include determining that a fourth set of points that are not included in the 3D bounding box among the points are associated with the static object.

본 개시의 일 실시예에 따르면, 제4 세트의 포인트 각각은 거리, 앙각(elevation angle) 및 방위각(azimuth angle) 정보를 포함하고, 합성 레이더 데이터를 생성하는 단계는, 3차원 바운딩 박스 정보에 기초하여, 제3 세트의 포인트와 연관된 RCS(Radar Cross Section) 정보를 생성하는 단계 및 앙각 정보에 기초하여, 제4 세트의 포인트 각각에 대한 RCS 정보를 생성하는 단계를 더 포함할 수 있다.According to an embodiment of the present disclosure, each of the fourth set of points includes distance, elevation angle, and azimuth angle information, and the step of generating synthetic radar data is based on the three-dimensional bounding box information. Thus, the method may further include generating RCS (Radar Cross Section) information associated with the third set of points and generating RCS information for each of the fourth set of points based on the elevation angle information.

본 개시의 일 실시예에 따르면, 합성 레이더 데이터를 생성하는 단계는, 3차원 바운딩 박스 정보, 제1 외부 파라미터 및 제2 외부 파라미터에 기초하여, 제3 세트의 포인트의 상대 속도 정보를 산출하는 단계 및 제4 세트의 포인트 각각의 위치 정보, 제1 외부 파라미터 및 제2 외부 파라미터에 기초하여, 제4 세트의 포인트 각각의 상대 속도 정보를 산출하는 단계를 더 포함할 수 있다.According to an embodiment of the present disclosure, generating synthetic radar data includes calculating relative velocity information of a third set of points based on three-dimensional bounding box information, a first external parameter, and a second external parameter. and calculating relative speed information of each of the fourth set of points based on the position information, first external parameter, and second external parameter of each of the fourth set of points.

본 개시의 일 실시예에 따르면, 제2 세트의 포인트를 식별하는 단계는, 레이더 센서의 FOV 정보를 수신하는 단계, 레이더 센서의 FOV에 해당하는 영역을 복수의 빈(bin)으로 분할하는 단계, 제1 세트의 포인트를 상기 복수의 빈에 매핑하는 단계 및 복수의 빈 중 2개 이상의 포인트를 포함하는 빈들에 대해 빈 내에 하나의 포인트만 남기고 나머지 포인트를 제거하는 단계를 포함할 수 있다.According to one embodiment of the present disclosure, identifying the second set of points includes receiving FOV information of a radar sensor, dividing an area corresponding to the FOV of the radar sensor into a plurality of bins, It may include mapping a first set of points to the plurality of bins, and for bins containing two or more points among the plurality of bins, leaving only one point in the bin and removing the remaining points.

본 개시의 일 실시예에 따르면, 제2 세트의 포인트를 식별하는 단계는, 레이더 센서의 FOV 정보를 수신하는 단계, 레이더 센서의 FOV에 해당하는 영역을 복수의 빈으로 분할하는 단계, 제1 세트의 포인트를 복수의 빈에 매핑하는 단계 및 복수의 빈 중 하나의 포인트를 포함하는 빈들 중 일부에 대한 포인트를 제거하는 단계를 포함할 수 있다.According to one embodiment of the present disclosure, identifying the second set of points includes receiving FOV information of the radar sensor, dividing an area corresponding to the FOV of the radar sensor into a plurality of bins, and first set It may include mapping a point in a plurality of bins and removing a point for some of the bins containing one point among the plurality of bins.

본 개시의 일 실시예에 따르면, 합성 레이더 데이터는 복수의 포인트를 포함하고, 각 포인트는 위치 정보, 거리 정보, 상대 속도 정보 또는 RCS 정보 중 적어도 하나를 포함할 수 있다.According to an embodiment of the present disclosure, synthetic radar data includes a plurality of points, and each point may include at least one of location information, distance information, relative speed information, or RCS information.

본 개시의 일 실시예에 따른 방법을 컴퓨터에서 실행하기 위한 컴퓨터 판독 가능한 기록 매체에 저장된 컴퓨터 프로그램을 제공할 수 있다.A computer program stored in a computer-readable recording medium for executing the method according to an embodiment of the present disclosure on a computer may be provided.

본 개시의 일 실시예에 따르면,정보 처리 시스템으로서, 통신 모듈, 메모리 및 메모리와 연결되고, 메모리에 포함된 컴퓨터 판독 가능한 적어도 하나의 프로그램을 실행하도록 구성된 적어도 하나의 프로세서를 포함하고, 적어도 하나의 프로그램은, 라이다 센서에 의해 생성된 포인트 클라우드 데이터를 수신하고, 포인트 클라우드 데이터와 연관된 3차원 바운딩 박스 정보를 수신하고, 포인트 클라우드 데이터 및 3차원 바운딩 박스 정보에 기초하여, 포인트 클라우드 데이터와 대응하는 합성 레이더 데이터를 생성하기 위한 명령어들을 포함하고, 합성 레이더 데이터는 레이더 센서에 의해 생성된 데이터를 모사할 수 있다.According to an embodiment of the present disclosure, an information processing system includes a communication module, a memory, and at least one processor connected to the memory and configured to execute at least one computer-readable program included in the memory, and at least one The program receives point cloud data generated by the lidar sensor, receives three-dimensional bounding box information associated with the point cloud data, and, based on the point cloud data and three-dimensional bounding box information, generates a point cloud data corresponding to the point cloud data. It includes instructions for generating synthetic radar data, and the synthetic radar data can simulate data generated by a radar sensor.

본 개시의 일부 실시예에 따르면, 비교적 확보가 용이한 라이다 센서에 의해 생성된 데이터에 기초하여 합성 레이더 데이터를 생성함으로써, 대용량의 레이더 데이터를 확보할 수 있다. 이러한 대용량의 레이더 데이터는 레이더 센서와 연관된 인공 신경망 모델의 학습에 사용될 수 있다.According to some embodiments of the present disclosure, a large amount of radar data can be secured by generating synthetic radar data based on data generated by a lidar sensor that is relatively easy to secure. This large amount of radar data can be used to learn artificial neural network models associated with radar sensors.

본 개시의 일부 실시예에 따르면, 합성 레이더 데이터 생성 방법은 손쉽게 레이더 데이터를 생성할 수 있어, 데이터 취득 비용을 감소시킬 수 있다. According to some embodiments of the present disclosure, a synthetic radar data generation method can easily generate radar data, thereby reducing data acquisition costs.

본 개시의 일부 실시예에 따르면, 합성 레이더 데이터 생성 방법은 포인트 클라우드 데이터를 이용하므로, 라이다 센서의 기종과 무관하게 합성 레이더 데이터를 생성할 수 있다. 또한, 합성 레이더 데이터 생성 방법은 포인트 클라우드 데이터 및 3차원 바운딩 박스 정보를 이용하므로, 실제 현실뿐만 아니라 가상 현실, 시뮬레이션 환경 등에 대해서도 동일하게 적용될 수 있다.According to some embodiments of the present disclosure, the synthetic radar data generation method uses point cloud data, so synthetic radar data can be generated regardless of the type of lidar sensor. Additionally, since the synthetic radar data generation method uses point cloud data and 3D bounding box information, it can be equally applied not only to real reality but also to virtual reality and simulation environments.

본 개시의 일부 실시예에 따르면, 합성 레이더 데이터에 포함된 포인트의 정보는 실제 레이더 센서에 의해 생성되는 포인트의 정보와 동일한 요소를 포함할 수 있다. 이와 같이, 합성 레이더 데이터는 레이더 센서가 생성할 수 있는 데이터 요소를 포함함으로써, 레이더 센서에 의해 생성된 데이터를 모사할 수 있다.According to some embodiments of the present disclosure, point information included in synthetic radar data may include the same elements as point information generated by an actual radar sensor. In this way, synthetic radar data can simulate data generated by a radar sensor by including data elements that the radar sensor can generate.

본 개시의 일부 실시예에 따르면, 복수의 빈에 대해 필터링 및/또는 드롭핑을 수행하는 단계에서 확률을 이용하여 포인트를 제거할 수 있다. 이 경우, 확률을 세밀하게 조절함으로써 합성 레이더 데이터 생성 방법은 레이더 센서에 의해 생성된 데이터와 더욱 유사하게 만들 수 있다.According to some embodiments of the present disclosure, points may be removed using probability in the step of performing filtering and/or dropping on a plurality of bins. In this case, by fine-tuning the probability, the synthetic radar data generation method can be made more similar to data generated by radar sensors.

본 개시의 일부 실시예에 따르면, 생성된 합성 레이더 데이터는 라이다 센서에 의해 측정된 포인트의 밀도를 낮추어, 레이더 센서에 의해 생성된 데이터를 더욱 유사하게 모사할 수 있다.According to some embodiments of the present disclosure, the generated synthetic radar data can more closely mimic the data generated by the radar sensor by lowering the density of points measured by the lidar sensor.

본 개시의 효과는 이상에서 언급한 효과로 제한되지 않으며, 언급되지 않은 다른 효과들은 청구범위의 기재로부터 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자("통상의 기술자"라 함)에게 명확하게 이해될 수 있을 것이다.The effects of the present disclosure are not limited to the effects mentioned above, and other effects not mentioned are clear to a person skilled in the art (referred to as “a person skilled in the art”) in the technical field to which this disclosure pertains from the description of the claims. It will be understandable.

본 개시의 실시예들은, 이하 설명하는 첨부 도면들을 참조하여 설명될 것이며, 여기서 유사한 참조 번호는 유사한 요소들을 나타내지만, 이에 한정되지는 않는다.
도 1은 본 개시의 일 실시예에 따른 합성 레이더 데이터를 생성하는 모습의 예시를 나타내는 개요도이다.
도 2는 본 개시의 일 실시예에 따른 컴퓨팅 장치의 내부 구성을 나타내는 블록도이다.
도 3은 본 개시의 일 실시예에 따른 합성 레이더 데이터 생성하는 과정의 예시에 대한 흐름도이다.
도 4는 본 개시의 일 실시예에 따른 포인트 클라우드 데이터의 일 예시를 나타낸 도면이다.
도 5는 본 개시의 일 실시예에 따른 복수의 빈에 대한 매핑, 필터링 및 드롭핑 과정의 일 예시를 나타낸 도면이다.
도 6은 본 개시의 일 실시예에 따른 복수의 빈에 대한 매핑, 필터링 및 드롭핑 과정의 일 예시를 나타낸 도면이다.
도 7은 본 개시의 일 실시예에 따른 동적 객체와 연관된 도플러 속도를 산출하는 과정을 나타내는 도면이다.
도 8은 본 개시의 일 실시예에 따른 정적 객체와 연관된 도플러 속도를 산출하는 과정을 나타내는 도면이다.
도 9는 본 개시의 일 실시예에 따른 합성 레이더 데이터 생성 방법의 예시를 나타내는 흐름도이다.
Embodiments of the present disclosure will be described with reference to the accompanying drawings described below, in which like reference numerals indicate like elements, but are not limited thereto.
1 is a schematic diagram illustrating an example of generating synthetic radar data according to an embodiment of the present disclosure.
Figure 2 is a block diagram showing the internal configuration of a computing device according to an embodiment of the present disclosure.
Figure 3 is a flowchart of an example of a process for generating synthetic radar data according to an embodiment of the present disclosure.
Figure 4 is a diagram showing an example of point cloud data according to an embodiment of the present disclosure.
Figure 5 is a diagram illustrating an example of a mapping, filtering, and dropping process for a plurality of bins according to an embodiment of the present disclosure.
FIG. 6 is a diagram illustrating an example of a mapping, filtering, and dropping process for a plurality of bins according to an embodiment of the present disclosure.
FIG. 7 is a diagram illustrating a process for calculating Doppler velocity associated with a dynamic object according to an embodiment of the present disclosure.
FIG. 8 is a diagram illustrating a process for calculating a Doppler velocity associated with a static object according to an embodiment of the present disclosure.
Figure 9 is a flowchart illustrating an example of a method for generating synthetic radar data according to an embodiment of the present disclosure.

이하, 본 개시의 실시를 위한 구체적인 내용을 첨부된 도면을 참조하여 상세히 설명한다. 다만, 이하의 설명에서는 본 개시의 요지를 불필요하게 흐릴 우려가 있는 경우, 널리 알려진 기능이나 구성에 관한 구체적 설명은 생략하기로 한다.Hereinafter, specific details for implementing the present disclosure will be described in detail with reference to the attached drawings. However, in the following description, detailed descriptions of well-known functions or configurations will be omitted if there is a risk of unnecessarily obscuring the gist of the present disclosure.

첨부된 도면에서, 동일하거나 대응하는 구성요소에는 동일한 참조부호가 부여되어 있다. 또한, 이하의 실시예들의 설명에 있어서, 동일하거나 대응되는 구성요소를 중복하여 기술하는 것이 생략될 수 있다. 그러나, 구성요소에 관한 기술이 생략되어도, 그러한 구성요소가 어떤 실시예에 포함되지 않는 것으로 의도되지는 않는다.In the accompanying drawings, identical or corresponding components are given the same reference numerals. Additionally, in the description of the following embodiments, overlapping descriptions of identical or corresponding components may be omitted. However, even if descriptions of components are omitted, it is not intended that such components are not included in any embodiment.

개시된 실시예의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 개시는 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 개시가 완전하도록 하고, 본 개시가 통상의 기술자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것일 뿐이다.Advantages and features of the disclosed embodiments and methods for achieving them will become clear by referring to the embodiments described below in conjunction with the accompanying drawings. However, the present disclosure is not limited to the embodiments disclosed below and may be implemented in various different forms. The present embodiments are merely provided to ensure that the present disclosure is complete and that the present disclosure does not convey the scope of the invention to those skilled in the art. It is provided only for complete information.

본 명세서에서 사용되는 용어에 대해 간략히 설명하고, 개시된 실시예에 대해 구체적으로 설명하기로 한다. 본 명세서에서 사용되는 용어는 본 개시에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 관련 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서, 본 개시에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 개시의 전반에 걸친 내용을 토대로 정의되어야 한다.Terms used in this specification will be briefly described, and the disclosed embodiments will be described in detail. The terms used in this specification are general terms that are currently widely used as much as possible while considering the functions in the present disclosure, but this may vary depending on the intention or precedent of a technician working in the related field, the emergence of new technology, etc. In addition, in certain cases, there are terms arbitrarily selected by the applicant, and in this case, the meaning will be described in detail in the description of the relevant invention. Accordingly, the terms used in this disclosure should be defined based on the meaning of the term and the overall content of the present disclosure, rather than simply the name of the term.

본 명세서에서의 단수의 표현은 문맥상 명백하게 단수인 것으로 특정하지 않는 한, 복수의 표현을 포함한다. 또한, 복수의 표현은 문맥상 명백하게 복수인 것으로 특정하지 않는 한, 단수의 표현을 포함한다. 명세서 전체에서 어떤 부분이 어떤 구성요소를 포함한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다.In this specification, singular expressions include plural expressions, unless the context clearly specifies the singular. Additionally, plural expressions include singular expressions, unless the context clearly specifies plural expressions. When it is said that a certain part includes a certain element throughout the specification, this does not mean excluding other elements, but may further include other elements, unless specifically stated to the contrary.

또한, 명세서에서 사용되는 '모듈' 또는 '부'라는 용어는 소프트웨어 또는 하드웨어 구성요소를 의미하며, '모듈' 또는 '부'는 어떤 역할들을 수행한다. 그렇지만, '모듈' 또는 '부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '모듈' 또는 '부'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서, '모듈' 또는 '부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 또는 변수들 중 적어도 하나를 포함할 수 있다. 구성요소들과 '모듈' 또는 '부'들은 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '모듈' 또는 '부'들로 결합되거나 추가적인 구성요소들과 '모듈' 또는 '부'들로 더 분리될 수 있다.Additionally, the term 'module' or 'unit' used in the specification refers to a software or hardware component, and the 'module' or 'unit' performs certain roles. However, 'module' or 'unit' is not limited to software or hardware. A 'module' or 'unit' may be configured to reside on an addressable storage medium and may be configured to run on one or more processors. Thus, as an example, a 'module' or 'part' refers to components such as software components, object-oriented software components, class components and task components, processes, functions and properties. , procedures, subroutines, segments of program code, drivers, firmware, microcode, circuits, data, databases, data structures, tables, arrays, or variables. Components and 'modules' or 'parts' may be combined into smaller components and 'modules' or 'parts' or further components and 'modules' or 'parts'. Could be further separated.

본 개시의 일 실시예에 따르면, '모듈' 또는 '부'는 프로세서 및 메모리로 구현될 수 있다. '프로세서'는 범용 프로세서, 중앙 처리 장치(CPU), 마이크로프로세서, 디지털 신호 프로세서(DSP), 제어기, 마이크로제어기, 상태 머신 등을 포함하도록 넓게 해석되어야 한다. 몇몇 환경에서, '프로세서'는 주문형 반도체(ASIC), 프로그램가능 로직 디바이스(PLD), 필드 프로그램가능 게이트 어레이(FPGA) 등을 지칭할 수도 있다. '프로세서'는, 예를 들어, DSP와 마이크로프로세서의 조합, 복수의 마이크로프로세서들의 조합, DSP 코어와 결합한 하나 이상의 마이크로프로세서들의 조합, 또는 임의의 다른 그러한 구성들의 조합과 같은 처리 디바이스들의 조합을 지칭할 수도 있다. 또한, '메모리'는 전자 정보를 저장 가능한 임의의 전자 컴포넌트를 포함하도록 넓게 해석되어야 한다. '메모리'는 임의 액세스 메모리(RAM), 판독-전용 메모리(ROM), 비-휘발성 임의 액세스 메모리(NVRAM), 프로그램가능 판독-전용 메모리(PROM), 소거-프로그램가능 판독 전용 메모리(EPROM), 전기적으로 소거가능 PROM(EEPROM), 플래쉬 메모리, 자기 또는 광학 데이터 저장장치, 레지스터들 등과 같은 프로세서-판독가능 매체의 다양한 유형들을 지칭할 수도 있다. 프로세서가 메모리로부터 정보를 판독하고/하거나 메모리에 정보를 기록할 수 있다면 메모리는 프로세서와 전자 통신 상태에 있다고 불린다. 프로세서에 집적된 메모리는 프로세서와 전자 통신 상태에 있다.According to an embodiment of the present disclosure, a 'module' or 'unit' may be implemented with a processor and memory. 'Processor' should be interpreted broadly to include general-purpose processors, central processing units (CPUs), microprocessors, digital signal processors (DSPs), controllers, microcontrollers, state machines, etc. In some contexts, 'processor' may refer to an application-specific integrated circuit (ASIC), programmable logic device (PLD), field programmable gate array (FPGA), etc. 'Processor' refers to a combination of processing devices, for example, a combination of a DSP and a microprocessor, a combination of a plurality of microprocessors, a combination of one or more microprocessors in combination with a DSP core, or any other such combination of configurations. You may. Additionally, 'memory' should be interpreted broadly to include any electronic component capable of storing electronic information. 'Memory' refers to random access memory (RAM), read-only memory (ROM), non-volatile random access memory (NVRAM), programmable read-only memory (PROM), erasable-programmable read-only memory (EPROM), May also refer to various types of processor-readable media, such as electrically erasable PROM (EEPROM), flash memory, magnetic or optical data storage, registers, etc. A memory is said to be in electronic communication with a processor if the processor can read information from and/or write information to the memory. The memory integrated into the processor is in electronic communication with the processor.

또한, 이하의 실시예들에서 사용되는 제1, 제2, A, B, (a), (b) 등의 용어는 어떤 구성요소를 다른 구성요소와 구별하기 위해 사용되는 것일 뿐, 그 용어에 의해 해당 구성요소의 본질이나 차례 또는 순서 등이 한정되지는 않는다.In addition, terms such as first, second, A, B, (a), (b) used in the following embodiments are only used to distinguish one component from another component, and the terms The nature, sequence, or order of the relevant components are not limited.

또한, 이하의 실시예들에서, 어떤 구성요소가 다른 구성요소에 '연결', '결합' 또는 '접속'된다고 기재된 경우, 그 구성요소는 그 다른 구성요소에 직접적으로 연결되거나 또는 접속될 수 있지만, 각 구성요소 사이에 또 다른 구성요소가 '연결', '결합' 또는 '접속'될 수도 있다고 이해되어야 한다.Additionally, in the following embodiments, when a component is described as being 'connected', 'coupled' or 'connected' to another component, the component may be directly connected or connected to the other component. , it should be understood that another component may be 'connected', 'combined', or 'connected' between each component.

본 개시에서, '복수의 A 각각' 은 복수의 A에 포함된 모든 구성 요소의 각각을 지칭하거나, 복수의 A에 포함된 일부 구성 요소의 각각을 지칭할 수 있다.In the present disclosure, 'each of a plurality of A' may refer to each of all components included in a plurality of A, or may refer to each of some components included in a plurality of A.

또한, 이하의 실시예들에서 사용되는 '포함한다(comprises)' 및/또는 '포함하는(comprising)'은 언급된 구성요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.In addition, as used in the following embodiments, 'comprises' and/or 'comprising' means that the mentioned component, step, operation, and/or element includes one or more other components, steps, or operations. and/or the presence or addition of elements.

본 개시에서, '시스템'은 서버 장치와 클라우드 장치 중 적어도 하나의 장치를 포함할 수 있으나, 이에 한정되는 것은 아니다. 예를 들어, 시스템은 하나 이상의 서버 장치로 구성될 수 있다. 다른 예로서, 시스템은 하나 이상의 클라우드 장치로 구성될 수 있다. 또 다른 예로서, 시스템은 서버 장치와 클라우드 장치가 함께 구성되어 동작될 수 있다.In the present disclosure, 'system' may include at least one of a server device and a cloud device, but is not limited thereto. For example, a system may consist of one or more server devices. As another example, a system may consist of one or more cloud devices. As another example, the system may be operated with a server device and a cloud device configured together.

도 1은 본 개시의 일 실시예에 따른 합성 레이더 데이터(150)를 생성하는 모습의 예시를 나타내는 개요도이다. 합성 레이더 데이터 생성 시스템(140)은 포인트 클라우드 데이터(110), 라이다 센서와 연관된 정보(120) 및 레이더 센서와 연관된 정보(130)를 수신할 수 있다. 합성 레이더 데이터 생성 시스템(140)은 포인트 클라우드 데이터(110), 라이다 센서와 연관된 정보(120) 및 레이더 센서와 연관된 정보(130)에 기초하여 합성 레이더 데이터(150)를 생성할 수 있다.Figure 1 is a schematic diagram showing an example of generating synthetic radar data 150 according to an embodiment of the present disclosure. Synthetic radar data generation system 140 may receive point cloud data 110, information 120 associated with a lidar sensor, and information 130 associated with a radar sensor. The synthetic radar data generation system 140 may generate synthetic radar data 150 based on point cloud data 110, information 120 associated with the lidar sensor, and information 130 associated with the radar sensor.

일 실시예에서, 포인트 클라우드 데이터(110)는 라이다(LiDAR: Light Detection And Ranging) 센서에 의해 생성된 데이터일 수 있다. 여기서, 포인트 클라우드 데이터(110)는 3차원 공간 및 객체를 표현하기 위한 데이터의 집합을 지칭할 수 있다. 예를 들어, 포인트 클라우드 데이터(110)는 차량이 주행하면서 차량에 장착된 라이다 센서에 의해 생성될 수 있다. 포인트 클라우드 데이터(110)를 이용하여 3차원 가상 현실을 구현할 수 있다. 포인트 클라우드 데이터(110) 내의 각 포인트는 위치 정보(예를 들어, 3차원 좌표값)과 신호 강도(intensity) 정보를 포함할 수 있다. 포인트 클라우드 데이터(110)가 시각화 된 모습은 도 4를 참고하여 상세히 설명한다.In one embodiment, the point cloud data 110 may be data generated by a LiDAR (Light Detection And Ranging) sensor. Here, point cloud data 110 may refer to a set of data for expressing three-dimensional space and objects. For example, the point cloud data 110 may be generated by a LiDAR sensor mounted on the vehicle while the vehicle is driving. Three-dimensional virtual reality can be implemented using point cloud data 110. Each point in the point cloud data 110 may include location information (eg, 3D coordinate values) and signal intensity information. The visualization of the point cloud data 110 will be described in detail with reference to FIG. 4.

일 실시예에서, 합성 레이더 데이터 생성 시스템(140)은 포인트 클라우드 데이터(110)와 연관된 3차원 바운딩 박스(bounding box) 정보를 수신할 수 있다. 여기서, 3차원 바운딩 박스는 이미지에서 검출된 객체를 둘러싸는 최소 크기의 육면체 영역을 지칭할 수 있다. 3차원 바운딩 박스 정보는 3차원 객체 인식 모델에 의해 생성될 수 있다. 다른 실시예에서, 합성 레이더 데이터 생성 시스템(140)은 포인트 클라우드 데이터(110)에 기초하여 3차원 바운딩 박스 정보를 산출하여 이용할 수 있다. 또 다른 실시예에서, 합성 레이더 데이터 생성 시스템(140)은 사용자, 외부 장치 등으로부터 3차원 바운딩 박스 정보를 수신할 수 있다. In one embodiment, synthetic radar data generation system 140 may receive three-dimensional bounding box information associated with point cloud data 110. Here, the 3D bounding box may refer to a hexahedral area of the minimum size surrounding the object detected in the image. 3D bounding box information can be generated by a 3D object recognition model. In another embodiment, the synthetic radar data generation system 140 may calculate and use 3D bounding box information based on the point cloud data 110. In another embodiment, the synthetic radar data generation system 140 may receive 3D bounding box information from a user, an external device, etc.

일 실시예에서, 3차원 바운딩 박스 정보는 위치 정보, 배향 정보, 클래스 정보, 너비 정보, 높이 정보, 깊이 정보 또는 상대 속도 정보 중 적어도 하나를 포함할 수 있다. 여기서 클래스 정보는 객체의 종류와 연관될 수 있다. 예를 들어, 클래스 정보는 동적 객체 중 차량과 연관된 클래스를 포함할 수 있다. 추가적으로, 합성 레이더 데이터 생성 시스템(140)은 클래스 정보(예를 들어, 클래스 정보와 인식된 객체의 실제 정보가 상이한 경우)가 특정 입력을 수신함으로써 수정될 수 있다. 또한, 위치 정보 또는 상대 속도 정보는 라이다 좌표계(예를 들어, 라이다 센서가 위치한 지점이 원점인 좌표계)를 기준으로 생성된 정보일 수 있다.In one embodiment, the 3D bounding box information may include at least one of position information, orientation information, class information, width information, height information, depth information, or relative speed information. Here, class information may be related to the type of object. For example, class information may include a class related to a vehicle among dynamic objects. Additionally, the synthetic radar data generation system 140 may modify class information (e.g., when class information and actual information of a recognized object are different) by receiving specific input. Additionally, the position information or relative speed information may be information generated based on a LiDAR coordinate system (for example, a coordinate system in which the point where the LiDAR sensor is located is the origin).

일 실시예에서, 라이다 센서와 연관된 정보(120)는 포인트 클라우드 데이터(110)를 생성하는데 이용된 라이다 센서와 연관된 정보일 수 있다. 라이다 센서와 연관된 정보(120)는 라이다 센서와 연관된 제1 외부 파라미터(extrinsic parameter)를 포함할 수 있다. 여기서, 제1 외부 파라미터는 특정 좌표계(예를 들어, 절대 좌표계, 글로벌 좌표계 등) 내에서 라이다 센서의 위치 정보, 방향 정보(예를 들어, 시야 방향 정보, 6 DoF(Degree of Freedom) 정보 등) 등을 포함할 수 있다. In one embodiment, the information 120 associated with the LiDAR sensor may be information associated with the LiDAR sensor used to generate the point cloud data 110. Information 120 associated with the LiDAR sensor may include a first extrinsic parameter associated with the LiDAR sensor. Here, the first external parameter is position information and direction information (e.g., viewing direction information, 6 DoF (Degree of Freedom) information, etc.) of the LiDAR sensor within a specific coordinate system (e.g., absolute coordinate system, global coordinate system, etc.) ), etc. may be included.

일 실시예에서, 레이더 센서와 연관된 정보(130)는 모사하고자 하는 가상의 레이더 센서에 대한 정보일 수 있다. 예를 들어, 가상의 레이더 센서는 합성 레이더 데이터(150)를 생성하는 주체일 수 있다. 일 예시에서, 레이더 센서와 연관된 정보(130)는 레이더 센서와 연관된 제2 외부 파라미터, 레이더 센서의 FOV(Field Of View)의 정보, 방위각(azimuth) 해상도(예를 들어, 약 0.5도), 탐지 가능 거리(예를 들어, 약 100m), 탐지 거리 해상도(예를 들어, 약 0.5m) 등을 포함할 수 있다. 여기서, 레이더 센서의 FOV는 레이더 센서에 의해 탐지될 수 있는 시야각을 의미할 수 있다. 예를 들어, 레이더 센서의 FOV 정보는 90도일 있다. 또한, 제2 외부 파라미터는 특정 좌표계(예를 들어, 절대 좌표계, 글로벌 좌표계 등) 내에서 레이더 센서의 위치 정보, 방향 정보(예를 들어, 시야 방향 정보) 등을 포함할 수 있다. 이러한 레이더 센서와 연관된 정보(130)는 생성하고자 하는 합성 레이더 데이터(150)에 기초하여 결정/선택될 수 있다.In one embodiment, the information 130 associated with the radar sensor may be information about a virtual radar sensor to be simulated. For example, a virtual radar sensor may be the entity that generates synthetic radar data 150. In one example, the information 130 associated with the radar sensor includes a second external parameter associated with the radar sensor, information about the field of view (FOV) of the radar sensor, azimuth resolution (e.g., about 0.5 degrees), and detection. It may include possible range (e.g., about 100 m), detection distance resolution (e.g., about 0.5 m), etc. Here, the FOV of the radar sensor may mean the viewing angle that can be detected by the radar sensor. For example, the FOV of a radar sensor may be 90 degrees. Additionally, the second external parameter may include location information and direction information (e.g., viewing direction information) of the radar sensor within a specific coordinate system (e.g., absolute coordinate system, global coordinate system, etc.). Information 130 associated with these radar sensors may be determined/selected based on synthetic radar data 150 to be generated.

합성 레이더 데이터 생성 시스템(140)은 포인트 클라우드 데이터(110) 및 3차원 바운딩 박스 정보에 기초하여 포인트 클라우드 데이터(110)와 대응하는 합성 레이더 데이터(150)를 생성할 수 있다. 이 때, 라이다 센서와 연관된 정보(120) 및 레이더 센서와 연관된 정보(130)가 함께 이용될 수 있다. 여기서, 합성 레이더 데이터(150)는 레이더 센서에 의해 생성된 데이터를 모사할 수 있다. 즉, 합성 레이더 데이터(150)는 레이더 센서로 직접 측정하여 생성된 데이터와 유사할 수 있다. 합성 레이더 데이터(150)를 생성하는 구체적인 과정은 도 3을 참고하여 설명한다. The synthetic radar data generation system 140 may generate synthetic radar data 150 corresponding to the point cloud data 110 based on the point cloud data 110 and 3D bounding box information. At this time, information 120 associated with the lidar sensor and information 130 associated with the radar sensor may be used together. Here, the synthetic radar data 150 may simulate data generated by a radar sensor. That is, the synthetic radar data 150 may be similar to data generated by direct measurement with a radar sensor. The specific process of generating synthetic radar data 150 will be described with reference to FIG. 3.

이러한 구성에 의해, 라이다 센서에 의해 생성된 데이터에 기초하여 합성 레이더 데이터(150)를 생성할 수 있다. 상대적으로 레이더 센서에 의해 생성된 데이터는 라이다 센서에 의해 생성된 데이터보다 확보하기 어려울 수 있다. 이 경우, 확보가 용이한 라이다 센서에 의해 생성된 데이터에 기초하여 합성 레이더 데이터(150)를 생성함으로써, 대용량의 레이더 데이터를 확보할 수 있다. 이러한 대용량의 레이더 데이터는 레이더 센서와 연관된 인공신경망 모델의 학습에 사용될 수 있다.With this configuration, synthetic radar data 150 can be generated based on data generated by the lidar sensor. Relatively, data generated by radar sensors may be more difficult to obtain than data generated by LiDAR sensors. In this case, a large amount of radar data can be secured by generating synthetic radar data 150 based on data generated by a lidar sensor that is easy to secure. This large amount of radar data can be used to learn artificial neural network models associated with radar sensors.

실제 레이더 데이터를 생성하기 위해, 레이더 센서가 장착된 차량, 드론 등의 운행이 필요할 수 있다. 본 개시에 따른 합성 레이더 데이터 생성 방법은 이러한 운행 없이 합성 레이더 데이터를 생성할 수 있어, 데이터 취득 비용을 크게 감소시킬 수 있다. 추가적으로, 본 개시에 따른 합성 레이더 데이터 생성 방법은 포인트 클라우드 데이터를 이용하므로, 라이다 센서의 기종과 무관하게 합성 레이더 데이터를 생성할 수 있다. 또한, 본 개시에 따른 합성 레이더 데이터 생성 방법은 포인트 클라우드 데이터 및 3차원 바운딩 박스 정보를 이용하므로, 실제 현실뿐만 아니라 가상 현실, 시뮬레이션 환경 등에 대해서도 동일하게 적용될 수 있다.To generate actual radar data, it may be necessary to operate a vehicle or drone equipped with a radar sensor. The synthetic radar data generation method according to the present disclosure can generate synthetic radar data without such operation, thereby significantly reducing data acquisition costs. Additionally, since the method for generating synthetic radar data according to the present disclosure uses point cloud data, synthetic radar data can be generated regardless of the type of lidar sensor. Additionally, since the method for generating synthetic radar data according to the present disclosure uses point cloud data and 3D bounding box information, it can be equally applied not only to real reality but also to virtual reality and simulation environments.

도 2는 본 개시의 일 실시예에 따른 컴퓨팅 장치(200)의 내부 구성을 나타내는 블록도이다. 컴퓨팅 장치(200)는 메모리(210), 프로세서(220), 통신 모듈(230) 및 입출력 인터페이스(240)를 포함할 수 있다. 도 3에 도시된 바와 같이, 컴퓨팅 장치(200)는 통신 모듈(230)을 이용하여 네트워크를 통해 정보 및/또는 데이터를 통신할 수 있도록 구성될 수 있다. 구체적으로, 사용자는 도 1의 합성 레이더 데이터(150)를 생성하기 위해 합성 레이더 데이터 생성 시스템(140)을 이용할 수 있고, 합성 레이더 데이터 생성 시스템(140)은 하나 이상의 컴퓨팅 장치(200)를 포함할 수 있다.FIG. 2 is a block diagram showing the internal configuration of a computing device 200 according to an embodiment of the present disclosure. The computing device 200 may include a memory 210, a processor 220, a communication module 230, and an input/output interface 240. As shown in FIG. 3, the computing device 200 may be configured to communicate information and/or data over a network using the communication module 230. Specifically, a user may use synthetic radar data generation system 140 to generate synthetic radar data 150 of FIG. 1, and synthetic radar data generation system 140 may include one or more computing devices 200. You can.

메모리(210)는 비-일시적인 임의의 컴퓨터 판독 가능한 기록매체를 포함할 수 있다. 일 실시예에 따르면, 메모리(210)는 RAM(random access memory), ROM(read only memory), 디스크 드라이브, SSD(solid state drive), 플래시 메모리(flash memory) 등과 같은 비소멸성 대용량 저장 장치(permanent mass storage device)를 포함할 수 있다. 다른 예로서, ROM, SSD, 플래시 메모리, 디스크 드라이브 등과 같은 비소멸성 대용량 저장 장치는 메모리와는 구분되는 별도의 영구 저장 장치로서 컴퓨팅 장치(200)에 포함될 수 있다. 또한, 메모리(210)에는 운영체제와 적어도 하나의 프로그램 코드(예를 들어, 컴퓨팅 장치(210)에 설치되어 구동되는 합성 레이더 데이터를 생성 등을 위한 코드)가 저장될 수 있다.Memory 210 may include any non-transitory computer-readable recording medium. According to one embodiment, the memory 210 is a non-permanent mass storage device such as random access memory (RAM), read only memory (ROM), disk drive, solid state drive (SSD), flash memory, etc. mass storage device). As another example, non-perishable mass storage devices such as ROM, SSD, flash memory, disk drive, etc. may be included in the computing device 200 as a separate persistent storage device that is distinct from memory. Additionally, the memory 210 may store an operating system and at least one program code (eg, a code for generating synthetic radar data that is installed and driven in the computing device 210).

이러한 소프트웨어 구성요소들은 메모리(210)와는 별도의 컴퓨터에서 판독 가능한 기록매체로부터 로딩될 수 있다. 이러한 별도의 컴퓨터에서 판독 가능한 기록매체는 이러한 컴퓨팅 장치(200)에 직접 연결가능한 기록 매체를 포함할 수 있는데, 예를 들어, 플로피 드라이브, 디스크, 테이프, DVD/CD-ROM 드라이브, 메모리 카드 등의 컴퓨터에서 판독 가능한 기록매체를 포함할 수 있다. 다른 예로서, 소프트웨어 구성요소들은 컴퓨터에서 판독 가능한 기록매체가 아닌 통신 모듈(230)을 통해 메모리(210)에 로딩될 수도 있다. 예를 들어, 적어도 하나의 프로그램은 개발자들 또는 어플리케이션의 설치 파일을 배포하는 파일 배포 시스템이 통신 모듈(230)을 통해 제공하는 파일들에 의해 설치되는 컴퓨터 프로그램(예를 들어, 합성 레이더 데이터를 생성 등을 위한 프로그램 등)에 기반하여 메모리(210)에 로딩될 수 있다.These software components may be loaded from a computer-readable recording medium separate from the memory 210. Recording media readable by such a separate computer may include recording media directly connectable to the computing device 200, for example, floppy drives, disks, tapes, DVD/CD-ROM drives, memory cards, etc. It may include a computer-readable recording medium. As another example, software components may be loaded into the memory 210 through the communication module 230 rather than a computer-readable recording medium. For example, at least one program is a computer program (e.g., generates synthetic radar data) installed by files provided through the communication module 230 by developers or a file distribution system that distributes the installation file of the application. It may be loaded into the memory 210 based on a program (for example, etc.).

프로세서(220)는 기본적인 산술, 로직 및 입출력 연산을 수행함으로써, 컴퓨터 프로그램의 명령을 처리하도록 구성될 수 있다. 명령은 메모리(210) 또는 통신 모듈(230)에 의해 사용자 단말(미도시) 또는 다른 외부 시스템으로 제공될 수 있다. 예를 들어, 프로세서(220)는 포인트 클라우드 데이터 및 3차원 바운딩 박스 정보에 기초하여 포인트 클라우드 데이터와 대응하는 합성 레이더 데이터를 생성할 수 있다. 생성된 합성 레이더 데이터는 사용자 단말 또는 다른 외부 시스템으로 제공될 수 있다. The processor 220 may be configured to process instructions of a computer program by performing basic arithmetic, logic, and input/output operations. Commands may be provided to a user terminal (not shown) or another external system by the memory 210 or the communication module 230. For example, the processor 220 may generate synthetic radar data corresponding to the point cloud data based on the point cloud data and 3D bounding box information. The generated synthetic radar data may be provided to a user terminal or other external system.

통신 모듈(230)은 네트워크를 통해 사용자 단말(미도시)과 컴퓨팅 장치(200)가 서로 통신하기 위한 구성 또는 기능을 제공할 수 있으며, 컴퓨팅 장치(200)가 외부 시스템(일례로 별도의 클라우드 시스템 등)과 통신하기 위한 구성 또는 기능을 제공할 수 있다. 일례로, 컴퓨팅 장치(200)의 프로세서(220)의 제어에 따라 제공되는 제어 신호, 명령, 데이터 등이 통신 모듈(230)과 네트워크를 거쳐 사용자 단말 및/또는 외부 시스템의 통신 모듈을 통해 사용자 단말 및/또는 외부 시스템으로 전송될 수 있다. The communication module 230 may provide a configuration or function for a user terminal (not shown) and the computing device 200 to communicate with each other through a network, and the computing device 200 may be connected to an external system (for example, a separate cloud system). etc.) may provide a configuration or function for communication. For example, control signals, commands, data, etc. provided under the control of the processor 220 of the computing device 200 pass through the communication module 230 and the network to the user terminal and/or the communication module of the external system. and/or transmitted to an external system.

또한, 컴퓨팅 장치(200)의 입출력 인터페이스(240)는 컴퓨팅 장치(200)와 연결되거나 컴퓨팅 장치(200)가 포함할 수 있는 입력 또는 출력을 위한 장치(미도시)와의 인터페이스를 위한 수단일 수 있다. 도 2에서는 입출력 인터페이스(240)가 프로세서(220)와 별도로 구성된 요소로서 도시되었으나, 이에 한정되지 않으며, 입출력 인터페이스(240)가 프로세서(220)에 포함되도록 구성될 수 있다. 컴퓨팅 장치(200)는 도 2의 구성요소들보다 더 많은 구성요소들을 포함할 수 있다. 그러나, 대부분의 종래기술적 구성요소들을 명확하게 도시할 필요성은 없다.Additionally, the input/output interface 240 of the computing device 200 may be connected to the computing device 200 or may be a means for interfacing with a device (not shown) for input or output that the computing device 200 may include. . In FIG. 2 , the input/output interface 240 is shown as an element configured separately from the processor 220, but the present invention is not limited thereto, and the input/output interface 240 may be included in the processor 220. Computing device 200 may include more components than those of FIG. 2 . However, there is no need to clearly show most prior art components.

컴퓨팅 장치(200)의 프로세서(220)는 복수의 사용자 단말 및/또는 복수의 외부 시스템으로부터 수신된 정보 및/또는 데이터를 관리, 처리 및/또는 저장하도록 구성될 수 있다. 일 실시예에 따르면, 프로세서(220)는 라이다 센서에 의해 생성된 포인트 클라우드 데이터를 수신할 수 있다. 프로세서(220)는 포인트 클라우드 데이터와 연관된 3차원 바운딩 박스 정보를 수신할 수 있다. 프로세서(220)는 포인트 클라우드 데이터 및 3차원 바운딩 박스 정보에 기초하여 포인트 클라우드 데이터와 대응하는 합성 레이더 데이터를 생성할 수 있다. 이 때, 프로세서(220)는 컴퓨팅 장치(200)의 메모리(210)에 저장된 라이다 센서와 연관된 정보 및 레이더 센서와 연관된 정보를 이용할 수 있다.The processor 220 of the computing device 200 may be configured to manage, process, and/or store information and/or data received from a plurality of user terminals and/or a plurality of external systems. According to one embodiment, the processor 220 may receive point cloud data generated by a LiDAR sensor. Processor 220 may receive 3D bounding box information associated with point cloud data. The processor 220 may generate synthetic radar data corresponding to the point cloud data based on the point cloud data and 3D bounding box information. At this time, the processor 220 may use information associated with the lidar sensor and information associated with the radar sensor stored in the memory 210 of the computing device 200.

도 3은 본 개시의 일 실시예에 따른 합성 레이더 데이터 생성하는 과정(S300)의 예시에 대한 흐름도이다. 먼저, 프로세서(예를 들어, 도 1의 합성 레이더 데이터 생성 시스템(140)에 포함된 적어도 하나의 프로세서)는 라이다 센서에 의해 생성된 포인트 클라우드 데이터를 수신할 수 있다. 여기서, 포인트 클라우드 데이터는 제1 세트의 포인트를 포함할 수 있다. 또한, 프로세서는 포인트 클라우드 데이터와 연관된 3차원 바운딩 박스 정보를 수신/생성할 수 있다.Figure 3 is a flowchart of an example of a process (S300) for generating synthetic radar data according to an embodiment of the present disclosure. First, a processor (eg, at least one processor included in the synthetic radar data generation system 140 of FIG. 1) may receive point cloud data generated by the LIDAR sensor. Here, the point cloud data may include a first set of points. Additionally, the processor may receive/generate 3D bounding box information associated with point cloud data.

그 후, 프로세서는 제1 세트의 포인트를 구면 좌표계로 변환할 수 있다(S310). 구면 좌표계는 거리, 방위각(azimuth angle) 및 앙각(elevation angle)으로 나타낼 수 있다. 구체적으로, 구면 좌표계는 r, Ф(0<Ф<2π), θ(-π/2<θ<π/2) 로 나타낼 수 있다. 예를 들어, 제1 세트의 포인트 각각은 x, y, z의 좌표로 나타낼 수 있다. 변환된 제1 세트의 포인트 각각은 r, Ф, θ로 나타낼 수 있다.Afterwards, the processor may convert the first set of points into a spherical coordinate system (S310). A spherical coordinate system can be expressed in terms of distance, azimuth angle, and elevation angle. Specifically, the spherical coordinate system can be expressed as r, Ф(0<Ф<2π), and θ(-π/2<θ<π/2). For example, each point in the first set can be represented by x, y, and z coordinates. Each of the points of the converted first set can be expressed as r, Ф, and θ.

프로세서는 제1 세트의 포인트 중 레이더 센서의 FOV 내의 제2 세트의 포인트를 식별할 수 있다(S320). 이 때, 제1 세트의 포인트는 구면 좌표계로 변환된 것일 수 있다. 여기서, 레이더 센서의 FOV는 특정 시점에 레이더 센서에 의해 탐지될 수 있는 시야각을 의미할 수 있다. 구체적으로, 프로세서는 제1 세트의 포인트에서 구면 좌표계로 표현되는 레이더 센서의 FOV 내에 포함된 포인트들을 파악할 수 있다. 프로세서는 파악된 포인트들을 제2 세트의 포인트로 식별할 수 있다. 그 후, 식별된 제2 세트의 포인트는 별도로 저장할 수 있다. 추가적으로 또는 대안적으로, 제2 세트의 포인트로 식별되지 않은 제1 세트의 포인트는 제거될 수 있다.The processor may identify a second set of points within the FOV of the radar sensor among the first set of points (S320). At this time, the first set of points may have been converted to a spherical coordinate system. Here, the FOV of the radar sensor may mean the viewing angle that can be detected by the radar sensor at a specific point in time. Specifically, the processor may identify points included within the FOV of the radar sensor expressed in a spherical coordinate system from the first set of points. The processor may identify the identified points as a second set of points. The identified second set of points can then be stored separately. Additionally or alternatively, points in the first set that are not identified with points in the second set may be removed.

프로세서는 레이더 센서의 FOV에 해당하는 영역을 복수의 빈(bin)으로 분할할 수 있다(S330). 여기서, FOV에 해당하는 영역은 특정 시점에 레이더 센서에 의해 탐지될 수 있는 영역을 의미할 수 있다. FOV에 해당하는 영역은 레이더 센서의 위치 정보, FOV 정보와 레이더 센서의 탐지 가능 거리 정보에 기초하여 산출될 수 있다. 또한, 하나의 빈은 대상 영역을 세분화하여 구분한 특정 영역을 지칭할 수 있다. 예를 들어, 하나의 빈은 방위각이 '레이더 센서의 FOV ÷ 레이더 센서의 방위각 해상도'이고, 거리가'레이더 센서의 탐지 가능 거리 ÷ 레이더 센서의 탐지 거리 해상도'인 영역일 수 있다. 복수의 빈 각각은 자신의 위치 정보를 가질 수 있다. 레이더 센서의 FOV에 해당하는 영역을 복수의 빈으로 분할한 구체적인 모습은 도 5 및 도 6을 참고하여 설명한다.The processor may divide the area corresponding to the FOV of the radar sensor into a plurality of bins (S330). Here, the area corresponding to the FOV may mean an area that can be detected by a radar sensor at a specific time. The area corresponding to the FOV can be calculated based on the location information of the radar sensor, FOV information, and detectable distance information of the radar sensor. Additionally, one bin may refer to a specific area divided by subdividing the target area. For example, one bin may be an area where the azimuth is 'FOV of the radar sensor ÷ the azimuth resolution of the radar sensor' and the distance is 'the detectable range of the radar sensor ÷ the detection distance resolution of the radar sensor.' Each of the plurality of bins may have its own location information. The specific appearance of dividing the area corresponding to the FOV of the radar sensor into a plurality of bins will be described with reference to FIGS. 5 and 6.

프로세서는 제2 세트의 포인트를 복수의 빈에 매핑할 수 있다(S340). 구체적으로, 제2 세트의 포인트 각각의 위치 정보 및 복수의 빈 각각의 위치 정보에 기초하여 제2 세트의 포인트 각각은 복수의 빈에 매핑될 수 있다. 매핑된 제2 세트의 포인트 각각은 하나의 빈에 대응될 수 있다. 예를 들어, 복수의 빈 중 일부 각각은 하나 이상의 포인트를 포함할 수 있다. 복수의 빈 중 나머지는 포인트를 포함하지 않을 수 있다.The processor may map the second set of points to a plurality of bins (S340). Specifically, each point of the second set may be mapped to a plurality of bins based on the location information of each point of the second set and the location information of each of the plurality of bins. Each point in the second set of mapped points may correspond to one bin. For example, each of a plurality of bins may contain one or more points. The rest of the plurality of bins may not contain points.

도 3에서는 제2 세트의 포인트를 복수의 빈에 매핑하는 것(S340)으로 도시되어 있으나, 이에 한정되지 않는다. 예를 들어, 제1 세트의 포인트를 복수의 빈에 매핑할 수 있다. 이 때, 제1 세트의 포인트는 구면 좌표계로 변환된 것일 수 있다. 즉, 제2 세트의 포인트로 식별되지 않은 채로 제1 세트의 포인트가 복수의 빈에 매핑될 수 있다. 이 때, 매핑을 수행하면서 레이더 센서의 FOV 내에 포함되는 포인트만을 식별함으로써, 매핑과 함께 제2 세트의 포인트를 식별할 수 있다.In FIG. 3, mapping of the second set of points to a plurality of bins (S340) is shown, but the method is not limited thereto. For example, a first set of points can be mapped to a plurality of bins. At this time, the first set of points may have been converted to a spherical coordinate system. That is, points in the first set may be mapped to multiple bins without being identified with points in the second set. At this time, by identifying only the points included within the FOV of the radar sensor while performing mapping, a second set of points can be identified along with the mapping.

프로세서는 복수의 빈에 대해 필터링을 수행할 수 있다(S350). 여기서, 복수의 빈은 복수의 포인트의 매핑이 수행된 복수의 빈일 수 있다. 구체적으로, 프로세서는 복수의 빈 중 2개 이상의 포인트를 포함하는 빈들에 대해 빈 내에 하나의 포인트만 남기고, 나머지 포인트를 제거할 수 있다. 예를 들어, 하나의 빈에 3개의 포인트가 포함되어 있는 경우, 3개의 포인트 중 1개의 포인트만 남기고, 2개의 포인트를 제거할 수 있다. 여기서, 남겨질 하나의 포인트는 다양한 방법으로 결정될 수 있다. 예를 들어, 남겨질 하나의 포인트는 임의로 결정될 수 있다. 또 다른 예로, 남겨질 하나의 포인트는 빈의 중심 위치에 가장 가까운 포인트로 결정될 수 있다. 또 다른 예로, 남겨질 하나의 포인트는 빈에 포함되는 포인트들의 평균(mean) 좌표에 대응하는 포인트, 즉, 무게중심(centroid) 포인트로 결정될 수 있다.The processor may perform filtering on a plurality of bins (S350). Here, the plurality of bins may be a plurality of bins in which mapping of a plurality of points has been performed. Specifically, the processor may leave only one point in the bin for bins containing two or more points among a plurality of bins and remove the remaining points. For example, if one bin contains 3 points, 2 points can be removed, leaving only 1 point out of the 3 points. Here, the one point to be left behind can be determined in various ways. For example, the one point to be left behind may be determined arbitrarily. As another example, the one point to be left behind may be determined to be the point closest to the bin's center location. As another example, one point to be left may be determined as a point corresponding to the mean coordinate of the points included in the bin, that is, the centroid point.

프로세서는 복수의 빈에 대해 드롭핑을 수행할 수 있다(S360). 여기서, 복수의 빈은 복수의 포인트의 매핑이 수행된 복수의 빈 또는 필터링이 수행된 복수의 빈일 수 있다. 구체적으로, 프로세서는 복수의 빈 중 하나 이상의 포인트를 포함하는 빈들 중 일부에 대한 포인트를 제거할 수 있다. 예를 들어, 임의의 확률 또는 미리 결정된 확률로 하나 이상의 포인트를 포함하는 빈들 중 일부가 선택될 수 있다. 이 때, 임의의 확률 또는 미리 결정된 확률로 빈을 선택하는 것은 각 빈마다 독립적으로 시행될 수 있다. 하나 이상의 포인트를 포함하는 빈들 중 선택된 일부에 포함된 포인트(들)는 제거될 수 있다. The processor may perform dropping on multiple bins (S360). Here, the plurality of bins may be a plurality of bins in which mapping of a plurality of points is performed or a plurality of bins in which filtering is performed. Specifically, the processor may remove points for some of the bins that contain one or more points among the plurality of bins. For example, some of the bins containing one or more points may be selected with random or predetermined probability. At this time, selecting a bin with a random probability or a predetermined probability can be performed independently for each bin. Point(s) included in a selected portion of bins containing one or more points may be removed.

일 실시예에서, 프로세서는 필터링된 복수의 빈에 대해 드롭핑을 수행할 수 있다. 필터링된 복수의 빈 중 일부 각각은 하나의 포인트를 포함하고, 필터링된 복수의 빈 중 나머지 일부는 포인트를 포함하지 않을 수 있다. 이 경우, 하나의 포인트를 포함하는 빈들 중 일부에 대한 포인트가 제거됨으로써 드롭핑이 수행될 수 있다. 예를 들어, 임의의 확률 또는 미리 결정된 확률로 하나의 포인트를 포함하는 빈들 중 일부가 선택될 수 있다. 하나의 포인트를 포함하는 빈들 중 선택된 일부에 포함된 포인트(들)는 제거될 수 있다.In one embodiment, the processor may perform dropping on a plurality of filtered bins. Each of some of the plurality of filtered bins may include one point, and some of the remaining filtered bins may not contain any points. In this case, dropping may be performed by removing points for some of the bins containing one point. For example, some of the bins containing one point may be selected with random or predetermined probability. Point(s) included in a selected portion of bins containing one point may be removed.

프로세서는 포인트가 3차원 바운딩 박스에 포함되었는지 판정할 수 있다(S370). 예를 들어, 포인트는 상술한 제1 세트의 포인트 중 하나일 수 있다. 다른 예로서, 포인트는 상술한 제2 세트의 포인트 중 하나일 수 있다. 다른 예로서, 포인트는 필터링이 수행된 복수의 빈에 포함된 포인트 중 하나일 수 있다. 다른 예로서, 포인트는 드롭핑이 수행된 복수의 빈에 포함된 포인트 중 하나일 수 있다. 구체적으로, 프로세서는 포인트의 위치 정보 및 3차원 바운딩 박스의 위치 정보에 기초하여 포인트가 3차원 바운딩 박스에 포함되었는지 여부를 판정할 수 있다. 예를 들어, 프로세서는 3차원 바운딩 박스의 위치 정보에 기초하여 3차원 바운딩 박스의 내부 영역을 식별할 수 있다. 프로세서는 포인트의 위치 정보에 기초하여 식별된 3차원 바운딩 박스의 내부 영역에 포함되었는지 판정할 수 있다.The processor may determine whether the point is included in the 3D bounding box (S370). For example, the point may be one of the first set of points described above. As another example, the point may be one of the second set of points described above. As another example, the point may be one of the points included in a plurality of bins on which filtering was performed. As another example, the point may be one of the points included in a plurality of bins on which dropping was performed. Specifically, the processor may determine whether the point is included in the 3D bounding box based on the location information of the point and the location information of the 3D bounding box. For example, the processor may identify the inner area of the 3D bounding box based on the location information of the 3D bounding box. The processor may determine whether the point is included in the inner area of the identified 3D bounding box based on the location information.

프로세서는 3차원 바운딩 박스에 포함되지 않은 포인트를 제3 세트의 포인트 중 하나로 판정할 수 있다(S372). 또한, 프로세서는 3차원 바운딩 박스에 포함된 포인트를 제4 세트의 포인트 중 하나로 판정할 수 있다(S374). 즉, 제3 세트의 포인트는 3차원 바운딩 박스에 포함되지 않은 포인트를 포함하고, 제4 세트의 포인트는 3차원 바운딩 박스에 포함된 포인트를 포함할 수 있다. 여기서, 제4 세트의 포인트는 동적 객체와 연관된 포인트들의 집합이고, 제3 세트의 포인트는 정적 객체와 연관된 포인트들의 집합일 수 있다.The processor may determine a point not included in the 3D bounding box as one of the points in the third set (S372). Additionally, the processor may determine that the point included in the 3D bounding box is one of the points of the fourth set (S374). That is, the third set of points may include points not included in the 3D bounding box, and the fourth set of points may include points included in the 3D bounding box. Here, the fourth set of points may be a set of points associated with a dynamic object, and the third set of points may be a set of points associated with a static object.

프로세서는 제3 세트의 포인트와 연관된 RCS(Radar Cross Section) 정보를 생성할 수 있다(S382). 여기서, RCS 정보는 물체에 대한 레이더 센서의 전자기파 반사 특성을 나타낼 수 있다. 예를 들어, RCS 정보에 기초하여 대상 물체가 추론될 수 있다. 이와 같이, RCS 정보는 레이더 센서에 의해 생성되는 정보일 수 있다. 구체적으로, 프로세서는 제3 세트의 포인트를 동적 객체와 연관된 것으로 판정할 수 있다. 그 후, 3차원 바운딩 박스의 정보에 기초하여 제3 세트의 포인트의 RCS 정보가 생성될 수 있다. RCS 정보의 단위는 dBm2 또는 dBsm(decibel square meter)일 수 있다. The processor may generate Radar Cross Section (RCS) information associated with the third set of points (S382). Here, RCS information may indicate electromagnetic wave reflection characteristics of a radar sensor with respect to an object. For example, the target object may be inferred based on RCS information. As such, RCS information may be information generated by a radar sensor. Specifically, the processor may determine the third set of points as being associated with the dynamic object. Then, RCS information of a third set of points can be generated based on the information of the three-dimensional bounding box. The unit of RCS information may be dBm2 or dBsm (decibel square meter).

일 예시에서, 제1 3차원 바운딩 박스에 제3 세트의 포인트 중 일부가 포함될 수 있다. 이 때, 제1 3차원 바운딩 박스의 클래스 정보는 보행자와 연관될 수 있다. 이 경우, 제3 세트의 포인트 중 제1 3차원 바운딩 박스에 포함된 포인트 각각은 RCS 정보로서 -5 내지 0의 값이 할당될 수 있다. 예를 들어, 제3 세트의 포인트 중 제1 3차원 바운딩 박스에 포함된 포인트 각각은 RCS 정보로서 0이 할당될 수 있다. 다른 예시에서, 제2 3차원 바운딩 박스에 제3 세트의 포인트 중 일부가 포함될 수 있다. 이 때, 제2 3차원 바운딩 박스의 클래스 정보는 차량과 연관될 수 있다. 이 경우, 제3 세트의 포인트 중 제2 3차원 바운딩 박스에 포함된 포인트 각각은 RCS 정보로서 -5 내지 25의 값이 할당될 수 있다. 예를 들어, 제3 세트의 포인트 중 제2 3차원 바운딩 박스에 포함된 포인트 각각은 RCS 정보로서 10 또는 20이 할당될 수 있다. In one example, some of the third set of points may be included in the first three-dimensional bounding box. At this time, the class information of the first 3D bounding box may be related to the pedestrian. In this case, each of the points included in the first 3D bounding box among the third set of points may be assigned a value of -5 to 0 as RCS information. For example, among the points in the third set, each point included in the first 3D bounding box may be assigned 0 as RCS information. In another example, the second three-dimensional bounding box may include some of the third set of points. At this time, the class information of the second 3D bounding box may be related to the vehicle. In this case, each of the points included in the second 3D bounding box among the third set of points may be assigned a value of -5 to 25 as RCS information. For example, among the points in the third set, each point included in the second 3D bounding box may be assigned 10 or 20 as RCS information.

RCS 정보는 3차원 바운딩 박스 또는 3차원 바운딩 박스와 연관된 물체의 배향(orientation) 또는 위치 정보에 기초하여 결정될 수 있다. 예를 들어, 레이더 센서가 차량(또는 상술한 예시에서 제2 3차원 바운딩 박스)의 좌측면, 우측면 또는 후면을 지향하는 경우, 제3 세트의 포인트 중 제2 3차원 바운딩 박스에 포함된 포인트 각각은 RCS 정보로서 23의 값이 할당될 수 있다. 또 다른 예로, 레이더 센서가 차량(또는 상술한 예시에서 제2 3차원 바운딩 박스)의 정면을 지향하는 경우, 제3 세트의 포인트 중 제2 3차원 바운딩 박스에 포함된 포인트 각각은 RCS 정보로서 15의 값이 할당될 수 있다. 프로세서는 메모리(예를 들어, 도 1의 합성 레이더 데이터 생성 시스템(140)에 포함된 적어도 하나의 메모리)를 판독하여 차량 등 물체의 배향 또는 위치 정보에 대응하는 RCS 정보를 확인하고, 확인된 정보를 기초로 포인트에 RCS 정보를 할당할 수 있다.RCS information may be determined based on the orientation or position information of the 3D bounding box or an object associated with the 3D bounding box. For example, if the radar sensor is aimed at the left side, right side, or rear of the vehicle (or the second three-dimensional bounding box in the above example), each of the points included in the second three-dimensional bounding box among the third set of points A value of 23 may be assigned as RCS information. As another example, when the radar sensor is aimed at the front of the vehicle (or the second 3-dimensional bounding box in the above-mentioned example), each of the points included in the second 3-dimensional bounding box among the third set of points is RCS information 15 A value may be assigned. The processor reads the memory (e.g., at least one memory included in the synthetic radar data generation system 140 of FIG. 1) to confirm RCS information corresponding to the orientation or location information of an object such as a vehicle, and generates the confirmed information. RCS information can be assigned to points based on .

프로세서는 제4 세트의 포인트와 연관된 RCS(Radar Cross Section) 정보를 생성할 수 있다(S384). 구체적으로, 프로세서는 제4 세트의 포인트를 정적 객체와 연관된 것으로 판정할 수 있다. 그 후, 프로세서는 제4 세트의 포인트 각각의 앙각 정보에 기초하여 제4 세트의 포인트 각각에 대한 RCS 정보를 생성할 수 있다. 예를 들어, 제4 세트의 포인트에서 앙각 정보가 0도 미만인 경우, 해당 포인트는 도로, 도보 등과 연관된 것으로 가정할 수 있다. 이 경우, 해당 포인트에 RCS 정보로서 -40이 할당될 수 있다. 또 다른 예로서, 제4 세트의 포인트에서 앙각 정보가 0도 이상인 경우, 해당 포인트는 빌딩, 정지 상태의 장애물(예를 들어, 가로등, 나무 등) 등과 연관된 것으로 가정할 수 있다. 이 경우, 해당 포인트에 RCS 정보로서 -10이 할당될 수 있다.The processor may generate Radar Cross Section (RCS) information associated with the fourth set of points (S384). Specifically, the processor may determine the fourth set of points to be associated with a static object. Thereafter, the processor may generate RCS information for each of the points in the fourth set based on elevation angle information for each of the points in the fourth set. For example, if the elevation angle information in the fourth set of points is less than 0 degrees, the point may be assumed to be related to a road, a walk, etc. In this case, -40 may be assigned to the corresponding point as RCS information. As another example, if the elevation angle information in the fourth set of points is greater than 0 degrees, the point may be assumed to be associated with a building, a stationary obstacle (eg, a street light, a tree, etc.), etc. In this case, -10 may be assigned to the corresponding point as RCS information.

그 후, 프로세서는 RCS 정보가 생성된 제3 세트의 포인트 또는 제4 세트의 포인트 각각의 상대 속도 정보를 산출할 수 있다. 동적 객체와 연관된 것으로 판정된 제3 세트의 포인트 각각의 상대 속도 정보 산출 방식은 도 7을 참고하여 서술한다. 정적 객체와 연관된 것으로 판정된 제4 세트의 포인트 각각의 상대 속도 정보 산출 방식은 도 8을 참고하여 서술한다.The processor may then calculate relative velocity information for each of the third or fourth set of points for which RCS information was generated. A method of calculating relative velocity information for each of the third set of points determined to be associated with the dynamic object is described with reference to FIG. 7 . A method of calculating relative velocity information for each of the fourth set of points determined to be associated with a static object is described with reference to FIG. 8.

도 3을 참고하면, 포인트가 3차원 바운딩 박스에 포함되었는지 판정하는 단계(S370)는 복수의 빈에 대해 드롭핑이 수행된 이후에 이루어지는 것으로 도시되어 있으나 이에 한정되지 않는다. 예를 들어, 포인트가 3차원 바운딩 박스에 포함되었는지 판정하는 단계(S370)는 복수의 빈에 대해 필터링이 수행되는 단계(S350) 이전에 수행될 수 있다. 즉, 복수의 빈에 매핑된 포인트에 대해 3차원 바운딩 박스에 포함되는지 판정하여 RCS 정보를 생성한 이후, 복수의 빈에 대해 필터링 및/또는 드롭핑이 수행될 수 있다. 다른 예를 들어, 포인트가 3차원 바운딩 박스에 포함되었는지 판정하는 단계(S370)는 레이더 센서의 FOV에 해당하는 영역을 복수의 빈으로 분할하는 단계(S330) 이전에 수행될 수 있다.Referring to FIG. 3, the step of determining whether a point is included in the 3D bounding box (S370) is shown to be performed after dropping is performed on a plurality of bins, but is not limited thereto. For example, the step of determining whether a point is included in the 3D bounding box (S370) may be performed before the step of filtering a plurality of bins (S350). That is, after generating RCS information by determining whether a point mapped to a plurality of bins is included in a 3D bounding box, filtering and/or dropping may be performed on the plurality of bins. For another example, the step of determining whether a point is included in the 3D bounding box (S370) may be performed before the step of dividing the area corresponding to the FOV of the radar sensor into a plurality of bins (S330).

생성된 합성 레이더 데이터는 복수의 포인트를 포함하고, 각 포인트를 위치 정보, 거리 정보, 상대 속도 정보 또는 RCS 정보 중 하나를 포함할 수 있다. 상술한 구성에 의해, 각 포인트의 위치 정보, 거리 정보, 상대 속도 정보(도 7 및 도 8을 참고하여 설명됨) 및 RCS 정보를 산출/생성할 수 있다. 합성 레이더 데이터에 포함된 포인트의 정보는 실제 레이더 센서에 의해 생성되는 포인트의 정보와 동일한 요소를 포함할 수 있다. 이와 같이, 합성 레이더 데이터는 레이더 센서가 생성할 수 있는 데이터 요소를 포함함으로써, 레이더 센서에 의해 생성된 데이터를 모사할 수 있다.The generated synthetic radar data includes a plurality of points, and each point may include one of location information, distance information, relative speed information, or RCS information. With the above-described configuration, the location information, distance information, relative speed information (explained with reference to FIGS. 7 and 8), and RCS information of each point can be calculated/generated. Point information included in synthetic radar data may include the same elements as point information generated by an actual radar sensor. In this way, synthetic radar data can simulate data generated by a radar sensor by including data elements that the radar sensor can generate.

도 4는 본 개시의 일 실시예에 따른 포인트 클라우드 데이터의 일 예시를 나타낸 도면이다. 제1 예시(410)는 가상현실 내에 배치된 카메라가 촬영한 카메라 이미지일 수 있다. 여기서, 가상현실은 3차원 모델을 이용하여 렌더링될 수 있다. 또한, 카메라는 가상현실 내부에 배치된 가상의 카메라일 수 있다. 제2 예시(420)는 가상현실 내에 배치된 카메라와 동일한 위치에서 라이다 센서가 생성한 포인트 클라우드 데이터를 시각화한 이미지일 수 있다. 제2 예시(420)에 표시된 흰 선은 라이다 센서를 기준으로 동일한 거리의 영역을 나타낼 수 있다.Figure 4 is a diagram showing an example of point cloud data according to an embodiment of the present disclosure. The first example 410 may be a camera image captured by a camera deployed in virtual reality. Here, virtual reality can be rendered using a 3D model. Additionally, the camera may be a virtual camera placed inside virtual reality. The second example 420 may be an image visualizing point cloud data generated by a LiDAR sensor at the same location as a camera placed in virtual reality. The white line displayed in the second example 420 may represent an area at the same distance based on the LiDAR sensor.

일 실시예에서, 3차원 바운딩 박스(422)는 가상현실 내 객체의 3D 모델을 기초로 생성될 수 있다. 예를 들어, 3차원 바운딩 박스(422)는 객체의 3D 모델의 너비 정보, 높이 정보, 깊이 정보, 클래스 정보 등을 기초로 생성될 수 있다. 다른 실시예에서, 3차원 바운딩 박스(422)는 포인트 클라우드 데이터에 대해 객체 인식을 수행하여 생성될 수 있다. 3차원 바운딩 박스 정보는 3차원 바운딩 박스에 대한 위치 정보, 배향 정보, 클래스 정보, 너비 정보, 높이 정보, 깊이 정보 또는 상대 속도 정보 중 적어도 하나를 포함할 수 있다. In one embodiment, the 3D bounding box 422 may be created based on a 3D model of an object in virtual reality. For example, the 3D bounding box 422 may be created based on width information, height information, depth information, class information, etc. of the 3D model of the object. In another embodiment, the 3D bounding box 422 may be created by performing object recognition on point cloud data. The 3D bounding box information may include at least one of position information, orientation information, class information, width information, height information, depth information, or relative speed information for the 3D bounding box.

또 다른 실시예에서, 3차원 바운딩 박스는 포인트 클라우드 데이터와 연관된 이미지에 기초하여 생성될 수 있다. 예를 들어, 포인트 클라우드 데이터가 생성된 복수의 시점(point in time)에 카메라를 이용하여 복수의 이미지를 생성할 수 있다. 이 때, 복수의 이미지에 대해 객체 인식을 수행하여 3차원 바운딩 박스를 생성할 수 있다. 생성된 3차원 바운딩 박스는 라이다 센서와 연관된 정보와 이미지 센서와 연관된 정보에 기초하여 각각의 시점에 대응시켜 포인트 클라우드 데이터에 투영될 수 있다. 이러한 3차원 바운딩 박스는 제2 예시(420)에서 3차원 바운딩 박스(422)로서 표시될 수 있다.In another embodiment, a three-dimensional bounding box may be generated based on an image associated with point cloud data. For example, multiple images can be generated using a camera at multiple points in time when point cloud data is generated. At this time, object recognition can be performed on a plurality of images to create a 3D bounding box. The generated 3D bounding box can be projected onto point cloud data in correspondence to each viewpoint based on information associated with the lidar sensor and information associated with the image sensor. This 3D bounding box may be displayed as a 3D bounding box 422 in the second example 420.

일 실시예에서, 3차원 바운딩 박스는 동적 객체에 대해서만 생성될 수 있다. 대안적으로, 정적 객체에 대해서도 3차원 바운딩 박스가 생성될 수 있다. 이 경우, 정적 객체의 클래스 정보는 정적 객체의 대상과 무관하게 동일할 수 있다. 예를 들어, 정적 객체가 도로인 경우와 정적 객체가 빌딩인 경우의 클래스 정보는 '관심 없음'과 연관된 정보에 대응됨으로써 동일할 수 있다.In one embodiment, 3D bounding boxes may be created only for dynamic objects. Alternatively, a 3D bounding box can also be created for static objects. In this case, the class information of the static object may be the same regardless of the target of the static object. For example, when the static object is a road and when the static object is a building, the class information may be the same by corresponding to information associated with 'not interested'.

도 4를 참고하면, 제1 예시(410)는 3차원 바운딩 박스가 가상 현실에 삽입되어, 삽입된 3차원 바운딩 박스(412)가 표시될 수 있다. 제2 예시(420)는 포인트 클라우드 데이터에 기초하여 생성된 3차원 바운딩 박스(422)가 표시될 수 있다. 도 4에서는 3차원 바운딩 박스가 동적 객체(예를 들어, 자전거 타는 사람, 차량)에 대해서 3차원 바운딩 박스가 표시되어 있으나 이에 한정 되지 않는다. 예를 들어, 정적 객체(예를 들어, 빌딩, 나무, 가로등 등)에 대해서 3차원 바운딩 박스가 표시될 수 있다.Referring to FIG. 4 , in the first example 410, a 3D bounding box is inserted into virtual reality, and the inserted 3D bounding box 412 may be displayed. The second example 420 may display a 3D bounding box 422 generated based on point cloud data. In Figure 4, a 3D bounding box is displayed for a dynamic object (eg, a cyclist, a vehicle), but the 3D bounding box is not limited to this. For example, a 3D bounding box may be displayed for static objects (eg, buildings, trees, street lights, etc.).

제1 예시(410) 및 제2 예시(420)는 3차원 바운딩 박스와 포인트 클라우드 데이터를 시각화한 이미지일 뿐, 이러한 3차원 바운딩 박스 및 포인트 클라우드 데이터에 한정되어 합성 레이더 데이터가 생성되지 않을 수 있다. 예를 들어, 프로세서는 시각화 되지 않은 3차원 바운딩 박스 및 포인트 클라우드 데이터에 기초하여 합성 레이더 데이터를 생성할 수 있다.The first example 410 and the second example 420 are only images that visualize 3D bounding box and point cloud data, and are limited to these 3D bounding box and point cloud data, so synthetic radar data may not be generated. . For example, the processor may generate synthetic radar data based on non-visualized three-dimensional bounding box and point cloud data.

도 5는 본 개시의 일 실시예에 따른 복수의 빈에 대한 매핑, 필터링 및 드롭핑 과정의 일 예시를 나타낸 도면이다. 제1 예시(510)는 복수의 빈에 매핑된 제1 세트의 포인트를 나타낼 수 있다. 제2 예시(520)는 필터링된 제2 세트의 포인트를 나타낼 수 있다. 제3 예시(530)는 드롭핑된 제3 세트의 포인트를 나타낼 수 있다. 제1 예시(510), 제2 예시(520) 및 제3 예시(530)에서 X축은 방위각, Y축은 거리를 나타낼 수 있다.Figure 5 is a diagram illustrating an example of a mapping, filtering, and dropping process for a plurality of bins according to an embodiment of the present disclosure. The first example 510 may represent a first set of points mapped to a plurality of bins. A second example 520 may represent a second set of filtered points. A third example 530 may represent a dropped third set of points. In the first example 510, the second example 520, and the third example 530, the X-axis may represent an azimuth and the Y-axis may represent a distance.

제1 예시(510)에서 제1 세트의 포인트는 포인트 클라우드 데이터에 포함된 포인트일 수 있다. 예를 들어, 제1 세트의 포인트는 도 3을 참고하여 설명한 구면 좌표계로 변환된 제1 세트의 포인트일 수 있다. 다른 예로서, 제1 세트의 포인트는 도 3을 참고하여 설명한, FOV 내에 있는 것으로 식별된 제2 세트의 포인트일 수 있다. 또 다른 예로서, 제1 세트의 포인트는 도 3을 참고하여 설명한, 3차원 바운딩 박스에 포함되었는지 여부가 판정된 제1 세트의 포인트 또는 제2 세트의 포인트일 수 있다.In the first example 510, the first set of points may be points included in point cloud data. For example, the first set of points may be the first set of points converted to the spherical coordinate system described with reference to FIG. 3. As another example, the first set of points may be a second set of points identified as being within the FOV, described with reference to FIG. 3 . As another example, the first set of points may be the first set of points or the second set of points that have been determined to be included in the three-dimensional bounding box described with reference to FIG. 3 .

도 5를 참고하면, 제1 예시(510)에 방사형 영역이 표시될 수 있다. 해당 영역은 레이더 센서의 FOV에 해당하는 영역으로, 레이더 센서의 위치 정보, FOV 정보 및 탐지 가능 거리에 의해 결정될 수 있다. 또한, 제1 예시(510)에서 FOV에 해당하는 영역이 복수의 격자 무늬로 분할된 모습을 확인할 수 있다. 격자 무늬에서 하나의 분할된 영역은 하나의 빈을 나타낼 수 있다. 즉, 제1 예시(510)에서 FOV에 해당하는 영역이 복수의 빈으로 분할된 모습을 확인할 수 있다. 제1 예시(510)와 유사하게, 제2 예시(520) 및 제3 예시(530)도 FOV에 해당하는 영역이 표시될 수 있다.Referring to FIG. 5 , a radial area may be displayed in the first example 510. The area corresponds to the FOV of the radar sensor and can be determined by the radar sensor's location information, FOV information, and detectable distance. Additionally, in the first example 510, it can be seen that the area corresponding to the FOV is divided into a plurality of grid patterns. In a grid pattern, one divided area can represent one bin. That is, in the first example 510, it can be seen that the area corresponding to the FOV is divided into a plurality of bins. Similar to the first example 510, the second example 520 and the third example 530 may also display an area corresponding to the FOV.

제2 예시(520)는 필터링된 제2 세트의 포인트를 나타낼 수 있다. 여기서, 제2 세트의 포인트는 제1 예시(510)에 도시된 매핑된 제1 세트의 포인트 중 일부일 수 있다. 도 3을 참고하여 설명한 복수의 빈에 대해 필터링이 수행되는 단계(S350)를 수행함으로써, 제1 세트의 포인트에 대한 필터링이 수행될 수 있다. 제2 예시(520)에서 확인할 수 있는 것과 같이, 필터링을 수행함으로써 제1 세트의 포인트 중 일부가 제거될 수 있다.A second example 520 may represent a second set of filtered points. Here, the second set of points may be some of the mapped first set of points shown in the first example 510. Filtering on the first set of points can be performed by performing the step (S350) of performing filtering on a plurality of bins described with reference to FIG. 3. As can be seen in the second example 520, some of the points in the first set may be removed by performing filtering.

제3 예시(530)는 드롭핑된 제3 세트의 포인트를 나타낼 수 있다. 여기서, 제3 세트의 포인트는 제2 예시(520)에 도시된 필터링된 제2 세트의 포인트 중 일부일 수 있다. 도 3을 참고하여 설명한 복수의 빈에 대해 드롭핑이 수행되는 단계(S360)를 수행함으로써, 제2 세트의 포인트에 드롭핑이 수행될 수 있다. 제3 예시(530)에서 확인할 수 있는 것과 같이, 제2 세트의 포인트에 대한 드롭핑을 수행함으로써 제2 세트의 포인트 중 일부가 제거될 수 있다.A third example 530 may represent a dropped third set of points. Here, the third set of points may be some of the filtered second set of points shown in the second example 520. By performing the step S360 of performing dropping on a plurality of bins described with reference to FIG. 3, dropping can be performed on the second set of points. As can be seen in the third example 530, some of the points in the second set may be removed by performing dropping on the points in the second set.

도 3을 참고하여 설명한 바와 같이, 복수의 빈에 대해 필터링 및/또는 드롭핑을 수행하는 단계에서 확률을 이용하여 일부 포인트를 제거할 수 있다. 이 경우, 확률을 세밀하게 조절함으로써 합성 레이더 데이터 생성 방법은 레이더 센서에 의해 생성된 데이터와 더욱 유사하게 만들 수 있다. 예를 들어, 사용자의 입력을 수신하여, 통계적인 수치를 이용하여, 인공신경망 모델을 이용하는 등의 방식으로 확률이 세밀하게 조절될 수 있다.As described with reference to FIG. 3, some points may be removed using probability in the step of filtering and/or dropping a plurality of bins. In this case, by fine-tuning the probability, the synthetic radar data generation method can be made more similar to data generated by radar sensors. For example, the probability can be finely adjusted by receiving user input, using statistical values, or using an artificial neural network model.

포인트 클라우드 데이터에서 포인트의 밀도가 일반적인 레이더 데이터보다 상대적으로 높을 수 있다. 상술한 구성에 의해 생성된 합성 레이더 데이터는 라이다 센서에 의해 측정된 포인트의 밀도를 낮추어, 레이더 센서에 의해 생성된 데이터를 더욱 유사하게 모사할 수 있다. The density of points in point cloud data may be relatively higher than that in general radar data. Synthetic radar data generated by the above-described configuration can lower the density of points measured by the lidar sensor and more closely mimic the data generated by the radar sensor.

도 6은 본 개시의 일 실시예에 따른 복수의 빈에 대한 매핑, 필터링 및 드롭핑 과정의 일 예시를 나타낸 도면이다. 제1 예시(610)는 복수의 빈에 매핑된 제1 세트의 포인트를 나타낼 수 있다. 제2 예시(620)는 필터링된 제2 세트의 포인트를 나타낼 수 있다. 제3 예시(630)는 드롭핑된 제3 세트의 포인트를 나타낼 수 있다. 제1 예시(610), 제2 예시(620) 및 제3 예시(630)에서 X축은 방위각, Y축은 거리를 나타낼 수 있다. 여기서, Y축은 로그 스케일로 표시될 수 있다. 도 6은 도 5의 설명을 기초로 이해될 수 있다. 도 6에서는 도 5와의 차이점을 중심으로 설명한다.FIG. 6 is a diagram illustrating an example of a mapping, filtering, and dropping process for a plurality of bins according to an embodiment of the present disclosure. The first example 610 may represent a first set of points mapped to a plurality of bins. A second example 620 may represent a second set of filtered points. A third example 630 may represent a dropped third set of points. In the first example 610, the second example 620, and the third example 630, the X-axis may represent an azimuth and the Y-axis may represent a distance. Here, the Y-axis can be displayed in a logarithmic scale. FIG. 6 can be understood based on the description of FIG. 5 . In FIG. 6, the explanation will focus on the differences from FIG. 5.

일 실시예에서, 제1 예시(610)에 도시된 제1 세트의 포인트는 도 3을 참고하여 설명한 제3 세트의 포인트 및 제4 세트의 포인트를 포함할 수 있다. 즉 제1 세트의 포인트 각각은 동적 객체 또는 정적 객체와 연관된 것으로 판정된 것일 수 있다. 제5 세트의 포인트(612)는 제3 세트의 포인트 중 일부로서, 특정 3차원 바운딩 박스에 포함된 것으로 판정된 포인트의 집합일 수 있다. 이 경우, 제5 세트의 포인트(612) 각각은 동일한 RCS 값을 가질 수 있다.In one embodiment, the first set of points shown in the first example 610 may include the third set of points and the fourth set of points described with reference to FIG. 3 . That is, each point in the first set may be determined to be associated with a dynamic object or a static object. The fifth set of points 612 is part of the third set of points and may be a set of points determined to be included in a specific 3D bounding box. In this case, each of the fifth set of points 612 may have the same RCS value.

복수의 빈에 대해 필터링이 수행됨으로써, 제5 세트의 포인트(612) 중 일부가 제거될 수 있다. 제2 예시(620)를 참고하면, 필터링된 제5 세트의 포인트(622)의 모습을 확인할 수 있다. 필터링된 제5 세트의 포인트(622)가 제5 세트의 포인트(612)보다 밀도가 낮아진 것을 시각적으로 확인할 수 있다.By performing filtering on the plurality of bins, some of the fifth set of points 612 may be removed. Referring to the second example 620, you can see the appearance of the filtered fifth set of points 622. It can be visually confirmed that the filtered fifth set of points 622 has a lower density than the fifth set of points 612.

복수의 빈에 대해 드롭핑이 수행됨으로써, 필터링된 제5 세트의 포인트(622) 중 일부가 제거될 수 있다. 도 6의 제3 예시(630)를 참고하면, 드롭핑된 제5 세트의 포인트(632)의 모습을 확인할 수 있다. 드롭핑된 제5 세트의 포인트(632)가 필터링된 제5 세트의 포인트(622)보다 밀도가 낮아진 것을 시각적으로 확인할 수 있다. By performing dropping on a plurality of bins, some of the filtered fifth set of points 622 may be removed. Referring to the third example 630 of FIG. 6, you can see the dropped fifth set of points 632. It can be visually confirmed that the dropped fifth set of points 632 has a lower density than the filtered fifth set of points 622.

도 7은 본 개시의 일 실시예에 따른 동적 객체(710)와 연관된 포인트의 도플러 속도를 산출하는 과정을 나타내는 도면이다. 구체적으로, 도 7은 레이더 센서(730)가 동적 객체(710)를 특정 시점에 측정하는 모습을 나타낼 수 있다. 도 7은 레이더 센서에 의해 동적 객체를 실제 탐지한 것이 아닌, 가상의 레이더 센서(730)로 탐지하는 상황을 가정한 것일 수 있다. 이 때, 레이더 센서가 장착된 주체(720)는 vego의 속도로 이동하고, 동적 객체(710)는 v-target-의 속도로 이동할 수 있다. 여기서, 레이더 센서가 장착된 주체(720)는 레이더 센서(730)와 함께 라이다 센서(미도시)가 장착될 수 있다. 도 7에서 설명하는 위치 및 속도는 벡터를 의미할 수 있다.FIG. 7 is a diagram illustrating a process for calculating the Doppler velocity of a point associated with a dynamic object 710 according to an embodiment of the present disclosure. Specifically, FIG. 7 may show the radar sensor 730 measuring a dynamic object 710 at a specific point in time. FIG. 7 may assume a situation where a dynamic object is not actually detected by a radar sensor, but is detected by a virtual radar sensor 730. At this time, the subject 720 equipped with a radar sensor moves at a speed v ego , and the dynamic object 710 moves at a speed v -target- . Here, the subject 720 equipped with a radar sensor may be equipped with a lidar sensor (not shown) along with the radar sensor 730. The position and velocity described in FIG. 7 may refer to vectors.

레이더 센서(730)는 동적 객체(710)에 대해 복수의 포인트(712_1 내지 712_n)를 센싱할 수 있다. 레이더 센서(730)에 의해 측정된 제1 포인트(712_1)까지의 거리 및 방향은 r1으로 나타낼 수 있다. 유사하게, 레이더 센서(730)에 의해 측정된 제n 포인트(712_n)까지의 거리 및 방향을 rn으로 나타낼 수 있다. The radar sensor 730 may sense a plurality of points 712_1 to 712_n with respect to the dynamic object 710. The distance and direction to the first point 712_1 measured by the radar sensor 730 can be expressed as r 1 . Similarly, the distance and direction to the nth point 712_n measured by the radar sensor 730 can be expressed as r n .

속도(예를 들어, 도플러 속도(doppler velocity))는 레이더 센서(730)에서 포인트를 향한 방사 방향에 관한 상대 속도를 의미할 수 있다. 예를 들어, 제1 포인트(712_1)의 경우, 도플러 속도는 레이더 센서(730)에서 제1 포인트(712_1)를 향한 방사 방향인 r1과 연관된 방향에 관한 상대 속도를 의미할 수 있다. 또한, 제n 포인트(712_n)의 경우, 도플러 속도는 레이더 센서(730)에서 제n 포인트(712_n)를 향한 방사 방향인 rn과 연관된 방향에 관한 상대 속도를 의미할 수 있다.Velocity (eg, Doppler velocity) may refer to relative velocity with respect to a radial direction toward a point in the radar sensor 730. For example, for the first point 712_1, the Doppler velocity is associated with r 1 , which is the radial direction from the radar sensor 730 toward the first point 712_1. It can mean relative speed with respect to direction. Additionally, for the n-th point 712_n, the Doppler velocity is associated with r n, which is the radial direction from the radar sensor 730 toward the n-th point 712_n. It can mean relative speed with respect to direction.

도플러 속도를 산출하기 위해 두 가지 가정이 이루어질 수 있다. 첫번째, 동적 객체(710)는 평면 운동을 할 것을 전제로 할 수 있다. 예를 들어, 레이더 센서(730)의 데이터에서 앙각이 0도인 경우에 대한 동적 객체(710)의 운동만이 고려될 수 있다. 두번째, 동적 객체(710)의 이동에서 차량 등과 같은 동적 객체(710)의 회전 각속도가 느린 경우(예를 들어, 동적 객체(710)의 회전 각속도가 미리 결정된 회전 각속도보다 작은 경우), 동적 객체(710)의 피반사/피산란 지점들 각각의 속도는 동일할 것을 전제로 할 수 있다. 예를 들어, 제1 포인트(712_1)의 속도 및 제n 포인트(712_n)의 속도는 레이더의 좌표계에서 관측된 동적 객체 기준점의 속도와 동일할 수 있다. 다른 예로서, 레이더 센서가 장착된 주체(720)의 속도는 레이더 센서(730)의 속도 및 라이더 센서의 속도와 동일할 수 있다. 여기서, 속도가 동일하다는 것은 동일한 좌표계(예를 들어, 레이더의 좌표계, 라이다의 좌표계)에서 절대 속도가 동일하다는 것을 의미할 수 있다.Two assumptions can be made to calculate Doppler velocity. First, it can be assumed that the dynamic object 710 will move in a plane. For example, in the data of the radar sensor 730, only the movement of the dynamic object 710 for the case where the elevation angle is 0 degrees can be considered. Second, when the rotational angular velocity of the dynamic object 710, such as a vehicle, is slow in the movement of the dynamic object 710 (for example, when the rotational angular velocity of the dynamic object 710 is smaller than the predetermined rotational angular velocity), the dynamic object ( 710), it can be assumed that the speed of each of the reflected/scattered points is the same. For example, the speed of the first point 712_1 and the speed of the nth point 712_n may be the same as the speed of the dynamic object reference point observed in the radar coordinate system. As another example, the speed of the subject 720 equipped with the radar sensor may be the same as the speed of the radar sensor 730 and the speed of the lidar sensor. Here, being the same speed may mean that the absolute speed is the same in the same coordinate system (e.g., radar coordinate system, lidar coordinate system).

제n 포인트(712_n)의 도플러 속도는 아래의 수학식 1과 같이 정의할 수 있다. 도 7에서, 동적 객체(710)가 레이더 센서(730)로부터 멀어지는 것으로 도시되어 있으나, 아래의 수학식 1은 동적 객체(710)가 레이더 센서(730)로 다가오는 경우를 기준으로 정의될 수 있다.The Doppler velocity of the nth point (712_n) can be defined as Equation 1 below. In FIG. 7 , the dynamic object 710 is shown moving away from the radar sensor 730, but Equation 1 below can be defined based on the case where the dynamic object 710 approaches the radar sensor 730.

레이더의 좌표계에서 제n 포인트의 상대 속도는 vn radar이고, 레이더의 좌표계에서 제n 포인트의 위치는 rn radar일 수 있다. 또한, vtarget radar는 레이더의 좌표계에서 동적 객체의 속도, vradar radar는 레이더의 좌표계에서 레이더 센서(730)의 속도, vego radar는 레이더의 좌표계에서 레이더 센서가 장착된 주체(720)의 속도를 지칭할 수 있다. 상술한 두번째 가정에 의해, vradar radar = vego radar을 만족하므로, 레이더의 좌표계에서 제n 포인트의 상대 속도는 vn radar = vtarget radar - vradar radar = vtarget radar - vego radar (식 1)와 같이 산출될 수 있다. The relative speed of the nth point in the radar's coordinate system may be v n radar , and the position of the nth point in the radar's coordinate system may be r n radar . In addition, v target radar is the speed of the dynamic object in the radar's coordinate system, v radar radar is the speed of the radar sensor 730 in the radar's coordinate system, and v ego radar is the speed of the subject 720 equipped with the radar sensor in the radar's coordinate system. can refer to. By the second assumption mentioned above, v radar radar = v ego radar is satisfied, so the relative speed of the nth point in the radar's coordinate system is v n radar = v target radar - v radar radar = v target radar - It can be calculated as v ego radar (Equation 1).

Rlidar radar는 라이다 좌표계를 레이더 좌표계로 회전 변환하는 회전 매트릭스이고, tradar lidar는 라이다 좌표계를 레이더 좌표계로 평행 이동시키는 이동 벡터라고 하면, 라이다 좌표계에서 레이더 좌표계로 속도를 변환시키는 식은 vtarget radar - vego radar = Rlidar radar(vtarget lidar - vego lidar)(식 2)를 만족할 수 있다. 또한, 라이다 좌표계에서 레이더 좌표계로 위치를 변환시키는 식은 rn radar = Rlidar radar(rn lidar - tradar lidar)(식 3)을 만족할 수 있다. 이 때, 라이다 좌표계에서 서술된 3차원 바운딩 박스의 상대 속도를 vbox lidar라고 하면, vbox lidar = vtarget lidar - vlidar lidar = vtarget lidar - vego lidar(식 4)와 같이 산출될 수 있다. 식 1, 식 2 및 식 4를 이용하면, vn radar = Rlidar radar(vtarget lidar - vego lidar) (식 5)를 만족할 수 있다R lidar radar is a rotation matrix that rotates the lidar coordinate system to the radar coordinate system, and t radar lidar is a movement vector that moves the lidar coordinate system in parallel to the radar coordinate system. The equation that converts the speed from the lidar coordinate system to the radar coordinate system is v. target radar - v ego radar = R lidar radar (v target lidar - v ego lidar ) (Equation 2) can be satisfied. In addition, the equation for converting the position from the lidar coordinate system to the radar coordinate system is r n radar = R lidar radar (r n lidar - t radar lidar ) (Equation 3) can be satisfied. At this time, if the relative speed of the 3D bounding box described in the lidar coordinate system is v box lidar , v box lidar = v target lidar - v lidar lidar = v target lidar - It can be calculated as v ego lidar (Equation 4). Using Equation 1, Equation 2, and Equation 4, v n radar = R lidar radar (v target lidar - v ego lidar ) (Equation 5) can be satisfied

수학식 1에 식 3 및 식 5를 대입하면, 아래의 수학식 2가 산출될 수 있다.By substituting Equation 3 and Equation 5 into Equation 1, Equation 2 below can be calculated.

이와 같이, 프로세서는 수학식 2를 이용하여 동적 객체와 연관된 각 포인트의 도플러 속도를 산출할 수 있다. 정적 객체와 연관된 각 포인트의 도플러 속도를 산출하는 과정은 도 8을 참고하여 설명한다.As such, the processor can calculate the Doppler velocity of each point associated with the dynamic object using Equation 2. The process of calculating the Doppler velocity of each point associated with a static object is explained with reference to FIG. 8.

도 8은 본 개시의 일 실시예에 따른 정적 객체와 연관된 도플러 속도를 산출하는 과정을 나타내는 도면이다. 구체적으로, 도 8은 레이더 센서(830)가 정적 객체를 특정 시점에 측정하는 모습을 나타낼 수 있다. 도 8은 레이더 센서에 의해 정적 객체를 실제 탐지한 것이 아닌, 가상의 레이더 센서(830)로 탐지하는 상황을 가정한 것일 수 있다. 이 때, 레이더 센서가 장착된 주체(820)는 vego의 속도로 이동할 수 있다. 여기서, 레이더 센서가 장착된 주체(820)는 레이더 센서(730)와 함께 라이다 센서(미도시)가 장착될 수 있다. 도 8에서 설명하는 위치 및 속도는 벡터를 의미할 수 있다.FIG. 8 is a diagram illustrating a process for calculating a Doppler velocity associated with a static object according to an embodiment of the present disclosure. Specifically, FIG. 8 may show the radar sensor 830 measuring a static object at a specific point in time. FIG. 8 may assume a situation where a static object is not actually detected by a radar sensor, but is detected by a virtual radar sensor 830. At this time, the subject 820 equipped with a radar sensor can move at a speed of v ego . Here, the subject 820 equipped with a radar sensor may be equipped with a lidar sensor (not shown) along with the radar sensor 730. The position and velocity described in FIG. 8 may refer to vectors.

레이더 센서(830)는 정적 객체에 대해 복수의 포인트(810_1 내지 810_n)를 센싱할 수 있다. 레이더 센서(830)에 의해 측정된 제1 포인트(810_1)의 거리 및 방향은 r1으로 나타낼 수 있다. 유사하게, 레이더 센서(830)에 의해 측정된 제n 포인트(810_n)의 거리 및 방향은 rn으로 나타낼 수 있다. The radar sensor 830 may sense a plurality of points 810_1 to 810_n for static objects. The distance and direction of the first point (810_1) measured by the radar sensor 830 are r 1 . It can be expressed. Similarly, the distance and direction of the nth point 810_n measured by the radar sensor 830 can be expressed as r n .

도 8을 참고하면, 레이더 센서(830)에 의해 측정된 복수의 포인트(810_1 내지 810_n)는 별개의 정적 객체와 연관된 것으로 도시되어 있으나, 이에 한정되지 않는다. 예를 들어, 복수의 포인트(810_1 내지 810_n) 중 적어도 일부는 하나의 정적 객체와 연관된 별개의 지점에 대해 레이더 센서(830)에 의해 측정된 포인트일 수 있다.Referring to FIG. 8, the plurality of points 810_1 to 810_n measured by the radar sensor 830 are shown as being associated with separate static objects, but the present invention is not limited thereto. For example, at least some of the plurality of points 810_1 to 810_n may be points measured by the radar sensor 830 for separate points associated with one static object.

속도 (예를 들어, 도플러 속도)는 레이더 센서(830)에서 포인트를 향한 방사 방향에 관한 상대 속도를 의미할 수 있다. 예를 들어, 제1 포인트(810_1)의 경우, 도플러 속도는 레이더 센서(830)에서 제1 포인트(810_1)를 향한 방사 방향인 r1과 연관된 방향에 관한 상대 속도를 의미할 수 있다. 또한, 제n 포인트(810_n)에 대한 도플러 속도는 수학식 2와 동일하게 산출할 수 있다. 도플러 속도를 산출하기 위해 도 7에서 상술한 두 가지 가정이 전제될 수 있다. 즉, 지면에 대한 좌표계에서 정적 객체의 속도는 0이고, 도 7에서 설명한 두번째 가정에 의해 vlidar lidar = vego lidar을 만족할 수 있다. 라이다 좌표계에서 상술된 3차원 바운딩 박스의 상대 속도를 vbox lidar 라고 한다면, 도 7에서 상술한 식 4와 같이 vbox lidar를 산출할 수 있다. 이 때, 정적 객체에 대해서도 3차원 바운딩 박스가 생성될 수 있음을 전제로 할 수 있다. Velocity (e.g., Doppler velocity) may refer to relative velocity with respect to a radial direction toward a point in the radar sensor 830. For example, in the case of the first point 810_1, the Doppler velocity may mean a relative velocity with respect to a direction associated with r 1 , which is a radial direction toward the first point 810_1 in the radar sensor 830. Additionally, the Doppler velocity for the nth point 810_n can be calculated in the same manner as Equation 2. In order to calculate the Doppler velocity, the two assumptions described above in FIG. 7 can be assumed. That is, the speed of the static object in the coordinate system with respect to the ground is 0, and v lidar lidar = v ego lidar can be satisfied by the second assumption described in FIG. 7. If the relative velocity of the three-dimensional bounding box described above in the LIDAR coordinate system is called v box lidar , v box lidar can be calculated as in Equation 4 described above in FIG. 7. At this time, it can be assumed that a 3D bounding box can be created even for static objects.

Rground lidar는 지면 좌표계를 라이다 좌표계로 회전 변환하는 회전 매트릭스이고, vbox ground는 지면 좌표계에서 3차원 바운딩 박스의 속도로서 0일 수 있다. 또한, vlidar ground -는 지면 좌표계에서 라이다 센서의 속도이고, Rego lidar는 레이더 센서가 장착된 주체(820)의 좌표계에서 라이다 좌표계로 회전 변환하는 회전 매트릭스일 수 있다. 또한, Rground ego는 지면 좌표계를 라이다 좌표계로 회전 변환하는 회전 매트릭스일 수 있다. 이 때, 도 7에서 상술한 식 4를 정리하면, vbox lidar = vtarget lidar - vlidar lidar = Rgrond lidar(vbox ground - vlidar ground -) = - Rgrond lidarvego ground = - Rego lidarRground ego vego ground(식 6)과 같이 정리할 수 있다. 식 6을 위 수학식 2에 대입하면, 아래의 수학식 3과 같이 정리할 수 있다. R ground lidar is a rotation matrix that rotates the ground coordinate system into the lidar coordinate system, and v box ground is the velocity of the three-dimensional bounding box in the ground coordinate system and can be 0. In addition, v lidar ground - is the speed of the lidar sensor in the ground coordinate system, and R ego lidar may be a rotation matrix that rotates from the coordinate system of the subject 820 equipped with the radar sensor to the lidar coordinate system. Additionally, R ground ego may be a rotation matrix that rotates the ground coordinate system into the LIDAR coordinate system. At this time, if Equation 4 described above in FIG. 7 is summarized, v box lidar = v target lidar - v lidar lidar = R grond lidar (v box ground - v lidar ground - ) = - R grond lidar v ego ground = - R It can be summarized as ego lidar R ground ego v ego ground (Equation 6). By substituting Equation 6 into Equation 2 above, it can be summarized as Equation 3 below.

이와 같이, 프로세서는 수학식 3를 이용하여 정적 객체와 연관된 각 포인트의 도플러 속도를 산출할 수 있다. As such, the processor can calculate the Doppler velocity of each point associated with the static object using Equation (3).

정리하면, 프로세서는 수학식 2를 이용하여 동적 객체와 연관된 각 포인트의 도플러 속도를 산출하고, 수학식 3을 이용하여 정적 객체와 연관된 각 포인트의 도플러 속도를 산출할 수 있다. 따라서, 프로세서는 포인트 클라우드 데이터(예를 들어, 각 포인트의 위치 정보, 상대 속도 정보 등), 라이다 센서와 연관된 정보(예를 들어, 라이더 센서와 연관된 제1 외부 파라미터 등), 레이더 센서와 연관된 정보(예를 들어, 레이더 센서와 연관된 제2 외부 파라미터 등) 및/또는 3차원 바운딩 박스 정보(예를 들어, 3차원 바운딩 박스의 상대 속도 정보) 중 적어도 하나를 기초로 각 포인트의 도플러 속도를 산출할 수 있다. 프로세서는 각 포인트의 도플러 속도를 기초로 합성 레이더 데이터에 포함된 포인트의 상대 속도 정보를 생성할 수 있다.In summary, the processor can calculate the Doppler velocity of each point associated with the dynamic object using Equation 2, and calculate the Doppler velocity of each point associated with the static object using Equation 3. Accordingly, the processor may store point cloud data (e.g., location information of each point, relative speed information, etc.), information associated with the lidar sensor (e.g., a first external parameter associated with the lidar sensor, etc.), and information associated with the radar sensor. Doppler velocity of each point based on at least one of information (e.g., a second external parameter associated with the radar sensor, etc.) and/or three-dimensional bounding box information (e.g., relative velocity information of the three-dimensional bounding box) It can be calculated. The processor may generate relative velocity information of points included in the synthetic radar data based on the Doppler velocity of each point.

도 9는 본 개시의 일 실시예에 따른 합성 레이더 데이터 생성 방법(900)의 예시를 나타내는 흐름도이다. 일 실시예에 따르면, 합성 레이더 데이터 생성 방법(900)은 도 1의 합성 레이더 데이터 생성 시스템(140)의 적어도 하나의 프로세서에 의해 수행될 수 있다. 합성 레이더 데이터 생성 방법(900)은 프로세서가 라이다 센서에 의해 생성된 포인트 클라우드 데이터를 수신함으로써 개시될 수 있다(S910). FIG. 9 is a flowchart illustrating an example of a method 900 for generating synthetic radar data according to an embodiment of the present disclosure. According to one embodiment, the synthetic radar data generation method 900 may be performed by at least one processor of the synthetic radar data generation system 140 of FIG. 1. The synthetic radar data generation method 900 may be initiated by a processor receiving point cloud data generated by a lidar sensor (S910).

일 실시예에서, 프로세서는 포인트 클라우드 데이터와 연관된 3차원 바운딩 박스 정보를 수신할 수 있다(S920). 예를 들어, 3차원 바운딩 박스 정보는 위치 정보, 배향 정보, 클래스 정보, 너비 정보, 높이 정보, 깊이 정보 또는 상대 속도 정보 중 적어도 하나를 포함할 수 있다. In one embodiment, the processor may receive 3D bounding box information associated with point cloud data (S920). For example, 3D bounding box information may include at least one of position information, orientation information, class information, width information, height information, depth information, or relative speed information.

일 실시예에서, 프로세서는 포인트 클라우드 데이터 및 3차원 바운딩 박스 정보에 기초하여, 포인트 클라우드 데이터와 대응하는 합성 레이더 데이터를 생성할 수 있다(S930). 여기서, 합성 레이더 데이터는 레이더 센서에 의해 생성된 데이터를 모사할 수 있다. 또한, 포인트 클라우드 데이터는 제1 세트의 포인트를 포함할 수 있다. 예를 들어, 합성 레이더 데이터는 복수의 포인트를 포함하고, 각 포인트는 위치 정보, 거리 정보, 상대 속도 정보 또는 RCS 정보 중 적어도 하나를 포함할 수 있다.In one embodiment, the processor may generate synthetic radar data corresponding to the point cloud data based on the point cloud data and 3D bounding box information (S930). Here, synthetic radar data may simulate data generated by a radar sensor. Additionally, the point cloud data may include a first set of points. For example, synthetic radar data includes a plurality of points, and each point may include at least one of location information, distance information, relative speed information, or RCS information.

구체적으로, 프로세서는 라이다 센서와 연관된 제1 외부 파라미터를 수신할 수 있다. 또한, 프로세서는 레이더 센서와 연관된 제2 외부 파라미터를 수신할 수 있다. 그 후, 제1 외부 파라미터 및 제2 외부 파라미터에 기초하여, 제1 세트의 포인트 중 레이더 센서의 FOV(Field Of View) 내의 제2 세트의 포인트를 식별할 수 있다. 여기서, 프로세서는 제1 외부 파라미터 및 제2 외부 파라미터에 기초하여, 제1 세트의 포인트를 구면 좌표계로 변환할 수 있다. 이 때, 제2 세트의 포인트의 위치 정보가 구면 좌표계로 표현될 수 있다.Specifically, the processor may receive a first external parameter associated with the LIDAR sensor. Additionally, the processor may receive a second external parameter associated with the radar sensor. Then, based on the first external parameter and the second external parameter, a second set of points within the field of view (FOV) of the radar sensor may be identified among the first set of points. Here, the processor may convert the first set of points into a spherical coordinate system based on the first external parameter and the second external parameter. At this time, the location information of the second set of points may be expressed in a spherical coordinate system.

구체적으로, 프로세서는 레이더 센서의 FOV 정보를 수신할 수 있다. 그 후, 프로세서는 레이더 센서의 FOV에 해당하는 영역을 복수의 빈으로 분할할 수 있다. 또한, 프로세서는 제1 세트의 포인트를 복수의 빈에 매핑할 수 있다. 프로세서는 복수의 빈 중 2개 이상의 포인트를 포함하는 빈들에 대해 빈 내에 하나의 포인트만 남기고 나머지 포인트를 제거할 수 있다.Specifically, the processor may receive FOV information of the radar sensor. Afterwards, the processor may divide the area corresponding to the FOV of the radar sensor into a plurality of bins. Additionally, the processor may map the first set of points to a plurality of bins. For bins containing two or more points among a plurality of bins, the processor may leave only one point within the bin and remove the remaining points.

추가적으로 또는 대안적으로, 프로세서는 제1 세트의 포인트를 복수의 빈에 매핑할 수 있다. 또한, 프로세서는 복수의 빈 중 하나의 포인트를 포함하는 빈들 중 일부에 대한 포인트를 제거할 수 있다.Additionally or alternatively, the processor may map the first set of points to a plurality of bins. Additionally, the processor may remove points for some of the bins that contain one point among the plurality of bins.

일 실시예에서, 프로세서는 제2 세트의 포인트 중 3차원 바운딩 박스에 포함된 제3 세트의 포인트를 동적 객체와 연관된 것으로 판정할 수 있다. 또한, 프로세서는 제2 세트의 포인트 중 3차원 바운딩 박스에 포함되지 않은 제4 세트의 포인트를 정적 객체와 연관된 것으로 판정할 수 있다. 여기서, 제4 세트의 포인트 각각은 거리, 앙각 및 방위각 정보를 포함할 수 있다.In one embodiment, the processor may determine that a third set of points included in the three-dimensional bounding box among the second set of points are associated with the dynamic object. Additionally, the processor may determine that a fourth set of points that are not included in the 3D bounding box among the second set of points are associated with a static object. Here, each of the fourth set of points may include distance, elevation angle, and azimuth information.

일 실시예에서, 프로세서는 3차원 바운딩 박스 정보에 기초하여, 제3 세트의 포인트와 연관된 RCS 정보를 생성할 수 있다. 또한, 프로세서는 앙각 정보에 기초하여, 제4 세트의 포인트 각각에 대한 RCS 정보를 생성할 수 있다.In one embodiment, the processor may generate RCS information associated with the third set of points based on the three-dimensional bounding box information. Additionally, the processor may generate RCS information for each of the fourth set of points based on the elevation angle information.

일 실시예에서, 프로세서는 3차원 바운딩 박스 정보, 제1 외부 파라미터 및 제2 외부 파라미터에 기초하여, 제3 세트의 포인트의 상대 속도 정보를 산출할 수 있다. 또한, 프로세서는 제4 세트의 포인트 각각의 위치 정보, 제1 외부 파라미터 및 제2 외부 파라미터에 기초하여, 제4 세트의 포인트 각각의 상대 속도 정보를 산출할 수 있다.In one embodiment, the processor may calculate relative velocity information of the third set of points based on the three-dimensional bounding box information, the first external parameter, and the second external parameter. Additionally, the processor may calculate relative speed information of each of the points in the fourth set based on the position information, the first external parameter, and the second external parameter of each of the points in the fourth set.

상술한 방법은 컴퓨터에서 실행하기 위해 컴퓨터 판독 가능한 기록 매체에 저장된 컴퓨터 프로그램으로 제공될 수 있다. 매체는 컴퓨터로 실행 가능한 프로그램을 계속 저장하거나, 실행 또는 다운로드를 위해 임시 저장하는 것일수도 있다. 또한, 매체는 단일 또는 수개 하드웨어가 결합된 형태의 다양한 기록 수단 또는 저장수단일 수 있는데, 어떤 컴퓨터 시스템에 직접 접속되는 매체에 한정되지 않고, 네트워크 상에 분산 존재하는 것일 수도 있다. 매체의 예시로는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD 와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto optical medium), 및 ROM, RAM, 플래시 메모리 등을 포함하여 프로그램 명령어가 저장되도록 구성된 것이 있을 수 있다. 또한, 다른 매체의 예시로, 애플리케이션을 유통하는 앱 스토어나 기타 다양한 소프트웨어를 공급 내지 유통하는 사이트, 서버 등에서 관리하는 기록매체 내지 저장매체도 들 수 있다.The above-described method may be provided as a computer program stored in a computer-readable recording medium for execution on a computer. Media may be used to continuously store executable programs on a computer, or may be temporarily stored for execution or download. Additionally, the medium may be a variety of recording or storage means in the form of a single or several pieces of hardware combined. It is not limited to a medium directly connected to a computer system and may be distributed over a network. Examples of media include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical recording media such as CD-ROMs and DVDs, magneto-optical media such as floptical disks, and There may be something configured to store program instructions, including ROM, RAM, flash memory, etc. Additionally, examples of other media include recording or storage media managed by app stores that distribute applications, sites or servers that supply or distribute various other software, etc.

본 개시의 방법, 동작 또는 기법들은 다양한 수단에 의해 구현될 수도 있다. 예를 들어, 이러한 기법들은 하드웨어, 펌웨어, 소프트웨어, 또는 이들의 조합으로 구현될 수도 있다. 본원의 개시와 연계하여 설명된 다양한 예시적인 논리적 블록들, 모듈들, 회로들, 및 알고리즘 단계들은 전자 하드웨어, 컴퓨터 소프트웨어, 또는 양자의 조합들로 구현될 수도 있음을 통상의 기술자들은 이해할 것이다. 하드웨어 및 소프트웨어의 이러한 상호 대체를 명확하게 설명하기 위해, 다양한 예시적인 구성요소들, 블록들, 모듈들, 회로들, 및 단계들이 그들의 기능적 관점에서 일반적으로 위에서 설명되었다. 그러한 기능이 하드웨어로서 구현되는지 또는 소프트웨어로서 구현되는 지의 여부는, 특정 애플리케이션 및 전체 시스템에 부과되는 설계 요구사항들에 따라 달라진다. 통상의 기술자들은 각각의 특정 애플리케이션을 위해 다양한 방식들로 설명된 기능을 구현할 수도 있으나, 그러한 구현들은 본 개시의 범위로부터 벗어나게 하는 것으로 해석되어서는 안 된다.The methods, operations, or techniques of this disclosure may be implemented by various means. For example, these techniques may be implemented in hardware, firmware, software, or a combination thereof. Those skilled in the art will understand that the various illustrative logical blocks, modules, circuits, and algorithm steps described in connection with the disclosure herein may be implemented in electronic hardware, computer software, or combinations of both. To clearly illustrate this interchange of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends on the specific application and design requirements imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementations should not be interpreted as causing a departure from the scope of the present disclosure.

하드웨어 구현에서, 기법들을 수행하는 데 이용되는 프로세싱 유닛들은, 하나 이상의 ASIC들, DSP들, 디지털 신호 프로세싱 디바이스들(digital signal processing devices; DSPD들), 프로그램가능 논리 디바이스들(programmable logic devices; PLD들), 필드 프로그램가능 게이트 어레이들(field programmable gate arrays; FPGA들), 프로세서들, 제어기들, 마이크로제어기들, 마이크로프로세서들, 전자 디바이스들, 본 개시에 설명된 기능들을 수행하도록 설계된 다른 전자 유닛들, 컴퓨터, 또는 이들의 조합 내에서 구현될 수도 있다.In a hardware implementation, the processing units used to perform the techniques may include one or more ASICs, DSPs, digital signal processing devices (DSPDs), programmable logic devices (PLDs). ), field programmable gate arrays (FPGAs), processors, controllers, microcontrollers, microprocessors, electronic devices, and other electronic units designed to perform the functions described in this disclosure. , a computer, or a combination thereof.

따라서, 본 개시와 연계하여 설명된 다양한 예시적인 논리 블록들, 모듈들, 및 회로들은 범용 프로세서, DSP, ASIC, FPGA나 다른 프로그램 가능 논리 디바이스, 이산 게이트나 트랜지스터 로직, 이산 하드웨어 컴포넌트들, 또는 본원에 설명된 기능들을 수행하도록 설계된 것들의 임의의 조합으로 구현되거나 수행될 수도 있다. 범용 프로세서는 마이크로프로세서일 수도 있지만, 대안으로, 프로세서는 임의의 종래의 프로세서, 제어기, 마이크로제어기, 또는 상태 머신일 수도 있다. 프로세서는 또한, 컴퓨팅 디바이스들의 조합, 예를 들면, DSP와 마이크로프로세서, 복수의 마이크로프로세서들, DSP 코어와 연계한 하나 이상의 마이크로프로세서들, 또는 임의의 다른 구성의 조합으로서 구현될 수도 있다.Accordingly, the various illustrative logical blocks, modules, and circuits described in connection with this disclosure may be general-purpose processors, DSPs, ASICs, FPGAs or other programmable logic devices, discrete gate or transistor logic, discrete hardware components, or It may be implemented or performed as any combination of those designed to perform the functions described in. A general-purpose processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. A processor may also be implemented as a combination of computing devices, such as a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other configuration.

펌웨어 및/또는 소프트웨어 구현에 있어서, 기법들은 랜덤 액세스 메모리(random access memory; RAM), 판독 전용 메모리(read-only memory; ROM), 비휘발성 RAM(non-volatile random access memory; NVRAM), PROM(programmable read-only memory), EPROM(erasable programmable read-only memory), EEPROM(electrically erasable PROM), 플래시 메모리, 컴팩트 디스크(compact disc; CD), 자기 또는 광학 데이터 스토리지 디바이스 등과 같은 컴퓨터 판독가능 매체 상에 저장된 명령들로서 구현될 수도 있다. 명령들은 하나 이상의 프로세서들에 의해 실행 가능할 수도 있고, 프로세서(들)로 하여금 본 개시에 설명된 기능의 특정 양태들을 수행하게 할 수도 있다.For firmware and/or software implementations, techniques include random access memory (RAM), read-only memory (ROM), non-volatile random access memory (NVRAM), and PROM ( on computer-readable media such as programmable read-only memory (EPROM), electrically erasable PROM (EEPROM), flash memory, compact disc (CD), magnetic or optical data storage devices, etc. It may also be implemented as stored instructions. Instructions may be executable by one or more processors and may cause the processor(s) to perform certain aspects of the functionality described in this disclosure.

소프트웨어로 구현되는 경우, 상술된 기법들은 하나 이상의 명령들 또는 코드로서 컴퓨터 판독 가능한 매체 상에 저장되거나 또는 컴퓨터 판독 가능한 매체를 통해 전송될 수도 있다. 컴퓨터 판독가능 매체들은 한 장소에서 다른 장소로 컴퓨터 프로그램의 전송을 용이하게 하는 임의의 매체를 포함하여 컴퓨터 저장 매체들 및 통신 매체들 양자를 포함한다. 저장 매체들은 컴퓨터에 의해 액세스될 수 있는 임의의 이용 가능한 매체들일 수도 있다. 비제한적인 예로서, 이러한 컴퓨터 판독가능 매체는 RAM, ROM, EEPROM, CD-ROM 또는 다른 광학 디스크 스토리지, 자기 디스크 스토리지 또는 다른 자기 스토리지 디바이스들, 또는 소망의 프로그램 코드를 명령들 또는 데이터 구조들의 형태로 이송 또는 저장하기 위해 사용될 수 있으며 컴퓨터에 의해 액세스될 수 있는 임의의 다른 매체를 포함할 수 있다. 또한, 임의의 접속이 컴퓨터 판독가능 매체로 적절히 칭해진다.When implemented in software, the techniques described above may be stored on or transmitted through a computer-readable medium as one or more instructions or code. Computer-readable media includes both computer storage media and communication media, including any medium that facilitates transfer of a computer program from one place to another. Storage media may be any available media that can be accessed by a computer. By way of non-limiting example, such computer-readable media may include RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or the desired program code in the form of instructions or data structures. It can be used to transfer or store data and can include any other media that can be accessed by a computer. Any connection is also properly termed a computer-readable medium.

예를 들어, 소프트웨어가 동축 케이블, 광섬유 케이블, 연선, 디지털 가입자 회선 (DSL), 또는 적외선, 무선, 및 마이크로파와 같은 무선 기술들을 사용하여 웹사이트, 서버, 또는 다른 원격 소스로부터 전송되면, 동축 케이블, 광섬유 케이블, 연선, 디지털 가입자 회선, 또는 적외선, 무선, 및 마이크로파와 같은 무선 기술들은 매체의 정의 내에 포함된다. 본원에서 사용된 디스크(disk) 와 디스크(disc)는, CD, 레이저 디스크, 광 디스크, DVD(digital versatile disc), 플로피디스크, 및 블루레이 디스크를 포함하며, 여기서 디스크들(disks)은 보통 자기적으로 데이터를 재생하고, 반면 디스크들(discs) 은 레이저를 이용하여 광학적으로 데이터를 재생한다. 위의 조합들도 컴퓨터 판독가능 매체들의 범위 내에 포함되어야 한다.For example, if the Software is transmitted from a website, server, or other remote source using coaxial cable, fiber optic cable, twisted pair cable, digital subscriber line (DSL), or wireless technologies such as infrared, radio, and microwave, , fiber optic cable, twisted pair, digital subscriber line, or wireless technologies such as infrared, radio, and microwave are included within the definition of medium. As used herein, disk and disk include CD, laser disk, optical disk, digital versatile disc (DVD), floppy disk, and Blu-ray disk, where disks are usually magnetic. It reproduces data optically, while discs reproduce data optically using lasers. Combinations of the above should also be included within the scope of computer-readable media.

소프트웨어 모듈은, RAM 메모리, 플래시 메모리, ROM 메모리, EPROM 메모리, EEPROM 메모리, 레지스터들, 하드 디스크, 이동식 디스크, CD-ROM, 또는 공지된 임의의 다른 형태의 저장 매체 내에 상주할 수도 있다. 예시적인 저장 매체는, 프로세가 저장 매체로부터 정보를 판독하거나 저장 매체에 정보를 기록할 수 있도록, 프로세서에 연결될 수 있다. 대안으로, 저장 매체는 프로세서에 통합될 수도 있다. 프로세서와 저장 매체는 ASIC 내에 존재할 수도 있다. ASIC은 유저 단말 내에 존재할 수도 있다. 대안으로, 프로세서와 저장 매체는 유저 단말에서 개별 구성요소들로서 존재할 수도 있다.A software module may reside in RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, a hard disk, a removable disk, a CD-ROM, or any other form of storage medium known. An exemplary storage medium may be coupled to the processor such that the processor may read information from or write information to the storage medium. Alternatively, the storage medium may be integrated into the processor. The processor and storage medium may reside within an ASIC. ASIC may exist within the user terminal. Alternatively, the processor and storage medium may exist as separate components in the user terminal.

이상 설명된 실시예들이 하나 이상의 독립형 컴퓨터 시스템에서 현재 개시된 주제의 양태들을 활용하는 것으로 기술되었으나, 본 개시는 이에 한정되지 않고, 네트워크나 분산 컴퓨팅 환경과 같은 임의의 컴퓨팅 환경과 연계하여 구현될 수도 있다. 또 나아가, 본 개시에서 주제의 양상들은 복수의 프로세싱 칩들이나 장치들에서 구현될 수도 있고, 스토리지는 복수의 장치들에 걸쳐 유사하게 영향을 받게 될 수도 있다. 이러한 장치들은 PC들, 네트워크 서버들, 및 휴대용 장치들을 포함할 수도 있다.Although the above-described embodiments have been described as utilizing aspects of the presently disclosed subject matter in one or more standalone computer systems, the disclosure is not limited thereto and may also be implemented in conjunction with any computing environment, such as a network or distributed computing environment. . Furthermore, aspects of the subject matter of this disclosure may be implemented in multiple processing chips or devices, and storage may be similarly effected across the multiple devices. These devices may include PCs, network servers, and portable devices.

본 명세서에서는 본 개시가 일부 실시예들과 관련하여 설명되었지만, 본 개시의 발명이 속하는 기술분야의 통상의 기술자가 이해할 수 있는 본 개시의 범위를 벗어나지 않는 범위에서 다양한 변형 및 변경이 이루어질 수 있다. 또한, 그러한 변형 및 변경은 본 명세서에 첨부된 특허청구의 범위 내에 속하는 것으로 생각되어야 한다.Although the present disclosure has been described in relation to some embodiments in this specification, various modifications and changes may be made without departing from the scope of the present disclosure as can be understood by a person skilled in the art to which the invention pertains. Additionally, such modifications and changes should be considered to fall within the scope of the claims appended hereto.

110: 포인트 클라우드 데이터
120: 라이다 센서와 연관된 정보
130: 레이더 센서와 연관된 정보
140: 합성 레이더 데이터 생성 시스템
150: 합성 레이더 데이터
110: Point cloud data
120: Information related to lidar sensor
130: Information associated with radar sensor
140: Synthetic radar data generation system
150: Synthetic radar data

Claims (12)

적어도 하나의 프로세서에 의해 수행되는, 합성 레이더(RADAR: RAdio Detection And Ranging) 데이터 생성 방법,
라이다(LiDAR: Light Detection And Ranging) 센서에 의해 생성된 포인트 클라우드 데이터를 수신하는 단계 - 상기 포인트 클라우드 데이터는 제1 세트의 포인트를 포함함 -;
상기 포인트 클라우드 데이터와 연관된 3차원 바운딩 박스 정보를 수신하는 단계; 및
상기 포인트 클라우드 데이터 및 상기 3차원 바운딩 박스 정보에 기초하여, 상기 포인트 클라우드 데이터와 대응하는 합성 레이더 데이터를 생성하는 단계
를 포함하고,
상기 합성 레이더 데이터는 레이더 센서에 의해 생성된 데이터를 모사하고,
상기 합성 레이더 데이터를 생성하는 단계는,
상기 레이더 센서의 FOV(Field of View) 정보를 수신하는 단계;
상기 레이더 센서의 FOV에 해당하는 영역을 복수의 빈으로 분할하는 단계; 및
상기 복수의 빈을 이용하여, 상기 제1 세트의 포인트 중 적어도 일부를 제거하는 단계
를 포함하는, 합성 레이더 데이터 생성 방법.
A method of generating synthetic radar (RAdio Detection And Ranging) data, performed by at least one processor,
Receiving point cloud data generated by a LiDAR (Light Detection And Ranging) sensor, wherein the point cloud data includes a first set of points;
Receiving 3D bounding box information associated with the point cloud data; and
Based on the point cloud data and the 3D bounding box information, generating synthetic radar data corresponding to the point cloud data.
Including,
The synthetic radar data simulates data generated by a radar sensor,
The step of generating the synthetic radar data is,
Receiving field of view (FOV) information of the radar sensor;
Dividing an area corresponding to the FOV of the radar sensor into a plurality of bins; and
removing at least some of the first set of points using the plurality of bins.
Method for generating synthetic radar data, including.
제1항에 있어서,
상기 3차원 바운딩 박스 정보는 위치 정보, 배향 정보, 클래스 정보, 너비 정보, 높이 정보, 깊이 정보 또는 상대 속도 정보 중 적어도 하나를 포함하는, 합성 레이더 데이터 생성 방법.
According to paragraph 1,
The three-dimensional bounding box information includes at least one of position information, orientation information, class information, width information, height information, depth information, and relative speed information.
제1항에 있어서,
상기 합성 레이더 데이터를 생성하는 단계는,
상기 라이다 센서와 연관된 제1 외부 파라미터(extrinsic parameter)를 수신하는 단계;
상기 레이더 센서와 연관된 제2 외부 파라미터를 수신하는 단계; 및
상기 제1 외부 파라미터 및 상기 제2 외부 파라미터에 기초하여, 상기 제1 세트의 포인트 중 상기 레이더 센서의 FOV(Field Of View) 내의 제2 세트의 포인트를 식별하는 단계
를 더 포함하는, 합성 레이더 데이터 생성 방법.
According to paragraph 1,
The step of generating the synthetic radar data is,
Receiving a first extrinsic parameter associated with the LiDAR sensor;
receiving a second external parameter associated with the radar sensor; and
Identifying a second set of points within a field of view (FOV) of the radar sensor among the first set of points, based on the first external parameter and the second external parameter.
A method for generating synthetic radar data, further comprising:
제3항에 있어서,
상기 제2 세트의 포인트를 식별하는 단계는,
상기 제1 외부 파라미터 및 상기 제2 외부 파라미터에 기초하여, 상기 제1 세트의 포인트를 구면 좌표계(spherical coordinate system)로 변환하는 단계
를 포함하고,
상기 제2 세트의 포인트의 위치 정보가 구면 좌표계로 표현되는, 합성 레이더 데이터 생성 방법.
According to paragraph 3,
Identifying the second set of points includes:
Converting the first set of points to a spherical coordinate system based on the first external parameter and the second external parameter.
Including,
A method of generating synthetic radar data, wherein the location information of the second set of points is expressed in a spherical coordinate system.
제3항에 있어서,
상기 합성 레이더 데이터를 생성하는 단계는,
상기 제2 세트의 포인트 중 상기 3차원 바운딩 박스에 포함된 제3 세트의 포인트를 동적 객체와 연관된 것으로 판정하는 단계; 및
상기 제2 세트의 포인트 중 상기 3차원 바운딩 박스에 포함되지 않은 제4 세트의 포인트를 정적 객체와 연관된 것으로 판정하는 단계
를 더 포함하는, 합성 레이더 데이터 생성 방법.
According to paragraph 3,
The step of generating the synthetic radar data is,
determining that a third set of points included in the three-dimensional bounding box among the second set of points are associated with a dynamic object; and
Determining that a fourth set of points that are not included in the three-dimensional bounding box among the second set of points are associated with a static object.
A method for generating synthetic radar data, further comprising:
제5항에 있어서,
상기 제4 세트의 포인트 각각은 거리 정보, 앙각 정보 및 방위각 정보를 포함하고,
상기 합성 레이더 데이터를 생성하는 단계는,
상기 3차원 바운딩 박스 정보에 기초하여, 상기 제3 세트의 포인트와 연관된 RCS(Radar Cross Section) 정보를 생성하는 단계; 및
상기 앙각 정보에 기초하여, 상기 제4 세트의 포인트 각각에 대한 RCS 정보를 생성하는 단계
를 더 포함하는, 합성 레이더 데이터 생성 방법.
According to clause 5,
Each of the fourth set of points includes distance information, elevation angle information, and azimuth information,
The step of generating the synthetic radar data is,
Based on the 3D bounding box information, generating RCS (Radar Cross Section) information associated with the third set of points; and
Based on the elevation angle information, generating RCS information for each of the fourth set of points.
A method for generating synthetic radar data, further comprising:
제5항에 있어서,
상기 합성 레이더 데이터를 생성하는 단계는,
상기 3차원 바운딩 박스 정보, 상기 제1 외부 파라미터 및 상기 제2 외부 파라미터에 기초하여, 상기 제3 세트의 포인트의 상대 속도 정보를 산출하는 단계; 및
상기 제4 세트의 포인트 각각의 위치 정보, 상기 제1 외부 파라미터 및 상기 제2 외부 파라미터에 기초하여, 상기 제4 세트의 포인트 각각의 상대 속도 정보를 산출하는 단계
를 더 포함하는, 합성 레이더 데이터 생성 방법.
According to clause 5,
The step of generating the synthetic radar data is,
calculating relative velocity information of the third set of points based on the three-dimensional bounding box information, the first external parameter, and the second external parameter; and
Calculating relative speed information of each of the points of the fourth set based on the position information of each of the points of the fourth set, the first external parameter, and the second external parameter.
A method for generating synthetic radar data, further comprising:
제1항에 있어서,
상기 제1 세트의 포인트 중 적어도 일부를 제거하는 단계는,
상기 제1 세트의 포인트를 상기 복수의 빈에 매핑하는 단계; 및
상기 복수의 빈 중 2개 이상의 포인트를 포함하는 빈들에 대해 빈 내에 하나의 포인트만 남기고 나머지 포인트를 제거하는 단계
를 포함하는, 합성 레이더 데이터 생성 방법.
According to paragraph 1,
Removing at least some of the first set of points includes:
mapping the first set of points to the plurality of bins; and
For bins containing two or more points among the plurality of bins, leaving only one point in the bin and removing the remaining points
Method for generating synthetic radar data, including.
제1항에 있어서,
상기 제1 세트의 포인트 중 적어도 일부를 제거하는 단계는,
상기 제1 세트의 포인트를 상기 복수의 빈에 매핑하는 단계; 및
상기 복수의 빈 중 하나의 포인트를 포함하는 빈들 중 일부에 대한 포인트를 제거하는 단계
를 포함하는, 합성 레이더 데이터 생성 방법.
According to paragraph 1,
Removing at least some of the first set of points includes:
mapping the first set of points to the plurality of bins; and
removing points for some of the bins containing a point among the plurality of bins.
Method for generating synthetic radar data, including.
제1항에 있어서,
상기 합성 레이더 데이터는 복수의 포인트를 포함하고,
각 포인트는 위치 정보, 거리 정보, 상대 속도 정보 또는 RCS 정보 중 적어도 하나를 포함하는, 합성 레이더 데이터 생성 방법.
According to paragraph 1,
The synthetic radar data includes a plurality of points,
A method of generating synthetic radar data, wherein each point includes at least one of position information, distance information, relative speed information, or RCS information.
제1항 내지 제10항 중 어느 한 항에 따른 방법을 컴퓨터에서 실행하기 위해 컴퓨터 판독 가능한 기록 매체에 저장된 컴퓨터 프로그램.
A computer program stored in a computer-readable recording medium for executing the method according to any one of claims 1 to 10 on a computer.
정보 처리 시스템으로서,
통신 모듈;
메모리; 및
상기 메모리와 연결되고, 상기 메모리에 포함된 컴퓨터 판독 가능한 적어도 하나의 프로그램을 실행하도록 구성된 적어도 하나의 프로세서
를 포함하고,
상기 적어도 하나의 프로그램은,
라이다 센서에 의해 생성된 포인트 클라우드 데이터를 수신하고,
상기 포인트 클라우드 데이터와 연관된 3차원 바운딩 박스 정보를 수신하고 - 상기 포인트 클라우드 데이터는 제1 세트의 포인트를 포함함 -,
상기 포인트 클라우드 데이터 및 상기 3차원 바운딩 박스 정보에 기초하여, 상기 포인트 클라우드 데이터와 대응하는 합성 레이더 데이터를 생성하기 위한 명령어들을 포함하고,
상기 합성 레이더 데이터는 레이더 센서에 의해 생성된 데이터를 모사하고,
상기 합성 레이더 데이터를 생성하는 것은,
상기 레이더 센서의 FOV(Field of View) 정보를 수신하고,
상기 레이더 센서의 FOV에 해당하는 영역을 복수의 빈으로 분할하고,
상기 복수의 빈을 이용하여, 상기 제1 세트의 포인트 중 적어도 일부를 제거하는 것을 포함하는, 정보 처리 시스템.
As an information processing system,
communication module;
Memory; and
At least one processor connected to the memory and configured to execute at least one computer-readable program included in the memory
Including,
The at least one program is,
Receive point cloud data generated by the LiDAR sensor,
Receive three-dimensional bounding box information associated with the point cloud data, wherein the point cloud data includes a first set of points,
Based on the point cloud data and the 3D bounding box information, it includes instructions for generating synthetic radar data corresponding to the point cloud data,
The synthetic radar data simulates data generated by a radar sensor,
Generating the synthetic radar data includes:
Receive FOV (Field of View) information from the radar sensor,
Divide the area corresponding to the FOV of the radar sensor into a plurality of bins,
and removing at least some of the first set of points using the plurality of bins.
KR1020240014197A 2024-01-30 2024-01-30 Method and system for generating synthetic radar data KR102665806B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020240014197A KR102665806B1 (en) 2024-01-30 2024-01-30 Method and system for generating synthetic radar data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020240014197A KR102665806B1 (en) 2024-01-30 2024-01-30 Method and system for generating synthetic radar data

Publications (1)

Publication Number Publication Date
KR102665806B1 true KR102665806B1 (en) 2024-05-13

Family

ID=91073364

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020240014197A KR102665806B1 (en) 2024-01-30 2024-01-30 Method and system for generating synthetic radar data

Country Status (1)

Country Link
KR (1) KR102665806B1 (en)

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Audi Autonomous Driving Dataset(A2D2), [online], 2020년, [2024년 3월 13일 검색], 인터넷, https://www.a2d2.audi/a2d2/en/dataset.html* *
Leichen Wang 外 2인. L2R GAN: LiDAR-to-Radar Translation. Asian Conference on Computer Vision(ACCV) 2020, 2020년 11월 30일 - 12월 4일* *

Similar Documents

Publication Publication Date Title
US11982747B2 (en) Systems and methods for generating synthetic sensor data
US11763474B2 (en) Method for generating simulated point cloud data, device, and storage medium
US12020476B2 (en) Data synthesis for autonomous control systems
US11455565B2 (en) Augmenting real sensor recordings with simulated sensor data
US11487988B2 (en) Augmenting real sensor recordings with simulated sensor data
CN111932943B (en) Dynamic target detection method and device, storage medium and roadbed monitoring equipment
Muckenhuber et al. Object-based sensor model for virtual testing of ADAS/AD functions
CN105793730A (en) Lidar-based classification of object movement
KR101590253B1 (en) Method and device for simulation of sonar images of multi-beam imaging sonar
KR20210022016A (en) Method and system for improving depth information of feature points using camera and lidar
US11846727B2 (en) System and method for emulating echo signals for a LiDAR sensor
WO2020133230A1 (en) Radar simulation method, apparatus and system
JP7322121B2 (en) ROAD INFORMATION CHANGE AREA COMPLEMENTATION METHOD AND SYSTEM
CN117269940B (en) Point cloud data generation method and perception capability verification method of laser radar
KR102665806B1 (en) Method and system for generating synthetic radar data
CN117893412B (en) Point cloud data filtering method, device, equipment and storage medium
Marchand et al. Evaluating Surface Mesh Reconstruction of Open Scenes
CN116719054B (en) Virtual laser radar point cloud generation method, computer equipment and storage medium
CN111316119A (en) Radar simulation method and device
KR20240080109A (en) Method and system for collecting learning data for artificial intelligence model based on virtual simulation environment
CN117034579A (en) Point cloud data generation method, device, equipment and storage medium
CN117854068A (en) Point cloud labeling method and device, electronic equipment and storage medium
CN116011101A (en) Simulation method, simulation device, electronic equipment and storage medium
Vogel et al. LiDAR-GEiL: LiDAR GPU Exploitation in Lightsimulations.
Józsa et al. Reconstruction of 3D Urban Scenes Using a Moving Lidar Sensor

Legal Events

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