A vision-guided robot control method, device, and medium

By establishing target local maps and candidate local maps, and using feature comparison to determine the robot's initial position, the problems of large GPS positioning errors and high computational load of visual sensors are solved, achieving precise positioning and low computational load robot control.

CN121018581BActive Publication Date: 2026-01-30SHANGHAI CHAOSHI CONSTR TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202511479675.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-10-16
Publication Date
2026-01-30
Estimated Expiration
2045-10-16

AI Technical Summary

Technical Problem

In environments with poor communication signals or small areas, GPS positioning errors are large, and existing visual sensor methods require a large amount of computation, making it difficult to accurately obtain the robot's initial position.

Method used

Establish target local maps and candidate local maps, and determine the robot's initial position through feature comparison to reduce the amount of image data processing.

Benefits of technology

It improves the accuracy of the robot's initial position, reduces the amount of image data processing, and reduces the computational burden.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121018581B_ABST
    Figure CN121018581B_ABST
Patent Text Reader

Abstract

This invention provides a vision-guided robot control method, device, and medium. The method includes: establishing a target local map based on images of several objects at the initial position of the target robot; determining the corresponding target object type and target object based on the object types corresponding to several nodes in the target local map; if the object type of any object in the target region is the target object type, then the object is determined as a candidate object, and a candidate region corresponding to the candidate object is established; establishing a candidate local map corresponding to the candidate region based on the relative position information between several objects in the candidate region; controlling the target robot to move by comparing features between the target local map and each candidate local map; determining the position information of the initial position by performing feature analysis on the images of several objects corresponding to the initial position and refining the determined candidate region, thereby reducing the amount of image data processing.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the field of robot control, in particular to a robot control method based on visual guidance, a device and a medium. BACKGROUND

[0002] The current robot control method first obtains the initial position of the robot through positioning, and then plans and navigates the initial position and the target position. The positioning of the initial position is realized by GPS (Global Positioning System) positioning. However, in an environment with poor communication signals or a relatively small area, the GPS positioning has errors, and only the robot in an area can be known, but the coordinate information of the initial position of the robot cannot be accurately obtained. In addition, in the prior art, there is also a method of positioning the initial position by acquiring images of the initial position through a visual sensor or a visual acquisition device, that is, a plurality of environment images of the initial position are acquired, and the plurality of environment images are compared with the images of each object or each sub-region in the database in the area to obtain the coordinate information of the initial position of the robot. However, this method requires a large amount of calculation and processing of image data because it compares and analyzes with all the image data in the area. Therefore, if the scene of the area where the robot is located is too large, or there are too many objects in the area, the image data in the area will also increase accordingly, so this method requires a large amount of calculation and processing of image data, and the system computing power is also occupied. SUMMARY

[0003] To solve the above technical problems, the technical solution adopted by the present application is as follows:

[0004] According to one aspect of the present application, a robot control method based on visual guidance is provided, comprising:

[0005] establishing a target local graph according to the images of a plurality of objects in the surrounding scene of the initial position obtained by the target robot at the initial position in the target area; the nodes in the target local graph represent the objects in the surrounding scene of the initial position; and the edges between any two nodes in the target local graph represent the interval distance between the two objects corresponding to the two nodes.

[0006] traversing each node in the target local graph, if the object type of the object corresponding to any node is a preset type, and the number of object types corresponding to the node is the smallest in the number of object types corresponding to a plurality of nodes in the target local graph, the object type corresponding to the node is determined as a target object type, and the object corresponding to the node is determined as a target object.

[0007] traversing the object type of each object in the target area, if the object type of any object is the target object type, the object is determined as a candidate object.

[0008] a candidate region corresponding to each candidate object is established, taking each candidate object as a center point and taking a distance between the target object and the farthest object as a region radius, the farthest object being an object farthest from the target object among objects corresponding to the object images;

[0009] a candidate local graph corresponding to each candidate region is established according to relative position information among the objects in each candidate region, a node in the candidate local graph representing an object in the candidate region corresponding to the candidate local graph, and an edge between two nodes in the candidate local graph representing an interval distance between the objects corresponding to the two nodes;

