A mapping method, device, electronic device, robot and storage medium
By installing image acquisition equipment on the robot and automatically identifying and adding tags, the problems of low efficiency in the existing technology and relying on human operations are solved, and efficient and accurate automatic map construction is achieved.
Patent Information
- Application Number
- CN202111369760.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-11-16
- Publication Date
- 2025-04-15
- Estimated Expiration
- 2041-11-16
AI Technical Summary
The existing tag scanning and drawing construction methods rely heavily on human operations, resulting in low map construction efficiency and requires artificial push of robots to various tags, increasing operational complexity.
Through the image acquisition device installed on the robot, the tag images in the work scene are obtained, the tags are automatically identified and added, the target moving position is determined, and the robot can automatically drive and tag addition are realized.
Reliance on manual labor is reduced, the process of drawing construction is simplified, the efficiency and accuracy of drawing construction is improved, and the impact of human judgment on label recognition and drawing construction is avoided.
Smart Images

Figure CN114119745B_ABST
Abstract
Description
Technical Field
[0001] Embodiments of the present invention relate to computer mapping technology, and more particularly to a mapping method, device, electronic device, robot and storage medium. Background Art
[0002] Robots are increasingly used in our daily lives, such as delivery robots and disinfection robots. In order to ensure that the robots can drive safely within a specified area, a map needs to be built before the robots are used, so that the robots can drive automatically according to the built map.
[0003] Currently, the commonly used mapping method is label mapping. The label mapping method is that the robot scans the labels in the environment and adds them to the map. However, the current label scanning mapping method requires workers to push the robot to scan the labels in the environment. The entire label scanning process is heavily dependent on manual operation, and the mapping efficiency is low. Summary of the invention
[0004] Embodiments of the present invention provide a mapping method, device, electronic device, robot and storage medium to improve the accuracy and efficiency of mapping.
[0005] In a first aspect, an embodiment of the present invention provides a mapping method, the method comprising:
[0006] Acquire a label image in the robot's working scene through an image acquisition device installed on the robot; wherein the label image includes at least one label;
[0007] Determining robot mapping information according to the label image; wherein the robot mapping information includes a current label position and a target moving position;
[0008] According to the current tag position, the corresponding current tag is added to the target map, and according to the target moving position, the robot is controlled to move.
[0009] Optionally, before obtaining the label image in the robot working scene through the image acquisition device installed on the robot, the method further includes:
[0010] Before placing the tag in the robot working environment, the pre-stored tag information of the tag is obtained through a tag scanning device; wherein the pre-stored tag information includes a tag code and / or a tag point arrangement mode;
[0011] The pre-stored tag information and the tag scanning sequence are stored in association.
[0012] Optionally, determining robot mapping information according to the label image includes:
[0013] Identify the label image, and obtain the current label position and current label information; wherein the current label information includes the current label code and / or the current label point arrangement;
[0014] Determines the recognition order of the current tag.
[0015] Optionally, according to the current label position, adding the corresponding current label to the target map includes:
[0016] Determining whether the current tag information exists in the pre-stored tag information;
[0017] If yes, determining the tag scanning order of the current tag according to the pre-stored tag information;
[0018] Determining whether the recognition order of the current tags is consistent with the tag scanning order;
[0019] If so, the current tag is added to the target map with a preset first icon according to the current tag position.
[0020] Optionally, after determining whether the recognition order of the current tags is consistent with the tag scanning order, the method further includes:
[0021] If not, adding the current tag to the target map with a preset second icon according to the current tag position;
[0022] Recording the number of tags of the second icon, and determining whether the number of tags of the second icon meets a preset reminder condition;
[0023] If so, a reminder message is issued.
[0024] Optionally, the label includes at least one label point of an infrared reflective material; and determining the robot mapping information according to the label image further includes:
[0025] According to a preset infrared recognition algorithm, determining whether there are other reflection positions in the label image except the current label position;
[0026] If so, the position is determined as the target moving position of the robot.
[0027] Optionally, if not, after adding the corresponding current label to the target map according to the current label position, the method further includes:
[0028] The robot is controlled to move to a preset end position and a mapping end message is issued.
[0029] Optionally, after controlling the robot to move according to the target moving position, the method further includes:
[0030] Determine whether the robot has reached the target moving position. If so, execute the image acquisition device installed on the robot to obtain the label image in the robot's working scene.
[0031] In a second aspect, an embodiment of the present invention further provides a mapping device, the device comprising:
[0032] A label image acquisition module, used to acquire a label image in the robot's working scene through an image acquisition device installed on the robot; wherein the label image includes at least one label;
[0033] A mapping information determination module, used to determine the robot mapping information according to the label image; wherein the robot mapping information includes the current label position and the target moving position;
[0034] The label adding module is used to add the corresponding current label to the target map according to the current label position, and control the movement of the robot according to the target moving position.
[0035] In a third aspect, an embodiment of the present invention further provides an electronic device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, a mapping method as described in any embodiment of the present invention is implemented.
[0036] In a fourth aspect, an embodiment of the present invention further provides a robot, wherein the robot is provided with the electronic device as described in the third aspect of the present invention.
[0037] In a fifth aspect, an embodiment of the present invention further provides a storage medium comprising computer executable instructions, which, when executed by a computer processor, are used to execute the mapping method as described in any embodiment of the present invention.
[0038] The embodiment of the present invention obtains the label image in the robot's working scene, determines the current label position to be added to the target map, and determines the position of the next label to be added as the robot's target moving position. The robot automatically goes to the target moving position, realizes the automatic addition of all labels in the working scene, and completes the robot's mapping. This solves the problem in the prior art that the robot needs to be manually pushed to each label, reduces dependence on manual labor, and simplifies the mapping process. It avoids the influence of human judgment on label recognition and mapping, improves the accuracy of labels, realizes intelligent recognition and label addition, and improves the efficiency and accuracy of mapping. BRIEF DESCRIPTION OF THE DRAWINGS
[0039] Figure 1 It is a schematic diagram of a flowchart of a mapping method in Embodiment 1 of the present invention;
[0040] Figure 2 is a flowchart of a mapping method in Embodiment 2 of the present invention;
[0041] Figure 3 is a schematic diagram of label point arrangement in the second embodiment of the present invention;
[0042] Figure 4 It is a schematic diagram of a flowchart of a mapping method in Embodiment 3 of the present invention;
[0043] Figure 5 is a structural block diagram of a mapping device in Embodiment 4 of the present invention;
[0044] Figure 6 It is a structural schematic diagram of a mapping device in Embodiment 5 of the present invention. DETAILED DESCRIPTION
[0045] The present invention will be further described in detail below in conjunction with the accompanying drawings and embodiments. It is to be understood that the specific embodiments described herein are only used to explain the present invention, rather than to limit the present invention. It should also be noted that, for ease of description, only parts related to the present invention, rather than all structures, are shown in the accompanying drawings.
[0046] Embodiment 1
[0047] Figure 1 This is a flow chart of a mapping method provided by the first embodiment of the present invention. This embodiment is applicable to the case where a robot recognizes and adds tags to build a map. The method can be executed by a mapping device. Figure 1 As shown, the method specifically comprises the following steps:
[0048] Step 110: Acquire a label image in the robot's working scene through an image acquisition device installed on the robot; wherein the label image includes at least one label.
[0049] The robot can move in the work scene to deliver meals and goods to people. In order to ensure that the robot can drive safely in the specified work scene, it is necessary to set a positioning tag in the work scene. Before the robot officially works, it builds a map based on the positioning tag so that it can drive automatically according to the built map.
[0050] The robot can be equipped with an image acquisition device, for example, the image acquisition device can be an infrared camera and an infrared light emitting device, a binocular stereo vision camera, etc. The image acquisition device can be used to acquire environmental images in the robot's working environment. Labels are pre-pasted or set in the robot's working environment. Therefore, the robot can acquire environmental images containing labels, that is, label images. For example, labels can be pasted on the ceiling, and the image acquisition device can be installed on the top of the robot, so the robot can obtain the label image of the ceiling. Multiple labels can be set within the acquisition range of the image acquisition device, so the label image can include one or more labels.
[0051] Step 120: Determine robot mapping information according to the label image; wherein the robot mapping information includes a current label position and a target moving position.
[0052] Among them, the label image is the environment image containing labels obtained by the robot. After obtaining the label image, the robot determines the robot mapping information from the label image. The robot mapping information may include the current label position that needs to be added to the target map. The current label is the label that the robot can currently clearly and completely identify. For example, the label image is collected by the camera, and the current label located directly above the robot is determined based on the preset K-means clustering algorithm. If it exists, the position of the current label in the label image can be identified, and the current label position of the current label in the target map can be obtained in combination with the current position of the robot in the working environment. The target map is the map of the working environment that the robot is building, and the current label is the label that the robot currently needs to add to the target map. For example, there are three labels attached to the environment, namely label one, label two and label three. The robot is located directly below label one and can clearly identify label one, so label one is the current label. That is, the label facing the top of the robot can be determined as the current label. The current label position is the coordinate position of the current label on the target map plane of the working environment. When the robot is facing the current label, the current label position is the current coordinate position of the robot.
[0053] The robot mapping information may also include the robot's target moving position, which may be represented as the position that the robot needs to reach next. The next target position of the robot's movement may be confirmed by the label image data collected by the infrared camera, for example, by collecting multiple label images and determining the next target position by static relative positioning, triangulation positioning, and the like. Specifically, when the label image contains multiple reflective areas, the reflective area located in the middle of the image may be set as the current label area. The reflective areas located at other positions are the label areas of the next label. The label area of the next label may be the complete next label or only part of the label points, which is not limited in the present invention. For the label area of the next label, the relative position relationship between the robot and the next label may be determined by its position in the label image, the current position information of the robot, the distance between the robot's image acquisition device and the label posting plane, the acquisition angle, and the like, thereby determining the next target position of the robot. The next target position may be the position directly below the next label. The current position information of the robot may be obtained based on the starting position of the map, IMU (Inertial Measurement Unit) data, mileage data, and the like. The robot's moving path can also be set in advance in the robot. After determining the current label position, the robot determines the position it needs to reach next according to the preset moving path as the target moving position. The target moving position can also be the position where the robot stops moving. For example, if there is no next label in the label image, it is determined that the label is added, and the robot can determine that the target moving position is the preset end position.
[0054] Step 130: According to the current tag position, the corresponding current tag is added to the target map, and the robot is controlled to move according to the target moving position.
[0055] Among them, after obtaining the current tag position, the corresponding coordinates in the target map are determined according to the information of the current tag position, and the current tag corresponding to the current tag position is added to the corresponding coordinates in the target map. According to the target moving position, the robot is controlled to automatically drive to the location of the next tag, so that the robot can automatically go to each tag and automatically add the identified tags to the target map to realize the automatic mapping of the robot.
[0056] The technical solution of this embodiment obtains the label image in the robot's working scene, determines the current label position to be added to the target map, and determines the position of the next label to be added as the robot's target moving position. The robot automatically moves to the target moving position, adds all labels in the working scene, and completes the robot's mapping. This solves the problem in the prior art that the robot needs to be manually pushed to each label, reduces dependence on manual labor, simplifies the mapping process, and improves mapping efficiency.
[0057] Embodiment 2
[0058] Figure 2 This is a flow chart of a mapping method provided by the second embodiment of the present invention. This embodiment is further optimized based on the above embodiment. The method can be executed by a mapping device. Figure 2 As shown, the method specifically comprises the following steps:
[0059] Step 210: Before setting the tag in the robot working environment, obtain the pre-stored tag information of the tag through a tag scanning device; wherein the pre-stored tag information includes the tag code and / or the tag point arrangement; the pre-stored tag information and the tag scanning order are associated and stored.
[0060] Before the robot builds a map, the staff has already set the labels in the robot's working environment. For example, the staff sticks the labels on the ceiling, and the robot recognizes the labels stuck on the ceiling to build a map. Before the staff sets the labels in the working environment, the information of the labels to be added can be stored in advance.
[0061] The tag to be added can be scanned by a tag scanning device to obtain the pre-stored tag information of the tag. The tag scanning device can be a device installed on the robot or a device independent of the robot. The pre-stored tag information can include the tag code and / or the tag point arrangement. The tag code and the tag point arrangement are in a one-to-one correspondence. The tag can be obtained by arranging and combining multiple tag points. Each tag has a unique tag code and a unique tag point arrangement. Figure 3It is a schematic diagram of the arrangement of label points. Exemplarily, a QR code can be set on each label paper, and the QR code information can include the label code, and / or the label pattern indicating the arrangement of the label points, so as to improve the scanning and storage efficiency. After obtaining the pre-stored label information of the label, the label scanning device associates and stores the pre-stored label information and the label scanning order for the convenience of the robot. In this embodiment, when the label is scanned by the label scanning device, the order of label scanning is not limited. The label scanning order can be predetermined and pre-scanned in a predetermined order; it can also be automatically generated in a real-time scanning order when scanning the label, as long as the scanning order and label information of each label can be obtained. And the order of the labels pasted in the working environment is consistent with the label scanning order, which ensures that the order of identifying labels is consistent with the order of pre-scanned labels when the robot builds the map.
[0062] Preferably, when the label image contains at least three complete labels, the current label can be determined according to the position of the label area. Then, the label information of the next label corresponding to the current label can be obtained according to the stored scanning order and the pre-stored label information, and compared with the label in the label image to determine the next label and the corresponding target moving position. In this way, the coherence of the map construction and the consistency of the label map construction and the scanning label order can be guaranteed.
[0063] Step 220: Acquire a label image in the robot's working scene through an image acquisition device installed on the robot; wherein the label image includes at least one label.
[0064] Among them, after storing the pre-stored label information and label scanning order, the staff will paste the labels in the robot working environment according to the label scanning order. The interval between each label is within the preset distance, so that when the robot is directly below the current label, it can collect the label after the current label. After the staff has pasted all the labels, they push the robot to the bottom of the first label, and the robot starts to automatically build a map. The robot obtains the label image in the robot working scene within the preset collection range through the image acquisition device. If the middle position of the label image is the current label, the next label after the current label may exist near the boundary of the label image.
[0065] Step 230: Determine robot mapping information according to the label image; wherein the robot mapping information includes a current label position and a target moving position.
[0066] Among them, the robot obtains the current label position and the target moving position according to the label image.
[0067] In this embodiment, optionally, determining the robot mapping information based on the label image includes: identifying the label image, obtaining the current label position and the current label information; wherein the current label information includes the current label code, and / or the current label point arrangement; and determining the recognition order of the current label.
[0068] Specifically, the label image can be identified according to a preset image recognition algorithm to determine whether the current label exists in the label image. For example, it can be identified whether there is a complete and clear label in the label image. If so, it can be determined that the label is the current label. If there is a current label, the current label position of the current label can be determined. The current label position refers to the coordinate position of the current label in the plane of the working environment. For example, the current label position can be obtained based on the height of the robot's image acquisition device, the acquisition angle, the height of the ceiling, and the position of the current label in the label image. If there is no current label, it can be determined that the robot has completed the mapping, or it can be determined that the robot has not moved to the label, and the robot continues to be controlled to move.
[0069] After the current label in the label image is identified, the current label information of the current label in the label image is obtained. The current label information may include the current label code and / or the current label point arrangement mode, and the current label code and the current label point arrangement mode correspond one to one. For example, the label point arrangement mode of the current label in the label image may be identified, or the QR code on the current label may be identified to obtain the current label code.
[0070] Each time a current tag is identified, the identification order of the current tag is recorded. The current tag information and the identification order can be recorded in association. For example, if tag number "001" is identified, which is the first tag identified, the identification order of tag number "001" is determined to be "1".
[0071] The beneficial effect of this setting is that the robot can automatically identify the current label position and current label information, and determine the recognition order of each label, without the need for manual operation, reducing dependence on manpower, simplifying the mapping process, and improving the efficiency of robot mapping.
[0072] In this embodiment, optionally, the label includes at least one label point of infrared reflective material; determining the robot mapping information based on the label image also includes: judging whether there are other reflective positions in the label image except the current label position according to a preset infrared recognition algorithm; if so, determining the position as the target moving position of the robot.
[0073] Specifically, the label can be obtained by arranging and combining multiple label points. The label point can be circular and made of infrared reflective material. After the infrared light emitting device around the infrared camera emits infrared light, the label point is reflected and presented in the image captured by the infrared camera. After obtaining the label image, the robot can identify the label position that reflects infrared light from the label image according to a preset infrared recognition algorithm, such as the K-means algorithm. The position of the label image that reflects infrared light may include the current label position. If the label image contains the next label of the current label, then the label image contains other reflection positions other than the current label position. It is determined whether there are other reflection positions other than the current label position in the label image. If not, it is determined that there is no next label in the label image, then the current label can be determined to be the last label, and the robot ends the mapping. If so, the other reflection positions are determined to be the target moving positions of the robot. The beneficial effect of such a setting is that the robot can determine the position of the next label while identifying the current label, without the need for the staff to push the robot or notify the robot of the target moving position, which effectively saves manpower and improves the robot's mapping efficiency. In addition, the infrared reflection is stable, the label cost is low, and it is suitable for robot indoor mapping and positioning.
[0074] Step 240: According to the current tag position, the corresponding current tag is added to the target map, and the robot is controlled to move according to the target moving position.
[0075] The robot determines the position of the current tag on the target map and adds the current tag to the target map. Each time the robot recognizes a current tag, it adds it to the target map. After adding, it continues to search for unadded tags according to the target moving position until the map is built.
[0076] In this embodiment, optionally, according to the current tag position, the corresponding current tag is added to the target map, including: determining whether the current tag information exists in the pre-stored tag information; if so, determining the tag scanning order of the current tag according to the pre-stored tag information; determining whether the recognition order of the current tag is consistent with the tag scanning order; if so, adding the current tag to the target map with a preset first icon according to the current tag position.
[0077] Specifically, after identifying the current label, obtain the current label information of the current label, obtain the current label code and / or the current label point arrangement, and determine the actual recognition order of the current label. Compare the current label information with the pre-stored label information to determine whether the current label information exists in the pre-stored label information. If not, it is determined that the current label recognition error is made, and a prompt message can be sent to the staff, or the recognition can be performed again; if so, it is determined that the current label is a pre-scanned label, and the pre-stored label information of the current label is searched to determine the label scanning order of the current label. Compare the actual recognition order of the current label with the pre-stored label scanning order to determine whether the recognition order of the current label is consistent with the label scanning order. If so, it is determined that the recognition order of the current label is the correct order, and the current label is the label that needs to be added to the target map. According to the current label position, add the current label to the target map. It can be added with the preset first icon. For example, if the first icon is a green logo, the current label is added with a green logo, and the label code and other information of the current label can also be marked next to the green logo. The beneficial effect of this setting is that according to the pre-stored tag information and tag scanning order, it can reduce the interference caused by misidentification, determine whether the identified tag is correct, and improve the accuracy of the tag. And there is no need for manual verification by staff, which reduces the dependence on manpower and improves the accuracy and efficiency of mapping.
[0078] In this embodiment, optionally, after determining whether the recognition order of the current label and the label scanning order are consistent, it also includes: if not, adding the current label to the target map with a preset second icon according to the current label position; recording the number of labels of the second icon, and determining whether the number of labels of the second icon meets the preset reminder condition; if so, issuing a reminder message to facilitate the user to correct the erroneous label in time.
[0079] Specifically, if the recognition order of the current label is inconsistent with the label scanning order, it is determined that the current label recognized by the robot is wrong. For example, the robot should currently recognize the second label, but actually recognizes the third label, so it is determined that the current label recognized by the robot is wrong. After determining that the current label is wrong, the robot can add the current label to the target map with a preset second icon according to the current label position. For example, the current label is added to the target map with a red mark. The robot can record the number of labels of the second icon in real time. The second icon number threshold is preset as a reminder condition. The number of labels of the second icon currently existing in the target map is compared with the preset second icon number threshold in real time or regularly, and according to the comparison result, it is determined whether it is necessary to remind the staff to check. For example, the reminder condition can be that when the number of labels of the second icon recorded continuously is 3, the robot pops up a window reminder or remotely synchronizes to the web page for reminder; when the number of labels of the second icon recorded cumulatively is 10, the robot pops up a window reminder or remotely synchronizes to the web page for reminder; if the recorded second icon label does not reach the preset second icon number threshold, the staff can be reminded to confirm and correct it after the scanning and mapping is completed. The beneficial effect of this setting is that it can record erroneous labels in real time, send reminders to staff in a timely manner, reduce robot mapping errors, and improve mapping efficiency and accuracy.
[0080] In this embodiment, optionally, if there are no other reflection positions except the current label position in the label image, then after adding the corresponding current label to the target map according to the current label position, it also includes: controlling the robot to move to a preset end position and issuing a map construction end information.
[0081] Specifically, if it is determined that there are no other reflection positions in the label image, the current label is determined to be the last label that has not been identified in the working environment. After the robot adds the last label to the target map, the robot completes the mapping. An end position can be preset. After the robot completes the mapping, the robot can automatically move to the end position and send a mapping end message to remind the staff to check. The robot can also stay in place after the mapping is completed and send a mapping end message. The beneficial effect of this setting is that the robot can automatically determine whether the mapping is completed, and the movement during the mapping process is completely autonomous, without the need for staff intervention, and the intelligent mapping is realized. Preferably, the preset end position is the position of the first label added during the robot mapping process, that is, the starting position of the mapping, which can not only facilitate the user to operate the robot, but also determine whether the mapping is accurate based on whether there is a deviation in the corresponding position after the robot returns to the starting position.
[0082] In an embodiment of the present invention, the label is pre-scanned before the robot works, and the label scanning order and pre-stored label information are stored. The staff then pastes the label in the working environment, and the robot obtains the label image in the working scene, determines the current label position to be added to the target map, and determines the position of the next label to be added as the target moving position of the robot. The robot determines whether the current label is the correct label based on the pre-stored information. If so, the label is added and automatically goes to the target moving position to achieve the addition of all labels in the working scene and complete the robot's mapping. The problem of the prior art that the robot needs to be manually pushed to each label is solved, the dependence on manual labor is reduced, and the mapping process is simplified. By comparing the label scanning order with the recognition order, the influence of human judgment on label recognition and mapping is effectively avoided, the accuracy of the label is improved, and intelligent recognition and label addition are realized, thereby improving the efficiency and accuracy of mapping.
[0083] Embodiment 3
[0084] Figure 4 This is a flow chart of a mapping method provided by Embodiment 3 of the present invention. This embodiment is further optimized based on the above embodiment. The method can be executed by a mapping device. Figure 4 As shown, the method specifically comprises the following steps:
[0085] Step 410: Acquire a label image in the robot's working scene through an image acquisition device installed on the robot; wherein the label image includes at least one label.
[0086] Step 420: Determine robot mapping information according to the label image; wherein the robot mapping information includes a current label position and a target moving position.
[0087] Step 430: According to the current tag position, the corresponding current tag is added to the target map, and the robot is controlled to move according to the target moving position.
[0088] Step 440, determine whether the robot has reached the target moving position, and if so, obtain the label image in the robot's working scene through the image acquisition device installed on the robot.
[0089] The robot's image acquisition device can acquire images in real time. After the staff pastes the labels, they place the robot directly below the first label. The robot starts to acquire images and can identify the next label at the boundary of the label image. The robot moves toward the target position of the next label and gradually approaches the next label.
[0090] In the process of moving to the next label, the robot can continuously obtain label images and process the label images. The arrangement of the label points of the next label in the label image becomes clearer and clearer. The next target position can be corrected in the process of approaching, so that the robot can accurately drive to the bottom of the next label. The robot can identify the complete next label before reaching the bottom of the next label point, which is conducive to early judgment of the correctness of the next label and improve the robot's mapping efficiency.
[0091] The robot can also perform image acquisition at a fixed time or point. For example, the robot can obtain its current position in real time and determine whether the current position is the target moving position. The target moving position can be the position directly below the label. For example, the robot determines that the target moving position is 2 meters away from the current position through the label image, then the robot moves 2 meters toward the target moving position and determines that it has reached the target moving position. If the current position of the robot reaches the target moving position, a new label image is obtained through the image acquisition device, and the new label image is identified and judged; if it is not at the target moving position, the robot continues to move without shooting, so as to avoid the robot shooting too many useless label images, resulting in a waste of storage space and power.
[0092] The embodiment of the present invention obtains the label image in the robot's working scene, determines the current label position to be added to the target map, and determines the position of the next label to be added as the robot's target moving position. The robot automatically goes to the target moving position, shoots the label image at a fixed point, saves space and energy, and automatically adds all labels in the working scene to complete the robot's mapping. This solves the problem in the prior art that humans need to push the robot to each label, reduces dependence on manual labor, and simplifies the mapping process. It avoids the influence of human judgment on label recognition and mapping, improves the accuracy of labels, realizes intelligent recognition and label addition, and improves the efficiency and accuracy of mapping.
[0093] Embodiment 4
[0094] Figure 5 This is a structural block diagram of a mapping device provided in the fourth embodiment of the present invention, which can execute a mapping method provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects of the execution method. Figure 5 As shown, the device specifically includes:
[0095] The label image acquisition module 501 is used to acquire a label image in the robot working scene through an image acquisition device installed on the robot; wherein the label image includes at least one label;
[0096] A mapping information determination module 502 is used to determine the robot mapping information according to the label image; wherein the robot mapping information includes the current label position and the target moving position;
[0097] The tag adding module 503 is used to add the corresponding current tag to the target map according to the current tag position, and control the movement of the robot according to the target moving position.
[0098] Optionally, the device further comprises:
[0099] A pre-stored tag information acquisition module is used to acquire the pre-stored tag information of the tag through a tag scanning device before setting the tag in the robot working environment; wherein the pre-stored tag information includes a tag code and / or a tag point arrangement mode;
[0100] The pre-stored tag information storage module is used to associate and store the pre-stored tag information with the tag scanning sequence.
[0101] Optionally, the mapping information determination module 502 includes:
[0102] A label image recognition unit, used to recognize the label image, obtain the current label position and current label information; wherein the current label information includes the current label code and / or the current label point arrangement mode;
[0103] The recognition order determination unit is used to determine the recognition order of the current tag.
[0104] Optionally, the tag adding module 503 includes:
[0105] A current label information determination unit, used to determine whether the current label information exists in the pre-stored label information;
[0106] a tag scanning order determining unit, configured to determine a tag scanning order of the current tag according to the pre-stored tag information;
[0107] A label scanning sequence determination unit, for determining whether the recognition sequence of the current label is consistent with the label scanning sequence;
[0108] The first icon adding unit is used to add the current label to the target map with a preset first icon according to the current label position.
[0109] Optionally, the tag adding module 503 further includes:
[0110] A second icon adding unit is used to, after determining whether the recognition order of the current tag is consistent with the tag scanning order, if not, add the current tag to the target map with a preset second icon according to the current tag position;
[0111] A second icon recording unit, used to record the number of tags of the second icon, and determine whether the number of tags of the second icon meets a preset reminder condition;
[0112] The reminder information sending unit is used to send a reminder message if yes.
[0113] Optionally, the label includes at least one label point of an infrared reflective material; the mapping information determination module 502 further includes:
[0114] Other reflection position determination units, used for determining whether there are other reflection positions other than the current label position in the label image according to a preset infrared recognition algorithm;
[0115] The target moving position determining unit is used to determine the position as the target moving position of the robot if so.
[0116] Optionally, if there is no other reflection position except the current label position in the label image, the device further includes:
[0117] The map construction end module is used to control the robot to move to a preset end position and send a map construction end message after adding the corresponding current label to the target map according to the current label position.
[0118] Optionally, the device further comprises:
[0119] The target moving position judgment module is used to judge whether the robot has reached the target moving position after controlling the robot to move according to the target moving position. If so, the image acquisition device installed on the robot is used to obtain the label image in the robot's working scene.
[0120] The embodiment of the present invention obtains the label image in the robot's working scene, determines the current label position to be added to the target map, and determines the position of the next label to be added as the robot's target moving position. The robot automatically moves to the target moving position to add all labels in the working scene and complete the robot's mapping. This solves the problem in the prior art that the robot needs to be manually pushed to each label, reduces dependence on manual labor, and simplifies the mapping process. It avoids the influence of human judgment on label recognition and mapping, improves the accuracy of labels, realizes intelligent recognition and label addition, and improves the efficiency and accuracy of mapping.
[0121] Embodiment 5
[0122] Figure 6 Schematic diagram of the structure of a mapping device provided in Embodiment 5 of the present invention. The mapping device is an electronic device. Figure 6 A block diagram of an exemplary electronic device 600 suitable for implementing embodiments of the present invention is shown. Figure 6 The electronic device 600 shown is only an example and should not bring any limitation to the functions and scope of use of the embodiments of the present invention.
[0123] like Figure 6 As shown, the electronic device 600 is in the form of a general computing device. The components of the electronic device 600 may include but are not limited to: one or more processors or processing units 601, a system memory 602, and a bus 603 connecting different system components (including the system memory 602 and the processing unit 601).
[0124] Bus 603 represents one or more of several types of bus structures, including a memory bus or memory controller, a peripheral bus, an accelerated graphics port, a processor or a local bus using any of a variety of bus structures. For example, these architectures include but are not limited to Industry Standard Architecture (ISA) bus, Micro Channel Architecture (MAC) bus, Enhanced ISA bus, Video Electronics Standards Association (VESA) local bus and Peripheral Component Interconnect (PCI) bus.
[0125] The electronic device 600 typically includes a variety of computer system readable media. These media can be any available media that can be accessed by the electronic device 600, including volatile and non-volatile media, removable and non-removable media.
[0126] The system memory 602 may include computer system readable media in the form of volatile memory, such as random access memory (RAM) 604 and / or cache memory 605. The electronic device 600 may further include other removable / non-removable, volatile / non-volatile computer system storage media. By way of example only, the storage system 606 may be used to read and write non-removable, non-volatile magnetic media ( Figure 6 not shown, usually called a "hard drive"). Although Figure 6 Not shown in the figure, a disk drive for reading and writing to a removable non-volatile disk (e.g., a "floppy disk"), and an optical disk drive for reading and writing to a removable non-volatile optical disk (e.g., a CD-ROM, a DVD-ROM, or other optical media) may be provided. In these cases, each drive may be connected to bus 603 via one or more data medium interfaces. Memory 602 may include at least one program product having a set (e.g., at least one) of program modules that are configured to perform the functions of various embodiments of the present invention.
[0127] A program / utility 608 having a set (at least one) of program modules 607 may be stored, for example, in the memory 602, such program modules 607 including but not limited to an operating system, one or more application programs, other program modules, and program data, each of which or some combination may include an implementation of a network environment. The program modules 607 generally perform the functions and / or methods of the embodiments described herein.
[0128] The electronic device 600 may also communicate with one or more external devices 609 (e.g., keyboard, pointing device, display 610, etc.), one or more devices that enable a user to interact with the electronic device 600, and / or any device that enables the electronic device 600 to communicate with one or more other computing devices (e.g., network card, modem, etc.). Such communication may be performed through an input / output (I / O) interface 611. Furthermore, the electronic device 600 may also communicate with one or more networks (e.g., local area network (LAN), wide area network (WAN) and / or public network, such as the Internet) through a network adapter 612. Figure 6 As shown, the network adapter 612 communicates with other modules of the electronic device 600 via the bus 603. It should be understood that although Figure 6 Not shown, other hardware and / or software modules may be used in conjunction with electronic device 600, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems.
[0129] The processing unit 601 executes various functional applications and data processing by running the program stored in the system memory 602, for example, implementing a mapping method provided by an embodiment of the present invention, including:
[0130] Acquire a label image in the robot's working scene through an image acquisition device installed on the robot; wherein the label image includes at least one label;
[0131] Determining robot mapping information according to the label image; wherein the robot mapping information includes a current label position and a target moving position;
[0132] According to the current tag position, the corresponding current tag is added to the target map, and according to the target moving position, the robot is controlled to move.
[0133] Embodiment 6
[0134] Embodiment 6 of the present invention provides a robot, on which an electronic device 600 is provided, which can implement the mapping method provided by any embodiment of the present invention.
[0135] Embodiment 7
[0136] Embodiment 7 of the present invention further provides a storage medium containing computer executable instructions, on which a computer program is stored. When the program is executed by a processor, a mapping method provided in the embodiment of the present invention is implemented, including:
[0137] Acquire a label image in the robot's working scene through an image acquisition device installed on the robot; wherein the label image includes at least one label;
[0138] Determining robot mapping information according to the label image; wherein the robot mapping information includes a current label position and a target moving position;
[0139] According to the current tag position, the corresponding current tag is added to the target map, and according to the target moving position, the robot is controlled to move.
[0140] The computer storage medium of the embodiment of the present invention can adopt any combination of one or more computer-readable media. The computer-readable medium can be a computer-readable signal medium or a computer-readable storage medium. The computer-readable storage medium can be, for example, but not limited to, a system, device or device of electricity, magnetism, light, electromagnetic, infrared, or semiconductor, or any combination of the above. More specific examples (non-exhaustive list) of computer-readable storage media include: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In this document, a computer-readable storage medium can be any tangible medium containing or storing a program, which can be used by an instruction execution system, a device or a device or used in combination with it.
[0141] Computer-readable signal media may include data signals propagated in baseband or as part of a carrier wave, which carry computer-readable program code. Such propagated data signals may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. Computer-readable signal media may also be any computer-readable medium other than a computer-readable storage medium, which may send, propagate, or transmit a program for use by or in conjunction with an instruction execution system, apparatus, or device.
[0142] The program code embodied on the computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
[0143] Computer program code for performing the operations of the present invention may be written in one or more programming languages or a combination thereof, including object-oriented programming languages such as Java, Smalltalk, C++, and conventional procedural programming languages such as "C" or similar programming languages. The program code may be executed entirely on the user's computer, partially on the user's computer, as a separate software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., through the Internet using an Internet service provider).
[0144] Note that the above are only preferred embodiments of the present invention and the technical principles used. Those skilled in the art will understand that the present invention is not limited to the specific embodiments described herein, and that various obvious changes, readjustments and substitutions can be made by those skilled in the art without departing from the scope of protection of the present invention. Therefore, although the present invention has been described in more detail through the above embodiments, the present invention is not limited to the above embodiments, and may include more other equivalent embodiments without departing from the concept of the present invention, and the scope of the present invention is determined by the scope of the appended claims.
Claims
1. A mapping method, characterized in that: include: Before placing the tag in the robot working environment, the pre-stored tag information of the tag is obtained through a tag scanning device; wherein the pre-stored tag information includes a tag code and / or a tag point arrangement mode; The pre-stored tag information and the tag scanning sequence are stored in association; Acquire a label image in the robot's working scene through an image acquisition device installed on the robot; wherein the label image includes at least one label; Determining robot mapping information according to the label image includes: identifying the label image, obtaining a current label position and current label information; wherein the current label information includes a current label code and / or a current label point arrangement; determining a recognition order of the current label; wherein the robot mapping information includes the current label position and a target moving position; According to the current tag position, the corresponding current tag is added to the target map, and according to the target moving position, the robot is controlled to move; Wherein, adding the corresponding current tag to the target map according to the current tag position includes: Determining whether the current tag information exists in the pre-stored tag information; If yes, determining the tag scanning order of the current tag according to the pre-stored tag information; Determining whether the recognition order of the current tags is consistent with the tag scanning order; If so, the current tag is added to the target map with a preset first icon according to the current tag position.
2. The method according to claim 1, characterized in that When the label image includes at least three complete labels, the current label is determined according to the position of the label area.
3. The method according to claim 1, characterized in that After determining whether the recognition order of the current tags is consistent with the tag scanning order, the method further includes: If not, adding the current tag to the target map with a preset second icon according to the current tag position; Recording the number of tags of the second icon, and determining whether the number of tags of the second icon meets a preset reminder condition; If so, a reminder message is issued.
4. The method according to claim 3, characterized in that: The preset reminder conditions include: when the number of labels of the second icon recorded continuously is 3, the robot is controlled to make a pop-up reminder or remotely synchronize to the web page for reminder; when the cumulative number of labels of the second icon recorded is 10, the robot is controlled to make a pop-up reminder or remotely synchronize to the web page for reminder; if the recorded labels of the second icon do not reach the preset second icon quantity threshold, the staff will be reminded to confirm and correct after the scanning and mapping is completed.
5. The method according to claim 1, characterized in that: The label includes at least one label point of infrared reflective material; Determining robot mapping information according to the label image also includes: According to a preset infrared recognition algorithm, determining whether there are other reflection positions in the label image except the current label position; If so, the position is determined as the target moving position of the robot.
6. The method according to claim 5, characterized in that If not, after adding the corresponding current label to the target map according to the current label position, the method further includes: The robot is controlled to move to a preset end position and a mapping end message is issued.
7. The method according to claim 6, characterized in that The preset end position is the position of the first label added during the robot mapping process.
8. The method according to claim 1, characterized in that: After controlling the robot to move according to the target moving position, the method further includes: Determine whether the robot has reached the target moving position. If so, execute the image acquisition device installed on the robot to obtain the label image in the robot's working scene.
9. A mapping device, characterized in that: include: A pre-stored tag information acquisition module is used to acquire the pre-stored tag information of the tag through a tag scanning device before setting the tag in the robot working environment; wherein the pre-stored tag information includes a tag code and / or a tag point arrangement mode; A pre-stored tag information storage module, used for storing the pre-stored tag information and the tag scanning sequence in association; A label image acquisition module, used to acquire a label image in the robot's working scene through an image acquisition device installed on the robot; wherein the label image includes at least one label; A mapping information determination module, used to determine the robot mapping information according to the label image; wherein the robot mapping information includes the current label position and the target moving position; The mapping information determination module includes: a label image recognition unit and a recognition order determination unit; The label image recognition unit is used to recognize the label image and obtain the current label position and current label information; wherein the current label information includes the current label code and / or the current label point arrangement mode; The recognition order determination unit is used to determine the recognition order of the current tags; A label adding module, used for adding the corresponding current label to the target map according to the current label position, and controlling the movement of the robot according to the target moving position; The label adding module includes: A current label information determination unit, used to determine whether the current label information exists in the pre-stored label information; a tag scanning order determining unit, configured to determine a tag scanning order of the current tag according to the pre-stored tag information; A tag scanning sequence determination unit, used to determine whether the recognition sequence of the current tag is consistent with the tag scanning sequence; The first icon adding unit is used to add the current label to the target map with a preset first icon according to the current label position.
10. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the program, the mapping method as described in any one of claims 1 to 8 is implemented.
11. A robot, characterized in that: The robot is provided with the electronic device according to claim 10.
12. A storage medium containing computer executable instructions, characterized in that: The computer executable instructions are used to perform the mapping method as described in any one of claims 1 to 8 when executed by a computer processor.
Citation Information
Patent Citations
Color block tag-based localization and mapping method and device thereof
CN106537169A