Bar code reflector system and identification method

By designing a barcode structure on the reflector and identifying unique encodings using laser point cloud data, the problems of complex deployment of reflectors and environmental interference are solved, and high-precision recognition and positioning in the robot field are achieved.

CN119204056AInactive Publication Date: 2024-12-27GUANGZHOU JINGXING HUIDONG TECH CO LTD
View PDF 9 Cites 0 Cited by

Patent Information

Application Number
CN202411394211.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-10-08
Publication Date
2024-12-27
Estimated Expiration
Not applicable · inactive patent

AI Technical Summary

Technical Problem

Existing reflectors are complex in the field of robots, are not unique, and are easily disturbed by environmental and difficult to accurately identify in complex environments.

Method used

Using a barcode reflector system, a barcode structure composed of strong reflective areas and weak reflective areas, including the start bit, data bit and check bit, uses laser point cloud data to identify the unique encoding of the reflector, improve identification accuracy and reduce deployment Complexity.

Benefits of technology

The unique recognition of reflectors is realized, the number of deployments and deployment difficulties are reduced, the recognition accuracy is improved, and the cost of materials and labor is reduced. It is suitable for global positioning, feature recognition and high-precision docking in the field of robots.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119204056A_ABST
    Figure CN119204056A_ABST
Patent Text Reader

Abstract

The invention provides a bar code reflector system and an identification method. The reflector system comprises a reflector and an identification device, the reflector comprises a bar code structure, the bar code structure comprises a start bit, a data bit, a check bit and a termination bit, the reflector can be positioned through the start bit and the termination bit, unique coding information can be represented through the data bit, and an identification result can be verified through the check bit. The accuracy is ensured. Therefore, according to the scheme, the reflecting plate with uniqueness can be provided and is easy to read through laser, the deployment number of the reflecting plate can be reduced, the deployment difficulty can be reduced, and meanwhile, the reflecting plate is not easily influenced by the environment, so that the material and labor cost is greatly reduced, and the recognition accuracy is improved; the method can be used in scenes such as global positioning, feature recognition, high-precision docking of charging piles and high-precision docking of assembly lines in the field of robots.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to a barcode reflector system and a recognition method, which are applied in robots and belong to the field of intelligent recognition technology and robots. Background Art

[0002] In the field of robotics, reflectors are often used to locate or identify features. Reflectors have a high reflectivity. When the laser scans the reflector area, the point cloud intensity formed will be significantly stronger than that of ordinary materials. This feature is used to identify the reflector area; combined with the flight time from the laser being reflected by the reflector to being received, the distance from the reflector to the emission source is calculated, and the relative position of the reflector relative to the emission source (robot) can be accurately calculated. Common usages are as follows:

[0003] 1. Reflectors are used for positioning: Deploy reflectors according to certain rules and collect the positions and postures of the reflectors in advance. When the robot scans multiple reflectors during movement, the robot's position and posture are calculated based on the reflector posture according to the principle of triangulation positioning;

[0004] 2. Reflectors are used for feature recognition: In some special scenarios, such as charging piles, reflectors are attached to identify the charging piles by using the reflectors’ easy-to-recognize features.

[0005] In the above two types of usage, although it is easy to identify the position of the reflector, there are the following disadvantages:

[0006] 1. When used for positioning, the deployment of reflectors is complex, requires strict rules to be followed, and the deployment volume is large;

[0007] 2. The reflector is not unique and cannot distinguish the information of the object. For example, if two charging piles A and B are both affixed with reflectors, when the charging piles are moved, it is impossible to distinguish whether it is charging pile A or B;

[0008] 3. The reflector has simple characteristics and is easily affected by strong reflective materials in the environment, such as glossy stainless steel, mirrors, glass, etc.

[0009] It can be seen that it is necessary to invent a reflector with unique coding, easy deployment and stronger anti-interference ability. Summary of the invention

[0010] The present application provides a barcode reflector system and identification method to solve the problems of existing reflectors such as complex deployment, non-uniqueness and susceptibility to environmental interference.

[0011] In a first aspect, an embodiment of the present application provides a barcode reflector system, comprising a reflector and an identification device;

[0012] The reflective plate includes a barcode structure consisting of a strong reflective area and a weak reflective area, and the barcode structure includes a start bit, a data bit, a check bit and a stop bit; the start bit, the data bit, the check bit and the stop bit can all represent one or more binary numbers;

