Bar code detection method, bar code detection device and computer storage medium

By adopting barcode detection methods based on laser point cloud data in 2D laser navigation, the problems of false detection risk and low positioning accuracy in the prior art are solved, and higher detection accuracy and positioning reliability are achieved.

CN119918555APending Publication Date: 2025-05-02ZHEJIANG HUARAY TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411776020.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-04
Publication Date
2025-05-02

AI Technical Summary

Technical Problem

The existing 2D laser navigation methods based on reflective markers have problems with risk of misdetection and low positioning accuracy, especially when the position of reflective markers is unstable.

Method used

Through the barcode detection method based on laser point cloud data, the high-bright cloud segment is filtered, divided into barcode intervals, the high-bright and low-bright zone queues are obtained, the code intervals are encoded, and the barcode position is determined by the confidence judgment.

Benefits of technology

The accuracy of barcode detection is improved, the credibility of detection results is enhanced through confidence judgment, and the accuracy of laser positioning is improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119918555A_ABST
    Figure CN119918555A_ABST
Patent Text Reader

Abstract

The invention provides a bar code detection method, a bar code detection device and a computer storage medium. The bar code detection method comprises the following steps: screening at least one highlight point cloud fragment based on the reflection intensity of each data point in laser point cloud data; according to the point cloud sequence number of the highlight point cloud fragment, segmenting the highlight point cloud fragment into a plurality of bar code intervals; obtaining a high-light area queue and a low-light area queue in the plurality of bar code intervals; determining a bar code value of the highlight point cloud fragment based on the interval code of each bar code interval in the plurality of bar code intervals; based on a width residual error between the highlight point cloud fragment and an ideal bar code corresponding to the bar code coding value, obtaining a confidence coefficient of the highlight point cloud fragment; and determining the bar code pose of the laser point cloud data according to the highlight point cloud fragment with the highest confidence coefficient. According to the bar code detection method, the laser point cloud is analyzed according to the bar code coding rule, and the bar code detection accuracy is improved through confidence judgment.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of positioning perception technology, and in particular to a barcode detection method, a barcode detection device and a computer storage medium. Background Art

[0002] In the fields of logistics and industry, mobile robots generally refer to automated guided vehicles (AGVs), which are transport vehicles equipped with automatic guidance devices such as electromagnetic or optical devices, capable of traveling along a prescribed guidance path, and having safety protection and transfer functions. They can replace manual labor to lift and carry containers such as shelves.

[0003] Among the related technologies, 2D laser navigation has received more and more attention in industrial scenarios. At present, the method based on reflective markers is not difficult to implement, so it is widely used. This laser navigation method based on reflective markers requires the arrangement of multiple reflective markers in the actual scene, the location of the reflective markers is determined by pre-map construction, and these locations are guaranteed to remain unchanged in subsequent operations.

[0004] During actual operation, the robot's position is constrained by detecting reflective markers in the environment and matching them with the reflective marker map. Since the observation information provided by the reflective markers is not unique, there is a high risk of false detection, especially when the odometer positioning itself is unstable, it is easy to misassociate. This will cause trouble in the map matching process and even cause the laser positioning to fail to work properly, resulting in low accuracy of the positioning results. Summary of the invention

[0005] In order to solve the above technical problems, the present application proposes a barcode detection method, a barcode detection device and a computer storage medium.

[0006] In order to solve the above technical problems, the present application proposes a barcode detection method, which includes:

[0007] Based on the reflection intensity of each data point in the laser point cloud data, screening at least one highlight point cloud segment;

[0008] According to the point cloud sequence number of the highlight point cloud segment, the highlight point cloud segment is divided into a plurality of barcode intervals;

[0009] Acquire a highlight region queue and a low-brightness region queue in the plurality of barcode intervals;

[0010] Setting a first number of barcode intervals with a relatively wide width in the highlight area queue as interval codes with a first code value, and setting a second number of barcode intervals with a relatively narrow width as interval codes with a second code value;

[0011] Setting a third number of barcode intervals with a relatively wide width in the highlight area queue as interval codes of a third code value, and setting a fourth number of barcode intervals with a relatively narrow width as interval codes of a fourth code value;

[0012] Determining a barcode code value of the highlight point cloud segment based on the interval code of each barcode interval in the plurality of barcode intervals;

