Method for controlling a robot
By identifying and classifying obstacles in the pool and using adaptive control to handle different types of obstacles, the problem of low work efficiency of pool robots has been solved, and more efficient task execution has been achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- XINGMAI INNOVATION TECH (SUZHOU) CO LTD
- Filing Date
- 2023-08-17
- Publication Date
- 2026-05-08
AI Technical Summary
When encountering obstacles, pool robots in current technology typically avoid or maintain a fixed distance, resulting in low work efficiency and an inability to effectively handle different types of obstacles.
By acquiring image recognition information of obstacles, their categories are determined, and appropriate control methods are adopted to process them according to their categories, including avoiding, marking, alerting, or moving obstacles.
This improves the efficiency of the pool robot when encountering different obstacles and avoids blockage of the execution parts and missed cleaning.
Smart Images

Figure CN117047760B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of robotics, and more specifically, to a method for controlling a robot. Background Technology
[0002] In related technologies, pool robots often encounter various obstacles when working in a pool. The control method of pool robots is usually to avoid obstacles by colliding with them or to avoid them by maintaining a fixed distance.
[0003] If the robot collides with and avoids an obstacle, the obstacle may be rolled into the robot's actuators, causing blockages. If the robot maintains a fixed distance from the obstacle, it may miss cleaning or other tasks related to the obstacle. These issues result in low efficiency for the robot.
[0004] There is currently no effective solution to the above problems. Summary of the Invention
[0005] This invention provides a robot control method to at least solve the technical problem of low working efficiency of pool robots in related technologies.
[0006] According to an embodiment of the present invention, a robot control method is provided, comprising: acquiring first identification information collected by a target robot in a pool, wherein the first identification information represents feature information obtained by image recognition of a target obstacle, the target obstacle being an obstacle detected by the target robot in the pool; determining the category of the target obstacle based on the first identification information, wherein different categories are preset for obstacles that are allowed to be detected in the pool, and the control methods adopted by the target robot for detecting obstacles of different categories are allowed to be different; and, if the category of the target obstacle is a target category, controlling the target robot to perform a preset task in the pool based on a target control method corresponding to the target category.
[0007] According to another embodiment of the present invention, a robot control device is provided, comprising: an acquisition module, configured to acquire first identification information collected by a target robot in a pool, wherein the first identification information represents feature information obtained by image recognition of a target obstacle, the target obstacle being an obstacle detected by the target robot in the pool; a determination module, configured to determine the category of the target obstacle based on the first identification information, wherein different categories are preset for obstacles that are allowed to be detected in the pool, and the control methods adopted by the target robot for detecting obstacles of different categories are allowed to be different; and a control module, configured to control the target robot to perform a preset task in the pool based on a target control method corresponding to the target category when the category of the target obstacle is a target category.
[0008] In an exemplary embodiment, the device is configured to acquire first identification information collected by the target robot in a pool in the following manner: in response to the target robot starting to execute the preset task, the device acquires images of the target obstacle in the pool through a target image acquisition device to obtain target image data, wherein the target image acquisition device is disposed on the target robot; the device identifies the target image data to determine the first identification information.
[0009] In an exemplary embodiment, the device is configured to, in response to the target robot starting to execute the preset task, acquire images of the target obstacle in the pool using a target image acquisition device to obtain target image data: in response to the target robot starting to execute the preset task, detect the water depth where the target robot is located; determine the acquisition parameters of the target image acquisition device based on the water depth, and acquire images of the target obstacle based on the acquisition parameters to obtain target image data.
[0010] In an exemplary embodiment, the device is configured to respond to the target robot starting to perform the preset task by acquiring images of the target obstacle in the pool using a target image acquisition device to obtain target image data in the following manner: detecting the water cleanliness of the pool to determine the target water cleanliness; determining the acquisition parameters of the target image acquisition device based on the target water cleanliness, and acquiring images of the target obstacle based on the acquisition parameters to obtain target image data.
[0011] In an exemplary embodiment, the device is configured to identify the target image data and determine the first identification information by: extracting features from the target image data to determine target feature information of the target obstacle; preprocessing the target feature information and inputting the preprocessed target feature information into an identification model deployed on the target robot to determine the first identification information, wherein the preprocessing is used to increase the weight value corresponding to the feature information in the target feature information used to determine the category to which the target obstacle belongs.
[0012] In an exemplary embodiment, the device is configured to determine the category of the target obstacle based on the first identification information in at least one of the following ways: determining the target obstacle to a first category based on the first identification information, wherein the target category includes the first category, and the first category indicates that the target obstacle is an obstacle that the target robot needs to move away from; determining the target obstacle to a second category based on the first identification information, wherein the target category includes the second category, and the second category indicates that the target obstacle is a fixed obstacle; determining the target obstacle to a third category based on the first identification information, wherein the target category includes the third category, and the third category indicates that the target obstacle is an obstacle that requires an alert message; and determining the target obstacle to a fourth category based on the first identification information, wherein the target category includes the fourth category, and the fourth category indicates that the target obstacle is an obstacle that needs to be moved by the target robot.
[0013] In an exemplary embodiment, the device is configured to control a target robot to perform a preset task in a pool based on a target control method corresponding to the target category when the category of the target obstacle is a target category, by at least one of the following methods: when the category of the target obstacle is the first category, setting a first obstacle avoidance distance, wherein the first obstacle avoidance distance is greater than a preset initial obstacle avoidance distance of the target robot; when the target robot moves to a distance from the target obstacle that satisfies the first obstacle avoidance distance, controlling the target robot to perform the preset task in the pool according to the first obstacle avoidance distance; when the category of the target obstacle is the second category, setting a second obstacle avoidance distance, wherein the second obstacle avoidance distance is less than a preset initial obstacle avoidance distance of the target robot. Obstacle avoidance distance; when the target robot moves to a distance that satisfies the second obstacle avoidance distance, control the target robot to perform the preset task in the pool according to the second obstacle avoidance distance; when the target obstacle is of the third category, mark the location of the target obstacle; send a target reminder message to the target terminal to indicate the location of the target obstacle in the pool, and perform the preset task in the pool according to the preset initial obstacle avoidance distance of the target robot; when the target obstacle is of the fourth category, control the mechanical control part of the target robot to move the target obstacle, and clear the location of the target obstacle before the movement, so as to control the target robot to perform the preset task in the pool.
[0014] In an exemplary embodiment, the device is further configured to: acquire an original map of the pool and location information of the target obstacle, wherein the target robot is configured to perform the preset task in the pool according to the original map; mark and update the original map according to the location information to obtain a target map, so as to control the target robot to perform the preset task in the pool according to the target map.
[0015] In an exemplary embodiment, the device is further configured to: control the target robot to decelerate when the target robot reaches a preset distance from the target position, and acquire second identification information collected by the target robot in the pool, wherein the second identification information represents feature information obtained by image recognition of the target obstacle during the process of cleaning the pool according to the target map, and the target position represents the marked position of the target obstacle in the target map; determine the category of the target obstacle according to the second identification information, and if the category of the target obstacle is the target category, control the target robot to perform the preset task in the pool according to the target obstacle avoidance distance corresponding to the target control method.
[0016] According to another embodiment of the present invention, a pool robot is also provided, which is applied to the control method of the above-mentioned robot, including: an image acquisition device for acquiring first identification information; and a processor for determining the target control mode according to the first identification information, and controlling the target robot to perform the preset task in the pool according to the target control mode.
[0017] According to yet another embodiment of the present invention, a computer-readable storage medium is also provided, wherein a computer program is stored therein, wherein the computer program is configured to perform the steps in any of the above method embodiments when executed.
[0018] According to yet another embodiment of the present invention, an electronic device is also provided, including a memory and a processor, wherein the memory stores a computer program and the processor is configured to run the computer program to perform the steps in any of the above method embodiments.
[0019] This invention acquires first identification information collected by the target robot within a pool. This first identification information represents feature information obtained through image recognition of a target obstacle, which is an obstacle detected by the target robot within the pool. Based on the first identification information, the category of the target obstacle is determined. Different categories are pre-defined for obstacles that are allowed to be detected within the pool, and different control methods are allowed for the target robot to use for different categories of obstacles. When the target obstacle falls into the target category, the target robot is controlled to perform a preset task within the pool based on the target control method corresponding to the target category. By identifying the type of obstacle and determining the relevant processing method based on different types, the preset task can be executed more efficiently. This solves the problem of underwater robots encountering different obstacles during actual operation, where the inability to take effective processing methods leads to blockages or missed cleaning of machine components, thus improving the working efficiency of the target robot. Therefore, it solves the problem of low working efficiency of pool robots. Attached Figure Description
[0020] Figure 1 This is a hardware structure block diagram of a mobile terminal for a robot control method according to an embodiment of the present invention.
[0021] Figure 2 This is a flowchart of a robot control method according to an embodiment of the present invention;
[0022] Figure 3 This is a schematic diagram of the specific process of the robot control method according to an embodiment of the present invention;
[0023] Figure 4 This is a structural block diagram of a robot control device according to an embodiment of the present invention. Detailed Implementation
[0024] The embodiments of the present invention will be described in detail below with reference to the accompanying drawings and examples.
[0025] It should be noted that the terms "first," "second," etc., in the specification, claims, and drawings of this invention are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence.
[0026] The methods and embodiments provided in this application can be executed on a mobile terminal, such as a mobile robot. Taking running on a mobile terminal as an example... Figure 1 This is a hardware structure block diagram of a mobile terminal for a robot control method according to an embodiment of the present invention. Figure 1 As shown, a mobile terminal may include one or more ( Figure 1Only one is shown in the diagram. A processor 102 (which may include, but is not limited to, a microprocessor MCU or a programmable logic device FPGA, etc.) and a memory 104 for storing data are also shown. The mobile terminal may further include a transmission device 106 for communication functions and an input / output device 108. Those skilled in the art will understand that... Figure 1 The structure shown is for illustrative purposes only and does not limit the structure of the mobile terminal described above. For example, the mobile terminal may also include components that are more... Figure 1 The more or fewer components shown, or having the same Figure 1 The different configurations shown.
[0027] The memory 104 can be used to store computer programs, such as application software programs and modules, like the computer program corresponding to the robot control method in this embodiment of the invention. The processor 102 executes various functional applications and data processing by running the computer program stored in the memory 104, thereby implementing the above-described method. The memory 104 may include high-speed random access memory and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, the memory 104 may further include memory remotely located relative to the processor 102, and these remote memories can be connected to the mobile terminal via a network. Examples of such networks include, but are not limited to, the Internet, corporate intranets, local area networks, mobile communication networks, and combinations thereof.
[0028] The transmission device 106 is used to receive or send data via a network. Specific examples of the network described above may include a wireless network provided by the mobile terminal's communication provider. In one example, the transmission device 106 includes a Network Interface Controller (NIC), which can connect to other network devices via a base station to communicate with the Internet. In another example, the transmission device 106 may be a Radio Frequency (RF) module, used for wireless communication with the Internet.
[0029] This embodiment provides a control method for the robot described above. This positioning method can be applied to scenarios where the robot cleans aquatic environments such as swimming pools and ponds. For example, when a pool robot encounters an obstacle and needs to avoid it while cleaning in a pool, the robot control method described above can be used.
[0030] Figure 2 This is a flowchart of a robot control method according to an embodiment of the present invention, such as... Figure 2 As shown, the process includes the following steps:
[0031] S202, acquire the first identification information collected by the target robot in the pool, wherein the first identification information represents the feature information obtained by image recognition of the target obstacle, and the target obstacle is the obstacle detected by the target robot in the pool;
[0032] Optionally, in this embodiment, the robot control method described above may be applied to application scenarios that require cleaning aquatic environments, such as swimming pool cleaning, pond cleaning, and fish tank cleaning.
[0033] It should be noted that there are obstacles in the water body in this application scenario, which will affect the robot's cleaning process. Therefore, it is necessary to determine the type of obstacle through the robot control method described above, and select an appropriate robot control method based on the determined obstacle type to achieve the cleaning of the water environment.
[0034] Optionally, in this embodiment, the target robot includes, but is not limited to, an underwater robot, which can be understood as a robot working in an aquatic environment. This robot can be a tethered or untethered submersible, or other equipment used for cleaning aquatic environments such as swimming pools. The aforementioned pool can be understood as an aquatic environment where a robot needs to perform preset tasks. By placing the target robot in the pool, the target robot is controlled to complete the required preset tasks within the pool.
[0035] It should be noted that the above-mentioned preset tasks may include, but are not limited to, water pool cleaning tasks, water pool detection tasks, etc.
[0036] In an exemplary embodiment, the first identification information is used to represent feature information obtained by image recognition of the target obstacle, which may be feature information extracted based on an underwater target recognition algorithm.
[0037] It should be noted that the above-mentioned underwater target recognition algorithm can be, but is not limited to, target recognition algorithms implemented based on artificial intelligence.
[0038] Artificial intelligence (AI) refers to the theories, methods, technologies, and application systems that utilize digital computers or computers-controlled machines to simulate, extend, and expand human intelligence, perceive the environment, acquire knowledge, and use that knowledge to achieve optimal results. In other words, AI is a comprehensive technology within computer science that attempts to understand the essence of intelligence and produce new intelligent machines that can react in a way similar to human intelligence. AI studies the design principles and implementation methods of various intelligent machines, enabling them to possess perception, reasoning, and decision-making capabilities.
[0039] Artificial intelligence (AI) is a comprehensive discipline encompassing a wide range of fields, including both hardware and software technologies. Fundamental AI technologies generally include sensors, dedicated AI chips, cloud computing, distributed storage, big data processing, operating / interactive systems, and mechatronics. AI software technologies primarily include computer vision, speech processing, natural language processing, and machine learning / deep learning.
[0040] Computer vision (CV) is the science that studies how to enable machines to "see." More specifically, it refers to machine vision, which uses cameras and computers to replace human eyes in recognizing and measuring targets, and then performs image processing to create images more suitable for human observation or transmission to instruments. As a scientific discipline, computer vision studies related theories and technologies, attempting to build artificial intelligence systems capable of extracting information from images or multidimensional data. Computer vision technologies typically include image processing, image recognition, image semantic understanding, image retrieval, OCR, video processing, video semantic understanding, video content / behavior recognition, 3D object reconstruction, 3D technology, virtual reality, augmented reality, simultaneous localization and mapping (SLAM), and common biometric recognition technologies such as facial recognition and fingerprint recognition.
[0041] In an exemplary embodiment, the aforementioned first identification information can be determined by an object detection algorithm. Object detection involves identifying targets of interest to the user from an image / video and providing feedback on the target's location and category. These object detection algorithms include, but are not limited to, R-CNN, YOLO, and SSD. Taking R-CNN as an example, its main principle is to establish a large number (over 2,000) of candidate regions for an image, then perform object detection calculations on these regions separately, and use SVM for classification. Based on R-CNN, there are also Fast R-CNN, Faster R-CNN, etc. Taking the YOLO algorithm as an example, YOLO (You Only Look Once) is mainly used for fast object detection, especially in edge devices such as autonomous driving and driverless cars, where rapid identification and feedback of acquired images and videos are required for a rapid response from the control system. Compared to R-CNN's approach of using a large number of detection region proposals, YOLO takes a one-step approach, where the input is the entire image, and the output is directly the target identification region and target type. The core idea of YOLO is to use the entire image as input and directly derive the target region and type at the output layer. Faster R-CNN also uses the entire image as input, but Raster R-CNN employs a two-step approach: first, it proposes regions for object detection, and then it performs image recognition on each region. Taking SSD (Single Short Multibox Detector) as an example, this algorithm emerged after R-CNN and YOLO, specifically designed to address the characteristics of both. While YOLO offers significantly faster computation than R-CNN, its accuracy is lower.
[0042] The above is just an example, and the specific type of recognition algorithm for obtaining the first recognition information is not limited in this embodiment.
[0043] Optionally, in this embodiment, the aforementioned target obstacle can be understood as an obstacle that the target robot is allowed to detect within the pool, such as escalators, rags, leaves, clothing, etc., that affect the operation of the target robot.
[0044] It should be noted that obstacles can be classified according to their impact on the target robot.
[0045] S204, determine the category of the target obstacle based on the first identification information, wherein different categories of obstacles that are allowed to be detected in the pool are pre-set, and the control methods used by the target robot to detect different categories of obstacles are allowed to be different;
[0046] Optionally, in this embodiment, different categories of obstacles that can be detected in the pool can be set in advance, and the recognition model can be trained based on the feature information extracted from the obstacles of the corresponding category to obtain a recognition algorithm that can classify the recognized obstacles. Then, the category of the target obstacle can be determined by the target recognition algorithm based on the first recognition information.
[0047] It should be noted that the different categories of obstacles mentioned above can be set manually based on prior knowledge, or they can be generated by a self-learning category generation algorithm.
[0048] For example, if clothing, rags, etc., can adhere to the target robot's wheel hub and affect its normal operation, then it is advisable to set up clothing, rags, and other textiles as a separate category.
[0049] For example, if escalators, stone pillars, or other objects obstruct the robot's movement and affect its normal operation, then it is advisable to classify escalators, stone pillars, or other objects as one of the categories.
[0050] In an exemplary embodiment, taking textiles as an example, when the target robot detects an object A in front of it, it acquires image data of object A through an image acquisition device, and then performs feature extraction and target detection operations on the image data to determine that object A belongs to the textile category. At this time, the textile category is the target category mentioned above.
[0051] It should be noted that the control methods used by the target robot to clean different types of obstacles can vary. This can be understood as adopting different cleaning strategies for different obstacles. For example, if the obstacle is textiles, a relatively larger avoidance distance is set to prevent entanglement. Conversely, if the obstacle is an escalator, a relatively smaller avoidance distance is set to prevent prolonged neglect of cleaning the escalator.
[0052] S206, when the category of the target obstacle is the target category, control the target robot to perform a preset task in the pool based on the target control method corresponding to the target category.
[0053] Optionally, in this embodiment, the above-mentioned target control method has a mapping relationship with the target category.
[0054] Optionally, in this embodiment, the preset tasks mentioned above may include, but are not limited to, one or more combinations of tasks such as cleaning in the pool, disinfecting, and testing water quality.
[0055] Through this embodiment of the invention, by acquiring first identification information collected by the target robot in a pool, wherein the first identification information represents feature information obtained by image recognition of a target obstacle, the target obstacle being an obstacle detected by the target robot in the pool, and determining the category of the target obstacle as a target category based on the first identification information, different categories are pre-set for obstacles that are allowed to be detected in the pool, and different control methods are allowed for the target robot to clean different categories of obstacles, controlling the target robot to clean the pool based on the target control method corresponding to the target category. By identifying the type of obstacle and processing obstacles according to different types, this invention aims to solve the problem that when underwater robots encounter different obstacles in actual operation, the inability to take effective handling methods leads to blockage of machine execution components or missed cleaning, thereby improving the working efficiency of the target robot. Therefore, it can solve the problem of low working efficiency of pool robots.
[0056] As an optional approach, obtaining the first identification information collected by the target robot in the pool includes: in response to the target robot starting to execute the preset task, acquiring images of the target obstacle in the pool through a target image acquisition device to obtain target image data, wherein the target image acquisition device is mounted on the target robot; and identifying the target image data to determine the first identification information.
[0057] Optionally, in this embodiment, the aforementioned target image acquisition device can be understood as a device that allows communication with the target robot. This device can be deployed on the target robot or in a location where it can communicate normally with the robot, such as a pool wall.
[0058] As an optional approach, acquiring the first identification information collected by the target robot in the pool includes: in response to the target robot entering the pool, detecting the pool through a target sensor; if a target obstacle is detected, acquiring an image of the target obstacle through a target image acquisition device to obtain target image data; and identifying the target image data to determine the first identification information.
[0059] Optionally, in this embodiment, the target sensor may be, but is not limited to, an ultrasonic sensor. The sensing information collected by the sensor includes distance information and angle information, including but not limited to the distance between the obstacle and the target robot, and the directional angle of the obstacle relative to the target robot. That is, the sensing information includes distance information and angle information, the distance information is used to represent the distance between the obstacle and the target robot, and the angle information is used to represent the directional angle between the obstacle and the target robot.
[0060] Optionally, in this embodiment, when a target obstacle is detected by the target sensor, image acquisition of the target obstacle is started by a target image acquisition device, which may include, but is not limited to, an underwater camera.
[0061] As the target robot moves along the edge of the pool or rotates, the sensor data collected by the sensors can obtain the line segment data features and angle features of the obstacles. The line segment data features and angle features constitute part of the pool's features, such as the pool corners, walls, and other partial features of the pool.
[0062] In one exemplary embodiment, an ultrasonic sensor is used to collect sensing information, which includes certain features of the pool, such as the pool's outer right angles, inner right angles, outer arcs, inner arcs, and steps and ladders within the pool. The ultrasonic sensor can also detect distance information to the vertical pool edge and corners of each pool area.
[0063] As an optional approach, in response to the target robot starting to execute the preset task, image acquisition of the target obstacle in the pool is performed by a target image acquisition device to obtain target image data, including: in response to the target robot starting to execute the preset task, detecting the water depth where the target robot is located; determining the acquisition parameters of the target image acquisition device based on the water depth, and performing image acquisition of the target obstacle based on the acquisition parameters to obtain target image data.
[0064] Optionally, in this embodiment, the target robot can be pre-configured with target image acquisition devices that operate at different water depths, and the energy consumption and / or computing power of the target image acquisition devices that operate at different water depths are different.
[0065] It should be noted that the instruments used to detect water depth can be conventional physical instruments. Once the water depth where the target robot is located is determined, a start command is sent to the target image acquisition device corresponding to that water depth, and the corresponding target image acquisition device then begins to work.
[0066] As an optional approach, the acquisition parameters of the target image acquisition device are determined based on the water depth, and the target obstacle is image acquired based on the acquisition parameters to obtain target image data. This includes: determining a first target image acquisition device in response to the target robot being at a first water depth, wherein the first target image acquisition device is used to detect obstacles at the first water depth; and determining a second target image acquisition device in response to the target robot being at a second water depth, wherein the second target image acquisition device is used to detect obstacles at the second water depth, the second water depth being greater than the first water depth, and the power consumption of the second target image acquisition device being higher than the power consumption of the first target image acquisition device.
[0067] Optionally, in this embodiment, the second water depth can be understood as greater than the first water depth. That is, when the target robot is in different water depths, the target image acquisition device used is different. When the target robot is in a deeper water depth, the working intensity of the target image acquisition device is relatively higher, and the power consumption is higher. When the target robot is in a shallower water depth, the working intensity of the target image acquisition device is relatively lower, and the power consumption is lower.
[0068] This embodiment demonstrates how different target image acquisition devices can be used to detect obstacles at different water depths, thereby reducing the resource consumption of the target robot while ensuring a certain level of accuracy.
[0069] As an optional approach, in response to the target robot starting to execute the preset task, the target image acquisition device acquires images of the target obstacle in the pool to obtain target image data, including: detecting the cleanliness of the water in the pool to determine the target water cleanliness; determining the acquisition parameters of the target image acquisition device based on the target water cleanliness; and acquiring images of the target obstacle based on the acquisition parameters to obtain target image data.
[0070] Optionally, in this embodiment, the above-mentioned detection of the water cleanliness of the pool can be understood as the acquisition parameters of the target image acquisition device being different when the water is relatively turbid or relatively clear.
[0071] It should be noted that the above acquisition parameters can be understood as exposure, focal length, etc. Different acquisition parameters are used to adapt to different water cleanliness levels and acquire clearer target image data to ensure the accuracy of subsequent recognition.
[0072] As an optional approach, the acquisition parameters of the target image acquisition device are determined based on the target water cleanliness, and images of the target obstacle are acquired based on the acquisition parameters to obtain target image data. This includes: when the target water cleanliness falls within a first cleanliness range, configuring the acquisition parameters of the target image acquisition device as first acquisition parameters, and acquiring images of the target obstacle based on the first acquisition parameters to obtain target image data, wherein the first acquisition parameters represent acquisition parameters that have a mapping relationship with the first cleanliness range; when the target water cleanliness falls within a second cleanliness range, configuring the acquisition parameters of the target image acquisition device as second acquisition parameters, and acquiring images of the target obstacle based on the second acquisition parameters to obtain target image data, wherein the first cleanliness range and the second cleanliness range are different, the first acquisition parameters and the second acquisition parameters are different, and the second acquisition parameters represent acquisition parameters that have a mapping relationship with the second cleanliness range.
[0073] Optionally, in this embodiment, the first cleanliness range and the second cleanliness range can be preset by humans based on prior knowledge. By binding different acquisition parameters to different cleanliness ranges, the acquisition parameters can be dynamically adjusted to obtain clearer target image data under different cleanliness ranges.
[0074] As an optional approach, identifying the target image data and determining the first identification information includes: extracting features from the target image data to determine the target feature information of the target obstacle; preprocessing the target feature information and inputting the preprocessed target feature information into the identification model deployed on the target robot to determine the first identification information, wherein the preprocessing is used to increase the weight value of the feature information in the target feature information used to determine the category to which the target obstacle belongs.
[0075] Optionally, in this embodiment, the above preprocessing is used to weight the features in the target image data to increase the weight value of the feature information used to determine the category of the target obstacle, so that the subsequent recognition accuracy of the preprocessed target feature information is higher.
[0076] For example, the above preprocessing operations may include, but are not limited to, image enhancement, image denoising, and image sharpening.
[0077] As an optional approach, the category of the target obstacle is determined based on the first identification information, including at least one of the following:
[0078] Based on the first identification information, the target obstacle is classified into a first category, wherein the target category includes the first category, and the first category indicates that the target obstacle is an obstacle that the target robot needs to move away from; based on the first identification information, the target obstacle is classified into a second category, wherein the target category includes the second category, and the second category indicates that the target obstacle is a fixed obstacle; based on the first identification information, the target obstacle is classified into a third category, wherein the target category includes the third category, and the third category indicates that the target obstacle is an obstacle that requires a warning message; based on the first identification information, the target obstacle is classified into a fourth category, wherein the target category includes the fourth category, and the fourth category indicates that the target obstacle needs to be moved by the target robot.
[0079] Optionally, in this embodiment, the first category mentioned above can be understood as pre-setting obstacles that require the target robot to avoid a greater distance, such as rags, clothing, etc.
[0080] Optionally, in this embodiment, the second category can be understood as obstacles that exist for a duration exceeding a preset time. This preset time can be pre-set by the system or manually. The duration is determined by recording the time of each obstacle detection; the duration is the time from the earliest detection of the obstacle to the latest detection. Examples include escalators and water pipes. Due to the extended duration, the target robot needs to clean the area around the obstacle more thoroughly and avoid it by a shorter distance.
[0081] In an exemplary embodiment, the specific type of obstacle can also be directly identified from the image. For example, underwater escalators can be identified as fixed obstacles. In other words, it is not necessary to identify the duration of the obstacle's existence each time. Instead, the type of obstacle is determined by the duration of its existence when the obstacle is first identified. If the obstacle is identified again in subsequent instances, the obstacle can be directly identified from the image.
[0082] It should be noted that the aforementioned fixed obstacles can be understood as obstacles that exist for a duration exceeding the preset time.
[0083] Optionally, in this embodiment, the third category can be understood as the target robot needing to send a reminder message or play a reminder sound effect to the connected target terminal after recognizing the target obstacle. For example, if a human limb is recognized, a reminder message needs to be issued and the obstacle needs to be avoided.
[0084] Optionally, in this embodiment, the fourth category can be understood as obstacles that the target robot needs to move. In this case, the target robot is equipped with a corresponding mechanical control part, such as a robotic arm. When the obstacle is identified as belonging to the fourth category, the robotic arm is controlled to move the obstacle so as to achieve the effect of clearing the area blocked by the obstacle.
[0085] As an optional approach, when the target obstacle is classified as a target category, the target robot is controlled to perform a preset task in the pool based on a target control method corresponding to the target category, including at least one of the following: when the target obstacle is classified as a first category, a first obstacle avoidance distance is set, wherein the first obstacle avoidance distance is greater than a preset initial obstacle avoidance distance of the target robot; when the target robot moves to a distance that satisfies the first obstacle avoidance distance, the target robot is controlled to perform the preset task in the pool according to the first obstacle avoidance distance; when the target obstacle is classified as a second category, a second obstacle avoidance distance is set, wherein the second obstacle avoidance distance is less than a preset initial obstacle avoidance distance of the target robot. Distance; when the target robot moves to a distance that meets the second obstacle avoidance distance, control the target robot to perform a preset task in the pool according to the second obstacle avoidance distance; if the target obstacle is of the third category, mark the position of the target obstacle; send a target reminder message to the target terminal to indicate the position of the target obstacle in the pool, and perform the preset task in the pool according to the target robot's preset initial obstacle avoidance distance; if the target obstacle is of the fourth category, control the mechanical control part of the target robot to move the target obstacle, and clear the position of the target obstacle before the movement, so as to control the target robot to perform the preset task in the pool.
[0086] Optionally, in this embodiment, the first obstacle avoidance distance can be preset based on prior knowledge, or it can be adaptively set according to the size of the identified target obstacle. That is, the first obstacle avoidance distance can be adaptively adjusted according to the size of the target obstacle.
[0087] It should be noted that the second obstacle avoidance distance can be preset based on prior knowledge, or it can be adaptively set according to the size of the identified target obstacle. In other words, the second obstacle avoidance distance can be adaptively adjusted according to the size of the target obstacle.
[0088] As an optional approach, the above method further includes: acquiring the original map of the pool and the location information of the target obstacle, wherein the target robot is set to perform a preset task in the pool according to the original map; marking and updating the original map according to the location information to obtain the target map, so as to control the target robot to perform the preset task in the pool according to the target map.
[0089] Optionally, in this embodiment, the original map of the pool can be pre-marked using a map mapping algorithm. This original map does not mark the location of the target obstacle. When the target obstacle is first detected, its location needs to be marked, and the original map needs to be updated. When the target robot reaches a preset distance from the target location, the target robot is controlled to decelerate, and second identification information collected by the target robot within the pool is acquired. This second identification information represents feature information obtained through image recognition of the target obstacle during the process of cleaning the pool according to the target map. The target location represents the marked location of the target obstacle on the target map. The category of the target obstacle is determined based on the second identification information. If the category of the target obstacle is the target category, the target robot is controlled to perform the preset task within the pool at a target obstacle avoidance distance corresponding to the target control method.
[0090] Optionally, in this embodiment, the original map is a pre-constructed map of the pool. The original map can be a bottom map of the pool, a surface map, or a combination of the bottom and surface maps. This original map is created before the target robot calibrates the position of the target obstacle, or it is created during the process of calibrating the position of the target obstacle.
[0091] Specifically, the original map of the pool can be constructed as follows:
[0092] The target robot is controlled to move along the edge of the pool; during the movement of the target robot, sensor information is collected through sensors installed on the target robot to obtain raw sensor information; and an original map is constructed based on the raw sensor information.
[0093] Alternatively, the target robot can be controlled to rotate once at a preset position, and sensor information can be collected through the sensors installed on the target robot.
[0094] It should be noted that when collecting sensor information by moving along the edge of the pool, features of obstacles located to the side of the target robot or features of obstacles located in front of the target robot can be collected (any object detected by the sensors on the target robot is considered an obstacle, such as the pool wall or the water surface).
[0095] The sensor information can be collected by rotating the robot around once. It can collect the features of obstacles located on the side of the target robot, the features of obstacles located in front of the target robot, or the features of obstacles located on both the side and in front of the target robot at the same time.
[0096] The features of the aforementioned obstacles include wall features located at the bottom of the pool, or features located on the surface of the pool water.
[0097] This application will be described below through specific implementation methods:
[0098] Taking a pool robot as an example, ultrasonic sensors and image acquisition devices are installed on the pool robot. The ultrasonic sensors can detect obstacles, and the image acquisition devices can complete the image acquisition of obstacles.
[0099] Pool robots can perform tasks in swimming pools, such as cleaning, disinfecting, or testing water quality.
[0100] During its operation in the swimming pool, the pool robot uses ultrasonic sensors to collect sensor information (including but not limited to distance information of obstacles and direction information of obstacles relative to the robot) to determine whether an obstacle has been detected. Upon detecting an obstacle, it controls image acquisition equipment to capture and identify the obstacle, ultimately selecting the appropriate control method based on the type of obstacle to control the target robot to clean the pool.
[0101] This application employs AI recognition and real-time machine positioning technology to identify obstacle types and handle them accordingly. It aims to address situations where underwater robots encounter various obstacles during actual operation, leading to blockages or missed cleaning of machine components due to the inability to take effective measures.
[0102] This application primarily utilizes AI recognition technology to identify and classify obstacles, and updates the location of obstacles in the map, thereby implementing different obstacle avoidance strategies for different types of obstacles. Figure 3 This is a schematic diagram of the specific flow of the robot control method according to an embodiment of the present invention, such as... Figure 3 As shown, including but not limited to the following steps:
[0103] S302, during the cleaning process, the pool robot collects image information within a preset range through its image acquisition module, and then uses AI recognition technology to match and identify the type of obstacle in front of it.
[0104] S304: After identifying the type of obstacle, obstacle avoidance is performed according to the obstacle type. For example, if the obstacle has a significant impact on the operation of the pool robot, a larger obstacle avoidance distance is set, and a larger detour distance is reserved when avoiding it. If it is a fixed obstacle type that will exist for a long time, the pool robot can choose a shorter obstacle avoidance distance to clean the dust around the obstacle.
[0105] After identifying an obstacle, the S306 will mark the obstacle's location information based on the robot's own location information.
[0106] It should be noted that this function is helpful in taking some actions in advance when encountering obstacles during a second obstacle clearing. For example, when approaching a previously marked obstacle, it can slow down in advance and reconfirm the obstacle information, which is beneficial for subsequent obstacle avoidance.
[0107] In this embodiment, AI recognition technology is used to identify and classify obstacles and mark them on a map, thereby setting different obstacle avoidance strategies. Compared with conventional machines, it can clean the pool more efficiently, reduce machine collisions and entrapment rates, and is more intelligent.
[0108] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods according to the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk) and includes several instructions to cause a terminal device (which may be a mobile phone, computer, server, or network device, etc.) to execute the methods described in the various embodiments of the present invention.
[0109] This embodiment also provides a robot control device for implementing the above embodiments and preferred embodiments; details already described will not be repeated. As used below, the term "module" can refer to a combination of software and / or hardware that implements a predetermined function. Although the device described in the following embodiments is preferably implemented in software, hardware implementation, or a combination of software and hardware, is also possible and contemplated.
[0110] Figure 4 This is a structural block diagram of a robot control device according to an embodiment of the present invention, such as... Figure 4 As shown, the device includes:
[0111] According to another embodiment of the present invention, a control device for a robot is provided, comprising:
[0112] The acquisition module 402 is used to acquire first identification information collected by the target robot in the pool, wherein the first identification information represents feature information obtained by image recognition of the target obstacle, and the target obstacle is the obstacle detected by the target robot in the pool;
[0113] The determining module 404 is used to determine the category of the target obstacle based on the first identification information, wherein different categories of obstacles that are allowed to be detected in the pool are preset in advance, and the control methods adopted by the target robot to detect different categories of obstacles are allowed to be different;
[0114] The control module 406 is used to control the target robot to perform a preset task in the pool based on the target control method corresponding to the target category when the category of the target obstacle is the target category.
[0115] As an optional solution, the device is used to acquire first identification information collected by the target robot in the pool in the following manner: in response to the target robot starting to execute the preset task, the target image acquisition device is used to acquire images of the target obstacle in the pool to obtain target image data, wherein the target image acquisition device is mounted on the target robot; the target image data is identified to determine the first identification information.
[0116] As an optional solution, the device is configured to, in response to the target robot starting to execute the preset task, acquire images of the target obstacle in the pool using a target image acquisition device to obtain target image data: in response to the target robot starting to execute the preset task, detect the water depth where the target robot is located; determine the acquisition parameters of the target image acquisition device based on the water depth, and acquire images of the target obstacle based on the acquisition parameters to obtain target image data.
[0117] As an optional solution, the device is configured to respond to the target robot starting to execute the preset task by acquiring images of the target obstacle in the pool through a target image acquisition device to obtain target image data: detecting the water cleanliness of the pool to determine the target water cleanliness; determining the acquisition parameters of the target image acquisition device based on the target water cleanliness, and acquiring images of the target obstacle based on the acquisition parameters to obtain target image data.
[0118] As an optional solution, the device is used to identify the target image data and determine the first identification information by: extracting features from the target image data to determine the target feature information of the target obstacle; preprocessing the target feature information and inputting the preprocessed target feature information into the identification model deployed on the target robot to determine the first identification information, wherein the preprocessing is used to increase the weight value of the feature information in the target feature information used to determine the category to which the target obstacle belongs.
[0119] As an optional solution, the device is configured to determine the category of the target obstacle based on the first identification information in at least one of the following ways: determining the target obstacle as a first category based on the first identification information, wherein the target category includes the first category, and the first category indicates that the target obstacle is an obstacle that the target robot needs to move away from; determining the target obstacle as a second category based on the first identification information, wherein the target category includes the second category, and the second category indicates that the target obstacle is a fixed obstacle; determining the target obstacle as a third category based on the first identification information, wherein the target category includes the third category, and the third category indicates that the target obstacle is an obstacle that requires an alert message; determining the target obstacle as a fourth category based on the first identification information, wherein the target category includes the fourth category, and the fourth category indicates that the target obstacle is an obstacle that needs to be moved by the target robot.
[0120] As an optional solution, the device is used to control a target robot to perform a preset task in a pool based on a target control method corresponding to the target category when the category of the target obstacle is the target category, by at least one of the following methods: when the category of the target obstacle is the first category, setting a first obstacle avoidance distance, wherein the first obstacle avoidance distance is greater than a preset initial obstacle avoidance distance of the target robot; when the target robot moves to a distance from the target obstacle that satisfies the first obstacle avoidance distance, controlling the target robot to perform the preset task in the pool according to the first obstacle avoidance distance; when the category of the target obstacle is the second category, setting a second obstacle avoidance distance, wherein the second obstacle avoidance distance is less than a preset initial obstacle avoidance distance of the target robot. Distance; when the target robot moves to a distance that satisfies the second obstacle avoidance distance, control the target robot to perform the preset task in the pool according to the second obstacle avoidance distance; when the target obstacle is of the third category, mark the location of the target obstacle; send a target reminder message to the target terminal to indicate the location of the target obstacle in the pool, and perform the preset task in the pool according to the preset initial obstacle avoidance distance of the target robot; when the target obstacle is of the fourth category, control the mechanical control part of the target robot to move the target obstacle, and clear the location of the target obstacle before the movement, so as to control the target robot to perform the preset task in the pool.
[0121] As an optional solution, the device is further configured to: acquire an original map of the pool and the location information of the target obstacle, wherein the target robot is configured to perform the preset task in the pool according to the original map; mark and update the original map according to the location information to obtain a target map, so as to control the target robot to perform the preset task in the pool according to the target map.
[0122] As an optional solution, the device is further configured to: control the target robot to decelerate when the target robot reaches a preset distance from the target position, and acquire second identification information collected by the target robot in the pool, wherein the second identification information represents feature information obtained by image recognition of the target obstacle during the process of cleaning the pool according to the target map, and the target position represents the marked position of the target obstacle in the target map; determine the category of the target obstacle according to the second identification information, and if the category of the target obstacle is the target category, control the target robot to perform the preset task in the pool according to the target obstacle avoidance distance corresponding to the target control method.
[0123] It should be noted that the above modules can be implemented by software or hardware. For the latter, they can be implemented in the following ways, but are not limited to: all the above modules are located in the same processor; or, the above modules are located in different processors in any combination.
[0124] Embodiments of the present invention also provide a computer-readable storage medium storing a computer program, wherein the computer program is configured to perform the steps in any of the above method embodiments when executed.
[0125] In one exemplary embodiment, the aforementioned computer-readable storage medium may include, but is not limited to, various media capable of storing computer programs, such as a USB flash drive, read-only memory (ROM), random access memory (RAM), portable hard disk, magnetic disk, or optical disk.
[0126] Embodiments of the present invention also provide an electronic device including a memory and a processor, the memory storing a computer program and the processor being configured to run the computer program to perform the steps in any of the above method embodiments.
[0127] In one exemplary embodiment, the electronic device may further include a transmission device and an input / output device, wherein the transmission device is connected to the processor and the input / output device is connected to the processor.
[0128] Embodiments of the present invention also provide a pool robot, which is applied to the robot control method described in the above embodiments. The pool robot has an image acquisition device for acquiring first identification information; and a processor for determining the target control mode based on the first identification information, and controlling the target robot to perform the preset task in the pool according to the target control mode.
[0129] Specific examples in this embodiment can be found in the examples described in the above embodiments and exemplary implementations, and will not be repeated here.
[0130] It is obvious to those skilled in the art that the modules or steps of the present invention described above can be implemented using general-purpose computing devices. They can be centralized on a single computing device or distributed across a network of multiple computing devices. They can be implemented using computer-executable program code, and thus can be stored in a storage device for execution by a computing device. In some cases, the steps shown or described can be performed in a different order than those described herein, or they can be fabricated as separate integrated circuit modules, or multiple modules or steps can be fabricated as a single integrated circuit module. Thus, the present invention is not limited to any particular combination of hardware and software.
[0131] The above description is merely a partial embodiment of the present invention and is not intended to limit the present invention. For those skilled in the art, the present invention can have various modifications and variations. Any modifications, equivalent substitutions, improvements, etc., made within the principles of the present invention should be included within the protection scope of the present invention.
Claims
1. A method for controlling a robot, characterized in that, include: Acquire first identification information collected by the target robot in the pool, wherein the first identification information represents feature information obtained by image recognition of the target obstacle, and the target obstacle is the obstacle detected by the target robot in the pool; The category of the target obstacle is determined based on the first identification information, wherein different categories of obstacles that are allowed to be detected in the pool are preset in advance, and the control methods used by the target robot to detect different categories of obstacles are allowed to be different; When the category of the target obstacle is the target category, the target robot is controlled to perform a preset task in the pool based on the target control method corresponding to the target category; The method further includes: determining the category of the target obstacle as a fourth category based on the first identification information, wherein the target category includes the fourth category, and the fourth category indicates that the target obstacle is an obstacle that needs to be moved by the target robot; when the category of the target obstacle is the fourth category, controlling the mechanical control part of the target robot to move the target obstacle, and clearing the position of the target obstacle before the movement, so as to control the target robot to perform the preset task in the pool.
2. The method according to claim 1, characterized in that, Acquire the first recognition information collected by the target robot in the pool, including: In response to the target robot starting to execute the preset task, the target obstacle in the pool is imaged by a target image acquisition device to obtain target image data, wherein the target image acquisition device is mounted on the target robot; The target image data is identified to determine the first identification information.
3. The method according to claim 2, characterized in that, In response to the target robot starting to execute the preset task, the target image acquisition device acquires images of the target obstacle in the pool to obtain target image data, including: In response to the target robot starting to execute the preset task, the water depth of the target robot is detected; The acquisition parameters of the target image acquisition device are determined based on the water depth, and the target obstacle is image acquired based on the acquisition parameters to obtain target image data.
4. The method according to claim 2, characterized in that, In response to the target robot starting to execute the preset task, the target image acquisition device acquires images of the target obstacle in the pool to obtain target image data, including: The cleanliness of the water in the pool is tested to determine the target water cleanliness. The acquisition parameters of the target image acquisition device are determined based on the target water cleanliness, and the target obstacle is image acquired based on the acquisition parameters to obtain target image data.
5. The method according to claim 2, characterized in that, The process of identifying the target image data and determining the first identification information includes: Feature extraction is performed on the target image data to determine the target feature information of the target obstacle; The target feature information is preprocessed and then input into the recognition model deployed on the target robot to determine the first recognition information. The preprocessing is used to increase the weight value of the feature information in the target feature information used to determine the category to which the target obstacle belongs.
6. The method according to claim 1, characterized in that, The category of the target obstacle is determined based on the first identification information, including at least one of the following: The target obstacle is determined to be a first category based on the first identification information, wherein the target category includes the first category, and the first category indicates that the target obstacle is an obstacle that the target robot needs to move away from; The target obstacle is determined to be a second category based on the first identification information, wherein the target category includes the second category, and the second category indicates that the target obstacle is a fixed obstacle; Based on the first identification information, the target obstacle is determined to be a third category, wherein the target category includes the third category, and the third category indicates that the target obstacle is an obstacle that requires an alert message to be issued.
7. The method according to claim 6, characterized in that, When the category of the target obstacle is a target category, the target robot is controlled to perform a preset task in the pool based on the target control method corresponding to the target category, including at least one of the following: When the target obstacle is of the first category, a first obstacle avoidance distance is set, wherein the first obstacle avoidance distance is greater than the initial obstacle avoidance distance preset by the target robot; when the target robot moves to a distance that satisfies the first obstacle avoidance distance, the target robot is controlled to perform the preset task in the pool according to the first obstacle avoidance distance; If the target obstacle is of the second type, a second obstacle avoidance distance is set, wherein the second obstacle avoidance distance is less than the initial obstacle avoidance distance preset by the target robot; if the target robot moves to a distance that satisfies the second obstacle avoidance distance, the target robot is controlled to perform the preset task in the pool according to the second obstacle avoidance distance; If the target obstacle is classified as the third category, the location of the target obstacle is marked; a target reminder message is sent to the target terminal to indicate the location of the target obstacle in the pool, and the preset task is performed in the pool according to the preset initial obstacle avoidance distance of the target robot.
8. The method according to claim 1, characterized in that, The method further includes: Obtain the original map of the pool and the location information of the target obstacle, wherein the target robot is configured to perform the preset task in the pool according to the original map; The original map is marked and updated based on the location information to obtain a target map, so as to control the target robot to perform the preset task in the pool according to the target map.
9. The method according to claim 8, characterized in that, The method further includes: When the target robot reaches a preset distance from the target position, the target robot is controlled to decelerate, and the second identification information collected by the target robot in the pool is acquired. The second identification information represents the feature information obtained by image recognition of the target obstacle during the process of cleaning the pool according to the target map, and the target position represents the marked position of the target obstacle in the target map. The category of the target obstacle is determined based on the second identification information. If the category of the target obstacle is the target category, the target robot is controlled to perform the preset task in the pool according to the target obstacle avoidance distance corresponding to the target control method.
10. A pool robot, applied to the control method of the robot according to any one of claims 1 to 9, characterized in that, include: Image acquisition device, used to acquire initial recognition information; The processor is configured to determine the target control mode based on the first identification information, and control the target robot to perform the preset task in the pool according to the target control mode.
11. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program, wherein the computer program, when executed by a processor, implements the steps of the method described in any one of claims 1 to 9.
Citation Information
Patent Citations
Swimming pool cleaning robot and swimming pool cleaning method
CN114109095A
Underwater unmanned equipment and control method and device of underwater unmanned equipment
CN116339353A
Method and device for intelligently avoiding obstacles
CN116416518A