CN113768419B - Method and device for determining sweeping direction of sweeper and sweeper - Google Patents

Method and device for determining sweeping direction of sweeper and sweeper Download PDF

Info

Publication number
CN113768419B
CN113768419B CN202111095032.0A CN202111095032A CN113768419B CN 113768419 B CN113768419 B CN 113768419B CN 202111095032 A CN202111095032 A CN 202111095032A CN 113768419 B CN113768419 B CN 113768419B
Authority
CN
China
Prior art keywords
sweeper
point cloud
cloud data
plane
determining
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
CN202111095032.0A
Other languages
Chinese (zh)
Other versions
CN113768419A (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.)
Anker Innovations Co Ltd
Original Assignee
Anker Innovations 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 Anker Innovations Co Ltd filed Critical Anker Innovations Co Ltd
Priority to CN202111095032.0A priority Critical patent/CN113768419B/en
Publication of CN113768419A publication Critical patent/CN113768419A/en
Application granted granted Critical
Publication of CN113768419B publication Critical patent/CN113768419B/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
    • 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/4011Regulation of the cleaning machine by electric means; Control systems and remote control systems therefor
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02EREDUCTION OF GREENHOUSE GAS [GHG] EMISSIONS, RELATED TO ENERGY GENERATION, TRANSMISSION OR DISTRIBUTION
    • Y02E10/00Energy generation through renewable energy sources
    • Y02E10/50Photovoltaic [PV] energy

Landscapes

  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

The application relates to a method and a device for determining a sweeping direction of a sweeper and the sweeper. The method comprises the following steps: acquiring point cloud data in a target range through a three-dimensional space sensor, wherein the point cloud data comprises a plurality of distance information between a sweeper and an obstacle; extracting a plane in a target range based on the point cloud data; and taking the target plane meeting the preset condition in the planes as a wall surface, and determining the normal direction of the wall surface as the main cleaning direction of the sweeper. According to the method, the point cloud data of the surrounding environment of the sweeper is acquired through the three-dimensional space sensor, a plurality of planes in the three-dimensional space are constructed and extracted by utilizing the point cloud data, the wall surface is identified from the planes in the three-dimensional space, and then the normal direction of the wall surface is used as the main sweeping direction of the sweeper, so that the technical problems that the wall surface identification is inaccurate and the main sweeping direction of the sweeper is inaccurate are solved.

Description

