Self-mobile device, movement trajectory adjustment method and computer-readable storage medium
By installing image acquisition modules and control circuits on self-moving devices, boundary and obstacle markers can be identified in real time, and the movement trajectory can be adjusted. This solves the problems of low coverage and steering efficiency in path planning of self-moving devices, and achieves more efficient work area coverage and path optimization.
Patent Information
- Application Number
- CN202210427365.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2021-04-22
- Filing Date
- 2022-04-22
- Publication Date
- 2025-09-19
- Estimated Expiration
- 2042-04-22
AI Technical Summary
Existing autonomous vehicles have difficulty effectively covering the working area during path planning, especially in narrow areas or obstacle areas. They also have low steering efficiency, which affects work efficiency.
By installing an image acquisition module on the self-moving device, the work surface image is collected in real time, the boundary and obstacle marks are identified, and the control circuit is used to generate drive instructions based on the relative position relationship between these marks and the reference line, and the movement trajectory is adjusted to optimize the path planning.
It improves the coverage and steering efficiency of autonomous equipment in the work area, optimizes path planning, and improves work efficiency.
Smart Images

Figure CN115328112B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of automation technology, and in particular to a self-propelled device, a movement trajectory adjustment method, and a computer-readable storage medium. Background Art
[0002] As the pace of human life accelerates, autonomous devices are increasingly used around the world, such as automated vacuum cleaners and mops for room cleaning and automated lawn mowers for gardening. Because they operate autonomously without the need for constant user control, they free people from tedious household or work tasks, saving significant energy and time.
[0003] The increasing demand for autonomous vehicles poses significant challenges to their functionality. Path planning is a key technology, guiding autonomous vehicles in selecting paths to move within their work area or return to their docking station. This requires minimizing repeated movements while ensuring comprehensive coverage of the work area, maintaining smooth exits while maintaining coverage in narrow areas, blind spots, and obstructed areas, and accurately returning to the work area's boundaries to improve efficiency. Summary of the Invention
[0004] Based on this, it is necessary to provide a self-moving device, a movement trajectory adjustment method and a computer-readable storage medium to address the above problems.
[0005] A self-moving device comprises: a body; a driving device, which drives the self-moving device to move on a work surface according to a driving instruction; an image acquisition module, connected to the body and configured to continuously acquire images of the work surface in the forward direction of the body when the self-moving device moves; and a control circuit, configured to: identify features in the current image, and generate boundary marks that map boundary positions on the work surface and / or obstacle marks that map obstacle positions on an image; provide a reference line associated with the forward direction of the body for the image; and issue the driving instruction according to the relative positional relationship between the boundary marks and / or obstacle marks and the reference line to control the movement trajectory of the self-moving device.
[0006] In one embodiment, the reference line of the forward direction of the fuselage includes: a central axis reference line mapping the projection of the central axis of the fuselage on the working surface, a side line reference line mapping the projection of the width side line of the fuselage parallel to the central axis on the working surface, a reference line mapping a parallel line located between the central axis and the side line and parallel to the central axis or a parallel line located between the central axis and the outer side line and parallel to the outer side line, and at least one of a transverse reference line mapping the projection of the perpendicular line of the central axis on the working surface.
[0007] In one embodiment, the control circuit is used to identify the relative position relationship based on the angle between the central axis reference line and the boundary mark.
[0008] In one embodiment, the turning angle of the fuselage is greater than α and less than or equal to α+90°, where α is an acute angle or a right angle formed by the central axis reference line and the boundary mark.
[0009] In one embodiment, the control circuit is configured to identify the relative positional relationship based on which side of the central axis reference line the lowest point of the boundary marker is located.
[0010] In one embodiment, based on the relative positional relationship between the boundary mark and / or obstacle mark and the reference line, issuing the drive instruction includes: when the lowest point of the boundary mark is located on the left side of the central axis reference line, issuing a drive instruction to control the fuselage to rotate clockwise; and the control circuit is used to issue a control instruction to control the fuselage to rotate counterclockwise when the lowest point of the boundary mark is located on the left side of the central axis reference line.
[0011] In one embodiment, issuing the driving instruction based on the relative positional relationship between the boundary mark and / or obstacle mark and the reference line includes: the reference line includes a lateral reference line and a central axis reference line, and when the lateral reference line or the reference point on the lateral reference line satisfies a preset distance relationship with the boundary mark, issuing the driving instruction to control the fuselage steering, so that when the steering starts, the central axis reference line forms an acute angle or a right angle with the first boundary portion, and when the steering is completed, the central axis reference line forms an acute angle or a right angle with the second boundary portion; wherein the intersection of the central axis reference line and the boundary mark divides the boundary mark into the first boundary portion and the second boundary portion.
[0012] In one embodiment, controlling the movement trajectory of the self-mobile device includes controlling the reference line to maintain a preset positional relationship with the boundary mark during movement, so that the movement trajectory of the body is consistent with the boundary shape.
[0013] In one embodiment, when the boundary marker is a straight line, controlling the reference line to maintain a preset positional relationship with the boundary marker during movement includes controlling the reference line and the boundary marker to be parallel or overlapped and to maintain a preset distance.
[0014] In one embodiment, when the boundary marker is a curve, controlling the reference line to maintain a preset positional relationship with the boundary marker during movement includes: controlling the reference line or a line parallel to the reference line to be tangent to the boundary marker and maintain a preset distance.
[0015] In one embodiment, when the boundary marker is a corner facing outward along the forward direction, controlling the reference line to maintain a preset positional relationship with the boundary marker during movement includes: moving along the first side of the corner and keeping the reference line coincident with the first side, or being parallel and maintaining a preset distance; monitoring the distance between the self-moving device and the second side, and when the distance reaches a preset value, controlling the self-moving device to turn until the reference line coincides with the second side, or being parallel and maintaining a preset distance; moving along the second side of the corner and keeping the reference line coincident with the second side, or being parallel and maintaining a preset distance.
[0016] In one embodiment, when the boundary marker is a corner facing inward relative to the forward direction, controlling the reference line to maintain a preset positional relationship with the boundary marker during movement includes: moving along the first side of the corner and keeping the reference line coincident with the first side, or being parallel and maintaining a preset distance; when the first side is not visible in the image, continuing to move until moving a preset distance in the original forward direction; controlling the self-moving device to turn until the reference line coincides with the second side, or being parallel and maintaining a preset distance; moving along the second side of the corner and keeping the reference line coincident with the second side, or being parallel and maintaining a preset distance.
[0017] In one embodiment, the reference line is a side reference line close to the boundary mark.
[0018] In one embodiment, the reference lines include a central axis reference line, a left side reference line, and a right side reference line, and the control circuit is configured as follows: when the obstacle mark is located on the left side of the central axis reference line and at least partially between the central axis reference line and the left side reference line, the self-moving device is controlled to turn right; when the obstacle mark is located on the right side of the central axis reference line and at least partially between the central axis reference line and the right side reference line, the self-moving device is controlled to turn left.
[0019] In one embodiment, the control circuit is configured to control the self-moving device to randomly turn when the obstacle mark is located on the central axis reference line.
[0020] In one embodiment, the self-moving device is a lawn mower, and the "identifying features in the image and generating boundary markers on a picture that map the boundary positions on the working surface" includes: identifying grass areas and non-grass areas in the image, and fitting the boundary between the grass area and the non-grass area as boundary markers on the picture.
[0021] The present application also provides a method for adjusting the movement trajectory of a self-moving device, comprising: obtaining continuous images of a working surface in the forward direction of the body of the self-moving device through an image acquisition module when the self-moving device moves; identifying features in the current image, and generating boundary marks that map the position of the boundary on the working surface and / or obstacle marks that map the position of the obstacle on an image; providing a reference line associated with the forward direction of the body for the image; and issuing a driving instruction to a driving device of the self-moving device based on the relative positional relationship between the boundary mark and / or obstacle mark and the reference line to control the movement trajectory of the self-moving device.
[0022] In one embodiment, the reference line of the forward direction of the fuselage includes: a central axis reference line that maps the projection of the central axis of the fuselage on the working surface, a side line reference line that maps the projection of the width side line of the fuselage parallel to the central axis on the working surface, and a reference line that maps a parallel line located between the central axis and the side line and parallel to the central axis or a parallel line located between the central axis and the outer side line and parallel to the outer side line.
[0023] In one embodiment, the relative position relationship is identified based on the angle between the central axis reference line and the boundary mark.
[0024] In one embodiment, the turning angle of the fuselage is greater than α and less than or equal to α+90°, where α is an acute angle or a right angle formed by the central axis reference line and the boundary mark.
[0025] In one embodiment, the method further includes: identifying the relative position relationship based on which side of the central axis reference line the lowest point of the boundary mark is located.
[0026] In one embodiment, based on the relative positional relationship between the boundary mark and / or obstacle mark and the reference line, issuing the drive instruction includes: when the lowest point of the boundary mark is located on the left side of the central axis reference line, issuing a drive instruction to control the fuselage to rotate clockwise; and the control circuit is used to issue a control instruction to control the fuselage to rotate counterclockwise when the lowest point of the boundary mark is located on the left side of the central axis reference line.
[0027] In one embodiment, issuing the driving instruction based on the relative positional relationship between the boundary mark and / or obstacle mark and the reference line includes: the reference line includes a lateral reference line and a central axis reference line, and when the lateral reference line or the reference point on the lateral reference line satisfies a preset distance relationship with the boundary mark, issuing the driving instruction to control the fuselage steering, so that when the steering starts, the central axis reference line forms an acute angle or a right angle with the first boundary portion, and when the steering is completed, the central axis reference line forms an acute angle or a right angle with the second boundary portion; wherein the intersection of the central axis reference line and the boundary mark divides the boundary mark into the first boundary portion and the second boundary portion.
[0028] In one embodiment, controlling the movement trajectory of the self-mobile device includes controlling the reference line to maintain a preset positional relationship with the boundary mark during movement, so that the movement trajectory of the body is consistent with the boundary shape.
[0029] In one embodiment, when the boundary marker is a straight line, controlling the reference line to maintain a preset positional relationship with the boundary marker during movement includes controlling the reference line and the boundary marker to be parallel or overlapped and to maintain a preset distance.
[0030] In one embodiment, when the boundary marker is a curve, controlling the reference line to maintain a preset positional relationship with the boundary marker during movement includes: controlling the reference line or a line parallel to the reference line to be tangent to the boundary marker and maintain a preset distance.
[0031] In one embodiment, when the boundary marker is a corner facing outward along the forward direction, controlling the reference line to maintain a preset positional relationship with the boundary marker during movement includes: moving along the first side of the corner and keeping the reference line coincident with the first side, or being parallel and maintaining a preset distance; monitoring the distance between the self-moving device and the second side, and when the distance reaches a preset value, controlling the self-moving device to turn until the reference line coincides with the second side, or being parallel and maintaining a preset distance; moving along the second side of the corner and keeping the reference line coincident with the second side, or being parallel and maintaining a preset distance.
[0032] In one embodiment, when the boundary marker is a corner facing inward relative to the forward direction, controlling the reference line to maintain a preset positional relationship with the boundary marker during movement includes: moving along the first side of the corner and keeping the reference line coincident with the first side, or being parallel and maintaining a preset distance; when the first side is not visible in the image, continuing to move until moving a preset distance in the original forward direction; controlling the self-moving device to turn until the reference line coincides with the second side, or being parallel and maintaining a preset distance; moving along the second side of the corner and keeping the reference line coincident with the second side, or being parallel and maintaining a preset distance.
[0033] In one embodiment, the reference line is a side reference line close to the boundary mark.
[0034] In one embodiment, the reference lines include a central axis reference line, a left side reference line, and a right side reference line, and the control issues the driving instruction based on the relative position relationship between the boundary mark and / or obstacle mark and the reference line, including: when the obstacle mark is located on the left side of the central axis reference line and at least partially between the central axis reference line and the left side reference line, issuing a control instruction to control the self-moving device to turn right; when the obstacle mark is located on the right side of the central axis reference line and at least partially between the central axis reference line and the right side reference line, issuing a control instruction to control the self-moving device to turn left.
[0035] In one embodiment, the control of issuing the driving instruction based on the relative position relationship between the boundary mark and / or obstacle mark and the reference line includes: when the obstacle mark is located on the central axis reference line, controlling the self-moving device to randomly turn.
[0036] In one embodiment, the self-moving device is a lawn mower, and the "identifying features in the image and generating boundary markers on a picture that map the boundary positions on the working surface" includes: identifying grass areas and non-grass areas in the image, and fitting the boundary between the grass area and the non-grass area as boundary markers on the picture.
[0037] The present application also provides a computer-readable storage medium having a computer program stored thereon, wherein the computer program, when executed by a processor, implements the movement trajectory adjustment method as described in any one of the above items. BRIEF DESCRIPTION OF THE DRAWINGS
[0038] Figure 1 A schematic diagram of the structure of the self-moving device provided in Example 1 of the present application;
[0039] Figure 2This is an application scenario diagram of the mobile device movement process provided in Example 1 of the present application;
[0040] Figure 3 A schematic diagram of the structure of a mobile device moving toward a boundary provided in the first embodiment of the present application;
[0041] Figure 4 for Figure 3 Schematic diagram of the corresponding field of view;
[0042] Figure 5 This is a structural diagram of a self-moving device provided in Example 2 of the present application when it moves along an edge and the boundary is a straight line;
[0043] Figure 6 for Figure 5 Schematic diagram of the corresponding field of view;
[0044] Figure 7 A schematic structural diagram of a curve with a boundary of a certain structure when a self-moving device moves along an edge provided in the second embodiment of the present application;
[0045] Figure 8 for Figure 7 Schematic diagram of the corresponding field of view;
[0046] Figure 9 A schematic diagram of a structure in which the boundary of a self-moving device is another curved structure when it moves along an edge, provided in the second embodiment of the present application;
[0047] Figure 10 for Figure 9 Schematic diagram of the corresponding field of view;
[0048] Figure 11 A schematic structural diagram of a corner region of a structure where the boundary is a structure when the self-moving device moves along the edge provided in the second embodiment of the present application;
[0049] Figure 12 for Figure 11 Schematic diagram of the corresponding field of view;
[0050] Figure 13 A schematic structural diagram of a corner region with a boundary of another structure when a self-moving device moves along an edge, provided in the second embodiment of the present application;
[0051] Figure 14 for Figure 13 Schematic diagram of the corresponding field of view;
[0052] Figure 15 This is an exploded diagram of the movement process of a corner area with a boundary of another structure when the self-moving device moves along the edge provided in Example 2 of the present application;
[0053] Figure 16 A schematic diagram of a self-moving device avoiding obstacles provided in Example 3 of the present application;
[0054] Figure 17 for Figure 16 Schematic diagram of the corresponding field of view;
[0055] Figure 18 This is a module diagram of an embodiment of the present application;
[0056] Figure 19 This is a flowchart of an embodiment of the present application
[0057] Description of reference numerals:
[0058] 100, fuselage; 110, central axis; 120, outer contour line; 121, first forward direction line; 122, second forward direction line; 200, image acquisition module; 210, field of view; 300, boundary; 310, first boundary; 320, second boundary; 300', real boundary; 400, storage medium; 10, working area; 11, non-working area; 500, obstacle; 600, control circuit; 700, drive device. DETAILED DESCRIPTION
[0059] To facilitate understanding of the present invention, the present invention will be described more fully below with reference to the accompanying drawings. Preferred embodiments of the present invention are shown in the accompanying drawings. However, the present invention may be implemented in many different forms and is not limited to the embodiments described herein. Rather, these embodiments are provided to provide a more thorough and comprehensive understanding of the present disclosure.
[0060] In the present invention, unless otherwise specified or limited, the terms "installed," "connected," "connect," "fixed," etc. should be understood in a broad sense. For example, they can refer to fixed connection, detachable connection, or integration; mechanical connection, electrical connection; direct connection, or indirect connection through an intermediate medium; internal communication between two components, or interaction between two components, unless otherwise specified. Those skilled in the art will understand the specific meanings of the above terms in the present invention based on specific circumstances.
[0061] The terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of the technical features being referred to. Thus, a feature specified as "first" or "second" may explicitly or implicitly include at least one such feature. In the description of the present invention, "plurality" means at least two, for example, two, three, etc., unless otherwise specifically defined.
[0062] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by those skilled in the art to which this invention pertains. The terms used in this specification of the present invention are for the purpose of describing specific embodiments only and are not intended to limit the present invention. The term "and / or" as used herein includes any and all combinations of one or more of the associated listed items.
[0063] This embodiment provides a self-moving device, a method for adjusting a movement trajectory, and a computer-readable storage medium. The self-moving device may be an autonomous smart device, such as an autonomous lawn mower, an autonomous vacuum cleaner, an autonomous mop, or an autonomous snow blower. The self-moving device may automatically move within a specified work area 10 and perform corresponding tasks, or may return to a docking station along the boundary of the work area 10 for docking or charging.
[0064] Example 1
[0065] This embodiment provides a self-moving device, referring to Figure 1 and Figure 18 The self-mobile device includes a body 100, an image acquisition module 200 and a control circuit 600.
[0066] Specifically, the body 100 includes a drive device 700, which is used to drive the body 100 on the work surface according to received drive commands. The drive device 700 generally includes rollers and a motor that drives the rollers. The rollers may include a driving wheel and a driven wheel. The rollers may be distributed on both sides of the body 100, with one or two rollers on each side.
[0067] The body 100 also includes a working module, which is used to perform specific work tasks. For example, if the self-moving device is an automatic lawn mower, the working module includes mowing blades, a cutting motor, and other components. It may also include auxiliary components such as a mowing height adjustment mechanism to optimize or adjust the mowing effect. For example, if the self-moving device is an automatic vacuum cleaner, the working module includes a vacuum motor, a vacuum port, a vacuum tube, a vacuum chamber, a dust collection device, and other working components used to perform the vacuuming task.
[0068] The body 100 may also include an energy module, which is used to provide energy for various operations of the self-mobile device. The energy module may include a rechargeable battery and a charging connection structure, wherein the charging connection structure is usually a charging electrode sheet, which can be used in conjunction with a charging electrode sheet set at a docking station to charge the self-mobile device.
[0069] In addition to the above modules, the body 100 may also include a shell for accommodating and installing each module, a control panel for user operation, etc. It may also include various environmental sensors, such as humidity sensors, temperature sensors, acceleration sensors, light sensors, etc. The above sensors can assist the mobile device in determining the working environment to execute the corresponding program.
[0070] The control circuit 600 is the core component of the self-moving device, which is used to control the automatic movement and operation of the self-moving device. The functions it performs include controlling the working module to start or stop working, generating a moving path and controlling the drive device 700 to move according to the path, judging the power level of the energy module and promptly controlling the self-moving device to return to the docking station for automatic docking and charging, and executing corresponding programs based on the data from the environmental sensor.
[0071] When a self-propelled device navigates and performs tasks within a work area 10, it typically moves in a straight line until it encounters a boundary 300. It then turns and returns to the work area 10, continuing its straight line movement until it encounters the boundary 300 again. By continuously turning back within the work area 10, the self-propelled device covers the entire work area 10. Since turning back after encountering a boundary 300 is the most frequent interruption to normal operation, improving the efficiency of turning and returning and rationally planning the path after turning can effectively improve the efficiency of the self-propelled device.
[0072] Reference Figure 1 and 2 The self-mobile device includes an image acquisition module 200. The image acquisition module 200 is connected to the body 100 and is used to capture images in the forward direction of the body 100. The images are at least partially images of the work surface in the forward direction. The captured images are within the field of view 210 of the image acquisition module 200. The image acquisition module 200 can be any type of camera commonly used in the industry.
[0073] Typically, the image acquisition module 200 is mounted near the front upper portion of the fuselage 100, preferably centered, with a viewing angle facing forward and downward to capture images of the work surface. Its field of view 210 can be adjusted based on actual needs. A larger field of view 210 captures more images in the forward direction of the fuselage 100, and vice versa. The fuselage 100 can have various forward directions, such as normal forward movement, backward movement, and turning movements. In this embodiment, the forward direction of the fuselage refers to the normal forward direction, i.e., the direction of the fuselage's central axis 110.
[0074] Preferably, refer to Figure 1The orthographic projection of the end of the fuselage 100 closest to the forward direction on the ground falls within the field of view 210 of the image acquisition module 200, that is, there is no gap between the area where the field of view 210 is located and the fuselage 100, and there is no blind spot. This can be achieved by adjusting the position and installation angle of the image acquisition module 200, thereby avoiding missing the image of the position close to the fuselage 100 in the front area.
[0075] The control circuit 600 is connected to the image acquisition module 200, and is used to fit the boundary 300 and / or obstacle corresponding to the working area 10 where the mobile device is located based on the acquired image. Specifically, the control circuit 600 identifies the features in the current image, and generates a boundary mark that maps the boundary position on the working surface and / or an obstacle mark that maps the obstacle position on a picture. In either case, the position of the boundary mark / obstacle mark in the picture maps the position of the boundary / obstacle on the working surface in the real world. It should be pointed out that the picture can be formed by processing the original image, or newly generated based on the features of the original image. The following explanation will be given by taking the example of superimposing boundary marks, obstacle marks, reference lines and other processing on the original image. For the convenience of description, it will be directly referred to as the image, and the image will no longer be explained one by one as being processed.
[0076] The control circuit 600 also provides a reference line associated with the direction of movement of the device 100 in the image, and issues the drive instructions based on the relative positional relationship between the boundary markers and / or obstacle markers and the reference line to control the movement trajectory of the self-moving device. The virtual reference lines, boundary markers, obstacle markers, etc., upon which the control circuitry relies for making judgments and issuing instructions, are reference lines in the real world, such as the centerline of the device, and the mapping of boundaries, obstacles, etc., onto the image. However, for simplicity, the distinction between the two will not be strictly made in the following text. Those skilled in the art will understand, depending on the scenario, that the reference lines, etc. described herein refer to virtual objects or the real world.
[0077] After the image acquisition module 200 captures an image of the direction in which the mobile device 100 is traveling, the control circuit 600 receives the image and uses image recognition technology to identify the image. If a boundary 300 / obstacle is present in the image, the control circuit 600 can then fit the image to the boundary 300 / obstacle corresponding to the working area 10 where the mobile device is located. Of course, if the boundary 300 / obstacle is not present in the image, it indicates that the mobile device is still some distance away from the boundary 300 / obstacle, and the control circuit 600 does not need to interfere with the current direction in which the mobile device 100 is traveling.
[0078] The control circuit 600 can fit the boundary 300 by identifying the color and texture information of the image to determine the distribution of the working area 10 and the non-working area 11, thereby determining the boundary 300 between the working area 10 and the non-working area 11. Specifically, the control circuit 600 identifies the grass area and the non-grass area in the image and fits the boundary between the grass area and the non-grass area as a boundary marker on the image. For example, in an automatic lawn mower, the grass in the working area 10 is green and has a natural, irregular texture. In the non-working area 11, the ground is dirt or concrete, which is typically not green. Even if it is green, it is usually artificially processed and has a regular texture. Based on this, if the control circuit 600 identifies a portion as green with an irregular texture, it can determine that portion as grass, i.e., the working area 10. If it identifies a portion as not green or with a regular texture, it can determine that portion as non-grass, i.e., the non-working area 11. Alternatively, a visual recognition technology based on deep learning may be used. For example, a number of training samples may be acquired in advance to form a training sample set. A boundary recognition model may be trained based on the training sample set, and the boundary recognition model may be gradually optimized. After a determined boundary recognition model is obtained, the image captured by the image acquisition module is input into the boundary recognition model, and the fitting result of the boundary in the image is output. The image recognition methods listed above are all capable of realizing boundary recognition, and in practical applications, other similar image recognition methods may also be used, which are not listed here one by one. Thus, when there is a boundary 300 in the image, the boundary 300 in the image may be accurately identified and fitted by image recognition technology.
[0079] The boundary can also be pre-set on the ground, such as a physical boundary such as a fence or cable. Since physical boundaries generally have fixed textures and colors, the control circuit 600 can identify the corresponding textures and colors through image recognition technology to determine the position of the boundary in the image.
[0080] After fitting the boundary 300, the control circuit 600, when the fuselage 100 moves toward the boundary 300 and the fuselage 100 and the boundary 300 meet a preset distance relationship, identifies the angular relationship of the forward direction of the fuselage 100 relative to the boundary 300 based on the image, and controls the fuselage 100 to turn, so that when the turning starts, the reference line of the forward direction of the fuselage 100 forms an acute angle or a right angle with the first boundary portion 310, and when the turning is completed, the reference line of the forward direction of the fuselage 100 forms an acute angle or a right angle with the second boundary portion 312; wherein, the intersection of the reference line of the forward direction of the fuselage 100 and the boundary 300 divides the boundary 300 into the first boundary portion 310 and the second boundary portion 312.
[0081] It should be noted that the "body 100 moves toward the boundary 300" here refers to the process when the mobile device is in working mode, that is, the mobile device moves in a straight line to the boundary 300 when performing a task in the working area 10, and does not refer to the process when the mobile device is in the edge regression mode to find the boundary 300.
[0082] Specifically, the control circuit 600 can determine the distance relationship between the fuselage 100 and the boundary 300 through image recognition and processing techniques. For example, an image coordinate system can be established in the image, and the distance between a point on the fuselage 100 and a point on the boundary 300 can be determined based on the coordinate system. For another example, if the lowest point of the boundary 300 in the image is greater than or equal to one-third of the image boundary 300, it can be determined that the fuselage 100 and the boundary 300 meet the preset distance relationship, that is, only an approximate positional relationship is determined. Of course, in actual applications, the distance relationship between the fuselage 100 and the boundary 300 can also be determined from other angles through image recognition technology, as long as the distance relationship between the fuselage 100 and the boundary 300 can be characterized.
[0083] When the fuselage 100 moves toward the boundary 300 and the fuselage 100 and the boundary 300 satisfy a preset distance relationship, that is, the fuselage 100 and the boundary 300 are relatively close, the fuselage 100 is controlled to turn based on the angular relationship of the forward direction of the fuselage 100 relative to the boundary 300 as determined by image recognition. The order of executing these two steps, determining the distance relationship between the fuselage 100 and the boundary 300 and identifying the angular relationship of the forward direction of the fuselage 100 relative to the boundary 300 based on the image, is not unique. The angular relationship of the forward direction of the fuselage 100 relative to the boundary 300 can be determined based on image recognition after determining that the preset distance relationship between the fuselage 100 and the boundary 300 is satisfied, or the angular relationship of the forward direction of the fuselage 100 relative to the boundary 300 can be identified based on the image first, and then the distance relationship between the fuselage 100 and the boundary 300 is determined. In actual application, this can be determined based on actual needs and is not limited here.
[0084] When the fuselage 100 approaches the boundary 300, that is, the preset distance relationship between the fuselage 100 and the boundary 300 is satisfied, and the angular relationship of the forward direction of the fuselage 100 relative to the boundary 300 is identified, the rotation direction and steering angle of the fuselage 100 can be determined according to the angular relationship, and the steering of the fuselage 100 can be controlled accordingly.
[0085] Reference Figure 3 and 4 ,in, Figure 3Boundary 300 in the image is the boundary within the field of view 210 fitted in the image. Real boundary 300' is outside the field of view 210 and is a real boundary in the real world. Before turning, that is, when fuselage 100 is moving toward boundary 300, the forward direction of fuselage 100 is directed toward boundary 300. Assuming a reference line representing the forward direction of fuselage 100, the reference line and boundary 300 must form an intersection, which divides boundary 300 into two parts, assumed to be first boundary portion 310 and second boundary portion 312. When fuselage 100 approaches boundary 300 non-perpendicularly, one of first boundary portion 310 and second boundary portion 312 must form an acute angle with the reference line. When fuselage 100 approaches boundary 300 perpendicularly, both first boundary portion 310 and second boundary portion 312 form right angles with the reference line. In this embodiment, it is assumed that the first boundary portion 310 forms an acute angle with the reference line, that is, before the turning begins, the reference line forms an acute angle or a right angle with the first boundary portion 310, then in the process of controlling the turning of the fuselage 100, the turning is performed at a smaller angle so that when the turning is completed, the reference line forms an acute angle or a right angle with the second boundary portion 312.
[0086] It should be noted that the intersection of the reference line and the boundary 300 may not be the same at the beginning and the end of the turn, that is, the first boundary portion 310 and the second boundary portion 312 at the two moments may also change, but this does not affect the implementation of the above-mentioned solution of the present application. For example, at the beginning of the turn, the intersection is point A, which divides the boundary 300 into the first boundary portion in the upper left portion and the second boundary portion 312 in the lower right portion, and the first boundary portion 310 forms an acute angle with the reference line. When the turn is completed, the intersection is point B, which is offset to the upper left relative to point A. Point B also divides the boundary 300 into the first boundary portion 310 in the upper left portion and the second boundary portion 312 in the lower right portion, and the second boundary portion 312 forms an acute angle with the reference line.
[0087] This embodiment uses image recognition technology to identify the angular relationship between the forward direction of the fuselage 100 and the boundary 300. The turning of the fuselage 100 can be preliminarily determined based on the angular relationship. If the reference line of the forward direction of the fuselage 100 forms an acute angle or a right angle with the first boundary portion 310 when the turning begins, the fuselage 100 is controlled to turn so that the reference line of the forward direction of the fuselage 100 forms an acute angle or a right angle with the second boundary portion 312. That is, the fuselage 100 is turned at a smaller angle on the basis of the original path to return to the working area 10 to continue working, and the fuselage 100 is prevented from turning at a larger angle to an area deviating from the original path, thereby effectively improving the turning efficiency and the rationality of path planning, thereby improving the movement and work efficiency of the self-moving device.
[0088] In one embodiment, referring to Figure 3 and 4The reference line associated with the forward direction of the fuselage 100 is at least one of a central axis reference line that maps the projection of the central axis 110 of the fuselage 100 on the work surface, a sideline reference line that maps the projection of the width sideline of the fuselage 100 parallel to the central axis 110 on the work surface, a reference line that maps a parallel line between the central axis 110 and the sideline and parallel to the central axis 110, or a parallel line between the central axis 110 and the outer sideline and parallel to the outer sideline, and a transverse reference line that maps the projection of a perpendicular to the central axis 110 on the work surface. That is, the reference line used to represent the forward direction of the fuselage 100 is not unique and can be the central axis 110 of the fuselage 100 or the outer contour lines 120 set on both sides of the fuselage 100 in the image, that is, the width sidelines of the fuselage parallel to the central axis 110. The direction of extension of the outer contour line 120 is the forward direction of the fuselage 100. The outer contour lines 120 are parallel to each other and have a width equal to the width of the fuselage 100. They can also be other parallel lines between the central axis 110 and the outer contour line 120 that are parallel to the central axis 110 or the outer contour line 120. For example, a parallel line parallel to the forward direction of the fuselage 100 is drawn starting from a component on the fuselage 100. Reference lines also include lines that are not parallel to the central axis 110 but are associated with the direction and position of the central axis 110, such as a horizontal reference line that reflects the projection of a perpendicular line to the central axis 110 on the work surface.
[0089] In practical applications, any one of the above or a combination thereof may be selected as the reference line, such as the central axis 110 of the fuselage 100 being used as the reference line.
[0090] In this embodiment, there is no unique way to determine the angular relationship between the forward direction of the fuselage 100 and the boundary 300. Based on image recognition technology, multiple methods can be used to identify the angular relationship between the forward direction of the fuselage 100 and the boundary 300.
[0091] In one embodiment, the control circuit 600 is configured to identify the angular relationship of the forward direction of the fuselage 100 relative to the boundary 300 based on the angle between the central axis 110 of the fuselage 100 and the boundary 300, that is, to identify the relative positional relationship between the central axis reference line and the boundary marker in the image based on the angle between them. For example, if the acute angle between the central axis 110 of the fuselage 100 and the boundary 300 is to the right of the central axis 110, this indicates that the right half of the fuselage 100 is closer to the boundary 300. In this case, the fuselage 100 can be controlled to turn left, and the self-mobile device can continue to perform tasks in the work area 10 on the left side of the image. Conversely, if the acute angle between the central axis 110 of the fuselage 100 and the boundary 300 is to the left of the central axis 110, this indicates that the left half of the fuselage 100 is closer to the boundary 300. In this case, the fuselage 100 can be controlled to turn right, and the self-mobile device can continue to perform tasks in the work area 10 on the right side of the image. Such path planning is more reasonable, which is conducive to fully covering the working area 10, and the above control process is performed based on image recognition technology, which is more efficient than traditional boundary detection sensing technology.
[0092] As an alternative embodiment, the control circuit 600 may also identify the angular relationship of the forward direction of the fuselage 100 relative to the boundary 300 based on the angle between the outer contour line 120 of the fuselage 100 or other extension line used to represent the forward direction of the fuselage 100 and the boundary 300 .
[0093] In one embodiment, the control circuit 600 is configured to identify the angular relationship of the forward direction of the fuselage 100 relative to the boundary 300 based on the lowest point of the boundary 300 in the image being located on the edge of the image, that is, to identify the relative positional relationship based on which side of the central axis reference line the lowest point of the boundary marker is located. The side of the image on which the lowest point of the boundary 300 is located indicates which side of the fuselage 100 is closer to the boundary 300. For example, if the lowest point of the boundary 300 in the image is located on the right edge of the image, it indicates that the right side of the fuselage 100 is closer to the boundary 300; conversely, if the lowest point of the boundary 300 in the image is located on the left edge of the image, it indicates that the left side of the fuselage 100 is closer to the boundary 300.
[0094] In one embodiment, the control circuit 600 is configured to control the body 100 to rotate clockwise when the lowest point of the boundary 300 is located at the left edge of the image.
[0095] In one embodiment, the control circuit is configured to control the body 100 to rotate counterclockwise when the lowest point of the boundary 300 is located at the right edge of the image.
[0096] That is, when the lowest point of the boundary mark is located on the left side of the central axis reference line, a drive instruction is issued to control the fuselage 100 to rotate clockwise; when the lowest point of the boundary mark is located on the right side of the central axis reference line, a control instruction is issued to control the fuselage 100 to rotate counterclockwise.
[0097] When the control circuit 600 determines that the lowest point of the boundary 300 is located at the left edge of the image, it indicates that the left side of the fuselage 100 is closer to the boundary 300. The fuselage 100 is controlled to rotate clockwise to continue to perform work tasks within the working area 10 on the right side of the image. When the control circuit 600 determines that the lowest point of the boundary 300 is located at the right edge of the image, it indicates that the right side of the fuselage 100 is closer to the boundary 300. The fuselage 100 is controlled to rotate counterclockwise to continue to perform work tasks within the working area 10 on the left side of the image. This path planning is more reasonable and conducive to fully covering the working area 10. In addition, the control process is based on image recognition technology, which is more efficient than traditional boundary 300 detection sensing technology.
[0098] In one embodiment, the steering angle of the fuselage 100 is greater than α and less than or equal to α+90°. Figure 4 α is the acute or right angle formed between the reference line of the forward direction of the fuselage 100 and the first boundary 310, that is, the acute or right angle formed between the central axis reference line and the boundary marker. The steering angle of the fuselage 100 should not be too large or too small. If it is too large, it will easily return to the work area 10 where the task has already been completed, and it is not suitable to fully cover the work area 10. If it is too small, it will not be easy to leave the boundary 300, and the steering operation will be continuously performed, which is inefficient. Based on this, this embodiment sets the turning angle of the fuselage 100 to be greater than α and less than or equal to α+90°. Assume that the angular relationship between the forward direction of the fuselage 100 and the boundary 300 is that the acute angle α between the central axis 110 of the fuselage 100 and the boundary 300 is located on the right side of the central axis 110, that is, the right side of the fuselage 100 is closer to the boundary 300. At this time, the fuselage 100 is controlled to turn left, and the steering angle is greater than α, that is, the fuselage 100 can be turned to a position where the forward direction points to the boundary and is not parallel to the boundary 300, which is conducive to leaving the boundary 300 and returning to the boundary to perform tasks. At the same time, the steering angle is less than or equal to α+90°, which ensures that the fuselage 100 will not return to the work area 10 where the work task has been performed, avoids repeatedly performing tasks in the original place, and does not continue to move forward to the work area 10 where the task has not been performed to perform tasks, which helps to ensure full coverage of the work area 10.
[0099] When identifying the angular relationship between the forward direction of the fuselage 100 and the boundary 300 , the actual shape of the boundary 300 needs to be considered. For boundaries 300 of different shapes, the angular relationship between the boundary 300 and the forward direction of the fuselage 100 is determined differently.
[0100] In one embodiment, when the boundary 300 is a straight line, the angular relationship is the angle between the boundary 300 and a reference line in the forward direction of the fuselage 100. If the boundary 300 is a straight line, the angle between the boundary 300 and the reference line is directly identified and used as the angular relationship between the reference line and the boundary 300.
[0101] In one embodiment, when the boundary 300 is non-linear, at least one preset point is selected from the boundary 300, and the intersection of a reference line in the forward direction of the fuselage 100 and the boundary 300 is connected to the preset point to form a straight line. The angle relationship is the angle between the straight line and the reference line in the forward direction of the fuselage 100. For example, the fitted boundary 300 may be non-linear, such as wavy or arc-shaped. For such a boundary 300, several preset points can be selected from the boundary 300, and the intersection of the reference line with the boundary 300 and the several preset points are connected to form a straight line. This straight line is used as the reference line, and the angle between the straight line and the reference line is used as the angle relationship between the reference line and the boundary 300.
[0102] refer to Figure 19 This embodiment further provides a method for adjusting a movement trajectory for a self-moving device, wherein the self-moving device includes a body 100 and an image acquisition module 200 connected to the body 100, wherein the image acquisition module 200 is configured to acquire an image in a forward direction of the body 100; the method for adjusting the movement trajectory comprises the following steps:
[0103] Step S200 : When the self-mobile device moves, continuous images of the working surface of the body 100 of the self-mobile device in the forward direction are acquired through the image acquisition module 200 .
[0104] Step S400: Identify features in the current image, and generate boundary markers that map the positions of boundaries on the work surface and / or obstacle markers that map the positions of obstacles on a picture.
[0105] Step S500: providing a reference line associated with the forward direction of the fuselage 100 for the image.
[0106] The reference lines of the forward direction of the fuselage 100 include: a central axis reference line that maps the projection of the central axis 110 of the fuselage 100 on the working surface, a sideline reference line that maps the projection of the width sideline of the fuselage 100 parallel to the central axis 110 on the working surface, and at least one of the reference lines that maps a parallel line located between the central axis 110 and the sideline and parallel to the central axis 110 or a parallel line located between the central axis 110 and the outer sideline and parallel to the outer sideline.
[0107] Step S600: Based on the relative positional relationship between the boundary marker and / or obstacle marker and the reference line, a drive instruction is issued to the driving device 700 of the self-moving device to control the movement trajectory of the self-moving device. In one embodiment, the relative positional relationship can be identified based on the angle between the central axis 110 reference line and the boundary marker.
[0108] Specifically, in one embodiment, when the fuselage 100 moves toward the boundary 300 and a preset distance relationship is satisfied between the fuselage 100 and the boundary 300, the angular relationship of the forward direction of the fuselage 100 relative to the boundary 300 is identified according to the image, and the fuselage 100 is controlled to turn, so that when the turning begins, the reference line of the forward direction of the fuselage 100 forms an acute angle or a right angle with the first boundary portion 310, and when the turning is completed, the reference line of the forward direction of the fuselage 100 forms an acute angle or a right angle with the second boundary portion 312; wherein, the intersection of the reference line of the forward direction of the fuselage 100 and the boundary 300 divides the boundary 300 into the first boundary portion 310 and the second boundary portion 312.
[0109] After receiving the image of the direction in which the body 100 is moving, captured by the image acquisition module 200, the image is identified using image recognition technology. If a boundary 300 is present in the image, the boundary 300 corresponding to the working area 10 where the mobile device is located can be fitted based on the image. Of course, if the boundary 300 is not present in the image, it indicates that the mobile device is still a certain distance away from the boundary 300, and there is no need to interfere with the current direction in which the body 100 is moving.
[0110] In step S400, the boundary 300 can be fitted by identifying the color and texture information of the image to determine the distribution of the working area 10 and the non-working area 11, thereby determining the boundary 300 between the working area 10 and the non-working area 11. Taking an automatic lawn mower as an example, within the working area 10, the grass is green and has a natural, irregular texture. Within the non-working area 11, the ground is dirt or concrete, typically not green. Even if it is green, it is usually artificially processed and has a regular texture. Based on this, when the control circuit 600 identifies a portion as green with an irregular texture, it can determine that portion as grass, i.e., the working area 10. If it identifies a portion as not green or with a regular texture, it can determine that portion as non-grass, i.e., the non-working area 11. Thus, when a boundary 300 exists in an image, image recognition technology can be used to accurately identify and fit the boundary 300 in the image.
[0111] The boundary 300 may also be a physical boundary 300 pre-set on the ground, such as a fence or cable. Since the physical boundary 300 generally has a fixed texture and color, the corresponding texture and color can be identified through image recognition technology to determine the position of the boundary 300 in the image.
[0112] In step S600, “the body 100 moves toward the boundary 300” refers to the process of the mobile device being in the working mode, that is, the process of the mobile device moving in a straight line to the boundary 300 while performing a task in the working area 10, and does not refer to the process of the mobile device being in the edge mode to find the boundary 300 (e.g., Figure 11 ), wherein the edge mode includes edge return, executing tasks along the edge of the work area 10, and entering the second area from the first area. In other words, it can be understood that the movement trajectory adjustment method provided in this embodiment is based on the mobile device being in the working mode of executing tasks within the work area 10.
[0113] Once boundary 300 is fitted in the image, the distance relationship between fuselage 100 and boundary 300 can be determined through image recognition and processing techniques. For example, an image coordinate system can be established in the image, and the distance between a point on fuselage 100 and a point on boundary 300 can be determined based on the coordinate system. For another example, when the lowest point of boundary 300 in the image is identified as being greater than or equal to one-third of the image boundary 300, it can be determined that the distance relationship between fuselage 100 and boundary 300 meets the preset distance relationship, i.e., only an approximate positional relationship is determined. Of course, in actual applications, image recognition technology can also be used to determine the distance relationship between fuselage 100 and boundary 300 from other perspectives. As long as the distance relationship between fuselage 100 and boundary 300 can be characterized, it will be sufficient to ensure that fuselage 100 can achieve timely steering at the appropriate position as it approaches boundary 300.
[0114] When the fuselage 100 moves toward the boundary 300 and the fuselage 100 and the boundary 300 satisfy a preset distance relationship, that is, the fuselage 100 and the boundary 300 are relatively close, the fuselage 100 is controlled to turn based on the angular relationship of the forward direction of the fuselage 100 relative to the boundary 300 as determined by image recognition. The order of executing these two steps, determining the distance relationship between the fuselage 100 and the boundary 300 and identifying the angular relationship of the forward direction of the fuselage 100 relative to the boundary 300 based on the image, is not unique. The angular relationship of the forward direction of the fuselage 100 relative to the boundary 300 can be determined based on image recognition after determining that the preset distance relationship between the fuselage 100 and the boundary 300 is satisfied, or the angular relationship of the forward direction of the fuselage 100 relative to the boundary 300 can be identified based on the image first, and then the distance relationship between the fuselage 100 and the boundary 300 is determined. In actual application, this can be determined based on actual needs and is not limited here.
[0115] When the fuselage 100 approaches the boundary 300, that is, the preset distance relationship between the fuselage 100 and the boundary 300 is satisfied, and the angular relationship of the forward direction of the fuselage 100 relative to the boundary 300 is identified, the rotation direction and steering angle of the fuselage 100 can be determined according to the angular relationship, and the steering of the fuselage 100 can be controlled accordingly.
[0116] Before turning, that is, during the process of fuselage 100 moving toward boundary 300, the forward direction of fuselage 100 points toward boundary 300. Assuming a reference line representing the forward direction of fuselage 100, the reference line and boundary 300 necessarily form an intersection. This intersection divides boundary 300 into two parts, assumed to be first boundary portion 310 and second boundary portion 312. When fuselage 100 approaches boundary 300 non-perpendicularly, any part between first boundary portion 310 and second boundary portion 312 necessarily forms an acute angle with the reference line. When fuselage 100 approaches boundary 300 perpendicularly, both first boundary portion 310 and second boundary portion 312 form right angles with the reference line. In this embodiment, it is assumed that the first boundary portion 310 forms an acute angle with the reference line, that is, before the turning begins, the reference line forms an acute angle or a right angle with the first boundary portion 310, then in the process of controlling the turning of the fuselage 100, the turning is performed at a smaller angle so that when the turning is completed, the reference line forms an acute angle or a right angle with the second boundary portion 312.
[0117] It should be noted that the intersection of the reference line and the boundary 300 may not be the same at the beginning and the end of the turn, that is, the first boundary portion 310 and the second boundary portion 312 at the two moments may also change, but this does not affect the implementation of the above-mentioned solution of the present application. For example, at the beginning of the turn, the intersection is point A, which divides the boundary 300 into the first boundary portion 310 in the upper left portion and the second boundary portion 312 in the lower portion, and the first boundary portion 310 forms an acute angle with the reference line. When the turn is completed, the intersection is point B, which is offset to the upper left relative to point A. Point B also divides the boundary 300 into the first boundary portion 310 in the upper left portion and the second boundary portion 312 in the lower right portion, and the second boundary portion 312 forms an acute angle with the reference line.
[0118] This embodiment uses image recognition technology to identify the angular relationship between the forward direction of the fuselage 100 and the boundary 300. The turning of the fuselage 100 can be preliminarily determined based on the angular relationship. If the reference line of the forward direction of the fuselage 100 forms an acute angle or a right angle with the first boundary portion 310 when the turning begins, the fuselage 100 is controlled to turn so that the reference line of the forward direction of the fuselage 100 forms an acute angle or a right angle with the second boundary portion 312. That is, the fuselage 100 is turned at a smaller angle on the basis of the original path to return to the working area 10 to continue working, and the fuselage 100 is prevented from turning at a larger angle to an area deviating from the original path, thereby effectively improving the turning efficiency and the rationality of path planning, thereby improving the movement and work efficiency of the self-moving device.
[0119] In one embodiment, referring to Figure 3 and 4 The reference line of the forward direction of the fuselage 100 includes the central axis 110 of the fuselage 100, the outer contour line 120 in the image for indicating the width of the fuselage 100, a parallel line located between the central axis 110 and the outer contour line 120 and parallel to the central axis 110, or at least one of the parallel lines located between the central axis 110 and the outer contour line 120 and parallel to the outer contour line 120.
[0120] That is, the reference line used to represent the forward direction of the fuselage 100 is not unique. It can be the central axis 110 of the fuselage 100, or the outer contour lines 120 set on both sides of the fuselage 100 in the image, where the outer contour lines 120 extend in the forward direction of the fuselage 100, are parallel to each other, and have a width equal to the width of the fuselage 100. It can also be other parallel lines between the central axis 110 and the outer contour lines 120 that are parallel to the central axis 110 or the outer contour lines 120. For example, a parallel line parallel to the forward direction of the fuselage 100 can be drawn starting from a component on the fuselage 100. The above reference lines can be automatically generated in the image after the image of the fuselage 100 in the forward direction is acquired.
[0121] In this embodiment, the central axis 110 of the fuselage 100 is preferably used as a reference line.
[0122] In this embodiment, there is no unique way to determine the angular relationship between the forward direction of the fuselage 100 and the boundary 300. Based on image recognition technology, multiple methods can be used to identify the angular relationship between the forward direction of the fuselage 100 and the boundary 300.
[0123] In one embodiment, step S600, i.e., the step of identifying the angular relationship of the forward direction of the fuselage 100 relative to the boundary 300 based on the image, includes: identifying the angular relationship of the forward direction of the fuselage 100 relative to the boundary 300 based on the angle between the central axis 110 of the fuselage 100 and the boundary 300.
[0124] For example, if the acute angle between the central axis 110 of the fuselage 100 and the boundary 300 is to the right of the central axis 110, it means that the right half of the fuselage 100 is closer to the boundary 300. In this case, the fuselage 100 can be controlled to turn left, and the self-mobile device can be controlled to continue to perform tasks in the working area 10 on the left side of the image. Conversely, if the acute angle between the central axis 110 of the fuselage 100 and the boundary 300 is to the left of the central axis 110, it means that the left half of the fuselage 100 is closer to the boundary 300. In this case, the fuselage 100 can be controlled to turn right, and the self-mobile device can be controlled to continue to perform tasks in the working area 10 on the right side of the image. This path planning is more reasonable and conducive to comprehensive coverage of the working area 10. In addition, the above control process is based on image recognition technology, which is more efficient than traditional boundary 300 detection sensing technology.
[0125] As an alternative embodiment, the angular relationship of the forward direction of the fuselage 100 relative to the boundary 300 may be identified based on the angle between the outer contour line 120 of the fuselage 100 or other extension line used to represent the forward direction of the fuselage 100 and the boundary 300 .
[0126] In one embodiment, step S600, i.e., the step of identifying the angular relationship of the forward direction of the fuselage 100 relative to the boundary 300 based on the image, includes: identifying the angular relationship of the forward direction of the fuselage 100 relative to the boundary 300 based on the lowest point of the boundary 300 in the image being located on an edge of the image. That is, the relative positional relationship is identified based on which side of the central axis reference line the lowest point of the boundary marker is located.
[0127] The side of the image where the lowest point of the boundary 300 is located indicates which side of the fuselage 100 is closer to the boundary 300. For example, if the lowest point of the boundary 300 in the image is located at the right edge of the image, it indicates that the right side of the fuselage 100 is closer to the boundary 300; conversely, if the lowest point of the boundary 300 in the image is located at the left edge of the image, it indicates that the left side of the fuselage 100 is closer to the boundary 300.
[0128] In one embodiment, the step of controlling the body 100 to turn in step S600 includes:
[0129] When the lowest point of the boundary 300 is located at the left edge of the image, the body 100 is controlled to rotate clockwise;
[0130] When the lowest point of the boundary 300 is located at the right edge of the image, the body 100 is controlled to rotate counterclockwise.
[0131] That is, when the lowest point of the boundary mark is located on the left side of the central axis reference line, a drive instruction is issued to control the fuselage 100 to rotate clockwise; when the lowest point of the boundary mark is located on the right side of the central axis reference line, a control instruction is issued to control the fuselage 100 to rotate counterclockwise.
[0132] If the lowest point of boundary 300 is determined to be on the left edge of the image, indicating that the left side of fuselage 100 is closer to boundary 300, fuselage 100 is controlled to rotate clockwise to continue working within work area 10 on the right side of the image. If the lowest point of boundary 300 is determined to be on the right edge of the image, indicating that the right side of fuselage 100 is closer to boundary 300, fuselage 100 is controlled to rotate counterclockwise to continue working within work area 10 on the left side of the image. This path planning is more reasonable and facilitates comprehensive coverage of work area 10. Furthermore, the control process, based on image recognition technology, is more efficient than traditional boundary 300 detection sensing technology.
[0133] In one embodiment, in the step of controlling the body 100 to turn in step S600, the turning angle of the body 100 is greater than α and less than or equal to α+90°. Figure 3 and 4 , α is the acute angle or right angle formed by the reference line of the forward direction of the fuselage 100 and the first boundary portion 310, that is, α is the acute angle or right angle formed by the central axis reference line and the boundary mark.
[0134] The turning angle of the fuselage 100 should not be too large or too small. If it is too large, it is easy to return to the working area 10 where the task has been completed, and it is not suitable to fully cover the working area 10. If it is too small, it is not easy to leave the boundary 300, and the turning operation is continuously performed, which is inefficient. Based on this, this embodiment sets the turning angle of the fuselage 100 to be greater than α and less than or equal to α+90°. Assume that the angular relationship between the forward direction of the fuselage 100 and the boundary 300 is that the acute angle α between the central axis 110 of the fuselage 100 and the boundary 300 is located on the right side of the central axis 110, that is, the right side of the fuselage 100 is closer to the boundary 300. At this time, the fuselage 100 is controlled to turn left, and the steering angle is greater than α, that is, the fuselage 100 can be turned to a position where the forward direction points to the boundary and is not parallel to the boundary 300, which is conducive to leaving the boundary 300 and returning to the boundary to perform tasks. At the same time, the steering angle is less than or equal to α+90°, which ensures that the fuselage 100 will not return to the work area 10 where the work task has been performed, avoids repeatedly performing tasks in the original place, and does not continue to move forward to the work area 10 where the task has not been performed to perform tasks, which helps to ensure full coverage of the work area 10.
[0135] When identifying the angular relationship between the forward direction of the fuselage 100 and the boundary 300 , the actual shape of the boundary 300 needs to be considered. For boundaries 300 of different shapes, the angular relationship between the boundary 300 and the forward direction of the fuselage 100 is determined differently.
[0136] In one embodiment, when the boundary 300 is a straight line, the angular relationship is the angle between the boundary 300 and a reference line in the forward direction of the fuselage 100. If the boundary 300 is a straight line, the angle between the boundary 300 and the reference line is directly identified and used as the angular relationship between the reference line and the boundary 300.
[0137] In one embodiment, when the boundary 300 is non-linear, at least one preset boundary 300 point is selected from the boundary 300, and the intersection of a reference line in the forward direction of the fuselage 100 and the boundary 300 is connected to the preset boundary 300 point to form a straight line. The angle relationship is the angle between the straight line and the reference line in the forward direction of the fuselage 100. For example, the fitted boundary 300 may be non-linear, such as wavy or arc-shaped. For such a boundary 300, several preset points can be selected from the boundary 300, and the intersection of the reference line and the boundary 300 and the several preset points can be connected to form a straight line. This straight line is used as the reference line, and the angle between the straight line and the reference line is used as the angle relationship between the reference line and the boundary 300.
[0138] In one embodiment, after step S400, the movement trajectory adjustment method provided by this embodiment further includes:
[0139] Obtaining the distance between the body 100 and a preset position point on the boundary 300;
[0140] When the distance between the body 100 and a preset position point on the boundary 300 reaches a preset value, it is determined that the body 100 and the boundary 300 satisfy a preset distance relationship.
[0141] That is, a reference position point is pre-set on the boundary 300. After the boundary 300 is fitted in the image, the distance between the fuselage 100 and the position point is obtained in real time. When the distance reaches a preset value, it is determined that the preset distance relationship is satisfied between the fuselage 100 and the boundary 300, that is, the distance between the fuselage 100 and the boundary 300 reaches the minimum limit value. It is not advisable to continue approaching the boundary 300, and the fuselage 100 should be controlled to turn in time.
[0142] The distance between the body 100 and the preset position point is obtained by image recognition technology. For example, an image coordinate system can be established and the distance can be determined according to the coordinates.
[0143] In one embodiment, the preset location point includes any one of the following: the intersection of the boundary 300 and a reference line in the forward direction of the fuselage 100, the intersection of the boundary 300 and the outer edge of the image, or the location point on the boundary 300 closest to the fuselage 100. In other words, the preset location point can be selected based on actual needs, as long as the distance between the preset location point and the fuselage 100 can represent the distance from the fuselage 100 to the boundary 300.
[0144] Among them, a point can be selected from the fuselage 100, which can be the center point of the front end of the fuselage 100 or other position points, and then the distance between the position point on the fuselage 100 and the preset position point on the boundary 300 is determined.
[0145] From the above, it can be understood that the reference line includes a transverse reference line and a central axis reference line. The transverse reference line and the central axis reference line are perpendicular, and their mapping in the real world is preferably the projection of a point on the front end of the fuselage 100 on the working surface. When the transverse reference line or the reference point on the transverse reference line meets the preset distance relationship with the boundary mark, a drive instruction is issued to control the steering of the fuselage 100, so that when the steering starts, the central axis reference line forms an acute angle or a right angle with the first boundary portion 310, and when the steering is completed, the central axis reference line forms an acute angle or a right angle with the second boundary portion 312; wherein, the intersection of the central axis reference line and the boundary mark divides the boundary mark into the first boundary portion 310 and the second boundary portion 312.
[0146] In one embodiment, step S600, i.e., the step of identifying the angular relationship between the forward direction of the fuselage 100 and the boundary 300 based on the image and controlling the steering of the fuselage 100, includes controlling the fuselage 100 to rotate in a direction that reduces the acute angle or right angle formed between the reference line and the first boundary portion 310. That is, the fuselage 100 is controlled to rotate in a direction that reduces the acute angle or right angle formed between the reference line and the first boundary portion 310, so that when the steering is completed, the reference line forms an acute angle or right angle with the second boundary portion 312. This steering control strategy produces the same control result as the steering control strategy described above (e.g., if the acute angle between the central axis 110 of the fuselage 100 and the boundary 300 is to the right of the central axis 110, then the fuselage 100 is controlled to rotate counterclockwise), except that the objects of judgment and identification are different. In this embodiment, the steering of the fuselage 100 can be controlled according to any of the above-mentioned control methods.
[0147] In another embodiment, a perpendicular line perpendicular to the boundary 300 can be drawn at the intersection of the boundary 300 and the reference line in the image. When controlling the steering of the fuselage 100, the line segment formed by connecting the preset position point on the reference line to the intersection is located on one side of the perpendicular line at the beginning of the steering, and the line segment formed by connecting the preset position point on the reference line to the intersection is located on the other side of the perpendicular line when the steering is completed. Assume that the preset position point on the reference line is point A on the central axis 110 of the fuselage 100, which is located at the front end of the fuselage 100. Before the steering begins, the intersection of the boundary 300 and the central axis 110 is point B. A perpendicular line perpendicular to the boundary 300 is drawn at point B, and the AB line segment is located on the right side of the perpendicular line. The fuselage 100 turns left, and point A is displaced accordingly. Assuming that the displaced point A is point A1, the line segment formed by connecting point A1 and point B is located on the left side of the perpendicular line when the steering is completed. The steering control strategy provided in this embodiment is also applicable to the present application.
[0148] Example 2
[0149] This embodiment provides a self-moving device, referring to Figure 1 The self-mobile device includes a body 100, an image acquisition module 200 and a control circuit 600.
[0150] The image acquisition module 200 is connected to the body 100 and is used to capture an image in the forward direction of the body 100, where the image is within the field of view 210 of the image acquisition module 200. The control circuit 600 is connected to the image acquisition module 200 and is used to fit a boundary 300 corresponding to the working area 10 where the self-mobile device is located and a forward direction line of the body 100 on the side close to the boundary 300 based on the image, and adjust the movement trajectory of the body 100 based on the positional relationship between the boundary 300 and the forward direction line of the body 100 on the side close to the boundary 300 so that the movement trajectory of the body 100 is consistent with the boundary 300.
[0151] Regarding the manner in which the body 100 , the image acquisition module 200 and the control circuit 600 fit the boundary 300 , reference may be made to the detailed description in the first embodiment, which will not be repeated here.
[0152] It should be noted that, in this embodiment, the self-moving device is set to an edge movement mode, wherein the edge movement mode may include edge regression, performing tasks along the edge of the working area 10, entering the second area from the first area, and other modes. The purpose of this embodiment is to ensure that the moving trajectory of the self-moving device is consistent with the boundary 300 and moves accurately along the edge. That is, the reference line is controlled to maintain a preset positional relationship with the boundary marker during movement, so that the moving trajectory of the fuselage 100 is consistent with the boundary shape. In one embodiment, the reference line and the boundary marker are controlled to be parallel or overlapped, and maintain a preset distance.
[0153] The movement trajectory of the self-moving device may be the movement trajectory of the drive device 700, the movement trajectory of the outer edge of the body 100, the movement trajectory of the central axis 110 of the body 100, etc. The movement trajectory of the self-moving device being consistent with the boundary 300 means that the movement trajectory of the self-moving device coincides with or is parallel to the boundary 300, but during the movement of the self-moving device, the drive device 700 always remains within the boundary 300. For example, when the moving trajectory of the driving device 700 is used as the moving trajectory of the self-moving device, the moving trajectory of the driving device 700 always remains coincident with the boundary 300 or is located inside the boundary 300 and parallel to the boundary 300; when the moving trajectory of the outer edge of the fuselage 100 is used as the moving trajectory of the self-moving device, the moving trajectory of the outer edge of the fuselage 100 can be located inside the boundary 300 and parallel to the boundary 300, or coincident with the boundary 300, or located outside the boundary 300 and parallel to the boundary 300. When it is located outside the boundary 300 and parallel to the boundary 300, the driving device 700 must always remain within the boundary 300 to ensure that the self-moving device does not move outside the boundary 300.
[0154] In this embodiment, the control circuit 600 can fit the forward direction line of the side of the fuselage 100 close to the boundary 300 through image processing technology. The direction of the forward direction line is consistent with the forward direction of the fuselage 100 and is located on the side of the outer contour of the fuselage 100 close to the boundary 300. For example, if the right side of the fuselage 100 is close to the boundary 300, a forward direction line is fitted on the right side of the fuselage 100 in the image to represent the forward direction of the fuselage 100. Figure 5 In this embodiment, the second forward direction line 122 on the right side of the fuselage 100 is used as the forward direction line on the side of the fuselage 100 close to the boundary 300 for description.
[0155] When the boundary 300 and the forward direction line of the fuselage 100 close to the boundary 300 are fitted, the movement trajectory of the fuselage 100 can be adjusted in real time according to the positional relationship between the two so that the movement trajectory of the fuselage 100 is consistent with the boundary 300.
[0156] The aforementioned self-moving device uses the image acquisition module 200 on the body 100 to capture images in the direction of the mobile device's movement. The control circuit 600 then fits the captured images to the boundary 300 corresponding to the working area 10 of the mobile device and the direction of movement of the body 100 on the side closest to the boundary 300. Based on the positional relationship between the boundary 300 and the direction of movement of the body 100 on the side closest to the boundary 300, the control circuit 600 adjusts the movement trajectory of the body 100 to align with the boundary 300. That is, during edge movement, the image recognition and processing technology can be used to control the direction of movement of the body 100 on the side closest to the boundary 300 to maintain a predetermined positional relationship with the boundary 300, such as being parallel or overlapping. This ensures that the movement trajectory of the body 100 aligns with the boundary 300, thus enabling accurate edge movement.
[0157] This embodiment further provides a method for adjusting a movement trajectory for a self-moving device, wherein the self-moving device includes a body 100 and an image acquisition module 200 connected to the body 100, wherein the image acquisition module 200 is configured to acquire images in a forward direction of the body 100. The method for adjusting the movement trajectory includes the following steps:
[0158] Step S200a, acquiring an image in the forward direction of the fuselage 100;
[0159] Step S400a, fitting the boundary 300 corresponding to the working area 10 where the mobile device is located and the forward direction line of the body 100 close to the boundary 300 according to the image;
[0160] Step S600a: adjusting the movement trajectory of the fuselage 100 according to the positional relationship between the boundary 300 and the forward direction line of the fuselage 100 on the side close to the boundary 300 so that the movement trajectory of the fuselage 100 is consistent with the boundary 300.
[0161] Regarding step S200a and step S400a, please refer to the detailed description in the first embodiment and the corresponding description of the mobile device provided in this embodiment, which will not be repeated here.
[0162] The above-described motion trajectory adjustment method uses the image acquisition module 200 on the body 100 to capture an image of the mobile device's forward direction. Based on the captured image, the boundary 300 corresponding to the mobile device's working area 10 and the forward direction line of the body 100 on the side closest to the boundary 300 are fitted. Based on the positional relationship between the boundary 300 and the forward direction line of the body 100 on the side closest to the boundary 300, the motion trajectory of the body 100 is adjusted to align with the boundary 300. That is, during edge movement, image recognition and processing techniques can be used to control the forward direction line on the side of the body 100 on the side closest to the boundary 300 to maintain a predetermined positional relationship with the boundary 300, such as parallelism or overlap. This ensures that the motion trajectory of the body 100 aligns with the boundary 300, thus enabling accurate edge movement.
[0163] In practical applications, the shape of the boundary 300 is not unique and may have various possibilities, such as a straight line, a curve, or other shapes. For boundaries 300 of different shapes, this embodiment provides different trajectory adjustment strategies.
[0164] In one embodiment, referring to Figure 5 and 6 , when the boundary 300 is a straight line; wherein, Figure 5 The boundary 300 in FIG. 3 is a boundary within the field of view 210 fitted in the image, and the actual boundary 300 ′ is outside the field of view 210 and is a real boundary in the real world.
[0165] When the boundary mark is a straight line, the reference line and the boundary mark are controlled to be parallel or overlapped, and to maintain a preset distance.
[0166] Step S600a, i.e., adjusting the movement trajectory of the fuselage 100 according to the positional relationship between the boundary 300 and the forward direction line of the fuselage 100 on the side close to the boundary 300 so that the movement trajectory of the fuselage 100 is consistent with the boundary 300, includes: adjusting the movement trajectory of the fuselage 100 in real time to keep the forward direction line of the fuselage 100 on the side close to the boundary 300 coincident with or parallel to the boundary 300.
[0167] That is, when boundary 300 is a straight line, the movement trajectory of fuselage 100 can be adjusted to keep boundary 300 aligned with or parallel to the line of the direction of travel of fuselage 100 on the side closest to boundary 300, thereby achieving the goal of moving along the edge. When the trajectory is aligned with boundary 300, fuselage 100 moves closely to boundary 300; when the trajectory is parallel, fuselage 100 stays within the boundary and maintains a fixed distance from boundary 300. Both methods can achieve the goal of moving along the edge.
[0168] This embodiment uses image recognition technology to determine whether the boundary 300 and the forward direction line of the fuselage 100 on the side close to the boundary 300 remain coincident or parallel, and then adjusts the movement trajectory. Compared with the traditional method of determining the positional relationship between the fuselage 100 and the boundary 300 and adjusting the trajectory based on the boundary 300 signal detection, this method effectively improves efficiency and is less prone to errors, thereby improving the efficiency of edge movement and the accuracy of the edge movement path.
[0169] In one embodiment, referring to Figure 7 and 10 , when the boundary 300 is a curve, wherein Figure 7 and 8 The boundary 300 is shown as a curve convex toward the working area 10. Figure 9 and 10 The boundary 300 is shown as a curve that bulges toward the non-working area 11. Figure 7 and 9 The boundary 300 in FIG. 3 is a boundary within the field of view 210 fitted in the image, and the actual boundary 300 ′ is outside the field of view 210 and is a real boundary in the real world.
[0170] When the boundary marker is a curve, the reference line or a line parallel to the reference line is controlled to be tangent to the boundary marker while maintaining a preset distance.
[0171] Step S600a, i.e., the step of adjusting the movement trajectory of the fuselage 100 according to the positional relationship between the boundary 300 and the forward direction line of the fuselage 100 on the side close to the boundary 300 so that the movement trajectory of the fuselage 100 is consistent with the boundary 300, includes: adjusting the movement trajectory of the fuselage 100 in real time to keep the forward direction line of the fuselage 100 on the side close to the boundary 300 tangent to the boundary 300, or the line parallel to the forward direction line tangent to the boundary 300.
[0172] That is, when the boundary 300 is a curve, the movement trajectory of the fuselage 100 can be adjusted by simply controlling the boundary 300 to maintain tangency with the forward direction line of the fuselage 100 on the side closest to the boundary 300, or by controlling the line parallel to the forward direction line to be tangent to the boundary 300. This can achieve the purpose of moving along the edge, with the movement trajectory consistent with the boundary 300. Specifically, when the boundary 300 is tangent to the forward direction line of the fuselage 100 on the side closest to the boundary 300, the fuselage 100 moves closely to the boundary 300. When the line parallel to the forward direction line is tangent to the boundary 300, the fuselage 100 is located within the boundary and maintains a fixed distance from the boundary 300. Both methods can achieve the purpose of moving along the edge.
[0173] This embodiment uses image recognition technology to determine whether the boundary 300 and the forward direction line on the side of the fuselage 100 close to the boundary 300 remain tangent, or whether the parallel line of the forward direction line remains tangent to the boundary 300, and then adjusts the movement trajectory. Compared with the traditional method of determining the positional relationship between the fuselage 100 and the boundary 300 and adjusting the trajectory based on the signal detection of the boundary 300, this method effectively improves efficiency, is less prone to errors, and improves the efficiency of movement along the edge and the accuracy of the movement path along the edge.
[0174] In one embodiment, referring to Figure 11 and 12 When the boundary 300 includes an intersecting first boundary 310 and a second boundary 320, and the first boundary 310 and the second boundary 320 form a corner area that protrudes away from the working area 10, the fuselage 100 moves along the first boundary 310 and toward the corner area formed by the first boundary 310 and the second boundary 320.
[0175] When the boundary marker is a corner facing outward along the forward direction, the control circuit 600 controls the fuselage 100 to move along the first side of the corner and keep the reference line and the first side coincident, or parallel and maintain a preset distance; at the same time, monitor the distance between the self-moving device and the second side, and when the distance reaches a preset value, control the self-moving device to turn until the reference line and the second side coincident, or parallel and maintain a preset distance; then, move along the second side of the corner and keep the reference line and the second side coincident, or parallel and maintain a preset distance.
[0176] Step S600a, i.e., adjusting the movement trajectory of the fuselage 100 based on the positional relationship between the boundary 300 and the forward direction line of the fuselage 100 on the side close to the boundary 300 so that the movement trajectory of the fuselage 100 is consistent with the boundary 300, includes:
[0177] acquiring the distance between the body 100 and the second boundary 320 in real time;
[0178] When the distance between the fuselage 100 and the second boundary 320 reaches a preset value, the fuselage 100 is controlled to rotate in a direction away from the first boundary 310 and closer to the second boundary 320 until the forward direction line of the fuselage 100 close to the boundary 300 coincides with or is parallel to the second boundary 320.
[0179] That is, when the fuselage 100 moves along one side of the corner area (i.e., the first boundary 310) and approaches the other side of the corner area (i.e., the second boundary 320), the distance between the fuselage 100 and the second boundary 320 is obtained in real time through image recognition technology, wherein the distance between the fuselage 100 and the second boundary 320 can be the distance between the center position point of the front end of the fuselage 100 and the position point closest to the fuselage 100 on the second boundary 320, or it can be the distance between other position points on the fuselage 100 and other position points on the second boundary 320, which can be determined according to actual needs. When the distance between the fuselage 100 and the second boundary 320 reaches a preset value, that is, the distance between the fuselage 100 and the second boundary 320 reaches the minimum limit value and it is not appropriate to continue approaching the second boundary 320, the fuselage 100 is controlled to turn so that the forward direction line of the fuselage 100 on the side close to the boundary 300 coincides with or is parallel to the second boundary 320, that is, the fuselage 100 is turned from one side to the other at the corner, and it is ensured that the movement trajectory of the fuselage 100 is consistent with the trajectory of the boundary 300 in the corner area.
[0180] Among them, when the forward direction line of the fuselage 100 on the side close to the boundary 300 coincides with the second boundary 320, the fuselage 100 is controlled to move close to the second boundary 320 after turning; when the forward direction line of the fuselage 100 on the side close to the boundary 300 is parallel to the second boundary 320, that is, after the fuselage 100 is controlled to turn, the fuselage 100 maintains a fixed distance from the second boundary 320. Both methods can achieve the purpose of moving along the edge.
[0181] In one embodiment, referring to Figure 13 and 14 When the boundary 300 includes an intersecting first boundary 310 and a second boundary 320, and the first boundary 310 and the second boundary 320 form a corner area protruding toward the working area 10, the fuselage 100 moves along the first boundary 310 and toward the corner area formed by the first boundary 310 and the second boundary 320.
[0182] That is, when the boundary mark is a corner facing inward relative to the forward direction, the control circuit 600 controls the body 100 to move along the first side of the corner and keep the reference line and the first side coincident, or parallel and maintain a preset distance; when the first side is not visible in the picture, continue to move until the preset distance is moved in the original forward direction; then, control the self-moving device to turn until the reference line and the second side coincident, or parallel and maintain a preset distance; then move along the second side of the corner and keep the reference line and the second side coincident, or parallel and maintain a preset distance.
[0183] In the above-mentioned embodiments of walking along the edge, the reference line is the edge reference line close to the boundary mark.
[0184] Step S600a, i.e., adjusting the movement trajectory of the fuselage 100 based on the positional relationship between the boundary 300 and the forward direction line of the fuselage 100 on the side close to the boundary 300 so that the movement trajectory of the fuselage 100 is consistent with the boundary 300, includes:
[0185] Controlling the body 100 to continuously move along the extension direction of the first boundary 310 until the body 100 crosses the first boundary 310 ;
[0186] The fuselage 100 is controlled to rotate toward the second boundary 320 until the forward direction line of the fuselage 100 on the side close to the boundary 300 coincides with or is parallel to the second boundary 320 .
[0187] Reference Figure 15 When the image recognition technology identifies that the body 100 is moving along the corner area of the above shape, the body 100 is controlled to move along the first boundary 310 ( Figure 15 In A), when the front end of the fuselage 100 crosses the first boundary 310, the fuselage 100 continues to be controlled to maintain the current forward direction ( Figure 15 B), until the fuselage 100 completely crosses the first boundary 310 ( Figure 15 C), at this time, the fuselage 100 is controlled to turn to the other side of the corner area ( Figure 15 D), that is, the second boundary 320, until the image recognizes that the forward direction line of the fuselage 100 close to the boundary 300 coincides with or is parallel to the second boundary 320, and the fuselage 100 continues to be controlled to move along the second boundary 320 ( Figure 15 E). That is, the fuselage 100 is rotated from one side to the other side at the corner of the above shape, and the movement trajectory of the fuselage 100 is ensured to be consistent with the trajectory of the boundary 300 at the corner area.
[0188] Among them, when the forward direction line of the fuselage 100 on the side close to the boundary 300 coincides with the second boundary 320, the fuselage 100 is controlled to move close to the second boundary 320 after turning; when the forward direction line of the fuselage 100 on the side close to the boundary 300 is parallel to the second boundary 320, that is, after the fuselage 100 is controlled to turn, the fuselage 100 maintains a fixed distance from the second boundary 320. Both methods can achieve the purpose of moving along the edge.
[0189] Example 3
[0190] This embodiment provides a self-moving device, referring to Figure 1 The self-mobile device includes a body 100, an image acquisition module 200 and a control circuit 600.
[0191] refer to Figure 16 The image acquisition module 200 is connected to the fuselage 100 and is used to capture an image in the forward direction of the fuselage 100, and the image is located within the field of view 210 of the image acquisition module 200; the control circuit 600 is connected to the image acquisition module 200 and is used to determine whether there is an obstacle 500 in a specified area in the image. If the obstacle 500 exists, the fuselage 100 is controlled to turn according to a preset rule.
[0192] refer to Figure 17 Specifically, the reference lines include a central axis 110 reference line, a left sideline 121 reference line, and a right sideline 122 reference line. The control circuit issues the driving instructions based on the relative positional relationship between the obstacle mark 500 and the reference lines. The instructions include: when the obstacle mark is located to the left of the central axis 110 reference line and at least partially between the central axis 110 reference line and the left sideline 121 reference line, issuing a control instruction to control the self-moving device to turn right; and when the obstacle mark is located to the right of the central axis reference line and at least partially between the central axis reference line and the right sideline reference line, issuing a control instruction to control the self-moving device to turn left. When the obstacle mark is located on the central axis reference line, the self-moving device is controlled to randomly turn.
[0193] Regarding the body 100 and the image acquisition module 200 , please refer to the detailed description in the first embodiment, which will not be repeated here.
[0194] It should be noted that in this embodiment, the self-moving device can be in a working mode of working within the working area 10 or in a side-moving mode. The purpose of this embodiment is to ensure that the self-moving device can accurately and quickly avoid obstacles 500 when encountering them during movement.
[0195] In this embodiment, the control circuit 600 uses image processing technology to define a designated area within an image. During movement, it identifies whether an obstacle 500 exists within the designated area. If an obstacle 500 is identified, the aircraft body 100 is controlled to steer according to preset rules to avoid the obstacle 500. Compared to conventional obstacle 500 detection technologies, the image recognition technology used in this embodiment is more efficient and accurate in identifying and avoiding obstacles 500, enabling rapid and accurate obstacle avoidance for the self-moving device and improving its mobility efficiency. Furthermore, this embodiment identifies obstacles 500 only within the designated area within the image. This is done to restrict obstacle 500 identification to areas that are likely to affect the forward movement of the aircraft body 100. This reduces computational complexity and improves computational speed compared to performing obstacle 500 identification across the entire image.
[0196] This embodiment further provides a method for adjusting a movement trajectory for a self-moving device, wherein the self-moving device includes a body 100 and an image acquisition module 200 connected to the body 100, wherein the image acquisition module 200 is configured to acquire images in a forward direction of the body 100. The method for adjusting the movement trajectory includes the following steps:
[0197] Step S200b: acquiring an image in the forward direction of the fuselage 100;
[0198] Step S400b, determining whether there is an obstacle 500 in the designated area of the image;
[0199] Step S600b: If the obstacle 500 exists, the fuselage 100 is controlled to turn according to a preset rule.
[0200] In this embodiment, after acquiring an image of the aircraft 100's forward direction, image processing techniques are used to define a designated area within the image. During travel, the presence of an obstacle 500 within the designated area is detected. If an obstacle 500 is detected, the aircraft 100 is controlled to steer according to pre-set rules to avoid the obstacle 500. Compared to conventional obstacle 500 detection techniques, the image recognition techniques used in this embodiment are more efficient and accurate in identifying and avoiding obstacles 500, enabling rapid and accurate obstacle avoidance for the self-moving device and improving mobility efficiency. Furthermore, the designated area generally refers to an area that is likely to affect the aircraft 100's forward direction. This embodiment identifies obstacles 500 only within the designated area within the image. This is done to identify obstacles 500 only in areas that are likely to affect the aircraft 100's forward movement. This reduces computational complexity and improves computational speed compared to performing obstacle 500 identification across the entire image.
[0201] In one embodiment, after step S200b, i.e., the step of acquiring an image in the forward direction of the fuselage 100, the movement trajectory adjustment method further comprises: determining a first forward direction line 121 and a second forward direction line 122 located on two sides of the fuselage 100 in the image;
[0202] Step S400b, ie, the step of determining whether there is an obstacle 500 in the designated area in the image, includes determining whether there is an obstacle 500 between the first forward direction line 121 and the second forward direction line 122 in the image.
[0203] Reference Figure 3-14 In any one of the above, the first and second heading lines 121, 122 on either side of the fuselage 100 refer to the outer contour lines 120 on either side of the fuselage 100, with the outer contour lines 120 extending in the heading direction of the fuselage 100, and the width between the outer contour lines 120 on either side being equal to the width of the fuselage 100. In step S200b, the first and second heading lines 121, 122 on either side of the fuselage 100 can be demarcated in real time from the acquired image. That is, the area between the first and second heading lines 121, 122 is used as the designated area, and then, image recognition technology is used to determine whether an obstacle 500 exists within the area between the first and second heading lines 121, 122 in the image.
[0204] Among them, the area between the first forward direction line 121 and the second forward direction line 122 on both sides of the fuselage 100 can be understood as the area directly in front of the fuselage 100 with the same width as the fuselage 100. This area is generally the area that can most affect the forward movement of the fuselage 100. Therefore, setting the designated area as the area between the first forward direction line 121 and the second forward direction line 122 can achieve targeted obstacle identification and avoidance, reduce the amount of calculation, and improve calculation efficiency.
[0205] Specifically, obstacles 500 appear at different positions in the area between the first forward direction line 121 and the second forward direction line 122 on both sides of the fuselage 100, and the corresponding steering control strategies are also different.
[0206] In one embodiment, the fuselage 100 has a central axis 110 , and the first forward direction line 121 and the second forward direction line 122 are symmetrical about the central axis 110 ;
[0207] The step of controlling the body 100 to turn according to a preset rule in step S600b includes:
[0208] When an obstacle 500 is detected between the central axis 110 and the first forward direction line 121 , the fuselage 100 is controlled to rotate in a direction away from the first forward direction line 121 and closer to the second forward direction line 122 ;
[0209] When it is detected that there is an obstacle 500 between the central axis 110 and the second forward direction line 122 , the fuselage 100 is controlled to rotate in a direction away from the second forward direction line 122 and closer to the first forward direction line 121 .
[0210] Assume that the first forward direction line 121 and the second forward direction line 122 are respectively located on the left and right sides of the central axis 110. When it is identified that there is an obstacle 500 between the central axis 110 and the first forward direction line 121 on the left, the fuselage 100 is controlled to rotate to the right; when it is identified that there is an obstacle 500 between the central axis 110 and the second forward direction line 122 on the left, the fuselage 100 is controlled to rotate to the left.
[0211] It should be noted that if the obstacle 500 partially exists between the first forward direction line 121 and the central axis 110 , or between the second forward direction line 122 and the central axis 110 , it can also be determined that the obstacle 500 exists.
[0212] In one embodiment, the step of controlling the body 100 to turn according to a preset rule in step S600b further includes controlling the body 100 to rotate in any direction when an obstacle 500 is detected on the central axis 110. When the obstacle 500 is exactly on the central axis 110, the body 100 can be controlled to rotate in any direction.
[0213] As an alternative embodiment, the step of controlling the steering of the fuselage 100 according to preset rules in step S600b also includes: when an obstacle 500 is detected on the central axis 110, controlling the moving direction of the fuselage 100 according to the area ratio of the obstacle 500 on both sides of the central axis 110.
[0214] In one embodiment, the step of controlling the moving direction of the fuselage 100 according to the area ratio of the obstacle 500 on both sides of the central axis 110 includes:
[0215] If the area of the obstacle 500 on the side of the central axis 110 close to the first forward direction line 121 accounts for a larger proportion than the area of the obstacle 500 on the side of the central axis 110 close to the second forward direction line 122, the fuselage 100 is controlled to rotate toward the second forward direction line 122;
[0216] If the area of the obstacle 500 on the side of the central axis 110 close to the first forward direction line 121 is smaller than the area of the obstacle 500 on the side of the central axis 110 close to the second forward direction line 122, the fuselage 100 is controlled to rotate in the direction close to the first forward direction line 121.
[0217] That is, the obstacle 500 has a greater impact on the side of the central axis 110 on which the obstacle 500 occupies a larger area, and the fuselage 100 is controlled to rotate toward the side less affected by the obstacle 500.
[0218] If the area of the obstacle 500 on both sides of the central axis 110 is equal, it can be turned at any angle.
[0219] In one embodiment, before step S600b, i.e., the step of controlling the body 100 to turn according to a preset rule, the movement trajectory adjustment method further includes:
[0220] Acquire the distance between the fuselage 100 and the obstacle 500 in real time;
[0221] When the distance between the fuselage 100 and the obstacle 500 reaches a preset value, the step of controlling the fuselage 100 to turn according to a preset rule is performed.
[0222] In actual applications, the distance between a certain position point on the fuselage 100 and the obstacle 500 can be obtained, for example, the distance between the center position point of the front end of the fuselage 100 and the obstacle 500. When the distance reaches a preset value, that is, the distance reaches the minimum limit value, it is not advisable to continue approaching. At this time, the fuselage 100 is controlled to turn according to the preset rules.
[0223] In one embodiment, before step S600b, i.e., the step of controlling the body 100 to turn according to a preset rule, the movement trajectory adjustment method further includes:
[0224] Acquire in real time the length of time the obstacle 500 stays in the image;
[0225] When the duration of the obstacle 500 remaining in the image reaches a preset value, the step of controlling the body 100 to turn according to a preset rule is performed.
[0226] Specifically, in addition to determining the distance between the aircraft 100 and the obstacle 500, the duration of the obstacle 500's presence in the image can also be used to determine the timing of the turn. If the duration of the obstacle 500's presence in the image reaches a preset value, i.e., the obstacle 500 appears in the image for a prolonged period, the aircraft 100 can be controlled to turn according to a preset rule. When determining the timing of the turn, the distance between the aircraft 100 and the obstacle 500 can be determined alone, the duration of the obstacle 500's presence in the image can be determined alone, or both the distance and the duration can be determined. If both conditions are met, the aircraft 100 can then be controlled to turn.
[0227] Example 4
[0228] An embodiment of the present application provides an electronic device, including a memory and a processor, where the memory and the processor are communicatively connected to each other and may be connected via a bus or other means.
[0229] The processor may be a central processing unit (CPU). The processor may also be other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, or a combination of the above chips.
[0230] Memory, as a non-transitory computer-readable storage medium, can be used to store non-transitory software programs, non-transitory computer executable programs, and modules, such as the motion trajectory adjustment method in the embodiments of the present invention. The processor executes the non-transitory software programs, instructions, and modules stored in the memory to perform various processor functions and data processing, namely, the motion trajectory adjustment method.
[0231] The memory may include a program storage area and a data storage area, wherein the program storage area may store an operating system, an application required for at least one function; the data storage area may store data created by the processor, etc. In addition, the memory may include a high-speed random access memory, and may also include a non-volatile memory, such as at least one disk storage device, a flash memory device, or other non-volatile solid-state storage device. In some embodiments, the memory may optionally include a memory remotely located relative to the processor, and these remote memories may be connected to the processor via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.
[0232] Those skilled in the art will appreciate that all or part of the processes in the above-mentioned embodiments can be implemented by instructing the relevant hardware through a computer program. The program can be stored in a computer-readable storage medium. When the program is executed, it can include the processes of the embodiments of the above-mentioned methods. The storage medium can be a magnetic disk, an optical disk, a read-only memory (ROM), a random access memory (RAM), a flash memory, a hard disk drive (HDD), or a solid-state drive (SSD). The storage medium can also include a combination of the above-mentioned types of memory.
[0233] The technical features of the above-mentioned embodiments can be combined arbitrarily. In order to make the description concise, not all possible combinations of the technical features in the above-mentioned embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0234] The above-described embodiments merely illustrate several implementations of the present invention, and while their descriptions are relatively specific and detailed, they should not be construed as limiting the scope of the patent. It should be noted that a person skilled in the art would be able to make numerous variations and improvements without departing from the spirit of the present invention, all of which fall within the scope of protection of the present invention. Therefore, the scope of protection of the patent for this invention shall be determined by the appended claims.
Claims
1. A self-propelled device comprising: body; A driving device, which drives the self-moving device to move on the working surface according to a driving instruction; An image acquisition module is connected to the body and is configured to continuously acquire images of the working surface in the forward direction of the body when the self-mobile device moves; it is characterized by further comprising The control circuit is configured as: Identify features in the current image and generate boundary markers that map boundary positions and / or obstacle markers that map obstacle positions on the work surface on a picture; providing a reference line associated with the forward direction of the fuselage for the image; issuing the driving instruction according to the relative positional relationship between the boundary mark and / or obstacle mark and the reference line to control the movement trajectory of the self-moving device; The driving instruction is issued according to the relative position relationship between the boundary mark and / or obstacle mark and the reference line, including: the reference line includes a transverse reference line and a central axis reference line, and when the transverse reference line or the reference point on the transverse reference line satisfies a preset distance relationship with the boundary mark, a driving instruction is issued to control the steering of the fuselage, so that when the steering starts, the central axis reference line forms an acute angle or a right angle with the first boundary portion, and when the steering is completed, the central axis reference line forms an acute angle or a right angle with the second boundary portion; wherein, the intersection of the central axis reference line and the boundary mark divides the boundary mark into the first boundary portion and the second boundary portion; wherein, the transverse reference line includes: the projection of the point on the front end portion of the fuselage on the working surface.
2. The self-moving device according to claim 1, characterized in that: The reference lines associated with the forward direction of the fuselage include: a central axis reference line that maps the projection of the central axis of the fuselage on the working surface, a side line reference line that maps the projection of the width side line of the fuselage parallel to the central axis on the working surface, a reference line that maps a parallel line located between the central axis and the side line and parallel to the central axis or a parallel line located between the central axis and the outer side line and parallel to the outer side line, and at least one of a transverse reference line that maps the projection of the perpendicular line of the central axis on the working surface.
3. The self-moving device according to claim 2, characterized in that: The control circuit is used to identify the relative position relationship according to the angle between the central axis reference line and the boundary mark.
4. The self-moving device according to claim 2, characterized in that: The steering angle of the fuselage is greater than α and less than or equal to α+90°, where α is an acute angle or a right angle formed by the central axis reference line and the boundary mark.
5. The self-moving device according to claim 2, characterized in that: The control circuit is used to identify the relative position relationship according to which side of the central axis reference line the lowest point of the boundary mark is located.
6. The self-moving device according to claim 5, characterized in that: According to the relative position relationship between the boundary mark and / or obstacle mark and the reference line, the driving instruction is issued, including: when the lowest point of the boundary mark is located on the left side of the central axis reference line, a driving instruction is issued to control the clockwise rotation of the fuselage; when the lowest point of the boundary mark is located on the right side of the central axis reference line, a control instruction is issued to control the counterclockwise rotation of the fuselage.
7. The self-moving device according to claim 2, characterized in that: The reference lines include a central axis reference line, a left side reference line, and a right side reference line, and the control circuit is configured as follows: When the obstacle mark is located to the left of the central axis reference line and at least partially between the central axis reference line and the left sideline reference line, controlling the self-moving device to turn right; When the obstacle mark is located on the right side of the central axis reference line and at least partially between the central axis reference line and the right sideline reference line, the self-moving device is controlled to turn left.
8. The self-moving device according to claim 7, characterized in that: The control circuit is configured as follows: When the obstacle mark is located on the central axis reference line, the self-moving device is controlled to turn randomly.
9. The self-moving device according to claim 1, characterized in that: The self-moving device is a lawn mower, and the "identifying features in the current image and generating boundary markers on an image that map boundary positions on the working surface" includes: Grass areas and non-grass areas in the image are identified, and a boundary portion between the grass area and the non-grass area is fitted as a boundary marker on the image.
10. A method for adjusting the movement trajectory of a self-moving device, characterized in that: The method comprises: By means of the image acquisition module, continuous images of the working surface in the forward direction of the self-mobile device are acquired when the self-mobile device moves; Recognizing features in the current image, and generating boundary markers that map the positions of boundaries on the work surface and / or obstacle markers that map the positions of obstacles on a picture; providing a reference line associated with the forward direction of the fuselage for the image; issuing a driving instruction to a driving device of the self-moving device according to a relative positional relationship between the boundary mark and / or obstacle mark and the reference line, so as to control a moving trajectory of the self-moving device; The driving instruction is issued according to the relative position relationship between the boundary mark and / or obstacle mark and the reference line, including: the reference line includes a transverse reference line and a central axis reference line, and when the transverse reference line or the reference point on the transverse reference line satisfies a preset distance relationship with the boundary mark, a driving instruction is issued to control the steering of the fuselage, so that when the steering starts, the central axis reference line forms an acute angle or a right angle with the first boundary portion, and when the steering is completed, the central axis reference line forms an acute angle or a right angle with the second boundary portion; wherein, the intersection of the central axis reference line and the boundary mark divides the boundary mark into the first boundary portion and the second boundary portion; wherein, the transverse reference line includes: the projection of the point on the front end portion of the fuselage on the working surface.
11. The movement trajectory adjustment method according to claim 10, characterized in that: The reference lines of the forward direction of the fuselage include: a central axis reference line that maps the projection of the central axis of the fuselage on the working surface, a side line reference line that maps the projection of the width side line of the fuselage parallel to the central axis on the working surface, and at least one of the reference lines that maps a parallel line located between the central axis and the side line and parallel to the central axis or a parallel line located between the central axis and the outer side line and parallel to the outer side line.
12. The movement trajectory adjustment method according to claim 11, characterized in that: Also includes: The relative position relationship is identified based on the angle between the central axis reference line and the boundary mark.
13. The movement trajectory adjustment method according to claim 11, characterized in that: The steering angle of the fuselage is greater than α and less than or equal to α+90°, where α is an acute angle or a right angle formed by the central axis reference line and the boundary mark.
14. The movement trajectory adjustment method according to claim 11, characterized in that: Also includes: The relative positional relationship is identified based on which side of the central axis reference line the lowest point of the boundary mark is located.
15. The movement trajectory adjustment method according to claim 14, characterized in that: According to the relative position relationship between the boundary mark and / or obstacle mark and the reference line, the driving instruction is issued, including: when the lowest point of the boundary mark is located on the left side of the central axis reference line, a driving instruction is issued to control the clockwise rotation of the fuselage; when the lowest point of the boundary mark is located on the right side of the central axis reference line, a control instruction is issued to control the counterclockwise rotation of the fuselage.
16. The movement trajectory adjustment method according to claim 11, characterized in that: The driving instruction is issued according to the relative position relationship between the boundary mark and / or obstacle mark and the reference line, including: the reference line includes a transverse reference line and a central axis reference line; when the transverse reference line or the reference point on the transverse reference line satisfies a preset distance relationship with the boundary mark, the driving instruction is issued to control the steering of the fuselage, so that when the steering starts, the central axis reference line forms an acute angle or a right angle with the first boundary portion, and when the steering is completed, the central axis reference line forms an acute angle or a right angle with the second boundary portion; wherein, the intersection of the central axis reference line and the boundary mark divides the boundary mark into the first boundary portion and the second boundary portion.
17. The movement trajectory adjustment method according to claim 11, characterized in that: The reference lines include a central axis reference line, a left side reference line, and a right side reference line. The issuing of the driving instruction according to the relative positional relationship between the boundary mark and / or obstacle mark and the reference lines includes: When the obstacle mark is located to the left of the central axis reference line and at least partially between the central axis reference line and the left sideline reference line, a control instruction is issued to control the mobile device to turn right; When the obstacle mark is located on the right side of the central axis reference line and at least partially between the central axis reference line and the right sideline reference line, a control instruction is issued to control the mobile device to turn left.
18. The movement trajectory adjustment method according to claim 17, characterized in that: The issuing of the driving instruction according to the relative positional relationship between the boundary mark and / or obstacle mark and the reference line includes: When the obstacle mark is located on the central axis reference line, the self-moving device is controlled to turn randomly.
19. The movement trajectory adjustment method according to claim 10, characterized in that: The self-moving device is a lawn mower, and the "identifying features in the current image and generating boundary markers on an image that map boundary positions on the working surface" includes: Grass areas and non-grass areas in the image are identified, and a boundary portion between the grass area and the non-grass area is fitted as a boundary marker on the image.
20. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the movement trajectory adjustment method according to any one of claims 10 to 19 is implemented.
Citation Information
Patent Citations
Automatic work system, automatic walking equipment and steering method of automatic walking equipment
CN102759924A
Automatic working system and regression control method of self-moving gardening device
CN107608341A
Cleaning robot
CN108247647A
Moving robot and method of controlling the same
US20210100160A1
Boundary detecting method and apparatus for automatic working vehicle
US4868752A