[0013] The identification device obtains laser point cloud data by emitting laser and collecting reflected laser, and identifies the information contained in the barcode structure through the laser point cloud data, specifically including: locating the reflector by identifying the start bit and the end bit of the barcode structure, obtaining the unique coding information corresponding to the reflector by identifying the data bit of the barcode structure, and verifying the obtained unique coding information by identifying the check bit of the barcode structure.

[0014] Based on the above barcode reflector system, optionally, the width of the barcode corresponding to each binary digit is the same, and the width value is preset based on business requirements.

[0015] Based on the above barcode reflective plate system, optionally, the start bit and the end bit are both "101" structures, wherein 1 represents a strong reflective area and 0 represents a weak reflective area.

[0016] Based on the above barcode reflector system, optionally, the number of bits of the check digit is determined based on the number of bits of the data bits, and the check digit increases by at least 1 bit every time the data bits contain 6 bits.

[0017] Based on the above barcode reflector system, optionally, the width of the continuous strong reflective area included in the barcode structure does not exceed a set threshold.

[0018] Based on the above barcode reflector system, optionally, application scenarios include: positioning, global resetting, feature recognition and high-precision docking.

[0019] In a second aspect, an embodiment of the present application further provides a method for identifying a barcode reflector, which is used to identify the barcode reflector described in any one of the first aspects, and the method comprises:

[0020] Acquire laser point cloud data, and transform the laser point cloud data from the robot coordinate system to the world coordinate system;

[0021] Accumulate laser point cloud data in multiple frames of world coordinate system;

[0022] Based on the point cloud intensity threshold, the coordinates of high-intensity point clouds and low-intensity point clouds are screened out, and density clustering is performed to obtain multiple categories;

[0023] From the multiple categories of the clustering results, remove the categories whose coverage is less than the set threshold, and iterate the remaining categories in turn;

[0024] According to the coverage area of ​​the high-intensity point cloud, the corresponding point cloud area in the accumulated multi-frame laser point cloud data is determined as the candidate area of ​​the reflector;

[0025] Transform the points of the candidate area onto a straight line, determine the leftmost and rightmost high-intensity points as the candidate starting position and the candidate ending position, and determine the value of each bit between the candidate starting position and the candidate ending position;

[0026] The validity of the recognition result is verified. If the verification passes, the value of the barcode structure of the reflector is obtained; if the verification fails, it returns to iterate the remaining categories.

[0027] Based on the above method, optionally, determining the value of each bit between the candidate starting position and the candidate ending position includes:

[0028] Divide the points between the candidate start position and the candidate end position into smaller areas; the width of each small area is 1 / n of the width of each bit, where n is an odd number;

[0029] Count the average intensity of the point cloud in each small area, and record the small area with an average intensity higher than the point cloud intensity threshold as "1", otherwise it is recorded as "0";

[0030] Based on the values ​​of each small area, determine the value of each bit between the candidate starting position and the candidate ending position; wherein, among the n small areas corresponding to each bit, the value corresponding to the most central small area is the value of the current bit, and the values ​​in the n small areas corresponding to each bit must meet preset judgment conditions, and the preset judgment conditions include: when the value of the current bit is "1", the number of small areas with consecutive "1" is not less than a first threshold; when the value of the current bit is "0", the number of small areas with consecutive "0" is not less than a second threshold, and the first threshold is greater than the second threshold.

[0031] Based on the above method, optionally, if the start bit and the end bit are both "101" structures, determining the value of each bit between the candidate start position and the candidate end position based on the values ​​of each small area includes:

[0032] Identify the starting position: Scan rightward from the candidate starting position to find the leftmost "1...10...01...1" sequence, calculate the center of the middle part "0...0" as the position of "0" in the "101" structure corresponding to the starting position, and then shift n small areas forward and backward respectively to obtain the position of "1" in the "101" structure corresponding to the starting position; check whether the value distribution of the small area in each position meets the preset judgment condition. If so, it is determined that the starting position "101" is found. If not, continue to scan to the right;

[0033] Identify the termination position: Scan leftward from the candidate termination position to find the rightmost "1...10...01...1" sequence, calculate the center of the middle part "0...0" as the position of "0" in the "101" structure corresponding to the termination position, and then shift n small areas forward and backward respectively to obtain the position of "1" in the "101" structure corresponding to the termination position; check whether the value distribution of the small area in each position meets the preset judgment condition. If so, it is determined that the termination position "101" is found. If not, continue to scan leftward;

[0034] Verify the length of the barcode structure: Verify the length between the start bit "101" and the end bit "101". If the length is within the expected length error range of the pre-configured reflector model, continue to identify the data bit, otherwise end the identification;

