Vehicle pose determination method, device, equipment and storage medium
Patent Information
- Application Number
- CN202310144454.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-02-21
- Publication Date
- 2026-09-22
- Estimated Expiration
- 2043-02-21
AI Technical Summary
[0005](1)当工作场景结构很复杂的情况下,为了适应从不同方向交叉路口能检测到路标,可能出现多个定位标志相互邻近的情况,此时一个感兴趣区域(RegionofInterest,ROI)内有目标定位标志与非目标定位标志并存的现象,从而可能发生错误检测到非目标定位标志的问题,导致产生定位偏差较大
[0015]本公开实施例的技术方案,通过获取上一时刻车辆在目标场景中检测到的第一实际定位标志对应的待处理区域;在待处理区域中设置一期望定位标志;获取当前时刻落入待处理区域的激光点云数据;根据激光点云数据确定至少一个第二实际定位标志;根据至少一个第二实际定位标志和期望定位标志确定目标定位标志;根据目标定位标志确定车辆的位姿信息。本公开实施例,通过落入待处理区域的激光点云数据确定至少一个第二实际定位标志,并根据至少一个第二实际定位标志和期望定位标志确定目标定位标志的方式,可以提高定位标志的检测效果,从而提高车辆在目标场景中移动时的定位稳定性。
Smart Images