[0013] Obtaining the confidence of the highlight point cloud segment based on a width residual between the highlight point cloud segment and an ideal barcode corresponding to the barcode encoding value;

[0014] The barcode pose of the laser point cloud data is determined according to the highlighted point cloud segment with the highest confidence.

[0015] To solve the above technical problems, the present application also proposes a barcode detection device, which includes a memory and a processor coupled to the memory; wherein the memory is used to store program data, and the processor is used to execute the program data to implement the barcode detection method as described above.

[0016] In order to solve the above technical problems, the present application also proposes a computer storage medium, wherein the computer storage medium is used to store program data, and when the program data is executed by a computer, it is used to implement the above barcode detection method.

[0017] Compared with the prior art, the beneficial effects of the present application are as follows: the barcode detection device selects at least one highlight point cloud segment based on the reflection intensity of each data point in the laser point cloud data; divides the highlight point cloud segment into a plurality of barcode intervals according to the point cloud sequence number of the highlight point cloud segment; obtains a highlight area queue and a low-brightness area queue in the plurality of barcode intervals; sets a first number of barcode intervals with a wider width in the highlight area queue as an interval code of a first coding value, and sets a second number of barcode intervals with a narrower width as an interval code of a second coding value; The third number of barcode intervals with a wider width in the highlight area queue are set to the interval coding of the third coding value, and the fourth number of barcode intervals with a narrower width are set to the interval coding of the fourth coding value; based on the interval coding of each barcode interval in the plurality of barcode intervals, the barcode coding value of the highlight point cloud segment is determined; based on the width residual between the highlight point cloud segment and the ideal barcode corresponding to the barcode coding value, the confidence of the highlight point cloud segment is obtained; according to the highlight point cloud segment with the highest confidence, the barcode pose of the laser point cloud data is determined. Through the above barcode detection method, the laser point cloud is analyzed according to the barcode coding rules, and the accuracy of barcode detection is improved by confidence judgment. BRIEF DESCRIPTION OF THE DRAWINGS

[0018] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.

[0019] in:

[0020] Figure 1 It is a flow chart of an embodiment of a barcode detection method provided by the present application;

[0021] Figure 2 It is a schematic diagram of the overall process of the barcode detection method provided by this application;

[0022] Figure 3 is a structural schematic diagram of an embodiment of a mobile robot provided by the present application;

[0023] Figure 4 It is a structural schematic diagram of a barcode embodiment provided by the present application;

[0024] Figure 5 yes Figure 1 The specific flow chart of step S11 of the barcode detection method shown;

[0025] Figure 6 It is a flowchart of another embodiment of the barcode detection method provided by the present application;

[0026] Figure 7 It is a structural schematic diagram of an embodiment of a barcode detection device provided by the present application;

[0027] Figure 8 It is a structural diagram of an embodiment of a computer storage medium provided by the present application. DETAILED DESCRIPTION

[0028] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.

[0029] The terms "first", "second", "third", "fourth", etc. (if any) in the specification and claims of the present application and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchangeable where appropriate, so that the embodiments of the present application described herein can, for example, be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any of their variations are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units that are clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.

[0030] In order to solve the problems of the prior art, the present application proposes a barcode for 2D laser radar and a detection method thereof.

[0031] The barcode and its detection method of the present application estimate the posture of the mobile robot based on the odometer, laser sensor and prior map. When detecting the reflective barcode, the number of barcode bits and bar width parameters are preset first; then the laser data and odometer data are obtained, and the motion distortion of the point cloud is removed; the highlight point cloud fragments are screened out according to the reflection intensity of the point cloud; then the screened highlight point cloud fragments are further segmented using the Euclidean distance; then the candidate highlight fragments are traversed in a circular sliding window, and the point cloud fragments that can form the barcode are screened out through edge distance judgment and straight line judgment; then the point cloud is fitted with a straight line, and the ranging value of the point cloud is corrected by reprojection; the encoding value of the barcode is obtained by decoding, and the confidence of the detection result is calculated; finally, the posture of the barcode is calculated.

[0032] Please refer to Figure 1 and Figure 2 , Figure 1 is a flow chart of an embodiment of a barcode detection method provided by the present application, Figure 2 It is a schematic diagram of the overall process of the barcode detection method provided by this application.