[0010] a feature comparison is performed between the target local graph and each candidate local graph to control the target robot to move from an initial position to a preset target position.

[0011] According to another aspect of the present application, a non-transitory computer readable storage medium is provided, the storage medium storing at least one instruction or at least one program, the at least one instruction or the at least one program being loaded and executed by a processor to implement the aforementioned robot control method based on visual guidance.

[0012] According to still another aspect of the present application, an electronic device is provided, comprising a processor and the aforementioned non-transitory computer readable storage medium.

[0013] The present application has at least the following beneficial effects:

[0014] The robot control method based on visual guidance provided by the present application first acquires images of a plurality of objects in the surrounding scene of the initial position of the target robot in the target region according to the initial position, establishes a target local graph corresponding to the initial position, wherein the nodes in the target local graph represent the objects in the surrounding scene of the initial position, and the edges between any two nodes in the target local graph represent the interval distance between the two objects corresponding to the two nodes, the target local graph is established through the distance between the objects around the initial position, and then each node in the target local graph is traversed, if the object type of any node corresponding object is a preset type, and the number of the object type of the node corresponding object is the smallest in the number of the object types of a plurality of nodes corresponding objects in the target local graph, the object type of the node corresponding object is determined as the target object type, the object corresponding to the node is determined as the target object, and the object type of each object in the target region is traversed, if the object type of any object is the target object type, the object is determined as the candidate object, each candidate object is taken as the center point, the distance between the target object and the farthest object (the object farthest from the target object in a plurality of object images corresponding to a plurality of objects) is taken as the region radius, a candidate region corresponding to each candidate object is established, and a candidate local graph corresponding to each candidate region is established according to the relative position information between a plurality of objects in each candidate region, finally, the initial position of the target robot is determined by comparing the features of the target local graph and each candidate local graph, and the target robot is controlled to move from the initial position to the preset target position, the feature analysis is performed on a plurality of object images in the surrounding scene of the initial position of the target robot, the candidate regions conforming to the object arrangement rule of the scene where the initial position is located are determined from the target region, and the object position information in these candidate regions is refined and analyzed to determine the position information of the initial position, without performing full image analysis on the target region as in the traditional robot control method, compared with the traditional robot control method, the processing amount of image data is reduced. BRIEF DESCRIPTION OF DRAWINGS

[0015] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings needed in the embodiment description will be briefly introduced as follows. Obviously, the drawings in the following description are only some embodiments of the present application, and other drawings can also be obtained by those skilled in the art without creative effort.

[0016] Figure 1 The flowchart of the robot control method based on visual guidance provided by the present application is provided.

[0017] Figure 2 The flowchart of the determination step of the target local graph in the robot control method based on visual guidance provided by the present application is provided.

[0018] Figure 3 A flowchart of the determination step of the candidate local map in the robot control method based on visual guidance provided by the embodiments of the present application. DETAILED DESCRIPTION

[0019] The technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments of the present application. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative work fall within the scope of protection of the present application.

[0020] The present application provides a robot control method based on visual guidance, as shown in the accompanying drawings, comprising: Figure 1

[0021] Step S100, establishing a target local map according to images of a plurality of objects in the surrounding scene of the initial position acquired by the target robot at the initial position in the target area;

[0022] The target robot is a robot that needs to be controlled by visual guidance, and the target area is the area where the target robot is located. The initial position is the position where the target robot stays when it is not controlled by navigation.

[0023] The nodes in the target local map represent the objects in the surrounding scene of the initial position, and the edges between any two nodes in the target local map represent the interval distance between the two objects corresponding to the two nodes.

[0024] Further, as shown in the accompanying drawings, in step S100, the target local map is established according to the images of a plurality of objects in the surrounding scene of the initial position acquired by the target robot at the initial position in the target area, comprising steps S110-S190: Figure 2

[0025] Step S110, in response to receiving the movement control instruction sent by the target robot, controlling the target robot to collect object images of a plurality of objects in the surrounding scene of the initial position through a visual collection device;

[0026] The visual collection device can be an image camera device, and the surrounding scene of the initial position includes a 360-degree scene scanned by the target robot at the initial position to acquire images of the objects that can be collected in the surrounding scene.

