CN114129092B - Cleaning area planning system and method for cleaning robot - Google Patents

Cleaning area planning system and method for cleaning robot Download PDF

Info

Publication number
CN114129092B
CN114129092B CN202111495425.0A CN202111495425A CN114129092B CN 114129092 B CN114129092 B CN 114129092B CN 202111495425 A CN202111495425 A CN 202111495425A CN 114129092 B CN114129092 B CN 114129092B
Authority
CN
China
Prior art keywords
stain
area
module
cleaning
point
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202111495425.0A
Other languages
Chinese (zh)
Other versions
CN114129092A (en
Inventor
王金龙
郭震
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Jingwu Intelligent Technology Co ltd
Original Assignee
Shanghai Jingwu Intelligent Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Jingwu Intelligent Technology Co Ltd filed Critical Shanghai Jingwu Intelligent Technology Co Ltd
Priority to CN202111495425.0A priority Critical patent/CN114129092B/en
Publication of CN114129092A publication Critical patent/CN114129092A/en
Application granted granted Critical
Publication of CN114129092B publication Critical patent/CN114129092B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L11/00Machines for cleaning floors, carpets, furniture, walls, or wall coverings
    • A47L11/24Floor-sweeping machines, motor-driven
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L11/00Machines for cleaning floors, carpets, furniture, walls, or wall coverings
    • A47L11/40Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
    • A47L11/4002Installations of electric equipment
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L11/00Machines for cleaning floors, carpets, furniture, walls, or wall coverings
    • A47L11/40Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
    • A47L11/4002Installations of electric equipment
    • A47L11/4008Arrangements of switches, indicators or the like
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L11/00Machines for cleaning floors, carpets, furniture, walls, or wall coverings
    • A47L11/40Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
    • A47L11/4011Regulation of the cleaning machine by electric means; Control systems and remote control systems therefor
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L11/00Machines for cleaning floors, carpets, furniture, walls, or wall coverings
    • A47L11/40Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
    • A47L11/4061Steering means; Means for avoiding obstacles; Details related to the place where the driver is accommodated
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L2201/00Robotic cleaning machines, i.e. with automatic control of the travelling movement or the cleaning operation
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L2201/00Robotic cleaning machines, i.e. with automatic control of the travelling movement or the cleaning operation
    • A47L2201/04Automatic control of the travelling movement; Automatic obstacle detection
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L2201/00Robotic cleaning machines, i.e. with automatic control of the travelling movement or the cleaning operation
    • A47L2201/06Control of the cleaning action for autonomous devices; Automatic detection of the surface condition before, during or after cleaning

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Electromagnetism (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

The invention provides a cleaning area planning method and a cleaning area planning system for a cleaning robot, which comprise the following steps: recognizing the stain of the target object by using the image processing module, and sending a cleaned command to the control module when the stain is not recognized; when the stains are identified, calculating the positions and the number of the stains, and sending the positions and the number of the stains and an uncleaned completion instruction to a stain blocking module; the stain blocking module carries out clustering blocking on the received stain position information, generates a regular region on each block and sends information representing the regular region to the control module; the control module carries out secondary judgment according to the received information, and when the received information is a cleaned finishing instruction, the control module controls the robot to prepare for the next cleaning process operation; and when the received command is an uncleaned finishing command, performing wiping path planning on each block area according to the received characterization rule area information, and traversing all the block area blocks in sequence according to the wiping paths.

Description

Cleaning area planning system and method for cleaning robot
Technical Field
The invention relates to the technical field of image processing, in particular to a cleaning area planning system and a cleaning area planning method for a cleaning robot.
Background
With the improvement of modern civilization, the rapid development of economy and the improvement of living standard of people, intelligent cleaners of hotels gradually enter the public visual field, and the development trend of the intelligent cleaners of hotels is faster and faster.
At present, cleaning of hotel rooms is mainly completed in a manual mode, the cleaning process is slow, the cost is relatively high, and the function of a robot used in a hotel is mainly delivery. At present, the cleaning robot mainly has the following two problems: firstly, the method comprises the following steps: the cleanness is not high, and the cleaning is not thorough; secondly, the method comprises the following steps: the cleaning efficiency is slow. Aiming at the spot points recognized by vision, if the spot points are efficiently and accurately returned to a control module of the robot, the secondary cleaning efficiency of the robot is improved.
Patent document CN112388631a (application number: 202011087305.2) discloses a method and apparatus for cleaning a planned area by a robot, wherein the method includes: dividing a region to be cleaned into a plurality of sub-regions according to a preset rule; when a target sub-region meeting a first preset condition exists in the sub-regions, automatically combining the target sub-region with a sub-region adjacent to the target sub-region; and controlling the robot to clean the merged subarea. Therefore, the number of sub-areas which need to be processed by the robot independently is reduced, and the working efficiency of the robot can be effectively improved.
Disclosure of Invention
In view of the defects in the prior art, the present invention provides a cleaning area planning method and system for a cleaning robot.
The invention provides a cleaning area planning method of a cleaning robot, which comprises the following steps
Step S1: recognizing the stain of the target object by using the image processing module, and sending a cleaned command to the control module when the stain is not recognized; when the stains are identified, calculating the positions and the number of the stains, and sending the positions and the number of the stains and an uncleaned completion instruction to a stain blocking module;
step S2: the stain blocking module carries out clustering blocking on the received stain position information, generates a regular region on each block and sends information representing the regular region to the control module;
and step S3: the control module carries out secondary judgment according to the received information, and when the received information is a cleaned finishing instruction, the control module controls the robot to prepare for the next cleaning process operation; and when the received command is an uncleaned finishing command, performing wiping path planning on each block area according to the received characterization rule area information, and traversing all the block area blocks in sequence according to the wiping paths.
Preferably, the step S1 employs:
step S1.1: collecting the cleaned object image by using an RGBD depth camera visual recognition module, and performing preprocessing operation by using median filtering to obtain a preprocessed object image;
step S1.2: identifying stains in the preprocessed object image, and sending a cleaning completion instruction to the control module when the stains are not identified; when the stains are identified, segmenting a stain area by using a self-adaptive threshold segmentation algorithm; and counting the positions and the number of the stains by using a connected domain algorithm of the image, and sending the position information and the number of the stains and an uncleaned completion instruction to the stain blocking module.
Preferably, the step S2 employs:
step S2.1: in the cleaning process of the cleaning robot, the size of the clamp determines the diameter of the maximum contact area of the robot at a certain position point and the surface of a cleaning object, the size of the clamp is set as a stain position distance segmentation threshold, the identified stain position points are clustered according to the current threshold, and the maximum distance of each block area is ensured not to exceed the current threshold t;
step S2.2: performing plane fitting on the three-dimensional position point coordinates of each block area, and calculating a normal vector; projecting the stain points in the block areas to a normal vector plane according to the normal vector; in a two-dimensional space where a current normal vector plane is located, firstly, a convex hull of a contour point set is solved, then, a minimum external rectangle of the convex hull is solved by utilizing a rotating caliper algorithm, 4 corner points of the minimum external rectangle are reversely projected into a three-dimensional space again, and 4 corner points of each area block are sent to a control module.
Preferably, said step S2.1 employs:
step S2.1.1: taking a random point in the spot coordinate points as an initial point, and storing the initial point in a stack m;
step S2.1.2: traversing all other stain coordinate points, sequentially calculating Euclidean distances dist from the initial point, and storing the stain coordinate points of which the Euclidean distances dist are smaller than or equal to a threshold value t in the same block area with the initial point;
step S2.1.3: randomly selecting one point from the rest stain coordinate points as a starting point, and storing the starting point in an m stack; repeatedly triggering the steps S2.1.2 to S2.1.3 until the spot coordinate points are blocked after traversing of the irresponsible coordinate points is finished;
the stack m is used for storing the starting point of each block area, and the number of elements in the stack m determines the block number of the final area;
the step S2.1.2 employs:
Figure BDA0003399929630000031
wherein the starting point p 1 (x 1 ,y 1 ,z 1 ) (ii) a A certain point p in the soil coordinate point set 2 (x 2 ,y 2 ,z 2 )。
Preferably, the step S3 employs: and when the received information state is that the dirt is recognized and the three-dimensional position information of the dirt point is received, performing S-shaped area track planning on each block area and performing S-shaped traversal on all the area blocks.
The invention provides a cleaning area planning system of a cleaning robot, which comprises
An image processing module: recognizing the stain of the target object, and sending a cleaned finishing instruction to the control module when the stain is not recognized; when the stains are identified, calculating the positions and the number of the stains, and sending the positions and the number of the stains and an uncleaned completion instruction to a stain blocking module;
stain blocking module: clustering and partitioning the received stain position information, generating a regular region for each partition, and sending information representing the regular region to a control module;
a control module: performing secondary judgment according to the received information, and controlling the robot to prepare for the next cleaning process operation when a cleaning completion instruction is received; and when the received command is an uncleaned finishing command, performing wiping path planning on each block area according to the received characterization rule area information, and traversing all block area blocks in sequence according to the wiping path.
Preferably, in the image processing module:
a module M1: collecting the cleaned object image by using an RGBD depth camera visual recognition module, and performing preprocessing operation by using median filtering to obtain a preprocessed object image;
a module M2: identifying stains in the preprocessed object image, and sending a cleaning completion instruction to the control module when the stains are not identified; when the stains are identified, segmenting a stain area by using a self-adaptive threshold segmentation algorithm; and counting the positions and the number of the stains by using a connected domain algorithm of the image, and sending the position information and the number of the stains and an uncleaned completion instruction to the stain blocking module.
Preferably, in the stain blocking module:
a module M3: in the cleaning process of the cleaning robot, the size of the clamp determines the diameter of the maximum contact area of the robot at a certain position point and the surface of a cleaning object, the size of the clamp is set as a stain position distance segmentation threshold, the identified stain position points are clustered according to the current threshold, and the maximum distance of each block area is ensured not to exceed the current threshold t;
a module M4: performing plane fitting on the three-dimensional position point coordinates of each block area, and calculating a normal vector; projecting the stain points in the block areas to a normal vector plane according to the normal vector; in a two-dimensional space where a current normal vector plane is located, firstly, a convex hull of a contour point set is solved, then, a minimum external rectangle of the convex hull is solved by utilizing a rotating caliper algorithm, 4 corner points of the minimum external rectangle are reversely projected into a three-dimensional space again, and 4 corner points of each area block are sent to a control module.
Preferably, said module M3.1 employs:
module M3.1.1: taking a random point in the spot coordinate points as a starting point, and storing the starting point in a stack m;
module M3.1.2: traversing all other stain coordinate points, sequentially calculating Euclidean distances dist from the initial point, and storing the stain coordinate points of which the Euclidean distances dist are smaller than or equal to a threshold value t in the same block area with the initial point;
module M3.1.3: randomly selecting one point from the rest stain coordinate points as a starting point, and storing the starting point in an m stack; repeatedly triggering the modules M3.1.2 to M3.1.3 until the traversing of the irresponsible coordinate points is finished, and blocking the stain coordinate points;
the stack m is used for storing the starting point of each block area, and the number of elements in the stack m determines the block number of the final area.
The module M3.1.2 employs:
Figure BDA0003399929630000041
wherein the starting point p 1 (x 1 ,y 1 ,z 1 ) (ii) a A certain point p in the soil coordinate point set 2 (x 2 ,y 2 ,z 2 )。
Preferably, in the control module shown: and when the received information state is that the dirt is recognized and the three-dimensional position information of the dirt point is received, performing S-shaped area track planning on each block area and performing S-shaped traversal on all the area blocks.
Compared with the prior art, the invention has the following beneficial effects:
1. the invention provides an efficient feedback scheme for the point location information of the secondary cleaning stain of the robot, optimizes the cleaning track flow and improves the cleaning efficiency of the robot;
2. the method is suitable for any plane scene, has high algorithm universality and strong robustness, can be applied to a plurality of cleaning scenes, and provides a good solution for cleaning intellectualization;
3. the maximum region generation operation of the dirty region can convert an irregular region into a regular region, so that the reusability of the algorithm is improved, the stability of the process is improved to a great extent, and the deployment efficiency is improved.
Drawings
Other features, objects and advantages of the invention will become more apparent upon reading of the detailed description of non-limiting embodiments with reference to the following drawings:
fig. 1 is a flow chart of a clean area planning system.
Fig. 2 is a schematic diagram of area trajectory planning.
FIG. 3 is a schematic diagram of a convex set point distribution.
Detailed Description
The present invention will be described in detail with reference to specific examples. The following examples will aid those skilled in the art in further understanding the present invention, but are not intended to limit the invention in any manner. It should be noted that it would be obvious to those skilled in the art that various changes and modifications can be made without departing from the spirit of the invention. All falling within the scope of the present invention.
Example 1
After the cleaning robot finishes cleaning, in order to improve the cleanliness, in the process of rechecking, the spot position of the stain is recognized by vision, then, the spot is quickly partitioned by using a distance threshold, the maximum area generating operation is carried out in each partition, and the normal vector of the area surface is returned, so that the pose information is provided for the robot, finally, the cleaning path planning is carried out on each partitioned area, and all the areas are cleaned in a traversing manner according to an S-shaped route, so that the repeated path of the robot can be effectively avoided, and the cleaning efficiency can be quickly improved.
A cleaning area planning method for a cleaning robot provided by the invention is shown in figure 1 and comprises the following steps
Step S1: performing stain rechecking work on the cleaned target object by using the image processing module, judging whether cleaning work is performed again according to the identification condition of the stains, and sending a cleaned finishing instruction to the control module when the stains are not identified; when the stains are identified, peripheral surrounding vertexes of all the stains and uncleaned finishing instructions are sent to the stain blocking module;
step S2: the stain blocking module carries out distance clustering on the received three-dimensional coordinate point data, generates a regular region on each blocked block after clustering, and sends characteristic information representing each region block to the control module;
and step S3: the control module carries out secondary judgment according to the received information, and when the received information is a cleaned finishing instruction, the control module controls the robot to prepare for the next cleaning process operation; and when the received command is an uncleaned finishing command, performing wiping path planning on each block area according to the received characterization rule area information, and traversing all the block area blocks in sequence according to the wiping paths.
Specifically, the step S1 employs:
step S1.1: the RGBD depth camera visual recognition module is used for collecting the cleaned object image, and the median filtering is used for preprocessing operation to obtain the preprocessed object image, so that the influence of noise on the detection result is reduced;
step S1.2: identifying stains in the preprocessed object image, and sending a cleaning completion instruction to the control module when the stains are not identified; when the stains are identified, segmenting a stain area by using a self-adaptive threshold segmentation algorithm; and counting the positions and the number of the stains by using a connected domain algorithm of the image, and sending the position information and the number of the stains and an uncleaned completion instruction to the stain blocking module.
Specifically, the step S2 employs: and after receiving the message, the stain blocking module performs clustering blocking on the received stain position information, generates a regular region on each block, and sends information representing the regular region to the control module.
Step S2.1: in the cleaning process of the cleaning robot, the size of the clamp determines the diameter of the maximum contact area of the robot at a certain position point and the surface of a cleaning object, the size of the clamp is set as a stain position distance segmentation threshold, the identified stain position points are clustered according to the current threshold, and the maximum distance of each block area is ensured not to exceed the current threshold t;
step S2.2: carrying out plane fitting on the three-dimensional position point coordinates of each block area, and calculating a normal vector of the three-dimensional position point coordinates; projecting the stain points in the block areas to a normal vector plane according to the normal vector; in a two-dimensional space where a current normal vector plane is located, firstly, a convex hull of a contour point set is solved, then, a minimum external rectangle of the convex hull is solved by utilizing a rotating caliper algorithm, 4 corner points of the minimum external rectangle are reversely projected into a three-dimensional space again, and 4 corner points of each area block are sent to a control module.
Specifically, the step S2.1 employs:
step S2.1.1: taking a random point in the spot coordinate points as an initial point, and storing the initial point in a stack m;
step S2.1.2: traversing all other stain coordinate points, sequentially calculating Euclidean distances dist from the initial point, and storing the stain coordinate points of which the Euclidean distances dist are smaller than or equal to a threshold value t in the same block area with the initial point;
step S2.1.3: randomly selecting one point from the rest stain coordinate points as a starting point, and storing the starting point in an m stack; repeatedly triggering the steps S2.1.2 to S2.1.3 until the spot coordinate points are blocked after traversing of the irresponsible coordinate points is finished; the state of the point set after blocking is S1, S2, S3, S4 and S5 shown in FIG. 2;
the stack m is used for storing the starting point of each block area, and the number of elements in the stack m determines the block number of the final area.
Specifically, the step S2.1.2 adopts:
Figure BDA0003399929630000061
wherein the starting point p 1 (x 1 ,y 1 ,z 1 ) (ii) a A certain point p in the spot coordinate point set 2 (x 2 ,y 2 ,z 2 )。
The step S2.2 adopts:
the convex hull implementation algorithm of the two-dimensional spot position coordinate is as follows:
step S2.2.1: placing all the points in a two-dimensional coordinate system, wherein the point with the minimum vertical coordinate is a point on the convex hull, such as a point P0 shown in the following figure 3;
step S2.2.2: translating all point coordinates once to make P0 as an origin;
step S2.2.3: and calculating the amplitude angle alpha of each point relative to the P0, and sequencing the points in a descending order. When α is the same, the row closer to the distance P0 is ahead. The first point P0 and the second point P1 of the convex hull are placed inside the stack. Then take the point after P1 as the current point, P2, and then start to find the third point.
Step S2.2.4: the point at which P0 is connected to the top of the stack, resulting in a straight line L. To see if the current point is to the right or left of the line L, if it is to the left, then step S2.2.5 is performed; if on or to the left of the straight line, step S2.2.6 is performed.
Step S2.2.5: if on the right, then the top element is not a point on the convex hull, the top element is popped, STEP S2.2.4 is performed.
Step S2.2.6: the current point is a point on the convex hull, it is pushed onto the stack, and step S2.2.7 is performed.
Step S2.2.7: check that current point P2 is the last element that is not the result of step S2.2.3. Is the last element, and ends. If not, the point after P2 is taken as the current point, and the process returns to S2.2.4.
Step S2.2.8: the last element in the stack is the point on the convex hull.
Convex hull rotation jamming algorithm:
step S2.2.9: four polygon endpoints of the convex hull midpoint in the algorithm are calculated, and are called xmip, xmaxP, yminP and ymaxP.
Step S2.2.10: two "chunking" sets were determined by constructing four tangents to P at four points.
Step S2.2.11: if one (or two) line coincides with an edge, the area of the rectangle determined by the four lines is calculated and set to the current minimum. Otherwise the current minimum is set to infinity.
Step S2.2.12: the lines are rotated in time until one of the lines coincides with one edge of the polygon.
Step S2.2.13: the area of the new rectangle is calculated and compared to the current minimum. If the current minimum value is smaller than the current minimum value, updating and saving the information of the minimum rectangle. Repeating the steps S2.2.12 to S2.2.13 until the wire is rotated by more than 90 degrees.
Step S2.2.14: and outputting the minimum area of the circumscribed rectangle.
Specifically, the step S3 employs: when the received information state is that the dirt is recognized and the three-dimensional position information of the dirt point is received, S-region trajectory planning is performed on each block region, and S-type traversal is performed on all the region blocks, so that the repetition rate of the trajectory can be reduced, and the cleaning efficiency can be improved by performing the S-region trajectory planning, as shown in fig. 2.
The invention provides a cleaning area planning system of a cleaning robot, which comprises
An image processing module: performing stain rechecking work on the cleaned target object, judging whether cleaning work is performed again according to the identification condition of the stains, and sending a cleaned finishing instruction to the control module when the stains are not identified; when the stains are identified, peripheral surrounding vertexes of all the stains and uncleaned finishing instructions are sent to the stain blocking module;
stain blocking module: performing distance clustering on the received three-dimensional coordinate point data, generating a regular region for each clustered block, and sending characteristic information representing each region block to a control module;
a control module: performing secondary judgment according to the received information, and controlling the robot to prepare for the next cleaning process operation when a cleaning completion instruction is received; and when the received command is an uncleaned finishing command, performing wiping path planning on each block area according to the received characterization rule area information, and traversing all the block area blocks in sequence according to the wiping paths.
Specifically, the image processing module employs:
a module M1: collecting the cleaned object image by using an RGBD depth camera visual identification module, and performing pretreatment operation by using median filtering to obtain a pretreated object image, thereby reducing the influence of noise on a detection result;
a module M2: identifying stains in the preprocessed object image, and sending a cleaning completion instruction to the control module when the stains are not identified; when the stains are identified, segmenting a stain area by using a self-adaptive threshold segmentation algorithm; and counting the positions and the number of the stains by using a connected domain algorithm of the image, and sending stain position information, the number and an uncleaned completion instruction to the stain blocking module.
Specifically, the stain blocking module employs: after receiving the message, clustering and partitioning the received stain position information, generating a rule area for each partition, and sending the information representing the rule area to the control module.
A module M3: in the cleaning process of the cleaning robot, the size of the clamp determines the diameter of the maximum contact area of the robot at a certain position point and the surface of a cleaning object, the size of the clamp is set as a stain position distance segmentation threshold, the identified stain position points are clustered according to the current threshold, and the maximum distance of each block area is ensured not to exceed the current threshold t;
a module M4: carrying out plane fitting on the three-dimensional position point coordinates of each block area, and calculating a normal vector of the three-dimensional position point coordinates; projecting the stain points in the block areas to a normal vector plane according to the normal vector; in a two-dimensional space where a current normal vector plane is located, firstly, a convex hull of a contour point set is solved, then, a minimum external rectangle of the convex hull is solved by utilizing a rotating caliper algorithm, 4 corner points of the minimum external rectangle are inversely projected into a three-dimensional space again, and 4 corner points of each area block are sent to a control module.
Specifically, the module M3 employs:
module M3.1: taking a random point in the spot coordinate points as an initial point, and storing the initial point in a stack m;
module M3.2: traversing all other stain coordinate points, sequentially calculating Euclidean distances dist from the initial point, and storing the stain coordinate points of which the Euclidean distances dist are smaller than or equal to a threshold value t in the same block area with the initial point;
module M3.3: randomly selecting one point from the rest stain coordinate points as a starting point, and storing the starting point in an m stack; repeatedly triggering the module M3.2 to the module M3.3 until the traversing of the non-responsibility coordinate points is finished, and blocking the stain coordinate points; the state of the point set after blocking is S1, S2, S3, S4 and S5 shown in FIG. 2;
the stack m is used for storing the starting point of each block area, and the number of elements in the stack m determines the block number of the final area.
In particular, the module M3.2 employs:
Figure BDA0003399929630000091
wherein the starting point p 1 (x 1 ,y 1 ,z 1 ) (ii) a A certain point p in the spot coordinate point set 2 (x 2 ,y 2 ,z 2 )。
In said module M4:
the convex hull implementation algorithm of the two-dimensional spot position coordinate is as follows:
module M4.1: placing all the points in a two-dimensional coordinate system, wherein the point with the minimum vertical coordinate is a point on the convex hull, such as a point P0 shown in the following figure 3;
module M4.2: translating all point coordinates once to make P0 as an origin;
module M4.3: and calculating the amplitude angle alpha of each point relative to the P0, and sequencing the points in a descending order. When α is the same, the row closer to the distance P0 is ahead. The first point P0 and the second point P1 of the convex hull are placed inside the stack. Then take the point after P1 as the current point, P2, and then start to find the third point.
Module M4.4: the point at which P0 is connected to the top of the stack, resulting in a straight line L. See if the current point is on the right or left of the straight line L, if on the left, the module M4.5 is triggered; module M4.6 is triggered if on or to the left of the straight line.
Module M4.5: if on the right, the top element is not the point on the convex hull, the top element is popped off the stack, triggering module M4.4.
Module M4.6: the current point is the point on the convex hull, which is pushed onto the stack, triggering the module M4.7.
Module M4.7: it is checked whether the current point P2 is the last element of that result of the module M4.3. Is the last element, and ends. If not, the point behind P2 is taken as the current point, and the trigger module M4.4 is returned.
Module M4.8: the last element in the stack is the point on the convex hull.
Convex hull rotation jamming algorithm:
module M4.9: calculating four polygon endpoints of the convex hull midpoint in the algorithm, namely xmip, xmaxP, yminP and ymaxP;
module M4.10: two "chunking" sets were determined by constructing four tangents to P at four points.
Module M4.11: if one (or two) line coincides with an edge, the area of the rectangle determined by the four lines is calculated and set to the current minimum. Otherwise the current minimum is set to infinity.
Module M4.12: the lines are rotated in time until one of the lines coincides with one edge of the polygon.
Module M4.13: the area of the new rectangle is calculated and compared to the current minimum. If the current minimum value is smaller than the current minimum value, updating and saving the information of the minimum rectangle. The steps module M4.12 to module M4.13 are repeated until the wire has rotated through an angle greater than 90 degrees.
Module M4.14: and outputting the minimum area of the circumscribed rectangle.
Specifically, in the control module: when the received information state is that the stains are recognized and the three-dimensional position information of stain points is received, S-region trajectory planning is performed on each block region, and S-type traversal is performed on all the region blocks, so that the repetition rate of the trajectory can be reduced, and the cleaning efficiency can be improved by performing the S-region trajectory planning, as shown in fig. 2.
Those skilled in the art will appreciate that, in addition to implementing the systems, apparatus, and various modules thereof provided by the present invention in purely computer readable program code, the same procedures can be implemented entirely by logically programming method steps such that the systems, apparatus, and various modules thereof are provided in the form of logic gates, switches, application specific integrated circuits, programmable logic controllers, embedded microcontrollers and the like. Therefore, the system, the device and the modules thereof provided by the present invention can be considered as a hardware component, and the modules included in the system, the device and the modules thereof for implementing various programs can also be considered as structures in the hardware component; modules for performing various functions may also be considered to be both software programs for performing the methods and structures within hardware components.
The foregoing description has described specific embodiments of the present invention. It is to be understood that the present invention is not limited to the specific embodiments described above, and that various changes or modifications may be made by one skilled in the art within the scope of the appended claims without departing from the spirit of the invention. The embodiments and features of the embodiments of the present application may be combined with each other arbitrarily without conflict.

Claims (8)

1. A cleaning area planning method for a cleaning robot is characterized by comprising
Step S1: recognizing the stain of the target object by using the image processing module, and sending a cleaned command to the control module when the stain is not recognized; when the stains are identified, calculating the positions and the number of the stains, and sending the positions and the number of the stains and an uncleaned finishing instruction to a stain blocking module;
step S2: the stain blocking module carries out clustering blocking on the received stain position information, generates a regular region on each block and sends information representing the regular region to the control module;
and step S3: the control module carries out secondary judgment according to the received information, and when the received information is a cleaned finishing instruction, the control module controls the robot to prepare for the next cleaning process operation; when a command of not cleaning is received, performing wiping path planning on each block area according to the received characterization rule area information, and traversing all block area blocks in sequence according to wiping paths;
the step S2 comprises the following steps:
step S2.1: in the cleaning process of the cleaning robot, the size of the clamp determines the diameter of the maximum contact area of the robot at a certain position point and the surface of a cleaning object, the size of the clamp is set as a stain position distance segmentation threshold, the identified stain position points are clustered according to the current threshold, and the maximum distance of each block area is ensured not to exceed the current threshold t;
step S2.2: performing plane fitting on the three-dimensional position point coordinates of each block area, and calculating a normal vector; projecting the stain points in the block areas to a normal vector plane according to the normal vector; in a two-dimensional space where a current normal vector plane is located, firstly, a convex hull of a contour point set is solved, then, a minimum external rectangle of the convex hull is solved by utilizing a rotating caliper algorithm, 4 corner points of the minimum external rectangle are reversely projected into a three-dimensional space again, and 4 corner points of each area block are sent to a control module.
2. A cleaning area planning method for a cleaning robot according to claim 1, characterized in that said step S1 employs:
step S1.1: collecting the cleaned object image by using an RGBD depth camera visual identification module, and performing pretreatment operation by using median filtering to obtain a pretreated object image;
step S1.2: identifying stains in the preprocessed object image, and sending a cleaning completion instruction to the control module when the stains are not identified; when the stains are identified, segmenting a stain area by using a self-adaptive threshold segmentation algorithm; and counting the positions and the number of the stains by using a connected domain algorithm of the image, and sending stain position information, the number and an uncleaned completion instruction to the stain blocking module.
3. A cleaning area planning method for a cleaning robot according to claim 1, characterized in that said step S2.1 employs:
step S2.1.1: taking a random point in the spot coordinate points as an initial point, and storing the initial point in a stack m;
step S2.1.2: traversing all other stain coordinate points and calculating Euclidean distance between the coordinate points and the initial point in sequence
Figure 792033DEST_PATH_IMAGE002
And the Euclidean distance
Figure 318829DEST_PATH_IMAGE002
Storing the soil coordinate points smaller than or equal to the threshold value t in the same block area with the starting point;
step S2.1.3: randomly selecting one point from the rest stain coordinate points as a starting point, and storing the starting point in an m stack; repeatedly triggering the steps S2.1.2 to S2.1.3 until the spot coordinate points are blocked after traversing of the irresponsible coordinate points is finished;
the stack m is used for storing the starting point of each block area, and the number of elements in the stack m determines the block number of the final area;
the step S2.1.2 employs:
Figure 456549DEST_PATH_IMAGE003
wherein the starting point
Figure 308968DEST_PATH_IMAGE004
(ii) a A certain point in the spot coordinate point set
Figure 532139DEST_PATH_IMAGE005
4. A cleaning area planning method for a cleaning robot according to claim 1, characterized in that said step S3 employs: and when the received information state is that the dirt is recognized and the three-dimensional position information of the dirt point is received, performing S-shaped area track planning on each block area and performing S-shaped traversal on all the area blocks.
5. A cleaning area planning system for a cleaning robot is characterized by comprising
An image processing module: recognizing the stain of the target object, and sending a cleaned finishing instruction to the control module when the stain is not recognized; when the stains are identified, calculating the positions and the number of the stains, and sending the positions and the number of the stains and an uncleaned completion instruction to a stain blocking module;
stain blocking module: clustering and partitioning the received stain position information, generating a regular region for each partition, and sending information representing the regular region to a control module;
a control module: performing secondary judgment according to the received information, and controlling the robot to prepare for the next cleaning process operation when a cleaning completion instruction is received; when a command of not cleaning is received, performing wiping path planning on each block area according to the received characterization rule area information, and traversing all block area blocks in sequence according to wiping paths;
in the stain blocking module:
a module M3: in the cleaning process of the cleaning robot, the size of the clamp determines the diameter of the maximum contact area of the robot at a certain position point and the surface of a cleaning object, the size of the clamp is set as a stain position distance segmentation threshold, the identified stain position points are clustered according to the current threshold, and the maximum distance of each block area is ensured not to exceed the current threshold t;
a module M4: performing plane fitting on the three-dimensional position point coordinates of each block area, and calculating a normal vector; projecting the stain points in the block areas to a normal vector plane according to the normal vector; in a two-dimensional space where a current normal vector plane is located, firstly, a convex hull of a contour point set is solved, then, a minimum external rectangle of the convex hull is solved by utilizing a rotating caliper algorithm, 4 corner points of the minimum external rectangle are reversely projected into a three-dimensional space again, and 4 corner points of each area block are sent to a control module.
6. A cleaning robot cleaning area planning system according to claim 5, characterized in that in the image processing module:
a module M1: collecting the cleaned object image by using an RGBD depth camera visual identification module, and performing pretreatment operation by using median filtering to obtain a pretreated object image;
a module M2: identifying stains in the preprocessed object image, and sending a cleaning completion instruction to the control module when the stains are not identified; when the stains are identified, segmenting a stain area by using a self-adaptive threshold segmentation algorithm; and counting the positions and the number of the stains by using a connected domain algorithm of the image, and sending stain position information, the number and an uncleaned completion instruction to the stain blocking module.
7. A cleaning robot cleaning area planning system according to claim 5, characterized in that said module M3 employs:
module M3.1: taking a random point in the spot coordinate points as a starting point, and storing the starting point in a stack m;
module M3.2: traversing all other dirty mark coordinate points and calculating Euclidean distance between the coordinate points and the initial point in sequence
Figure 862626DEST_PATH_IMAGE002
And the Euclidean distance
Figure 854853DEST_PATH_IMAGE002
Storing the soil coordinate points smaller than or equal to the threshold value t in the same block area with the starting point;
module M3.3: randomly selecting one point from the rest stain coordinate points as a starting point, and storing the starting point in an m stack; repeatedly triggering the module M3.2 to the module M3.3 until the traversing of the non-responsibility coordinate points is finished, and blocking the stain coordinate points;
the stack m is used for storing the starting point of each block area, and the number of elements in the stack m determines the block number of the final area;
the module M3.2 employs:
Figure 19118DEST_PATH_IMAGE003
wherein the starting point
Figure 877656DEST_PATH_IMAGE004
(ii) a A certain point in the spot coordinate point set
Figure 621621DEST_PATH_IMAGE005
8. A cleaning robot cleaning area planning system according to claim 5, characterized in that in the control module: and when the received information state is that the dirt is recognized and the three-dimensional position information of the dirt point is received, performing S-shaped area track planning on each block area and performing S-shaped traversal on all the area blocks.
CN202111495425.0A 2021-12-08 2021-12-08 Cleaning area planning system and method for cleaning robot Active CN114129092B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111495425.0A CN114129092B (en) 2021-12-08 2021-12-08 Cleaning area planning system and method for cleaning robot

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111495425.0A CN114129092B (en) 2021-12-08 2021-12-08 Cleaning area planning system and method for cleaning robot

Publications (2)

Publication Number Publication Date
CN114129092A CN114129092A (en) 2022-03-04
CN114129092B true CN114129092B (en) 2022-10-14

Family

ID=80385351

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111495425.0A Active CN114129092B (en) 2021-12-08 2021-12-08 Cleaning area planning system and method for cleaning robot

Country Status (1)

Country Link
CN (1) CN114129092B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116942036A (en) * 2022-04-15 2023-10-27 北京与光科技有限公司 Control method and device of cleaning equipment and cleaning system
CN115040038A (en) * 2022-06-22 2022-09-13 杭州萤石软件有限公司 Robot control method and device and robot

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109003262A (en) * 2018-06-29 2018-12-14 炬大科技有限公司 Stain clean method and device
CN109571482A (en) * 2019-01-02 2019-04-05 京东方科技集团股份有限公司 Sweeping robot paths planning method and related system, readable storage medium storing program for executing
CN112274065A (en) * 2020-10-29 2021-01-29 尚科宁家(中国)科技有限公司 Cleaning robot and control method thereof
CN112471976A (en) * 2020-12-08 2021-03-12 珠海格力电器股份有限公司 Sweeping robot control method, device, equipment and computer readable medium

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201239643A (en) * 2011-03-30 2012-10-01 Micro Star Int Co Ltd Clean path guiding method with dirt detection
WO2020080088A1 (en) * 2018-10-15 2020-04-23 三菱電機株式会社 Information processing device

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109003262A (en) * 2018-06-29 2018-12-14 炬大科技有限公司 Stain clean method and device
CN109571482A (en) * 2019-01-02 2019-04-05 京东方科技集团股份有限公司 Sweeping robot paths planning method and related system, readable storage medium storing program for executing
CN112274065A (en) * 2020-10-29 2021-01-29 尚科宁家(中国)科技有限公司 Cleaning robot and control method thereof
CN112471976A (en) * 2020-12-08 2021-03-12 珠海格力电器股份有限公司 Sweeping robot control method, device, equipment and computer readable medium

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于计算机视觉的垃圾检测与清洁度评定方法研究;王一田;《中国优秀博硕士学位论文全文数据库(硕士)工程科技Ⅰ辑》;20210815;B027-520 *

Also Published As

Publication number Publication date
CN114129092A (en) 2022-03-04

Similar Documents

Publication Publication Date Title
CN114129092B (en) Cleaning area planning system and method for cleaning robot
EP4043988B1 (en) Method for planning surface cleaning for a robot travelling along the border, chip and robot
Zhong et al. Detect-SLAM: Making object detection and SLAM mutually beneficial
US20200027276A1 (en) Method and Apparatus for Representing a Virtual Object in a Real Environment
JP4680955B2 (en) Mobile robot region separation method and apparatus
CN110197153B (en) Automatic wall identification method in house type graph
Faugeras et al. Quantitative and qualitative comparison of some area and feature-based stereo algorithms
CN110210377A (en) A kind of wall and door and window information acquisition method rebuild for three-dimensional house type
Lee et al. Extraction of line features in a noisy image
CN113985866B (en) Sweeping robot path planning method and device, electronic equipment and storage medium
CN113064407B (en) Cleaning method and device for full-area coverage, cleaning robot and storage device
CN113744329A (en) Automatic region division and robot walking control method, system, equipment and medium
Kang et al. Path planning for complete and efficient coverage operation of mobile robots
Yoon et al. Artificial landmark tracking based on the color histogram
Dumitru et al. Interior reconstruction using the 3D hough transform
CN114587191B (en) Method and device for cleaning subareas of sweeper, computer equipment and storage medium
CN110276839B (en) Bottom fragment removing method based on live-action three-dimensional data
CN115393372A (en) Map partitioning method, map partitioning device, autonomous mobile device and storage medium
CN114119631A (en) Automatic generation method and system for cleaning area
Do Region based detection of occluded people for the tracking in video image sequences
Myung et al. Virtual door-based coverage path planning for mobile robot
Eberst et al. Robust video-based object recognition integrating highly redundant cues for indexing and verification
Wu et al. A multi-segment lane-switch algorithm for efficient real-time lane detection
Suveg et al. Localization and generation of building models
CN115251766A (en) Cleaning method of cleaning robot and cleaning robot

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address

Address after: 311231 building 3, No. 477, Hongxing Road, Qiaonan block, economic and Technological Development Zone, Xiaoshan District, Hangzhou City, Zhejiang Province

Patentee after: Hangzhou Jingwu Intelligent Technology Co.,Ltd.

Address before: Room 12, 3rd floor, No.2 Lane 1446, Yunguan Road, Lingang New District, Pudong New Area pilot Free Trade Zone, Shanghai, 201306

Patentee before: Shanghai Jingwu Intelligent Technology Co.,Ltd.

CP03 Change of name, title or address