[0033] The barcode detection method of the present application is applied to a barcode detection device, wherein the barcode detection device of the present application can be a server, a terminal device, or a system in which a server and a terminal device cooperate with each other. Accordingly, the various parts of the barcode detection device, such as various units, subunits, modules, and submodules, can all be set in the server, can all be set in the terminal device, or can be set in the server and the terminal device respectively.

[0034] Furthermore, the above-mentioned server can be hardware or software. When the server is hardware, it can be implemented as a distributed server cluster consisting of multiple servers, or it can be implemented as a single server. When the server is software, it can be implemented as multiple software or software modules, such as software or software modules used to provide distributed servers, or it can be implemented as a single software or software module, which is not specifically limited here.

[0035] Specifically, the barcode detection device of the present application may be a mobile robot based on an odometer and a laser radar, or a processing unit on a mobile robot, etc.

[0036] like Figure 3 As shown, Figure 3 Schematic diagram of the structure of a mobile robot according to an embodiment of the present application. Figure 3 As shown, the mobile robot used in this application includes a mobile chassis (including but not limited to a motion controller, a motor, a battery, an embedded computer, an odometer, etc.), a lidar sensor, etc.

[0037] Basic function introduction: The robot performs high-precision positioning in a priori maps generated based on the warehouse environment. The map includes components such as shelves, workbenches, building supports, and goods to be moved. The mobile robot described in this application uses an odometer to estimate the change in the robot's movement and uses a laser radar to scan the environment contour. When the robot enters a specified area, it will perform reflective barcode detection.

[0038] Further, the barcode for 2D laser radar proposed in this application is specifically referred to in Figure 4 , Figure 4 It is a structural schematic diagram of a barcode embodiment provided by the present application.

[0039] like Figure 4 As shown, the black bar represents a reflective bar with high reflective intensity, and the white bar represents a material with normal reflective intensity, including the coding bit + the end bit. The coding bit is composed of a 2-bit decimal code composed of a high-brightness reflective bar + a low-brightness area in sequence; the end bit is composed of a high-brightness reflective bar. And the barcode code value is printed in plain text in the white low-brightness area.

[0040] like Figure 1 As shown, the specific steps are as follows:

[0041] Step S11: based on the reflection intensity of each data point in the laser point cloud data, screening at least one highlight point cloud segment.

[0042] In the embodiment of the present application, the barcode detection device is Figure 3The 2D laser radar shown collects laser point cloud data, and then determines whether each data point in the laser point cloud data is a highlight point through a threshold judgment of reflection intensity, thereby forming at least one highlight point cloud fragment.

[0043] It should be noted that the highlight point cloud segment mentioned in this application is a data point set formed by the arrangement and combination of highlight barcode intervals and low-brightness barcode intervals. The barcode detection device can determine the highlight barcode interval by the reflection intensity threshold, and the interval between adjacent highlight barcode intervals can be determined as the low-brightness barcode interval.

[0044] Specifically, this application also provides a solution for filtering highlight point cloud fragments. Please continue to refer to Figure 5 , Figure 5 yes Figure 1 The specific flow chart of step S11 of the barcode detection method is shown.

[0045] like Figure 5 As shown, the specific steps are as follows:

[0046] Step S111: based on the reflection intensity of each data point in the laser point cloud data, filter the highlight point cloud segments and add the highlight point cloud clusters.

[0047] In the embodiment of the present application, before determining the reflection intensity, the barcode detection device may pre-process the laser point cloud data in order to improve the accuracy of the data points. The specific process is as follows:

[0048] The barcode detection device receives the odometer data and a frame of laser point cloud data, and stores the odometer data in a queue. t The barcode detection device calculates the laser point cloud data S according to the linear velocity and angular velocity of the odometers O1 and O2. t Remove motion distortion.

[0049] After completing the above preprocessing, the barcode detection device preliminarily screens out the highlight point cloud segments according to the reflection intensity of the point cloud. The specific process is as follows:

[0050] The barcode detection device finds all data points with reflection intensity higher than the threshold value i1 according to the absolute intensity threshold value, uses the data point set composed of the adjacent data points of this part of data points as the highlight point cloud segment, and adds segs1.