[0027] Step S120, performing denoising processing on the plurality of object images to obtain a plurality of corresponding processed images;

[0028] ​​The object image is denoised to remove noise points and abnormal points (i.e. non-object feature points) in the object image, so as to facilitate subsequent determination of the object feature contour, and make the determined object clearer and more accurate.

[0029] In step S130, a plurality of object edge features included in each processed image are extracted, if the plurality of object edge features are preset object image features corresponding to the object, an object corresponding to a region surrounded by the plurality of object edge features is determined as an object corresponding to the object image features corresponding to the object, and an object type of the object corresponding to the region surrounded by the plurality of object edge features is determined as an object type of the object corresponding to the object image features corresponding to the object.

[0030] The object type is a type corresponding to the object, which can be divided by use or by size.

[0031] In step S140, object identifiers of objects corresponding to a plurality of object images are taken as nodes.

[0032] In step S150, a connection line between any two objects in the plurality of objects corresponding to the plurality of object images is taken as an edge between nodes corresponding to the two objects.

[0033] In step S160, each object corresponding to the plurality of object images is traversed, a preset node weight of an object type corresponding to any object is determined as a node weight of a node corresponding to the object, and a preset edge weight of the object type corresponding to the object is determined as an edge weight of an edge connected to the node corresponding to the object.

[0034] The node weight and the edge weight of the object type corresponding to the movable object are smaller than the node weight and the edge weight of the object type corresponding to the immovable object.

[0035] Since the object corresponding to the movable object type can move in the target region at any time, in order to facilitate subsequent accurate determination of the initial position, the node weight and the edge weight of the object corresponding to the movable object type need to be adjusted to be lower, so as to reduce the influence of the object of the movable object type on the determination of the initial position.

[0036] The object of the movable object type is an object that is easy to carry or has strong mobility, which can include a chair, a flowerpot, etc.

[0037] The object of the immovable object type is an object that is not easy to carry or has strong fixation, which can include an office table, a slogan on a wall, etc.

[0038] Each object type corresponds to a preset node weight and edge weight, which is used for subsequent feature extraction of the target local graph to obtain a corresponding feature vector, to adjust the attention degree of each node and each edge in the feature vector, so that the determined feature vector can better reflect the characteristics of each node and edge in the target local graph.

[0039] In step S160, the preset edge weight of the object type corresponding to the object is determined as the edge weight of the edge connected by the node corresponding to the object, including steps S161-S162:

[0040] In step S161, if the object type corresponding to the object is the same as the object type corresponding to the object corresponding to the node connected by the node corresponding to the object, the edge weight corresponding to the object type is determined as the edge weight of the edge connected by the two nodes.

[0041] In step S162, if the object type corresponding to the object is different from the object type corresponding to the object corresponding to the node connected by the node corresponding to the object, the smaller edge weight of the edge weight corresponding to the two object types is determined as the edge weight of the edge connected by the two nodes.

[0042] In step S170, the node weight corresponding to any node is taken as the attribute information of the node.

[0043] In step S180, the edge weight of any edge and the interval distance between the center points of the two objects corresponding to the two nodes connected by the edge are taken as the attribute information of the edge.

[0044] In step S190, a target local graph is established according to the nodes corresponding to the objects corresponding to the plurality of object images and the edges connected between the plurality of nodes.

[0045] In step S200, each node in the target local graph is traversed, if the object type corresponding to any node is a preset type, and the number of object types corresponding to the node is the smallest in the number of object types corresponding to the plurality of nodes in the target local graph, the object type corresponding to the node is determined as the target object type, and the object corresponding to the node is determined as the target object.

[0046] The preset type can be a non-movable object type. Since the object of the non-movable object type has strong fixation and generally does not move in the target region, the determination accuracy of the initial position can be improved by taking the object of the non-movable object type as the reference point determined by the initial position. In addition, the object type with the smallest proportion in the number of object types corresponding to a plurality of nodes in the target local map (for example, an office table) is selected as the target object type (for example, A, B, C three object types are non-movable object types, and the object corresponding to A has three nodes in the target local map, the object corresponding to B has four nodes in the target local map, and the object corresponding to C has two nodes in the target local map, and C is determined as the target object type), which can further reduce the data processing amount of subsequent feature comparison.