Method and device for determining sweeping direction of sweeper and sweeper
Technical Field
The application relates to the technical field of sweeping robots, in particular to a method and a device for determining a sweeping direction of a sweeping machine and the sweeping machine.
Background
In the process of cleaning a room, the main cleaning direction needs to be determined according to the layout of the room, the sweeper moves back and forth in the main cleaning direction and finally leaves a path similar to an arch shape, and then the whole room is covered and cleaned.
Conventionally, in the related art, a wall direction is generally used as a reference for a problem of a main cleaning direction of a floor cleaning robot. However, in the scheme of using the inertial navigation and the visual sweeper, the wall surface is generally white, and the visual sweeper can hardly extract the characteristic point information of the white wall surface, so the wall finding scheme of the visual sweeper is similar to the inertial navigation, namely the sweeper records the collision points back and forth, then determines the straight line direction obtained by fitting the collision points as the wall surface direction, and further finds the main cleaning direction, which is long in time consumption and low in efficiency. In addition, collision can influence positioning sensors such as an odometer and an accelerometer, so that positioning accuracy is influenced, and accuracy of finding a wall is reduced. If there are obstacles on the wall, the direction of the obstacles is disordered or inconsistent with the direction of the wall (such as a sofa with an inclined angle), the direction of the wall is difficult to find really. In a sweeper applying a single-line laser radar, straight lines in an acquired point cloud are extracted, and the straight line containing the most laser points is selected as the direction of a wall. The efficiency and the accuracy of the method are higher than those of the inertial navigation scheme, but the interference of obstacles cannot be solved, the main sweeping direction of the sweeper cannot be accurately confirmed, and the sweeping efficiency of the sweeper is greatly influenced.
Aiming at the problem of inaccurate finding of the main sweeping direction of the sweeper, no effective solution is proposed at present.
Disclosure of Invention
The application provides a method and a device for determining a sweeping direction of a sweeper and the sweeper, so that interference is eliminated rapidly, and a main sweeping direction of the sweeper is found accurately.
According to an aspect of the embodiments of the present application, the present application provides a sweeper, including:
the three-dimensional space sensor is used for collecting point cloud data in a space target range where the sweeper is located, wherein the point cloud data comprises a plurality of distance information between the sweeper and an obstacle;
a controller for extracting a plane within a target range based on the point cloud data, taking a target plane satisfying a preset condition in the plane as a wall surface, and determining a normal direction of the wall surface as a main cleaning direction of the sweeper;
and the cleaning main body is used for cleaning along the main cleaning direction.
According to another aspect of an embodiment of the present application, there is provided a method of determining a cleaning direction of a sweeper, including:
acquiring point cloud data in a target range through a three-dimensional space sensor, wherein the point cloud data comprises a plurality of distance information between a sweeper and an obstacle;
extracting a plane in a target range based on the point cloud data;
and taking the target plane meeting the preset condition in the planes as a wall surface, and determining the normal direction of the wall surface as the main cleaning direction of the sweeper.
Optionally, the point cloud data includes single-frame point cloud data collected in a preset angle range, and the target range includes the preset angle range; wherein,,
extracting the plane in the target range based on the single-frame point cloud data comprises:
and extracting a plane with an included angle smaller than or equal to a preset threshold value from the single-frame point cloud data, wherein the height direction is a direction perpendicular to a motion plane of the sweeper.
Optionally, the point cloud data comprises multi-frame point cloud data collected in the rotating process of the sweeper, and the target range comprises the rotating range of the sweeper; wherein,,
extracting a plane within the target range based on the multi-frame point cloud data includes:
recording pose information when the sweeper collects each frame of point cloud data, wherein the pose information comprises position information and angle information of the sweeper;
determining pose change information of the sweeper when collecting each two adjacent frames of point cloud data by using the pose information, wherein the pose change information comprises position change information and angle change information;
based on pose change information, de-duplicating and splicing the point cloud data of each two adjacent frames;
and extracting a plane with an included angle smaller than or equal to a preset threshold value from the spliced point cloud data.
Optionally, determining the pose change information of the sweeper includes:
and matching characteristic points in the point cloud data of each two adjacent frames to obtain pose change information of the sweeper in each two adjacent frames.
Optionally, determining the pose change information of the sweeper includes:
acquiring pose information when the sweeper acquires each frame of point cloud data by utilizing an auxiliary sensor;
determining pose change information of the sweeper corresponding to point cloud data adjacent to any two frames by utilizing pose information; wherein,,
the auxiliary sensor comprises at least one of an accelerometer, a gyroscope and an odometer, and is synchronous with the time of data acquisition of the three-dimensional space sensor.
Optionally, determining the pose change information of the sweeper includes:
and taking the weighted sum of the pose change information determined by using the point cloud data and the pose change information determined by using the auxiliary sensor as final pose change information of the sweeper.
Optionally, taking a target plane satisfying a preset condition among the planes as the wall surface includes:
determining the number of point clouds matched with each plane;
and determining the target plane with the largest number of the matched point clouds as the wall surface of the space where the sweeper is positioned.
Optionally, determining the main cleaning direction of the sweeper further includes:
extracting a plane perpendicular to a motion plane of the sweeper from each sub-point cloud data;
determining a normal to each plane;
carrying out cluster analysis on normals of all planes of all frames, wherein the normals with the same direction or errors within a preset error angle range belong to the same cluster;
determining the cluster with the largest normal number as a target cluster;
the direction of the normal line of the target cluster is determined as the main cleaning direction of the sweeper.
According to another aspect of the embodiments of the present application, there is provided an apparatus for determining a sweeping direction of a sweeper, including:
the data acquisition module is used for acquiring point cloud data in a target range through the three-dimensional space sensor, wherein the point cloud data comprises a plurality of distance information between the sweeper and the obstacle;
the plane extraction module is used for extracting a plane in the target range based on the point cloud data;
and the main cleaning direction determining module is used for taking a target plane meeting preset conditions in the planes as a wall surface and determining the normal direction of the wall surface as the main cleaning direction of the sweeper.
According to another aspect of the embodiments of the present application, there is provided an electronic device including a memory, a processor, a communication interface, and a communication bus, where the memory stores a computer program executable on the processor, the memory, the processor, and the processor communicate through the communication bus and the communication interface, and the processor executes the steps of the method.
According to another aspect of embodiments of the present application, there is also provided a computer readable medium having non-volatile program code executable by a processor, the program code causing the processor to perform the above-described method.
Compared with the related art, the technical scheme provided by the embodiment of the application has the following advantages:
the technical scheme includes that point cloud data in a target range are obtained through a three-dimensional space sensor, wherein the point cloud data comprise a plurality of distance information between a sweeper and an obstacle; extracting a plane in a target range based on the point cloud data; and taking the target plane meeting the preset condition in the planes as a wall surface, and determining the normal direction of the wall surface as the main cleaning direction of the sweeper. According to the method, the point cloud data of the surrounding environment of the sweeper is acquired through the three-dimensional space sensor, a plurality of planes in the three-dimensional space are constructed and extracted by utilizing the point cloud data, the wall surface is identified from the planes in the three-dimensional space, and then the normal direction of the wall surface is used as the main sweeping direction of the sweeper, so that the technical problems that the wall surface identification is inaccurate and the main sweeping direction of the sweeper is inaccurate are solved.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the application and together with the description, serve to explain the principles of the application.
In order to more clearly illustrate the embodiments of the present application or the technical solutions in the related art, the drawings that are required to be used in the embodiments or the related technical descriptions will be briefly described, and it is obvious to those skilled in the art that other drawings can be obtained according to these drawings without inventive effort.
FIG. 1 is a block diagram of an alternative system for determining a sweeper cleaning direction according to an embodiment of the present application;
FIG. 2 is a flowchart of an alternative method for determining a sweeper cleaning direction according to an embodiment of the present application;
FIG. 3 is a flowchart of an alternative method for stitching multiple sub-point clouds and extracting a plane according to an embodiment of the present application;
FIG. 4 is a flowchart of an alternative method for determining a primary direction of operation by cluster analysis, provided in accordance with an embodiment of the present application;
FIG. 5 is a block diagram of an alternative apparatus for determining a sweeper cleaning direction according to an embodiment of the present application;
fig. 6 is a schematic structural diagram of an alternative electronic device according to an embodiment of the present application.
Detailed Description
For the purposes of making the objects, technical solutions and advantages of the embodiments of the present application more clear, the technical solutions of the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and it is apparent that the described embodiments are some embodiments of the present application, but not all embodiments. All other embodiments, which can be made by one of ordinary skill in the art without undue burden from the present disclosure, are within the scope of the present application based on the embodiments herein.
The application provides a machine of sweeping floor, can get rid of the interference fast, and the main direction of sweeping is found to the accuracy, as shown in fig. 1, and this machine of sweeping floor includes:
the three-dimensional space sensor 101 is used for acquiring point cloud data in a space target range where the sweeper is located, wherein the point cloud data comprises a plurality of distance information between the sweeper and an obstacle;
a controller 103 for extracting a plane within a target range based on the point cloud data, taking a target plane satisfying a preset condition in the plane as a wall surface, and determining a normal direction of the wall surface as a main cleaning direction of the sweeper;
and a cleaning body 105 for cleaning in the main cleaning direction.
The three-dimensional space sensor is a device capable of detecting in real time the position value of an object in six degrees of freedom with respect to a certain fixed object, i.e. a position value in X, Y, Z coordinates, and a rotation value about X, Y, Z axis, in the present embodiment of the application, the fixed object is a sweeper (the moment when the sweeper collects point cloud data of the surrounding environment through the three-dimensional space sensor is stationary with respect to the surrounding environment), and the detected object is the surrounding environment, in particular an obstacle in a target range in the advancing direction of the sweeper. The point cloud data acquired by the three-dimensional space sensor are three-dimensional data, the controller needs to extract a plurality of planes in the three-dimensional space based on the three-dimensional data, identify the wall surface from the planes, determine the normal direction of the wall surface as the main cleaning direction of the sweeper, and finally clean the sweeper along the main cleaning direction. According to the technical scheme, the interference can be eliminated rapidly, and the main sweeping direction of the sweeper can be found accurately.
The present application provides a method for determining a main cleaning direction of a sweeper, which can be executed by the controller, as shown in fig. 2, and the method can include the following steps:
step S202, acquiring point cloud data in a target range through a three-dimensional space sensor, wherein the point cloud data comprises a plurality of distance information between a sweeper and an obstacle.
In this embodiment of the present application, the point cloud data collected by the three-dimensional space sensor is three-dimensional data, that is, includes a position value on X, Y, Z coordinates, and the sweeper can be used as an origin of the three-dimensional coordinate axes, and the three-dimensional data (point cloud data) collected by the three-dimensional space sensor is represented in the three-dimensional space by the three-dimensional coordinates, so that distance information, that is, depth information, between each obstacle and the sweeper can be calculated according to the three-dimensional coordinates of each obstacle, and the point cloud data can also include color information, reflection intensity information, and the like.
There are two main methods for calculating the distance information between the sweeper and the obstacle, the first is very simple: the laser source emits a pulse which is reflected by the obstacle and then is transmitted back to the sensor, the sensor records the flight time of the pulse, and the distance between the terminal and the obstacle is calculated according to the speed of light and the flight time. Another approach is to emit a modulated light source and detect the phase change of the reflected light. The phase change may be measured by a hybrid technique. It is easier to emit a modulated laser source than a short pulse and the hybrid technique is easier to implement than a time-to-digital converter. Furthermore, LEDs may be used as modulated light sources instead of lasers. Thus, a sensor system based on a modulated light source is suitable for low cost sensors. The three-dimensional space sensor may be implemented based on magnetic fields, ultrasound, structured light, camera array detection techniques, and the like. The structured light detection technique is that the receiver projects the target object using a laser light source, detects the deformation of the reflected target object, and calculates the depth map based on the geometry. Camera array detection techniques use multiple cameras placed at different locations to capture multiple images of the same target and calculate a depth map from the geometry. When the camera array is used, a plurality of camera groups are required to be arranged at different positions of the sweeper, so that images of the same target captured at different positions can be acquired.
In the embodiment of the application, the three-dimensional data acquired by the three-dimensional space sensor can be stored in the form of point cloud. The point cloud data may be data collected in a preset angle range in a movement direction of the sweeper, and the preset range includes the preset angle range. The point cloud data can also be data collected in the process of one rotation of the sweeper, and the preset range comprises the range of one rotation of the sweeper. That is, when the main sweeping direction of the sweeper is found in the embodiment of the application, the sweeper can be controlled to move forwards, depth information of the surrounding environment in the forward moving process is collected in real time, and the depth information is stored in the form of point cloud data. The floor sweeper can be controlled to rotate in situ for one circle, depth information of the surrounding environment of the floor sweeper is collected through the three-dimensional space sensor in the process from the beginning to the end of rotation, and the depth information is stored in the form of point cloud data.
Step S204, extracting a plane within the target range based on the point cloud data.
The point cloud data carries three-dimensional coordinate information of the obstacle, and thus a plane extracted based on the point cloud data is a plane in three-dimensional space, and a distance of the point cloud located on the same plane in a direction perpendicular to the plane is 0.
In one embodiment, the point cloud data comprises single-frame point cloud data acquired in a preset angle range, and the target range comprises the preset angle range; wherein,,
extracting the plane in the target range based on the single-frame point cloud data comprises:
and extracting a plane with an included angle smaller than or equal to a preset threshold value from the single-frame point cloud data, wherein the height direction is a direction perpendicular to a motion plane of the sweeper.
In this embodiment of the application, the motion plane of the sweeper is a horizontal plane, and the vertical direction perpendicular to the horizontal plane is a height direction. Under the condition that only a single-frame point cloud exists, a plane in the height direction is directly extracted from the single-frame point cloud data to serve as a plane to be selected, and in order to reduce misjudgment, planes with an included angle smaller than or equal to a preset threshold value with the height direction can be extracted to serve as the plane to be selected.
If the included angles between the extracted plane and the height direction are larger than the preset threshold value, the plane extraction fails, and the point cloud data needs to be re-acquired and the plane is re-extracted.
In another embodiment, the point cloud data comprises multi-frame point cloud data acquired during rotation of the sweeper, and the target range comprises a rotation range of the sweeper. The multi-frame point cloud data contains a plurality of pieces of sub-point cloud information acquired at different positions, different angles and different times, the sub-point cloud information can be spliced and integrated into a large panoramic point cloud information, and then the plane is extracted by using the panoramic point cloud information, as shown in fig. 3, the plane in the target range is extracted based on the multi-frame point cloud data, and the method comprises the following steps:
step S302, recording pose information when the sweeper collects each frame of point cloud data, wherein the pose information comprises position information and angle information of the sweeper;
step S304, determining pose change information of the sweeper when collecting each two adjacent frames of point cloud data by using the pose information, wherein the pose change information comprises position change information and angle change information;
step S306, the point cloud data of every two adjacent frames are de-duplicated and spliced based on pose change information;
step S308, extracting a plane with an included angle smaller than or equal to a preset threshold value from the spliced point cloud data.
The pose information includes a position and a pose, and can be determined from position information and angle information contained in the point cloud data. The two adjacent frames of point cloud data are collected by the three-dimensional space sensor after rotating by a certain angle, and even after the sweeper moves for a certain distance. For characteristic points in two adjacent frames of point cloud data, two sets of pose information of the characteristic points can be obtained, pose change information generated by a sweeper before and after collecting the two adjacent frames of point cloud data can be obtained by comparing the two sets of pose information, repeated point clouds in the two adjacent frames of point cloud data can be de-duplicated according to the pose change information, and the remained point clouds are used as bridges to splice all sub-point clouds, so that integrated panoramic point cloud information is obtained. And finally, extracting a plane with an included angle smaller than or equal to a preset threshold value from the panoramic point cloud information.
Optionally, the application provides three methods for determining pose change information of a sweeper, including:
first, feature points in the point cloud data of every two adjacent frames are matched, and pose change information of the sweeper in every two adjacent frames is obtained. The pose change information of the sweeper is determined only according to the point cloud data of the adjacent frames, and the pose change information of the sweeper is obtained by matching the feature points of the adjacent frames and mapping the pose change of the feature points.
Secondly, acquiring pose information when the sweeper acquires each frame of point cloud data by using an auxiliary sensor; and determining pose change information of the sweeper corresponding to the point cloud data adjacent to any two frames by utilizing the pose information, wherein the auxiliary sensor comprises at least one of an accelerometer, a gyroscope and an odometer, and the auxiliary sensor is synchronous with the time for acquiring data by the three-dimensional space sensor. Namely, the pose change information of the sweeper is determined by using only the auxiliary sensor.
Thirdly, taking the weighted sum of the pose change information determined by using the point cloud data and the pose change information determined by using the auxiliary sensor as final pose change information of the sweeper. The first type and the second type are fused, and the mode of combining the point cloud data with the auxiliary sensor is adopted, so that errors are reduced to the greatest extent.
Step S206, taking a target plane meeting preset conditions in the planes as a wall surface, and determining the normal direction of the wall surface as the main cleaning direction of the sweeper.
Optionally, taking a target plane satisfying a preset condition among the planes as the wall surface includes:
determining the number of point clouds matched with each plane;
and determining the target plane with the largest number of the matched point clouds as the wall surface of the space where the sweeper is positioned.
In the embodiment of the application, the wall surface can be identified from the extracted multiple planes, namely, the target plane meeting the preset condition is used as the wall surface, and then the normal direction of the wall surface is determined to be the main cleaning direction of the sweeper. The preset conditions can be set according to the difference between the wall surface and other planes, for example, after the three-dimensional space sensor collects data, the plane with the largest number of point clouds on the same plane is the wall surface, because the area of the wall surface is much larger than that of the table chair stool, the water fountain, the computer, the carton, the washing machine and other obstacles, when the three-dimensional space sensor collects data, the wall surface can obtain more number of point clouds, and therefore the wall surface can be identified through the number of the point clouds.
In this embodiment of the application, can also screen the plane according to the quantity of the point cloud that the plane matches earlier, confirm the wall according to waiting to select the contained angle of plane and direction of height again, namely: extracting planes with the number of the matched point clouds being greater than the threshold value of the number of the point clouds as to-be-selected planes; and taking a plane, of the planes to be selected, with an included angle smaller than or equal to a preset threshold value with the height direction as a wall surface.
In this embodiment of the present application, a roof plane parallel to a motion plane of the sweeper may be determined from a plurality of extracted planes, then a plane intersecting with and perpendicular to the roof plane may be found from other planes, the found plane includes a wall surface and a plane of a roof beam, and finally a plane with a greater number of point clouds is selected to obtain the wall surface. The method provides a thought for the situation that the identification of the movement plane of the sweeper is difficult, more obstacles exist on the movement plane of the sweeper, the identification is difficult, and then the roof plane can be identified firstly because the roof plane is mostly provided with the lighting device, and the identification is relatively flat and open and is relatively simple.
Through steps S202 to S206, the method and the device collect point cloud data of the surrounding environment of the sweeper through the three-dimensional space sensor, extract a plurality of planes through the point cloud data, identify the wall surface from the planes, and further use the normal direction of the wall surface as the main sweeping direction of the sweeper, so that the technical problems that the wall surface identification is inaccurate and the main sweeping direction of the sweeper is inaccurate are solved.
In another embodiment of the present application, a scheme for determining a main direction of operation through cluster analysis is also provided. For the case that the point cloud data contains a plurality of pieces of sub point cloud information acquired at different positions, different angles and different times, the sub point cloud can be directly extracted according to each piece of sub point cloud data without splicing the sub point cloud, so as to obtain the normal direction of the plane, then, cluster analysis is carried out on all the obtained normal directions to obtain a direction, so that the direction can coincide with as many normal directions as possible, or the sum of direction errors is minimum, the direction can be confirmed as the main cleaning direction, and the method for determining the main operation direction through the cluster analysis comprises the following steps of:
step S402, extracting a plane perpendicular to a motion plane of the sweeper from each sub-point cloud data;
step S404, determining the normal line of each plane;
step S406, cluster analysis is carried out on normals of all planes of all frames, wherein the normals with the same direction or the normals with errors within a preset error angle range belong to the same cluster;
step S408, determining the cluster with the largest normal number as a target cluster;
step S410, determining the direction of the normal line of the target cluster as the main cleaning direction of the sweeper.
By adopting the method, the plane can be directly extracted from each frame of point cloud data without splicing the point cloud data, then the normals of all planes are obtained, all normals are clustered, the normals with the same direction or direction error within the preset error angle range are clustered into the same cluster, and finally the cluster with the largest normals is selected, and the normal direction of the cluster is taken as the main cleaning direction of the sweeper. Because the area of the wall surface is the largest, the data occupation ratio is the largest when the depth information is acquired, the number of the wall surfaces is more than that of other planes in all the planes extracted by the point cloud data, and the normal line of the wall surface is the largest after the normal lines of all the planes are clustered, so that the method can also identify the wall surface, and further find out the accurate main cleaning direction.
In the embodiment of the application, the main cleaning direction of the sweeper is determined, and the sweeper can be controlled to cover and clean the whole area to be cleaned according to the bow shape.
According to still another aspect of the embodiments of the present application, as shown in fig. 5, there is provided an apparatus for determining a cleaning direction of a sweeper, including:
the data acquisition module 501 is configured to acquire point cloud data in a target range through a three-dimensional space sensor, where the point cloud data includes a plurality of distance information between a sweeper and an obstacle;
a plane extraction module 503, configured to extract a plane in the target range based on the point cloud data;
the main cleaning direction determining module 505 is configured to take a target plane satisfying a preset condition as a wall surface, and determine a normal direction of the wall surface as a main cleaning direction of the sweeper.
It should be noted that, the data acquisition module 501 in this embodiment may be used to perform step S202 in the embodiment of the present application, the plane extraction module 503 in this embodiment may be used to perform step S204 in the embodiment of the present application, and the main cleaning direction determination module 505 in this embodiment may be used to perform step S206 in the embodiment of the present application.
Optionally, the point cloud data includes single-frame point cloud data collected in a preset angle range, and the target range includes the preset angle range; the plane extraction module is specifically used for:
and extracting a plane with an included angle smaller than or equal to a preset threshold value from the single-frame point cloud data, wherein the height direction is a direction perpendicular to a motion plane of the sweeper.
Optionally, the point cloud data comprises multi-frame point cloud data collected in the rotating process of the sweeper, and the target range comprises the rotating range of the sweeper; the plane extraction module is further used for:
recording pose information when the sweeper collects each frame of point cloud data, wherein the pose information comprises position information and angle information of the sweeper;
determining pose change information of the sweeper when collecting each two adjacent frames of point cloud data by using the pose information, wherein the pose change information comprises position change information and angle change information;
based on pose change information, de-duplicating and splicing the point cloud data of each two adjacent frames;
and extracting a plane with an included angle smaller than or equal to a preset threshold value from the spliced point cloud data.
Optionally, the plane extraction module further includes a pose change operation unit, specifically configured to:
and matching characteristic points in the point cloud data of each two adjacent frames to obtain pose change information of the sweeper in each two adjacent frames.
Optionally, the pose change operation unit is further configured to:
acquiring pose information when the sweeper acquires each frame of point cloud data by utilizing an auxiliary sensor;
determining pose change information of the sweeper corresponding to point cloud data adjacent to any two frames by utilizing pose information; wherein,,
the auxiliary sensor comprises at least one of an accelerometer, a gyroscope and an odometer, and is synchronous with the time of data acquisition of the three-dimensional space sensor.
Optionally, the pose change operation unit is further configured to:
and taking the weighted sum of the pose change information determined by using the point cloud data and the pose change information determined by using the auxiliary data as final pose change information of the sweeper.
Optionally, the main cleaning direction determining module further includes a wall surface identifying unit, specifically configured to:
determining the number of point clouds matched with each plane;
and determining the target plane with the largest number of the matched point clouds as the wall surface of the space where the sweeper is positioned.
Optionally, the main cleaning direction determining module is further configured to:
extracting a plane perpendicular to a motion plane of the sweeper from each sub-point cloud data;
determining a normal to each plane;
carrying out cluster analysis on normals of all planes of all frames, wherein the normals with the same direction or errors within a preset error angle range belong to the same cluster;
determining the cluster with the largest normal number as a target cluster;
the direction of the normal line of the target cluster is determined as the main cleaning direction of the sweeper.
According to another aspect of the embodiments of the present application, as shown in fig. 6, an electronic device is provided, where the electronic device includes a memory 601, a processor 603, a communication interface 605 and a communication bus 607, a computer program that can be run on the processor 603 is stored in the memory 601, the processor 603 communicates with the communication bus 607 through the communication interface 605, and the processor 603 executes the steps of the method when the processor 603 executes the computer program.
The memory and the processor in the electronic device communicate with the communication interface through a communication bus. The communication bus may be a peripheral component interconnect standard (Peripheral Component Interconnect, PCI) bus, or an extended industry standard architecture (Extended Industry Standard Architecture, EISA) bus, among others. The communication bus may be classified as an address bus, a data bus, a control bus, or the like.
The memory may include random access memory (Random Access Memory, RAM) or non-volatile memory (non-volatile memory), such as at least one disk memory. Optionally, the memory may also be at least one memory device located remotely from the aforementioned processor.
The processor may be a general-purpose processor, including a central processing unit (Central Processing Unit, CPU for short), a network processor (Network Processor, NP for short), etc.; but also digital signal processors (Digital Signal Processing, DSP for short), application specific integrated circuits (Application Specific Integrated Circuit, ASIC for short), field-programmable gate arrays (Field-Programmable Gate Array, FPGA for short) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components.
There is also provided, in accordance with yet another aspect of embodiments of the present application, a computer program product or computer program comprising computer instructions stored in a computer readable storage medium. The processor of the computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions to cause the computer device to perform the steps of any of the embodiments described above.
Optionally, in an embodiment of the present application, the computer readable medium is configured to store program code for the processor to perform the steps of:
acquiring point cloud data in a target range through a three-dimensional space sensor, wherein the point cloud data comprises a plurality of distance information between a sweeper and an obstacle;
extracting a plane in a target range based on the point cloud data;
and taking the target plane meeting the preset condition in the planes as a wall surface, and determining the normal direction of the wall surface as the main cleaning direction of the sweeper.
Alternatively, specific examples in this embodiment may refer to examples described in the foregoing embodiments, and this embodiment is not described herein.
In specific implementation, the embodiments of the present application may refer to the above embodiments, which have corresponding technical effects.
It will be clear to those skilled in the art that, for convenience and brevity of description, specific working procedures of the above-described systems, apparatuses and units may refer to corresponding procedures in the foregoing method embodiments, and are not repeated herein.
The foregoing is merely a specific embodiment of the application to enable one skilled in the art to understand or practice the application. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the application. Thus, the present application is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims (9)