[0051] It should be noted that the absolute intensity threshold i1 evaluates the reflection intensity data of each independent data point.

[0052] The barcode detection device finds all relatively highlighted data points, that is, data points whose relative brightness to adjacent data points is higher than the relative intensity threshold i2, based on the relative intensity threshold i2, and uses the data point set composed of the adjacent data points of this part of data points as the highlight point cloud segment and adds it to segs2.

[0053] The barcode detection device merges and removes duplicates of the highlight point cloud segments in segs1 and segs2 according to the point cloud ID to obtain segs, i.e., a collection of highlight point clouds.

[0054] It should be noted that the highlight point cloud fragment mentioned in this application is a data point set composed of adjacent data points that meet the above conditions.

[0055] Step S112: sorting all the highlight point cloud segments in the highlight point cloud set according to the point cloud sequence numbers.

[0056] In the embodiment of the present application, before sorting all the highlight point cloud segments in the highlight point cloud set, the barcode detection device may also perform the following segmentation condition judgment on each highlight point cloud segment in order to improve the accuracy of the highlight point cloud segment:

[0057] The barcode detection device traverses the highlighted point cloud segments in segs, assuming that the highlighted point cloud segment currently traversed is segs[i], and then traverses the point cloud in segs[i] in sequence. j With data point p j+1 Whether the Euclidean distance between them exceeds the threshold; if it exceeds the threshold dis, it means that the data point p j With data point p j+1 It is not continuous in space, so segs[i] needs to be further divided into two highlight point cloud segments. The highlight point cloud segments new_seg[i]1 and new_seg[i]2 obtained after segmentation are added to segs, and the original segs[i] is deleted.

[0058] Specifically, after the barcode detection device completes the segmentation of all the highlight point cloud segments in the highlight point cloud set, it sorts all the highlight point cloud segments according to the point cloud ID of each highlight point cloud segment to update segs.

[0059] Furthermore, the barcode detection device may first determine the number of highlight point cloud segments of segs before sorting all highlight point cloud segments, and exclude segs that do not meet the requirements in advance, thereby improving the barcode detection efficiency.

[0060] Specifically, the barcode detection device extracts the preset barcode priori parameters, the barcode bit number bit size And the physical width of each unit of the barcode bit width , number of reflective strips

[0061]

[0062] It should be noted that for Figure 4 The barcode embodiment shown, the barcode bit number bit size 15, the number of reflective strips is 6.

[0063] The barcode detection device first determines whether the number of highlight cloud segments in segs is greater than or equal to the number of reflective strips ref size If not, it means that the highlighted area does not match the barcode and no further judgment is needed.

[0064] Step S113: using the sliding window corresponding to the barcode priori parameter, obtaining at least one highlight point cloud segment from the highlight point cloud set.

[0065] In the embodiment of the present application, the barcode detection device uses the barcode priori parameters extracted in step S112 to verify the candidate highlight point cloud segments of the highlight point cloud, and determines whether a straight line can be fitted.

[0066] Specifically, considering the 360° panoramic view of the 2D laser, the highlight cloud segments in the segs are constructed into a ring data structure, and the barcode detection device creates a ref size The sliding window is traversed in a loop, and for the highlighted segments segs[j]~segs[j+ref size -1], execute the following processing logic:

[0067] The barcode detection device calculates the edge Euclidean distance dis between the first and last two highlight point cloud segments in the current sliding window edge , and determine whether the distance is greater than (bit size +1)*bit width or less than (bit size -1)*bit width If yes, it means that the candidate highlight segment combination does not meet the conditions, and the next cycle continues.

[0068] Furthermore, the barcode detection device takes all point clouds Z of the highlighted segments in the sliding window, whose mean center is m, and constructs a mean-removed sample matrix The barcode detection device performs PCA (Principal Component Analysis) decomposition to obtain two eigenvectors β1 and β2, and uses the eigenvector corresponding to the maximum eigenvalue as the straight line direction.

[0069] The barcode detection device calculates the maximum value of the distance from all points in the point cloud Z to the straight line dis max , if dismax Greater than the set threshold dis p2line , it means that the current candidate highlight fragments cannot form a barcode.