[0047] Further, in step S200, if the object type of any node corresponding object is a preset type, and the number of object types corresponding to the node has the smallest proportion in the number of object types corresponding to a plurality of nodes in the target local map, the object type corresponding to the node is determined as the target object type, and the object corresponding to the node is determined as the target object, including steps S210-S240:

[0048] Step S210, determining the object with the preset type as the first object from a plurality of objects corresponding to a plurality of object images;

[0049] Step S220, counting the number of a plurality of object types corresponding to a plurality of first objects to obtain the number of first objects corresponding to each object type in a plurality of object types corresponding to a plurality of first objects;

[0050] Step S230, determining the object type corresponding to the first object with the smallest number from a plurality of object types corresponding to a plurality of first objects as the target object type;

[0051] Step S240, determining any first object corresponding to the target object type as the target object.

[0052] Step S300, traversing the object type of each object in the target region, if the object type of any object is the target object type, the object is determined as the candidate object;

[0053] Further, in step S300, if the object type of any object is the target object type, the object is determined as the candidate object, including steps S310-S320:

[0054] Step S310, obtaining the type identifier corresponding to each object in the region map corresponding to the target region;

[0055] The area map stores the relative positions of several objects within the target area and the type identifier of each object.

[0056] Relative position information includes the distance between corresponding objects and their orientation angle.

[0057] Step S320: Traverse the object type identifier of each object in the area map. If the object type corresponding to any object is the target object type, then the object is determined as a candidate object.

[0058] Step S400: Using each candidate object as the center point and the distance between the target object and the farthest object as the region radius, establish a candidate region corresponding to each candidate object.

[0059] The farthest object is the object that is furthest from the target object among several objects corresponding to several object images.

[0060] Step S500: Based on the relative position information between several objects in each candidate region, establish a candidate local map corresponding to each candidate region.

[0061] Nodes in a candidate local graph represent objects in the candidate region corresponding to that candidate local graph, and the edge between two nodes in a candidate local graph represents the distance between the objects corresponding to those two nodes.

[0062] Furthermore, such as Figure 3 As shown, in step S500, a candidate local map corresponding to each candidate region is established based on the relative position information between several objects within each candidate region, including steps S510-S520:

[0063] Step S510: Obtain the relative position information between several objects within each candidate region in the region map;

[0064] Step S520: Using the object identifier corresponding to each object in any candidate region as a node, the node weight of the object type corresponding to each object in the candidate region as the attribute information of the node corresponding to the object, the line connecting any two nodes in the candidate region as the edge between the two nodes, and the edge weight with the smaller value between the distance between any two objects in the candidate region and the edge weight of the object type corresponding to the two objects as the attribute information of the edge between the nodes corresponding to the two objects, a candidate local graph corresponding to the candidate region is established.

[0065] Step S600: By comparing the features of the target local map with each candidate local map, the target robot is controlled to move from the initial position to the preset target position.

[0066] Further, in step S600, the target robot is controlled to move from the initial position to the preset target position by comparing the features of the target local map and each candidate local map, including steps S610-S680:

[0067] In step S610, the features of the target local map and each candidate local map are compared to obtain the matching degrees between the target local map and each candidate local map.

[0068] In step S620, the candidate local maps are sorted according to the descending order of the matching degrees to obtain a candidate local map sorting list.

[0069] The candidate local map sorting list includes the map identifiers corresponding to the sorted candidate local maps.

[0070] In step S630, the target local map is feature-extracted to obtain a corresponding target feature vector.

[0071] In step S640, each candidate local map is feature-extracted to obtain a corresponding candidate feature vector.

[0072] The feature extraction of the target feature vector and the candidate feature vector is performed with corresponding node weights and edge weights, and the feature extraction method uses an existing feature extraction algorithm such as GNN (Graph Neural Network).

[0073] In step S650, the target feature vector is sequentially compared with each candidate feature vector according to the order of the map identifiers in the candidate local map sorting list, and if the matching degree between the target feature vector and any candidate feature vector is greater than a preset matching degree threshold, the candidate feature vector is determined as a key feature vector.

