MAP CREATION DEVICE, MAP CREATION METHOD, AND PROGRAM
20220090938 · 2022-03-24
Assignee
Inventors
Cpc classification
G09B29/004
PHYSICS
G06V20/56
PHYSICS
International classification
Abstract
A map creation device that includes 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.
Claims
1. A map creation device comprising: an in-map position control unit that sets, on a 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 claim 1, wherein the in-map position control unit sets the position coordinates of the mobile body in the map space on a basis of a movement plan or a movement speed of the mobile body.
3. The map creation device according to claim 2, wherein 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 claim 3, wherein 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 claim 3, wherein 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 claim 5, wherein 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 claim 5, wherein a size of the expanded map space is equal to a size of the basic map space.
8. The map creation device according to claim 1, wherein the in-map position control unit sets the position coordinates of the mobile body in the map space on a basis of information pertaining to audio from the environment.
9. The map creation device according to claim 1, wherein 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 claim 9, wherein 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 claim 10, wherein on a 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 claim 10, wherein 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 claim 1, wherein the map creation device includes a ring buffer.
14. The map creation device according to claim 1, wherein 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 claim 1, wherein the map space includes a three-dimensional space, and the mobile body includes a flight vehicle.
16. The map creation device according to claim 1, wherein the environment map is displayed by a transmission/reception device that wirelessly steers the mobile body.
17. The map creation device according to claim 16, wherein 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 comprising: by an arithmetic device, setting, on a basis of information pertaining to a mobile body or ac 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 as 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 a 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.
Description
BRIEF DESCRIPTION OF DRAWINGS
[0011]
[0012]
[0013]
[0014]
[0015]
[0016]
[0017]
[0018]
[0019]
[0020]
[0021]
[0022]
[0023]
[0024]
[0025]
[0026]
[0027]
[0028]
[0029]
[0030]
[0031]
DESCRIPTION OF EMBODIMENTS
[0032] 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.
[0033] Note that the description shall be given out in the following order, [0034] 1. Background technique pertaining to the present disclosure [0035] 2. Configuration of control device [0036] 3. Configuration of map creation unit [0037] 4. Operation of map creation unit [0038] 5. Modification [0039] 5.1. Configuration of modification [0040] 5.2. Operation of modification [0041] 6. Display examples
1. Background Technique Pertaining to the Present Disclosure
[0042] 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
[0043] 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.
[0044] An occupancy grid map can be created by a flow illustrated in
[0045] 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.
[0046] 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.
[0047] 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.
[0048] 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.
[0049] 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.
[0050] 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.
[0051] 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.
[0052] 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.
[0053] 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
[0054] 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.
[0055] As illustrated in
[0056] In a case where the map space is not a ring buffer (upper side when facing
[0057] In contrast, in a case where the map space G is a ring buffer (lower side when facing
[0058] 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.
[0059] 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.
[0060] 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.
[0061] 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.
[0062] 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.
2. Configuration of Control Device
[0063] Firstly, with reference to
[0064] As illustrated in
[0065] 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.
[0066] 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
[0067] 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.
[0068] 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.
[0069] 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.
[0070] 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.
[0071] 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.
[0072] 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.
3. Configuration of Map Creation Unit
[0073] Net, with reference to
[0074] As illustrated in
[0075] 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.
[0076] 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.
[0077] 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.
[0078] Here, with reference to
[0079] As illustrated in
[0080] In contrast, as illustrated in
[0081] 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.
[0082] 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.
[0083] Here, with reference to
[0084] As illustrated in
[0085] 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.
[0086] 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.
[0087] 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.
[0088] 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.
[0089] 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.
[0090] 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.
[0091] Here, with reference to
[0092] As illustrated in
[0093] 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.
[0094] 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.
[0095] For example, as illustrated in
[0096] By this, for a grid cell in which an object is present, it is seen, as illustrated by Case1 in
[0097] 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.
[0098] 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
[0099] As illustrated in
[0100] In addition, as illustrated in
[0101] 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.
[0102] 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.
[0103] 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.
[0104] 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.
4. Operation of Map Creation Unit
[0105] Next, with reference to
[0106] As illustrated in
[0107] 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. Modification
[0108] (5.1. Configuration of Modification)
[0109] Next, with reference to
[0110] As illustrated in
[0111] In the present modification, the direction with respect to the basic map space G in which the expanded map space G.sub.E 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 G.sub.E 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.
[0112] As illustrated in
[0113] For example, in a case where the direction of the velocity vector V.sub.A of the mobile body M is forward as illustrated in
[0114] In addition, the direction with respect to the basic map space G in which the expanded map space G.sub.E 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 G.sub.E 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.
[0115] Furthermore, the direction with respect to the basic map space G in which the expanded map space G.sub.E 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 G.sub.E 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.
[0116] 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.
[0117] (5.2. Operation of Modification)
[0118] Next, with reference to
[0119] As illustrated in
[0120] 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).
[0121] 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.
6. Display Examples
[0122] With reference to
[0123] As illustrated in
[0124] 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.
[0125] 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.
[0126] For example, as illustrated in
[0127] The display example for the display device 500 illustrated in
[0128] The display example for the display device 500 illustrated in
[0129] 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.
[0130] 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.
[0131] Note that configurations such as the following also belong to the technical scope of the present disclosure.
[0132] (1)
[0133] A map creation device including:
[0134] 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
[0135] 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.
[0136] (2)
[0137] The map creation device according to (1) above, in which
[0138] 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.
[0139] (3)
[0140] The map creation device according to (2) above, in which
[0141] 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.
[0142] (4)
[0143] The map creation device according to (3) above, in which
[0144] 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.
[0145] (5)
[0146] The map creation device according to (3) above, in which
[0147] the map space includes a basic map space and an expanded map space, and
[0148] 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.
[0149] (6)
[0150] The map creation device according to (5) above, in which
[0151] 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.
[0152] (7)
[0153] The map creation device according to (5) or (6) above, in which
[0154] a size of the expanded map space is equal to a size of the basic map space.
[0155] (8)
[0156] The map creation device according to any one of (1) through (7) above, in which
[0157] 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.
[0158] (9)
[0159] The map creation device according to any one of (1) through above, in which
[0160] the environment information includes information pertaining to the distance from the mobile body to respective objects present in the environment.
[0161] (10)
[0162] The map creation device according to (9) above, in which
[0163] the map space is partitioned into grid cells each having a predetermined size, and
[0164] 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.
[0165] (11)
[0166] The map creation device according to (10) above, in which
[0167] 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.
[0168] (12)
[0169] The map creation device according to (10) or (11) above, in which
[0170] 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.
[0171] (13)
[0172] The map creation device according to any one of (1) through (12) above, in which
[0173] the map creation device includes a sing buffer (14)
[0174] The map creation device according to any one of (1) through (13) above, in which
[0175] an orientation of the map space is set such that an orientation of the mobile body is fixed with respect to the map space.
[0176] (15)
[0177] The map creation device according to any one of (1) through (14) above, in which
[0178] the map space includes a three-dimensional space, and
[0179] the mobile body includes a flight vehicle.
[0180] (16)
[0181] The map creation device according to any one of (1) through (15) above, in which
[0182] the environment map is displayed by a transmission/reception device that wirelessly steers the mobile body.
[0183] (17)
[0184] The map creation device according to (16) above, in which
[0185] the transmission/reception device displays, together with the environment map, a captured image of the environment that is captured by the mobile body.
[0186] (18)
[0187] A map creation method including:
[0188] by an arithmetic device,
[0189] 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
[0190] 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.
[0191] (19)
[0192] A program for causing a computer to function as:
[0193] 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
[0194] 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.
REFERENCE SIGNS LIST
[0195] 10 Mobile body
[0196] 20 Controller
[0197] 100 Control device
[0198] 110 Self-position calculation unit
[0199] 120 Map creation unit
[0200] 121 Position/orientation updating unit
[0201] 122 Velocity vector obtainment unit
[0202] 123 Sensor model application unit
[0203] 124 In-map position control unit
[0204] 125 Sensing reflection unit
[0205] 130 Obstacle detection unit
[0206] 140 Movement planning unit
[0207] 150 Action planning unit
[0208] 160 Action control unit
[0209] 200 Sensor
[0210] 210 Image sensor
[0211] 220 IMU
[0212] 230 Distance sensor
[0213] 310, 320 Communication device
[0214] 400 Actuator
[0215] 500 Display device
[0216] 600 Input device