[0070] The barcode detection device changes the position of the sliding window until the sliding window traversal is completed, and obtains the candidate highlight point cloud segments segs candi .

[0071] Furthermore, the traditional least squares straight line fitting method based on the rectangular coordinate system essentially ignores the error in one dimension and reduces the dimensionality of the two-dimensional straight line to one dimension for fitting. That is, for the point cloud (x, y) in the rectangular coordinate system, only the error in the x direction is considered, while the error in the y direction is ignored, and the error equation is constructed. If the errors in the x and y directions are to be considered simultaneously, the total least squares method should be used, but this method has low solution efficiency.

[0072] At the same time, considering the characteristics of the laser ranging system error, the main error is the time measurement error (reflected as the point cloud ranging error), rather than the angle error; especially in the reflective barcode scene, the laser ranging fluctuations for the highlight area and the low brightness area are large. Considering constraining the error in the direction of the laser ray, modeling this problem in a rectangular coordinate system will increase the complexity.

[0073] Therefore, the barcode detection method of the present application chooses to model in the polar coordinate system. i (r i ,θ i ), use r i The predicted and observed values ​​are used to construct the error equation, which naturally constrains the error to the direction of the laser ray.

[0074] For detailed process, please refer to Figure 6 , Figure 6 It is a flowchart of another embodiment of the barcode detection method provided by the present application.

[0075] like Figure 6 As shown, the specific steps are as follows:

[0076] Step S21: fitting a straight line equation to the data points on the highlight point cloud segment.

[0077] In the embodiment of the present application, it is assumed that the equation of the straight line formed by the barcode is: r=r0cos(θ-θ0).

[0078] Among them, segs candi Highlight fragments and segs candi The low-light area between the two highlighted segments is a series of point clouds obtained by laser scanning the barcode, denoted as p i (r i ,θi ); then p i (r i ,θ i ) is a point belonging to the straight line r = r0cos(θ-θ0), find:

[0079]

[0080] The principle of the above solution is: select the length parameter and angle parameters So that p i (r i ,θ i ) to the straight line is the smallest.

[0081] make We can get:

[0082]

[0083] Assuming r0≠0 (if it is zero, all are at the origin), then:

[0084]

[0085] From the first equation of the above system of equations, we can get Substituting back into the second equation of the above system of equations, we get:

[0086]

[0087] The barcode detection device can use a numerical method, that is, substitute the known data point data into the above equation to solve θ0, and then substitute θ0 back into the linear equation to obtain r0.

[0088] Thus, the barcode detection device calculates the equation of the straight line: r=r0cos(θ-θ0).

[0089] Step S22: Correcting the data points using a straight line equation.

[0090] In the embodiment of the present application, the barcode detection device uses the barcode straight line equation determined in step S21 to calculate the point cloud p on the barcode. i (r i ,θ i ) is corrected by the laser ranging value, that is, r i = r0cos(θ i -θ0).

[0091] Step S12: Segment the highlighted point cloud segment into a number of barcode intervals according to the point cloud sequence number of the highlighted point cloud segment.

[0092] In the embodiment of the present application, the barcode detection device uses the highlight point cloud segment determined in step S11 to decode, so as to Figure 4 The barcode shown is translated to obtain the barcode encoding value.

[0093] Specifically, the barcode detection device calculates the coordinates of all highlight area segmentation points and low-brightness area segmentation points according to the point cloud coordinates on the corrected barcode according to the point cloud ID recorded in the highlight point cloud segment, and uses these segmentation points to segment the highlight point cloud segment into multiple barcode intervals. Figure 4 The corresponding brightness point cloud fragment can theoretically be divided into 11 barcode intervals.

[0094] Step S13: Obtain a high-brightness region queue and a low-brightness region queue in a plurality of barcode intervals.

[0095] In the embodiment of the present application, the last interval of the barcode interval represents the end mark. Figure 4 Taking the above example, the barcode detection device removes the last interval to obtain 10 intervals, and divides the 10 intervals into odd queues and even queues according to the subscripts from 0 to 9, wherein the odd queue represents the highlight area queue and the even queue represents the low-brightness area queue.

[0096] In other embodiments, according to the barcode encoding rules, the barcode detection device may also represent the odd-numbered queues as the highlight area queues and the even-numbered queues as the low-brightness area queues.