[0074] The target feature vector is sequentially compared with each corresponding candidate feature vector according to the order of the map identifiers, and when the matching degree between the target feature vector and a candidate feature vector is greater than a preset matching degree threshold, it is considered that the features of the candidate feature vector are similar to the features of the target feature vector, and the candidate feature vector is determined as a key feature vector, and the remaining other candidate feature vectors are not processed, which further reduces the data processing amount.

[0075] In step S660, the coordinate information of the initial position of the target robot in the target region is determined according to the relative position information of the object in the candidate region corresponding to the key feature vector.

[0076] In step S660, the coordinate information of the initial position of the target robot in the target region is determined according to the relative position information of the objects in the candidate region corresponding to the key feature vector, including steps S661-S663:

[0077] In step S661, the objects corresponding to the nodes in the target local map are determined as key objects.

[0078] In step S662, the candidate region corresponding to the key feature vector is determined as a key candidate region.

[0079] In step S663, the distances between each preset position in the key candidate region and each object in the key candidate region are traversed. If the similarity of the distances between any preset position in the key candidate region and several objects in the key candidate region and the distances between the initial position and the several key objects is greater than a preset similarity threshold, and the relative position relationship of the several objects in the key candidate region is the same as that of the several key objects, the coordinate information of the preset position is determined as the coordinate information of the initial position.

[0080] In step S670, the driving path of the target robot is determined according to the coordinate information of the initial position of the target robot, the coordinate information of the target position, and the preset driving strategy.

[0081] The preset driving strategy can be a navigation strategy of the target robot, such as an existing visual navigation algorithm, and the driving path of the target robot is also determined based on the existing driving strategy.

[0082] In step S680, the target robot is controlled to move from the initial position to the target position according to the driving path.

[0083] The visual guidance-based robot control method of the present application first acquires images of several objects in the surrounding scene of the initial position according to the initial position of the target robot in the target region, establishes a target local graph corresponding to the initial position, wherein the nodes in the target local graph represent the objects in the surrounding scene of the initial position, and the edges between any two nodes in the target local graph represent the interval distance between the two objects corresponding to the two nodes. The target local graph is established by the distance between the objects around the initial position. Then each node in the target local graph is traversed. If the object type of any node corresponding object is a preset type, and the number of object types corresponding to the node is the smallest in the number of object types corresponding to several nodes in the target local graph, the object type corresponding to the node is determined as the target object type, the object corresponding to the node is determined as the target object, and the object type of each object in the target region is traversed. If the object type of any object is the target object type, the object is determined as the candidate object. Each candidate region corresponding to each candidate object is established with each candidate object as the center point and the distance between the initial position and the target object as the region radius. The candidate local graph corresponding to each candidate region is established according to the relative position information between several objects in each candidate region. Finally, the initial position of the target robot is determined by comparing the features of the target local graph and each candidate local graph, and the target robot is controlled to move from the initial position to the preset target position. By analyzing the features of the images of several objects in the surrounding scene of the initial position of the target robot, the candidate regions that meet the object arrangement rules of the scene where the initial position is located are determined in the target region. Then, the object position information in these candidate regions is refined to determine the position information of the initial position without full image analysis of the target region as in the traditional robot control method. Compared with the traditional robot control method, the data processing amount is reduced.

[0084] Embodiments of the present application also provide a computer program product comprising program code for causing an electronic device to perform the steps of the methods according to the various exemplary embodiments of the present application described above when the program product is run on the electronic device.

[0085] Furthermore, although the various steps of the methods of the present disclosure are described in a particular order in the accompanying drawings, this does not require or imply that the steps must be performed in that particular order, or that all of the steps shown must be performed to achieve the desired result. Additionally or alternatively, certain steps can be omitted, multiple steps can be combined into a single step, a single step can be divided into multiple steps, and / or the like.

[0086] Those skilled in the art can clearly understand that the example embodiments described herein can be implemented by software, or by software in combination with necessary hardware. Therefore, the technical solutions according to the embodiments of the present disclosure can be embodied in the form of a software product. The software product can be stored in a non-volatile storage medium (which can be a CD-ROM, a USB flash disk, a mobile hard disk, or the like) or a network, and includes a number of instructions to enable a computing device (which can be a personal computer, a server, a mobile terminal, or a network device, etc.) to perform the methods according to the embodiments of the present disclosure.