[0035] Identify data bits and check bits: starting from the second "1" position in the start bit "101", shift back n small areas each time, take the corresponding value, and determine whether it meets the preset judgment condition. If it does, continue to identify, otherwise end the identification.

[0036] Based on the above method, optionally, the verification of the validity of the recognition result includes:

[0037] Verify whether the number of identified data bits and check bits matches the pre-configured reflector model; and verify whether the calculated check bit matches the identified check bit.

[0038] The above technical solution provided by this application has at least the following beneficial effects:

[0039] The present application provides a barcode reflector system and recognition method, in which the reflector includes a barcode structure, and the barcode structure includes a start bit, a data bit, a check bit, and an end bit. The reflector can be positioned by the start bit and the end bit, the data bit can represent unique coding information, and the check bit can verify the recognition result to ensure accuracy. Therefore, through the above scheme, a unique reflector can be provided, which is easy to read by laser, and the number of reflectors deployed can be reduced, the deployment difficulty can be reduced, and it is not easily affected by the environment, thereby greatly reducing material and labor costs and improving recognition accuracy. In the field of robots, it can be used for global positioning, feature recognition, high-precision docking charging piles, high-precision docking production lines and other scenarios. BRIEF DESCRIPTION OF THE DRAWINGS

[0040] The accompanying drawings herein are incorporated into and constitute a part of the specification, illustrate embodiments consistent with the present application, and together with the specification are used to explain the principles of the present application. In addition, these drawings and text descriptions are not intended to limit the scope of the concept of the present application in any way, but to illustrate the concept of the present application for those skilled in the art by referring to specific embodiments.

[0041] Figure 1 A schematic diagram of the structure of a barcode reflector system provided in one embodiment of the present application;

[0042] Figure 2 A schematic diagram of a barcode structure provided for one embodiment of the present application;

[0043] Figure 3 A schematic diagram of the meaning of the model of the barcode structure provided for one embodiment of the present application;

[0044] Figure 4 A schematic diagram of a process for identifying a barcode reflective plate provided in one embodiment of the present application;

[0045] Figure 5 A schematic diagram of the recognition principle of a barcode reflector provided in one embodiment of the present application. DETAILED DESCRIPTION

[0046] In order to make the purpose, technical solutions and advantages of the present application clearer, the technical solutions in the embodiments of the present application will be clearly and completely described below in combination with the embodiments of the present application. Obviously, the described embodiments are part of the embodiments of the present application, rather than all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in the field without creative work are within the scope of protection of the present application. In the absence of conflict, the following embodiments and features in the embodiments can be combined with each other.

[0047] In order to solve the problems of complex deployment, non-uniqueness and susceptibility to environmental interference of existing reflectors, the present application provides a barcode reflector solution, which has unique coding, is easy to deploy, and has stronger anti-interference ability. It can be widely used in global positioning, feature recognition, high-precision docking charging piles, high-precision docking assembly lines and other scenarios in the field of robotics.

[0048] like Figure 1 As shown, in some embodiments, a barcode reflective plate system is provided, which includes: a reflective plate and an identification device.

[0049] Among them, Figure 2 As shown, the reflector includes a strong reflective area ( Figure 2 white area in the middle) and weak reflective area ( Figure 2The barcode structure is composed of a black area in the middle) (similar to the existing barcode), and the barcode structure includes a start bit, data bits, check bits and stop bits; the start bit, data bits, check bits and stop bits can all represent one or more binary numbers; among them, the strong reflective area is used to represent "1" and the weak reflective area is used to represent "0". It should be noted that the strong reflective area and the weak reflective area here are relative concepts, that is, the light reflectivity of the strong reflective area is greater than that of the weak reflective area, but the specific numerical difference is not strictly limited, as long as it can be effectively identified and distinguished in practical applications.

[0050] In some embodiments, the entire reflective plate can be made of a material with a high reflectivity. For the part that needs to form a weak reflective area, the light reflectivity can be reduced by spraying matte paint or attaching a low reflective material. For the strong reflective area, no additional treatment is performed. In addition, the colors of the strong reflective area and the weak reflective area are as close as possible when observed by the naked eye. The closer the colors are, the more beautiful they are.

[0051] The identification device can obtain laser point cloud data by emitting laser and collecting reflected laser, and identify the information contained in the barcode structure through the laser point cloud data, specifically including: locating the reflector by identifying the start and end bits of the barcode structure, obtaining the unique coding information corresponding to the reflector by identifying the data bits of the barcode structure, and verifying the obtained unique coding information by identifying the check bits of the barcode structure.