1. Sweeper, its characterized in that includes:
the three-dimensional space sensor is used for collecting point cloud data in a space target range where the sweeper is located, wherein the point cloud data comprise a plurality of distance information between the sweeper and an obstacle;
a controller for extracting a plane within the target range based on the point cloud data, taking a target plane satisfying a preset condition among the planes as a wall surface, and determining a normal direction of the wall surface as a main cleaning direction of the sweeper; the controller is also used for extracting a plane perpendicular to the motion plane of the sweeper from the cloud data of each sub point; determining a normal to each plane; carrying out cluster analysis on normals of all planes of all frames, wherein the normals with the same direction or errors within a preset error angle range belong to the same cluster; determining the cluster with the largest normal number as a target cluster; determining the direction of the normal line of the target cluster as the main cleaning direction of the sweeper;
and the cleaning main body is used for cleaning along the main cleaning direction.
2. A method of determining a sweeping direction of a sweeper, comprising:
acquiring point cloud data in a target range through a three-dimensional space sensor, wherein the point cloud data comprises a plurality of distance information between a sweeper and an obstacle;
extracting a plane in the target range based on the point cloud data;
taking a target plane meeting preset conditions in the planes as a wall surface, and determining the normal direction of the wall surface as the main cleaning direction of the sweeper;
determining the main cleaning direction of the sweeper further comprises:
extracting a plane perpendicular to a motion plane of the sweeper from each sub-point cloud data;
determining a normal to each plane;
carrying out cluster analysis on normals of all planes of all frames, wherein the normals with the same direction or errors within a preset error angle range belong to the same cluster;
determining the cluster with the largest normal number as a target cluster;
and determining the direction of the normal line of the target cluster as the main cleaning direction of the sweeper.
3. The method of claim 2, wherein the step of determining the position of the substrate comprises,
the point cloud data comprise single-frame point cloud data acquired in a preset angle range, and the target range comprises the preset angle range; wherein,,
extracting a plane within the target range based on the single-frame point cloud data includes:
and extracting a plane with an included angle smaller than or equal to a preset threshold value from the single-frame point cloud data, wherein the height direction is a direction perpendicular to the motion plane of the sweeper.
4. The method of claim 2, wherein the step of determining the position of the substrate comprises,
the point cloud data comprise multi-frame point cloud data acquired in the rotating process of the sweeper, and the target range comprises the rotating range of the sweeper; wherein,,
extracting a plane within the target range based on the multi-frame point cloud data includes:
recording pose information when the sweeper collects each frame of point cloud data, wherein the pose information comprises position information and angle information of the sweeper;
determining pose change information of the sweeper when two adjacent frames of point cloud data are acquired by utilizing the pose information, wherein the pose change information comprises position change information and angle change information;
based on the pose change information, de-duplicating and splicing the point cloud data of each two adjacent frames;
and extracting a plane with an included angle smaller than or equal to a preset threshold value from the spliced point cloud data.
5. The method of claim 4, wherein determining the pose change information for the sweeper comprises:
and matching characteristic points in the point cloud data of each two adjacent frames to obtain pose change information of the sweeper in each two adjacent frames.
6. The method of claim 4, wherein determining the pose change information for the sweeper comprises:
acquiring pose information when the sweeper acquires the point cloud data of each frame by using an auxiliary sensor;
determining pose change information of the sweeper corresponding to point cloud data adjacent to any two frames by utilizing pose information; wherein,,
the auxiliary sensor comprises at least one of an accelerometer, a gyroscope and an odometer, and is synchronous with the time of data acquisition of the three-dimensional space sensor.
7. The method of claim 6, wherein determining the pose change information for the sweeper comprises:
and taking the weighted sum of the pose change information determined by the point cloud data and the pose change information determined by the auxiliary sensor as final pose change information of the sweeper.
8. The method according to any one of claims 2 to 7, wherein taking as a wall surface a target plane satisfying a preset condition among the planes comprises:
determining the number of point clouds matched with each plane;
and determining the target plane with the largest number of the matched point clouds as the wall surface of the space where the sweeper is positioned.
9. The device for determining the sweeping direction of the sweeper is characterized by comprising:
the data acquisition module is used for acquiring point cloud data in a target range through the three-dimensional space sensor, wherein the point cloud data comprises a plurality of distance information between the sweeper and the obstacle;
the plane extraction module is used for extracting a plane in the target range based on the point cloud data;
the main cleaning direction determining module is used for taking a target plane meeting a preset condition in the planes as a wall surface and determining the normal direction of the wall surface as the main cleaning direction of the sweeper;
the main cleaning direction determining module is also used for extracting a plane perpendicular to the motion plane of the sweeper from the cloud data of each sub point; determining a normal to each plane; carrying out cluster analysis on normals of all planes of all frames, wherein the normals with the same direction or errors within a preset error angle range belong to the same cluster; determining the cluster with the largest normal number as a target cluster; and determining the direction of the normal line of the target cluster as the main cleaning direction of the sweeper.
CN202111095032.0A 2021-09-17 2021-09-17 Method and device for determining sweeping direction of sweeper and sweeper Active CN113768419B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111095032.0A CN113768419B (en) 2021-09-17 2021-09-17 Method and device for determining sweeping direction of sweeper and sweeper

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111095032.0A CN113768419B (en) 2021-09-17 2021-09-17 Method and device for determining sweeping direction of sweeper and sweeper