[0087] In the example embodiments of the present disclosure, an electronic device capable of implementing the above method is also provided.

[0088] Those skilled in the art can understand that each aspect of the present disclosure can be implemented as a system, a method or a program product. Therefore, each aspect of the present disclosure can be embodied in the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, microcode, etc.), or an embodiment combining software and hardware aspects, which can be collectively referred to as "circuitry", "module" or "system".

[0089] The electronic device according to this embodiment of the present disclosure. The electronic device is merely an example, and should not limit the functions and use range of the embodiments of the present disclosure.

[0090] The electronic device is in the form of a general computing device. The components of the electronic device can include, but are not limited to, the at least one processor described above, the at least one storage described above, and a bus connecting different system components (including storage and processor).

[0091] The storage stores program code that can be executed by the processor, so that the processor performs the steps according to various example embodiments of the present disclosure described in the "example method" section of the present specification.

[0092] The storage can include a readable medium in the form of a volatile storage, such as a random access memory (RAM) and / or a cache memory, and can further include a read-only memory (ROM).

[0093] The storage can also include programs / utilities with a set of (at least one) program modules, such as an operating system, one or more application programs, other program modules, and program data, each of which or some combination of which can include the implementation of a network environment.

[0094] The bus can be one or more of several types of bus structures including a memory bus or memory controller, a peripheral bus, a graphics bus, a processor or local bus using any of a variety of bus architectures.

[0095] The electronic device can also communicate with one or more external devices such as a keyboard or a pointing device, through an I / O interface. The I / O interface can also include a communication interface to enable the electronic device to communicate with one or more other electronic devices.

[0096] In the example embodiments of the present disclosure, a computer readable storage medium is also provided, on which a program product capable of implementing the method described above is stored. In some possible implementation manners, various aspects of the present disclosure can also be implemented in the form of a program product, which includes program codes for causing terminal equipment to perform the steps described in the "Example Method" section above according to various example embodiments of the present disclosure when the program product is run on the terminal equipment.

[0097] The program product can adopt any combination of one or more readable media. The readable medium can be a readable signal medium or a readable storage medium. The readable storage medium may, for example, but is not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or apparatus, or any combination of the above. More specific examples (non-exhaustive list) of the readable storage medium include an electrical connection having one or more wires, a portable disc, 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 disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above.

[0098] The computer readable signal medium can include a data signal propagated in baseband or propagated as a carrier wave, in which the readable program codes are carried. Such a propagated data signal can take on many forms, including but not limited to an electromagnetic signal, an optical signal, or any suitable combination thereof. The readable signal medium can also be any readable medium that is not a readable storage medium and that can transmit, propagate or transport program for use by or in connection with an instruction execution system, apparatus or device.

[0099] The program code embodied on the computer readable medium can be transmitted using any appropriate medium, including but not limited to wireless, wired, optical fiber cable, RF, etc., or any suitable combination of the foregoing.

[0100] The program code, when executed, can perform a method of the present application. The program code can be written in any combination of one or more programming languages, including an object oriented programming language such as Java, C++, or the like, and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code can execute entirely on the user's computing device, partly on the user's computing device, as a stand-alone software package, partly on the user's computing device and partly on a remote computing device or entirely on the remote computing device or server. In the latter scenario, the remote computing device can be connected to the user's computing device through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection can be made to an external computing device, such as through the Internet using an Internet Service Provider. The present application can also be implemented as a computer-readable storage medium having stored thereon the program code.

[0101] Furthermore, the above-described diagrams are only schematic and are non-limiting. It is expressly contended that the processes set forth in the diagrams can be performed in an order other than that depicted. Additionally, it is expressly contemplated that the processes set forth in the diagrams can be performed synchronously or asynchronously, e.g., in a plurality of modules.

[0102] It should be noted that, although several modules or units for device for action execution are mentioned in the foregoing detailed description, such a division into modules or units is not mandatory. Indeed, according to an embodiment of the present disclosure, the features and functionalities of two or more modules or units described above can be embodied in one module or unit. Conversely, the features and functionalities of one module or unit described above can be further divided into several modules or units embodied by.