[0097] Step S14: setting a first number of barcode intervals with a wider width in the highlight area queue as interval codes of a first code value, and setting a second number of barcode intervals with a narrower width as interval codes of a second code value.

[0098] Step S15: setting the third number of barcode intervals with a wider width in the highlight area queue as the interval code of the third code value, and setting the fourth number of barcode intervals with a narrower width as the interval code of the fourth code value.

[0099] In the embodiment of the present application, the barcode detection device sorts each interval in the odd queue and the even queue from large to small according to the interval width. Then, the barcode detection device performs binary processing on the sorted odd queue and the even queue, and encodes the two widest intervals in each queue as 1, and the three narrower intervals as 0. Thus, two 5-bit binary codes are obtained.

[0100] In other embodiments, the number of intervals and the encoding method may adopt other methods, which are not specifically limited here.

[0101] Step S16: determining the barcode code value of the highlight point cloud segment based on the interval code of each barcode interval in the plurality of barcode intervals.

[0102] In the embodiment of the present application, the barcode detection device matches the two 5-bit binary codes with the coding table. If the two 5-bit binary codes can be correctly matched with the coding table, it means that the decoding is successful.

[0103] Furthermore, the barcode detection device takes out the corresponding two decimal values ​​M and N from the coding table, and finally obtains the ID of the barcode, that is, the barcode coding value:

[0104] id=10*M+N

[0105] Step S17: based on the width residual between the highlight point cloud segment and the ideal barcode corresponding to the barcode encoding value, the confidence of the highlight point cloud segment is obtained.

[0106] In the embodiment of the present application, after the barcode detection device completes decoding in step S16, it uses the observation point cloud to calculate the one-to-one correspondence between the width of each high and low brightness area and the bar width of the ideal barcode of the encoding value, constructs the residual, and calculates the confidence of the current barcode detection result: The higher the confidence level, the more reliable the current test result is and the more consistent it is with the expected barcode.

[0107] Step S18: Determine the barcode pose of the laser point cloud data according to the highlight point cloud segment with the highest confidence.

[0108] In the embodiment of the present application, the barcode detection device takes the decoding result with the highest confidence as the final result, thereby determining the final barcode.

[0109] Then, the barcode detection device calculates the position T of the barcode center in the laser coordinate system by measuring the endpoints of the straight line segment formed by the barcode. S L ; Then, through the laser external parameter, it is converted into the position T of the barcode in the vehicle coordinate system S B .

[0110] In the present application, a barcode detection device selects at least one highlight point cloud segment based on the reflection intensity of each data point in the laser point cloud data; divides the highlight point cloud segment into a plurality of barcode intervals according to the point cloud sequence number of the highlight point cloud segment; obtains a highlight area queue and a low-brightness area queue in the plurality of barcode intervals; sets a first number of barcode intervals with a wider width in the highlight area queue as an interval code of a first code value, and sets a second number of barcode intervals with a narrower width as an interval code of a second code value; sets a third number of barcode intervals with a wider width in the highlight area queue as an interval code of a third code value, and sets a fourth number of barcode intervals with a narrower width as an interval code of a fourth code value; determines the barcode code value of the highlight point cloud segment based on the interval code of each barcode interval in the plurality of barcode intervals; obtains the confidence of the highlight point cloud segment based on the width residual between the highlight point cloud segment and the ideal barcode corresponding to the barcode code value; and determines the barcode pose of the laser point cloud data according to the highlight point cloud segment with the highest confidence. Through the above barcode detection method, the laser point cloud is analyzed according to the barcode encoding rules, and the barcode detection accuracy is improved through confidence judgment.

[0111] The reflective barcode design proposed in this application does not involve ID bits and start bits; the code is compact and the barcode length is short. In addition, the barcode code value will be printed on the barcode, which is easy for the human eye to distinguish in actual use and not easy to confuse. At the same time, the barcode is not limited to 2-digit decimal numbers, but can be expanded to 4-digit decimal numbers, or even more.

[0112] The barcode detection method proposed in this application does not rely on the preset barcode width, and does not need to be very accurate for the absolute width of each reflective strip detected. It is still relatively robust when the point cloud fluctuates and the reflection intensity feedback is biased, resulting in inaccurate calculation of each bar width. This method does not need to traverse all the barcodes in the coding table one by one in the observation results, and is still very efficient when there are a large number of barcodes and a large number of barcode encoding bits.