[0052] Furthermore, the width of the barcode corresponding to each binary digit is the same, and the width value is pre-set based on business needs. The larger the width value, the farther the distance that can be recognized. For example, when used for global reset, it is generally only required to be recognized when approaching, and each bit can be designed to be 2 to 2.5 cm, which can be recognized within 2 meters; if used for positioning, each bit needs to be 5 cm or wider, which can be recognized at 5 meters or farther.

[0053] In addition, in some specific embodiments, the start bit and the end bit are both in the "101" structure (e.g. Figure 2 ), where 1 represents a strong reflective area and 0 represents a weak reflective area. Through this "strong-weak-strong" reflective feature, the identification of the start and end positions is more accurate and more robust, and can avoid interference from high reflective areas in the environment.

[0054] In addition, the data bit is selected according to the number of reflectors required. When the length is n, there are at most 2 n For example, in a positioning scenario, hundreds of reflectors may be needed, and n can be 7 or 8; in a reset and feature recognition scenario, n can be 5 or 6.

[0055] The check bit is used to check the data bit. The principle of the check is to calculate according to the set check algorithm after identifying the value of the data bit to obtain a check code, and then compare the check code with the identified check bit. If they are consistent, the check passes. The check algorithm includes but is not limited to the parity check algorithm, etc. Setting the check bit in the encoding is a prior art, so it will not be repeated here.

[0056] In addition, in some specific embodiments, the number of check bits is determined based on the number of data bits, and the number of check bits increases by at least 1 bit for every 6 data bits. For example, when the data bits are 1 to 6, there is 1 check bit; when the data bits are 7 to 12, there are 2 check bits. Through the variable check bit design, it can better adapt to various different situations.

[0057] In addition, the height of the reflector can be designed according to the width of commonly used high-reflective materials, which are generally 5cm, 7.5cm, 10cm, 15cm, etc. If the ground is flat, 5cm or 7.5cm is generally selected. If the ground is uneven, a 10cm or higher reflector needs to be selected.

[0058] In addition, considering that there are usually strong reflective noise structures in the environment (such as glossy stainless steel materials, mirrors, glass, etc.), in order to have better anti-interference ability, when designing the encoding of the barcode structure of the reflector, continuous multiple "1"s should be avoided. That is, the preferred solution is that the width of the continuous strong reflective area contained in the barcode structure does not exceed the set threshold. For example, in order to avoid a 15cm continuous strong reflective area in the reflector barcode, if the length of each bit is 2.5cm, 6 consecutive "1"s should be avoided. The set threshold here (such as 15cm) can be set according to the size of the noise structure in the actual scene.

[0059] For better understanding, an exemplary description is given in conjunction with the accompanying drawings. In this example, in order to uniquely represent the reflector and improve readability, each reflector is given a unique code, represented by "BwDn_X", "BwDn" is the model of the reflector, and "X" is the value corresponding to the barcode of the reflector. Among them, Bw represents the width of each bit of the reflector, Dn represents the number of data bits, the number of check bits is automatically set according to the number of data bits, and every 6 data bits are matched with 1 check bit. X is the specific value of the reflector (the decimal number corresponding to the data bit and the check bit). Specifically, if Figure 3 As shown, w is a positive integer, which indicates the width of each bit of the reflector, in millimeters (mm). Each bit width of 2.5 cm is represented by B25. n is a positive integer, which indicates the number of data bits. For example, D4 ​​indicates 4 data bits and 1 check bit, and D10 indicates 10 data bits and 2 check bits.

[0060] Based on this, Figure 1The reflector shown has a binary content of "10110010101", a unique code of "B25D4_18", a start bit of "101", data bits of "1001", a check bit of "0", and a stop bit of "101".

[0061] Laser point cloud data can be collected after laser scanning of the reflector. The point cloud intensity of the strong reflective area in the laser point cloud is significantly greater than that of the weak reflective area, so it can be used to distinguish "1" and "0". After identifying the value of the barcode structure of the reflector and the position relative to the robot (identification device), different processing can be performed according to the business scenario. For example, when used for global reset, the current position of the robot is inferred based on the pre-collected reflector position and the recognition result for reset.

[0062] It should be noted that in practice, the reflectors should be deployed at the same height as the laser to ensure that the laser can scan them. The deployment density of reflectors is related to the business scenario. In the positioning scenario, it is necessary to ensure that the robot can see at least one reflector during driving, and a reflector needs to be deployed every few meters; in the global reset or feature recognition scenario, generally only a small number of reflector barcodes need to be deployed in key places.

