The present disclosure relates to a map creation device, a map creation method, and a program.
In recent years, in a mobile body such as a robot device, a drone, or an automobile, the ability to create a movement plan by recognizing the environment surrounding the mobile body, and to move by following the created movement plan has become important.
In such a mobile body, for example, the movement plan is created by creating an environment map that reflects information pertaining to the surrounding environment, and detecting obstacle regions and regions through which movement is possible. Accordingly, in order to more efficiently create a highly accurate movement plan, techniques for more efficiently creating the environment map have been considered.
For example, the following PTL 1 discloses a technique for reducing the cost relating to the holding and updating of an environment map represented by an occupancy grid map in order to efficiently use limited computational resources and memory resources in a robot device or the like.
JP 2003-2663492
By virtue of the technique disclosed in the abovementioned PTL 1, it is possible to create an environment map for a limited range around a mobile body. However, in conjunction with, for example, higher movement speeds of mobile bodies in recent years, further increasing the range of a created environment map is required.
Accordingly, the present disclosure proposes a new and improved map creation device, map creation method and program that enable the creation of an environment map that is suitable for a movement plan and is for a wider range, while suppressing increases in memory consumption and processing load.
By virtue of the present disclosure, there is Provided a map creation device including an in-map position control unit that sets, on the basis of information pertaining to a mobile body or an environment, position coordinates of the mobile body, the position coordinates being set on a map space in which a boundary demarcating a space and a boundary on a side opposite the boundary are connected, and a sensing reflection unit that creates an environment map corresponding to the environment surrounding the mobile body by causing environment information, sensed by the mobile body, to be reflected to the map space.
In addition, by virtue of the present disclosure, there is provided a map creation method that includes, by an arithmetic device, setting, on the basis of information pertaining to a mobile body or an environment, position coordinates of the mobile body, the position coordinates being set on a map space is which one boundary demarcating a space and another boundary on a side opposite the one boundary are connected, and creating an environment map corresponding to the environment surrounding the mobile body by causing environment information, sensed by the mobile body, to be reflected to the map space.
Further, by virtue of the present disclosure, there is provided a program for causing a computer to function as an in-map position control unit that sets, on the basis of information pertaining to a mobile body or an environment, position coordinates of the mobile body, the position coordinates being set on a map space in which one boundary demarcating a space and another boundary on a side opposite the one boundary are connected, and a sensing reflection unit that creates an environment map corresponding to the environment surrounding the mobile body by causing environment information, sensed by the mobile body, to be reflected to the map space.
With reference to the attached drawings, description is given in detail below regarding preferred embodiments of the present disclosure. Note that in the present specification and drawings, the same reference sign is applied to components having substantially the same functional configuration, and thereby duplicate descriptions are omitted.
Note that the description shall be given out in the following order,
A map creation device according to one embodiment of the present disclosure uses an occupancy grid map to create an environment map that reflects information regarding the environment around a mobile body. Firstly, with reference to
An occupancy grid map is an example of one technique for the mobile body to detect regions through which movement is possible, and obstacle regions. Specifically, an occupancy grid map is a technique of detecting free regions through which movement is possible and occupied regions in which an obstacle is present, by dividing a space into square shaped grid cells and setting an object occupancy probability for each grid cell on the basis of a sensing result from the mobile body.
An occupancy grid map can be created by a flow illustrated in
Next, a sensor model for a distance sensor that observes the environment around the mobile body is defined (S20). This is because distance sensors that observe the environment around a mobile body have different observation result characteristics in accordance with the method of sensing distance. For example, a distance sensor that uses a stereo camera has a higher error included in an observation result the greater the distance from an object. Accordingly, by defining a sensor model suitable for a distance sensor that is used, it is possible to improve the accuracy and reliability of the environment map to be created.
Subsequently, the distance sensor is used to observe (sense) the environment around the mobile body (S30), and reflect a sensing result to the map space (S40). Specifically, for each grid cell, an occupancy probability representing the probability that an object is present in the grid cell is set, and the occupancy probability for a grid cell that includes an object is increased on the basis of information regarding the distance between the observed mobile body and the object. Meanwhile, a grid cell between the mobile body and the object does not include an object, and the occupancy probability therefor is reduced.
Furthermore, after reflecting the sensing result, the occupancy probability of each grid cell is updated (S50). By increasing or reducing the occupancy probability in accordance with S40 for each sensing result, the occupancy probability of a grid cell that includes an object gradually increases, and the occupancy probability of a grid cell that does not include an object gradually decreases. By this, it is possible to determine a grid cell, for which the occupancy probability has increased higher than a threshold for determining an obstacle region, to be an obstacle region. In addition, it is possible to determine a grid cell, for which the occupancy probability has become lower than a threshold for determining a region through which movement is possible, to be a region through which movement is possible.
Until the mobile body shuts down, by repeating the operations of step S30 through step S50 described above, the mobile body can create an environment map that reflects information regarding the surrounding environment, and create a movement plan on the basis of the created environment map.
Here, two patterns can be considered for the reference coordinate system of the occupancy grid map: world coordinate system fixed and body coordinate system fixed.
World coordinate system fixed is where the coordinate system of the occupancy grid map is fixed to the environment. In a case where world coordinate system fixed is used, it is possible to create the occupancy grid map by reflecting to the map space each sensing result observed from the mobile body in consideration of the position/orientation of the mobile body. For example, it is possible to create an occupancy grid map by mapping the coordinates of the mobile body to a map space in the world coordinate system and additionally adding an observation result from the mobile body to the map space.
However, a case of representing a large-scale environment by an occupancy grid map that is world coordinate system fixed leads to creating an occupancy grid map that includes information regarding the overall environment, and thus, a large capacity memory is needed to hold the occupancy grid map. In a three-dimensional occupancy map grid, a method (generally-called OctoMap) for suppressing memory consumption by holding information regarding each grid cell in a tree structure is considered, but this method traces the tree structure when reading out information regarding each grid cell and thus, the processing load increases.
In contrast, body coordinate system fixed is a coordinate system that fixes the coordinate system of the occupancy grid map to the position/orientation of the mobile body. In a case of using body coordinate system fixed, it is possible to create the occupancy grid map by, depending on a change in the position/orientation of the mobile body, subjecting past information regarding the occupancy grid map to a coordinate conversion, reflecting the past information to the map space, and additionally reflecting a sensing result observed from the mobile body to the map space. For example, it is possible to create an occupancy grid map by performing a reverse conversion, depending on change in the position of the mobile body, on a body coordinate system occupancy grid map for one time earlier, and adding a current observation result to the occupancy grid map after the reverse conversion.
However, with a body coordinate system fixed occupancy grid map, the processing load becomes high because information regarding the occupancy grid map is subject to a coordinate conversion each time the position/orientation of the mobile body changes. Accordingly, with body coordinate system fixed, a method that reduces the processing load by configuring the map space by a ring buffer has been considered. With reference to
A ring buffer is a buffer in which, by both ends of a linear buffer being connected, in a case where information is written beyond the end, the information beyond the end is written after returning to the start. In other words, a map space G is a space in which, one boundary is connected to the other boundary on the opposite side.
As illustrated in
In a case where the map space is not a ring buffer (upper side when facing
In contrast, in a case where the map space G is a ring buffer (lower side when facing
However, in a body coordinate system fixed occupancy grid map, the range of an environment map that is created is only a range that surrounds the mobile body. In such a case, it has been difficult for the mobile body to create such a movement plan that movement is made along a long distance. In addition, in a case where the mobile body moves at a high speed, there is a possibility that the mobile body will suffer delays in discovery of an obstacle.
As described above, although various techniques have been considered, in an occupancy grid map to be used in creation of a movement plan for a mobile body, it has been difficult to create an environment map appropriate for a low amount of memory consumption and a low processing load.
In particular, in conjunction with the change to higher speeds for the movement speed of mobile bodies and increasing complexity for movement plans, in a case of creating a movement plan for a wider range, creating an environment map for a wider range while suppressing increases in memory consumption and processing load is requested.
For example, in a case where a mobile body is a flight vehicle such as a drone, because the occupancy grid map and the movement plan for the mobile body will be three-dimensional, the complexity of the movement plan and the amount of information for the occupancy grid map dramatically increase, and the memory consumption and processing load also dramatically increase. Accordingly, in a case such as this, it has become important to suppress memory consumption and processing load in the creation of the environment map and the movement plan.
The technique according to the present disclosure has been conceived of by the inventors on the basis of the circumstances described above. Description in detail is given below regarding the technique according to the present disclosure that enables creation of an environment map that is suitable for a movement plan and is for a wider range, while suppressing increases in memory consumption and processing load.
Firstly, with reference to
As illustrated in
The self-position calculation unit 110 calculates the position/orientation of the mobile body on the basis of information obtained from the sensor 200 which is mounted on the mobile body. Specifically, the self position calculation unit 110 firstly obtains image information captured by an image sensor 210 that is an RGB camera, a grayscale camera, or the like that is mounted to the mobile body, and obtains information pertaining to the position/orientation of the mobile body from an IMU (Inertial Measurement Unit) 220 that includes an acceleration sensor, a gyro sensor, a magnetic sensor, or the like. Next, the self-position calculation unit 110 calculates the position, orientation, speed, angular velocity, and the like (hereinafter, information pertaining to these parameters may be collectively referred to as self information) of the mobile body on the basis of the image information captured by the mobile body and the information pertaining to the position/orientation of the mobile body. Because it is possible to use publicly known methods for methods of calculating the position, orientation, speed, angular velocity, and the like of the mobile body by the self-position calculation unit 110, detailed description here is omitted. Note that the self-position calculation unit 110 may further obtain information pertaining to a sensing result from another sensor mounted to the mobile body as necessary to calculate the position, orientation, speed, angular velocity, or the like of the mobile body.
The map creation unit 120 corresponds to a map creation device according to the present embodiment, and creates an environment map corresponding to the environment surrounding the mobile body on the basis of distance information regarding objects that is obtained from the sensor 200 (specifically, a distance sensor 230) mounted to the mobile body and the self information of the mobile body that is calculated by the self-position calculation unit 110. The environment map created by the map creation unit 120 is a body coordinate system fixed ring buffer occupancy grid map, and each grid cell of the environment map is set to any of an occupied region for which the occupancy probability is high, a free region for which the occupancy probability is low, and an unknown region that is yet to be observed. With reference to
The obstacle detection unit 130 detects an obstacle present in the environment map created by the map creation unit 120. Specifically, the obstacle detection unit 130 detects the presence or absence of an obstacle with respect to the mobile body by evaluating each occupied region and each free region in the environment map according to a body characteristic or an action characteristic of the mobile body. Note that the body characteristic or the action characteristic of the mobile body can be determined on the basis of self information of the mobile body that is calculated by the self-position calculation unit 110, for example.
For example, in a case where the mobile body is an automobile that moves by wheels, the obstacle detection unit 130 can determine that an object having a height that the wheels cannot drive over is an obstacle. In addition, in a case where the mobile body is a robot device that moves by leg sections, the obstacle detection unit 130 can determine that an object having a height that can be stepped over by the leg sections is not an obstacle. Further, in a case where the mobile body is a flight vehicle such as a drone, the obstacle detection unit 130 can determine that an object present at a position lower than an altitude that the mobile body can fly at is not an object.
The movement planning unit 140 plans a route to a destination for the mobile body, on the basis of the self information of the mobile body and the environment map created by the map creation unit 120. Specifically, the movement planning unit 140 can plan an optimal route to the destination by applying a graph search algorithm such as Dijkstra's algorithm or the A* algorithm to the environment map which is an occupancy grid map and is created by the map creation unit 120. At this time, the movement planning unit 140 may apply the graph search algorithm after determining obstacle regions and regions through which movement is possible in the environment map on the basis of the presence or absence of an obstacle which is detected by the obstacle detection unit 130.
The action planning unit 150 plans actions for the mobile body on the basis of the self information of the mobile body, the movement plan by the movement planning unit 140, and information pertaining to obstacles detected by the obstacle detection unit 130. Specifically, on the basis of, for example, an instruction from a user, the self information of the mobile body, the movement plan, or the information pertaining to obstacles, the action planning unit 150 creates an action plan pertaining to actions by the mobile body other than movement. For example, the action planning unit 150 may create an action plan that includes capturing the environment by the image sensor 210 which is mounted to the mobile body. In addition, the action planning unit 150 may create an action plan that includes loading or unloading of cargo to or from the mobile body or a person getting into or out of the mobile body.
The action control unit 160 controls actual actions by the mobile body, on the basis of the self information of the mobile body, the movement plan, and the action plan created by the action planning unit 150.
Specifically, the action control unit 160 compares the state of the mobile body determined from the self information of the mobile body with the state of the mobile body planned in accordance with the movement plan or the action plan, and outputs to a driving unit of the mobile body (for example, a motor or the like) a drive command for making the state of the, mobile body approach the planned state. Note that the action control unit 160 may generate, in a hierarchical fashion, a control command that is outputted to the driving unit of the mobile body.
Net, with reference to
As illustrated in
The position/orientation updating unit 121 calculates the coordinates of the mobile body in the environment map on the basis of information pertaining to the position/orientation of the mobile body. Specifically, the position/orientation updating unit 121 calculates the current coordinates of the mobile body in the environment map on the basis of information pertaining to past coordinates of the mobile body in the environment map, a past position/orientation of the mobile body, and information pertaining to the current position/orientation of the mobile body. In other words, the position/orientation updating unit 121 calculates an amount of change in the position/orientation between the past and the present for the mobile body, and calculates the current coordinates of the mobile body in the environment map on the basis of the calculated amount of change.
The velocity vector obtainment unit 122 obtains information pertaining to a velocity vector of the mobile body from the self-position calculation unit 110. Specifically, the velocity vector obtainment unit 122 obtains from the self-position calculation unit 110 a velocity vector of the mobile body that includes the movement speed and the direction of movement.
The sensor model application unit 123 applies a sensor model selected on the basis of the method of sensing by the distance sensor 230 to distance information for an object.
Here, with reference to
As illustrated in
In contrast, as illustrated in
Accordingly, the sensor model application unit 123 can cause the reliability with respect to distance information to improve by correcting a characteristic difference in sensing results that occurs due to the method of sensing by the distance sensor 230. In other words, the sensor model application unit 123 can cause reliability with respect to distance information to improve by applying the sensor model of the distance sensor 230 to distance information for objects. By this, the map creation unit 120 can create an environment map with higher reliability with respect to the setting of occupied regions and free regions.
The in-map position control unit 124 controls the position coordinates of the mobile body in the map space on the basis of the coordinates of the mobile body in the environment map and the velocity vector of the mobile body.
Here, with reference to
As illustrated in
The in-map position control unit 124 may control the amount of movement SS of the mobile body M from the center of the map space G according to the magnitude of the velocity vector V of the mobile body M. In other words, the in-map position control unit 124 may control the coordinates of the mobile body M such that the amount of movement SS from the center of the map space P increases the greater the magnitude of the velocity vector V of the mobile body M. In addition, in a case where the magnitude of the velocity vector V of the mobile body M is greater than or equal to a threshold, it may be that the in-map position control unit 124 causes the coordinates of the mobile body M to move, from the center of the map space G in a direction opposite to the direction of the velocity vector V of the mobile body M, only by a predetermined amount or an amount according to the magnitude of the, velocity vector V of the mobile body M.
In addition, the in-map position control unit 124 may cause the coordinates of the mobile body to move from the center of the, map space on the basis of the movement plan of the mobile body, in place of the velocity vector of the mobile body. Specifically, the in-map position control unit 124 may cause the coordinates of the mobile body to move from the center of the, map space in a direction opposite to the direction of the destination (or arrival position) of the mobile body in the movement plan for the mobile body. The amount of movement for the coordinates of the mobile body at this time may be a predetermined amount and may be an amount based on the magnitude of the movement speed of the mobile body, for example. By this, the in-map position control unit 124 can widen the range at which the environment map is created in the direction to the destination of the mobile body, and thus the movement planning unit 140 can create a longer-distance or more complicated movement plan.
Furthermore, the in-map position control unit 124 may cause the coordinates of the mobile body to move from the center of the map space on the basis of information pertaining to the environment, in place of the velocity vector of the mobile body. Specifically, the in-map position control unit 124 may cause the coordinates of the mobile body to move from the center of the map space in a direction opposite to a direction in which a human voice is detected by a microphone or in a direction opposite to a direction in which a person or an obstacle is detected by an image capturing device. The amount of movement for the coordinates of the mobile body at this time may be a predetermined amount and may be an amount based on the magnitude of the movement speed of the mobile body, for example. By this, the in-map position control unit 124 can widen the range at which the environment map is created in a direction in which there is a high possibility of a person or obstacle being present and more careful movement is found to be required. Accordingly, the in map position control unit 124 can cause the safety of the movement plan created by the movement planning unit 140 to improve.
Accordingly, the map creation device according to the present embodiment can dynamically change the range at which the environment map is created by causing the position of the mobile body in the map space to move by the in-map position control unit 124. By this, the map creation device according to the present embodiment can create an environment map for a range at which there is more desire to focus on, without causing memory consumption or the processing load to increase.
Furthermore, the map creation device according to the present embodiment can create a larger-scale world coordinate system fixed environment map by collecting, from a plurality of mobile bodies, the position of the mobile bodies and environment maps created at these positions, and pasting the collected environment maps together.
The sensing reflection unit 125 creates the environment map by reflecting, to the map space, information regarding the distance from the mobile body to an object, on the basis of distance information to which the sensor model is applied and information pertaining to the coordinates/orientation of the mobile body in the map space. The reflection of a sensing result to the map space by the sensing reflection unit 125 can be performed by using Bresenham's line drawing algorithm or the like, for example.
Here, with reference to
As illustrated in
Specifically, the sensing reflection unit 125 draws a line segment that connects the sensor So and the object Ob in the map space G, on the basis of the information regarding the distance from the sensor So to the object Ob. At this time, the sensing reflection unit 125 causes the occupancy, probability of a grid cell q0 that includes the object Ob to rise by only a predetermined value, and causes the occupancy probabilities of grid cells gF that include the line segment connecting the sensor So and the object Ob to decrease by only a predetermined value. In contrast, the grid cells gU through which the line segment connecting the sensor So and the object Ob does not pass are unknown regions that are yet to be observed, and thus, the occupancy probabilities thereof is not caused to change.
The sensing reflection unit 125 updates the occupancy probability of each grid cell by respectively causing information regarding the distance to an observed object to be reflected to the map space to thereby increase or decrease the occupancy probability of the grid cell. The increase or decrease of the occupancy probability of the grid cell can be performed using a binary Bayes filter algorithm, for example. With a binary Bayes filter algorithm, it is possible to represent the occupancy probability at a certain time by a logarithm, and thus, it is possible to combine occupancy probabilities over time by adding together the logarithms (LOG_ODDS) of the occupancy probabilities.
For example, as illustrated in
By this, for a grid cell in which an object is present, it is seen, as illustrated by Case1 in
Accordingly, the sensing reflection unit 125 can set the occupancy probability for each Grid cell of the map space on the basis of the distance information, and determine occupied regions and free regions on the basis of the set occupancy probabilities. Thus, the sensing reflection unit 125 can create an environment map in which each grid cell of the map space is classified as any of an occupied region, a free region, or an unknown region.
In the embodiment described above, a case in which the map space and the environment map are two-dimensional matrix grids has been exemplified, but the map creation device according to the present embodiment can be applied to a three-dimensional space. With reference to
As illustrated in
In addition, as illustrated in
Accordingly, the sensing reflection unit 125 can cause the occupancy probability of voxels that include the object Ob1 and an object Ob2p to rise by only a predetermined value, and cause the occupancy probability of voxels that include the line segments connecting the sensor So and objects Ob1 and Ob2p to decrease by only a predetermined value. Note that, because a voxel that includes the object Ob2 is present outside of the map space 3DG, the processing described above is performed using, in place of the object Ob2, an intersection point Ob2p between the side surface of the map space 3DG and the line segment that connects the sensor So and the object Ob2. By this, even with the three-dimensional map space 300, it is possible to reflect a sensing result similarly to a two-dimensional map space.
The map creation unit 120 according to the present embodiment described above or the control device 100 that includes a map creation unit can be realized by collaboration between hardware and software. For example, the map creation unit 120 or the control device 100 can be realized by using a CPU, a ROM, and a RAM as the hardware.
The CPU functions as an arithmetic processing device, and controls overall operation of the control device 100 or the map creation unit 120 in accordance with various types of programs stored in the ROM. The ROM stores arithmetic parameters and programs used by the CPU. The RAM temporarily stores a program used in execution by the CPU, a parameter that changes as appropriate is this execution, and the like.
In addition, it is also possible to create a computer program for causing these pieces of hardware to exercise functionality equivalent to respective configurations of the control device 100 or the map creation unit 120 according to the present embodiment described above. In addition, it is also possible to provide a storage medium in which this computer program is caused to be stored.
Next, with reference to
As illustrated in
As a result of such operations as described above, the map creation unit 120 can dynamically change the range of the environment map that is created. Hence, the map creation unit 120 can create an environment map for a range at which there is more desire to focus on, without causing memory consumption or the processing load to increase.
(5.1. Configuration of Modification)
Next, with reference to
As illustrated in
In the present modification, the direction with respect to the basic map space G in which the expanded map space GE is provided is controlled on the basis of information pertaining to the environment or the mobile body. Note that, whether or not to provide the expanded map space GE with respect to the basic map space G may be decided on the basis of whether or not the magnitude of the velocity vector of the mobile body is greater than or equal to a threshold.
As illustrated in
For example, in a case where the direction of the velocity vector VA of the mobile body M is forward as illustrated in
In addition, the direction with respect to the basic map space G in which the expanded map space GE is provided may be controlled on the basis of a movement plan for the mobile body. Specifically, with respect to the basic map space G, the expanded map space GE may be provided adjacent to or overlapping with the basic map space G in the direction of the destination (or arrival position) in the movement plan for the mobile body. Hence, the map creation unit 120 can create an environment map having a map space that is expanded in a direction for a range at which there is more desire to focus on, while suppressing increases in memory consumption and processing load.
Furthermore, the direction with respect to the basic map space G in which the expanded map space GE is provided may be controlled on the basis of information pertaining to the environment. Specifically, with respect to the basic map space G, the expanded map space GE may be provided adjacent to or overlapping with the basic map space G in a direction in which a human voice is detected by a microphone or a direction in which a person or an obstacle is detected by an image capturing device. As a result of this, the map creation unit 120 can create an environment map having a map space that is expanded in a direction in which there is a high possibility of a person or obstacle being present and more careful movement is found to be required. Accordingly, it becomes possible for the map creation unit 120 to cause the safety of a movement plan created on the basis of the environment map to improve.
By virtue of the present modification, on the basis of information pertaining to the environment or the mobile body, it is possible to dynamically expand the range of an environment map that is created. Hence, the map creation unit 120 can create an environment map that enables a smoother movement plan for the mobile body to be created, while suppressing memory consumption and processing load.
(5.2. Operation of Modification)
Next, with reference to
As illustrated in
Meanwhile, in the case where the magnitude of the velocity vector is less than the threshold (S203/No), the coordinates of the mobile body are set to the center of the basic map space (S206). Subsequently, by reflecting a sensing result for distance information to the basic map space, an environment map is created (S208).
By operations as above, the map creation unit 120 can more dynamically change the range of the environment map that is created. Hence, the map creation unit 120 can create an environment map for a range at which there is more desire to focus on, while suppressing memory consumption and processing load.
With reference to
As illustrated in
Here, a destination or the like for movement of the mobile body 10 can be inputted to a controller 20 through communication devices 310 and 320 that can perform wireless communication with each other. The controller 20 is, for example, a transmission/reception device that wirelessly steers the mobile body 10, and is provided with a display device 500 and an input device 600.
The input device 600 includes an input mechanism such as a button, a switch, or a lever to which a user can input information, and an input control circuit for generating as input signal on the basis of the inputted information and outputting the input signal to the communication device 320. The display device 500 includes a display device such as a liquid crystal display device or an OLED (Organic Light Emitting Diode) display device. For example, the display device 500 can display as environment map or the like that is created by the control device 100 of the mobile body 10. A user can steer the mobile body 10 with greater accuracy by visually recognizing an environment map created by the control device 100.
For example, as illustrated in
The display example for the display device 500 illustrated in
The display example for the display device 500 illustrated in
Description in detail has been given above regarding preferred embodiments of the present disclosure with reference to the attached drawings, but the technical scope of the present disclosure is not limited to the corresponding examples. It is obvious that various modifications or revisions within the category of the technical concept set forth in the claims can be conceived of by a person having ordinary knowledge in the technical field of the present disclosure, and it is understood that these modifications or revisions justifiably belong to the technical scope of the present disclosure.
In addition, effects described in the present specification are only descriptive or illustrative, and are not limiting. In other words, in addition to or in place of the effects described above, a technique according to the present disclosure can achieve other effects that are clear to a person skilled in the art from the description of the present specification.
Note that configurations such as the following also belong to the technical scope of the present disclosure.
(1)
A map creation device including:
an in-map position control unit that sets, on the basis of information pertaining to a mobile body or an environment, position coordinates of the mobile body, the position coordinates being set on a map space in which a boundary demarcating a space and a boundary on a side opposite the boundary are connected; and
a sensing reflection unit that creates an environment map corresponding to the environment surrounding the mobile body by causing environment information, sensed by the mobile body, to be reflected to the map space.
(2)
The map creation device according to (1) above, in which
the in-map position control unit sets the position coordinates of the mobile body in the map space on the basis of a movement plan or a movement speed of the mobile body.
(3)
The map creation device according to (2) above, in which
the in-map position control unit sets the position coordinates of the mobile body to coordinates resulting from causing the position coordinates of the mobile body to move from a center of the map space in a direction opposite to a direction of movement of the mobile body or in a direction opposite to a direction of an arrival position in the movement plan.
(4)
The map creation device according to (3) above, in which
the in-map position control unit sets the position coordinates of the mobile body to coordinates resulting from causing the position coordinates of the mobile body to move from the center of the map space by only a distance according to the movement speed of the mobile body.
(5)
The map creation device according to (3) above, in which
the map space includes a basic map space and an expanded map space, and
the in-map position control unit sets the position coordinates of the mobile body to coordinates resulting from causing the position coordinates of the mobile body to move from a center of the basic map space in the direction opposite to the direction of movement of the mobile body or in the direction opposite to the direction of the arrival position in the movement plan.
(6)
The map creation device according to (5) above, in which
the expanded map space is provided adjacent to the basic map space in the direction of movement of the mobile body or in the direction of the arrival position in the movement plan.
(7)
The map creation device according to (5) or (6) above, in which
a size of the expanded map space is equal to a size of the basic map space.
(8)
The map creation device according to any one of (1) through (7) above, in which
the in-map position control unit sets the position coordinates of the mobile body in the map space on the basis of information pertaining to audio from the environment.
(9)
The map creation device according to any one of (1) through above, in which
the environment information includes information pertaining to the distance from the mobile body to respective objects present in the environment.
(10)
The map creation device according to (9) above, in which
the map space is partitioned into grid cells each having a predetermined size, and
the sensing reflection unit determines whether the grid cells are either occupied regions or free regions on the basis of occupancy probabilities for the grid cells, for the respective objects.
(11)
The map creation device according to (10) above, in which
on the basis of the environment information sensed by the mobile body, the sensing reflection unit causes the occupancy probabilities of grid cells that include the respective objects to increase.
(12)
The map creation device according to (10) or (11) above, in which
in a case where a movement range of the mobile body goes beyond the grid cells, the sensing reflection unit updates the environment map by changing grid cells in the environment map that are on a side opposite to the direction of movement of the mobile body to unknown regions.
(13)
The map creation device according to any one of (1) through (12) above, in which
the map creation device includes a sing buffer (14)
The map creation device according to any one of (1) through (13) above, in which
an orientation of the map space is set such that an orientation of the mobile body is fixed with respect to the map space.
(15)
The map creation device according to any one of (1) through (14) above, in which
the map space includes a three-dimensional space, and
the mobile body includes a flight vehicle.
(16)
The map creation device according to any one of (1) through (15) above, in which
the environment map is displayed by a transmission/reception device that wirelessly steers the mobile body.
(17)
The map creation device according to (16) above, in which
the transmission/reception device displays, together with the environment map, a captured image of the environment that is captured by the mobile body.
(18)
A map creation method including:
by an arithmetic device,
setting, on the basis of information pertaining to a mobile body or an environment, position coordinates of the mobile body, the position coordinates being set on a map space in which one boundary demarcating a space and another boundary on a side opposite the one boundary are connected; and
creating an environment map corresponding to the environment surrounding the mobile body by causing environment information, sensed by the mobile body, to be reflected to the map space.
(19)
A program for causing a computer to function as:
an in-map position control unit that sets, on the basis of information pertaining to a mobile body or an environment, position coordinates of the mobile body, the position coordinates being set on a map space in which one boundary demarcating a space and another boundary on a side opposite the one boundary are connected; and
a sensing reflection unit that creates an environment map corresponding to the environment surrounding the mobile body by causing environment information, sensed by the mobile body, to be reflected to the map space.
10 Mobile body
20 Controller
100 Control device
110 Self-position calculation unit
120 Map creation unit
121 Position/orientation updating unit
122 Velocity vector obtainment unit
123 Sensor model application unit
124 In-map position control unit
125 Sensing reflection unit
130 Obstacle detection unit
140 Movement planning unit
150 Action planning unit
160 Action control unit
200 Sensor
210 Image sensor
220 IMU
230 Distance sensor
310, 320 Communication device
400 Actuator
500 Display device
600 Input device
| Number | Date | Country | Kind |
|---|---|---|---|
| 2019-040543 | Mar 2019 | JP | national |
| Filing Document | Filing Date | Country | Kind |
|---|---|---|---|
| PCT/JP2020/006649 | 2/19/2020 | WO | 00 |