[0113] The method proposed in this application is suitable for long distances and large scenes, and does not require high sensor accuracy.

[0114] Those skilled in the art will appreciate that, in the above method of specific implementation, the order in which the steps are written does not imply a strict execution order and does not constitute any limitation on the implementation process. The specific execution order of the steps should be determined by their functions and possible internal logic.

[0115] In order to implement the above barcode detection method, the present application also proposes a barcode detection device, for details, please refer to Figure 7 , Figure 7It is a structural schematic diagram of an embodiment of a barcode detection device provided by the present application.

[0116] The barcode detection device 400 of this embodiment includes a processor 41 , a memory 42 , an input / output device 43 , and a bus 44 .

[0117] The processor 41 , the memory 42 , and the input / output device 43 are respectively connected to the bus 44 . The memory 42 stores program data. The processor 41 is used to execute the program data to implement the barcode detection method described in the above embodiment.

[0118] In the embodiment of the present application, the processor 41 may also be referred to as a CPU (Central Processing Unit). The processor 41 may be an integrated circuit chip having the ability to process signals. The processor 41 may also be a general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA), or other programmable logic devices, discrete gates or transistor logic devices, or discrete hardware components. A general-purpose processor may be a microprocessor or the processor 41 may also be any conventional processor, etc.

[0119] This application also provides a computer storage medium, please continue to refer to Figure 8 , Figure 8 It is a schematic diagram of the structure of an embodiment of a computer storage medium provided in the present application. The computer storage medium 600 stores a computer program 61. When the computer program 61 is executed by a processor, it is used to implement the barcode detection method of the above embodiment.

[0120] When the embodiments of the present application 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 is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including several instructions to enable a computer device (which can be a personal computer, a server, or a network device, etc.) or a processor to perform 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 disk or an optical disk.

[0121] The above description is only an implementation method of the present application, and does not limit the patent scope of the present application. Any equivalent structure or equivalent process transformation made using the contents of the present application specification and drawings, or directly or indirectly used in other related technical fields, are also included in the patent protection scope of the present application.

Claims

1. A barcode detection method, characterized in that: The barcode detection method comprises: Based on the reflection intensity of each data point in the laser point cloud data, screening at least one highlight point cloud segment; According to the point cloud sequence number of the highlight point cloud segment, the highlight point cloud segment is divided into a plurality of barcode intervals; Acquire a highlight region queue and a low-brightness region queue in the plurality of barcode intervals; Setting a first number of barcode intervals with a relatively wide width in the highlight area queue as interval codes with a first code value, and setting a second number of barcode intervals with a relatively narrow width as interval codes with a second code value; Setting a third number of barcode intervals with a relatively wide width in the highlight area queue as interval codes of a third code value, and setting a fourth number of barcode intervals with a relatively narrow width as interval codes of a fourth code value; Determining a barcode code value of the highlight point cloud segment based on the interval code of each barcode interval in the plurality of barcode intervals; Obtaining the confidence of the highlight point cloud segment based on a width residual between the highlight point cloud segment and an ideal barcode corresponding to the barcode encoding value; The barcode pose of the laser point cloud data is determined according to the highlighted point cloud segment with the highest confidence.

2. The barcode detection method according to claim 1, characterized in that: The determining the barcode code value of the highlight point cloud segment based on the interval code of each barcode interval in the plurality of barcode intervals includes: Determining a highlight code value based on the section code of the highlight barcode section among the plurality of barcode sections; Determining a low-brightness code value based on the interval code of the low-brightness barcode interval among the plurality of barcode intervals; Determine whether the highlight code value and the low-light code value are both successfully matched with the code table; If yes, obtain the highlight coding table value corresponding to the highlight coding value from the coding table, and obtain the low-brightness coding table value corresponding to the low-brightness coding value; The barcode encoding value of the highlight point cloud segment is calculated using the highlight encoding table value and the low-brightness encoding table value.

3. The barcode detection method according to claim 1, characterized in that: Before dividing the highlight point cloud segment into a plurality of barcode intervals according to the point cloud sequence number of the highlight point cloud segment, the barcode detection method further includes: Fitting a straight line equation to the data points on the highlight point cloud segment; The data points are corrected using the straight line equation.