[0063] Based on the above scheme, the reflector includes a barcode structure, and the barcode structure includes a start bit, a data bit, a check bit, and an end bit. The reflector can be positioned by the start bit and the end bit, the data bit can represent unique coding information, and the check bit can verify the recognition result to ensure accuracy. Therefore, through the above scheme, a unique reflector can be provided, which is easy to read by laser, and the number of reflectors deployed can be reduced, the deployment difficulty can be reduced, and it is not easily affected by the environment, thereby greatly reducing material and labor costs and improving recognition accuracy. In the field of robots, it can be used for global positioning, feature recognition, high-precision docking charging piles, high-precision docking assembly lines and other scenarios.

[0064] Compared with ordinary reflectors, when used for positioning, fewer reflectors need to be deployed, the deployment position is more flexible, and no triangulation positioning is required; when used for feature recognition, the coded reflectors are unique, and can be correctly identified even if the position of the entity with the reflector changes; when used for resetting, the deployment is simple, the recognition accuracy is high, and it can achieve effects that ordinary reflectors cannot achieve; when used for high-precision docking, the reflectors are deployed in front of the points where docking is required (charging piles, assembly lines, etc.), which can make the parking accuracy within ±5mm. Specifically:

[0065] 1. When used for positioning: The barcode of each reflector is unique and can represent a unique position. When the robot moves, it only needs to see one reflector. According to the global position of the reflector and the position of the robot relative to the reflector, the current position of the robot can be determined. A small number of deployments can meet the positioning needs;

[0066] 2. When used for feature recognition: Based on the uniqueness of the reflector, after the reflector is attached to the charging pile and other scenes, it is equivalent to having a unique number, and the corresponding entity can be identified even if the position moves;

[0067] 3. When used for global reset: In the laser SLAM (Simultaneous Localization and Mapping) scenario, a small number of reflectors can be attached to some key places, such as charging piles, elevators and other places where positioning errors are easy to occur. When the robot moves, it recognizes the reflectors. Based on the global pose of the reflectors and the pose of the robot relative to the reflectors, the current pose of the robot can be calculated, thus achieving global reset of the robot.

[0068] 4. For high-precision docking: When docking with charging piles, assembly lines or other points with high precision, a reflector is attached in front of the docking target, and the unique code of the reflector and the position of the docking point (parking position) relative to the reflector are collected in advance. During the docking process, the actual position of the docking point (parking position) is calculated based on the reflector position identified by the robot and the pre-collected position of the docking point (parking position) relative to the reflector, and the docking accuracy is improved to within ±5mm.

[0069] To verify the effectiveness, a small number of reflectors with model number "B25D4" were deployed near the charging piles for global reset. Within a range of 2 meters and an inclination angle of 45 degrees between the robot and the reflector, the recognition accuracy rate was 100% and the recall rate was 100%, which solved the initial position error caused by the change in the position of the charging pile and achieved good results.

[0070] In addition, in practice, when identifying the above-mentioned barcode reflector, first find the continuous area containing the point cloud with high reflective intensity as the candidate area; next, find the start bit and the end bit, and then find the data bit and the check bit. After finding these data, finally verify the correctness of the recognition. If the verification passes, the unique code of the barcode reflector can be obtained, and the posture of the center point of the reflector can be further calculated, and the result can be output for application in subsequent scenarios.

[0071] In addition, some embodiments of the present application also provide a method for identifying a barcode reflective plate, which is used to identify the information contained in the reflective plate including a barcode structure described in any of the above embodiments. Figure 4 As shown, the identification method of this embodiment includes the following steps:

[0072] Step S101: Acquire laser point cloud data, and transform the laser point cloud data from the robot coordinate system to the world coordinate system.

[0073] The laser point cloud data here is collected by robots and other equipment. Taking the robot as an example, in order to more accurately identify the reflector, the reflector model deployed in the robot's operating environment is first set to the robot. Usually, only one type of reflector is deployed in an environment, but multiple models can be deployed when necessary. In order to support the correct recognition of the posture during the robot's movement, the point cloud needs to be transformed from the robot coordinate system to the world coordinate system for subsequent processing and recognition in the world coordinate system.

[0074] Step S102: Accumulating multiple frames of laser point cloud data in the world coordinate system.

[0075] By accumulating multiple frames of laser point cloud data, a stable recognition effect can be achieved while maintaining a high frame rate. Generally, 2 to 3 frames of laser point cloud data can be accumulated. Figure 5 As shown, the point clouds of multiple frames are accumulated, small circles represent high-intensity point clouds, and small dots represent low-intensity point clouds.