Publications (2)

Publication Number Publication Date
CN113768419A CN113768419A (en) 2021-12-10
CN113768419B true CN113768419B (en) 2023-06-23

Family

ID=78851855

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111095032.0A Active CN113768419B (en) 2021-09-17 2021-09-17 Method and device for determining sweeping direction of sweeper and sweeper

Country Status (1)

Country Link
CN (1) CN113768419B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114265429A (en) * 2021-12-14 2022-04-01 中国兵器科学研究院 Unmanned aerial vehicle control method and device, unmanned aerial vehicle and medium
CN114569011B (en) * 2022-03-25 2023-09-05 微思机器人(深圳)有限公司 Wall-following walking method and device, sweeping robot and storage medium

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105913489B (en) * 2016-04-19 2019-04-23 东北大学 A kind of indoor three-dimensional scenic reconstructing method using plane characteristic
CN109388093B (en) * 2017-08-02 2020-09-15 苏州珊口智能科技有限公司 Robot attitude control method and system based on line feature recognition and robot
CN110801180B (en) * 2018-08-03 2022-02-22 速感科技(北京)有限公司 Operation method and device of cleaning robot
CN108931983B (en) * 2018-09-07 2020-04-24 深圳市银星智能科技股份有限公司 Map construction method and robot thereof
CN109509226B (en) * 2018-11-27 2023-03-28 广东工业大学 Three-dimensional point cloud data registration method, device and equipment and readable storage medium
CN109633665A (en) * 2018-12-17 2019-04-16 北京主线科技有限公司 The sparse laser point cloud joining method of traffic scene
CN112438658A (en) * 2019-08-29 2021-03-05 华南师范大学 Cleaning area dividing method for cleaning robot and cleaning robot
CN110515386A (en) * 2019-09-19 2019-11-29 小狗电器互联网科技(北京)股份有限公司 A kind of intelligent robot
CN110599543A (en) * 2019-09-19 2019-12-20 小狗电器互联网科技(北京)股份有限公司 Wall position determining method and device, computer equipment and storage medium
WO2021128297A1 (en) * 2019-12-27 2021-07-01 深圳市大疆创新科技有限公司 Method, system and device for constructing three-dimensional point cloud map
CN112034837A (en) * 2020-07-16 2020-12-04 珊口(深圳)智能科技有限公司 Method for determining working environment of mobile robot, control system and storage medium
CN113298946A (en) * 2020-07-24 2021-08-24 阿里巴巴集团控股有限公司 House three-dimensional reconstruction and ground identification method, device, equipment and storage medium
CN112560648B (en) * 2020-12-09 2023-04-07 长安大学 SLAM method based on RGB-D image
CN112710318B (en) * 2020-12-14 2024-05-17 深圳市商汤科技有限公司 Map generation method, path planning method, electronic device, and storage medium
CN113012212B (en) * 2021-04-02 2024-04-16 西北农林科技大学 Depth information fusion-based indoor scene three-dimensional point cloud reconstruction method and system

