WO2022250480A1 - 차로 맵 상에 객체의 위치를 결정하기 위한 방법 및 장치 - Google Patents

차로 맵 상에 객체의 위치를 결정하기 위한 방법 및 장치 Download PDF

Info

Publication number
WO2022250480A1
WO2022250480A1 PCT/KR2022/007516 KR2022007516W WO2022250480A1 WO 2022250480 A1 WO2022250480 A1 WO 2022250480A1 KR 2022007516 W KR2022007516 W KR 2022007516W WO 2022250480 A1 WO2022250480 A1 WO 2022250480A1
Authority
WO
WIPO (PCT)
Prior art keywords
image data
feature
vehicle
features
location
Prior art date
Application number
PCT/KR2022/007516
Other languages
English (en)
French (fr)
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
Priority claimed from KR1020210169974A external-priority patent/KR102491524B1/ko
Application filed by 포티투닷 주식회사 filed Critical 포티투닷 주식회사
Priority to DE112022002754.1T priority Critical patent/DE112022002754T5/de
Publication of WO2022250480A1 publication Critical patent/WO2022250480A1/ko

Links

Images

Classifications

    • 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
    • B60W30/00Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
    • B60W30/10Path keeping
    • B60W30/12Lane keeping
    • 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
    • B60W30/00Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
    • B60W30/18Propelling the vehicle
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W40/00Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
    • B60W40/02Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to ambient conditions
    • B60W40/06Road conditions
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W60/00Drive control systems specially adapted for autonomous road vehicles
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle

Definitions

  • the present invention relates to a method and apparatus for determining the location of an object on a lane map.
  • a vehicle traveling on the road may drive on any one of a plurality of lanes included in the road.
  • a vehicle may frequently change lanes while driving, and a situation in which the number of lanes on a road is changed also frequently occurs.
  • Autonomous driving is a technology that allows a vehicle to reach its destination on its own without the driver manipulating the steering wheel, accelerator pedal, or brake.
  • An object of the present invention is to provide a method and apparatus for determining the location of an object on a lane map.
  • the problem to be solved by the present invention is not limited to the above-mentioned problems, and other problems and advantages of the present invention that are not mentioned can be understood by the following description and more clearly understood by the embodiments of the present invention. It will be. In addition, it will be appreciated that the problems and advantages to be solved by the present invention can be realized by the means and combinations indicated in the claims.
  • a first aspect of the present disclosure provides a method for determining a location of an object on a road map, comprising: obtaining image data photographed by a camera mounted on a vehicle; generating feature information for a plurality of features included in the image data by performing a predetermined process on the image data; determining a plurality of features corresponding to the same object in the plurality of image data based on a degree of correlation between the plurality of features included in the image data; and determining a location of the object on the lane map based on location information on the lane map of the vehicle and feature location information on the plurality of image data.
  • a second aspect of the present disclosure provides an apparatus for determining a location of an object on a road map, comprising: a memory in which at least one program is stored; and a processor performing an operation by executing the at least one program, wherein the processor obtains image data photographed by a camera mounted in a vehicle, and performs a predetermined process on the image data to obtain the image data.
  • Generates feature information for a plurality of features included in and based on a correlation between the plurality of features included in the image data, a plurality of features corresponding to the same object in the plurality of image data. and determining a location of an object on the lane map based on location information on the lane map of the vehicle and feature location information on the plurality of image data.
  • a third aspect of the present disclosure may provide a computer-readable recording medium recording a program for executing the method according to the first aspect on a computer.
  • 1 to 3 are diagrams for explaining an autonomous driving method according to an exemplary embodiment.
  • FIG. 4 is a diagram for explaining an example of a plurality of objects included in image data according to an exemplary embodiment.
  • 5A and 5B are views for explaining feature information included in image data according to an exemplary embodiment.
  • 6A and 6B are exemplary diagrams for describing feature merging in image data according to an exemplary embodiment.
  • FIG. 7 is an exemplary diagram for explaining a method of determining a location of an object on a lane map according to an exemplary embodiment.
  • FIG. 8 is an exemplary diagram for explaining a method of determining a location of an object based on vehicle location information and feature locations on an image, according to an exemplary embodiment.
  • FIG. 9 is an exemplary diagram for explaining a method of determining a location of an object on a road map using a plurality of driving trajectories according to an exemplary embodiment.
  • FIG. 10 is an exemplary diagram for explaining a method of fitting a lane and an object according to an exemplary embodiment.
  • FIG. 11 is a flowchart of a method of determining a location of an object on a lane map according to an embodiment.
  • FIG. 12 is a block diagram of an object location determining device according to an exemplary embodiment.
  • the present disclosure relates to a method and apparatus for determining the location of an object on a lane map.
  • image data photographed by a camera mounted on a vehicle may be obtained.
  • the method may generate feature information for a plurality of features included in the image data by performing a predetermined process on the image data.
  • the method may determine a plurality of features corresponding to the same object in the plurality of image data based on a degree of correlation between the plurality of features included in the image data.
  • the method may determine the location of the object on the lane map based on the vehicle's location information on the lane map and feature location information on the plurality of image data.
  • Some embodiments of the present disclosure may be represented as functional block structures and various processing steps. Some or all of these functional blocks may be implemented as a varying number of hardware and/or software components that perform specific functions.
  • functional blocks of the present disclosure may be implemented by one or more microprocessors or circuit configurations for a predetermined function.
  • the functional blocks of this disclosure may be implemented in various programming or scripting languages.
  • Functional blocks may be implemented as an algorithm running on one or more processors.
  • the present disclosure may employ prior art for electronic environment setup, signal processing, and/or data processing, etc. Terms such as “mechanism,” “element,” “means,” and “composition” will be used broadly. It can be, and is not limited to mechanical and physical configurations.
  • connecting lines or connecting members between components shown in the drawings are only examples of functional connections and/or physical or circuit connections. In an actual device, connections between components may be represented by various functional connections, physical connections, or circuit connections that can be replaced or added.
  • 'vehicle' may refer to all types of transportation means such as a car, bus, motorcycle, kickboard, or truck that are used to move people or objects with engines.
  • 1 to 3 are diagrams for explaining an autonomous driving method according to an exemplary embodiment.
  • an autonomous driving device may be mounted on a vehicle to implement an autonomous vehicle 10 .
  • An autonomous driving device mounted on the autonomous vehicle 10 may include various sensors for collecting surrounding situation information.
  • the autonomous driving device may detect the movement of the preceding vehicle 20 running in front through an image sensor and/or an event sensor mounted on the front of the autonomous vehicle 10 .
  • the self-driving device may further include sensors for detecting the front side of the self-driving vehicle 10, another driving vehicle 30 operating in a side road, and pedestrians around the self-driving vehicle 10.
  • At least one of the sensors for collecting situational information around the self-driving vehicle may have a predetermined field of view (FoV) as shown in FIG. 1 .
  • FoV field of view
  • information detected in the center of the sensor may have a relatively high importance. This may be because most of the information corresponding to the motion of the preceding vehicle 20 is included in the information detected from the center of the sensor.
  • the self-driving device controls the movement of the self-driving vehicle 10 by processing information collected by sensors of the self-driving vehicle 10 in real time, while storing at least some of the information collected by the sensors in a memory device. .
  • an autonomous driving device 40 may include a sensor unit 41 , a processor 46 , a memory system 47 , a vehicle body control module 48 , and the like.
  • the sensor unit 41 includes a plurality of sensors 42-45, and the plurality of sensors 42-45 may include an image sensor, an event sensor, an illuminance sensor, a GPS device, an acceleration sensor, and the like.
  • Data collected by sensors 42-45 may be passed to processor 46.
  • the processor 46 stores the data collected by the sensors 42-45 in the memory system 47, and controls the body control module 48 based on the data collected by the sensors 42-45 to control the vehicle movement can be determined.
  • the memory system 47 may include two or more memory devices and a system controller for controlling the memory devices. Each of the memory devices may be provided as a single semiconductor chip.
  • each of the memory devices included in the memory system 47 may include a memory controller, and the memory controller may include an artificial intelligence (AI) operation circuit such as a neural network.
  • AI artificial intelligence
  • the memory controller may generate calculation data by assigning a predetermined weight to data received from the sensors 42 to 45 or the processor 46 and store the calculation data in a memory chip.
  • image data 50 may be data acquired by a sensor mounted on the front of an autonomous vehicle. Therefore, the image data 50 may include the front part 51 of the autonomous vehicle, the preceding vehicle 52 in the same lane as the autonomous vehicle, the driving vehicle 53 and the background 54 around the autonomous vehicle. .
  • the data of the area where the front part 51 and the background 54 of the autonomous vehicle appear is data that has little possibility to affect the operation of the autonomous vehicle.
  • the front part 51 and the background 54 of the autonomous vehicle may be regarded as data having relatively low importance.
  • the distance to the preceding vehicle 52 and the movement of the driving vehicle 53 to change lanes may be very important factors in safe operation of the autonomous vehicle. Accordingly, data of an area including the preceding vehicle 52 and the driving vehicle 53 in the image data 50 may have a relatively high importance in driving the autonomous vehicle.
  • the memory device of the self-driving device may store the image data 50 received from the sensor by assigning different weights to each region. For example, a high weight is given to data in an area including the preceding vehicle 52 and the driving vehicle 53, and a low weight is given to data in an area where the front part 51 and the background 54 of the self-driving vehicle appear. can be granted.
  • FIG. 4 is a diagram for explaining an example of a plurality of objects included in image data according to an exemplary embodiment.
  • Image data obtained from a camera mounted on a vehicle at a specific time point may include a plurality of objects.
  • Information about objects includes object type information and object property information.
  • the object type information is index information indicating the type of object, and is composed of a group, which is a large range, and a class, which is a detailed range.
  • the object attribute information indicates attribute information on the current state of the object, and includes motion information, rotation information, traffic information, color information, and visibility information.
  • groups and classes included in the object type information may be as shown in Table 1 below, but are not limited thereto.
  • information included in the object property information may include Action, Rotate, Traffic info, color, and visibility information.
  • Action information expresses motion information of an object and can be defined as stop, parking, and movement.
  • stop, parking, and movement may be determined as object attribute information, and in the case of an immovable object such as a traffic light, object attribute information may be determined as a default value of stop.
  • Rotate information expresses rotation information of an object and can be defined as front, back, horizontal, vertical, and side.
  • object property information may be determined for the front, rear, and side surfaces, and object property information may be determined for horizontal or vertical traffic lights in a horizontal or vertical direction, respectively.
  • Traffic info means the traffic information of an object, and can be defined as directions, cautions, regulations, auxiliary signs, etc. of traffic signs.
  • Color means the color information of an object and can express the color of an object, the color of traffic lights and traffic signs.
  • object property information of a specific vehicle may be determined as stop, front, red, and visibility level 3.
  • objects included in an image 400 acquired from a camera may be traffic lights, signs, ego-lanes, intersections, road markings, barriers, etc., but are not limited thereto.
  • 5A and 5B are views for explaining feature information included in image data according to an exemplary embodiment.
  • a plurality of image data may be obtained from a camera mounted in the vehicle.
  • An object 511 may be included in image data 510 obtained from a camera mounted in a vehicle. Referring to FIG. 5A , the object 511 may be a traffic light.
  • Image data may have a predetermined size M x N (M and N are natural numbers).
  • M and N are natural numbers.
  • the same object 511 may be included in a plurality of image data, but as the vehicle travels along the road, the relative position of the vehicle and the object 511 continues to change. Accordingly, even the same object 511 is included in each image data. position will change.
  • the feature 521 is metadata about the object 511, and includes object type information (group, class, etc.), location information of the object 511 on the image data 520, size information of the object 511, and the like. this may be included.
  • the feature information includes information that the corresponding object 511 corresponds to the traffic light class, information that it has a rectangular shape, and information that the lower left vertex of the object 511 is located at (m, n) on the image data. information, and information that the size of the object 511 is a x b.
  • 6A and 6B are exemplary diagrams for describing feature merging in image data according to an exemplary embodiment.
  • the first image data 610 is image data obtained at a first time point
  • the second image data 620 is image data obtained at a second time point after a predetermined time has elapsed from the first time point.
  • first image 601 and the second image 602 are for explanation purposes, and show actual roads photographed by a camera.
  • the same objects are included in the first image data 610 and the second image data 620 .
  • An apparatus for determining the position of an object on a road map may determine a plurality of features indicating the same object in a plurality of image data.
  • a first feature group 611 and a second feature group 612 may be adjacent to each other. That is, when the distance between the objects corresponding to the first feature group 611 and the second feature group 612 and the vehicle is far, the distance corresponding to the first feature group 611 and the second feature group 612 An actual distance difference between objects may not be reflected and objects may be located adjacent to each other on the first image data 610 .
  • the first feature group 621 and the second feature group 622 may be located at positions somewhat apart from each other. That is, when the distance between objects corresponding to the first feature group 611 and the second feature group 612 and the vehicle becomes closer compared to the position of the vehicle when the first image data 610 is captured, the first An actual distance difference between objects corresponding to the feature group 611 and the second feature group 612 may be further reflected so that the objects may be located at a certain distance from each other on the second image data 620 .
  • the first feature groups 611 and 621 represent the same objects
  • the second feature groups 612 and 622 represent the same objects.
  • the size may also vary.
  • a plurality of features representing the same object may be included in the image data captured while the vehicle is driving, but in the course of driving the vehicle As the position between the vehicle and the object changes from moment to moment, the position, size, positional relationship, and arrangement relationship of the plurality of features become different on each image data.
  • the object positioning apparatus may determine a plurality of features corresponding to the same object in the plurality of image data by aggregating the features in the plurality of image data.
  • the object positioning apparatus may determine a plurality of features corresponding to the same object in the plurality of image data based on the degree of correlation between the plurality of features included in the image data.
  • the degree of correlation may be determined based on an arrangement relationship and a size relationship between a plurality of features, but the factor determining the degree of correlation is not limited thereto.
  • the object positioning apparatus may determine a plurality of features representing the same object in a plurality of image data using a graph-matching method.
  • the object positioning apparatus may designate a plurality of features including a key feature in image data as nodes, set a connection relationship between the plurality of features as a link, and register a graph composed of nodes and links. In addition, the object positioning apparatus may determine whether key features represent the same object in each image data through comparison between graphs registered from different image data.
  • the object positioning device selects the first feature 611a of the first image data and the second feature 621a of the second image data 620, and selects the first feature 611a and the second feature 621a. ) to explore other nearby features.
  • the apparatus for determining the location of an object is configured to detect a first neighboring feature 611b adjacent to a first feature 611a when a second neighboring feature 621b having a similar property to a neighboring feature 611b exists around the second feature 621a.
  • the first feature 611a and the second feature 621a may be registered as a graph as a key feature.
  • the attribute may include at least one of a class, a horizontal/vertical ratio of a feature, a distance, and an angle.
  • the object positioning apparatus may repeat the steps of searching for and registering all features around the first feature 611a as targets. After attempting to construct a graph for all features around the first feature 611a, the object positioning device determines the number of features and the similarity of registered key features (eg, size, size relationship with neighboring features, etc.). Based on this, a similarity between the first feature 611a and the second feature 621a may be calculated.
  • the object positioning device determines the number of features and the similarity of registered key features (eg, size, size relationship with neighboring features, etc.). Based on this, a similarity between the first feature 611a and the second feature 621a may be calculated.
  • the object positioning apparatus performs the steps of searching, registering as a graph, repeating, and calculating a similarity for features other than the second feature 621a of the second image data 620, It may be determined that the first feature 611a of the first image data 610 and the second feature 621a of the second image data 620 having the highest similarity represent the same object.
  • feature information corresponding to object metadata may be utilized without using entire image data.
  • the positions, sizes, positional relationships, arrangement relationships, etc. of a plurality of features are different on each image data as the position between the vehicle and the object changes moment by moment while the vehicle is driving, within the plurality of image data. can determine which is the same object in
  • the object positioning apparatus may determine that features included in the graph have the same depth. Having the same depth may mean that positions in the lateral direction of the road (travel direction of the vehicle) are the same or within a predetermined range (eg, 1 m).
  • the object positioning apparatus may perform the same post-processing on other features included in the graph having the same depth.
  • a plurality of features included in the first feature group 611 and 621 have the same depth, and a plurality of features included in the second feature group 612 and 622 have each other. can be determined to have the same depth.
  • the object positioning device corrects the position of a predetermined feature included in the first feature group 611 or 621, the object positioning device positions the other features included in the first feature group 611 or 621 in the same manner. can be corrected.
  • image data obtained from a camera mounted on a vehicle at a specific time point is shown. While driving the vehicle, the vehicle's road longitudinal position may change (eg change lanes).
  • the first image data 630 is image data taken from a vehicle traveling on the first lane of the road
  • the second image data 640 is image data taken from a vehicle traveling on the fourth lane of the road.
  • first image 603 and the second image 604 are for explanation purposes only, and illustrate actual roads photographed by a camera.
  • the same objects are included in the first image data 630 and the second image data 640 .
  • the object positioning device may determine a plurality of features representing the same object in a plurality of image data.
  • a first feature group 631 and a second feature group 632 may be adjacent to each other. Also, the first feature group 631 may be located on the right side of the second feature group 632 . That is, in the first image data 630 captured while the vehicle is driving on the first lane, the first feature group 631 and the second feature group 632 are arranged according to the relative positional relationship between the vehicle and the plurality of objects. A relationship can be determined as described above.
  • the first feature group 641 and the second feature group 642 may be located at some distance from each other. Also, the first feature group 641 may be located on the left side of the second feature group 642 . That is, in the second image data 640 captured while the vehicle is driving on the fourth lane, the first feature group 641 and the second feature group 642 are arranged according to the relative positional relationship between the vehicle and the plurality of objects. A relationship can be determined as described above.
  • the first feature groups 631 and 641 represent the same objects
  • the second feature groups 632 and 642 represent the same objects.
  • the size may also vary.
  • a plurality of features representing the same object may be included in the image data captured while the vehicle is driving, but which lane the vehicle travels on. As the position between the vehicle and the object changes depending on whether the feature is selected or not, the position, size, positional relationship, and arrangement relationship of the plurality of features become different on each image data.
  • the object positioning apparatus may determine a plurality of features corresponding to the same object in the plurality of image data by merging the features in the plurality of image data.
  • the object positioning apparatus may determine a plurality of features corresponding to the same object in the plurality of image data based on the degree of correlation between the plurality of features included in the image data.
  • the apparatus for determining a position of an object may determine a plurality of features corresponding to the same object from a plurality of image data.
  • feature information corresponding to object metadata may be utilized without using entire image data.
  • the plurality of images You can determine which objects are identical within the data.
  • FIG. 7 is an exemplary diagram for explaining a method of determining a location of an object on a lane map according to an exemplary embodiment.
  • the object location determining device may obtain vehicle location information using a GPS mounted in the vehicle.
  • the location information of the vehicle may be location information on a lane map.
  • the object location determining device may determine the location of the object on the lane map by using location information in image data of a plurality of features determined to correspond to the same object in the plurality of image data.
  • the first feature groups 631 and 641 represent the same objects in the first image data 630 and the second image data 640
  • the second feature group (632, 642) can represent the same objects.
  • the object positioning apparatus determines the location of an object on a lane map by using location information on a lane map acquired through a positioning device connected to a vehicle, and first image data 630 and second image data 640. location can be determined. Meanwhile, the object positioning apparatus may use one or three or more image data to determine the position of an object on a road map.
  • the apparatus for determining the location of an object provides a position of a first object group 710 corresponding to first feature groups 631 and 641 and a second object group corresponding to second feature groups 632 and 642 ( 720 may be determined and displayed on the road map 700 .
  • FIG. 8 is an exemplary diagram for explaining a method of determining a location of an object based on vehicle location information and feature locations on an image, according to an exemplary embodiment.
  • a vehicle 800 is moving from a first position to a second position along a driving route.
  • the object location determination device may obtain location information of the vehicle 800 using a GPS installed in the vehicle 800 or a location confirmation device connected to the vehicle.
  • the object location determining device may obtain location information on a lane map of the vehicle 800 by using location information of the vehicle 800 .
  • the object positioning apparatus may obtain surrounding (front, side, rear, etc.) image data 810a and 810b of the vehicle 800 from the camera 830 mounted in the vehicle 800 .
  • the first image data 810a is image data captured by the camera 830 when the vehicle 800 is located in the first position
  • the second image data 810b is image data when the vehicle 800 is located in the second position. This is image data captured by the camera 830 at the time.
  • the first image data 810a may include the first feature 811
  • the second image data 810b may include the second feature 812 .
  • the first feature 811 and the second feature 812 represent the same object, the traffic light 820 .
  • first feature 811 and the second feature 812 represent the same object, as the vehicle 800 moves from the first location to the second location, the relative distance between the vehicle 800 and the traffic light 820 increases. Accordingly, the positions and sizes of the features 811 and 812 representing the traffic light 820 in each of the image data 810a and 810b captured by the camera 830 of the vehicle 800 change.
  • the object location determination apparatus may determine the location of the object 820 on the road map based on location information of the vehicle 800 on the road map and location information of the features 811 and 812 on the image data 810a and 810b.
  • the object positioning device may determine the location of the object 820 on the road map using a distance measurement method, but the method for determining the location of the object 820 on the road map is not limited thereto.
  • the object location determination device may obtain a posture value of the camera 830 .
  • the posture value of the camera 830 may include factors related to the installation position, installation direction, and installation angle of the camera 830 .
  • the object positioning apparatus considers the attitude value of the camera 830 and generates virtual rays that pass through features 811 and 812 of image data 810a and 810b starting from the camera 830. You can determine the location of the point where the rays meet.
  • the vehicle 800 may be traveling from the first location to the second location.
  • a feature 811 representing the object 820 is displayed, and the camera of the vehicle 800 located at the second position
  • a feature 812 representing the object 820 may be displayed in the second image data 810b captured in 830 .
  • the object positioning device includes a first imaginary ray 841 departing from the camera 830 of the vehicle 800 at a first position and passing through a feature 811 on the first image data 810a, and a second position A location 850 of a point where an imaginary second ray 842 departing from the camera 830 of the vehicle 800 and passing through a feature 812 on the second image data 810b intersects may be determined.
  • the object location determination device may determine the location of the object 820 on the lane map based on the moving distance of the vehicle 800 and the location of a point where virtual rays meet.
  • the object positioning device uses the position 850 of the point where the first ray 841 and the second ray 842 meet and the distance the vehicle 800 moves from the first position to the second position , the location of the object 820 on the lane map may be determined.
  • the object positioning device may further obtain a posture value of the vehicle 800 .
  • the posture value of the vehicle 800 may include factors related to the slope of the road on which the vehicle 800 is driving, the difference in air pressure between tires of the vehicle 800, and the steering angle of the vehicle 800.
  • the object positioning apparatus considers the attitude value of the camera 830 and the attitude value of the vehicle 800, starting from the camera 830 and passing through the features 811 and 812 on the image data 810a and 810b. It is possible to determine the location of the point where the rays meet.
  • 9 is an exemplary diagram for explaining a method of determining a location of an object on a road map using a plurality of driving trajectories according to an exemplary embodiment.
  • a first trajectory 910 and a second trajectory 920 of a vehicle traveling on a predetermined road are shown.
  • the location of the 1-1st object 911 and the 1-2nd object 921 are determined based on a plurality of image data captured while the vehicle travels along the first trajectory 910. position is determined.
  • the location of the 2-1 object 912 and the location of the 2-2 object 922 are determined based on a plurality of image data taken while the vehicle is traveling along the second trajectory 920 to be.
  • the 1-1 object 911 and the 1-2 object 921 are referred to as first group objects, and the 2-1 object 912 and the 2-2 object 922 are referred to as second group objects. shall be referred to as
  • the object positioning apparatus constructs a first graph using first group objects, constructs a second graph using second group objects, and compares the similarity between the first and second graphs to form the first group object. It is possible to determine the same object in the s and the second group objects.
  • the object positioning device targets a predetermined object generated by vehicle or by time, and has the same location around a predetermined object (eg, a similar distance and direction from a road). If objects of the class exist, they can be registered in the graph, and objects with the highest degree of similarity can be determined to be the same object by calculating the degree of similarity based on location.
  • a predetermined object eg, a similar distance and direction from a road.
  • the object positioning device is divided into the 1-1st object 911 and the 1-2nd object 921. It can be composed of one graph, and the second graph can be composed of the 2-1 object 912 and the 2-2 object 922.
  • the object location determining device may determine which objects are the same in each graph by comparing similarities using each object as a key object in the graph.
  • the object positioning device indicates that the 1-1 object 911 and the 2-1 object 912 represent the same object, and the 1-2 object 921 and the 2-2 object 922 can be determined to represent the same object.
  • the object positioning device may display final positions of the objects on the road map 900 by merging positions of objects determined to be the same object.
  • the object location determination apparatus may determine the location of the 1-3 object 931 as the final location by merging the locations of the 1-1 object 911 and the 1-2 object 921 .
  • the object location determination apparatus may determine the location of the 2-3 object 932 as the final location by merging the locations of the 2-1 object 912 and the 2-2 object 922 .
  • FIG. 10 is an exemplary diagram for explaining a method of fitting a lane and an object according to an exemplary embodiment.
  • the object positioning device may obtain a driving trajectory of the vehicle by using a positioning device connected to the vehicle.
  • the positioning device may be a GPS, and hereinafter, it is assumed that the GPS is used as the positioning device.
  • the object positioning apparatus may map the obtained driving trajectory to the road map 1000 and display the driving trajectory on the road map 1000 .
  • the apparatus for determining a location of an object may obtain a first driving trajectory 1011 by using a GPS installed in a vehicle and display the first driving trajectory 1011 on a road map 1000 .
  • a GPS signal received from a GPS mounted in a vehicle may have an error.
  • GPS signal reception may be temporarily unstable.
  • radio waves reflected by the glass surface of a building a vehicle may receive a GPS signal having an error.
  • the object positioning device may determine the current driving lane of the vehicle.
  • Information on the current driving lane may be information included in feature information.
  • the object positioning device may determine that the current driving lane of the vehicle is a predetermined lane 1030 .
  • the object positioning device may determine that the first driving trajectory 1011 obtained from the GPS signal does not match the predetermined road 1030 .
  • the object positioning device calculates the separation distance between predetermined lanes 1030 from the first driving trajectory 1011 obtained from the GPS signal, and when the separation distance exceeds the threshold value, the first driving trajectory 1011 It may be determined that it does not match the predetermined road 1030. This may be a case where the first driving trajectory 1011 and the predetermined lane 1030 do not match due to an error in the GPS signal even though the vehicle is currently driving in the predetermined lane 1030 .
  • the object positioning apparatus may perform lane fitting so that a driving trajectory of the vehicle is fitted to a lane on a lane map, based on the current driving lane included in the feature information.
  • the object positioning apparatus may perform lane fitting in consideration of the distance and curvature between the driving trajectory of the vehicle and lane marking lines on the road map.
  • the object positioning device may linearly move at least a portion of the vehicle's driving trajectory and adjust the curvature of at least a portion of the vehicle's driving trajectory, thereby performing lane fitting such that the driving trajectory of the vehicle coincides with a lane marking line on the road map corresponding to the current driving lane. have.
  • the object positioning apparatus linearly moves at least a portion of the first driving trajectory 1011 of the vehicle and adjusts the curvature of the at least a portion to correct the curvature to the second driving trajectory 1012.
  • Car fitting may be performed to fit the car 1030 .
  • an object 1021 may be displayed on the lane map 1000 .
  • the object positioning apparatus may perform object fitting so that the location of an object on the lane map 1000 is interlocked with and fitted to a lane fitting result.
  • the object positioning device determines the location of the first object 1021 as the second object 1022, in the same way as the first driving trajectory 1011 of the vehicle is corrected to the second driving trajectory 1012.
  • Object fitting can be performed by correcting to the position of .
  • lane fitting may be performed before and/or after image merging described above with reference to FIGS. 6 and 7 is completed.
  • FIG. 11 is a flowchart of a method of determining a location of an object on a lane map according to an embodiment.
  • the processor may obtain image data captured by a camera mounted on a vehicle.
  • the processor may generate feature information on a plurality of features included in the image data by performing a predetermined process on the image data.
  • the predetermined processing may be applied without limitation as long as it is a processing method capable of generating feature information from image data.
  • the predetermined processing may include a processing method capable of generating object type information (group, class, etc.), location information of an object on image data, size information of an object, and the like from image data.
  • predetermined processing is traffic lights detection (DLD), traffic signs detection (TSD), ego-lane recognition (ELR), intersection recognition (ELR), road markings detection (RMD), bump recognition (BR), etc. It can be implemented by a module for
  • the processor may determine a plurality of features corresponding to the same object in the plurality of image data based on the degree of correlation between the plurality of features included in the image data.
  • the processor may determine a plurality of features corresponding to the same object from the plurality of image data by aggregating the plurality of image data.
  • the processor may determine a plurality of features representing the same object in the plurality of image data using a graph-matching method.
  • the processor may select a first feature of the first image data and a second feature of the second image data, and search for other features around the first feature and the second feature.
  • the processor determines the first feature and the second neighboring feature for each of the first neighboring feature and the second neighboring feature.
  • 2 features can be registered as a graph with key features.
  • the attribute may include at least one of a class, a horizontal/vertical ratio of a feature, a distance, and an angle.
  • the processor may repeat the steps of searching for and registering all features around the first feature. After attempting to construct a graph for all features around the first feature, the processor determines the first feature based on the number of features and the similarity of registered key features (eg, size, size relationship with neighboring features, etc.). It is possible to calculate the similarity between the and the second feature.
  • the processor performs the steps of searching for features other than the second feature of the second image data, registering them in a graph, repeating the steps, and calculating a similarity to the first feature of the first image data. It may be determined that the second feature of the second image data with the highest M represents the same object.
  • the processor may determine that features included in the graph have the same depth.
  • the processor may perform the same post-processing on other features included in the graph having the same depth.
  • the processor may determine the location of the object on the lane map based on location information on the lane map of the vehicle and feature location information on a plurality of image data.
  • the processor may obtain location information on a road map of the vehicle using a location checking device connected to the vehicle.
  • the processor may determine the location of the object based on location information on the lane map of the vehicle and feature location information on the image data.
  • the processor may determine the location of the object using location information of a plurality of features determined to correspond to the same object in a plurality of image data.
  • the object may include at least one of a traffic light, a road sign, a road mark, a current driving lane, an intersection, and a bump.
  • the processor may obtain a driving trajectory of the vehicle using a positioning device connected to the vehicle. Also, the processor may perform lane fitting so that a driving trajectory of the vehicle is fitted to a lane on the lane map, based on the current driving lane included in the feature information.
  • the processor may perform object fitting such that the location of an object on the lane map is interlocked with and fitted to a lane fitting result.
  • the processor may display the first locations of the first group objects determined from the first trajectory of the vehicle traveling on a predetermined road on a road map. Also, the processor may display second positions of second group objects determined from a second trajectory of a vehicle traveling on a predetermined road on a road map. In addition, the processor may determine the same object in the first group objects and the second group objects, merge the locations of the objects determined to be the same object, and display the final location of each object on the car map.
  • the processor constructs a first graph using the first group objects, constructs a second graph using second group objects, and compares the similarity between the first graph and the second graph to obtain the first graph.
  • the same object may be determined in the group objects and the second group objects.
  • FIG. 12 is a block diagram of an object location determining device according to an exemplary embodiment.
  • an object location determining device 1200 may include a communication unit 1210, a processor 1220, and a DB 1230.
  • a communication unit 1210 In the object location determining device 1200 of FIG. 12 , only components related to the embodiment are shown. Accordingly, those skilled in the art can understand that other general-purpose components may be further included in addition to the components shown in FIG. 12 . Also, in one embodiment, the object location determining device 1200 may not include the communication unit 1210.
  • the communication unit 1210 may include one or more components that enable wired/wireless communication with an external server or external device.
  • the communication unit 1210 may include at least one of a short-distance communication unit (not shown), a mobile communication unit (not shown), and a broadcast reception unit (not shown).
  • the DB 1230 is hardware that stores various types of data processed in the object location determining device 1200, and may store programs for processing and controlling the processor 1220.
  • the DB 1230 may store payment information, user information, and the like.
  • the DB 1230 includes random access memory (RAM) such as dynamic random access memory (DRAM) and static random access memory (SRAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), and CD-ROM.
  • RAM random access memory
  • DRAM dynamic random access memory
  • SRAM static random access memory
  • ROM read-only memory
  • EEPROM electrically erasable programmable read-only memory
  • CD-ROM compact discs, compact discs, digital versatile discs, and Blu-ray or other optical disk storage, hard disk drive (HDD), solid state drive (SSD), or flash memory.
  • the processor 1220 controls overall operations of the object positioning device 1200 .
  • the processor 1220 may generally control an input unit (not shown), a display (not shown), a communication unit 1210, and the DB 1230 by executing programs stored in the DB 1230.
  • the processor 1220 may control the operation of the object positioning device 1200 by executing programs stored in the DB 1230 .
  • the processor 1220 may control at least some of the operations of the object location determining device described above with reference to FIGS. 1 to 11 .
  • the processor 1220 may include application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), controllers, and microcontrollers. It may be implemented using at least one of micro-controllers, microprocessors, and electrical units for performing other functions.
  • ASICs application specific integrated circuits
  • DSPs digital signal processors
  • DSPDs digital signal processing devices
  • PLDs programmable logic devices
  • FPGAs field programmable gate arrays
  • controllers and microcontrollers. It may be implemented using at least one of micro-controllers, microprocessors, and electrical units for performing other functions.
  • the object location determining device 1200 may be a mobile electronic device.
  • the traffic information providing device 800 may be implemented as a smart phone, a tablet PC, a PC, a smart TV, a personal digital assistant (PDA), a laptop, a media player, a navigation device, a device equipped with a camera, and other mobile electronic devices.
  • the object location determination device 1200 may be implemented as a wearable device such as a watch, glasses, hair band, and ring having communication functions and data processing functions.
  • the object location determining device 1200 may be an electronic device embedded in a vehicle.
  • the object positioning device 1200 may be an electronic device inserted into a vehicle through tuning after a production process.
  • the object location determining device 1200 may be a server located outside a vehicle.
  • a server may be implemented as a computer device or a plurality of computer devices that communicate over a network to provide commands, codes, files, content, services, and the like.
  • the server may receive data necessary for determining a moving path of the vehicle from devices mounted on the vehicle, and determine the moving path of the vehicle based on the received data.
  • a process performed by the object location determining device 1200 may be performed by at least some of a mobile electronic device, an electronic device embedded in a vehicle, and a server located outside the vehicle.
  • Embodiments according to the present invention may be implemented in the form of a computer program that can be executed on a computer through various components, and such a computer program may be recorded on a computer-readable medium.
  • the medium is a magnetic medium such as a hard disk, a floppy disk and a magnetic tape, an optical recording medium such as a CD-ROM and a DVD, a magneto-optical medium such as a floptical disk, and a ROM hardware devices specially configured to store and execute program instructions, such as RAM, flash memory, and the like.
  • the computer program may be specially designed and configured for the present invention, or may be known and usable to those skilled in the art of computer software.
  • An example of a computer program may include not only machine language code generated by a compiler but also high-level language code that can be executed by a computer using an interpreter or the like.
  • the method according to various embodiments of the present disclosure may be included and provided in a computer program product.
  • Computer program products may be traded between sellers and buyers as commodities.
  • a computer program product is distributed in the form of a device-readable storage medium (eg compact disc read only memory (CD-ROM)), or through an application store (eg Play StoreTM) or between two user devices. It can be distributed (e.g., downloaded or uploaded) directly or online. In the case of online distribution, at least part of the computer program product may be temporarily stored or temporarily created in a device-readable storage medium such as a manufacturer's server, an application store server, or a relay server's memory.
  • a device-readable storage medium such as a manufacturer's server, an application store server, or a relay server's memory.