[0076] Step S103: based on the point cloud intensity threshold, the coordinates of the high-intensity point cloud and the low-intensity point cloud are screened out, and density clustering is performed to obtain multiple categories.

[0077] The point cloud intensity threshold Ic is set according to the actual scene to ensure that high-intensity point clouds and low-intensity point clouds can be accurately distinguished. In addition, when performing density clustering, a larger radius (greater than the length of the reflector) is used to ensure that high-intensity point clouds of the same reflector are clustered in the same category.

[0078] Step S104: From the multiple categories of the clustering results, remove the categories whose coverage is smaller than the set threshold, and iterate the remaining categories in sequence.

[0079] Among them, the categories with coverage less than the set threshold are generally noise points, so they are removed to reduce the amount of data for subsequent processing and improve accuracy. The threshold is set according to the actual situation and should be smaller than the coverage of the reflector.

[0080] Step S105: According to the coverage area of ​​the high-intensity point cloud, a corresponding point cloud area in the accumulated multi-frame laser point cloud data is determined as a candidate area for the reflector.

[0081] Specifically, in practice, most of the collected point cloud data are low-intensity point clouds, so the coverage area of ​​the collected high-intensity point clouds is used as the candidate area of ​​the reflector.

[0082] Step S106: transform the points of the candidate area onto a straight line, determine the leftmost and rightmost high-intensity points as the candidate start position and the candidate end position, respectively, and determine the value of each bit between the candidate start position and the candidate end position.

[0083] Among them, transforming the points in the candidate area to a straight line can facilitate subsequent processing. The leftmost high-intensity point is the candidate starting position, and the rightmost high-intensity point is the candidate ending position. By identifying the value of each bit between the candidate starting position and the candidate ending position, a multi-bit binary number can be obtained, which is the recognition result.

[0084] In some embodiments, determining the value of each bit between the candidate start position and the candidate end position may specifically include:

[0085] a) Divide the points between the candidate start position and the candidate end position into smaller areas; the width of each small area is 1 / n of the width of each bit, where n is an odd number;

[0086] b) Count the average intensity of the point cloud in each small area, and record the small area with an average intensity higher than the point cloud intensity threshold as "1", otherwise it is recorded as "0";

[0087] c) Based on the values ​​of each small area, determine the value of each bit between the candidate start position and the candidate end position; wherein, among the n small areas corresponding to each bit, the value corresponding to the most central small area is the value of the current bit, and the values ​​in the n small areas corresponding to each bit must meet the preset judgment conditions, which include: when the value of the current bit is "1", the number of small areas that are continuously "1" is not less than the first threshold; when the value of the current bit is "0", the number of small areas that are continuously "0" is not less than the second threshold, and the first threshold is greater than the second threshold. For example, when n is 5, the first threshold is 3 and the second threshold is 2.

[0088] Furthermore, in step c), if the start bit and the end bit are both "101" structures, determining the value of each bit between the candidate start position and the candidate end position based on the values ​​of each small area may specifically include:

[0089] Identify the starting position: Scan rightward from the candidate starting position to find the leftmost "1...10...01...1" sequence, calculate the center of the middle part "0...0" as the position of "0" in the "101" structure corresponding to the starting position, and then shift n small areas forward and backward respectively to obtain the position of "1" in the "101" structure corresponding to the starting position; check whether the value distribution of the small area in each position meets the above preset judgment conditions. If so, it is determined that the starting position "101" is found. If not, continue to scan to the right;

[0090] Identify the termination position: Scan leftward from the candidate termination position to find the rightmost "1...10...01...1" sequence, calculate the center of the middle part "0...0" as the position of "0" in the "101" structure corresponding to the termination position, and then shift n small areas forward and backward respectively to obtain the position of "1" in the "101" structure corresponding to the termination position; check whether the value distribution of the small area in each position meets the preset judgment condition. If so, it is determined that the termination position "101" is found. If not, continue to scan leftward;

[0091] Verify the length of the barcode structure: Verify the length between the start bit "101" and the end bit "101". If the length is within the expected length error range of the pre-configured reflector model, continue to identify the data bit, otherwise end the identification;

[0092] Identify data bits and check bits: start from the second "1" position in the start bit "101", shift back n small areas each time, take the corresponding value, and determine whether it meets the preset judgment condition. If it does, continue to identify, if not, end the identification. Figure 5 As shown, the final recognized binary result is "10110010101".