Figure CN116299534B_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the field of automation control technology, and in particular to a method, apparatus, device, and storage medium for determining vehicle position and orientation. Background Technology
[0002] Mobile construction machinery needs to determine its position and attitude within the work environment during unmanned autonomous operations. Since outdoor work environments have reliable Global Positioning System (GPS) signals, GPS-real-time kinematic (RTK) positioning is typically used. However, indoor or semi-indoor work environments lack reliable GPS signals, so simultaneous localization and mapping (SLAM) technology is usually employed for positioning.
[0003] In laser SLAM technology, a point cloud map is first built offline, and then real-time localization based on the map is performed during operation. There are two methods for real-time localization. One method is laser SLAM localization based on scene point clouds, which relies on the real-time laser point cloud of the driving scene to be registered with the map point cloud, thereby inferring the vehicle's position and attitude. This method, which relies solely on point cloud registration, has poor localization stability and is difficult to implement in practice. Therefore, a second real-time localization method has emerged, namely, laser SLAM localization based on road signs. This method involves placing bright reflectors for laser radar at many key locations in the scene, called road signs or positioning markers. By detecting the positions of multiple positioning markers in the real-time laser point cloud of the driving scene, the vehicle's position and attitude can be inferred.
[0004] However, existing location marker detection schemes have the following two shortcomings:
[0005] (1) When the working scene structure is very complex, in order to adapt to the detection of road signs from intersections in different directions, multiple positioning signs may be adjacent to each other. At this time, there may be a phenomenon that target positioning signs and non-target positioning signs coexist in a region of interest (ROI), which may lead to the problem of incorrectly detecting non-target positioning signs, resulting in a large positioning deviation.
[0006] (2) When other highly reflective planes appear next to the positioning mark, such as the bucket of a loader appearing in the lidar field of view and being adjacent to the nearby positioning mark, these highly reflective planes may be mistakenly detected and output as the target positioning mark, resulting in a large positioning deviation. Summary of the Invention
[0007] This disclosure provides a method, apparatus, device, and storage medium for determining vehicle pose, which can improve the detection accuracy of positioning markers, thereby improving the detection accuracy of vehicle pose.
[0008] In a first aspect, embodiments of this disclosure provide a method for determining vehicle pose, comprising: acquiring a processing area corresponding to a first actual positioning marker detected by the vehicle in a target scene at the previous moment; setting a desired positioning marker in the processing area; acquiring laser point cloud data falling into the processing area at the current moment; determining at least one second actual positioning marker based on the laser point cloud data; determining a target positioning marker based on the at least one second actual positioning marker and the desired positioning marker; and determining the pose information of the vehicle based on the target positioning marker.
[0009] Secondly, embodiments of this disclosure also provide a vehicle pose determination device, comprising: a region-to-be-processed acquisition module, configured to acquire a region-to-be-processed corresponding to a first actual positioning marker detected by the vehicle in a target scene at the previous moment; a desired positioning marker setting module, configured to set a desired positioning marker in the region-to-be-processed; a laser point cloud data acquisition module, configured to acquire laser point cloud data falling into the region-to-be-processed at the current moment; a second actual positioning marker determination module, configured to determine at least one second actual positioning marker based on the laser point cloud data; a target positioning marker determination module, configured to determine a target positioning marker based on the at least one second actual positioning marker and the desired positioning marker; and a pose information determination module, configured to determine the pose information of the vehicle based on the target positioning marker.
[0010] Thirdly, embodiments of this disclosure also provide an electronic device, the electronic device comprising:
[0011] One or more processors;
[0012] Storage device for storing one or more programs.
[0013] When the one or more programs are executed by the one or more processors, the one or more processors implement the vehicle pose determination method as described in the embodiments of this disclosure.
[0014] Fourthly, embodiments of this disclosure also provide a storage medium containing computer-executable instructions, which, when executed by a computer processor, are used to perform the vehicle pose determination method as described in embodiments of this disclosure.
[0015] The technical solution of this disclosure involves: acquiring the processing area corresponding to the first actual positioning marker detected by the vehicle in the target scene at the previous moment; setting a desired positioning marker in the processing area; acquiring laser point cloud data falling into the processing area at the current moment; determining at least one second actual positioning marker based on the laser point cloud data; determining a target positioning marker based on the at least one second actual positioning marker and the desired positioning marker; and determining the vehicle's pose information based on the target positioning marker. This disclosure, by determining at least one second actual positioning marker using laser point cloud data falling into the processing area and determining the target positioning marker based on the at least one second actual positioning marker and the desired positioning marker, can improve the detection effect of positioning markers, thereby improving the positioning stability of the vehicle when moving in the target scene. Attached Figure Description
[0016] The above and other features, advantages, and aspects of the embodiments of this disclosure will become more apparent from the accompanying drawings and the following detailed description. Throughout the drawings, the same or similar reference numerals denote the same or similar elements. It should be understood that the drawings are schematic, and the originals and elements are not necessarily drawn to scale.
[0017] Figure 1 This is a schematic flowchart of the vehicle pose determination method provided in the embodiments of this disclosure;
[0018] Figure 2 A schematic diagram of multiple adjacent second actual positioning markers provided in an embodiment of the present invention;
[0019] Figure 3 This is a schematic diagram illustrating the detection effect of a target positioning marker provided in an embodiment of the present invention.
[0020] Figure 4 This is a schematic diagram showing a partial plane of the bucket in the area to be processed, provided in an embodiment of the present invention.
[0021] Figure 5 A schematic diagram illustrating the detection effect of another target positioning marker provided in an embodiment of the present invention;
[0022] Figure 6 A flowchart illustrating another method for determining vehicle pose provided in an embodiment of the present invention;
[0023] Figure 7 This is a schematic diagram of a vehicle pose determination device provided in an embodiment of the present disclosure;
[0024] Figure 8 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this disclosure. Detailed Implementation
[0025] Embodiments of this disclosure will now be described in more detail with reference to the accompanying drawings. While some embodiments of this disclosure are shown in the drawings, it should be understood that this disclosure can be implemented in various forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided to provide a more thorough and complete understanding of this disclosure. It should be understood that the accompanying drawings and embodiments of this disclosure are for illustrative purposes only and are not intended to limit the scope of protection of this disclosure.
[0026] It should be understood that the steps described in the method embodiments of this disclosure may be performed in different orders and / or in parallel. Furthermore, the method embodiments may include additional steps and / or omit the steps shown. The scope of this disclosure is not limited in this respect.
[0027] The term "comprising" and its variations as used herein are open-ended inclusions, meaning "including but not limited to". The term "based on" means "at least partially based on". The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments". Definitions of other terms will be given in the description below.
[0028] It should be noted that the concepts of "first" and "second" mentioned in this disclosure are used only to distinguish different devices, modules or units, and are not used to limit the order of functions performed by these devices, modules or units or their interdependencies.
[0029] It should be noted that the terms "a" and "a plurality of" used in this disclosure are illustrative rather than restrictive, and those skilled in the art should understand that, unless otherwise expressly indicated in the context, they should be understood as "one or more".
[0030] It is understood that the data involved in this technical solution (including but not limited to the data itself, the acquisition or use of the data) shall comply with the requirements of relevant laws, regulations and related provisions.
[0031] This embodiment can be extended to a range of unmanned loader products, as well as unmanned excavators and other unmanned engineering vehicles.
[0032] Figure 1 This is a schematic flowchart of a vehicle pose determination method provided in an embodiment of the present disclosure. The embodiments of the present disclosure are applicable to situations where the vehicle position and attitude are determined. The method can be executed by a vehicle pose determination device, which can be implemented in the form of software and / or hardware. Optionally, it can be implemented by an electronic device, such as a mobile terminal, a PC, or a server.
[0033] like Figure 1 As shown, the method includes:
[0034] S110. Obtain the area to be processed corresponding to the first actual positioning marker detected by the vehicle in the target scene at the previous moment.
[0035] The target scenario can be understood as the working environment in which engineering machinery and equipment perform unmanned autonomous operations. The positioning marker can be understood as a high-brightness reflector deployed for LiDAR at a key location in the actual working scenario. The first actual positioning marker can be considered as the positioning marker detected by the vehicle at the previous moment in actual application.
[0036] Optionally, obtaining the area to be processed corresponding to the first actual positioning marker detected by the vehicle in the target scene at the previous moment includes: obtaining the vehicle positioning information and the set scanning parameters of the lidar at the previous moment; obtaining the first actual positioning marker from the target scene map based on the vehicle positioning information and the set scanning parameters; determining the area to be processed based on the first actual positioning marker; wherein the area of the area to be processed is larger than the area of the plane where the first actual positioning marker is located.
[0037] The vehicle positioning information can include the vehicle's position and heading angle within the target scene. Setting scanning parameters can include setting the scanning distance and scanning angle. The target scene map can be a pre-built 3D point cloud map using Simultaneous Localization and Mapping (SLAM). The target scene map includes positioning markers and positioning information. The area to be processed can be understood as the Region of Interest (ROI).
[0038] In this embodiment, the SLAM system can acquire multiple first actual location markers in the target scene map by obtaining the vehicle positioning information from the previous moment and setting scanning parameters. For each first actual location marker, a corresponding processing area is generated, and the area of the processing area is larger than the area of the plane where the first actual location marker is located, to ensure that the laser point cloud data acquired at the current moment can fall into the processing area. For example, the area of the processing area is a set multiple of the area of the plane where the first actual location marker is located, such as 3 times, 5 times, etc.
[0039] S120. Set a desired location marker in the area to be processed.
[0040] In this embodiment, the SLAM system determines the areas to be processed and simultaneously determines the attributes of the plane containing the desired location markers within each area. In this embodiment, the placement of desired location markers within the areas to be processed can be determined by technicians based on actual conditions and experience; this embodiment does not impose any restrictions. For example, desired location markers can be placed within the areas to be processed based on the technicians' historical experience, or at any location within the areas to be processed. Optionally, the attributes of the location marker plane include: a normal vector and dimensions. The normal vector is the normal vector of the plane containing the location marker, i.e., the vector represented by a straight line perpendicular to the plane. The dimensions are the length and width of the plane containing the location marker. In this embodiment, by introducing normal vectors and dimensions, when one or more second actual location markers exist in a single area to be processed, the accuracy, reliability, and robustness of the target location marker inspection can be effectively improved.
[0041] S130. Obtain the laser point cloud data that falls into the area to be processed at the current moment.
[0042] Specifically, the vehicle's LiDAR acquires all the current LiDAR point cloud data, and the LiDAR-acquired LiDAR data is cropped according to the area to be processed to obtain the LiDAR point cloud data (partial LiDAR point cloud data) that falls into the area to be processed.
[0043] S140. Determine at least one second actual positioning marker based on the laser point cloud data.
[0044] In this embodiment, both the first and second actual positioning markers are composed of multiple laser point cloud data. One or more laser point cloud data corresponding to the second actual positioning marker can be determined from the laser point cloud data using a dynamic brightness threshold segmentation method.
[0045] Optionally, the method for determining at least one second actual positioning marker based on laser point cloud data can be: setting a brightness threshold for the point cloud data; extracting foreground point cloud data from the laser point cloud data based on the brightness threshold; and determining at least one second actual positioning marker based on the foreground point cloud data.
[0046] In this embodiment, the brightness threshold can be understood as a dividing line for the laser point cloud data, used to distinguish between brighter point clouds and relatively darker point clouds, that is, to segment the laser point cloud data into foreground point cloud data and background point cloud data. The brightness threshold can be dynamically set according to actual conditions; this embodiment does not limit this. For example, using the brightness threshold, 1000 laser point cloud data can be segmented into 200 foreground point cloud data and 800 background point cloud data, or 700 laser point cloud data can be segmented into 100 foreground point cloud data and 600 background point cloud data. In this embodiment, by setting the brightness threshold of the point cloud data, the laser point cloud data can be segmented into foreground and background point cloud data, and one or more second actual positioning markers can be determined based on the foreground point cloud data.
[0047] Optionally, the method for determining at least one second actual location marker based on the foreground point cloud data can be: clustering the foreground point cloud data according to spatial distance to obtain at least one second actual location marker.
[0048] In this embodiment, data clustering methods, such as the k-means method, can be used to cluster the foreground point cloud data according to the spatial distance between them. Closely spaced laser point cloud data can be grouped into one category, thus dividing the foreground point cloud data into one or more categories. This allows for the acquisition of one or more second actual positioning markers (one second actual positioning marker per category). It should be noted that there is a certain spatial distance between each pair of second actual positioning markers, and each second actual positioning marker has an independent spatial location (non-overlapping).
[0049] In this embodiment, by clustering the foreground point cloud data according to spatial distance, when there are multiple second actual positioning markers in the area to be processed, the foreground point cloud data can be separated into independent multi-class point cloud data, which can solve the problem of false detection when multiple positioning markers coexist in the area to be processed due to the complex structure of the target scene.
[0050] S150. Determine the target positioning mark based on at least one second actual positioning mark and the desired positioning mark.
[0051] Specifically, at least one second actual positioning marker is compared with the desired positioning marker to obtain multiple comparison (error) results. Among the multiple comparison results, the minimum comparison result is determined, and the second actual positioning marker corresponding to the minimum comparison result is determined as the target positioning marker.
[0052] Optionally, the method for determining the target positioning mark based on at least one second actual positioning mark and a desired positioning mark may be as follows: performing plane fitting on the point cloud data of the second actual positioning mark to obtain the plane of the second actual positioning mark; determining the attributes of the plane of the second actual positioning mark and the plane of the desired positioning mark respectively; comparing the attributes of the plane of the second actual positioning mark and the attributes of the plane of the desired positioning mark to obtain a comparison result; and determining the target positioning mark from at least one second actual positioning mark based on the comparison result.
[0053] In this embodiment, the point cloud data of the second actual positioning marker can be fitted with a plane to obtain the plane of the second actual positioning marker. The normal vector and size of the plane of the second actual positioning marker are calculated, and the normal vector and size of the desired positioning marker plane are determined. Regarding the normal vector and size, multiple second actual positioning markers are compared with the desired positioning marker respectively to obtain the comparison results. The second actual positioning marker with the smaller error compared with the desired positioning marker can be determined as the target positioning marker.
[0054] Optionally, comparing the attributes of the second actual positioning marker plane with the attributes of the desired positioning marker plane to obtain the comparison result can be done by: comparing the normal vector of at least one second actual positioning marker plane with the normal vector of the desired positioning marker plane to obtain at least one first error result; comparing the size of at least one second actual positioning marker plane with the size of the desired positioning marker plane to obtain at least one second error result; determining the minimum value of at least one first error result as the first minimum error result; determining the minimum value among multiple second error results as the second minimum error result; correspondingly, based on the comparison result, determining the target positioning marker from at least one second actual positioning marker includes: determining the second actual positioning marker corresponding to the first minimum error result and / or the second actual positioning marker corresponding to the second minimum error result as the target positioning marker.
[0055] Specifically, regarding the normal vector, the normal vectors of one or more second actual positioning marker planes can be compared with the normal vector of the desired positioning marker plane to obtain one or more first error results. The minimum error among these first error results is then determined as the first minimum error result. Regarding the size, the dimensions of one or more second actual positioning marker planes can be compared with the dimensions of the desired positioning marker plane to obtain one or more second error results. The minimum error among these second error results is then determined as the second minimum error result. The second actual positioning marker corresponding to the first minimum error result and / or the second minimum error result is then determined as the target positioning marker.
[0056] In this embodiment, by performing planar fitting on the point cloud data of each independent second actual positioning marker, a second actual positioning marker plane is obtained. The attributes of the second actual positioning marker plane are calculated, and these attributes are compared with those of the desired positioning marker plane. The second actual positioning marker with the smallest error result is selected as the target positioning marker. Other non-target positioning markers or other similar interfering planes are not included in the output. This effectively suppresses non-target positioning markers or other highly reflective interfering planes, accurately detecting the target positioning marker and effectively solving the problem of false detection when other dynamically highly reflective planes are close to the target positioning marker. Furthermore, it can accurately detect the target positioning marker when multiple neighboring positioning markers are deployed in a single processing area in a complex scene. Figure 2 As shown, Figure 2 This is a schematic diagram of multiple adjacent second actual positioning markers provided in an embodiment of the present invention. Figure 2 Only two second actual location markers are displayed. Figure 3 This is a schematic diagram illustrating the detection effect of a target positioning marker provided in an embodiment of the present invention, such as... Figure 3 As shown, by adopting the technical solution of this disclosure embodiment, the desired target positioning marker (laser point cloud in the rectangular area) can be effectively and accurately detected. Figure 4 This is a schematic diagram showing a partial plane of the bucket in the area to be processed, as provided in an embodiment of the present invention. Figure 5 This is a schematic diagram illustrating the detection effect of another target positioning marker provided in an embodiment of the present invention, as shown below. Figure 5 As shown, by adopting the technical solution of this disclosure embodiment, interference can be effectively eliminated and the target positioning mark (rectangular area) can be accurately detected.
[0057] S160. Determine the vehicle's position and orientation information based on the target positioning marker.
[0058] Specifically, the center point coordinates of the target positioning marker can be determined by averaging the cumulative values, which serves as the spatial position of the target positioning marker. The vehicle's position and attitude information are then calculated based on the vehicle's positioning information from the previous moment, the set scanning parameters of the LiDAR, and the spatial position of the target positioning marker. For example, the calculation of the center point coordinates of the target positioning marker can be as follows: If the LiDAR point cloud data of the target positioning marker consists of three points, represented as x1, y1, z1; x2, y2, z2; and x3, y3, z3, then the center point coordinates (x, y, z) are: x = (x1 + x2 + x3) / 3, y = (y1 + y2 + y3) / 3, z = (z1 + z2 + z3) / 3.
[0059] The technical solution of this disclosure involves: acquiring the processing area corresponding to the first actual positioning marker detected by the vehicle in the target scene at the previous moment; setting a desired positioning marker in the processing area; acquiring laser point cloud data falling into the processing area at the current moment; determining at least one second actual positioning marker based on the laser point cloud data; determining a target positioning marker based on the at least one second actual positioning marker and the desired positioning marker; and determining the vehicle's pose information based on the target positioning marker. This disclosure, by determining at least one second actual positioning marker using laser point cloud data falling into the processing area and determining the target positioning marker based on the at least one second actual positioning marker and the desired positioning marker, can improve the detection effect of positioning markers, thereby improving the positioning stability of the vehicle when moving in the target scene. Simultaneously, it does not affect the original SLAM system structure or cost, requires no additional display operations, and is all automatically completed by the algorithm program, thus improving detection efficiency.
[0060] Figure 6 A flowchart of another method for determining vehicle pose provided by an embodiment of the present invention is shown below, with specific steps as follows:
[0061] Based on the vehicle positioning information from the previous moment and the set scanning parameters of the lidar, the S210 and SLAM systems obtain the first actual positioning marker in the target scene map, determine the area to be processed based on the first actual positioning marker, and set a desired positioning marker in the area to be processed.
[0062] S220. Obtain the laser point cloud data that falls into the area to be processed at the current moment.
[0063] S230. Set the brightness threshold of the point cloud data, and extract the foreground point cloud data from the laser point cloud data based on the brightness threshold.
[0064] S240. Cluster the foreground point cloud data according to spatial distance to obtain at least one second actual location marker.
[0065] S250. Perform plane fitting on the point cloud data of the second actual positioning marker to obtain the plane of the second actual positioning marker, and determine the attributes of the plane of the second actual positioning marker and the plane where the desired positioning marker is located.
[0066] S260. Compare the attributes of the second actual positioning marker plane with the attributes of the desired positioning marker plane to obtain a comparison result. Based on the comparison result, determine the target positioning marker from at least one second actual positioning marker.
[0067] S270. Determine the vehicle's position and orientation information based on the target positioning markers.
[0068] Figure 7This is a schematic diagram of a vehicle pose determination device provided in an embodiment of the present disclosure, as shown below. Figure 7 As shown, the device includes: a region to be processed acquisition module 310, a desired positioning mark setting module 320, a laser point cloud data acquisition module 330, a second actual positioning mark determination module 340, a target positioning mark determination module 350, and a pose information determination module 360.
[0069] The pending area acquisition module 310 is used to acquire the pending area corresponding to the first actual positioning marker detected by the vehicle in the target scene at the previous moment.
[0070] The desired positioning mark setting module 320 is used to set a desired positioning mark in the area to be processed.
[0071] The laser point cloud data acquisition module 330 is used to acquire laser point cloud data that falls into the area to be processed at the current moment.
[0072] The second actual positioning marker determination module 340 is used to determine at least one second actual positioning marker based on the laser point cloud data.
[0073] The target positioning marker determination module 350 is used to determine a target positioning marker based on the at least one second actual positioning marker and the desired positioning marker.
[0074] The pose information determination module 360 is used to determine the pose information of the vehicle based on the target positioning mark.
[0075] The technical solution of this disclosure includes: acquiring the area to be processed corresponding to the first actual positioning marker detected by the vehicle in the target scene at the previous moment through a region to be processed acquisition module; setting a desired positioning marker in the area to be processed through a desired positioning marker setting module; acquiring laser point cloud data falling into the area to be processed at the current moment through a laser point cloud data acquisition module; determining at least one second actual positioning marker based on the laser point cloud data through a second actual positioning marker determination module; determining a target positioning marker based on at least one second actual positioning marker and a desired positioning marker through a target positioning marker determination module; and determining the vehicle's pose information based on the target positioning marker through a pose information determination module. This disclosure, by determining at least one second actual positioning marker based on laser point cloud data falling into the area to be processed and determining the target positioning marker based on at least one second actual positioning marker and a desired positioning marker, can improve the detection effect of positioning markers, thereby improving the positioning stability of the vehicle when moving in the target scene.
[0076] Optionally, the pending area acquisition module is specifically used for: acquiring the vehicle positioning information and the set scanning parameters of the lidar at the previous moment; acquiring a first actual positioning marker from the target scene map based on the vehicle positioning information and the set scanning parameters; determining the pending area based on the first actual positioning marker; wherein the area of the pending area is greater than the area of the plane where the first actual positioning marker is located.
[0077] Optionally, the second actual positioning marker determination module is specifically used for: setting a brightness threshold for point cloud data; extracting foreground point cloud data from the laser point cloud data based on the brightness threshold; and determining at least one second actual positioning marker based on the foreground point cloud data.
[0078] Optionally, the second actual location marker determination module is also used to: cluster the foreground point cloud data according to spatial distance to obtain at least one second actual location marker.
[0079] Optionally, the target positioning marker determination module is specifically used for: performing plane fitting on the point cloud data of the second actual positioning marker to obtain the second actual positioning marker plane; determining the attributes of the second actual positioning marker plane and the plane where the desired positioning marker is located respectively; comparing the attributes of the second actual positioning marker plane and the attributes of the desired positioning marker plane to obtain a comparison result; and determining the target positioning marker from at least one second actual positioning marker based on the comparison result.
[0080] Optionally, the attributes of the positioning marker plane include: normal vector and size.
[0081] Optionally, the target positioning marker determination module is further configured to: compare the normal vector of at least one second actual positioning marker plane with the normal vector of the desired positioning marker plane to obtain at least one first error result; compare the size of at least one second actual positioning marker plane with the size of the desired positioning marker plane to obtain at least one second error result; determine the minimum value of the at least one first error result as a first minimum error result; and determine the minimum value among the plurality of second error results as a second minimum error result.
[0082] Optionally, the target positioning marker determination module is further configured to: determine the second actual positioning marker corresponding to the first minimum error result and / or the second actual positioning marker corresponding to the second minimum error result as the target positioning marker.
[0083] The vehicle pose determination device provided in this disclosure can execute the vehicle pose determination method provided in any embodiment of this disclosure, and has the corresponding functional modules and beneficial effects of executing the method.
[0084] It is worth noting that the various units and modules included in the above-mentioned device are only divided according to functional logic, but are not limited to the above division, as long as the corresponding functions can be realized; in addition, the specific names of each functional unit are only for easy differentiation and are not used to limit the protection scope of the embodiments of this disclosure.
[0085] Figure 8 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this disclosure. Reference is made below. Figure 8 It illustrates an electronic device suitable for implementing embodiments of the present disclosure (e.g., Figure 8 The diagram below shows the structure of the terminal device or server 500. The terminal device in this embodiment may include, but is not limited to, mobile terminals such as mobile phones, laptops, digital broadcast receivers, PDAs (personal digital assistants), PADs (tablet computers), PMPs (portable multimedia players), and vehicle terminals (e.g., vehicle navigation terminals), as well as fixed terminals such as digital TVs and desktop computers. Figure 8 The electronic device shown is merely an example and should not be construed as limiting the functionality and scope of the embodiments disclosed herein.
[0086] like Figure 8 As shown, the electronic device 500 may include a processing unit (e.g., a central processing unit, a graphics processing unit, etc.) 501, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 502 or a program loaded from a storage device 508 into a random access memory (RAM) 503. The RAM 503 also stores various programs and data required for the operation of the electronic device 500. The processing unit 501, ROM 502, and RAM 503 are interconnected via a bus 504. An edit / output (I / O) interface 505 is also connected to the bus 504.
[0087] Typically, the following devices can be connected to I / O interface 505: input devices 506 including, for example, touchscreens, touchpads, keyboards, mice, cameras, microphones, accelerometers, gyroscopes, etc.; output devices 507 including, for example, liquid crystal displays (LCDs), speakers, vibrators, etc.; storage devices 508 including, for example, magnetic tapes, hard disks, etc.; and communication devices 509. Communication device 509 allows electronic device 500 to communicate wirelessly or wiredly with other devices to exchange data. Although Figure 8 An electronic device 500 with various devices is shown; however, it should be understood that it is not required to implement or possess all of the devices shown. More or fewer devices may be implemented or possessed alternatively.
[0088] In particular, according to embodiments of this disclosure, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments of this disclosure include a computer program product comprising a computer program carried on a non-transitory computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via a communication device 509, or installed from a storage device 508, or installed from a ROM 502. When the computer program is executed by the processing device 501, it performs the functions defined in the methods of embodiments of this disclosure.
[0089] The names of messages or information exchanged between multiple devices in the embodiments of this disclosure are for illustrative purposes only and are not intended to limit the scope of such messages or information.
[0090] The electronic device provided in this embodiment and the vehicle pose determination method provided in the above embodiments belong to the same inventive concept. Technical details not described in detail in this embodiment can be found in the above embodiments, and this embodiment has the same beneficial effects as the above embodiments.
[0091] This disclosure provides a computer storage medium storing a computer program that, when executed by a processor, implements the vehicle pose determination method provided in the above embodiments.
[0092] It should be noted that the computer-readable medium described in this disclosure can be a computer-readable signal medium or a computer-readable storage medium, or any combination thereof. A computer-readable storage medium can be, for example,—but not limited to—an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of a computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof. In this disclosure, a computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in connection with an instruction execution system, apparatus, or device. In this disclosure, a computer-readable signal medium can include a data signal propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such propagated data signals can take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A computer-readable signal medium can be any computer-readable medium other than a computer-readable storage medium, which can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device. The program code contained on the computer-readable medium can be transmitted using any suitable medium, including but not limited to: wires, optical fibers, RF (radio frequency), etc., or any suitable combination thereof.
[0093] In some implementations, clients and servers can communicate using any currently known or future-developed network protocol, such as HTTP (Hypertext Transfer Protocol), and can interconnect with digital data communication (e.g., communication networks) of any form or medium. Examples of communication networks include local area networks (“LANs”), wide area networks (“WANs”), the Internet (e.g., the Internet of Things), and peer-to-peer networks (e.g., ad hoc peer-to-peer networks), as well as any currently known or future-developed networks.
[0094] The aforementioned computer-readable medium may be included in the aforementioned electronic device; or it may exist independently and not assembled into the electronic device.
[0095] The aforementioned computer-readable medium carries one or more programs that, when executed by the electronic device, cause the electronic device to: acquire a processing area corresponding to a first actual positioning marker detected by the vehicle in the target scene at the previous moment; set a desired positioning marker in the processing area; acquire laser point cloud data falling into the processing area at the current moment; determine at least one second actual positioning marker based on the laser point cloud data; determine a target positioning marker based on the at least one second actual positioning marker and the desired positioning marker; and determine the vehicle's pose information based on the target positioning marker.
[0096] Computer program code for performing the operations of this disclosure can be written in one or more programming languages or a combination thereof, including but not limited to object-oriented programming languages such as Java, Smalltalk, and C++, as well as conventional procedural programming languages such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network—including a local area network (LAN) or a wide area network (WAN)—or can be connected to an external computer (e.g., via the Internet using an Internet service provider).
[0097] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.
[0098] The units described in the embodiments of this disclosure can be implemented in software or in hardware. The name of a unit does not necessarily limit the unit itself; for example, the first acquisition unit can also be described as "a unit that acquires at least two Internet Protocol addresses".
[0099] The functions described above in this document can be performed, at least in part, by one or more hardware logic components. For example, exemplary types of hardware logic components that can be used, without limitation, include: Field Programmable Gate Arrays (FPGAs), Application-Specific Integrated Circuits (ASICs), Application Standard Products (ASSPs), System-on-Chip (SoCs), Complex Programmable Logic Devices (CPLDs), and so on.
[0100] In the context of this disclosure, a machine-readable medium can be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can be, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.
[0101] The above description is merely a preferred embodiment of this disclosure and an explanation of the technical principles employed. Those skilled in the art should understand that the scope of this disclosure is not limited to technical solutions formed by specific combinations of the above-described technical features, but should also cover other technical solutions formed by arbitrary combinations of the above-described technical features or their equivalents without departing from the above-described concept. For example, technical solutions formed by substituting the above features with (but not limited to) technical features disclosed in this disclosure that have similar functions.
[0102] Furthermore, while the operations are described in a specific order, this should not be construed as requiring these operations to be performed in the specific order shown or in a sequential order. In certain environments, multitasking and parallel processing may be advantageous. Similarly, while several specific implementation details are included in the above discussion, these should not be construed as limiting the scope of this disclosure. Certain features described in the context of individual embodiments may also be implemented in combination in a single embodiment. Conversely, various features described in the context of a single embodiment may also be implemented individually or in any suitable sub-combination in multiple embodiments.
[0103] Although the subject matter has been described using language specific to structural features and / or methodological logic, it should be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or actions described above. Rather, the specific features and actions described above are merely illustrative examples of implementing the claims.
Claims
1. A method for determining the position and orientation of a vehicle, characterized in that, include: Obtain the vehicle location information and the set scanning parameters of the LiDAR from the previous moment; Based on the vehicle positioning information and the set scanning parameters, obtain the first actual positioning marker from the target scene map; The area to be processed is determined based on the first actual positioning marker; wherein the area of the area to be processed is larger than the area of the plane where the first actual positioning marker is located; A desired positioning marker is set in the area to be processed; Acquire the laser point cloud data that falls within the area to be processed at the current moment; At least one second actual positioning marker is determined based on the laser point cloud data; The target positioning mark is determined based on the at least one second actual positioning mark and the desired positioning mark; The vehicle's pose information is determined based on the target positioning marker; Determining the target positioning marker based on the at least one second actual positioning marker and the desired positioning marker includes: Plane fitting is performed on the point cloud data of the second actual positioning marker to obtain the plane of the second actual positioning marker; The attributes of the second actual positioning marker plane and the plane where the desired positioning marker is located are determined respectively; The attributes of the second actual positioning marker plane and the attributes of the desired positioning marker plane are compared to obtain a comparison result; Based on the comparison results, the target positioning mark is determined from at least one second actual positioning mark.
2. The method according to claim 1, characterized in that, Determine at least one second actual positioning marker based on the laser point cloud data, including: Set the brightness threshold for point cloud data; Extract foreground point cloud data from the laser point cloud data based on the brightness threshold; At least one second actual location marker is determined based on the foreground cloud data.
3. The method according to claim 2, characterized in that, Determine at least one second actual location marker based on the foreground cloud data, including: Cluster the foreground point cloud data according to spatial distance to obtain at least one second actual location marker.
4. The method according to claim 1, characterized in that, The attributes of the positioning marker plane include: normal vector and size.
5. The method according to claim 4, characterized in that, The attributes of the second actual positioning marker plane and the attributes of the desired positioning marker plane are compared to obtain a comparison result, including: The normal vector of at least one second actual positioning marker plane is compared with the normal vector of the desired positioning marker plane to obtain at least one first error result; Compare the size of at least one second actual positioning marker plane with the size of the desired positioning marker plane to obtain at least one second error result; The minimum value of the at least one first error result is determined as the first minimum error result; The minimum value among the plurality of second error results is determined as the second minimum error result; Accordingly, based on the comparison result, determining the target positioning marker from at least one second actual positioning marker includes: The second actual positioning marker corresponding to the first minimum error result and / or the second actual positioning marker corresponding to the second minimum error result are determined as the target positioning marker.
6. A device for determining the position and orientation of a vehicle, characterized in that, include: The pending area acquisition module acquires the vehicle positioning information and the set scanning parameters of the lidar from the previous moment; Based on the vehicle positioning information and the set scanning parameters, a first actual positioning marker is obtained from the target scene map; a processing area is determined based on the first actual positioning marker; wherein the area of the processing area is greater than the area of the plane where the first actual positioning marker is located; A desired positioning marker setting module is used to set a desired positioning marker in the area to be processed. The laser point cloud data acquisition module is used to acquire laser point cloud data that falls into the area to be processed at the current moment; The second actual positioning marker determination module is used to determine at least one second actual positioning marker based on the laser point cloud data. A target positioning marker determination module is used to determine a target positioning marker based on the at least one second actual positioning marker and the desired positioning marker; The pose information determination module is used to determine the pose information of the vehicle based on the target positioning marker; The target positioning marker determination module is specifically used for: performing plane fitting on the point cloud data of the second actual positioning marker to obtain the second actual positioning marker plane; determining the attributes of the second actual positioning marker plane and the plane where the desired positioning marker is located respectively; comparing the attributes of the second actual positioning marker plane and the attributes of the desired positioning marker plane to obtain a comparison result; and determining the target positioning marker from at least one second actual positioning marker based on the comparison result.
7. An electronic device, characterized in that, The electronic device includes: One or more processors; Storage device for storing one or more programs. When the one or more programs are executed by the one or more processors, the one or more processors implement the vehicle pose determination method as described in any one of claims 1-5.
8. A storage medium containing computer-executable instructions, which, when executed by a computer processor, are used to perform the vehicle pose determination method as described in any one of claims 1-5.
Citation Information
Patent Citations
Road sign recognition
CN108021862A
Laser positioning method, device and equipment of mobile robot and medium
CN115437385A