[0103] The above description is only specific embodiments of the present application, but the protection scope of the present application is not limited thereto, and any changes or substitutions easily conceived by those skilled in the art within the technical scope disclosed by the present application should be covered by the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the protection scope of the claims.

Claims

1. A vision-guided robot control method, characterized by, The method comprises the following steps: According to the images of the objects in the surrounding scene of the initial position acquired by the target robot at the initial position in the target area, a target local graph is established; the nodes in the target local graph represent the objects in the surrounding scene of the initial position; the edges between any two nodes in the target local graph represent the interval distance between the two objects corresponding to the two nodes; Each node in the target local graph is traversed, and if the object type of the object corresponding to any node is a preset type and the number of the object type corresponding to the node is the smallest in the number of the object types corresponding to the objects of the nodes in the target local graph, the object type corresponding to the node is determined as a target object type, and the object corresponding to the node is determined as a target object; The object type of each object in the target area is traversed, and if the object type of any object is the target object type, the object is determined as a candidate object; Each candidate region corresponding to each candidate object is established with the candidate object as the center point and the distance between the target object and the farthest object as the region radius; the farthest object is the object farthest from the target object among the objects corresponding to the object images; According to the relative position information between the objects in each candidate region, a candidate local graph corresponding to each candidate region is established; the nodes in the candidate local graph represent the objects in the candidate region corresponding to the candidate local graph, and the edges between two nodes in the candidate local graph represent the interval distance between the objects corresponding to the two nodes; The target robot is controlled to move from the initial position to a preset target position by comparing the features of the target local graph and each candidate local graph.

2. The method of claim 1, wherein, The method comprises the following steps: In response to receiving the movement control instruction sent by the target robot, the target robot is controlled to collect object images of a plurality of objects in the surrounding scene of the initial position through a visual acquisition device; The plurality of object images are denoised to obtain a plurality of processed images corresponding thereto; A plurality of object edge features included in each processed image are extracted, and if a plurality of object edge features are object image features corresponding to a preset object, the object corresponding to the region surrounded by the plurality of object edge features is determined as the object corresponding to the object image features, and the object type of the object corresponding to the region surrounded by the plurality of object edge features is determined as the object type of the object corresponding to the object image features; The object identifiers of the objects corresponding to the plurality of object images are taken as nodes; The connection lines between any two objects in the plurality of objects corresponding to the plurality of object images are taken as edges between the nodes corresponding to the two objects. Determine the preset node weight of the object type corresponding to any object as the node weight of the node corresponding to the object, and determine the preset edge weight of the object type corresponding to the object as the edge weight of the edge connected to the node corresponding to the object; wherein the node weight and the edge weight of the object type as the movable object type are smaller than the node weight and the edge weight of the object type as the non-movable object type; Determine the node weight corresponding to any node as the attribute information of the node; Determine the interval distance between the center points of the two objects corresponding to the two nodes connected to any edge and the edge weight of the edge as the attribute information of the edge; Establish a target local graph according to the nodes corresponding to the objects corresponding to the plurality of object images and the edges connected between the plurality of nodes.

3. The method of claim 2, wherein, The determination of the preset edge weight of the object type corresponding to the object as the edge weight of the edge connected to the node corresponding to the object includes: If the object type corresponding to the object is the same as the object type of the object corresponding to the other node connected to the node corresponding to the object, determine the edge weight of the object type as the edge weight of the edge connected to the two nodes; If the object type corresponding to the object is different from the object type of the object corresponding to the other node connected to the node corresponding to the object, determine the edge weight with the smaller value among the edge weights of the two object types as the edge weight of the edge connected to the two nodes.

4. The method of claim 3, wherein, The determination of the object type corresponding to the node as the target object type and the object corresponding to the node as the target object, if the object type corresponding to any node is the preset type, and the number of the object type corresponding to the node accounts for the smallest proportion in the number of the object types corresponding to the nodes in the target local graph, includes: Determine the objects of the preset type among the objects corresponding to the plurality of object images as first objects; Count the number of object types corresponding to the plurality of first objects to obtain the number of first objects corresponding to each object type among the plurality of object types corresponding to the plurality of first objects; Determine the object type corresponding to the smallest number of first objects among the plurality of object types corresponding to the plurality of first objects as the target object type; Determine any first object corresponding to the target object type as the target object.