[0093] Step S107: verify the validity of the recognition result. If the verification is successful, the value of the barcode structure of the reflector is obtained; if the verification is not successful, return to iterate the remaining categories.

[0094] After the recognition result is obtained, the validity is verified. If the verification is passed, the binary number obtained by recognition is the value of the barcode structure of the reflector. If the verification is not passed, the process returns to step S105 to iterate other categories obtained by clustering.

[0095] In some embodiments, the validity verification of the recognition result includes: verifying whether the number of recognized data bits and check bits matches the pre-configured reflector model; and verifying whether the calculated check bit matches the recognized check bit. If the verification fails, return to step S105 to continue iterating other clustering results.

[0096] Finally, the value of the barcode of the recognized reflector can be output, and the center point position can be further calculated. Then it can be applied in specific scenarios, such as positioning, feature recognition, high-precision docking, etc.

[0097] It can be understood that the same or similar parts of the above embodiments can be referenced to each other, and the contents not described in detail in some embodiments can refer to the same or similar contents in other embodiments.

[0098] Any process or method description in a flowchart or otherwise described herein may be understood to represent a module, segment or portion of code that includes one or more executable instructions for implementing the steps of a specific logical function or process, and the scope of the preferred embodiments of the present invention includes alternative implementations in which functions may not be performed in the order shown or discussed, including performing functions in a substantially simultaneous manner or in the reverse order depending on the functions involved, which should be understood by those skilled in the art to which the embodiments of the present invention belong.

[0099] It should be understood that the various parts of the present invention can be implemented by hardware, software, firmware or a combination thereof. In the above-mentioned embodiments, a plurality of steps or methods can be implemented by software or firmware stored in a memory and executed by a suitable instruction execution system. For example, if implemented by hardware, as in another embodiment, it can be implemented by any one of the following technologies known in the art or their combination: a discrete logic circuit having a logic gate circuit for implementing a logic function for a data signal, a dedicated integrated circuit having a suitable combination of logic gate circuits, a programmable gate array (PGA), a field programmable gate array (FPGA), etc.

[0100] A person of ordinary skill in the art may understand that all or part of the steps of the method for implementing the above-mentioned embodiment may be completed by instructing the relevant hardware through a program, and the program may be stored in a computer-readable storage medium, which, when executed, includes one of the steps of the method embodiment or a combination thereof.

[0101] In addition, each functional unit in each embodiment of the present invention may be integrated into a processing module, or each unit may exist physically separately, or two or more units may be integrated into one module. The above-mentioned integrated module may be implemented in the form of hardware or in the form of a software functional module. If the integrated module is implemented in the form of a software functional module and sold or used as an independent product, it may also be stored in a computer-readable storage medium. The above-mentioned storage medium may be a read-only memory, a disk or an optical disk, etc.

[0102] In the description of this specification, the description with reference to the terms "one embodiment", "some embodiments", "examples", "specific examples", or "some examples" means that the specific features, structures, materials or characteristics described in conjunction with the embodiment or example are included in at least one embodiment or example of the present invention. In this specification, the schematic representation of the above terms does not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials or characteristics described may be combined in any one or more embodiments or examples in a suitable manner.

[0103] Although the embodiments of the present invention have been shown and described above, it is to be understood that the above embodiments are exemplary and are not to be construed as limitations of the present invention. A person skilled in the art may change, modify, replace and vary the above embodiments within the scope of the present invention.

Claims

1. A barcode reflector system, characterized in that: Includes reflectors and identification devices; The reflective plate includes a barcode structure consisting of a strong reflective area and a weak reflective area, and the barcode structure includes a start bit, a data bit, a check bit and a stop bit; the start bit, the data bit, the check bit and the stop bit can all represent one or more binary numbers; The identification device obtains laser point cloud data by emitting laser and collecting reflected laser, and identifies the information contained in the barcode structure through the laser point cloud data, specifically including: locating the reflector by identifying the start bit and the end bit of the barcode structure, obtaining the unique coding information corresponding to the reflector by identifying the data bit of the barcode structure, and verifying the obtained unique coding information by identifying the check bit of the barcode structure.

2. The barcode reflector system according to claim 1, characterized in that: The width of the barcode corresponding to each binary digit is the same, and the width value is pre-set based on business requirements.

3. The barcode reflector system according to claim 1, characterized in that: The start bit and the end bit are both "101" structures, where 1 represents a strong reflective area and 0 represents a weak reflective area.

