Method and apparatus for perceiving a target object
By acquiring multiple feature points and their uncertainty in the point cloud cluster and calculating the second state of the target object, the problem of reducing calculation accuracy caused by point cloud cluster occlusion is solved, and higher position and velocity accuracy is achieved.
Patent Information
- Application Number
- CN202010755668.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2020-07-31
- Publication Date
- 2025-08-05
- Estimated Expiration
- 2040-07-31
AI Technical Summary
In the prior art, when calculating the target object position and velocity based on the geometric center or center of gravity of the point cloud cluster, if the point cloud cluster is blocked, the calculation accuracy will be reduced.
By acquiring multiple feature points of the point cloud cluster, the uncertainty of each feature point is determined, and the second state of the target object, including position and velocity, is calculated based on the state and uncertainty of the feature point.
The calculation accuracy of the target object position and speed is improved, and the accuracy rate decrease caused by point cloud cluster occlusion is avoided.
Smart Images

Figure CN114092898B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of autonomous driving, and more specifically, to a method and device for perceiving a target object. Background Art
[0002] The collection of point data on the shape of a target object obtained by an acquisition device is also called a point cloud. Currently, the more commonly used point clouds include laser point clouds. That is, when a laser beam hits the surface of a target, the reflected laser carries information such as the target's position and distance. If the laser beam is scanned along a certain trajectory, the reflected laser point information will be recorded while scanning. Since the scanning is relatively precise, a large number of laser points can be obtained, thus forming a laser point cloud. Currently, laser point clouds are often used in the field of autonomous driving or unmanned driving to perceive targets.
[0003] In existing target object perception schemes, the point cloud data containing the target object is first processed to obtain a point cloud cluster representing the target object, and the geometric center or center of gravity of the point cloud cluster is determined. Then, based on the position and speed of the geometric center or center of gravity of the point cloud cluster, the position and speed of the target object are calculated to perceive the target object.
[0004] However, in the above-mentioned solution of calculating the position and velocity of the target object based on the position and velocity of the geometric center or center of gravity of the point cloud cluster, if the geometric center or center of gravity of the point cloud cluster is blocked, the accuracy of the calculated position and velocity of the target object will be reduced. Summary of the Invention
[0005] The present application provides a method and device for sensing a target object to improve the accuracy of calculating the position or speed of the target object.
[0006] In a first aspect, a method for perceiving a target object is provided, comprising: acquiring multiple feature points of a point cloud cluster, the point cloud cluster representing the target object; determining the uncertainty of each feature point in the multiple feature points, the uncertainty being used to indicate an error generated when the position of each feature point in the point cloud cluster is acquired by an acquisition device; acquiring a first state of the target object corresponding to each feature point in the multiple feature points based on a state of each feature point in the multiple feature points, the state of each feature point including the position and / or speed of each feature point, the first state including the first speed and / or first position of the target object; determining a second state of the target object based on the first state of the target object corresponding to each feature point in the multiple feature points and the uncertainty corresponding to each feature point in the multiple feature points, the second state including the second speed and / or second position of the target object.
[0007] In the embodiment of the present application, based on the state of each of the multiple feature points in the point cloud cluster, the first state of the target object corresponding to the state of each of the multiple feature points is calculated, and based on the first state of the target object corresponding to each of the multiple feature points and the uncertainty corresponding to each feature point, the second state of the target object is determined, which is conducive to improving the accuracy of determining the second state of the target object. This avoids the existing solution of determining the state of the target object based solely on the state of the geometric center or center of gravity of the point cloud cluster, which causes the accuracy of determining the state of the target object to decrease when the geometric center or center of gravity of the point cloud cluster is blocked.
[0008] In a possible implementation, the plurality of feature points include a plurality of endpoints of the point cloud cluster, where an endpoint is also called an “interest point” and generally refers to an intersection of two adjacent edges in a point cloud cluster.
[0009] In the embodiment of the present application, using multiple endpoints of the point cloud cluster as the above-mentioned multiple feature points is conducive to simplifying the process of determining the feature points.
[0010] In one possible implementation, determining the uncertainty of each of the multiple feature points includes: determining the type of edges connected to each of the multiple endpoints, where the edge types include visible edges directly collected by the acquisition device and invisible edges that cannot be directly collected by the acquisition device; and determining the uncertainty of each of the multiple endpoints based on the types of two edges connected to each of the multiple endpoints.
[0011] In an embodiment of the present application, the uncertainty of each of the multiple endpoints is determined based on the type of two edges connected to each of the multiple endpoints, which is conducive to improving the accuracy of determining the uncertainty of the endpoints.
[0012] In one possible implementation, the multiple endpoints include a first endpoint, the type of the first edge connected to the first endpoint is a visible edge, and the type of the second edge connected to the first endpoint is an invisible edge, then the uncertainty of the first endpoint is determined based on the component of the detection uncertainty of the acquisition device in the orientation direction of the target object.
[0013] In the embodiment of the present application, the uncertainty of the first endpoint is determined based on the component of the detection uncertainty of the acquisition device on the orientation of the target object, which is conducive to improving the accuracy of determining the uncertainty of the first endpoint.
[0014] In one possible implementation, the uncertainty d1 of the first endpoint is expressed by the formula Determine, wherein R1 represents the measured distance between the acquisition device and the first endpoint, C0 is a preset value and is negatively correlated with the acquisition accuracy of the acquisition device, and the unit is radian; θ1 represents the coordinate azimuth when the acquisition device acquires the first endpoint; The azimuth angle representing the orientation of the target object.
[0015] In the embodiment of the present application, the formula Calculating the uncertainty of the first endpoint is beneficial to improving the accuracy of determining the uncertainty of the first endpoint.
[0016] In a possible implementation, the multiple endpoints include a second endpoint, and the two edges connected to the second endpoint are both visible edges, then the measured distance between the second endpoint and the acquisition device is positively correlated with the uncertainty of the second endpoint.
[0017] In the embodiment of the present application, the uncertainty of the second endpoint is determined based on the measured distance between the second endpoint and the acquisition device, which is conducive to improving the accuracy of determining the uncertainty of the second endpoint.
[0018] In a possible implementation, the uncertainty d2 of the second endpoint is determined by the formula d2=R2×C1, where R2 represents the measured distance between the acquisition device and the second endpoint, and C1 represents a preset uncertainty in radians.
[0019] In the embodiment of the present application, the uncertainty of the second endpoint is determined by the formula d2=R2×C1, which is conducive to improving the accuracy of determining the uncertainty of the second endpoint.
[0020] In a possible implementation, the uncertainty d of the second endpoint on the x-axis in the coordinate system is 2x By formula d 2x =D x0 +R2cos(θ2)×C1, where R represents the distance between the acquisition device and the first endpoint, C1 represents the detection uncertainty of the acquisition device, in radians; θ2 represents the coordinate azimuth angle when the acquisition device acquires the second endpoint; D x0 Represents the initial uncertainty of the preset second endpoint in the x-axis direction.
[0021] In a possible implementation, the uncertainty d of the second endpoint on the y-axis in the coordinate system is 2y By formula d 2y =D y0+Rsin(θ)×C1, where R represents the distance between the acquisition device and the first endpoint, C1 represents the detection uncertainty of the acquisition device, in radians; θ represents the coordinate azimuth angle when the acquisition device acquires the first endpoint; D y0 Represents the initial uncertainty of the preset second endpoint in the y-axis direction.
[0022] In one possible implementation, the determining the uncertainty of each of the multiple endpoints based on the type of two edges connected to each of the multiple endpoints includes: if the first reference point is not blocked by other objects, determining the uncertainty of each of the multiple endpoints based on the type of two edges connected to each of the multiple endpoints, the first reference point being a point at a preset distance from the first endpoint in the direction of the extension line of the first edge, and the other objects being objects other than the target object and the acquisition device in the image where the point cloud cluster is located.
[0023] In an embodiment of the present application, when the first reference point is not blocked by other objects, the uncertainty of each of the multiple endpoints can be determined based on the type of two edges connected to each of the multiple endpoints, which is conducive to improving the accuracy of the uncertainty of the determined endpoints.
[0024] In one possible implementation, the method further includes: if the first reference point is blocked by the other object, determining the uncertainty of the first endpoint based on the degree of change between the horizontal angle corresponding to the first reference point and the horizontal angle corresponding to the first endpoint.
[0025] In an embodiment of the present application, if the first reference point is blocked by other objects, the uncertainty of the first endpoint is determined based on the degree of change of the horizontal angle corresponding to the first reference point and the horizontal angle corresponding to the first endpoint, which is beneficial to improving the accuracy of the uncertainty of the first endpoint.
[0026] In a possible implementation, if the first reference point is blocked by the other object, determining the uncertainty of the first endpoint based on the horizontal angle corresponding to the first reference point and the horizontal angle corresponding to the first endpoint includes: if the first reference point is blocked by the other object, based on the difference δ between the horizontal angle corresponding to the first reference point and the horizontal angle corresponding to the first endpoint, using the formula Determine the uncertainty d3 of the first endpoint, where R1 represents the measured distance between the acquisition device and the first endpoint, C0 is a preset value that is negatively correlated with the acquisition accuracy of the acquisition device and is expressed in radians; θ1 represents the coordinate azimuth angle when the acquisition device acquires the first endpoint; The azimuth angle representing the orientation of the target object.
[0027] In an embodiment of the present application, if the first reference point is blocked by other objects, the uncertainty of the first endpoint is determined based on the degree of change of the horizontal angle corresponding to the first reference point and the horizontal angle corresponding to the first endpoint, as well as the component of the detection uncertainty of the acquisition device in the orientation of the target object, which is beneficial to improving the accuracy of the uncertainty of the first endpoint.
[0028] In one possible implementation, the method further includes: if the first reference point is blocked by the other object, determining the uncertainty of the second endpoint based on the degree of change between the horizontal angle corresponding to the first reference point and the horizontal angle corresponding to the first endpoint.
[0029] In an embodiment of the present application, if the first reference point is blocked by other objects, the uncertainty of the second endpoint is determined based on the degree of change of the horizontal angle corresponding to the first reference point and the horizontal angle corresponding to the first endpoint, which is conducive to improving the accuracy of the uncertainty of the second endpoint.
[0030] In one possible implementation, if the first reference point is not blocked by the other objects, the uncertainty of the second endpoint is determined based on the degree of change between the horizontal angle corresponding to the first reference point and the horizontal angle corresponding to the first endpoint, including: if the first reference point is not blocked by the other objects, based on the difference δ between the horizontal angle corresponding to the first reference point and the horizontal angle corresponding to the first endpoint, the uncertainty d4 of the second endpoint is determined by the formula d4=R2×(C1+δ), wherein R2 represents the measurement distance between the acquisition device and the second endpoint, and C1 represents the preset uncertainty, in radians.
[0031] In an embodiment of the present application, if the first reference point is blocked by other objects, the uncertainty of the second endpoint is determined based on the degree of change of the horizontal angle corresponding to the first reference point and the horizontal angle corresponding to the first endpoint, as well as the measured distance between the acquisition device and the second endpoint, which is conducive to improving the accuracy of the uncertainty of the second endpoint.
[0032] In a possible implementation, the determining the second state of the target object based on the first state of the target object corresponding to each feature point in the multiple feature points and the uncertainty corresponding to each feature point in the multiple feature points includes: determining the confidence corresponding to each feature point in the multiple feature points based on the uncertainty corresponding to each feature point in the multiple feature points; determining the second state of the target object based on the first state of the target object corresponding to each feature point in the multiple feature points and the confidence corresponding to each feature point in the multiple feature points.
[0033] In a possible implementation, determining the confidence level corresponding to each feature point in the plurality of feature points based on the uncertainty level corresponding to each feature point in the plurality of feature points includes: determining the confidence level corresponding to each feature point in the plurality of feature points based on the uncertainty level corresponding to each feature point in the plurality of feature points by formula Determine the confidence M corresponding to the kth feature point among the multiple feature points k , where k represents the kth feature point among the multiple feature points, k=1...n, and n is the total number of the multiple feature points; d k represents the uncertainty of the k-th feature point; Δ k Indicates the change between the historical state of the k-th feature point and the first state; C3 and C4 are preset values.
[0034] It should be noted that the coordinate azimuth angle mentioned above can be understood as the angle between the line connecting the endpoint of the target object and the acquisition device in the coordinate system and the x-axis. The azimuth angle of the target object's orientation can be understood as the horizontal angle between the x-axis and the target object in a clockwise direction, starting from the target object's orientation.
[0035] In a second aspect, a device for sensing a target object is provided, the device comprising units for executing the first aspect or any possible implementation of the first aspect.
[0036] In a third aspect, a device for sensing an object is provided, wherein the device has the functions of implementing the device described in the method of the first aspect. These functions can be implemented in hardware or by hardware executing corresponding software. The hardware or software includes one or more units corresponding to the functions described above.
[0037] In a fourth aspect, a computing device is provided, comprising an input / output interface, a processor, and a memory. The processor is configured to control the input / output interface to transmit and receive signals or information, the memory is configured to store a computer program, and the processor is configured to retrieve and execute the computer program from the memory, so that the computing device performs the method of the first aspect.
[0038] In a fifth aspect, a computer program product is provided, comprising: a computer program code, which enables the computer to execute the methods in the above aspects when the computer program code is run on a computer.
[0039] In a sixth aspect, a computer-readable medium is provided, wherein the computer-readable medium stores a program code, and when the computer program code is run on a computer, the computer executes the methods in the above aspects.
[0040] In a seventh aspect, a chip system is provided, comprising a processor configured to enable a computing device to implement the functions described in the aforementioned aspects, such as generating, receiving, transmitting, or processing the data and / or information described in the aforementioned methods. In one possible design, the chip system further comprises a memory configured to store program instructions and data necessary for the computing device. The chip system may be comprised of a single chip or may include a chip and other discrete components.
[0041] In an eighth aspect, a vehicle is provided, comprising an input / output interface, a processor, and a memory. The processor is configured to control the input / output interface to transmit and receive signals or information, the memory is configured to store a computer program, and the processor is configured to retrieve and execute the computer program from the memory, so that the computing device performs the method of the first aspect.
[0042] Optionally, the above-mentioned vehicle may have an autonomous driving function. BRIEF DESCRIPTION OF THE DRAWINGS
[0043] Figure 1 It is a functional block diagram of the vehicle 100 provided in an embodiment of the present application.
[0044] Figure 2 It is a schematic diagram of an automatic driving system applicable to an embodiment of the present application.
[0045] Figure 3 It is a schematic flow chart of the target object perception method of an embodiment of the present application.
[0046] Figure 4 Schematic diagram of a point cloud cluster corresponding to a target object in an embodiment of the present application.
[0047] Figure 5 It is a schematic diagram of the positional relationship between the target object 400 and the acquisition device 500 in the coordinate system of an embodiment of the present application.
[0048] Figure 6 Schematic diagram of the positional relationship between the target object 400 and the acquisition device 500 in the coordinate system of another embodiment of the present application.
[0049] Figure 7 Schematic diagram of an environment map according to an embodiment of the present application.
[0050] Figure 8 Schematic diagram of a target object sensing device according to an embodiment of the present application.
[0051] Figure 9 It is a schematic block diagram of a computing device according to another embodiment of the present application. DETAILED DESCRIPTION
[0052] The following will describe the technical solution in this application with reference to the accompanying drawings. Figure 1 , taking the scenario of intelligent driving as an example, the scenarios to which the embodiments of the present application are applicable are introduced.
[0053] Figure 1 is a functional block diagram of a vehicle 100 provided in an embodiment of the present application. In one embodiment, the vehicle 100 is configured for a fully or partially autonomous driving mode. For example, the vehicle 100 can control itself while in autonomous driving mode, and can determine the current state of the vehicle and its surrounding environment through human operation, determine the possible behavior of at least one other vehicle in the surrounding environment, and determine the confidence level corresponding to the probability of the other vehicle performing the possible behavior, and control the vehicle 100 based on the determined information. When the vehicle 100 is in autonomous driving mode, the vehicle 100 can be set to operate without human interaction.
[0054] The vehicle 100 may include various subsystems, such as a travel system 102, a sensor system 104, a control system 106, one or more peripheral devices 108, a power source 110, a computer system 112, and a user interface 116. Alternatively, the vehicle 100 may include more or fewer subsystems, and each subsystem may include multiple components. In addition, each subsystem and component of the vehicle 100 may be interconnected via wired or wireless connections.
[0055] Propulsion system 102 may include components that provide powered locomotion for vehicle 100. In one embodiment, propulsion system 102 may include engine 118, energy source 119, transmission 120, and wheels / tires 121. Engine 118 may be an internal combustion engine, an electric motor, an air compression engine, or another combination of engines, such as a hybrid engine consisting of a gasoline engine and an electric motor, or a hybrid engine consisting of an internal combustion engine and an air compression engine. Engine 118 converts energy source 119 into mechanical energy.
[0056] Examples of energy source 119 include gasoline, diesel, other petroleum-based fuels, propane, other compressed gas-based fuels, ethanol, solar panels, batteries, and other sources of electricity. Energy source 119 may also provide energy to other systems of vehicle 100.
[0057] The transmission 120 can transmit mechanical power from the engine 118 to the wheels 121. The transmission 120 may include a gearbox, a differential, and a drive shaft. In one embodiment, the transmission 120 may also include other components, such as a clutch. The drive shaft may include one or more shafts that can be coupled to one or more wheels 121.
[0058] The sensor system 104 (also referred to as a "collection device") may include several sensors that sense information about the environment surrounding the vehicle 100. For example, the sensor system 104 may include a positioning system 122 (the positioning system may be a global positioning system (GPS) system, a BeiDou system, or other positioning systems), an inertial measurement unit (IMU) 124, a radar 126, a laser rangefinder 128, and a camera 130. The sensor system 104 may also include sensors for the internal systems of the monitored vehicle 100 (e.g., an in-vehicle air quality monitor, a fuel gauge, an oil temperature gauge, etc.). Sensor data from one or more of these sensors may be used to detect objects and their corresponding characteristics (position, shape, direction, speed, etc.). This detection and recognition is a key function for the safe operation of the autonomous vehicle 100.
[0059] Positioning system 122 may be used to estimate the geographic location of vehicle 100. IMU 124 may be used to sense changes in position and orientation of vehicle 100 based on inertial acceleration. In one embodiment, IMU 124 may be a combination of an accelerometer and a gyroscope.
[0060] The radar 126 may utilize radio signals to sense objects in the surrounding environment of the vehicle 100. In some embodiments, in addition to sensing a target object, the radar 126 may also be configured to sense one or more of the target object's speed, position, and heading.
[0061] The laser rangefinder 128 may utilize laser light to sense objects in the environment in which the vehicle 100 is located. In some embodiments, the laser rangefinder 128 may include one or more laser sources, a laser scanner, and one or more detectors, among other system components.
[0062] The camera 130 may be used to capture multiple images of the surrounding environment of the vehicle 100. The camera 130 may be a still camera or a video camera.
[0063] Control system 106 controls the operation of vehicle 100 and its components. Control system 106 may include various components, including a steering system 132 , a throttle 134 , a brake unit 136 , a computer vision system 140 , a path control system 142 , and an obstacle avoidance system 144 .
[0064] The steering system 132 is operable to adjust the forward direction of the vehicle 100. For example, in one embodiment, it may be a steering wheel system.
[0065] The throttle 134 is used to control the operating speed of the engine 118 and, in turn, the speed of the vehicle 100 .
[0066] Braking unit 136 is used to control the deceleration of vehicle 100. Braking unit 136 can use friction to slow down wheels 121. In other embodiments, braking unit 136 can convert the kinetic energy of wheels 121 into electric current. Braking unit 136 can also take other forms to slow the rotation speed of wheels 121 to control the speed of vehicle 100.
[0067] The computer vision system 140 can be operated to process and analyze images captured by the camera 130 to identify objects and / or features in the environment surrounding the vehicle 100. The objects and / or features may include traffic signs, road boundaries, and obstacles. The computer vision system 140 can use object recognition algorithms, structure from motion (SFM) algorithms, video tracking, and other computer vision techniques. In some embodiments, the computer vision system 140 can be used to map the environment, track objects, estimate the speed of objects, and so on.
[0068] The route control system 142 is used to determine the driving route of the vehicle 100. In some embodiments, the route control system 142 may combine data from sensors, GPS 122, and one or more predetermined maps to determine the driving route for the vehicle 100.
[0069] The obstacle avoidance system 144 is used to identify, assess, and avoid or otherwise negotiate potential obstacles in the environment of the vehicle 100 .
[0070] Of course, in one example, the control system 106 may include additional or alternative components other than those shown and described, or may include fewer than some of the components shown.
[0071] Vehicle 100 interacts with external sensors, other vehicles, other computer systems, or users via peripherals 108. Peripherals 108 may include a wireless communication system 146, an onboard computer 148, a microphone 150, and / or a speaker 152.
[0072] In some embodiments, peripheral devices 108 provide a means for a user of vehicle 100 to interact with user interface 116. For example, onboard computer 148 can provide information to the user of vehicle 100. User interface 116 can also operate onboard computer 148 to receive user input. Onboard computer 148 can be operated via a touch screen. In other cases, peripheral devices 108 can provide a means for vehicle 100 to communicate with other devices located within the vehicle. For example, microphone 150 can receive audio (e.g., voice commands or other audio input) from the user of vehicle 100. Similarly, speaker 152 can output audio to the user of vehicle 100.
[0073] The wireless communication system 146 can communicate wirelessly with one or more devices directly or via a communication network. For example, the wireless communication system 146 can use 3G cellular communications, such as code division multiple access (CDMA), Global System for Mobile Communications (GSM) / GPRS, or fourth generation (4G) communications, such as LTE. Or fifth generation (5G) communications. The wireless communication system 146 can use WiFi to communicate with a wireless local area network (WLAN). In some embodiments, the wireless communication system 146 can use an infrared link, Bluetooth, or ZigBee to communicate directly with the device. Other wireless protocols, such as various vehicle communication systems, for example, the wireless communication system 146 may include one or more dedicated short range communications (DSRC) devices, which may include public and / or private data communications between vehicles and / or roadside stations.
[0074] Power source 110 can provide power to various components of vehicle 100. In one embodiment, power source 110 can be a rechargeable lithium-ion or lead-acid battery. One or more battery packs of such batteries can be configured as a power source to provide power to various components of vehicle 100. In some embodiments, power source 110 and energy source 119 can be implemented together, such as in some all-electric vehicles.
[0075] Some or all functions of the vehicle 100 are controlled by a computer system 112. The computer system 112 may include at least one processor 113 that executes instructions 115 stored in a non-transitory computer-readable medium, such as a data storage device 114. The computer system 112 may also be a plurality of computing devices that control individual components or subsystems of the vehicle 100 in a distributed manner.
[0076] The processor 113 may be any conventional processor, such as a commercially available central processing unit (CPU). Alternatively, the processor may be a dedicated device such as an application specific integrated circuit (ASIC) or other hardware based processor. Figure 1The processor, memory, and other elements of the computer 110 are functionally illustrated as being in the same block, but one of ordinary skill in the art will appreciate that the processor, computer, or memory may actually include multiple processors, computers, or memories that may or may not be stored in the same physical housing. For example, the memory may be a hard drive or other storage medium located in a housing different from that of the computer 110. Thus, references to a processor or computer will be understood to include references to a collection of processors or computers or memories that may or may not operate in parallel. Rather than using a single processor to perform the steps described herein, some components, such as the steering assembly and the deceleration assembly, may each have their own processor that performs only calculations related to the functionality of the component.
[0077] In various aspects described herein, the processor can be located remotely from the vehicle and in wireless communication with the vehicle. In other aspects, some of the processes described herein are performed on a processor disposed within the vehicle while others are performed by a remote processor, including taking the necessary steps to perform a single maneuver.
[0078] In some embodiments, the memory 114 may contain instructions 115 (e.g., program logic) that are executable by the processor 113 to perform various functions of the vehicle 100, including those described above. The memory 114 may also contain additional instructions, including instructions for sending data to, receiving data from, interacting with, and / or controlling one or more of the travel system 102, the sensor system 104, the control system 106, and the peripheral devices 108.
[0079] In addition to the instructions 115, the memory 114 may also store data such as road maps, route information, the vehicle's location, direction, speed, and other such vehicle data, as well as other information. This information may be used by the vehicle 100 and the computer system 112 during operation of the vehicle 100 in autonomous, semi-autonomous, and / or manual modes.
[0080] In some embodiments, the processor 113 may also execute the vehicle longitudinal motion parameter planning scheme of the embodiment of the present application to help the vehicle plan the longitudinal motion parameters, wherein the specific longitudinal motion parameter planning method can be referred to below. Figure 3 For the sake of brevity, I will not go into details here.
[0081] User interface 116 is used to provide information to or receive information from a user of vehicle 100. Optionally, user interface 116 may include one or more input / output devices within the set of peripherals 108, such as wireless communication system 146, onboard computer 148, microphone 150, and speaker 152.
[0082] Computer system 112 may control functions of vehicle 100 based on input received from various subsystems (e.g., travel system 102, sensor system 104, and control system 106) and from user interface 116. For example, computer system 112 may utilize input from control system 106 in order to control steering unit 132 to avoid obstacles detected by sensor system 104 and obstacle avoidance system 144. In some embodiments, computer system 112 may be operable to provide control over many aspects of vehicle 100 and its subsystems.
[0083] Alternatively, one or more of the above components may be installed or associated separately from the vehicle 100. For example, the memory 114 may be partially or completely separate from the vehicle 100. The above components may be communicatively coupled together in a wired and / or wireless manner.
[0084] Optionally, the above components are just an example. In actual applications, the components in the above modules may be added or deleted according to actual needs. Figure 1 It should not be understood as limiting the embodiments of the present invention.
[0085] An autonomous vehicle, such as vehicle 100 above, traveling on a road can identify objects in its surroundings to determine adjustments to its current speed. The objects can be other vehicles, traffic control devices, or other types of objects. In some examples, each identified object can be considered independently, and the speed adjustment to be made to the autonomous vehicle can be determined based on its respective characteristics, such as its current speed, acceleration, and distance from the vehicle.
[0086] Optionally, the autonomous vehicle 100 or a computing device associated with the autonomous vehicle 100 (e.g. Figure 1 The computer system 112, the computer vision system 140, the memory 114) can predict the behavior of the identified objects based on the characteristics of the identified objects and the state of the surrounding environment (e.g., traffic, rain, ice on the road, etc.). Optionally, each of the identified objects depends on the behavior of each other, so all of the identified objects can also be considered together to predict the behavior of a single identified object. The vehicle 100 can adjust its speed based on the predicted behavior of the identified objects. In other words, the autonomous vehicle can determine that the vehicle will need to adjust to a stable state (e.g., accelerate, decelerate, or stop) based on the predicted behavior of the objects. In this process, other factors can also be considered to determine the speed of the vehicle 100, such as the lateral position of the vehicle 100 in the road it is traveling on, the curvature of the road, the proximity of static and dynamic objects, etc.
[0087] In addition to providing instructions to adjust the speed of the autonomous vehicle, the computing device may also provide instructions to modify the steering angle of vehicle 100 so that the autonomous vehicle follows a given trajectory and / or maintains a safe lateral and longitudinal distance from objects near the autonomous vehicle (e.g., cars in adjacent lanes on the road).
[0088] The vehicle 100 may be a car, truck, motorcycle, bus, ship, airplane, helicopter, lawn mower, recreational vehicle, amusement park vehicle, construction equipment, tram, golf cart, train, and cart, etc., and the embodiment of the present invention does not make any special limitation.
[0089] Combined with the above Figure 1 This paper introduces the applicable scenarios of the embodiments of the present application. Figure 2 An applicable autonomous driving system for executing the embodiments of the present application is introduced.
[0090] Figure 2 1 is a schematic diagram of an autonomous driving system applicable to an embodiment of the present application. A computer system 101 includes a processor 103 coupled to a system bus 105. Processor 103 can be one or more processors, each of which can include one or more processor cores. A display adapter (video adapter) 107 can drive a display 109, which is coupled to system bus 105. System bus 105 is coupled to an input / output (I / O) bus 113 via a bus bridge 111. An I / O interface 115 is coupled to the I / O bus. The I / O interface 115 communicates with various I / O devices, such as an input device 117 (e.g., a keyboard, mouse, touch screen, etc.), a media tray 121 (e.g., a CD-ROM, a multimedia interface, etc.), a transceiver 123 (capable of sending and / or receiving radio communication signals), a camera 155 (capable of capturing field and dynamic digital video images), and an external USB interface 125. Optionally, the interface connected to the I / O interface 115 may be a USB interface.
[0091] Processor 103 may be any conventional processor, including a Reduced Instruction Set Computing (RISC) processor, a Complex Instruction Set Computing (CISC) processor, or a combination thereof. Alternatively, the processor may be a dedicated device such as an application-specific integrated circuit (ASIC). Alternatively, processor 103 may be a neural network processor, or a combination of a neural network processor and the aforementioned conventional processors.
[0092] Alternatively, in various embodiments described herein, the computer system 101 may be located remotely from the autonomous vehicle and may be in wireless communication with the autonomous vehicle. In other aspects, some of the processes described herein are performed on a processor located within the autonomous vehicle, while others are performed by a remote processor, including taking actions required to execute a single maneuver.
[0093] Computer 101 can communicate with software deployment server 149 via network interface 129. Network interface 129 is a hardware network interface, such as a network card. Network 127 can be an external network, such as the Internet, or an internal network, such as Ethernet or a virtual private network (VPN). Alternatively, network 127 can be a wireless network, such as a Wi-Fi network or a cellular network.
[0094] The hard drive interface is coupled to the system bus 105. The hard drive interface is connected to the hard drive. The system memory 135 is coupled to the system bus 105. The data running in the system memory 135 may include the operating system 137 and application programs 143 of the computer 101.
[0095] The operating system consists of a shell 139 and a kernel 141. Shell 139 is an interface between the user and the operating system's kernel. Shell 139 is the outermost layer of the operating system. Shell 139 manages the interaction between the user and the operating system: it waits for user input, interprets user input to the operating system, and processes various operating system outputs.
[0096] The kernel 141 consists of the parts of the operating system that manage memory, files, peripherals, and system resources. It interacts directly with the hardware and typically runs processes and provides inter-process communication, CPU time slice management, interrupts, memory management, I / O management, and more.
[0097] Applications 143 include programs related to controlling the autonomous vehicle, such as those that manage the autonomous vehicle's interactions with obstacles on the road, control the autonomous vehicle's route or speed, and control the autonomous vehicle's interactions with other autonomous vehicles on the road. Applications 143 also reside on a system hosted by a software deployment server 149. In one embodiment, when application 147 is needed, computer system 101 can download application 143 from deployment server 149.
[0098] In some embodiments, the above-mentioned application may also include an application corresponding to the target object perception scheme provided in the embodiment of the present application, wherein the target object perception scheme of the embodiment of the present application will be specifically introduced below and will not be repeated here for the sake of brevity.
[0099] Sensor 153 (also known as a "collection device") is associated with computer system 101. Sensor 153 is used to detect the environment surrounding computer system 101. For example, sensor 153 can detect targets, such as animals, cars, obstacles, etc. Furthermore, the sensor can also detect the environment surrounding these targets, such as the environment surrounding the animal, other animals around the animal, weather conditions, and ambient light levels. Alternatively, if computer system 101 is located in a self-driving car, the sensor may be a lidar, camera, infrared sensor, chemical detector, microphone, etc.
[0100] In traditional object perception solutions, the point cloud data containing the object is first processed to obtain a point cloud cluster representing the object. The geometric center or center of gravity of the point cloud cluster is then determined. The position and velocity of the object are then calculated based on the position and velocity of the geometric center or center of gravity of the point cloud cluster to perceive the object. However, in this solution, which calculates the position and velocity of the object based on the position and velocity of the geometric center or center of gravity of the point cloud cluster, if the geometric center or center of gravity of the point cloud cluster is obscured, the accuracy of the calculated position and velocity of the object will be reduced.
[0101] In order to avoid the above problems, the present application provides a method for perceiving a target object, which calculates the first state (for example, first position and / or first velocity) of the target object corresponding to each feature point in the multiple feature points based on the states (for example, position and / or velocity) of multiple feature points of a point cloud cluster, and then fuses the first state of the target object corresponding to each of the above feature points based on the uncertainty of the multiple feature points to finally obtain the second state (for example, second position and / or second velocity) of the target object.
[0102] Combined with the following Figure 3 Introducing the method of the embodiment of this application. It should be understood that Figure 3 The method shown can be used by Figure 2 The automatic driving system shown may be executed, or may also be executed by the control system 106 in the vehicle 100. Optionally, the second state of the target object may also be sent to the obstacle avoidance system 144 to plan the driving route of the vehicle 100, etc.
[0103] Figure 3 It is a schematic flow chart of the target object perception method of an embodiment of the present application. Figure 3 The method shown includes steps 310 to 340 .
[0104] 310 , obtaining multiple feature points of a point cloud cluster, wherein the point cloud cluster represents a target object, or in other words, the point cloud cluster is used to represent a partial or complete outline or shape of the target object.
[0105] Typically, to facilitate the acquisition of feature points, the aforementioned multiple feature points can be the contour points of a point cloud cluster, for example, the multiple feature points can be the multiple endpoints of the point cloud cluster. Of course, the aforementioned multiple feature points can also include the geometric center, centroid, etc. of the point cloud cluster, which is not limited in this embodiment of the present application.
[0106] The endpoints are also called "interest points" and generally refer to the intersection of two adjacent edges in a point cloud cluster. Currently, the existing endpoint detection technology can be used to obtain the above multiple endpoints.
[0107] Alternatively, the above-mentioned point cloud clusters can be obtained based on existing point cloud cluster acquisition schemes. For example, when a lidar sensor is used as the acquisition device, the lidar sensor can emit and receive laser signals, and the time difference between emission and reception can be used to determine the detection distance corresponding to a certain emission angle. Through multi-layer scanning, a three-dimensional point cloud of the spatial environment can be obtained. The obtained point cloud is then converted into the format required for target perception after being driven by the lidar, and the point cloud data is continuously sent to the controller. Accordingly, the controller can cluster the point cloud data and filter out clusters that do not meet the target characteristics based on the number of cluster points and size of the clusters. The remaining ones are the point cloud clusters corresponding to the target. Among them, commonly used clustering methods include density-based spatial clustering of applications with noise (DBSCAN) and K-nearest neighbor (KNN).
[0108] After obtaining the point cloud cluster of the target object, the controller can also use the L-Shape feature extraction algorithm or a trained neural network model to extract the orientation and shape of the point cloud cluster. Of course, the orientation of the point cloud cluster can also be determined based on the historical trajectory or historical movement direction of the target object, and then the shape can be calculated by traversing the points in the point cloud cluster based on the orientation.
[0109] Typically, the point cloud cluster may represent the target object by fitting a bounding box, that is, the target object is framed by fitting a rectangle. Figure 4 Schematic diagram of the point cloud cluster corresponding to the target object in the embodiment of the present application. Figure 4 It can be seen that the outline of the point cloud cluster corresponding to the target object 400 is a rectangle with a length of l and a width of w. The rectangle includes four endpoints, namely endpoint 0, endpoint 1, endpoint 2, and endpoint 3. The coordinates of the geometric center of the rectangle are (x, y), and the coordinate azimuth is The coordinate azimuth is the angle between the orientation of the point cloud cluster and the x-axis in the coordinate system. The coordinate system is the geometric center of the laser radar. The coordinate of endpoint 0 is The coordinates of endpoint 1 are The coordinates of endpoint 2 are The coordinates of endpoint 3 are
[0110] It should be noted that the length and width of the above-mentioned point cloud cluster can be obtained through statistics of multiple frames of point cloud images. Of course, the length and width of the above-mentioned point cloud cluster can also be determined based on the collection position of the above-mentioned endpoints, which is not limited in this embodiment of the present application.
[0111] 320, determining a collection position of each feature point in the plurality of feature points and an uncertainty of each feature point, wherein the uncertainty is used to indicate an error generated when a collection device collects a position of each feature point in the point cloud cluster.
[0112] Usually, when the acquisition device is collecting the target object, there will be certain inherent errors in the acquisition device itself, or in the process of collecting the target object, whether the position of the feature point in the point cloud cluster can be directly observed by the acquisition device will affect the uncertainty corresponding to the above-mentioned feature point. Therefore, in this application, the uncertainty of the endpoint can be set based on whether the edge connected to the endpoint can be directly observed by the acquisition device.
[0113] That is, the above step 320 includes: determining the type of edge connected to each of the multiple endpoints, wherein the edge type includes visible edges directly observed by the acquisition device and invisible edges that cannot be directly observed by the acquisition device; and determining the uncertainty of each of the multiple endpoints based on the types of two edges connected to each of the multiple endpoints.
[0114] The above multiple endpoints can generally be divided into the following three types: the first type of endpoints, the two edges connected to the endpoints of this type are one visible edge and one invisible edge, for example, Figure 4 The endpoints 0 and 2 shown are the second type of endpoints. Both edges connected to this type of endpoint are visible edges. For example, Figure 4 The endpoint 1 shown in the figure is the third type of endpoint. The two edges connected to this type of endpoint are invisible edges. For example, Figure 4 The following describes methods for calculating uncertainty based on three different types of endpoints. For ease of distinction, the first endpoint is considered to belong to the first type of endpoint, the second endpoint to the second type of endpoint, and the third endpoint to the third type of endpoint.
[0115] For the first endpoint, the type of the first edge connected to the first endpoint is a visible edge, and the type of the second edge connected to the first endpoint is an invisible edge. The actual position of the first endpoint is usually located on the extension line of the visible edge (i.e., the first edge). Therefore, the uncertainty of the first endpoint is determined based on the component of the detection uncertainty of the acquisition device on the orientation of the target object.
[0116] The uncertainty of the first endpoint is determined based on the component of the acquisition device's detection uncertainty with respect to the orientation of the target object. This can be understood as taking into account the component of the acquisition device's detection uncertainty with respect to the orientation of the target object, as well as the impact of other factors on the uncertainty of the first endpoint, during the process of determining the uncertainty of the first endpoint. The uncertainty of the first endpoint is determined based on the component of the acquisition device's detection uncertainty with respect to the orientation of the target object. This can also be understood as directly taking the component of the acquisition device's detection uncertainty with respect to the orientation of the target object as the uncertainty of the first endpoint. This is not a limitation in the present embodiment of the application.
[0117] Alternatively, the inherent uncertainty of the acquisition device can be projected onto the orientation of the target object, and the uncertainty obtained after projection is used as the uncertainty of the first endpoint. That is, the uncertainty d1 of the first endpoint is calculated by the formula Determine, wherein R1 represents the measured distance between the acquisition device and the first endpoint, and θ1 represents the coordinate azimuth when the acquisition device acquires the first endpoint; Indicates the azimuth angle of the target object's orientation; C0 is a preset value and is negatively correlated with the acquisition accuracy of the acquisition device. The unit is radian (rad).
[0118] It should be noted that the coordinate azimuth angle mentioned above can be understood as the angle between the line connecting the first endpoint of the target object and the acquisition device in the coordinate system and the x-axis. The azimuth angle of the target object's orientation can be understood as the horizontal angle between the x-axis and the target object in a clockwise direction, starting from the target object's orientation.
[0119] Alternatively, if the acquisition device is a laser radar, C0 represents the uncertainty of the laser scan and can be set based on the laser scanning resolution and is proportional to the laser scanning resolution. For example, if the laser scanning resolution is 0.2°, C0 can be set to 0.01.
[0120] Usually, since the position of the target object can be expressed by the position of the target object in the coordinate system when it is subsequently determined, the uncertainty of the first endpoint can be projected onto the x-axis and y-axis to facilitate subsequent calculations, that is, the uncertainty of the first endpoint on the x-axis D 1x for Uncertainty of the first endpoint on the y-axis D 1y for Among them, Dx0 represents the initial uncertainty in the x-axis direction; D y0 represents the initial uncertainty in the y-axis direction.
[0121] It should be noted that D x0 and D y0 It is related to the first uncertainty C0 and / or the scanning accuracy of the acquisition device.
[0122] Combined with the following Figure 5 , taking endpoint 0 as the first endpoint, introduces the calculation scheme of the uncertainty of the first endpoint. Figure 5 It is a schematic diagram of the positional relationship between the target object 400 and the acquisition device 500 in the coordinate system of an embodiment of the present application.
[0123] Assumptions Figure 5 The coordinate system shown uses the geometric center of the sensor as its origin. The positive directions of the x-axis and y-axis are shown in the figure, with the counterclockwise direction being the positive direction. The azimuth angle of the acquisition device 500 is θ1', and the inherent uncertainty of the acquisition device 500 is C0' (rad). The measured distance between the acquisition device 500 and endpoint 0 is R1'. Since the visible edge connected to endpoint 0 is parallel to the orientation of the target object 400, the azimuth angle of the target object 400 is equal to the angle between the visible edge and the x-axis. The angle between the straight line measuring the distance R1 between the acquisition device 500 and the endpoint 0 and the direction of the target object is After projecting the inherent uncertainty C0' of the acquisition device 500 onto the orientation of the target object, the uncertainty d1' of endpoint 0 is obtained as
[0124] Then the component d of the uncertainty d1' of endpoint 0 on the x-axis is 1x 'for The component d of the uncertainty d1' of endpoint 0 on the y-axis 1y 'for Among them, D x0 ' represents the initial uncertainty in the x-axis direction; D y0 ' represents the initial uncertainty in the y-axis direction.
[0125] It should be noted that Figure 5 Endpoint 2 in also belongs to the above-mentioned first endpoint, and the calculation method of the uncertainty of the above-mentioned first endpoint can be adopted. For the sake of brevity, it will not be repeated here.
[0126] For the second endpoint, since both edges connected to it are visible edges, the factor affecting the uncertainty of the second endpoint is typically the measured distance between the second endpoint and the acquisition device. This distance is positively correlated with the uncertainty of the second endpoint. Therefore, the uncertainty of the second endpoint can be determined based on the measured distance between the second endpoint and the acquisition device in the coordinate system.
[0127] Optionally, the uncertainty d2 of the second endpoint is determined by the formula d2=R2×C1, where R2 represents the measurement distance between the acquisition device and the second endpoint, and C1 represents a preset uncertainty in radians.
[0128] Optionally, C1 can be set based on the horizontal angle of the observed object and be proportional to the horizontal angle of the observed object. For example, if the horizontal angle of the observed object is 10°, C1 can be set to 0.17. Of course, the second uncertainty can also be the same as the first uncertainty, which is not limited in this embodiment of the present application.
[0129] Combined with the following Figure 6 , taking endpoint 1 as the second endpoint, introduce the calculation scheme of the uncertainty of the second endpoint. Figure 6 It is a schematic diagram of the positional relationship between the target object 400 and the acquisition device 500 in the coordinate system of another embodiment of the present application.
[0130] Assumptions Figure 6 The coordinate system shown uses the sensor's geometric center as its origin. The positive directions of the x- and y-axes are shown in the figure, with the counterclockwise direction being the positive direction. The azimuth angle of acquisition device 500 is θ2', and the inherent uncertainty of acquisition device 500 is C1' (rad). The measured distance between acquisition device 500 and endpoint 1 is R2', and the uncertainty of endpoint 1, d2', is d2' = R2' × C1'.
[0131] Correspondingly, the component d2' of the uncertainty of endpoint 1 on the x-axis is 2x ' is d 2x '=D x0 '+d2'cos(|θ2'|); the component d of the uncertainty d2' of endpoint 1 on the y-axis 2y ' is d 2y '=D y0 '+d2'sin(|θ2'|), where D x0 ' represents the initial uncertainty in the x-axis direction; D y0 ' represents the initial uncertainty in the y-axis direction.
[0132] For the third endpoint, since both edges connected to it are invisible edges, the uncertainty of the third endpoint can be set to be greater than the uncertainty of the first endpoint and the uncertainty of the second endpoint. For example, it can be set to infinity. Accordingly, the components of the third endpoint's uncertainty in the x and y directions of the coordinate system can also be set to be greater than the components of the uncertainty of the first endpoint in the x and y directions of the coordinate system, as well as the components of the uncertainty of the second endpoint in the x and y directions of the coordinate system.
[0133] In some cases, the point cloud cluster of the target object can only represent part of the shape or outline of the target object. It is possible that the endpoint obtained is not the actual endpoint of the target object, and the position of the actual endpoint of the target object is blocked by other objects. In this case, in order to improve the accuracy of determining the uncertainty of the endpoint, this application also provides a method for calculating the uncertainty of the endpoint. Figure 7 It should be understood that in the case where the target object is blocked by other objects, the uncertainty of the first endpoint, the second endpoint, and the third endpoint can also be calculated directly according to the calculation method described above, and the embodiments of the present application are not limited to this.
[0134] Whether there are other objects blocking the target object and the acquisition device can be determined by generating an environmental map. The acquisition device scans the surroundings to obtain an environmental map containing the target object, and segments the environmental map according to a preset angle (for example, the azimuth of the acquisition device). The features of each segmented space include the azimuth corresponding to each space and the measured distance of the object closest to the acquisition device corresponding to the azimuth, as well as the object number. The measured distance of the nearest object corresponding to the azimuth and the object number can be obtained in the following way: calculate the minimum circumscribed convex polygon of the object based on the point cloud cluster of the object in the environmental map, traverse the circumscribed convex polygons of all objects in the environmental map, and obtain the measured distance of the object closest to the acquisition device corresponding to each azimuth in the environmental map, as well as the number of the nearest object.
[0135] Then, based on the historical data of the target object, the reference point corresponding to each endpoint of the current target object is determined, and the reference point corresponding to each endpoint is marked in the above-mentioned environmental map. In combination with the measured distance of the object closest to the acquisition device corresponding to each azimuth in the environmental map, and the number of the closest object, it is determined whether the reference point corresponding to the endpoint of the target object is blocked. When the measured distance from the acquisition device to the reference point corresponding to a certain endpoint is equal to the measured distance of the object closest to the acquisition device in the azimuth corresponding to the endpoint, then the endpoint and the acquisition device are not blocked by other objects. When the measured distance from the acquisition device to the reference point corresponding to a certain endpoint is greater than the measured distance of the object closest to the acquisition device in the azimuth corresponding to the endpoint, then the endpoint and the acquisition device are blocked by other objects.
[0136] It should be noted that the historical data of the target object may be the features of the target object obtained during the scanning process before obtaining the point cloud cluster of the target object, such as parameters such as the length and width of the target object, or the coordinates of each endpoint of the target object.
[0137] For example, Figure 7 Schematic diagram of the environment map of the embodiment of the present application. Figure 7 In the illustrated environmental map 700, the acquisition device 500 scans the surroundings at a preset azimuth angle to obtain an environmental map containing the target object 400, and segments the environmental map at a preset angle (e.g., the azimuth angle of the acquisition device). The features of each segmented space include the azimuth angle corresponding to each space and the measured distance of the object closest to the acquisition device corresponding to the azimuth angle, as well as the object number. The measured distance of the closest object corresponding to the azimuth angle and the object number can be obtained in the following manner: calculating the minimum circumscribed convex polygon of the object based on the point cloud cluster of the object 710 and the target object 400 in the environmental map, traversing the circumscribed convex polygons of all objects in the environmental map, i.e., the object 710 and the target object 400, and obtaining the measured distance of the object closest to the acquisition device corresponding to each azimuth angle in the environmental map and the number of the closest object.
[0138] Then, based on the historical data of the target object, the position of the reference point 1 corresponding to the endpoint 0 of the current target object is determined, and the reference point 1 corresponding to the endpoint 0 is marked in the above-mentioned environment map, and the measurement distance S between the acquisition device and the reference point 1 is determined, and the measurement distance S of the object closest to the acquisition device in the segmented space corresponding to the azimuth angle 1 corresponding to the endpoint 0 is determined. min , and the number of the nearest object. Figure 7 , S min <S, then the reference point 1 and the acquisition device are blocked by object 710.
[0139] After determining whether the endpoints of the target object are blocked by other objects in the above manner, the uncertainty of the endpoints can be calculated according to the types of the endpoints mentioned above.
[0140] For the first type of endpoint, if the first reference point is blocked by other objects, the uncertainty of the first endpoint is determined based on the degree of change between the horizontal angle corresponding to the first reference point and the horizontal angle corresponding to the first endpoint.
[0141] The horizontal angle corresponding to the first endpoint mentioned above can be understood as the horizontal angle used by the acquisition device to acquire the entire target object when the acquisition device uses the first endpoint as the endpoint of the target object.
[0142] The horizontal angle corresponding to the first reference point mentioned above can be understood as the horizontal angle used by the acquisition device to acquire the entire target object when the acquisition device uses the first reference point as the endpoint of the target object.
[0143] Optionally, based on the difference δ between the horizontal angle corresponding to the first reference point and the horizontal angle corresponding to the first endpoint, the formula Determine the uncertainty d3 of the first endpoint, where R1 represents the measured distance between the acquisition device and the first endpoint, C0 is a preset value that is negatively correlated with the acquisition accuracy of the acquisition device and is expressed in radians; θ1 represents the coordinate azimuth angle of the acquisition device when acquiring the first endpoint; The azimuth indicating the direction of the target object.
[0144] See also Figure 7 , the horizontal angle corresponding to endpoint 0 is δ0, and the horizontal angle corresponding to reference point 1 is δ1. Then the difference δ between the horizontal angle corresponding to reference point 1 and the horizontal angle corresponding to endpoint 0 is δ = |δ1| - |δ0|.
[0145] As mentioned above, in order to facilitate subsequent calculations, the uncertainty d3 of the first endpoint can be projected onto the x-axis and y-axis, that is, the uncertainty D of the first endpoint on the x-axis 3x for Uncertainty of the first endpoint on the y-axis D 3y for Among them, D x0 represents the initial uncertainty in the x-axis direction; D y0 represents the initial uncertainty in the y-axis direction.
[0146] Since the position of the first endpoint will affect the position of the second endpoint, if the first reference point is blocked by other objects, it will affect the determination of the position of the second endpoint to a certain extent. Therefore, the uncertainty of the second endpoint is positively correlated with the degree of change of the horizontal angle corresponding to the first reference point and the horizontal angle corresponding to the first endpoint.
[0147] Optionally, if the first reference point is blocked by other objects, the uncertainty d4 of the second endpoint is determined based on the difference δ between the horizontal angle corresponding to the first reference point and the horizontal angle corresponding to the first endpoint by the formula d4=D0+R2×(C1+δ), where R2 represents the measured distance between the acquisition device and the second endpoint, C1 represents the preset uncertainty, in radians (rad); and D0 represents the preset initial uncertainty of the second endpoint.
[0148] As mentioned above, in order to facilitate subsequent calculations, the uncertainty d4 of the second endpoint can be projected onto the x-axis and y-axis, that is, the uncertainty D of the first endpoint on the x-axis 4x for Uncertainty of the first endpoint on the y-axis D 3y for Among them, D x0 represents the initial uncertainty in the x-axis direction; D y0 represents the initial uncertainty in the y-axis direction.
[0149] 330. Based on the state of each feature point in the multiple feature points, calculate the first state of the target object corresponding to each feature point in the multiple feature points, where the state of each feature point includes the position and / or speed of each feature point, and the first state includes the first speed and / or first position of the target object.
[0150] The first state of the target object can be understood as the position or speed of the geometric center of the target object.
[0151] For example, see Figure 7 , assuming that the position of endpoint 0 is [x 端点0 ,y 端点0 ], the azimuth of the target object is The length and width are l and w respectively, then the center position of the target object corresponding to endpoint 0 is:
[0152]
[0153] 340. Determine a second state of the target object based on a first state of the target object corresponding to each of the multiple feature points and an uncertainty corresponding to each of the multiple feature points, where the second state includes a second speed and / or a second position of the target object.
[0154] Optionally, the above step 340 includes: determining the confidence corresponding to each feature point in the multiple feature points based on the uncertainty corresponding to each feature point in the multiple feature points; determining the second state of the target object based on the first state of the target object corresponding to each feature point in the multiple feature points, and the confidence corresponding to each feature point in the multiple feature points.
[0155] Optionally, the above-mentioned determination of the confidence corresponding to each feature point in the plurality of feature points based on the uncertainty corresponding to each feature point in the plurality of feature points includes: based on the uncertainty corresponding to each feature point in the plurality of feature points, using the formula Determine the confidence M corresponding to the kth feature point among multiple feature points k , where k represents the kth feature point among the multiple feature points, k=1...n, and n is the total number of the multiple feature points; d k Indicates the uncertainty of the kth feature point; Δ k Indicates the change between the historical state and the first state of the k-th feature point; C3 and C4 are preset values.
[0156] It should be understood that d is usually adjusted by setting the values of C3 and C4. k and Δ k When calculating the confidence M k For example, you can set the value of C3 and C4 to 0.5.
[0157] As mentioned above, in order to facilitate subsequent calculations, the above confidence can be divided into the confidence in the x-axis direction and the confidence in the y-direction. That is, the confidence M of the k-th feature point in the x-axis direction is kx for The confidence M of the kth feature point in the y-axis direction ky for Among them, d kx Indicates the uncertainty of the kth feature point in the x-axis direction; Δ kx Indicates the change between the historical state and the first state of the k-th feature point in the x-axis direction; d ky Indicates the uncertainty of the kth feature point in the y-axis direction; Δ ky Indicates the change between the historical state and the first state of the k-th feature point in the y-axis direction.
[0158] Optionally, the above step 340 can be expressed by the following formula: Assuming that in the second state of the target object, the position of the target object is [X, Y], and the speed of the target object is expressed as [V X ,V Y ]but Wherein, k represents the kth feature point among the multiple feature points, k=1...n, and n is the total number of the multiple feature points; M kx Indicates the confidence of the kth feature point in the x-axis direction; M ky represents the confidence of the kth feature point in the y-axis direction; T represents the sum of the confidences of n feature points; x center,k The x coordinate of the geometric center of the target object corresponding to the kth feature point; y center,krepresents the y coordinate of the geometric center of the target object corresponding to the kth feature point; v x,k represents the velocity component of the geometric center of the target object corresponding to the kth feature point on the x-axis; v y,k Represents the velocity component of the geometric center of the target object corresponding to the kth feature point on the y-axis.
[0159] Generally, in order to improve the accuracy of the state of each feature point, it is necessary to calculate the state of each feature point through multiple rounds and comprehensively consider the calculation results of multiple rounds. That is, after calculating the uncertainty of each feature point and the state of each feature point (that is, after step 330), the feature points of this round (also called "observed feature points") can be associated with the feature points of historical calculation (also called "tracked feature points"), and the state of each feature point in the target object can be updated. Specifically, based on the position, orientation and other information of each feature point, each observed feature point is associated with the tracked feature point. After the association, the state of each feature point is updated according to the state of the observed feature point and the state of the tracked feature point to obtain the updated state of each feature point.
[0160] It should be understood that there are many ways to associate the above-mentioned observed feature points with the tracked feature points. For example, data association based on nearest neighbor matching can be used to associate by calculating the distance between each observed feature point and the tracked feature point. Alternatively, a method based on orientation matching can be used to associate by comparing the orientation of each observed feature point with the orientation angle of the tracked feature point relative to the center of the target object. This embodiment of the present application does not specifically limit this.
[0161] It should also be understood that there are many methods for updating the status of each feature point mentioned above. For example, the status of each feature point can be updated based on Kalman filtering, extended Kalman filtering, etc., or the status of each feature point can be updated based on Bayesian reasoning to calculate the maximum a posteriori probability. The embodiments of this application do not limit this.
[0162] In the embodiment of the present application, by associating the observed feature points with the tracked feature points, the state of the feature points of the target object is updated, which helps to improve the accuracy of the state of each feature point. Of course, it is also possible to directly determine the state of the target object based on the state of the feature points observed in this round without updating the state of each feature point.
[0163] Combined with the above Figures 1 to 7 The method for sensing a target object in the embodiment of the present application is introduced below. Figures 8 and 9 Introducing the device of the embodiment of the present application. It should be understood that it is necessary to explain that Figures 8 and 9 The device shown can implement each step in the above method, and for the sake of brevity, it will not be described again here.
[0164] Figure 8Schematic diagram of a target object sensing device according to an embodiment of the present application. Figure 8 The device 800 shown includes: an acquisition unit 810 and a processing unit 820. Optionally, the device 800 may be Figure 1 The device 800 can also be a device for running an automatic driving system. Figure 2 The device of the operation control system shown is not specifically limited in the embodiments of the present application.
[0165] The acquisition unit 810 is used to acquire multiple feature points of a point cloud cluster, where the point cloud cluster represents a target object.
[0166] The processing unit 820 is configured to determine an uncertainty of each feature point among the plurality of feature points, wherein the uncertainty is used to indicate an error generated when the position of each feature point in the point cloud cluster is acquired by an acquisition device.
[0167] The above-mentioned processing unit 820 is also used to obtain the first state of the target object corresponding to each feature point based on the state of each feature point in multiple feature points. The state of each feature point includes the position and / or speed of each feature point, and the first state includes the first speed and / or first position of the target object.
[0168] The processing unit 820 is further configured to determine a second state of the target object based on the first state of the target object corresponding to each feature point and the uncertainty corresponding to each feature point, where the second state includes a second speed and / or a second position of the target object.
[0169] Optionally, the plurality of feature points include a plurality of endpoints of a point cloud cluster.
[0170] Optionally, as an embodiment, the processing unit 820 is further used to: determine the type of edge connected to each of the multiple endpoints, the edge type including visible edges directly collected by the acquisition device and invisible edges that cannot be directly collected by the acquisition device; and determine the uncertainty of each of the multiple endpoints based on the types of two edges connected to each of the multiple endpoints.
[0171] Optionally, as an embodiment, the multiple endpoints include a first endpoint, the type of the first edge connected to the first endpoint is a visible edge, and the type of the second edge connected to the first endpoint is an invisible edge, then the uncertainty of the first endpoint is determined based on the component of the detection uncertainty of the acquisition device in the orientation direction of the target object.
[0172] Optionally, as an embodiment, the uncertainty d1 of the first endpoint is obtained by the formula Determine, wherein R1 represents the measured distance between the acquisition device and the first endpoint, C0 is a preset value, which is negatively correlated with the acquisition accuracy of the acquisition device and is expressed in radians; θ1 represents the coordinate azimuth when the acquisition device acquires the first endpoint; The azimuth indicating the direction of the target object.
[0173] Optionally, as an embodiment, the multiple endpoints include a second endpoint, and the two edges connected to the second endpoint are both visible edges, then the measured distance between the second endpoint and the acquisition device is positively correlated with the uncertainty of the second endpoint.
[0174] Optionally, as an embodiment, the uncertainty d2 of the second endpoint is determined by the formula d2=R2×C1, where R2 represents the measurement distance between the acquisition device and the second endpoint, and C1 represents a preset uncertainty in radians.
[0175] Optionally, as an embodiment, the processing unit 820 is further used to: if the first reference point is not blocked by other objects, determine the uncertainty of each of the multiple endpoints based on the type of two edges connected to each of the multiple endpoints, the first reference point is a point at a preset distance from the first endpoint in the direction of the extension line of the first edge, and the other objects are objects other than the target object and the acquisition device in the image where the point cloud cluster is located.
[0176] Optionally, as an embodiment, the processing unit 820 is further used to: if the first reference point is blocked by other objects, determine the uncertainty of the first endpoint based on the degree of change between the horizontal angle corresponding to the first reference point and the horizontal angle corresponding to the first endpoint.
[0177] Optionally, as an embodiment, the processing unit 820 is further configured to: if the first reference point is blocked by other objects, based on the difference δ between the horizontal angle corresponding to the first reference point and the horizontal angle corresponding to the first endpoint, calculate the value by the formula Determine the uncertainty d3 of the first endpoint, where R1 represents the measured distance between the acquisition device and the first endpoint, C0 is a preset value that is negatively correlated with the acquisition accuracy of the acquisition device and is expressed in radians; θ1 represents the coordinate azimuth angle of the acquisition device when acquiring the first endpoint; The azimuth indicating the direction of the target object.
[0178] Optionally, as an embodiment, the processing unit 820 is further used to: if the first reference point is blocked by other objects, determine the uncertainty of the second endpoint based on the degree of change between the horizontal angle corresponding to the first reference point and the horizontal angle corresponding to the first endpoint.
[0179] Optionally, as an embodiment, the processing unit 820 is further used to: if the first reference point is not blocked by other objects, based on the difference δ between the horizontal angle corresponding to the first reference point and the horizontal angle corresponding to the first endpoint, determine the uncertainty d4 of the second endpoint by the formula d4=R2×(C1+δ), wherein R2 represents the measured distance between the acquisition device and the second endpoint, and C1 represents the preset uncertainty, the unit is radians.
[0180] Optionally, as an embodiment, the processing unit 820 is further used to: determine the confidence corresponding to each feature point in the multiple feature points based on the uncertainty corresponding to each feature point in the multiple feature points; determine the second state of the target object based on the first state of the target object corresponding to each feature point in the multiple feature points, and the confidence corresponding to each feature point in the multiple feature points.
[0181] Optionally, as an embodiment, the processing unit 820 is further configured to: the processing unit is further configured to: based on the uncertainty corresponding to each feature point in the plurality of feature points, calculate the uncertainty by formula Determine the confidence M corresponding to the kth feature point among the multiple feature points k , where k represents the kth feature point among the multiple feature points, k=1...n, and n is the total number of the multiple feature points; d k represents the uncertainty of the k-th feature point; Δ k Indicates the change between the historical state of the k-th feature point and the first state; C3 and C4 are preset values.
[0182] In an optional embodiment, the processing unit 820 may be a processor 920, the acquisition module 810 may be a communication interface 930, and the communication device may further include a memory 910. Figure 9 shown.
[0183] Figure 9 It is a schematic block diagram of a computing device according to another embodiment of the present application. Figure 9 The computing device 900 shown may include a memory 910, a processor 920, and a communication interface 930. The memory 910, processor 920, and communication interface 930 are connected via an internal connection path. The memory 910 is used to store instructions, and the processor 920 is used to execute the instructions stored in the memory 920 to control the communication interface 930 to receive / send information or data. Optionally, the memory 910 may be coupled to the processor 920 via an interface or may be integrated with the processor 920.
[0184] It should be noted that the communication interface 930 uses a transceiver device such as, but not limited to, an input / output interface to implement communication between the computing device 900 and other devices.
[0185] During implementation, each step of the above method can be completed by an integrated logic circuit of the hardware in the processor 920 or by instructions in the form of software. The method disclosed in conjunction with the embodiments of the present application can be directly embodied as being executed by a hardware processor, or can be executed by a combination of hardware and software modules in the processor. The software module can be located in a mature storage medium in the art, such as a random access memory, a flash memory, a read-only memory, a programmable read-only memory or an electrically erasable programmable memory, a register, etc. The storage medium is located in the memory 910, and the processor 920 reads the information in the memory 910 and completes the steps of the above method in combination with its hardware. To avoid repetition, it will not be described in detail here.
[0186] It should be understood that in the embodiments of the present application, the processor may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field programmable gate arrays (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or any conventional processor.
[0187] It should also be understood that in the embodiments of the present application, the memory may include read-only memory and random access memory, and provide instructions and data to the processor. A portion of the processor may also include non-volatile random access memory. For example, the processor may also store device type information.
[0188] It should be understood that the term "and / or" in this document simply describes a relationship between related objects, indicating that three possible relationships exist. For example, "A and / or B" can represent: A exists alone, A and B exist simultaneously, or B exists alone. Furthermore, the character " / " in this document generally indicates that the related objects are in an "or" relationship.
[0189] It should be understood that in the various embodiments of the present application, the size of the serial numbers of the above-mentioned processes does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present application.
[0190] Those skilled in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0191] Those skilled in the art will clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0192] In the several embodiments provided in this application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are merely schematic. For example, the division of the units is merely a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.
[0193] The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected to achieve the purpose of this embodiment according to actual needs.
[0194] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
[0195] If the functions are implemented in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art, or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes several instructions for enabling a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.
[0196] The above description is merely a specific embodiment of the present application, but the scope of protection of the present application is not limited thereto. Any changes or substitutions that can be easily conceived by a person skilled in the art within the technical scope disclosed in this application should be included in the scope of protection of this application. Therefore, the scope of protection of this application should be based on the scope of protection of the claims.
Claims
1. A method for sensing a target object, characterized in that: include: Acquire a plurality of feature points of a point cloud cluster, where the point cloud cluster is used to represent at least a portion of the outline of the target object, and the plurality of feature points include a plurality of endpoints of the point cloud cluster; determining an uncertainty of each feature point in the plurality of feature points, the uncertainty being used to indicate an error generated when a position of each feature point in the point cloud cluster is acquired by an acquisition device; Based on the state of each feature point in the plurality of feature points, obtaining a first state of the target object corresponding to each feature point in the plurality of feature points, wherein the state of each feature point includes a position and / or a speed of each feature point, and the first state includes a first speed and / or a first position of the target object; Determining a confidence level corresponding to each of the plurality of feature points based on an uncertainty level corresponding to each of the plurality of feature points and a change between a historical state of the target object corresponding to each of the feature points and a first state of the target object corresponding to each of the feature points; Based on the first state of the target object corresponding to each feature point in the multiple feature points and the confidence level corresponding to each feature point in the multiple feature points, a second state of the target object is determined, where the second state includes a second speed and / or a second position of the target object.
2. The method according to claim 1, wherein Determining the uncertainty of each feature point in the plurality of feature points includes: Determining a type of an edge connected to each of the plurality of endpoints, the edge type including a visible edge directly captured by the acquisition device and an invisible edge that cannot be directly captured by the acquisition device; The uncertainty of each of the plurality of endpoints is determined based on types of two edges connected to each of the plurality of endpoints.
3. The method according to claim 2, wherein The multiple endpoints include a first endpoint, the type of the first edge connected to the first endpoint is a visible edge, and the type of the second edge connected to the first endpoint is an invisible edge, then the uncertainty of the first endpoint is determined based on the component of the detection uncertainty of the acquisition device in the orientation direction of the target object.
4. The method according to claim 3, wherein The uncertainty d1 of the first endpoint is given by the formula Determine, wherein R1 represents the measured distance between the acquisition device and the first endpoint, C0 is a preset value and is negatively correlated with the acquisition accuracy of the acquisition device, and the unit is radian; θ1 represents the coordinate azimuth when the acquisition device acquires the first endpoint; The azimuth angle representing the orientation of the target object.
5. The method according to claim 3 or 4, wherein: The multiple endpoints include a second endpoint, and the types of two edges connected to the second endpoint are both visible edges, then the measured distance between the second endpoint and the acquisition device is positively correlated with the uncertainty of the second endpoint.
6. The method according to claim 5, wherein The uncertainty d2 of the second endpoint is determined by the formula d2=R2×C1, where R2 represents the measured distance between the acquisition device and the second endpoint, and C1 represents a preset uncertainty in radians.
7. The method according to claim 5, wherein The determining the uncertainty of each of the plurality of endpoints based on the types of two edges connected to each of the plurality of endpoints comprises: If the first reference point is not blocked by other objects, the uncertainty of each of the multiple endpoints is determined based on the type of two edges connected to each of the multiple endpoints, where the first reference point is a point at a preset distance from the first endpoint in the direction of the extension line of the first edge, and the other objects are objects in the image where the point cloud cluster is located other than the target object and the acquisition device.
8. The method according to claim 7, wherein The method further comprises: If the first reference point is blocked by the other object, the uncertainty of the first endpoint is determined based on a degree of change between a horizontal angle corresponding to the first reference point and a horizontal angle corresponding to the first endpoint.
9. The method according to claim 8, wherein If the first reference point is blocked by the other object, determining the uncertainty of the first endpoint based on a horizontal angle corresponding to the first reference point and a horizontal angle corresponding to the first endpoint includes: If the first reference point is blocked by the other object, based on the difference δ between the horizontal angle corresponding to the first reference point and the horizontal angle corresponding to the first endpoint, the formula Determine the uncertainty d3 of the first endpoint, where R1 represents the measured distance between the acquisition device and the first endpoint, C0 is a preset value that is negatively correlated with the acquisition accuracy of the acquisition device and is expressed in radians; θ1 represents the coordinate azimuth angle when the acquisition device acquires the first endpoint; The azimuth angle representing the orientation of the target object.
10. The method according to claim 7, wherein: The method further comprises: If the first reference point is blocked by the other object, the uncertainty of the second endpoint is determined based on a degree of change between a horizontal angle corresponding to the first reference point and a horizontal angle corresponding to the first endpoint.
11. The method according to claim 10, wherein If the first reference point is blocked by the other object, determining the uncertainty of the second endpoint based on a degree of change between a horizontal angle corresponding to the first reference point and a horizontal angle corresponding to the first endpoint includes: If the first reference point is blocked by the other object, the uncertainty d4 of the second endpoint is determined based on the difference δ between the horizontal angle corresponding to the first reference point and the horizontal angle corresponding to the first endpoint by the formula d4=R2×(C1+δ), where R2 represents the measured distance between the acquisition device and the second endpoint, and C1 represents the preset uncertainty in radians.
12. The method according to any one of claims 1 to 4, characterized in that The determining, based on the uncertainty corresponding to each feature point in the plurality of feature points, the confidence corresponding to each feature point in the plurality of feature points includes: Based on the uncertainty corresponding to each feature point in the multiple feature points, the formula Determine the confidence M corresponding to the kth feature point among the multiple feature points k , where k represents the kth feature point among the multiple feature points, k=1...n, and n is the total number of the multiple feature points; d k represents the uncertainty of the k-th feature point; Δ k Indicates the change between the historical state of the k-th feature point and the first state; C3 and C4 are preset values.
13. A target object sensing device, characterized in that: include: an acquiring unit, configured to acquire a plurality of feature points of a point cloud cluster, wherein the point cloud cluster is used to represent at least a portion of the outline of the target object, and the plurality of feature points include a plurality of endpoints of the point cloud cluster; a processing unit, configured to determine an uncertainty of each feature point among the plurality of feature points, the uncertainty being used to indicate an error generated when a position of each feature point in the point cloud cluster is acquired by an acquisition device; The processing unit is further configured to obtain, based on a state of each feature point in the plurality of feature points, a first state of the target object corresponding to each feature point in the plurality of feature points, wherein the state of each feature point includes a position and / or a speed of the each feature point, and the first state includes a first speed and / or a first position of the target object; The processing unit is further configured to determine a confidence level corresponding to each feature point in the plurality of feature points based on an uncertainty level corresponding to each feature point and a change between a historical state of the target object corresponding to each feature point and a first state of the target object corresponding to each feature point; The processing unit is further used to determine the second state of the target object based on the first state of the target object corresponding to each feature point in the multiple feature points and the confidence level corresponding to each feature point in the multiple feature points, wherein the second state includes the second speed and / or second position of the target object.
14. The device according to claim 13, wherein The processing unit is further configured to: Determining a type of an edge connected to each of the plurality of endpoints, the edge type including a visible edge directly captured by the acquisition device and an invisible edge that cannot be directly captured by the acquisition device; The uncertainty of each of the plurality of endpoints is determined based on types of two edges connected to each of the plurality of endpoints.
15. The device according to claim 14, wherein The multiple endpoints include a first endpoint, the type of the first edge connected to the first endpoint is a visible edge, and the type of the second edge connected to the first endpoint is an invisible edge, then the uncertainty of the first endpoint is determined based on the component of the detection uncertainty of the acquisition device in the orientation direction of the target object.
16. The device according to claim 15, characterized in that The uncertainty d1 of the first endpoint is given by the formula Determine, wherein R1 represents the measured distance between the acquisition device and the first endpoint, C0 is a preset value and is negatively correlated with the acquisition accuracy of the acquisition device, and the unit is radian; θ1 represents the coordinate azimuth when the acquisition device acquires the first endpoint; The azimuth angle representing the orientation of the target object.
17. The device according to claim 15, wherein The multiple endpoints include a second endpoint, and the types of two edges connected to the second endpoint are both visible edges, then the measured distance between the second endpoint and the acquisition device is positively correlated with the uncertainty of the second endpoint.
18. The device according to claim 17, wherein The uncertainty d2 of the second endpoint is determined by the formula d2=R2×C1, where R2 represents the measured distance between the acquisition device and the second endpoint, and C1 represents a preset uncertainty in radians.
19. The device according to claim 17, wherein The processing unit is further configured to: If the first reference point is not blocked by other objects, the uncertainty of each of the multiple endpoints is determined based on the type of two edges connected to each of the multiple endpoints, where the first reference point is a point at a preset distance from the first endpoint in the direction of the extension line of the first edge, and the other objects are objects in the image where the point cloud cluster is located other than the target object and the acquisition device.
20. The device according to claim 19, wherein The processing unit is further configured to: If the first reference point is blocked by the other object, the uncertainty of the first endpoint is determined based on a degree of change between a horizontal angle corresponding to the first reference point and a horizontal angle corresponding to the first endpoint.
21. The device according to claim 20, characterized in that The processing unit is further configured to: If the first reference point is blocked by the other object, based on the difference δ between the horizontal angle corresponding to the first reference point and the horizontal angle corresponding to the first endpoint, the formula Determine the uncertainty d3 of the first endpoint, where R1 represents the measured distance between the acquisition device and the first endpoint, C0 is a preset value that is negatively correlated with the acquisition accuracy of the acquisition device and is expressed in radians; θ1 represents the coordinate azimuth angle when the acquisition device acquires the first endpoint; The azimuth angle representing the orientation of the target object.
22. The device according to claim 19, wherein The processing unit is further configured to: If the first reference point is blocked by the other object, the uncertainty of the second endpoint is determined based on a degree of change between a horizontal angle corresponding to the first reference point and a horizontal angle corresponding to the first endpoint.
23. The device according to claim 22, wherein The processing unit is further configured to: If the first reference point is blocked by the other object, the uncertainty d4 of the second endpoint is determined based on the difference δ between the horizontal angle corresponding to the first reference point and the horizontal angle corresponding to the first endpoint by the formula d4=R2×(C1+δ), where R2 represents the measured distance between the acquisition device and the second endpoint, and C1 represents the preset uncertainty in radians.
24. The device according to any one of claims 13 to 16, characterized in that The processing unit is further configured to: Based on the uncertainty corresponding to each feature point in the multiple feature points, the formula Determine the confidence M corresponding to the kth feature point among the multiple feature points k , where k represents the kth feature point among the multiple feature points, k=1...n, and n is the total number of the multiple feature points; d k represents the uncertainty of the k-th feature point; Δ k Indicates the change between the historical state of the k-th feature point and the first state; C3 and C4 are preset values.
25. A computing device, characterized in that include: At least one processor and a memory, wherein the at least one processor is coupled to the memory and configured to read and execute instructions in the memory to perform the method according to any one of claims 1 to 12.
26. A computer-readable medium, characterized in that The computer-readable medium stores a program code, and when the program code is run on a computer, the computer is caused to perform the method according to any one of claims 1 to 12.
27. A chip, characterized in that: include: At least one processor and a memory, wherein the at least one processor is coupled to the memory and configured to read and execute instructions in the memory to perform the method according to any one of claims 1 to 12.
28. An autonomous driving vehicle, characterized in that: include: At least one processor and a memory, wherein the at least one processor is coupled to the memory and configured to read and execute instructions in the memory to perform the method according to any one of claims 1 to 12.
Citation Information
Patent Citations
A method and apparatus for generating position information of a target object
CN109285188A
Obstacle sensing method and device, electronic equipment and storage medium
CN109558854A