Also Published As

Publication number Publication date
CN113768419A (en) 2021-12-10

Similar Documents

Publication Publication Date Title
JP7361682B2 (en) Multi-resolution, simultaneous localization and mapping based on 3D LIDAR measurements
CN110807350B (en) System and method for scan-matching oriented visual SLAM
CN111881239B (en) Construction method, construction device, intelligent robot and readable storage medium
JP2501010B2 (en) Mobile robot guidance device
KR101003168B1 (en) Multidimensional Evidence Grids and System and Methods for Applying Same
KR20190082291A (en) Method and system for creating and updating vehicle environment map
US20190005667A1 (en) Ground Surface Estimation
CN113768419B (en) Method and device for determining sweeping direction of sweeper and sweeper
JP2018124787A (en) Information processing device, data managing device, data managing system, method, and program
JP3596339B2 (en) Inter-vehicle distance measurement device
JP2008309533A (en) Method and apparatus for measuring vehicle shape
CN110674705A (en) Small-sized obstacle detection method and device based on multi-line laser radar
CN112130158B (en) Object distance measuring device and method
CN113160327A (en) Method and system for realizing point cloud completion
US20190379836A1 (en) Sensor control device, object search system, object search method, and program
CN107504917B (en) Three-dimensional size measuring method and device
CN113838125A (en) Target position determining method and device, electronic equipment and storage medium
JP5915130B2 (en) Three-dimensional coordinate measuring apparatus, three-dimensional coordinate measuring method, and program
CN116608847A (en) Positioning and mapping method based on area array laser sensor and image sensor
CN114842106A (en) Method and apparatus for constructing grid map, self-walking apparatus, and storage medium
JPH1144533A (en) Preceding vehicle detector
CN115151836A (en) Method for detecting a moving object in the surroundings of a vehicle and motor vehicle
CN111780744A (en) Mobile robot hybrid navigation method, equipment and storage device
CN114777761A (en) Cleaning machine and map construction method
CN116129669A (en) Parking space evaluation method, system, equipment and medium based on laser radar

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