4. The barcode reflector system according to claim 1, characterized in that: The number of the check bits is determined based on the number of the data bits, and the check bits are increased by at least 1 bit for every 6 bits of the data bits.

5. The barcode reflector system according to claim 1, characterized in that: The width of the continuous strong reflective area included in the barcode structure does not exceed a set threshold.

6. The barcode reflector system according to any one of claims 1 to 6, characterized in that: Application scenarios include: positioning, global resetting, feature recognition and high-precision docking.

7. A method for identifying a barcode reflector, characterized in that: For identifying the reflective sheet according to any one of claims 1 to 6, the method comprises: Acquire laser point cloud data, and transform the laser point cloud data from the robot coordinate system to the world coordinate system; Accumulate laser point cloud data in multiple frames of world coordinate system; Based on the point cloud intensity threshold, the coordinates of high-intensity point clouds and low-intensity point clouds are screened out, and density clustering is performed to obtain multiple categories; From the multiple categories of the clustering results, remove the categories whose coverage is less than the set threshold, and iterate the remaining categories in turn; According to the coverage area of ​​the high-intensity point cloud, the corresponding point cloud area in the accumulated multi-frame laser point cloud data is determined as the candidate area of ​​the reflector; Transform the points of the candidate area onto a straight line, determine the leftmost and rightmost high-intensity points as the candidate starting position and the candidate ending position, and determine the value of each bit between the candidate starting position and the candidate ending position; The validity of the recognition result is verified. If the verification passes, the value of the barcode structure of the reflector is obtained; if the verification fails, it returns to iterate the remaining categories.

8. The method according to claim 7, characterized in that The determining the value of each bit between the candidate starting position and the candidate ending position includes: Divide the points between the candidate start position and the candidate end position into smaller areas; the width of each small area is 1 / n of the width of each bit, where n is an odd number; Count the average intensity of the point cloud in each small area, and record the small area with an average intensity higher than the point cloud intensity threshold as "1", otherwise it is recorded as "0"; Based on the values ​​of each small area, determine the value of each bit between the candidate starting position and the candidate ending position; wherein, among the n small areas corresponding to each bit, the value corresponding to the most central small area is the value of the current bit, and the values ​​in the n small areas corresponding to each bit must meet preset judgment conditions, and the preset judgment conditions include: when the value of the current bit is "1", the number of small areas with consecutive "1" is not less than a first threshold; when the value of the current bit is "0", the number of small areas with consecutive "0" is not less than a second threshold, and the first threshold is greater than the second threshold.

9. The method according to claim 8, characterized in that If the start bit and the end bit are both "101" structures, determining the value of each bit between the candidate start position and the candidate end position based on the values ​​of each small area includes: Identify the starting position: Scan rightward from the candidate starting position to find the leftmost "1...10...01...1" sequence, calculate the center of the middle part "0...0" as the position of "0" in the "101" structure corresponding to the starting position, and then shift n small areas forward and backward respectively to obtain the position of "1" in the "101" structure corresponding to the starting position; check whether the value distribution of the small area in each position meets the preset judgment condition, if so, it is determined that the starting position "101" is found, if not, continue to scan to the right; Identify the termination position: Scan leftward from the candidate termination position to find the rightmost "1...10...01...1" sequence, calculate the center of the middle part "0...0" as the position of "0" in the "101" structure corresponding to the termination position, and then shift n small areas forward and backward respectively to obtain the position of "1" in the "101" structure corresponding to the termination position; check whether the value distribution of the small area in each position meets the preset judgment condition, if so, it is determined that the termination position "101" is found, if not, continue to scan leftward; Verify the length of the barcode structure: Verify the length between the start bit "101" and the end bit "101". If the length is within the expected length error range of the pre-configured reflector model, continue to identify the data bit, otherwise end the identification; Identify data bits and check bits: start from the second "1" position in the start bit "101", shift back n small areas each time, take the corresponding value, and determine whether it meets the preset judgment condition. If it does, continue to identify, otherwise end the identification.

10. The method according to claim 7, characterized in that The verification of the validity of the recognition result includes: Verify whether the number of identified data bits and check bits matches the pre-configured reflector model; and verify whether the calculated check bit matches the identified check bit.

Citation Information

Patent Citations

  • Decoding barcodes

    CN110414293A

  • Information acquisition method and information acquisition system based on reflective coded label

    CN110414650A

  • Method and device for establishing map and electronic system

    CN112685527A

  • Robot, workstation identification method and system thereof, storage medium and workstation

    CN115587603A

  • Bar code applied to robot laser navigation and detection method thereof

    CN116341598A