4. The barcode detection method according to claim 3, characterized in that: The step of fitting a straight line equation to the data points on the highlight point cloud segment comprises: Obtain low-brightness data points on the highlighted point cloud segment; Establishing a solution equation by utilizing the distance minimization relationship between the low-brightness data point and the preset straight line equation; Obtaining a set of solution equations for the solution equations from the length and the angle respectively; Substituting the low-light data points into the solution equation group to solve the length parameter and the angle parameter; Substituting the length parameter and the angle parameter into the preset straight line equation, the straight line equation is obtained.

5. The barcode detection method according to claim 1, characterized in that: The step of screening at least one highlight point cloud segment based on the reflection intensity of each data point in the laser point cloud data comprises: Based on the reflection intensity of each data point in the laser point cloud data, selecting highlight point cloud segments and adding highlight point cloud clusters; Sort all the highlight point cloud segments in the highlight point cloud set according to the point cloud sequence numbers; At least one highlight point cloud segment is acquired from the highlight point cloud set by using a sliding window corresponding to the barcode priori parameter.

6. The barcode detection method according to claim 5, characterized in that: The barcode detection method further includes: Determine whether the number of highlight point cloud segments in the highlight point cloud set is greater than or equal to the number of reflective strips in the barcode priori parameter; If so, all the highlight point cloud segments in the highlight point cloud set are sorted according to the point cloud sequence numbers.

7. The barcode detection method according to claim 5, characterized in that: The step of obtaining at least one highlight point cloud segment from the highlight point cloud set by using a sliding window corresponding to a barcode priori parameter includes: Creating the sliding window using the number of reflective strips in the barcode prior parameters; The circular sliding window traverses the highlight point cloud set, and for the candidate highlight point cloud segments in the sliding window: Determine whether the edge Euclidean distance of the first and last highlight cloud segments is within the preset range; If yes, obtain the point cloud mean center of the candidate highlight point cloud fragment and construct a mean-removed sample matrix; Performing principal component analysis on the de-meaned sample matrix to decompose and obtain a eigenvector; Obtain a vector straight line using the eigenvector corresponding to the maximum eigenvalue, and obtain the maximum value of the distance from the data point of the candidate highlight point cloud fragment to the vector straight line; Determine whether the maximum distance is greater than a preset distance threshold; If not, determining the candidate highlight point cloud segment to be the highlight point cloud segment; The preset range is determined according to the number of barcode digits and the physical width of the barcode in the barcode priori parameters.

8. The barcode detection method according to claim 5, characterized in that: The step of screening the highlight point cloud segments based on the reflection intensity of each data point in the laser point cloud data comprises: Based on the reflection intensity of each data point in the laser point cloud data, obtaining a plurality of first data points whose reflection intensity is higher than an absolute intensity threshold; Using a point cloud set composed of adjacent first data points as a first highlight point cloud segment; Based on the reflection intensity of each data point in the laser point cloud data, obtaining a plurality of second data points whose relative brightness of adjacent data points is higher than a relative intensity threshold; Using a point cloud set composed of adjacent second data points as a second highlight point cloud segment; The first highlight point cloud segment and the second highlight point cloud segment are merged and deduplicated to obtain the highlight point cloud segment.

9. The barcode detection method according to claim 8, characterized in that: Before sorting all the highlight point cloud segments in the highlight point cloud set according to the point cloud sequence numbers, the barcode detection method further includes: Determine whether the distance between each two adjacent data points in each highlight point cloud segment in the highlight point cloud set exceeds a distance threshold; If so, the highlight point cloud segment is segmented according to two adjacent data points exceeding the distance threshold, and two highlight point cloud segments are obtained and added to the highlight point cloud cluster.

10. A barcode detection device, characterized in that: The barcode detection device includes a memory and a processor coupled to the memory; The memory is used to store program data, and the processor is used to execute the program data to implement the barcode detection method according to any one of claims 1 to 9.

11. A computer storage medium, characterized in that: The computer storage medium is used to store program data, and when the program data is executed by a computer, it is used to implement the barcode detection method according to any one of claims 1 to 9.