5. The method of claim 4, wherein, The determination of the object as the candidate object, if the object type of any object is the target object type, includes: Obtain the type identifier of each object corresponding to the object type in the region map corresponding to the target region; the region map stores the relative position information of the plurality of objects in the target region and the type identifier of the object type of each object; the relative position information includes the interval distance and the orientation angle between the corresponding plurality of objects; Traverse the object type corresponding to the type identifier of each object in the region map, and determine the object as the candidate object if the object type corresponding to any object is the target object type.

6. The method of claim 5, wherein, The candidate local graph corresponding to each of the candidate regions is established according to relative position information among a plurality of objects in each of the candidate regions, and the method comprises the following steps: Obtaining relative position information among a plurality of objects in each of the candidate regions in the regional map; Taking an object identifier corresponding to each object in any of the candidate regions as a node, taking a node weight of an object type corresponding to each object in the candidate region as attribute information of the node corresponding to the object, taking a connection between any two nodes corresponding to the candidate region as an edge between the two nodes, and taking a smaller value between an interval distance between any two objects in the candidate region and an edge weight of an object type corresponding to the two objects as attribute information of an edge between nodes corresponding to the two objects, a candidate local graph corresponding to the candidate region is established.

7. The method of claim 6, wherein, The target robot is controlled to move from the initial position to a preset target position by performing feature comparison between the target local graph and each of the candidate local graphs, and the method comprises the following steps: Performing feature comparison between the target local graph and each of the candidate local graphs to obtain matching degrees between the target local graph and each of the candidate local graphs; According to a descending order of a plurality of matching degrees, a plurality of candidate local graphs are sorted to obtain a candidate local graph sorting list; the candidate local graph sorting list comprises graph identifiers corresponding to the plurality of candidate local graphs after sorting; Feature extraction is performed on the target local graph to obtain a target feature vector corresponding to the target local graph; Feature extraction is performed on each of the candidate local graphs to obtain a candidate feature vector corresponding to each of the candidate local graphs; According to an order of a plurality of graph identifiers in the candidate local graph sorting list, the target feature vector is sequentially compared with each of the candidate feature vectors, and if a matching degree between the target feature vector and any of the candidate feature vectors is greater than a preset matching degree threshold, the candidate feature vector is determined as a key feature vector; According to relative position information of objects in a candidate region corresponding to the key feature vector, coordinate information of the initial position of the target robot in the target region is determined; According to coordinate information of the initial position of the target robot, coordinate information of the preset target position, and a preset driving strategy, a driving path of the target robot is determined; According to the driving path, the target robot is controlled to move from the initial position to the target position.

8. The method of claim 7, wherein, The coordinate information of the initial position of the target robot in the target region is determined according to the relative position information of the objects in the candidate region corresponding to the key feature vector, and the method comprises the following steps: The objects corresponding to a plurality of nodes in the target local graph are determined as key objects; The candidate region corresponding to the key feature vector is determined as a key candidate region; The distance between each preset position in the key candidate region and each object in the key candidate region is traversed. If the similarity of the distance between any preset position in the key candidate region and several objects in the key candidate region, the distance between the initial position and several key objects, and the distance between the initial position and several key objects is greater than a preset similarity threshold, and the relative position relationship of several objects in the key candidate region is the same as that of several key objects, the coordinate information of the preset position is determined as the coordinate information of the initial position.

9. A non-transitory computer-readable storage medium, comprising: The storage medium stores at least one instruction or at least one program, and the at least one instruction or the at least one program is loaded and executed by the processor to implement the method in any one of claims 1-8.

10. An electronic device, comprising: The non-transitory computer-readable storage medium is included in the processor. The non-transitory computer-readable storage medium is included in the processor.

Citation Information

Patent Citations

  • Fault analysis method and system for industrial robot

    CN120439324A

  • Target navigation method and device based on environmental context, robot and medium

    CN120609357A