Landscapes

  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Mechanical Engineering (AREA)
  • Transportation (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Traffic Control Systems (AREA)
  • Navigation (AREA)

Abstract

본 개시는 차로 맵 상에 객체의 위치를 결정하기 위한 방법 및 장치에 관한 것이다. 본 개시의 일 실시 예에 따른 방법은, 차량에 탑재된 카메라에서 촬영된 이미지 데이터를 획득할 수 있다. 또한, 방법은 이미지 데이터에 대해 소정의 처리를 수행함으로써 이미지 데이터에 포함된 복수의 피쳐들에 대한 피쳐 정보를 생성할 수 있다. 또한, 방법은 이미지 데이터에 포함된 복수의 피쳐들 간의 상관도에 기초하여, 복수의 이미지 데이터에서 동일한 객체에 해당하는 복수의 피쳐들을 결정할 수 있다. 또한, 방법은 차량의 차로 맵 상의 위치 정보 및 복수의 이미지 데이터 상의 피쳐 위치 정보에 기초하여 차로 맵 상에 객체의 위치를 결정할 수 있다.

Description

차로 맵 상에 객체의 위치를 결정하기 위한 방법 및 장치
본 발명은 차로 맵 상에 객체의 위치를 결정하기 위한 방법 및 장치에 관한 것이다.
도로에서 주행 중인 차량은 도로에 포함된 복수개의 차로 중 어느 하나의 차로 상에서 주행을 할 수 있다. 차량은 주행 중에 빈번하게 차로를 변경할 수 있고, 도로 상에서 차로의 개수가 변경되는 상황 또한 빈번하게 발생한다.
정보통신 기술과 차량 산업의 융합으로 인해 빠르게 차량의 스마트화가 진행되고 있다. 스마트화로 인해, 차량은 단순한 기계적 장치에서 스마트카로 진화하고 있으며, 특히 스마트카의 핵심기술로 자율 주행이 주목 받고 있다. 자율 주행이란 운전자가 핸들과 가속페달, 브레이크 등을 조작하지 않아도 차량 스스로 목적지까지 찾아가는 기술이다.
자율 주행과 관련된 다양한 부가 기능들이 지속적으로 개발되고 있으며, 각종 데이터를 이용하여 주행 환경을 인지하고 판단하여 자동차를 제어함으로써 탑승자에게 안전한 자율 주행 경험을 제공할 수 있는 방법에 대한 연구가 요구되고 있다.
최근에는, 차량이 주행하는 도로 상에 위치하거나 도로 주변에 위치하는 각종 객체(예를 들어, 신호등, 도로 표지판, 방지턱 등)를 더 적은 연산량으로 보다 정확하게 맵 상에 표시하기 위한 연구가 필요한 실정이다.
전술한 배경기술은 발명자가 본 발명의 도출을 위해 보유하고 있었거나, 본 발명의 도출 과정에서 습득한 기술 정보로서, 반드시 본 발명의 출원 전에 일반 공중에게 공개된 공지기술이라 할 수는 없다.
본 발명은 차로 맵 상에 객체의 위치를 결정하기 위한 방법 및 장치를 제공하는데 있다. 본 발명이 해결하고자 하는 과제는 이상에서 언급한 과제에 한정되지 않으며, 언급되지 않은 본 발명의 다른 과제 및 장점들은 하기의 설명에 의해서 이해될 수 있고, 본 발명의 실시 예에 의해보다 분명하게 이해될 것이다. 또한, 본 발명이 해결하고자 하는 과제 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 알 수 있을 것이다.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 개시의 제1 측면은, 차로 맵 상에 객체 의 위치를 결정하는 방법에 있어서, 차량에 탑재된 카메라에서 촬영된 이미지 데이터를 획득하는 단계; 상기 이미지 데이터에 대해 소정의 처리를 수행함으로써 상기 이미지 데이터에 포함된 복수의 피쳐들에 대한 피쳐 정보(feature information)를 생성하는 단계; 상기 이미지 데이터에 포함된 상기 복수의 피쳐들 간의 상관도 에 기초하여, 복수의 이미지 데이터에서 동일한 객체에 해당하는 복수의 피쳐들을 결정하는 단계; 및 상기 차량의 차로 맵 상의 위치 정보 및 상기 복수의 이미지 데이터 상의 피쳐 위치 정보에 기초하여 상기 차로 맵 상에 객체의 위치를 결정하는 단계;를 포함하는, 방법을 제공할 수 있다.
본 개시의 제 2 측면은, 차로 맵 상에 객체의 위치를 결정하기 위한 장치에 있어서, 적어도 하나의 프로그램이 저장된 메모리; 및 상기 적어도 하나의 프로그램을 실행함으로써 연산을 수행하는 프로세서를 포함하고, 상기 프로세서는, 차량에 탑재된 카메라에서 촬영된 이미지 데이터를 획득하고, 상기 이미지 데이터에 대해 소정의 처리를 수행함으로써 상기 이미지 데이터에 포함된 복수의 피쳐들에 대한 피쳐 정보(feature information)를 생성하고, 상기 이미지 데이터에 포함된 상기 복수의 피쳐들 간의 상관도에 기초하여, 복수의 이미지 데이터에서 동일한 객체에 해당하는 복수의 피쳐들을 결정하며, 상기 차량의 차로 맵 상의 위치 정보 및 상기 복수의 이미지 데이터 상의 피쳐 위치 정보에 기초하여 상기 차로 맵 상에 객체의 위치를 결정하는 것인, 장치를 제공할 수 있다.
본 개시의 제 3 측면은, 제 1 측면에 따른 방법을 컴퓨터에서 실행하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공할 수 있다.
이 외에도, 본 발명을 구현하기 위한 다른 방법, 다른 시스템 및 상기 방법을 실행하기 위한 컴퓨터 프로그램이 저장된 컴퓨터로 판독 가능한 기록매체가 더 제공될 수 있다.
전술한 것 외의 다른 측면, 특징, 이점이 이하의 도면, 특허청구범위 및 발명의 상세한 설명으로부터 명확해질 것이다.
전술한 본 개시의 과제 해결 수단에 의하면, 이미지 데이터 전체를 이용하지 않고, 객체에 대한 메타데이터에 해당하는 피쳐 정보를 활용하여 복수의 이미지 데이터 내에서 동일한 객체가 어떤 것인지 결정함으로써, 데이터 경량화가 가능하다.
도 1 내지 도 3은 일 실시예에 따른 자율 주행 방식을 설명하기 위한 도면들이다.
도 4는 일 실시예에 따른 이미지 데이터에 포함되는 복수의 객체들 예시를 설명하기 위한 도면이다.
도 5a 내지 도 5b는 일 실시예에 따른 이미지 데이터에 포함된 피쳐 정보를 설명하기 위한 도면이다.
도 6a 내지 도 6b는 일 실시예에 따른 이미지 데이터 내 피쳐 병합을 설명하기 위한 예시적인 도면이다.
도 7은 일 실시예에 따른 차로 맵 상에 객체의 위치를 결정하는 방법을 설명하기 위한 예시적인 도면이다.
도 8은 일 실시예에 따른 차량의 위치 정보와 이미지 상의 피쳐 위치에 기초하여 객체의 위치를 결정하는 방법을 설명하기 위한 예시적인 도면이다.
도 9는 일 실시예에 따른 복수의 주행 궤적을 이용하여 차로 맵 상에 객체의 위치를 결정하는 방법을 설명하기 위한 예시적인 도면이다.
도 10은 일 실시예에 따른 차로 피팅 및 객체 피팅 방법을 설명하기 위한 예시적인 도면이다.
도 11은 일 실시예에 따른 차로 맵 상에 객체의 위치를 결정하는 방법의 흐름도이다.
도 12는 일 실시예에 따른 객체 위치 결정 장치의 블록도이다.
본 개시는 차로 맵 상에 객체의 위치를 결정하기 위한 방법 및 장치에 관한 것이다. 본 개시의 일 실시 예에 따른 방법은, 차량에 탑재된 카메라에서 촬영된 이미지 데이터를 획득할 수 있다. 또한, 방법은 이미지 데이터에 대해 소정의 처리를 수행함으로써 이미지 데이터에 포함된 복수의 피쳐들에 대한 피쳐 정보를 생성할 수 있다. 또한, 방법은 이미지 데이터에 포함된 복수의 피쳐들 간의 상관도에 기초하여, 복수의 이미지 데이터에서 동일한 객체에 해당하는 복수의 피쳐들을 결정할 수 있다. 또한, 방법은 차량의 차로 맵 상의 위치 정보 및 복수의 이미지 데이터 상의 피쳐 위치 정보에 기초하여 차로 맵 상에 객체의 위치를 결정할 수 있다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 설명되는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 발명은 아래에서 제시되는 실시 예들로 한정되는 것이 아니라, 서로 다른 다양한 형태로 구현될 수 있고, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 아래에 제시되는 실시 예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
본 출원에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
본 개시의 일부 실시예는 기능적인 블록 구성들 및 다양한 처리 단계들로 나타내어질 수 있다. 이러한 기능 블록들의 일부 또는 전부는, 특정 기능들을 실행하는 다양한 개수의 하드웨어 및/또는 소프트웨어 구성들로 구현될 수 있다. 예를 들어, 본 개시의 기능 블록들은 하나 이상의 마이크로프로세서들에 의해 구현되거나, 소정의 기능을 위한 회로 구성들에 의해 구현될 수 있다. 또한, 예를 들어, 본 개시의 기능 블록들은 다양한 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 기능 블록들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다. 또한, 본 개시는 전자적인 환경 설정, 신호 처리, 및/또는 데이터 처리 등을 위하여 종래 기술을 채용할 수 있다."매커니즘", "요소", "수단" 및 "구성"등과 같은 용어는 넓게 사용될 수 있으며, 기계적이고 물리적인 구성들로서 한정되는 것은 아니다.
또한, 도면에 도시된 구성 요소들 간의 연결 선 또는 연결 부재들은 기능적인 연결 및/또는 물리적 또는 회로적 연결들을 예시적으로 나타낸 것일 뿐이다. 실제 장치에서는 대체 가능하거나 추가된 다양한 기능적인 연결, 물리적인 연결, 또는 회로 연결들에 의해 구성 요소들 간의 연결이 나타내어질 수 있다.
이하에서, '차량'은 자동차, 버스, 오토바이, 킥보드 또는 트럭과 같이 기관을 가지고 사람이나 물건을 이동시키기 위해 이용되는 모든 종류의 운송 수단을 의미할 수 있다.
이하 첨부된 도면을 참고하여 본 개시를 상세히 설명하기로 한다.
도 1 내지 도 3은 일 실시예에 따른 자율 주행 방식을 설명하기 위한 도면들이다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 자율 주행 장치는, 차량에 장착되어 자율 주행 차량(10)을 구현할 수 있다. 자율 주행 차량(10)에 장착되는 자율 주행 장치는, 주변의 상황 정보를 수집하기 위한 다양한 센서들을 포함할 수 있다. 일례로, 자율 주행 장치는 자율 주행 차량(10)의 전면에 장착된 이미지 센서 및/또는 이벤트 센서를 통해, 전방에서 운행 중인 선행 차량(20)의 움직임을 감지할 수 있다. 자율 주행 장치는 자율 주행 차량(10)의 전면은 물론, 옆 차로에서 운행중인 다른 주행 차량(30)과, 자율 주행 차량(10) 주변의 보행자 등을 감지하기 위한 센서들을 더 포함할 수 있다.
자율 주행 차량 주변의 상황 정보를 수집하기 위한 센서들 중 적어도 하나는, 도 1에 도시한 바와 같이 소정의 화각(FoV)을 가질 수 있다. 일례로, 자율 주행 차량(10)의 전면에 장착된 센서가 도 1에 도시한 바와 같은 화각(FoV)을 갖는 경우에, 센서의 중앙에서 검출되는 정보가 상대적으로 높은 중요도를 가질 수 있다. 이는, 센서의 중앙에서 검출되는 정보에, 선행 차량(20)의 움직임에 대응하는 정보가 대부분 포함되어 있기 때문일 수 있다.
자율 주행 장치는, 자율 주행 차량(10)의 센서들이 수집한 정보를 실시간으로 처리하여 자율 주행 차량(10)의 움직임을 제어하는 한편, 센서들이 수집한 정보 중에 적어도 일부는 메모리 장치에 저장할 수 있다.
도 2를 참조하면, 자율 주행 장치(40)는 센서부(41), 프로세서(46), 메모리 시스템(47), 및 차체 제어 모듈(48) 등을 포함할 수 있다. 센서부(41)는 복수의 센서들(42-45)을 포함하며, 복수의 센서들(42-45)은 이미지 센서, 이벤트 센서, 조도 센서, GPS 장치, 가속도 센서 등을 포함할 수 있다.
센서들(42-45)이 수집한 데이터는 프로세서(46)로 전달될 수 있다. 프로세서(46)는 센서들(42-45)이 수집한 데이터를 메모리 시스템(47)에 저장하고, 센서들(42-45)이 수집한 데이터에 기초하여 차체 제어 모듈(48)을 제어하여 차량의 움직임을 결정할 수 있다. 메모리 시스템(47)은 둘 이상의 메모리 장치들과, 메모리 장치들을 제어하기 위한 시스템 컨트롤러를 포함할 수 있다. 메모리 장치들 각각은 하나의 반도체 칩으로 제공될 수 있다.
메모리 시스템(47)의 시스템 컨트롤러 외에, 메모리 시스템(47)에 포함되는 메모리 장치들 각각은 메모리 컨트롤러를 포함할 수 있으며, 메모리 컨트롤러는 신경망과 같은 인공지능(AI) 연산 회로를 포함할 수 있다. 메모리 컨트롤러는 센서들(42-45) 또는 프로세서(46)로부터 수신한 데이터에 소정의 가중치를 부여하여 연산 데이터를 생성하고, 연산 데이터를 메모리 칩에 저장할 수 있다.
도 3은 자율 주행 장치가 탑재된 자율 주행 차량의 센서가 획득한 영상 데이터의 예시를 나타낸 도면이다. 도 3을 참조하면, 영상 데이터(50)는 자율 주행 차량의 전면에 장착된 센서가 획득한 데이터일 수 있다. 따라서 영상 데이터(50)에는 자율 주행 차량의 전면부(51), 자율 주행 차량과 같은 차로의 선행 차량(52), 자율 주행 차량 주변의 주행 차량(53) 및 배경(54) 등이 포함될 수 있다.
도 3에 도시한 실시예에 따른 영상 데이터(50)에서, 자율 주행 차량의 전면부(51)와 배경(54)이 나타나는 영역의 데이터는 자율 주행 차량의 운행에 영향을 미칠 가능성이 거의 없는 데이터일 수 있다. 다시 말해, 자율 주행 차량의 전면부(51)와 배경(54)은 상대적으로 낮은 중요도를 갖는 데이터로 간주될 수 있다.
반면, 선행 차량(52)과의 거리, 및 주행 차량(53)의 차로 변경 움직임 등은 자율 주행 차량의 안전한 운행에 있어서 매우 중요한 요소일 수 있다. 따라서, 영상 데이터(50)에서 선행 차량(52) 및 주행 차량(53) 등이 포함되는 영역의 데이터는 자율 주행 차량의 운행에 있어서 상대적으로 높은 중요도를 가질 수 있다.
자율 주행 장치의 메모리 장치는, 센서로부터 수신한 영상 데이터(50)의 영역별로 가중치를 다르게 부여하여 저장할 수 있다. 일례로, 선행 차량(52)과 주행 차량(53) 등이 포함되는 영역의 데이터에는 높은 가중치를 부여하고, 자율 주행 차량의 전면부(51)와 배경(54)이 나타나는 영역의 데이터에는 낮은 가중치를 부여할 수 있다.
도 4는 일 실시예에 따른 이미지 데이터에 포함되는 복수의 객체들 예시를 설명하기 위한 도면이다.
특정 시점에 차량에 탑재된 카메라로부터 획득된 이미지 데이터에는 복수의 객체들이 포함될 수 있다.
객체에 관한 정보는 객체 종류 정보 및 객체 속성 정보를 포함한다. 여기에서, 객체 종류 정보는 객체의 종류를 나타내는 인덱스 정보이며, 큰 범위인 그룹과 세부 범위인 클래스로 구성된다. 그리고, 객체 속성 정보는 객체의 현재 상태에 대한 속성 정보를 나타내는 것이며, 움직임 정보, 회전 정보, 교통 정보, 색상 정보, 및 가시성 정보를 포함한다.
일 실시예에서, 객체 종류 정보에 포함되는 그룹 및 클래스는 아래의 표 1과 같을 수 있으나, 이에 제한되지 않는다.
Group Class
Flat Road, Sidewalk, Parking, Ground, Crosswalk
Human Pedestrain, Rider
Vehicle Car, Truck, Bus, Bike, Mobility
Construction Building, Wall, Guard rail, Tunnel, fence soundproof wall, gas station, IC, pylon
Object Pole, Traffic sign, Traffic light, color corn
Nature Vegetation, Terrain, Paddy field, river, lake
Void Static
Lane Dotted line, Solid line, Dotted and Solid line, Double Solid line
Sky Sky
Animal Dog, Cat, bird, etc.
또한, 객체 속성 정보에 포함되는 정보에는 Action, Rotate, Traffic info, color, Visibility 정보가 포함될 수 있다.
Action 정보는 객체의 움직임 정보를 표현하며 정차, 주차, 이동 등으로 정의될 수 있다. 차량의 경우 정차, 주차, 이동이 객체 속성 정보로 결정될 수 있고, 신호등과 같이 움직일 수 없는 객체의 경우 디폴트 값인 정지로 객체 속성 정보가 결정될 수 있다.
Rotate 정보는 객체의 회전 정보를 표현하며 정면, 후면, 수평(horizontal), 수직(vertical), 측면 등으로 정의될 수 있다. 차량의 경우 정면, 후면, 측면으로 객체 속성 정보가 정해질 수 있고, 가로 또는 세로 방향의 신호등은 각각 수평 또는 수직으로 객체 속성 정보가 정해질 수 있다.
Traffic info는 객체의 교통정보를 의미하며, 교통표지판의 지시, 주의, 규제, 보조 표지 등으로 정의될 수 있다. Color는 객체의 색상 정보를 의미하며 객체의 색상, 신호등 및 교통표지판의 색상을 표현할 수 있다.
예를 들어, 특정 차량의 객체 속성 정보는 정차, 정면, 빨간색, visibility level 3으로 결정될 수 있다.
도 4를 참조하면, 카메라로부터 획득된 이미지(400)에 포함된 객체들은 신호등, 표지판, 현재 주행 차로(ego-lane), 교차로, 로드 마킹, 방지턱 등일 수 있으나, 이에 제한되지 않는다.
도 5a 내지 도 5b는 일 실시예에 따른 이미지 데이터에 포함된 피쳐 정보를 설명하기 위한 도면이다.
차량이 도로를 주행함에 따라 차량에 탑재된 카메라로부터 복수의 이미지 데이터가 획득될 수 있다.
차량에 탑재된 카메라로부터 획득된 이미지 데이터(510)에는 객체(511)가 포함될 수 있다. 도 5a를 참조하면, 객체(511)는 신호등일 수 있다.
이미지 데이터는 소정의 크기 M x N (M, N은 자연수)을 가질 수 있다. 복수의 이미지 데이터에는 동일한 객체(511)가 포함될 수 있으나, 차량이 도로를 따라 주행함에 따라 차량과 객체(511)의 상대적 위치는 계속 변화하게 되며, 이에 따라 동일한 객체(511)라도 각 이미지 데이터 내에서의 위치가 달라지게 된다.
각 이미지 데이터에서 동일한 객체가 어떤 것인지 결정하기 위해 이미지 데이터 전체를 이용하는 경우, 데이터 전송량 및 연산량이 상당히 커지게 된다. 이에 따라, 차량에 탑재되는 장치에서 엣지 컴퓨팅을 통해 처리되기 어렵고, 실시간 분석 또한 어렵다.
도 5b를 참조하면, 이미지 데이터(520)에 포함된 피쳐(521)가 도시된다. 피쳐(521)는 객체(511)에 대한 메타데이터로써, 피쳐 정보에는 객체 종류 정보(그룹, 클래스 등), 이미지 데이터(520) 상의 객체(511)의 위치 정보, 객체(511)의 크기 정보 등이 포함될 수 있다. 도 5b를 참조하면, 피쳐 정보는 해당 객체(511)가 신호등 클래스에 해당한다는 정보와, 직사각형 모양을 갖는다는 정보, 객체(511)의 좌측 아래 꼭지점이 이미지 데이터 상의 (m, n) 에 위치한다는 정보, 그리고 객체(511)의 크기가 a x b 라는 정보를 포함할 수 있다.
본 개시에서는 이미지 데이터 전체를 이용하지 않고, 객체에 대한 메타데이터에 해당하는 피쳐 정보를 활용함으로써 복수의 이미지 데이터 내에서 동일한 객체가 어떤 것인지 결정할 수 있다.
도 6a 내지 도 6b는 일 실시예에 따른 이미지 데이터 내 피쳐 병합을 설명하기 위한 예시적인 도면이다.
도 6a를 참조하면, 특정 시점에 차량에 탑재된 카메라로부터 획득된 이미지 데이터들이 도시된다. 제1 이미지 데이터(610)는 제1 시점에 획득된 이미지 데이터이고, 제2 이미지 데이터(620)는 제1 시점으로부터 소정의 시간이 흐른 뒤인 제2 시점에 획득된 이미지 데이터이다.
한편, 제1 이미지(601) 및 제2 이미지(602)는 설명을 돕기 위한 것으로써, 카메라에서 촬영된 실제 도로의 모습을 도시하고 있다.
제1 이미지 데이터(610)와 제2 이미지 데이터(620)에는 동일한 객체들이 포함되어 있다.
차로 맵 상에 객체의 위치를 결정하는 장치(이하, '객체 위치 결정 장치')는, 복수의 이미지 데이터에서 동일한 객체를 나타내는 복수의 피쳐들을 결정할 수 있다.
도 6a를 참조하면, 제1 이미지 데이터(610)에서는 제1 피쳐 그룹(611)과 제2 피쳐 그룹(612)이 서로 인접하여 위치할 수 있다. 즉, 제1 피쳐 그룹(611) 및 제2 피쳐 그룹(612)에 대응하는 객체들과 차량 간의 거리가 멀리 떨어져 있는 경우, 제1 피쳐 그룹(611) 및 제2 피쳐 그룹(612)에 대응하는 객체들 간의 실제 거리 차이가 반영되지 못하고 제1 이미지 데이터(610) 상에서는 객체들이 서로 인접하여 위치할 수 있다.
반면, 제2 이미지 데이터(620)에서는 제1 피쳐 그룹(621)과 제2 피쳐 그룹(622)이 서로 어느 정도 떨어진 위치에 위치할 수 있다. 즉, 제1 이미지 데이터(610)를 촬영했을 때의 차량의 위치에 비해, 제1 피쳐 그룹(611) 및 제2 피쳐 그룹(612)에 대응하는 객체들과 차량 간의 거리가 가까워진 경우, 제1 피쳐 그룹(611) 및 제2 피쳐 그룹(612)에 대응하는 객체들 간의 실제 거리 차이가 더 반영되어 제2 이미지 데이터(620) 상에서는 객체들이 서로 어느 정도 떨어진 위치에 위치할 수 있다.
한편, 제1 이미지 데이터(610) 및 제2 이미지 데이터(620)에서 제1 피쳐 그룹(611, 621)은 동일한 객체들을 나타내고, 제2 피쳐 그룹(612, 622)은 동일한 객체들을 나타내지만, 이미지 데이터에 따라 크기도 달라질 수 있다.
제1 이미지 데이터(610) 및 제2 이미지 데이터(620)의 예시와 같이, 차량이 주행하는 과정에서 촬영한 이미지 데이터들 상에는 동일한 객체를 나타내는 복수의 피쳐들이 포함될 수 있으나, 차량이 주행하는 과정에서 차량과 객체 간의 위치가 시시각각 변함에 따라 복수의 피쳐들의 위치, 크기, 위치 관계 및 배치 관계 등은 각 이미지 데이터 상에서 서로 달라지게 된다.
객체 위치 결정 장치는 복수의 이미지 데이터 내 피쳐들을 병합(aggregation)함으로써 복수의 이미지 데이터에서 동일한 객체에 해당하는 복수의 피쳐들을 결정할 수 있다.
객체 위치 결정 장치는 이미지 데이터에 포함된 복수의 피쳐들 간의 상관도에 기초하여, 복수의 이미지 데이터에서 동일한 객체에 해당하는 복수의 피쳐들을 결정할 수 있다. 상관도는 복수의 피쳐들 간의 배치 관계, 크기 관계에 기초하여 결정될 수 있으나, 상관도를 결정하는 펙터는 이에 제한되지 않는다.
일 실시예에서, 객체 위치 결정 장치는 그래프-매칭(graph-matching) 방법을 이용하여 복수의 이미지 데이터에서 동일한 객체를 나타내는 복수의 피쳐들을 결정할 수 있다.
객체 위치 결정 장치는 이미지 데이터에서 키(key) 피쳐를 포함하는 복수의 피쳐들을 노드로 지정하고 복수의 피쳐들 간 연결 관계를 링크로 설정하여, 노드와 링크로 구성된 그래프를 등록할 수 있다. 또한, 객체 위치 결정 장치는 서로 다른 이미지 데이터로부터 등록된 그래프 간의 비교를 통해, 각 이미지 데이터 내에서 키 피쳐들이 동일한 객체를 나타내는지 여부를 결정할 수 있다.
구체적으로, 객체 위치 결정 장치는 제1 이미지 데이터의 제1 피쳐(611a) 및 제2 이미지 데이터(620)의 제2 피쳐(621a)를 선택하고, 제1 피쳐(611a) 및 제2 피쳐(621a) 주변의 다른 피쳐를 탐색할 수 있다. 객체 위치 결정 장치는 제1 피쳐(611a) 주변의 제1 이웃 피쳐(neighbor feature)(611b)와 속성이 유사한 제2 이웃 피쳐(621b)가 제2 피쳐(621a) 주변에 존재하는 경우, 제1 이웃 피쳐(611b) 및 제2 이웃 피쳐(621b) 각각에 대해 제1 피쳐(611a) 및 제2 피쳐(621a)를 키(key) 피쳐로 하는 그래프로 등록할 수 있다. 여기서, 속성은 클래스(class), 피쳐의 가로/세로 비율, 거리 및 각도 중 적어도 하나를 포함할 수 있다.
객체 위치 결정 장치는 제1 피쳐(611a) 주변의 모든 피쳐를 대상으로 탐색하는 단계 및 등록하는 단계를 반복할 수 있다. 객체 위치 결정 장치는 제1 피쳐(611a) 주변의 모든 피쳐를 대상으로 그래프 구성을 시도한 후, 피쳐의 개수, 등록된 키 피쳐의 유사도(예를 들어, 크기, 이웃 피쳐와의 크기 관계 등)에 기초하여, 제1 피쳐(611a)와 제2 피쳐(621a) 간의 유사도를 산출할 수 있다. 객체 위치 결정 장치는 제2 이미지 데이터(620)의 제2 피쳐(621a)를 제외한 나머지 피쳐에 대해, 탐색하는 단계, 그래프로 등록하는 단계, 반복하는 단계 및 유사도를 산출하는 단계를 수행함으로써, 제1 이미지 데이터(610)의 제1 피쳐(611a)와 유사도가 가장 높은 제2 이미지 데이터(620)의 제2 피쳐(621a)가, 동일한 객체를 나타내는 것으로 결정할 수 있다.
본 개시에서는 이미지 데이터 전체를 이용하지 않고, 객체에 대한 메타데이터에 해당하는 피쳐 정보를 활용활 수 있다. 이로써, 본 개시에서는 차량이 주행하는 과정에서 차량과 객체 간의 위치가 시시각각 변함에 따라 복수의 피쳐들의 위치, 크기, 위치 관계 및 배치 관계 등이 각 이미지 데이터 상에서 서로 달라지더라도, 복수의 이미지 데이터 내에서 동일한 객체가 어떤 것인지 결정할 수 있다.
한편, 객체 위치 결정 장치는 그래프에 포함된 피쳐들이 동일한 깊이(depth)를 갖는 것으로 결정할 수 있다. 동일한 깊이를 갖는다는 것은, 도로의 횡방향(차량의 주행 방향) 위치가 동일하거나 소정 범위 내(예를 들어, 1m)인 것을 의미할 수 있다.
객체 위치 결정 장치는 소정의 피쳐에 대해 후처리를 수행하는 경우, 동일한 깊이를 갖는 그래프에 포함된 나머지 피쳐들에 대해서도 동일한 후처리를 수행할 수 있다.
도 6a를 참조하면, 객체 위치 결정 장치는 제1 피쳐 그룹(611, 621)에 포함된 복수의 피쳐들은 서로 동일한 깊이를 갖고, 제2 피쳐 그룹(612, 622)에 포함된 복수의 피쳐들은 서로 동일한 깊이를 갖는 것으로 결정할 수 있다. 이 경우, 객체 위치 결정 장치는 제1 피쳐 그룹(611, 621)에 포함된 소정의 피쳐에 대해 위치를 보정하는 경우, 제1 피쳐 그룹(611, 621)에 포함된 나머지 피쳐에 대해서도 동일하게 위치를 보정할 수 있다.
도 6b를 참조하면, 특정 시점에 차량에 탑재된 카메라로부터 획득된 이미지 데이터들이 도시된다. 차량 주행 중에 차량의 도로 종방향 위치가 변경될 수 있다 (예를 들어, 차로 변경). 제1 이미지 데이터(630)는 도로의 1차로를 주행하는 차량에서 촬영된 이미지 데이터이고, 제2 이미지 데이터(640)는 도로의 4차로를 주행하는 차량에서 촬영된 이미지 데이터이다.
한편, 제1 이미지(603) 및 제2 이미지(604)는 설명을 돕기 위한 것으로써, 카메라에서 촬영된 실제 도로의 모습을 도시하고 있다.
제1 이미지 데이터(630)와 제2 이미지 데이터(640)에는 동일한 객체들이 포함되어 있다.
객체 위치 결정 장치는 복수의 이미지 데이터에서 동일한 객체를 나타내는 복수의 피쳐들을 결정할 수 있다.
도 6b를 참조하면, 제1 이미지 데이터(630)에서는 제1 피쳐 그룹(631)과 제2 피쳐 그룹(632)이 서로 인접하여 위치할 수 있다. 또한, 제1 피쳐 그룹(631)이 제2 피쳐 그룹(632)의 우측 편에 위치할 수 있다. 즉, 차량이 1차로에서 주행 중인 상태에서 촬영한 제1 이미지 데이터(630) 상에서는 차량과 복수의 객체들 간의 상대적 위치 관계에 따라 제1 피쳐 그룹(631)과 제2 피쳐 그룹(632) 간의 배치 관계가 상술한 것과 같이 결정될 수 있다.
반면, 제2 이미지 데이터(640)에서는 제1 피쳐 그룹(641)과 제2 피쳐 그룹(642)이 서로 어느 정도 떨어진 위치에 위치할 수 있다. 또한, 제1 피쳐 그룹(641)이 제2 피쳐 그룹(642)의 좌측 편에 위치할 수 있다. 즉, 차량이 4차로에서 주행 중인 상태에서 촬영한 제2 이미지 데이터(640) 상에서는 차량과 복수의 객체들 간의 상대적 위치 관계에 따라 제1 피쳐 그룹(641)과 제2 피쳐 그룹(642) 간의 배치 관계가 상술한 것과 같이 결정될 수 있다.
한편, 제1 이미지 데이터(630) 및 제2 이미지 데이터(640)에서 제1 피쳐 그룹(631, 641)은 동일한 객체들을 나타내고, 제2 피쳐 그룹(632, 642)은 동일한 객체들을 나타내지만, 이미지 데이터에 따라 크기도 달라질 수 있다.
제1 이미지 데이터(630) 및 제2 이미지 데이터(640)의 예시와 같이, 차량이 주행하는 과정에서 촬영한 이미지 데이터들 상에는 동일한 객체를 나타내는 복수의 피쳐들이 포함될 수 있으나, 차량이 어느 차로를 주행하는지에 따라 차량과 객체 간의 위치가 달라짐에 따라 복수의 피쳐들의 위치, 크기, 위치 관계 및 배치 관계 등은 각 이미지 데이터 상에서 서로 달라지게 된다.
객체 위치 결정 장치는 복수의 이미지 데이터 내 피쳐들을 병합함으로써 복수의 이미지 데이터에서 동일한 객체에 해당하는 복수의 피쳐들을 결정할 수 있다.
객체 위치 결정 장치는 이미지 데이터에 포함된 복수의 피쳐들 간의 상관도에 기초하여, 복수의 이미지 데이터에서 동일한 객체에 해당하는 복수의 피쳐들을 결정할 수 있다.
도 6b에서 상술한 방법을 이용하여 객체 위치 결정 장치는 복수의 이미지 데이터에서 동일한 객체에 해당하는 복수의 피쳐들을 결정할 수 있다.
본 개시에서는 이미지 데이터 전체를 이용하지 않고, 객체에 대한 메타데이터에 해당하는 피쳐 정보를 활용할 수 있다. 이로써, 본 개시에서는 차량이 서로 다른 주행 차로에서 주행하여 차량과 객체 간의 위치가 달라짐에 따라 복수의 피쳐들의 위치, 크기, 위치 관계 및 배치 관계 등이 각 이미지 데이터 상에서 서로 달라지더라도, 복수의 이미지 데이터 내에서 동일한 객체가 어떤 것인지 결정할 수 있다.
도 7은 일 실시예에 따른 차로 맵 상에 객체의 위치를 결정하는 방법을 설명하기 위한 예시적인 도면이다.
객체 위치 결정 장치는 차량에 탑재된 GPS를 이용하여 차량의 위치 정보를 획득할 수 있다. 차량의 위치 정보는 차로 맵 상의 위치 정보일 수 있다.
또한, 객체 위치 결정 장치는 복수의 이미지 데이터 내에서 동일한 객체에 해당하는 것으로 결정된 복수의 피쳐들의 이미지 데이터 내 위치 정보를 이용하여 차로 맵 상에 객체의 위치를 결정할 수 있다.
도 7을 참조하면, 도 6a 내지 도 6b에서 설명한 바와 같이 제1 이미지 데이터(630) 및 제2 이미지 데이터(640)에서 제1 피쳐 그룹(631, 641)은 동일한 객체들을 나타내고, 제2 피쳐 그룹(632, 642)은 동일한 객체들을 나타낼 수 있다.
일 실시예에서 객체 위치 결정 장치는 차량에 연결된 위치 확인 장치를 통해 획득된 차로 맵 상의 위치 정보와, 제1 이미지 데이터(630) 및 제2 이미지 데이터(640)를 이용하여 차로 맵 상에 객체의 위치를 결정할 수 있다. 한편, 객체 위치 결정 장치는 차로 맵 상에 객체의 위치를 결정하기 위해 한 개 또는 세 개 이상의 이미지 데이터를 이용할 수도 있다.
도 7을 참조하면, 객체 위치 결정 장치는 제1 피쳐 그룹(631, 641)에 대응하는 제1 객체 그룹(710)의 위치 및 제2 피쳐 그룹(632, 642)에 대응하는 제2 객체 그룹(720)의 위치를 결정하고, 차로 맵(700) 상에 표시할 수 있다.
도 8은 일 실시예에 따른 차량의 위치 정보와 이미지 상의 피쳐 위치에 기초하여 객체의 위치를 결정하는 방법을 설명하기 위한 예시적인 도면이다.
도 8을 참조하면, 차량(800)은 주행 경로를 따라 제1 위치에서 제2 위치로 이동하고 있다.
객체 위치 결정 장치는 차량(800)에 탑재된 GPS 또는 차량에 연결된 위치 확인 장치 등을 이용하여 차량(800)의 위치 정보를 획득할 수 있다. 객체 위치 결정 장치는 차량(800)의 위치 정보를 이용하여 차량(800)의 차선 맵 상의 위치 정보를 획득할 수 있다.
객체 위치 결정 장치는 차량(800)에 탑재된 카메라(830)로부터 차량(800)의 주변(전방, 측방, 후방 등) 이미지 데이터(810a, 810b)를 획득할 수 있다.
제1 이미지 데이터(810a)는 차량(800)이 제1 위치에 위치할 때 카메라(830)에서 촬영된 이미지 데이터이고, 제2 이미지 데이터(810b)는 차량(800)이 제2 위치에 위치할 때 카메라(830)에서 촬영된 이미지 데이터이다.
제1 이미지 데이터(810a)에는 제1 피쳐(811)가 포함되고, 제2 이미지 데이터(810b)에는 제2 피쳐(812)가 포함될 수 있다. 제1 피쳐(811)와 제2 피쳐(812)는 동일한 객체인 신호등(820)을 나타낸다.
제1 피쳐(811)와 제2 피쳐(812)는 동일한 객체를 나타내지만, 차량(800)이 제1 위치에서 제2 위치로 이동하게 되면, 차량(800)과 신호등(820) 간 상대적 거리가 달라지게 되고, 이에 따라 차량(800)의 카메라(830)에서 촬영된 각 이미지 데이터(810a, 810b) 내에서 신호등(820)을 나타내는 피쳐(811, 812)의 위치 및 크기 등이 달라지게 된다.
객체 위치 결정 장치는 차량(800)의 차로 맵 상의 위치 정보 및 이미지 데이터(810a, 810b) 상의 피쳐(811, 812) 위치 정보에 기초하여 차로 맵 상의 객체(820)의 위치를 결정할 수 있다.
일 실시예에서, 객체 위치 결정 장치는 거리 측정 방식을 이용하여 차로 맵 상의 객체(820)의 위치를 결정할 수 있으나, 차로 맵 상의 객체(820)의 위치를 결정하는 방식은 이에 제한되지 않는다.
일 실시예에서, 객체 위치 결정 장치는 카메라(830)의 자세값을 획득할 수 있다. 카메라(830)의 자세값은, 카메라(830)의 설치 위치, 설치 방향, 설치 각도에 관한 팩터를 포함할 수 있다.
도 8을 참조하면, 객체 위치 결정 장치는 카메라(830)의 자세값을 고려하여, 카메라(830)에서 출발하여 이미지 데이터(810a, 810b) 상의 피쳐(811, 812)를 통과하는 가상의 광선들(rays)이 만나는 지점의 위치를 결정할 수 있다.
구체적으로, 차량(800)이 제1 위치에서 제2 위치로 주행 중일 수 있다. 제1 위치에 위치한 차량(800)의 카메라(830)에서 촬영된 제1 이미지 데이터(810a)에는 객체(820)를 나타내는 피쳐(811)가 표시되고, 제2 위치에 위치한 차량(800)의 카메라(830)에서 촬영된 제2 이미지 데이터(810b)에는 객체(820)를 나타내는 피쳐(812)가 표시될 수 있다. 객체 위치 결정 장치는 제1 위치의 차량(800)의 카메라(830)에서 출발하여 제1 이미지 데이터(810a) 상의 피쳐(811)를 통과하는 가상의 제1 광선(841)과, 제2 위치의 차량(800)의 카메라(830)에서 출발하여 제2 이미지 데이터(810b) 상의 피쳐(812)를 통과하는 가상의 제2 광선(842)이 서로 만나는 지점의 위치(850)를 결정할 수 있다.
객체 위치 결정 장치는 차량(800)의 이동 거리 및 가상의 광선들이 만나는 지점의 위치에 기초하여 차로 맵 상의 객체(820)의 위치를 결정할 수 있다.
구체적으로, 객체 위치 결정 장치는 제1 광선(841) 및 제2 광선(842)이 만나는 지점의 위치(850)와, 차량(800)이 제1 위치에서 제2 위치로 이동한 거리를 이용하여, 객체(820)의 차선 맵 상의 위치를 결정할 수 있다.
일 실시예에서, 객체 위치 결정 장치는 차량(800)의 자세값을 더 획득할 수 있다. 차량(800)의 자세값은, 차량(800)이 주행 중인 도로의 경사도, 차량(800)의 타이어 간 공기압 차이, 차량(800)의 조향 각에 관한 팩터를 포함할 수 있다.
객체 위치 결정 장치는 카메라(830)의 자세값 및 차량(800)의 자세값을 고려하여, 카메라(830)에서 출발하여 이미지 데이터(810a, 810b) 상의 피쳐(811, 812)를 통과하는 가상의 광선들(rays)이 만나는 지점의 위치를 결정할 수 있다. 도 9는 일 실시예에 따른 복수의 주행 궤적을 이용하여 차로 맵 상에 객체의 위치를 결정하는 방법을 설명하기 위한 예시적인 도면이다.
도 9를 참조하면, 소정의 도로를 주행한 차량의 제1 궤적(910) 및 제2 궤적(920)이 도시된다. 도 9에서, 제1-1 객체(911)의 위치 및 제1-2 객체(921)의 위치는, 차량이 제1 궤적(910)을 따라 주행하는 과정에서 촬영된 복수의 이미지 데이터에 기초하여 결정된 위치이다. 또한, 제2-1 객체(912)의 위치 및 제2-2 객체(922)의 위치는, 차량이 제2 궤적(920)을 따라 주행하는 과정에서 촬영된 복수의 이미지 데이터에 기초하여 결정된 위치이다.
제1-1 객체(911) 및 제1-2 객체(921)는 제1 그룹 객체들로 지칭되고, 제2-1 객체(912) 및 제2-2 객체(922)는 제2 그룹 객체들로 지칭하기로 한다.
객체 위치 결정 장치는, 제1 그룹 객체들을 이용하여 제1 그래프를 구성하고, 제2 그룹 객체들을 이용하여 제2 그래프를 구성하고, 제1 그래프 및 제2 그래프 간의 유사도 비교를 통해 제1 그룹 객체들과 제2 그룹 객체들에서 동일한 객체를 결정할 수 있다.
구체적으로, 객체 위치 결정 장치는 객체들 간의 상관도를 산출하기 위해, 차량 별 또는 시간 별로 생성된 소정의 객체를 대상으로, 소정의 객체 주변(예를 들어, 차로로부터 유사한 거리 및 방향)에 동일한 클래스의 객체가 존재하는 경우 그래프에 등록하고, 위치 등을 기반으로 유사도를 계산하여 가장 높은 유사도를 갖는 객체들을 동일한 객체인 것으로 결정할 수 있다.
객체 위치 결정 장치는 제1-1 객체(911) 주변에 동일한 클래스의 제1-2 객체(921)가 존재하는 경우, 제1-1 객체(911)와 제1-2 객체(921)로 제1 그래프로 구성하고, 제2-1 객체(912)와 제2-2 객체(922)로 제2 그래프로 구성할 수 있다. 객체 위치 결정 장치는 그래프에서 각 객체를 키(key) 객체로 하여 유사도를 비교함으로써, 각 그래프에서 동일한 객체를 어떤 것인지 결정할 수 있다.
도 9에서, 객체 위치 결정 장치는, 제1-1 객체(911)와 제2-1 객체(912)가 동일한 객체를 나타내고, 제1-2 객체(921)와 제2-2 객체(922)가 동일한 객체를 나타내는 것으로 결정할 수 있다.
객체 위치 결정 장치는 동일한 객체로 결정된 객체들의 위치를 병합하여 각 객체들에 대한 최종 위치를 차로 맵(900) 상에 표시할 수 있다.
도 9에서, 객체 위치 결정 장치는 제1-1 객체(911)와 제1-2 객체(921)의 위치를 병합하여 제1-3 객체(931)의 위치를 최종 위치로 결정할 수 있다. 또한, 객체 위치 결정 장치는 제2-1 객체(912)와 제2-2 객체(922)의 위치를 병합하여 제 2-3 객체(932)의 위치를 최종 위치로 결정할 수 있다.
도 10은 일 실시예에 따른 차로 피팅 및 객체 피팅 방법을 설명하기 위한 예시적인 도면이다.
객체 위치 결정 장치는 차량에 연결된 위치 확인 장치를 이용하여 차량의 주행 궤적을 획득할 수 있다. 위치 확인 장치는 GPS일 수 있으며, 이하에서는 위치 확인 장치로 GPS가 이용되는 것을 전제로 한다. 또한, 객체 위치 결정 장치는 획득된 주행 궤적을 차로 맵(1000)에 매핑시켜, 주행 궤적을 차로 맵(1000)에 표시할 수 있다.
도 10을 참조하면, 객체 위치 결정 장치는 차량에 탑재된 GPS를 이용하여 제1 주행 궤적(1011)을 획득하고, 이를 차로 맵(1000)에 표시할 수 있다.
한편, 다양한 원인으로 인해 차량에 탑재된 GPS에서 수신한 GPS 신호는 오차를 가질 수 있다. 예를 들어, 차량이 건물이 밀집한 골목 사이를 지나는 경우 GPS 신호 수신이 일시적으로 불안정할 수 있다. 또는, 건물의 유리면에 의해 반사되는 전파 때문에, 차량은 오차를 가지는 GPS 신호를 수신할 수 있다.
객체 위치 결정 장치는 차량의 현재 주행 차로를 결정할 수 있다. 현재 주행 차로에 대한 정보는 피쳐 정보에 포함된 정보일 수 있다.
객체 위치 결정 장치는 차량의 현재 주행 차로가 소정의 차로(1030)인 것으로 결정할 수 있다. 이 경우, 객체 위치 결정 장치는 GPS 신호로부터 획득한 제1 주행 궤적(1011)이 소정의 차로(1030)와 불일치하는 것으로 확인할 수 있다. 구체적으로, 객체 위치 결정 장치는 GPS 신호로부터 획득한 제1 주행 궤적(1011)이 소정의 차로(1030) 간의 이격 거리를 산출하고, 이격 거리가 임계값을 초과하는 경우 제1 주행 궤적(1011)이 소정의 차로(1030)와 불일치하는 것으로 결정할 수 있다. 이는, 차량이 현재 소정의 차로(1030)로 주행 중인데도 불구하고 GPS 신호의 오차로 인해 제1 주행 궤적(1011)과 소정의 차로(1030)가 불일치하는 경우일 수 있다.
객체 위치 결정 장치는 피쳐 정보에 포함된 현재 주행 차로에 기초하여, 차량의 주행 궤적이 차로 맵 상의 차로에 피팅되도록 차로 피팅(lane fitting)을 수행할 수 있다.
구체적으로, 객체 위치 결정 장치는 차량의 주행 궤적과 차로 맵 상의 차로 표시선 간의 이격 거리 및 곡률 등을 고려하여 차로 피팅을 수행할 수 있다. 객체 위치 결정 장치는 차량의 주행 궤적 중 적어도 일부는 선형 이동시키고, 적어도 일부의 곡률을 조정함으로써, 차량의 주행 궤적이 현재 주행 차로에 해당하는 차로 맵 상의 차로 표시선에 일치하도록 차로 피팅을 수행할 수 있다.
도 10을 참조하면, 객체 위치 결정 장치는 차량의 제1 주행 궤적(1011) 의 적어도 일부는 선형 이동시키고, 적어도 일부의 곡률을 조정하여 제2 주행 궤적(1012)으로 보정함으로써 차로 맵 상의 소정의 차로(1030)에 피팅되도록 차로 피팅을 수행할 수 있다.
일 실시예에서, 차로 맵(1000)에 객체(1021)가 표시될 수 있다. 객체 위치 결정 장치는 차로 맵(1000) 상의 객체의 위치가 차로 피팅 결과에 연동되어 피팅되도록 객체 피팅(object fitting)을 수행할 수 있다.
도 10을 참조하면, 객체 위치 결정 장치는 차량의 제1 주행 궤적(1011)이 제2 주행 궤적(1012)으로 보정된 것과 동일하게, 제1 객체(1021)의 위치를 제2 객체(1022)의 위치로 보정함으로써 객체 피팅을 수행할 수 있다.
한편, 차로 피팅은 도 6 내지 도 7에서 상술한 이미지 병합이 완료되기 전 및/또는 완료된 이후에 수행될 수 있다.
도 11은 일 실시예에 따른 차로 맵 상에 객체의 위치를 결정하는 방법의 흐름도이다.
도 11에 도시된, 차량의 현재 차로를 결정하는 방법은, 앞서 설명된 도면들에서 설명된 실시예들에 관련되므로, 이하 생략된 내용이라 할지라도, 앞서 도면들에서 설명된 내용들은 도 11의 방법에도 적용될 수 있다.
도 11을 참조하면, 단계 1110에서 프로세서는 차량에 탑재된 카메라에서 촬영된 이미지 데이터를 획득할 수 있다.
단계 1120에서 프로세서는 이미지 데이터에 대해 소정의 처리를 수행함으로써 이미지 데이터에 포함된 복수의 피쳐들에 대한 피쳐 정보를 생성할 수 있다.
소정의 처리는, 이미지 데이터로부터 피쳐 정보를 생성할 수 있는 처리 방식이라면 제한 없이 해당될 수 있다. 구체적으로, 소정의 처리는, 이미지 데이터로부터 객체 종류 정보(그룹, 클래스 등), 이미지 데이터 상의 객체의 위치 정보, 객체의 크기 정보 등을 생성할 수 있는 처리 방식을 포함할 수 있다. 예를 들어, 소정의 처리는, Traffic lights detection (DLD), Traffic signs detection (TSD), Ego-lane recognition (ELR), Intersection recognition (ELR), Road markings detection (RMD), Bump recognition (BR) 등을 위한 모듈에 의해 구현될 수 있다.
단계 1130에서 프로세서는 이미지 데이터에 포함된 복수의 피쳐들 간의 상관도에 기초하여, 복수의 이미지 데이터에서 동일한 객체에 해당하는 복수의 피쳐들을 결정할 수 있다.
프로세서는 복수의 이미지 데이터를 병합(aggregation)함으로써 상기 복수의 이미지 데이터에서 동일한 객체에 해당하는 복수의 피쳐들을 결정할 수 있다.
프로세서는 그래프-매칭(graph-matching) 방법을 이용하여, 복수의 이미지 데이터에서 동일한 객체를 나타내는 복수의 피쳐들을 결정할 수 있다.
프로세서는 제1 이미지 데이터의 제1 피쳐 및 제2 이미지 데이터의 제2 피쳐를 선택하고, 제1 피쳐 및 제2 피쳐 주변의 다른 피쳐를 탐색할 수 있다. 프로세서는 제1 피쳐 주변의 제1 이웃 피쳐(neighbor feature)와 속성이 유사한 제2 이웃 피쳐가 제2 피쳐 주변에 존재하는 경우, 제1 이웃 피쳐 및 제2 이웃 피쳐 각각에 대해 제1 피쳐 및 제2 피쳐를 키(key) 피쳐로 하는 그래프로 등록할 수 있다. 여기서, 속성은 클래스(class), 피쳐의 가로/세로 비율, 거리 및 각도 중 적어도 하나를 포함할 수 있다.
프로세서는 제1 피쳐 주변의 모든 피쳐를 대상으로 탐색하는 단계 및 등록하는 단계를 반복할 수 있다. 프로세서는 제1 피쳐 주변의 모든 피쳐를 대상으로 그래프 구성을 시도한 후, 피쳐의 개수, 등록된 키 피쳐의 유사도(예를 들어, 크기, 이웃 피쳐와의 크기 관계 등)에 기초하여, 제1 피쳐와 제2 피쳐 간의 유사도를 산출할 수 있다. 프로세서는 제2 이미지 데이터의 제2 피쳐를 제외한 나머지 피쳐에 대해, 탐색하는 단계, 그래프로 등록하는 단계, 반복하는 단계 및 유사도를 산출하는 단계를 수행함으로써, 제1 이미지 데이터의 제1 피쳐와 유사도가 가장 높은 제2 이미지 데이터의 제2 피쳐가, 동일한 객체를 나타내는 것으로 결정할 수 있다.
프로세서는 그래프에 포함된 피쳐들은 동일한 깊이(depth)를 갖는 것으로 결정할 수 있다.
프로세서는 소정의 피쳐에 대해 후처리를 수행하는 경우, 동일한 깊이를 갖는 그래프에 포함된 나머지 피쳐들에 대해서도 동일한 후처리를 수행할 수 있다.
단계 1140에서 프로세서는 차량의 차로 맵 상의 위치 정보 및 복수의 이미지 데이터 상의 피쳐 위치 정보에 기초하여 차로 맵 상에 객체의 위치를 결정할 수 있다.
프로세서는 차량에 연결된 위치 확인 장치를 이용하여 차량의 차로 맵 상의 위치 정보를 획득할 수 있다.
프로세서는 차량의 차로 맵 상의 위치 정보 및 이미지 데이터 상의 피쳐 위치 정보에 기초하여 객체의 위치를 결정할 수 있다.
*프로세서는 복수의 이미지 데이터에서 동일한 객체에 해당하는 것으로 결정된 복수의 피쳐들의 위치 정보를 이용하여객체의 위치를 결정할 수 있다.
일 실시예에서, 객체는 신호등, 도로 표지판, 도로 마크, 현재 주행 차로, 교차로 및 방지턱 중 적어도 하나를 포함할 수 있다.
일 실시예에서, 프로세서는 차량에 연결된 위치 확인 장치를 이용하여 상기 차량의 주행 궤적을 획득할 수 있다. 또한, 프로세서는 피쳐 정보에 포함된 현재 주행 차로에 기초하여, 차량의 주행 궤적이 상기 차로 맵 상의 차로에 피팅되도록 차로 피팅(lane fitting)을 수행할 수 있다.
일 실시예에서, 프로세서는 차로 맵 상의 객체의 위치가 차로 피팅 결과에 연동되어 피팅되도록 객체 피팅(object fitting)을 수행할 수 있다.
일 실시예에서, 프로세서는 소정의 도로를 주행한 차량의 제1 궤적으로부터 결정된 제1 그룹 객체들의 제1 위치를 차로 맵 상에 표시할 수 있다. 또한, 프로세서는 소정의 도로를 주행한 차량의 제2 궤적으로부터 결정된 제2 그룹 객체들의 제2 위치를 차로 맵 상에 표시할 수 있다. 또한, 프로세서는 제1 그룹 객체들과 제2 그룹 객체들에서 동일한 객체를 결정하고, 동일한 객체로 결정된 객체들의 위치를 병합하여 각 객체들에 대한 최종 위치를 차로 맵 상에 표시할 수 있다.
일 실시예에서, 프로세서는 상기 제1 그룹 객체들을 이용하여 제1 그래프를 구성하고, 제2 그룹 객체들을 이용하여 제2 그래프를 구성하고, 제1 그래프 및 제2 그래프 간의 유사도 비교를 통해 제1 그룹 객체들과 제2 그룹 객체들에서 동일한 객체를 결정할 수 있다.
도 12는 일 실시예에 따른 객체 위치 결정 장치의 블록도이다.
도 12를 참조하면, 객체 위치 결정 장치(1200)는 통신부(1210), 프로세서(1220) 및 DB(1230)를 포함할 수 있다. 도 12의 객체 위치 결정 장치(1200)에는 실시예와 관련된 구성요소들만이 도시되어 있다. 따라서, 도 12에 도시된 구성요소들 외에 다른 범용적인 구성요소들이 더 포함될 수 있음을 당해 기술분야의 통상의 기술자라면 이해할 수 있다. 또한, 일 실시예에서 객체 위치 결정 장치(1200)에는 통신부(1210)가 포함되지 않을 수 있다.
통신부(1210)는 외부 서버 또는 외부 장치와 유선/무선 통신을 하게 하는 하나 이상의 구성 요소를 포함할 수 있다. 예를 들어, 통신부(1210)는, 근거리 통신부(미도시), 이동 통신부(미도시) 및 방송 수신부(미도시) 중 적어도 하나를 포함할 수 있다.
DB(1230)는 객체 위치 결정 장치(1200) 내에서 처리되는 각종 데이터들을 저장하는 하드웨어로서, 프로세서(1220)의 처리 및 제어를 위한 프로그램을 저장할 수 있다. DB(1230)는 결제 정보, 사용자 정보 등을 저장할 수 있다.
DB(1230)는 DRAM(dynamic random access memory), SRAM(static random access memory) 등과 같은 RAM(random access memory), ROM(read-only memory), EEPROM(electrically erasable programmable read-only memory), CD-ROM, 블루레이 또는 다른 광학 디스크 스토리지, HDD(hard disk drive), SSD(solid state drive), 또는 플래시 메모리를 포함할 수 있다.
프로세서(1220)는 객체 위치 결정 장치(1200)의 전반적인 동작을 제어한다. 예를 들어, 프로세서(1220)는 DB(1230)에 저장된 프로그램들을 실행함으로써, 입력부(미도시), 디스플레이(미도시), 통신부(1210), DB(1230) 등을 전반적으로 제어할 수 있다. 프로세서(1220)는, DB(1230)에 저장된 프로그램들을 실행함으로써, 객체 위치 결정 장치(1200)의 동작을 제어할 수 있다.
프로세서(1220)는 도 1 내지 도 11에서 상술한 객체 위치 결정 장치의 동작 중 적어도 일부를 제어할 수 있다.
프로세서(1220)는 ASICs (application specific integrated circuits), DSPs(digital signal processors), DSPDs(digital signal processing devices), PLDs(programmable logic devices), FPGAs(field programmable gate arrays), 제어기(controllers), 마이크로 컨트롤러(micro-controllers), 마이크로 프로세서(microprocessors), 기타 기능 수행을 위한 전기적 유닛 중 적어도 하나를 이용하여 구현될 수 있다.
일 실시예로, 객체 위치 결정 장치(1200)는 이동성을 가지는 전자 장치일 수 있다. 예를 들어, 교통 정보 제공 장치(800)는 스마트폰, 태블릿 PC, PC, 스마트 TV, PDA(personal digital assistant), 랩톱, 미디어 플레이어, 네비게이션, 카메라가 탑재된 디바이스 및 기타 모바일 전자 장치로 구현될 수 있다. 또한, 객체 위치 결정 장치(1200)는 통신 기능 및 데이터 프로세싱 기능을 구비한 시계, 안경, 헤어 밴드 및 반지 등의 웨어러블 장치로 구현될 수 있다.
다른 실시예로, 객체 위치 결정 장치(1200)는 차량 내에 임베디드 되는 전자 장치일 수 있다. 예를 들어, 객체 위치 결정 장치(1200)는 생산 과정 이후 튜닝(tuning)을 통해 차량 내에 삽입되는 전자 장치일 수 있다.
또 다른 실시예로, 객체 위치 결정 장치(1200)는 차량 외부에 위치하는 서버일 수 있다. 서버는 네트워크를 통해 통신하여 명령, 코드, 파일, 컨텐츠, 서비스 등을 제공하는 컴퓨터 장치 또는 복수의 컴퓨터 장치들로 구현될 수 있다. 서버는 차량에 탑재된 장치들로부터 차량의 이동 경로를 결정하기 위해 필요한 데이터를 수신하고, 수신한 데이터에 기초하여 차량의 이동 경로를 결정할 수 있다.
또 다른 실시예로, 객체 위치 결정 장치(1200)에서 수행되는 프로세스는 이동성을 가지는 전자 장치, 차량 내에 임베디되는 전자 장치 및 차량 외부에 위치하는 서버 중 적어도 일부에 의해 수행될 수 있다.
본 발명에 따른 실시 예는 컴퓨터 상에서 다양한 구성요소를 통하여 실행될 수 있는 컴퓨터 프로그램의 형태로 구현될 수 있으며, 이와 같은 컴퓨터 프로그램은 컴퓨터로 판독 가능한 매체에 기록될 수 있다. 이때, 매체는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등과 같은, 프로그램 명령어를 저장하고 실행하도록 특별히 구성된 하드웨어 장치를 포함할 수 있다.
한편, 상기 컴퓨터 프로그램은 본 발명을 위하여 특별히 설계되고 구성된 것이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수 있다. 컴퓨터 프로그램의 예에는, 컴파일러에 의하여 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용하여 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함될 수 있다.
일 실시예에 따르면, 본 개시의 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 또는 두 개의 사용자 장치들 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
본 발명에 따른 방법을 구성하는 단계들에 대하여 명백하게 순서를 기재하거나 반하는 기재가 없다면, 상기 단계들은 적당한 순서로 행해질 수 있다. 반드시 상기 단계들의 기재 순서에 따라 본 발명이 한정되는 것은 아니다. 본 발명에서 모든 예들 또는 예시적인 용어(예들 들어, 등등)의 사용은 단순히 본 발명을 상세히 설명하기 위한 것으로서 특허청구범위에 의해 한정되지 않는 이상 상기 예들 또는 예시적인 용어로 인해 본 발명의 범위가 한정되는 것은 아니다. 또한, 당업자는 다양한 수정, 조합 및 변경이 부가된 특허청구범위 또는 그 균등물의 범주 내에서 설계 조건 및 팩터에 따라 구성될 수 있음을 알 수 있다.
따라서, 본 발명의 사상은 상기 설명된 실시 예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 또는 이로부터 등가적으로 변경된 모든 범위는 본 발명의 사상의 범주에 속한다고 할 것이다.

Claims (13)

  1. 차로 맵 상에 객체의 위치를 결정하는 방법에 있어서,
    차량에 탑재된 카메라에서 촬영된 이미지 데이터를 획득하는 단계;
    상기 이미지 데이터에 대해 소정의 처리를 수행함으로써 상기 이미지 데이터에 포함된 복수의 피쳐들에 대한 피쳐 정보(feature information)를 생성하는 단계;
    상기 이미지 데이터에 포함된 상기 복수의 피쳐들 간의 상관도에 기초하여, 복수의 이미지 데이터에서 동일한 객체에 해당하는 복수의 피쳐들을 결정하는 단계; 및
    상기 차량의 차로 맵 상의 위치 정보 및 상기 복수의 이미지 데이터 상의 피쳐 위치 정보에 기초하여 상기 차로 맵 상에 객체의 위치를 결정하는 단계;
    를 포함하는, 방법.
  2. 제 1 항에 있어서,
    상기 객체는 신호등, 도로 표지판, 도로 마크 및 방지턱 중 적어도 하나를 포함하는 것인, 방법.
  3. 제 1 항에 있어서,
    상기 동일한 객체에 해당하는 복수의 피쳐들을 결정하는 단계는,
    복수의 이미지 데이터 내 피쳐들을 병합(aggregation)함으로써 상기 복수의 이미지 데이터에서 동일한 객체에 해당하는 복수의 피쳐들을 결정하는 단계;
    를 포함하는, 방법.
  4. 제 1 항에 있어서,
    상기 동일한 객체에 해당하는 복수의 피쳐들을 결정하는 단계는,
    그래프-매칭(graph-matching) 방법을 이용하여, 복수의 이미지 데이터에서 동일한 객체를 나타내는 복수의 피쳐들을 결정하는 단계;
    를 포함하는, 방법.
  5. 제 4 항에 있어서,
    제1 이미지 데이터의 제1 피쳐 및 제2 이미지 데이터의 제2 피쳐를 선택하는 단계;
    상기 제1 피쳐 및 상기 제2 피쳐 주변의 다른 피쳐를 탐색하는 단계;
    상기 제1 피쳐 주변의 제1 이웃 피쳐(neighbor feature)와 속성이 유사한 제2 이웃 피쳐가 상기 제2 피쳐 주변에 존재하는 경우, 상기 제1 이웃 피쳐 및 상기 제2 이웃 피쳐 각각에 대해 상기 제1 피쳐 및 상기 제2 피쳐를 키(key) 피쳐로 하는 그래프로 등록하는 단계;
    상기 제1 피쳐 주변의 모든 피쳐를 대상으로 상기 탐색하는 단계 및 상기 등록하는 단계를 반복하는 단계;
    상기 제1 피쳐 주변의 모든 피쳐를 대상으로 그래프 구성을 시도한 후, 피쳐의 개수, 등록된 키 피쳐의 유사도에 기초하여, 상기 제1 피쳐와 상기 제2 피쳐 간의 유사도를 산출하는 단계; 및
    상기 제2 이미지 데이터의 상기 제2 피쳐를 제외한 나머지 피쳐에 대해, 상기 탐색하는 단계, 상기 그래프로 등록하는 단계, 상기 반복하는 단계 및 상기 유사도를 산출하는 단계를 수행함으로써, 상기 제1 이미지 데이터의 상기 제1 피쳐와 유사도가 가장 높은 상기 제2 이미지 데이터의 상기 제2 피쳐가 동일한 객체를 나타내는 것으로 결정하는 단계;
    를 포함하는, 방법.
  6. 제 5 항에 있어서,
    상기 방법은,
    상기 그래프에 포함된 피쳐들은 동일한 깊이(depth)를 갖는 것으로 결정하는 단계;
    를 더 포함하는 방법.
  7. 제 6 항에 있어서,
    상기 방법은,
    소정의 피쳐에 대해 후처리를 수행하는 경우, 동일한 깊이를 갖는 상기 그래프에 포함된 나머지 피쳐들에 대해서도 동일한 후처리를 수행하는 단계;
    를 포함하는, 방법.
  8. 제 5 항에 있어서,
    상기 속성은 클래스(class), 피쳐의 가로/세로 비율, 거리 및 각도 중 적어도 하나를 포함하는 것인, 방법.
  9. 제 1 항에 있어서,
    상기 방법은,
    상기 차량에 연결된 위치 확인 장치를 이용하여 상기 차량의 상기 차로 맵 상의 위치 정보를 획득하는 단계;
    를 더 포함하는, 방법.
  10. 제 1 항에 있어서,
    상기 방법은,
    소정의 도로를 주행한 차량의 제1 궤적으로부터 결정된 제1 그룹 객체들의 제1 위치를 상기 차로 맵 상에 표시하는 단계;
    상기 소정의 도로를 주행한 차량의 제2 궤적으로부터 결정된 제2 그룹 객체들의 제2 위치를 상기 차로 맵 상에 표시하는 단계; 및
    상기 제1 그룹 객체들과 상기 제2 그룹 객체들에서 동일한 객체를 결정하고, 상기 동일한 객체로 결정된 객체들의 위치를 병합하여 각 객체들에 대한 최종 위치를 상기 차로 맵 상에 표시하는 단계;
    를 더 포함하는, 방법.
  11. 제 10 항에 있어서,
    상기 각 객체들에 대한 최종 위치를 상기 차로 맵 상에 표시하는 단계는,
    상기 제1 그룹 객체들을 이용하여 제1 그래프를 구성하고, 상기 제2 그룹 객체들을 이용하여 제2 그래프를 구성하고, 상기 제1 그래프 및 상기 제2 그래프 간의 유사도 비교를 통해 상기 제1 그룹 객체들과 상기 제2 그룹 객체들에서 동일한 객체를 결정하는 단계;
    를 포함하는, 방법.
  12. 차로 맵 상에 객체의 위치를 결정하기 위한 장치에 있어서,
    적어도 하나의 프로그램이 저장된 메모리; 및
    상기 적어도 하나의 프로그램을 실행함으로써 연산을 수행하는 프로세서를 포함하고,
    상기 프로세서는,
    차량에 탑재된 카메라에서 촬영된 이미지 데이터를 획득하고,
    상기 이미지 데이터에 대해 소정의 처리를 수행함으로써 상기 이미지 데이터에 포함된 복수의 피쳐들에 대한 피쳐 정보(feature information)를 생성하고,
    상기 이미지 데이터에 포함된 상기 복수의 피쳐들 간의 상관도에 기초하여, 복수의 이미지 데이터에서 동일한 객체에 해당하는 복수의 피쳐들을 결정하며,
    상기 차량의 차로 맵 상의 위치 정보 및 상기 복수의 이미지 데이터 상의 피쳐 위치 정보에 기초하여 상기 차로 맵 상에 객체의 위치를 결정하는 것인, 장치.
  13. 제 1 항의 방법을 컴퓨터에서 실행하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
PCT/KR2022/007516 2021-05-26 2022-05-26 차로 맵 상에 객체의 위치를 결정하기 위한 방법 및 장치 WO2022250480A1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE112022002754.1T DE112022002754T5 (de) 2021-05-26 2022-05-26 Verfahren und Vorrichtung zum Bestimmen der Position eines Objekts auf einer Fahrspurkarte

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
KR20210067940 2021-05-26
KR10-2021-0067940 2021-05-26
KR10-2021-0169973 2021-12-01
KR1020210169974A KR102491524B1 (ko) 2021-05-26 2021-12-01 차로 피팅을 수행하기 위한 방법 및 장치
KR1020210169973A KR102454599B1 (ko) 2021-05-26 2021-12-01 차로 맵 상에 객체의 위치를 결정하기 위한 방법 및 장치
KR10-2021-0169974 2021-12-01

Publications (1)

Publication Number Publication Date
WO2022250480A1 true WO2022250480A1 (ko) 2022-12-01

Family

ID=84228872

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2022/007516 WO2022250480A1 (ko) 2021-05-26 2022-05-26 차로 맵 상에 객체의 위치를 결정하기 위한 방법 및 장치

Country Status (2)

Country Link
DE (1) DE112022002754T5 (ko)
WO (1) WO2022250480A1 (ko)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008146356A (ja) * 2006-12-11 2008-06-26 Nissan Motor Co Ltd 視線方向推定装置及び視線方向推定方法
JP4273119B2 (ja) * 2003-10-21 2009-06-03 和郎 岩根 ナビゲーション装置
KR20100026123A (ko) * 2008-08-29 2010-03-10 주식회사 세인시스템 이동 물체의 특징점을 이용하는 영상 검지 방법
US20150154229A1 (en) * 2013-11-29 2015-06-04 Canon Kabushiki Kaisha Scalable attribute-driven image retrieval and re-ranking
KR20200102564A (ko) * 2019-02-21 2020-09-01 주식회사 와이즈오토모티브 사각 지대 탐색 장치 및 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4273119B2 (ja) * 2003-10-21 2009-06-03 和郎 岩根 ナビゲーション装置
JP2008146356A (ja) * 2006-12-11 2008-06-26 Nissan Motor Co Ltd 視線方向推定装置及び視線方向推定方法
KR20100026123A (ko) * 2008-08-29 2010-03-10 주식회사 세인시스템 이동 물체의 특징점을 이용하는 영상 검지 방법
US20150154229A1 (en) * 2013-11-29 2015-06-04 Canon Kabushiki Kaisha Scalable attribute-driven image retrieval and re-ranking
KR20200102564A (ko) * 2019-02-21 2020-09-01 주식회사 와이즈오토모티브 사각 지대 탐색 장치 및 방법

Also Published As

Publication number Publication date
DE112022002754T5 (de) 2024-05-02

Similar Documents

Publication Publication Date Title
WO2019209057A1 (en) Method of determining position of vehicle and vehicle using the same
JP5435306B2 (ja) 画像処理システム及び位置測位システム
JP5057184B2 (ja) 画像処理システム及び車両制御システム
EP3414594A1 (en) Distance sensor, and calibration method performed by device and system including the distance sensor
WO2014163307A1 (ko) 자동차 자동 운행 시스템
WO2020138908A1 (ko) 전자 장치 및 그 제어 방법
WO2018143589A1 (ko) 차선 정보를 출력하는 방법 및 장치
WO2015072621A1 (ko) 모바일 gps 정보를 이용하여 차량의 충돌을 방지하기 위한 시스템 및 그 방법
WO2020145441A1 (ko) 차량용 전자 장치 및 차량용 전자 장치의 동작 방법
WO2018164377A1 (ko) 지도 데이터를 생성하는 전자 장치 및 그 동작 방법
WO2020145607A1 (en) Electronic apparatus and method of assisting driving of vehicle
WO2020046038A1 (ko) 로봇 및 그의 제어 방법
WO2022255677A1 (ko) 다중 관측정보를 이용한 고정객체의 위치 결정 방법
JP5522475B2 (ja) ナビゲーション装置
WO2020138760A1 (ko) 전자 장치 및 그의 제어 방법
WO2023140476A1 (ko) 자율 주행 알고리즘의 성능 평가 방법 및 시스템
WO2018135745A1 (ko) 차량 주변의 객체를 나타내는 영상을 생성하는 방법 및 장치
WO2022250480A1 (ko) 차로 맵 상에 객체의 위치를 결정하기 위한 방법 및 장치
WO2021201569A1 (ko) 강화학습 기반 신호 제어 장치 및 신호 제어 방법
WO2022154153A1 (ko) 로봇 및 그 제어 방법
WO2013039273A1 (en) Driving apparatus and method using 3d sensor
CN114730492A (zh) 断言交通工具检测模型生成和实现
JP6973294B2 (ja) 車両捜索システムおよび車両捜索方法
WO2022250471A1 (ko) 차로 중심선 네트워크를 결정하기 위한 방법 및 장치
WO2021201425A1 (ko) 차량의 주행 안내 방법 및 전자 장치

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22811671

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2023572657

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 18563933

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 112022002754

Country of ref document: DE