WO2024004453A1 - 移動体制御情報生成方法、移動体制御情報生成装置、および移動体、並びに移動体制御システム - Google Patents

移動体制御情報生成方法、移動体制御情報生成装置、および移動体、並びに移動体制御システム Download PDF

Info

Publication number
WO2024004453A1
WO2024004453A1 PCT/JP2023/019362 JP2023019362W WO2024004453A1 WO 2024004453 A1 WO2024004453 A1 WO 2024004453A1 JP 2023019362 W JP2023019362 W JP 2023019362W WO 2024004453 A1 WO2024004453 A1 WO 2024004453A1
Authority
WO
WIPO (PCT)
Prior art keywords
class
control information
map
semantic map
robot
Prior art date
Application number
PCT/JP2023/019362
Other languages
English (en)
French (fr)
Inventor
勇貴 勝又
Original Assignee
ソニーグループ株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ソニーグループ株式会社 filed Critical ソニーグループ株式会社
Publication of WO2024004453A1 publication Critical patent/WO2024004453A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B29/00Maps; Plans; Charts; Diagrams, e.g. route diagram

Definitions

  • the present disclosure relates to a mobile body control information generation method, a mobile body control information generation device, a mobile body, and a mobile body control system. More specifically, it relates to a mobile object control information generation method, a mobile object control information generation device, a mobile object, and a mobile object control system for generating control information for controlling the movement of a mobile object such as an autonomous mobile robot. .
  • These autonomous mobile robots have sensors that analyze the surrounding environment, analyze sensor detection information, and move while avoiding collisions with or contact with obstacles. In addition, there are cases in which movement is performed using a map created based on sensor detection information or map information input from the outside.
  • Patent Document 1 Japanese Unexamined Patent Publication No. 2010-176203 discloses a configuration in which a mark is installed in a robot operating environment, the robot detects the mark, and identifies a movable area.
  • Patent Document 1 has a problem in that it requires processing to place a mark in advance in the robot travel area.
  • the present disclosure has been made, for example, in view of the above problems, and by setting various attributes to various areas and objects in the environment in which the robot moves, without performing processing such as setting marks. It is an object of the present invention to provide a mobile body control information generation method, a mobile body control information generation device, a mobile body, and a mobile body control system that generate mobile body control information for controlling the running of a robot.
  • a user sets attribute information such as a prohibited area and a movable area in a semantic map that allows the boundaries of a room in a robot movement area to be identified, and a semantic map in which the attribute information is recorded is created. It is used as moving object control information to control the robot.
  • attribute information such as a prohibited area and a movable area in a semantic map that allows the boundaries of a room in a robot movement area to be identified, and a semantic map in which the attribute information is recorded is created. It is used as moving object control information to control the robot.
  • Such processing realizes flexible robot travel control according to the user's wishes.
  • a first aspect of the present disclosure includes: A mobile object control information generation method executed in a mobile object control information generation device, The data processing section Mobile object control information generation that generates mobile object control information in which characteristic information of the class or control information of the mobile object for the class is recorded as a class attribute in association with a class that is a divided area in the map of the travel area of the mobile object. It's in the method.
  • a second aspect of the present disclosure includes: Mobile object control information generation that generates mobile object control information in which characteristic information of the class or control information of the mobile object for the class is recorded as a class attribute in association with a class that is a divided area in the map of the travel area of the mobile object.
  • a mobile object control information generation device having a section.
  • a third aspect of the present disclosure includes: a display unit that displays a map of the travel area of the moving object; an input unit for inputting characteristic information of a class that is a divided area in the map or control information of a moving object for the class; Mobile body control information comprising a mobile body control information generation unit that generates or updates mobile body control information in which feature information of a class input through the input unit or control information of a mobile body for the class is recorded as a class attribute. It's in the generator.
  • a fourth aspect of the present disclosure includes: A moving object that moves according to moving object control information in which characteristic information of the class or control information of the moving object for the class is recorded as a class attribute in association with a class that is a divided area in a map of the moving area of the moving object.
  • a fifth aspect of the present disclosure includes: A mobile body control system comprising a mobile body, a controller that transmits control information to the mobile body, and a map generation device that generates a map of a travel area of the mobile body,
  • the map generation device includes: generating mobile body control information in which characteristic information of the class or control information of the mobile body for the class is recorded as a class attribute in association with a class that is a divided area in a map of the travel area of the mobile body;
  • the controller includes: In the mobile object control information generated by the map generation device,
  • the present invention provides a mobile object control system that executes class attribute adding processing based on user input to generate an updated map, and uses the generated updated map to control the traveling of the mobile object.
  • a sixth aspect of the present disclosure includes: A mobile body control system comprising a mobile body and a controller that transmits control information to the mobile body,
  • the controller includes: Mobile object control that generates a map of the travel area of the mobile object, and records feature information of the class or control information of the mobile object for the class as a class attribute in association with a class that is a divided area in the generated map.
  • the present invention provides a mobile body control system that generates information and uses the generated mobile body control information to control the traveling of the mobile body.
  • a system is a logical collective configuration of a plurality of devices, and the devices of each configuration are not limited to being in the same housing.
  • a configuration is realized in which a moving body such as a robot is controlled using data such as a map that records class attributes for each class corresponding to a room, for example.
  • characteristic information of the class and moving object control information for the class are recorded as class attributes in association with a map of the travel area of a moving object such as a robot, for example, a class that is a segmented area in a semantic map.
  • the map is a map that allows the types of rooms and the boundaries of the rooms to be identified, and records the presence or absence of people in the room, information on whether robots can enter, etc. as class attributes for the class corresponding to each room.
  • Robot travel control is performed using maps and data that record such class attributes.
  • FIG. 2 is a diagram illustrating an example of a running environment in which a robot, which is a moving object of the present disclosure, runs.
  • 1 is a diagram illustrating a configuration example of a mobile object control system of the present disclosure. It is a figure explaining an example of a semantic map.
  • FIG. 3 is a diagram illustrating input processing of user instruction information to a semantic map.
  • FIG. 2 is a sequence diagram illustrating an example of a processing sequence using the mobile object control system of the present disclosure.
  • FIG. 2 is a sequence diagram illustrating an example of a processing sequence using the mobile object control system of the present disclosure.
  • FIG. 3 is a diagram illustrating an example of map information used to generate a semantic map.
  • FIG. 3 is a diagram illustrating an example of map information used to generate a semantic map.
  • FIG. 3 is a diagram illustrating an example of generating a semantic map based on an occupancy grid map.
  • FIG. 2 is a diagram illustrating a semantic map generated by a semantic map generation device and class classification corresponding to the semantic map.
  • FIG. 6 is a diagram illustrating an example of a semantic map in which feature information corresponding to a class (room type) is recorded as a class attribute.
  • FIG. 7 is a diagram showing a flowchart illustrating a basic sequence example of semantic map generation processing.
  • FIG. 3 is a diagram illustrating an example of a semantic map in which class attributes are recorded.
  • FIG. 3 is a diagram illustrating a specific example of class attributes recorded in a semantic map.
  • FIG. 3 is a diagram illustrating a flowchart illustrating a sequence example of semantic map generation processing.
  • FIG. 3 is a diagram illustrating a specific example of class attributes recorded in a semantic map.
  • FIG. 3 is a diagram illustrating an example of a semantic map in which class attributes are recorded.
  • FIG. 7 is a diagram illustrating a flowchart illustrating an example sequence of semantic map generation processing.
  • FIG. 7 is a diagram illustrating a specific example of a process for additionally recording a user-set class attribute in a semantic map.
  • FIG. 3 is a diagram illustrating an example of a semantic map in which user-set class attributes are recorded.
  • FIG. 7 is a diagram illustrating a specific example of a process for additionally recording a user-set class attribute in a semantic map.
  • FIG. 3 is a diagram illustrating an example of a semantic map in which user-set class attributes are recorded.
  • FIG. 2 is a diagram showing a robot moving outdoors and a robot movement area.
  • 24 is a diagram illustrating an example of a semantic map corresponding to the robot movement area shown in FIG. 23.
  • FIG. 7 is a diagram illustrating a specific example of a process for additionally recording a user-set class attribute in a semantic map.
  • FIG. 6 is a diagram illustrating an example of a semantic map in which user-set class attributes are recorded.
  • FIG. 3 is a diagram illustrating an example of robot control using a semantic map in which user-set class attributes are recorded.
  • FIG. 2 is a diagram showing a robot moving outdoors and a robot movement area.
  • FIG. 29 is a diagram illustrating an example of a semantic map corresponding to the robot movement area shown in FIG. 28.
  • FIG. FIG. 7 is a diagram illustrating a specific example of a process for additionally recording a user-set class attribute in a semantic map.
  • FIG. 6 is a diagram illustrating an example of a semantic map in which user-set class attributes are recorded.
  • FIG. 3 is a diagram illustrating an example of robot control using a semantic map in which user-set class attributes are recorded.
  • FIG. 3 is a diagram illustrating a specific example of user-set class attributes recorded in a semantic map.
  • FIG. 6 is a diagram illustrating an example of a semantic map in which user-set class attributes are recorded.
  • FIG. 2 is a diagram illustrating an example of the configuration of a robot, a controller, and a semantic map generation device.
  • 1 is a diagram illustrating a configuration example of a mobile object control system of the present disclosure.
  • 1 is a diagram illustrating a configuration example of a mobile object control system of the present disclosure.
  • FIG. 2 is a diagram illustrating an example of the configuration of a robot and a controller.
  • FIG. 2 is a diagram illustrating an example of the hardware configuration of a robot, a controller, and a semantic map generation device according to the present disclosure.
  • Example 1 An example of recording and using a robot operable area and a movement prohibited area for each class as user-set class attributes for a semantic map for a robot moving indoors 5-2.
  • Example 2 Example of recording and using accessible areas and prohibited areas for each class as user-set class attributes for a semantic map for a robot moving indoors 5-3.
  • Example 3) Example of recording and using accessible areas and prohibited areas for each class as user-set class attributes for a semantic map for a robot moving outdoors 5-4.
  • Example 4) Example of recording and using movable areas and movement prohibited areas for each class as user-set class attributes for a semantic map for a robot moving outdoors 5-5.
  • Example 5 Example of recording and using class attributes corresponding to time as user-set class attributes for a semantic map for a robot moving indoors 6.
  • FIG. 1 is a diagram illustrating an example of a running environment in which a robot 10, which is a moving object of the present disclosure, runs.
  • the example of the robot running environment (a) shown in FIG. 1 is an example of one floor of a house.
  • the robot 10 moves through each room on the floor of this house.
  • the robot 10 is, for example, a self-propelled "cleaning robot.”
  • it may be a robot that performs various tasks (processes) other than cleaning, such as moving between rooms in the house and carrying things.
  • FIG. 2 is a diagram illustrating a configuration example of a mobile object control system 20 of the present disclosure.
  • a mobile object control system 20 shown in FIG. 2 includes a robot 10, a controller (mobile object control device) 30, and a semantic map generation device 50. Each of these devices has a configuration that allows them to communicate with each other.
  • the two devices the controller (mobile object control device) 30 and the semantic map generation device 50, both correspond to the mobile object control information generation device of the present disclosure.
  • the controller (mobile object control device) 30 is operated by a user 35.
  • the robot 10 performs processing, such as cleaning, according to a task input by a user 35 into a controller (mobile object control device) 30.
  • the semantic map generation device 50 generates a semantic map of the running environment of the robot 10 as a preliminary process before the robot 10 executes a task.
  • the semantic map is a map that makes it possible to identify the object types of various objects in the environment in which the robot 10 runs.
  • a semantic map that makes it possible to identify each room in the robot running environment described above with reference to FIG.
  • objects include objects that can be used to identify the environment in which the robot 10 runs, in addition to obstacles to the movement of the robot 10, such as objects that indicate the type of room or characteristics of the location (objects that are characterized by the location). ) is also included.
  • Objects that indicate the type of room or the characteristics of the location (objects characterized by the location) are, for example, the following objects. For example, a frying pan is likely to exist in a kitchen, so it falls under an object characterized as a kitchen. Further, for example, a full-length mirror is likely to be located in a closet, and thus falls under an object characterized as a closet.
  • the semantic map generation device 50 causes the robot 10 to travel, inputs detection information from a sensor attached to the robot 10, executes learning processing (machine learning) using this sensor detection information, and generates information about the robot traveling environment. Generate a semantic map that allows the boundaries and types of rooms to be identified.
  • the robot 10 is equipped with a sensor such as a camera and a LiDAR (Light Detection and Ranging) sensor that measures the distance to an obstacle using laser light.
  • a sensor such as a camera and a LiDAR (Light Detection and Ranging) sensor that measures the distance to an obstacle using laser light.
  • LiDAR Light Detection and Ranging
  • the robot 10 transmits sensor detection information such as camera-captured images to the semantic map generation device 50.
  • the semantic map generation device 50 executes a learning process (machine learning) using the sensor detection information input from the robot 10 to generate a semantic map that can identify the boundaries and types of rooms in the robot running environment.
  • FIG. 3 shows an example of a semantic map.
  • a semantic map is a map generated by semantic mapping.
  • Semantic mapping is a process of identifying the type of class to which each coordinate of the map of the environment managed by the robot 10 belongs.
  • This semantic mapping is, for example, a multi -layer neural network (DNN: DEAP NEURAL NETWORK), a folded neural network (CNN: Convolutional NEURAL NETWORK), or a recked type.
  • Salal networks RNN: RECURRENT NEURAL NETWORK, etc. It can be executed using a learning model applying an algorithm, and for example, an object corresponding to each pixel is identified based on feature amounts obtained from an image.
  • the type (class) of the object that the robot 10 identifies is, for example, the type of room.
  • the semantic map generation device 50 identifies a room in the running environment in which the robot 10 runs, and generates a semantic map in which a class is set according to the type of the identified room. For example, a semantic map with different colors set depending on the type (class) of the room is generated.
  • FIG. 3 shows an example of a semantic map generated by the semantic map generation device 50.
  • FIG. 3 shows an example of a semantic map in which different colors are set depending on the type of room as shown below.
  • the semantic map generation device 50 generates a semantic map in which a class (identifier) corresponding to the type of room is set as shown in FIG. ) Send to 30.
  • the user 35 displays the semantic map received from the semantic map generation device 50 on the display unit of the controller (mobile object control device) 30.
  • the user 35 confirms the semantic map displayed on the display unit of the controller (mobile object control device) 30, and further inputs user instruction information such as setting a specific room as a prohibited area for the robot 10. input.
  • a semantic map update process is executed. That is, the user instruction information is additionally recorded in the semantic map as attribute information of the semantic map, and an updated semantic map in which the user instruction information is additionally recorded is generated.
  • the controller 30 sends a command requesting the robot 10 to perform a task (for example, cleaning) based on the updated semantic map, for example, a semantic map in which the kitchen is set as a robot-prohibited area.
  • the robot 10 follows this command and executes the task according to the updated semantic map. That is, based on the semantic map in which the kitchen is set as a robot-prohibited area, a travel route that does not enter the kitchen is set and a task (cleaning) is executed.
  • various user instructions are input to the semantic map generated by the semantic map generation device 50 to update the semantic map, and the updated semantic map is used as robot control information.
  • the robot can be controlled according to the user's intentions.
  • FIGS. 5 and 6 are sequence diagrams illustrating an example of a processing sequence using the mobile object control system of the present disclosure. From the left, the robot 10, the semantic map generation device 50, and the controller 30 are shown, and the processing of each device and the data transmission/reception processing between the devices are shown as chronological processing from step S11 to step S17. Hereinafter, the processing of each step in the sequence diagrams shown in FIGS. 5 and 6 will be explained in order.
  • Step S11 First, in step S11, the robot 10 travels in a robot running environment, such as a floor of a certain house as shown in FIG. 1, and acquires sensor detection information (environmental information).
  • a robot running environment such as a floor of a certain house as shown in FIG. 1, and acquires sensor detection information (environmental information).
  • the robot 10 is equipped with a camera and a sensor such as LiDAR (Light Detection and Ranging), which is a sensor that measures the distance to an obstacle using laser light.
  • a sensor such as LiDAR (Light Detection and Ranging), which is a sensor that measures the distance to an obstacle using laser light.
  • the sensor mounted on the robot 10 is not limited to a camera or LiDAR, and various other types of sensors can be used.
  • an IMU Inertial Measurement Unit
  • an odometry device that detects the rotation speed of the robot's tires
  • an illuminance sensor that detects the brightness of the room.
  • sensors can be used, such as a microphone that acquires surrounding audio information, and a pressure sensor that acquires information to estimate the hardness, softness, material, etc. of the floor surface.
  • step S11 the robot 10 acquires sensor detection information (environmental information) from various sensors in addition to camera images obtained while the robot is running.
  • the sensor detection information that the robot 10 acquires while running is used as learning data for the semantic map generation process in the semantic map generation device 50.
  • Step S12 the robot 10 transmits the sensor detection information (environmental information) acquired in step S11 to the semantic map generation device 50.
  • the robot 10 sequentially transmits sensor detection information such as camera images acquired while running to the semantic map generation device 50.
  • the semantic map generation device 50 executes a learning process using sensor detection information (environmental information) received from the robot 10 to generate a semantic map.
  • a semantic map is generated by identifying the object type corresponding to each pixel through a process applying a learning algorithm such as a neural network (NN).
  • a learning algorithm such as a neural network (NN).
  • the object type identified in the process of the present disclosure is the "room type.”
  • step S13 the semantic map generation device 50 executes a learning process using the sensor detection information (environmental information) received from the robot 10, performs class classification according to the room type, and Generate a semantic map with identifiable boundaries. This is a semantic map as described above with reference to FIGS. 3 and 4.
  • various methods can be applied to the learning method used by the semantic map generation device 50 for the semantic map generation process, such as a supervised learning method and an unsupervised learning method including self-supervised learning.
  • a configuration may be adopted in which a rule-based method is used without using machine learning.
  • the semantic map generation device 50 further analyzes various features of each class (room type) set in the semantic map based on the sensor detection information of the robot 10, and records the analysis results as class attributes in the semantic map. do.
  • step S14 the semantic map generation device 50 transmits the semantic map generated in step S13 to the controller 30 operated by the user 35.
  • Step S15 Next, the user 35 displays the semantic map received from the semantic map generation device 50 on the display unit of the controller (mobile object control device) 30 in step S15.
  • the user 35 confirms the semantic map displayed on the display unit of the controller (mobile object control device) 30, and further inputs user instruction information such as setting a specific room as a prohibited area for the robot 10. input.
  • the user instruction information is additionally recorded in the semantic map as attribute information (user-set class attribute) corresponding to the class of the semantic map, and the update process of the semantic map is executed. That is, the user-specified class attributes generated based on the user-specified information are additionally recorded in the semantic map data as configuration data of the semantic map.
  • step S15 that is, the semantic map update process by recording class attributes on the semantic map based on user instruction information, will be described in detail later.
  • Step S16 the user 35 transmits to the robot 10 an instruction to execute a task based on the semantic map updated in step S15, that is, the updated semantic map to which the user-set class attribute based on the user instruction information is added.
  • an updated semantic map with user-set class attributes added and task information are transmitted to the robot 10.
  • the updated semantic map to which the user-specified class attribute is added is used as control information for the robot 10, that is, as moving object control information.
  • step S17 the robot 10 receives the task execution command sent by the controller 30, and executes the task (cleaning, etc.) according to the received task execution command.
  • the semantic map generation device 50 generates a semantic map by executing a learning process using the sensor detection information (environmental information) received from the robot 10 in step S13 of the sequence diagram shown in FIG. 5 described above.
  • a semantic map that identifies the object type (room type) corresponding to each pixel by applying a learning algorithm such as a neural network (NN) and sets a class according to the room type. generate.
  • a learning algorithm such as a neural network (NN)
  • map information regarding the generation area of the semantic map As a base.
  • map information used by the semantic map generation device 50 to generate a semantic map will be described with reference to FIG. 7 and subsequent figures.
  • FIG. 7 shows (a) the robot running environment described earlier with reference to FIG. There is.
  • (b1) Occupancy grid map is a map that shows the probability of occupancy of an obstacle in units of rectangular areas (grids) within the map. For example, a rectangular region (grid) with a high probability of being occupied by an obstacle is set in black, a region with a low probability of being occupied by an obstacle is set in white, an intermediate region is set in gray, etc.
  • This occupancy grid map can be generated by having the robot 10 run through the robot running environment and using sensor detection information, such as images captured by a camera.
  • FIG. 8 shows "(b2) Three-dimensional point group” which is another example of the map data of "(a) Robot running environment".
  • "(b2) Three-dimensional point group” is a map showing point groups at the positions of obstacles. This indicates that an obstacle exists at the position of the point in "(b2) three-dimensional point group” shown in FIG.
  • This three-dimensional point group can also be generated by having the robot 10 run through the robot running environment and using sensor detection information, such as camera-captured images.
  • the semantic map generation device 50 can use, for example, a "(b1) occupancy grid map” as shown in FIG. 7 or a "(b2) three-dimensional point group” as a base map.
  • the maps used as the base of the semantic map are not limited to "(b1) occupancy grid map” and "(b2) 3D point cloud", but also various other formats such as 2D maps, 3D maps, topological maps, etc. is also available.
  • FIG. 9 shows an example of generating a semantic map based on the "(b1) occupancy grid map" shown in FIG. 7.
  • the semantic map generation device 50 uses information detected from, for example, the "(b1) occupancy grid map" shown in FIG. .
  • a linear obstacle area or the like is recognized as a wall that is a boundary between rooms, and the boundaries of the rooms are identified to determine the boundaries of each room.
  • the type of each room is determined based on learning processing using sensor detection information of the robot 10, and a semantic map in which classes are set for each room type is generated.
  • FIG. 10 shows an example of a semantic map generated by the semantic map generation device 50 and an example of class classification corresponding to the semantic map.
  • the semantic map class is composed of, for example, the following classes.
  • classes are set in the semantic map generated by the semantic map generation device 50 according to the type of room.
  • the semantic map generation device 50 of the present disclosure converts feature information corresponding to the class (room type) set in the semantic map, that is, feature information corresponding to the class (room type) detected by the sensor of the robot 10 into attribute information ( recorded in the semantic map as a class attribute).
  • the semantic map generation device 50 performs the class set in the semantic map during the semantic map generation process shown in FIG. 5 (step S13). Various characteristics of each (room type) unit are analyzed based on sensor detection information of the robot 10, and the analysis results are recorded in a semantic map as a class attribute.
  • step S15 the user 35 uses the controller 30 to record the class attribute (user-set class attribute) based on the user instruction information in the semantic map.
  • FIG. 11 is an example of the semantic map configuration data generated by the semantic map generation device 50 in FIG. 5 (step S13).
  • this is an example of semantic map configuration data in which the semantic map generation device 50 analyzes various characteristics of each class (room type) based on sensor detection information of the robot 10 and records the analysis results as class attributes. .
  • class attributes ((c) class attributes based on sensor detection information) generated by the semantic map generation device 50 based on sensor detection information are recorded.
  • the semantic map configuration data shown in FIG. 11 includes the following information.
  • (a) Class identifier (b) Class (room type) (c) Class attributes based on sensor detection information
  • (c) class attribute based on sensor detection information is a class attribute generated and recorded by the semantic map generation device 50.
  • the semantic map generation device 50 analyzes features corresponding to classes (room types) based on sensor detection values of the robot 10, and generates and records these class attributes based on the analyzed feature information.
  • (c1) presence or absence of a person is determined based on an image taken by a camera, which is a sensor of the robot 10, and audio information acquired by a microphone.
  • (c2) floor type is determined based on information acquired by a pressure sensor, which is a sensor of the robot 10, and running sound information when the robot runs, acquired by a microphone.
  • the semantic map generation device 50 of the present disclosure analyzes the sensor detection values of the robot 10, obtains feature information corresponding to the class (room type), and records this as attribute information corresponding to the class of the semantic map. do.
  • the class-corresponding attribute information of this semantic map is used, for example, for the robot 10 to execute a task or to determine a travel route. For example, when the task to be performed by the robot 10 is cleaning, it is possible to avoid places where people are present and prioritize cleaning places where there are no people. It can also be used for speed control processing, such as changing the speed at which a robot travels depending on the type of floor, in order to reduce noise.
  • Step S101 First, in step S101, the semantic map generation device 50 transmits a running command to the robot 10, causes the robot 10 to run, and collects sensor detection data (learning data) detected by a sensor such as a camera mounted on the robot 10. Received from robot 10.
  • sensor detection data learning data
  • the robot 10 is caused to travel throughout the entire area of the robot travel environment as shown in FIG. 1, and sensor detection information detected at each position is input. Note that this process corresponds to the process of collecting learning data for generating a semantic map.
  • Step S102 the semantic map generation device 50 determines whether the sensor detection data (learning data) received from the robot 10 has reached a level at which a semantic map can be generated.
  • step S102 it is determined whether sensor detection information for the entire area of the robot running environment as shown in FIG. 1 has been acquired. If there is a region that has not been acquired yet, or if there is a region for which sufficient sensor detection information has not been obtained, the determination in step S102 is set as No, and the process returns to step S101 to perform the traveling process of the robot 10 and the sensor detection information. Continue the acquisition process.
  • step S102 If it is determined in step S102 that the sensor detection data (learning data) received from the robot 10 has reached a level at which a semantic map can be generated, the process proceeds to step S103.
  • Step S103 the semantic map generation device 50 executes a semantic estimation process as a first stage process of the semantic map generation process using the sensor detection data (learning data) received from the robot 10.
  • a learning process using the sensor detection information (environmental information) received from the robot 10 is executed to estimate the room type, and class classification is executed according to the estimated room type.
  • Step S104 the semantic map generation device 50 converts the feature information corresponding to the class (room type) estimated in step S103, that is, the feature information corresponding to the class (room type) obtained from the sensor detection information into the class attribute Generate a semantic map recorded as (class attribute based on sensor detection information).
  • a semantic map as described with reference to FIGS. 10 and 11 that is, a map in which classes corresponding to room type identifiers are set, and class attributes as characteristic information of each class are recorded.
  • a semantic map is generated.
  • FIG. 13 shows semantic map configuration data similar to that previously described with reference to FIG. 11.
  • FIG. 13 shows the following information.
  • “(c) class attribute based on sensor detection information” is a class attribute generated and recorded by the semantic map generation device 50. That is, the semantic map generation device 50 analyzes the characteristics corresponding to the class (room type) based on the sensor detection value of the robot 10, and is a class attribute generated and recorded based on the analyzed characteristic information.
  • (c1) presence or absence of a person is determined based on an image taken by a camera, which is a sensor of the robot 10, and audio information acquired by a microphone.
  • (c2) floor type is determined based on information acquired by a pressure sensor, which is a sensor of the robot 10, and running sound information when the robot runs, acquired by a microphone.
  • (c3) Door position (door position coordinates in the map) is information regarding the position of the door of the room identified by the semantic map. Specifically, for example, the position of the bedroom door and the door position of the child's room in the semantic map shown in FIG. 14 are recorded.
  • the door position information is recorded, for example, using XY coordinate data in the XY coordinates with the lower left end of the semantic map shown in FIG. 14 as the origin. Note that this door position information can be obtained by analyzing sensor detection information of the robot 10, for example, an image captured by a camera.
  • the bedroom door positions are at positions (x1, y1) to (x2, y2), and the child's room door positions are at positions (x3, y3) to (x4, y4).
  • Steps S121 to S124 The processing in steps S121 to S124 is similar to the processing in steps S101 to S104 in the flowchart previously described with reference to FIG.
  • the semantic map generation device 50 causes the robot 10 to travel and receives sensor detection data (learning data) detected by a sensor such as a camera mounted on the robot 10 from the robot 10.
  • step S122 it is determined whether the sensor detection data (learning data) received from the robot 10 has reached a level at which a semantic map can be generated. If it is determined that the sensor detection data (learning data) received from the robot 10 has reached a level at which a semantic map can be generated, the process advances to step S123.
  • step S123 the semantic map generation device 50 executes semantic estimation processing as the first stage of the semantic map generation processing using the sensor detection data (learning data) received from the robot 10.
  • a learning process using the sensor detection information (environmental information) received from the robot 10 is executed to estimate the room type, and class classification is executed according to the estimated room type.
  • step S124 the semantic map generation device 50 converts the feature information corresponding to the class (room type) estimated in step S123, that is, the feature information corresponding to the class (room type) obtained from the sensor detection information into the class attribute Generate a semantic map recorded as (class attribute based on sensor detection information).
  • Step S125 the semantic map generation device 50 analyzes the position of the door in the room based on the sensor detection information, and records the position coordinates of the door as attribute information corresponding to the class of the semantic map, that is, the class attribute. .
  • a semantic map is generated in which, for example, the position coordinates of the door described with reference to FIG. 13 are recorded as a class attribute.
  • Each of the rooms identified in the semantic map includes rooms with people and rooms without people. Also, the time when people are present varies depending on the room. A specific example will be described with reference to FIG. 16.
  • Figure 16 shows an example of people being in a room at two different times. (a) 8am (b) 3am
  • information on the presence or absence of people in a room usually differs depending on the time of day, and when recording whether or not there are people in a room as a class attribute of a semantic map, it is best to record it as time-based attribute information. It is valid.
  • FIG. 17 shows an example of semantic map configuration data in which class attributes corresponding to time are recorded.
  • FIG. 17 shows semantic map configuration data similar to that previously described with reference to FIGS. 11 and 13.
  • FIG. 17 shows the following information.
  • (c) time-corresponding class attribute based on sensor detection information is a time-corresponding class attribute.
  • the presence or absence of a person is determined based on an image taken by a camera, which is a sensor of the robot 10, and audio information acquired by a microphone.
  • "(c(t1)) Presence or absence of people between 8:00 and 18:00” is determined by the camera images and microphone acquisition obtained by moving the robot 10 between 8:00 and 18:00. This is a time-based class attribute determined based on audio.
  • (c(t2)) presence or absence of a person between time 22:00 and 7:00 is an image captured by a camera obtained by moving the robot 10 between time 22:00 and 7:00, This is a time-based class attribute determined based on the microphone-acquired audio.
  • Steps S151 to S154 The processing in steps S151 to S154 is similar to the processing in steps S101 to S104 in the flowchart previously described with reference to FIG.
  • the semantic map generation device 50 causes the robot 10 to travel and receives sensor detection data (learning data) detected by a sensor such as a camera mounted on the robot 10 from the robot 10.
  • sensor detection data learning data
  • step S152 it is determined whether the sensor detection data (learning data) received from the robot 10 has reached a level at which a semantic map can be generated. If it is determined that the sensor detection data (learning data) received from the robot 10 has reached the data necessary for generating the semantic map, the process advances to step S153.
  • step S153 the semantic map generation device 50 executes semantic estimation processing as the first stage of the semantic map generation processing using the sensor detection data (learning data) received from the robot 10.
  • a learning process using the sensor detection information (environmental information) received from the robot 10 is executed to estimate the room type, and class classification is executed according to the estimated room type.
  • step S154 the semantic map generation device 50 converts the feature information corresponding to the class (room type) estimated in step S153, that is, the feature information corresponding to the class (room type) obtained from the sensor detection information into the class attribute. Generate a semantic map recorded as (class attribute based on sensor detection information).
  • Step S155 the semantic map generation device 50 records time-based class attribute information of the semantic map based on the input time of the sensor detection data.
  • information on the presence or absence of people in each class (room) is recorded as time-based class attribute information.
  • a semantic map is generated in which information about the presence or absence of people in each class (room) is recorded as a time-based class attribute.
  • step S15 a specific example of the process (step S15) previously described with reference to the sequence diagrams of FIGS. 5 and 6 will be described.
  • step S15 which was previously described with reference to the sequence diagrams of FIGS. 5 and 6, the user 35 displays the semantic map received from the semantic map generation device 50 on the display unit of the controller (mobile object control device) 30. Then, a user instruction, for example, user instruction information such as setting a specific room as a prohibited area for the robot 10, is input, and a semantic map update process is executed to add the user instruction information to the semantic map as a class attribute.
  • a user instruction for example, user instruction information such as setting a specific room as a prohibited area for the robot 10
  • a semantic map update process is executed to add the user instruction information to the semantic map as a class attribute.
  • Example 1 An example of recording and using a semantic map for a robot moving indoors, as a user-specified class attribute, to record and use robot movement areas and movement prohibited areas for each class.
  • Example 3 An example of recording and using the allowed and prohibited areas for each class as user-set class attributes in a semantic map for a robot moving outdoors.
  • Example 4 Moving outdoors Example of recording and using movable areas and prohibited areas for each class as user-set class attributes for a semantic map for a robot that moves indoors (Example 5)
  • Example 5 For a semantic map for a robot that moves indoors An example of recording and using time-based class attributes as user-configured class attributes.
  • Example 1 Example of recording and using the robot movable area and movement prohibited area for each class as user-set class attributes for a semantic map for a robot moving indoors
  • Example 1 an example will be described in which a robot movement area and movement prohibited area are recorded and used for each class as user-set class attributes in a semantic map for a robot moving indoors.
  • FIG. 19 is a diagram illustrating a specific example of a user operation when performing the process of the first embodiment in (step S15) previously described with reference to the sequence diagrams of FIGS. 5 and 6.
  • step S15 which was previously described with reference to the sequence diagrams of FIGS. 5 and 6, the user 35 displays the semantic map received from the semantic map generation device 50 on the display unit of the controller (mobile object control device) 30. do.
  • the user 35 specifies the classes (rooms) that are displayed in different colors, and determines the movable area and prohibited movement area of the robot 10 for each class (room). Set.
  • the user-configured class attributes according to the user operations are added to the semantic map generated by the semantic map generation device 50, and an update process for the semantic map generated by the semantic map generation device 50 is executed. Ru.
  • semantic map configuration data as shown in FIG. 20 is generated.
  • the semantic map configuration data shown in FIG. 20 includes the following data.
  • (a) Class identifier (b) Class (room type)
  • (c) Class attributes based on sensor detection information (d) User-configured class attributes
  • (c) class attribute based on sensor detection information is a class attribute recorded by the semantic map generation device 50 when generating the semantic map, and is a class attribute that is detected by the sensor of the robot 10. This is a class attribute generated from feature information corresponding to the class (room type).
  • (d) User-set class attribute is a class attribute added to the semantic map by the user operation described with reference to FIG. 19.
  • the user 35 sets a movable area and a movement prohibited area for the robot 10 for each class (room) included in the semantic map displayed on the controller 30.
  • Class attribute operable or prohibited
  • Class (Living Room) Possible Class
  • Switchen Possible Class
  • the user instruction information is additionally recorded as a class attribute of the semantic map, and the semantic map generated by the semantic map generation device 50 is updated.
  • the controller 30 assigns the robot 10 a task, such as cleaning, based on an updated semantic map, such as the one shown in FIG. Send a command to be executed.
  • the robot 10 performs a task (eg, cleaning) based on this command.
  • the robot 10 executes a task (for example, cleaning) based on the semantic map updated by the user 35, that is, the semantic map in which operable/prohibited information for each class (room type) is set as a class attribute.
  • the robot 10 refers to the user-specified class attributes of the updated semantic map and confirms that two classes, class (bedroom) and class (bath/toilet), are set as robot movement prohibited areas, Execute a task (cleaning) by setting a route that avoids the bedroom and bath/toilet.
  • Example 2 Example of recording and using accessible areas and prohibited areas for each class as user-set class attributes for a semantic map for a robot moving indoors
  • Example 2 an example will be described in which accessible areas and prohibited areas for each class are recorded and used as user-set class attributes for a semantic map for a robot moving indoors.
  • FIG. 21 is a diagram illustrating a specific example of user operations when performing the processing of the second embodiment.
  • the user 35 displays the semantic map received from the semantic map generation device 50 on the display unit of the controller (mobile object control device) 30, and uses the displayed semantic map to identify classes (rooms) that are displayed in different colors. By specifying this, an area in which the robot 10 can enter and an area in which it is prohibited to enter are set for each class (room).
  • the user-set class attributes according to the user operations are added to the semantic map generated by the semantic map generation device 50, and the semantic map is updated.
  • (d) user setting class attributes as shown in FIG. 22 are added.
  • the semantic map configuration data shown in FIG. 22 shows only (a) class identifier, (b) class (room type), and (d) user-set class attribute.
  • (d) User-set class attribute in the semantic map configuration data shown in FIG. 22 is a class attribute added to the semantic map by the user operation described with reference to FIG. 21.
  • the user instruction information is additionally recorded as a class attribute of the semantic map, and an updated semantic map is generated.
  • the controller 30 assigns the robot 10 a task, such as cleaning, based on an updated semantic map, such as the one shown in FIG. 22, in which entry permission/prohibition information for each class (room type) is set as a class attribute. Send a command to be executed.
  • the robot 10 performs a task (eg, cleaning) based on this command.
  • the robot 10 executes a task (for example, cleaning) based on the semantic map updated by the user 35, that is, the semantic map in which entry permission/prohibition information for each class (room type) is set as a class attribute.
  • the robot 10 refers to the user-specified class attribute of the updated semantic map, confirms that the class (stairs) is set as a robot-prohibited area, sets a travel route that avoids stairs, and completes the task ( cleaning).
  • Example 3 Example of recording and using accessible areas and prohibited areas for each class as user-set class attributes for a semantic map for a robot moving outdoors.
  • Example 3 an example will be described in which accessible areas and prohibited areas for each class are recorded and used as user-set class attributes for a semantic map for a robot moving outdoors.
  • FIG. 23 is a diagram showing an example of the robot 10 of the third embodiment, that is, the robot 10 moving outdoors, and the robot movement area.
  • the semantic map generation device 50 uses images taken by the artificial satellite 70 to generate a map of the area in which the robot 10 runs.
  • the generated map is a base map for generating a semantic map.
  • the robot 10 uses the map generated by the semantic map generation device 50 to travel in the outdoor running environment shown in FIG. 23 and acquires sensor detection information (environmental information).
  • the robot 10 is equipped with sensors such as a camera and LiDAR (Light Detection and Ranging), which is a sensor that measures the distance to an obstacle using laser light, and the sensor detection by these sensors Information is sent to the semantic map generator 50.
  • sensors such as a camera and LiDAR (Light Detection and Ranging), which is a sensor that measures the distance to an obstacle using laser light, and the sensor detection by these sensors Information is sent to the semantic map generator 50.
  • sensors such as a camera and LiDAR (Light Detection and Ranging), which is a sensor that measures the distance to an obstacle using laser light, and the sensor detection by these sensors Information is sent to the semantic map generator 50.
  • LiDAR Light Detection and Ranging
  • the semantic map generation device 50 executes a learning process using the sensor detection information received from the robot 10 to generate a semantic map. For example, a semantic map as shown in FIG. 24 is generated.
  • the semantic map is generated as a map classified into the following classes.
  • classes are set according to the type of object in this way.
  • the semantic map generated by the semantic map generation device 50 is transmitted to the controller 30 operated by the user 35.
  • the user 35 displays the semantic map received from the semantic map generation device 50 on the display unit of the controller (mobile object control device) 30, and uses the displayed semantic map to display the color code.
  • the created class (object) is specified, and an approachable area and a prohibited area for the robot 10 are set for each class (object). For example, the user sets a class (fuel storage) as a prohibited area.
  • the user-set class attributes according to the user operations are added to the semantic map generated by the semantic map generation device 50, and the semantic map is updated.
  • (d) user setting class attributes as shown in FIG. 26 are added.
  • "(d) User-set class attribute" in the semantic map configuration data shown in FIG. 26 is a class attribute added to the semantic map by the user operation described with reference to FIG. 25.
  • the user instruction information is additionally recorded as a class attribute of the semantic map, and an updated semantic map is generated.
  • the controller 30 instructs the robot 10 to perform a task, such as delivering a package, based on an updated semantic map, such as the one shown in FIG. 26, in which accessible and prohibited information for each class (object) is set as a class attribute. Send a command requesting.
  • the robot 10 performs a task (eg, package delivery) based on this command.
  • the robot 10 executes a task (for example, delivery of a package) based on the semantic map updated by the user 35, that is, the semantic map in which accessible/prohibited information for each class (object) is set as a class attribute.
  • the robot 10 refers to the user-specified class attribute of the updated semantic map, confirms that the class (fuel storage) is set as a robot no-access area, and sets a travel route that avoids the fuel storage. Execute a task (package delivery). For example, as shown in Figure 27, if the destination of the package delivery is Mr. A's house, a travel route that avoids the fuel storage area is set as shown by the arrow on the road shown in the figure, and the task (package delivery) is completed. Execute.
  • Example 4 Example of recording and using movable areas and prohibited areas for each class as user-set class attributes for a semantic map for a robot moving outdoors.
  • FIG. 28 is a diagram showing an example of the robot 10 according to the fourth embodiment, that is, the robot 10 moving outdoors, and an area in which the robot can move.
  • the semantic map generation device 50 uses images taken by the artificial satellite 70 to generate a map of the area in which the robot 10 runs.
  • the generated map is a base map for generating a semantic map.
  • the robot 10 uses the map generated by the semantic map generation device 50 to travel in the outdoor running environment shown in FIG. 28 and acquires sensor detection information (environmental information).
  • the robot 10 is equipped with sensors such as a camera and LiDAR (Light Detection and Ranging), which is a sensor that measures the distance to an obstacle using laser light, and the sensor detection by these sensors Information is sent to the semantic map generator 50.
  • sensors such as a camera and LiDAR (Light Detection and Ranging), which is a sensor that measures the distance to an obstacle using laser light, and the sensor detection by these sensors Information is sent to the semantic map generator 50.
  • sensors such as a camera and LiDAR (Light Detection and Ranging), which is a sensor that measures the distance to an obstacle using laser light, and the sensor detection by these sensors Information is sent to the semantic map generator 50.
  • LiDAR Light Detection and Ranging
  • the semantic map generation device 50 executes a learning process using the sensor detection information received from the robot 10 to generate a semantic map. For example, a semantic map as shown in FIG. 29 is generated.
  • the semantic map is generated as a map classified into the following classes.
  • classes are set according to the type of object in this way.
  • the semantic map generated by the semantic map generation device 50 is transmitted to the controller 30 operated by the user 35.
  • the user 35 displays the semantic map received from the semantic map generation device 50 on the display section of the controller (mobile object control device) 30, and uses the displayed semantic map to display the color-coded display.
  • the created class (object) is specified, and a movable area and a movement prohibited area for the robot 10 are set for each class (object). For example, the user sets a class (forest) as a movement-prohibited area.
  • the user-set class attributes according to the user operations are added to the semantic map generated by the semantic map generation device 50, and the semantic map is updated.
  • (d) user setting class attributes as shown in FIG. 31 are added.
  • “(d) User-set class attribute” in the semantic map configuration data shown in FIG. 31 is a class attribute added to the semantic map by the user operation described with reference to FIG. 30.
  • the user instruction information is additionally recorded as a class attribute of the semantic map, and an updated semantic map is generated.
  • the controller 30 instructs the robot 10 to perform a task, such as delivering a package, based on an updated semantic map, such as the one shown in FIG. Send a command requesting.
  • the robot 10 performs a task (eg, package delivery) based on this command.
  • the robot 10 executes a task (for example, package delivery) based on the semantic map updated by the user 35, that is, the semantic map in which movable/prohibited information for each class (object) is set as a class attribute.
  • the robot 10 refers to the user-specified class attribute of the updated semantic map, confirms that the class (forest) is set as a robot movement prohibited area, sets a travel route that avoids the forest, and completes the task ( Cargo delivery). For example, as shown in Figure 32, if the destination of the package delivery is Mr. A's house, the task (package delivery) is performed by setting a driving route that avoids forests, as shown by the arrow on the road shown in the figure. Execute.
  • User 35 can also add user-defined class attributes to the semantic map as time-enabled class attributes.
  • Embodiment 5 is an example of processing for additionally recording such time-based class attributes by the user.
  • the time periods in which people are present in each of the rooms identified in the semantic map vary depending on the room.
  • Figure 33 shows an example of people being in a room at two different times. (a) 8am (b) 4pm
  • the user 35 When the user 35 additionally records the user-configured class attribute in the semantic map generated by the semantic map generation device 50, the user 35 records it as time-based attribute information.
  • FIG. 34 shows an example of semantic map configuration data in which user-set class attributes corresponding to time are recorded.
  • FIG. 34 shows semantic map configuration data in which "(d) user-set time corresponding class attribute" is additionally recorded.
  • “(d) User-set time-corresponding class attribute” shown in FIG. 34 is a time-corresponding class attribute set by the user 35.
  • the controller 30 requests the robot 10 to perform a task, for example, cleaning, based on an updated semantic map, for example, a semantic map in which room-based operation enablement and prohibition information is set as time-based class attributes as shown in FIG. Send a command to
  • the robot 10 performs a task (eg, cleaning) based on this command.
  • the robot 10 executes a task (for example, cleaning) based on the semantic map updated by the user 35, that is, the semantic map in which information on whether or not the robot can operate for each class (room type) by time is set as a class attribute. .
  • the robot 10 refers to the class attribute corresponding to the user-set time in the updated semantic map, selects the class attribute corresponding to the user-set time to be applied according to the execution time of the task (cleaning), and executes the task (cleaning). Execute.
  • the class attribute corresponding to user-set time in the semantic map is (d(t1)) Operation possible/prohibited information from time 700 to 9:00 Refer to the class attribute corresponding to this time, confirm that only the class (child's room) can operate the robot, and clean the child's room. Set a driving route and execute a task (cleaning).
  • the user-set time corresponding class attribute of the semantic map is (d(t2)) Operation possible/prohibited information for time 14:00 to 16:00 Referring to this time-based class attribute, class (living room), class (kitchen), and class (bedroom) can be robot operated. Make sure there are, set a driving route to clean each of these rooms, and perform the task (cleaning).
  • FIG. 35 shows an example of the configuration of each device: the robot 10, the controller 30, and the semantic map generation device 50.
  • the robot 10 includes a sensor 11, a communication section 12, a drive section 13, a task execution section 14, and a storage section 15.
  • the controller 30 includes a display section (monitor) 31, a semantic map update section 32, a task specification section 33, an input section 34, a communication section 35, and a storage section 36.
  • the semantic map generation device 50 includes a map generation section 51 , a sensor information acquisition section 52 , a storage section 53 , a learning data generation section 54 , a semantic map generation section 55 , a sensor information processing section 56 , and a communication section 57 .
  • the sensors 11 of the robot 10 include a camera, a LiDAR (Light Detection and Ranging) sensor that measures the distance to an obstacle using laser light, and an IMU (Inertial Unit) that detects the acceleration, angular velocity, etc. of the robot.
  • a measurement device Inertial Measurement Unit
  • an odometry device that detects the number of rotations of the robot's tires
  • an illuminance sensor that detects the brightness of the room
  • a microphone that acquires surrounding audio information, the hardness of the floor surface, etc. It is made up of various sensors, including a pressure sensor that acquires information to estimate softness, material, etc.
  • the communication unit 12 communicates with the controller 30 and the semantic map generation device 50.
  • the drive unit 13 executes robot drive processing for executing various tasks such as movement of the robot 10.
  • the task execution unit 14 controls the robot 10 to execute a task according to a task execution command input from the controller 30 or the like.
  • the storage unit 15 stores various data such as programs for tasks executed by the robot 10, control parameters, commands input from the controller 30, the semantic map generation device 50, etc., semantic maps, and other map information.
  • a display unit (monitor) 31 of the controller 30 displays, for example, a semantic map input from the semantic map generation device 50. Note that the display section 31 also functions as a touch panel type input section.
  • the semantic map update unit 32 executes semantic map update processing based on information input by the user using the semantic map displayed on the display unit 31, such as user-set class attributes.
  • the task designation unit 33 designates a task to be performed by the robot 10, such as cleaning or package delivery.
  • the input unit 34 is used for sending task execution commands, inputting user-set task information to the semantic map displayed on the display unit 31, and the like.
  • the communication unit 35 executes communication processing with the robot 10 and the semantic map generation device 50.
  • the storage unit 36 stores the semantic map received from the semantic map generation device 50, the updated semantic map recording class attributes input by the user, various task execution commands, robot control parameters, and the like.
  • the map generation unit 51 of the semantic map generation device 50 generates a base map for semantic map generation, such as the occupancy grid map described with reference to FIG. 7 or the three-dimensional point cloud map described with reference to FIG. Generate other maps. Or execute the process to obtain it from outside.
  • the sensor information acquisition unit 52 acquires sensor detection information acquired by the sensor 11 of the robot 10 via the communication unit 57.
  • the storage unit 53 stores maps generated by the map generation unit 51, semantic maps, and other various data.
  • the learning data generation unit 54 generates learning data required for semantic map generation processing. The learning data is generated based on sensor detection information acquired by the sensor 11 of the robot 10, for example.
  • the semantic map generation unit 55 executes a learning process using the learning data generated by the learning data generation unit 54 to generate a semantic map.
  • the semantic map is generated by semantic mapping.
  • Semantic mapping can be performed using, for example, a deep neural network (DNN), which is a multilayer neural network, a convolutional neural network (CNN), or a recurrent neural network (RNN). Algorithms such as Network) It can be executed using a learning model to which the method is applied, and for example, the object corresponding to each pixel is identified based on the feature amount obtained from the image.
  • DNN deep neural network
  • CNN convolutional neural network
  • RNN recurrent neural network
  • the semantic map generation unit 55 identifies, for example, a room in the running environment in which the robot 10 runs, and generates a semantic map with class settings according to the type of the identified room.
  • the sensor information processing section 56 generates processing information based on the detected values of the sensors of the robot 10. For example, a process of extracting feature points from a photographed image obtained as a detection value of a camera, which is a sensor of the robot 10, is executed. This feature point data is input to the semantic map generation unit 55 and used for semantic map generation processing.
  • the communication unit 57 communicates with the robot 10 and the controller 30.
  • the robot 10, controller 30, and semantic map generation device 50 are configured to be able to communicate with each other.
  • the semantic map generation device 50 may be configured to be set in a cloud server as shown in FIG. 36.
  • controller 30 and the semantic map generation device 50 may be integrated.
  • a controller 30 has a built-in function of a semantic map generation device 50.
  • the controller 30 In the system shown in FIG. 37, the controller 30 generates a semantic map, further executes all processes such as setting user-specified class attributes. In the case of the configuration shown in FIG. 37, the processing section of the semantic map generation device 50 described earlier with reference to FIG. 35 is configured inside the controller 30.
  • the controller 30 includes a map generation section 51, a sensor information acquisition section 52, a storage section 53, a learning data generation section 54, a semantic map generation section 55, and a sensor information processing section.
  • a section 56 is configured.
  • FIG. 39 an example of the hardware configuration of the robot 10, the controller 30, and the semantic map generation device 50 will be described.
  • the hardware configuration shown in FIG. 39 is an example of a hardware configuration applicable to these devices. Each configuration of the hardware shown in FIG. 39 will be explained.
  • a CPU (Central Processing Unit) 101 functions as a data processing unit that executes various processes according to programs stored in a ROM (Read Only Memory) 102 or a storage unit 108. For example, processing according to the sequence described in the embodiment described above is executed.
  • a RAM (Random Access Memory) 103 stores programs executed by the CPU 101, data, and the like. These CPU 101, ROM 102, and RAM 103 are interconnected by a bus 104.
  • the CPU 101 is connected to an input/output interface 105 via a bus 104, and to the input/output interface 105, an input section 106 consisting of various switches, a keyboard, a touch panel, a mouse, a microphone, etc., and an output section 107 consisting of a display, speakers, etc. are connected. has been done.
  • the storage unit 108 connected to the input/output interface 105 is made up of, for example, a hard disk, and stores programs executed by the CPU 101 and various data.
  • the communication unit 109 functions as a transmitting and receiving unit for data communication via a network such as the Internet or a local area network, and communicates with an external device.
  • a drive 110 connected to the input/output interface 105 drives a removable medium 111 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory such as a memory card, and records or reads data.
  • a removable medium 111 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory such as a memory card
  • a mobile object control information generation method executed in a mobile object control information generation device The data processing section Mobile object control information generation that generates mobile object control information in which characteristic information of the class or control information of the mobile object for the class is recorded as a class attribute in association with a class that is a divided area in the map of the travel area of the mobile object.
  • the map is a map that makes it possible to identify the types of rooms existing in the indoor travel area of the mobile object and the boundaries of the rooms,
  • the map is a map that makes it possible to identify objects existing in the outdoor travel area of the mobile object,
  • the mobile object control information generation method according to any one of (1) to (3), wherein the class is a class set in association with each object.
  • the class attributes recorded in the mobile object control information are: The mobile body control information generation method according to any one of (1) to (4), wherein the class characteristic information is analyzed based on detection information of a sensor attached to the mobile body.
  • the class attributes recorded in the mobile object control information are: The method for generating mobile object control information according to any one of (1) to (5), wherein the mobile object control information is class-based mobile object control information input by a user.
  • the class attribute recorded in the mobile object control information is a time-based class attribute
  • the mobile object control information is (1) to (6)
  • the mobile object control information generation method according to any one of the above.
  • the class is a class set in association with each room existing in the indoor travel area of the mobile object,
  • the mobile body control information generation method according to any one of (1) to (7), wherein the class attribute recorded in the mobile body control information is information indicating the presence or absence of a person in each room.
  • the class is a class set in association with each room existing in the indoor travel area of the mobile object,
  • the mobile body control information generation method according to any one of (1) to (8), wherein the class attribute recorded in the mobile body control information is information indicating whether or not a mobile body can enter each room.
  • the class is a class set in association with an object existing in an outdoor travel area of the mobile body,
  • the moving object control information generation method according to any one of (1) to (9), wherein the class attribute recorded in the moving object control information is information indicating whether the moving object can approach each object.
  • the mobile object control information generation method includes: Furthermore, the data processing unit displays the map on a display unit, Generating mobile object control information in which class characteristic information or mobile object control information for the class is recorded as a class attribute according to a user operation on a map displayed on a display unit (1) to (10) The mobile object control information generation method described.
  • the mobile object control information generation method further includes: a task specifying unit specifies a task to be executed by the mobile body, The mobile body control information according to any one of (1) to (11), which executes a process of transmitting an execution command of a specified task and mobile body control information in which the class attribute is recorded to the mobile body via a communication unit. Generation method.
  • a mobile object that generates mobile object control information in which feature information of the class or control information of the mobile object for the class is recorded as a class attribute in association with a class that is a divided area in a map of the travel area of the mobile object.
  • a mobile object control information generation device having a control information generation section.
  • a display unit that displays a map of the travel area of the moving object; an input unit for inputting characteristic information of a class that is a divided area in the map or control information of a moving object for the class;
  • Mobile body control information comprising a mobile body control information generation unit that generates or updates mobile body control information in which feature information of a class input through the input unit or control information of a mobile body for the class is recorded as a class attribute. generator.
  • a moving object that moves according to moving object control information in which feature information of the class or control information of the moving object for the class is recorded as a class attribute in association with a class that is a divided area in a map of the moving area of the moving object.
  • a mobile body control system comprising a mobile body, a controller that transmits control information to the mobile body, and a map generation device that generates a map of a travel area of the mobile body
  • the map generation device includes: generating mobile body control information in which characteristic information of the class or control information of the mobile body for the class is recorded as a class attribute in association with a class that is a divided area in a map of the travel area of the mobile body;
  • the controller includes: In the mobile object control information generated by the map generation device, A mobile object control system that performs additional processing of class attributes based on user input to generate an updated map, and uses the generated updated map to control the traveling of the mobile object.
  • a mobile body control system comprising a mobile body and a controller that transmits control information to the mobile body,
  • the controller includes: Mobile object control that generates a map of the travel area of the mobile object, and records feature information of the class or control information of the mobile object for the class as a class attribute in association with a class that is a divided area in the generated map.
  • a mobile body control system that generates information and uses the generated mobile body control information to execute running control of the mobile body.
  • a program that records the processing sequence can be installed and executed in the memory of a computer built into dedicated hardware, or the program can be installed on a general-purpose computer that can execute various types of processing. It is possible to install and run it.
  • the program can be recorded in advance on a recording medium.
  • the program can be received via a network such as a LAN (Local Area Network) or the Internet, and installed on a recording medium such as a built-in hard disk.
  • a system is a logical collective configuration of a plurality of devices, and the devices of each configuration are not limited to being in the same housing.
  • a moving body such as a robot is controlled using data such as a map that records class attributes for each class corresponding to a room.
  • characteristic information of the class and moving object control information for the class are recorded as class attributes in association with a map of the travel area of a moving object such as a robot, for example, a class that is a segmented area in a semantic map.
  • the map is a map that allows the types of rooms and the boundaries of the rooms to be identified, and records the presence or absence of people in the room, information on whether robots can enter, etc. as class attributes for the class corresponding to each room.
  • Robot travel control is performed using maps and data that record such class attributes.
  • a configuration is realized in which a moving body such as a robot is controlled using data such as a map recording class attributes for each class corresponding to a room.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Mathematical Physics (AREA)
  • Business, Economics & Management (AREA)
  • Educational Administration (AREA)
  • Educational Technology (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

例えば部屋対応のクラス各々に対するクラス属性を記録したマップ等のデータを用いてロボット等の移動体の制御を実行する。ロボット等の移動体の走行領域のマップ、例えばセマンティックマップ内の区分領域であるクラスに対応付けてクラスの特徴情報や、クラスに対する移動体制御情報をクラス属性として記録する。マップは部屋の種類、および部屋の境界を識別可能としたマップであり、各部屋対応のクラスに対するクラス属性として部屋内の人の有無や、ロボットの進入可否情報等を記録する。このようなクラス属性を記録したマップやデータを用いてロボットの走行制御を実行する。

Description

移動体制御情報生成方法、移動体制御情報生成装置、および移動体、並びに移動体制御システム
 本開示は、移動体制御情報生成方法、移動体制御情報生成装置、および移動体、並びに移動体制御システムに関する。さらに詳細には、自律移動型のロボット等の移動体の移動制御を行うための制御情報を生成する移動体制御情報生成方法、移動体制御情報生成装置、および移動体、並びに移動体制御システムに関する。
 昨今、様々な分野で自律移動型のロボットが利用されている。例えば室内ではお掃除ロボットが利用され、屋外では配送ロボットなどが利用されている。
 これらの自律移動型ロボットは、周囲環境を解析するセンサを有し、センサ検出情報を解析して、障害物への衝突や接触を避けて移動を行う。
 また、センサ検出情報に基づいて作成した地図や、外部から入力される地図情報を利用して移動を行う場合もある。
 例えば、ロボットの移動可能領域を制限する方法として、ロボット走行領域にガイドテープやマーカーを貼り付けて走行可能領域と進入禁止領域を区別する手法がある。
 例えば特許文献1(特開2010-176203号公報)には、ロボット稼働環境にマークを設置し、ロボットがマークを検出して、移動可能領域を識別する構成を開示している。
 しかし、この特許文献1に記載の構成では、ロボット走行領域に予めマークを設置する処理が必要となるという問題がある。
特開2010-176203号公報
 本開示は、例えば上記問題点に鑑みてなされたものであり、マークを設置するといった処理を行うことなく、ロボットが移動する環境にある様々な領域やオブジェクトに様々な属性を設定することで、ロボットの走行を制御する移動体制御情報を生成する移動体制御情報生成方法、移動体制御情報生成装置、および移動体、並びに移動体制御システムを提供することを目的とする。
 本開示の一実施例においては、例えばロボット走行領域の部屋の境界を識別可能としたセマンティックマップにユーザが進入禁止領域や移動可能領域などの属性情報を設定し、属性情報を記録したセマンティックマップを移動体制御情報として利用してロボット制御を行う。このような処理により、ユーザの希望に従った柔軟なロボット走行制御を実現する。
 本開示の第1の側面は、
 移動体制御情報生成装置において実行する移動体制御情報生成方法であり、
 データ処理部が、
 移動体の走行領域のマップ内の区分領域であるクラスに対応付けて、クラスの特徴情報、またはクラスに対する移動体の制御情報をクラス属性として記録した移動体制御情報を生成する移動体制御情報生成方法にある。
 さらに、本開示の第2の側面は、
 移動体の走行領域のマップ内の区分領域であるクラスに対応付けて、クラスの特徴情報、またはクラスに対する移動体の制御情報をクラス属性として記録した移動体制御情報を生成する移動体制御情報生成部を有する移動体制御情報生成装置にある。
 さらに、本開示の第3の側面は、
 移動体の走行領域のマップを表示する表示部と、
 前記マップ内の区分領域であるクラスの特徴情報、またはクラスに対する移動体の制御情報を入力する入力部と、
 前記入力部を介して入力されたクラスの特徴情報、またはクラスに対する移動体の制御情報をクラス属性として記録した移動体制御情報を生成、または更新する移動体制御情報生成部を有する移動体制御情報生成装置にある。
 さらに、本開示の第4の側面は、
 移動体の走行領域のマップ内の区分領域であるクラスに対応付けて、クラスの特徴情報、またはクラスに対する移動体の制御情報をクラス属性として記録した移動体制御情報に従って移動する移動体にある。
 さらに、本開示の第5の側面は、
 移動体と、前記移動体に制御情報を送信するコントローラと、前記移動体の走行領域のマップを生成するマップ生成装置を有する移動体制御システムであり、
 前記マップ生成装置は、
 前記移動体の走行領域のマップ内の区分領域であるクラスに対応付けて、クラスの特徴情報、またはクラスに対する移動体の制御情報をクラス属性として記録した移動体制御情報を生成し、
 前記コントローラは、
 前記マップ生成装置の生成した移動体制御情報に、
 ユーザ入力に基づくクラス属性の追記処理を実行して更新マップを生成して生成した更新マップを利用して、前記移動体の走行制御を実行する移動体制御システムにある。
 さらに、本開示の第6の側面は、
 移動体と、前記移動体に制御情報を送信してするコントローラを有する移動体制御システムであり、
 前記コントローラは、
 前記移動体の走行領域のマップを生成するとともに、生成したマップ内の区分領域であるクラスに対応付けて、クラスの特徴情報、またはクラスに対する移動体の制御情報をクラス属性として記録した移動体制御情報を生成して、生成した移動体制御情報を利用して、前記移動体の走行制御を実行する移動体制御システムにある。
 本開示のさらに他の目的、特徴や利点は、後述する本開示の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
 本開示の一実施例の構成によれば、例えば部屋対応のクラス各々に対するクラス属性を記録したマップ等のデータを用いてロボット等の移動体の制御を実行する構成が実現される。
 具体的には、例えば、ロボット等の移動体の走行領域のマップ、例えばセマンティックマップ内の区分領域であるクラスに対応付けてクラスの特徴情報や、クラスに対する移動体制御情報をクラス属性として記録する。マップは部屋の種類、および部屋の境界を識別可能としたマップであり、各部屋対応のクラスに対するクラス属性として部屋内の人の有無や、ロボットの進入可否情報等を記録する。このようなクラス属性を記録したマップやデータを用いてロボットの走行制御を実行する。
 本構成により、例えば部屋対応のクラス各々に対するクラス属性を記録したマップ等のデータを用いてロボット等の移動体の制御を実行する構成が実現される。
 なお、本明細書に記載された効果はあくまで例示であって限定されるものではなく、また付加的な効果があってもよい。
本開示の移動体であるロボットが走行する走行環境の一例について説明する図である。 本開示の移動体制御システムの構成例を示す図である。 セマンティックマップの一例について説明する図である。 セマンティックマップに対するユーザ指示情報の入力処理について説明する図である。 本開示の移動体制御システムを用いた処理のシーケンスの一例について説明するシーケンス図である。 本開示の移動体制御システムを用いた処理のシーケンスの一例について説明するシーケンス図である。 セマンティックマップの生成に利用する地図情報の例について説明する図である。 セマンティックマップの生成に利用する地図情報の例について説明する図である。 占有格子地図をベースとしてセマンティックマップを生成する例について説明する図である。 セマンティックマップ生成装置が生成するセマンティックマップと、セマンティックマップ対応のクラス分類について説明する図である。 クラス(部屋種類)対応の特徴情報をクラス属性として記録したセマンティックマップの例について説明する図である。 セマンティックマップ生成処理の基本的なシーケンス例について説明するフローチャートを示す図である。 クラス属性が記録されたセマンティックマップの例について説明する図である。 セマンティックマップに記録するクラス属性の具体例について説明する図である。 セマンティックマップ生成処理のシーケンス例について説明するフローチャートを示す図である。 セマンティックマップに記録するクラス属性の具体例について説明する図である。 クラス属性が記録されたセマンティックマップの例について説明する図である。 セマンティックマップ生成処理のシーケンス例について説明するフローチャートを示す図である。 セマンティックマップにユーザ設定クラス属性を追加記録する処理の具体例について説明する図である。 ユーザ設定クラス属性が記録されたセマンティックマップの例について説明する図である。 セマンティックマップにユーザ設定クラス属性を追加記録する処理の具体例について説明する図である。 ユーザ設定クラス属性が記録されたセマンティックマップの例について説明する図である。 屋外を移動するロボットとロボット移動領域を示した図である。 図23に示すロボット移動領域に対応するセマンティックマップの例について説明する図である。 セマンティックマップにユーザ設定クラス属性を追加記録する処理の具体例について説明する図である。 ユーザ設定クラス属性が記録されたセマンティックマップの例について説明する図である。 ユーザ設定クラス属性が記録されたセマンティックマップを利用したロボット制御例について説明する図である。 屋外を移動するロボットとロボット移動領域を示した図である。 図28に示すロボット移動領域に対応するセマンティックマップの例について説明する図である。 セマンティックマップにユーザ設定クラス属性を追加記録する処理の具体例について説明する図である。 ユーザ設定クラス属性が記録されたセマンティックマップの例について説明する図である。 ユーザ設定クラス属性が記録されたセマンティックマップを利用したロボット制御例について説明する図である。 セマンティックマップに記録するユーザ設定クラス属性の具体例について説明する図である。 ユーザ設定クラス属性が記録されたセマンティックマップの例について説明する図である。 ロボット、コントローラ、セマンティックマップ生成装置の各装置の構成例について説明する図である。 本開示の移動体制御システムの構成例を示す図である。 本開示の移動体制御システムの構成例を示す図である。 ロボット、コントローラ各装置の構成例について説明する図である。 本開示のロボット、コントローラ、セマンティックマップ生成装置各装置のハードウェア構成例について説明する図である。
 以下、図面を参照しながら本開示の移動体制御情報生成方法、移動体制御情報生成装置、および移動体、並びに移動体制御システムの詳細について説明する。なお、説明は以下の項目に従って行なう。
 1.ロボットの走行環境の例と、走行制御に利用するセマンティックマップについて
 2.本開示の移動体制御システムを用いた処理シーケンスの一例について
 3.セマンティックマップ生成装置によるセマンティックマップ生成処理の具体例と、生成するセマンティックマップの具体例について
 4.セマンティックマップ生成装置によるセマンティックマップ生成処理のシーケンスについて
 5.ユーザによるクラス対応属性情報の入力処理によるセマンティックマップ更新処理の具体例について
 5-1.(実施例1)屋内を移動するロボット用のセマンティックマップに対して、ユーザ設定クラス属性として、クラス単位のロボット動作可能領域と動作禁止領域を記録して利用する実施例
 5-2.(実施例2)屋内を移動するロボット用のセマンティックマップに対して、ユーザ設定クラス属性として、クラス単位の進入可能領域と進入禁止領域を記録して利用する実施例
 5-3.(実施例3)屋外を移動するロボット用のセマンティックマップに対して、ユーザ設定クラス属性として、クラス単位の接近可能領域と接近禁止領域を記録して利用する実施例
 5-4.(実施例4)屋外を移動するロボット用のセマンティックマップに対して、ユーザ設定クラス属性として、クラス単位の移動可能領域と移動禁止領域を記録して利用する実施例
 5-5.(実施例5)屋内を移動するロボット用のセマンティックマップに対して、ユーザ設定クラス属性として、時間対応のクラス属性を記録して利用する実施例
 6.各装置の構成例について
 7.各装置のハードウェア構成例について
 8.本開示の構成のまとめ
  [1.ロボットの走行環境の例と、走行制御に利用するセマンティックマップについて]
 まず、ロボットの走行環境の例と、走行制御に利用するセマンティックマップについて説明する。
 図1は、本開示の移動体であるロボット10が走行する走行環境の一例を示す図である。
 図1に示す(a)ロボット走行環境の例は家の1つのフロアの例である。ロボット10は、この家のフロアの各部屋を移動する。ロボット10は、例えば自走式の「お掃除ロボット」である。あるいは家の各部屋を移動して物を運ぶ処理等、お掃除以外の様々なタスク(処理)を行うロボットでもよい。
 ロボット10は、例えばユーザの所有するコントローラによって指定されたタスク、例えば掃除などを実行する。
 図2は、本開示の移動体制御システム20の構成例を示す図である。
 図2に示す移動体制御システム20は、ロボット10、コントローラ(移動体制御装置)30、セマンティックマップ生成装置50を有する。
 これらの各装置は、相互に通信可能な構成を持つ。
 なお、コントローラ(移動体制御装置)30と、セマンティックマップ生成装置50の2つの装置は、いずれも本開示の移動体制御情報生成装置に相当する。
 コントローラ(移動体制御装置)30は、ユーザ35によって操作される。
 ロボット10は、ユーザ35がコントローラ(移動体制御装置)30に入力したタスクに従った処理、例えば掃除などを行う。
 セマンティックマップ生成装置50は、ロボット10のタスク実行前の事前処理として、ロボット10の走行環境のセマンティックマップを生成する。
 セマンティックマップとは、ロボット10の走行環境にある様々なオブジェクトのオブジェクト種類を識別可能としたマップである。本開示の処理では、先に図1を参照して説明したロボット走行環境内の各部屋を識別可能としたセマンティックマップ、すなわち、部屋の境界を識別可能とし、さらに部屋の種類に応じたクラス分類を行ったセマンティックマップを生成する。
 なお、オブジェクトには、ロボット10の走行の障害物の他、ロボット10の走行環境を識別するために利用可能な物体、すなわち、部屋の種類や場所の特徴を示す物体(場所に特徴づけられる物体)も含まれる。
 部屋の種類や場所の特徴を示す物体(場所に特徴づけられる物体)とは例えば、以下のような物体である。
 例えば、フライパンは、それが存在する場所はキッチンである可能性が高いため、キッチンに特徴づけられる物体に該当する。
 また、例えば、姿見鏡は、それが存在する場所はクローゼットである可能性が高いため、クローゼットに特徴づけられる物体に該当する。
 セマンティックマップ生成装置50は、ロボット10を走行させて、ロボット10に装着されたセンサの検出情報を入力し、このセンサ検出情報を用いた学習処理(機械学習)を実行して、ロボット走行環境の部屋の境界や種類を識別可能としたセマンティックマップを生成する。
 ロボット10には、例えばカメラや、レーザ光による障害物までの距離を計測するセンサであるLiDAR(Light Detection and Ranging)等のセンサが装着されている。
 ロボット10は、カメラ撮影画像等のセンサ検出情報をセマンティックマップ生成装置50に送信する。セマンティックマップ生成装置50は、ロボット10から入力したセンサ検出情報を用いた学習処理(機械学習)を実行して、ロボット走行環境の部屋の境界や種類を識別可能としたセマンティックマップを生成する。
 図3にセマンティックマップの一例を示す。セマンティックマップは、セマンティックマッピングによって生成されるマップである。
 セマンティックマッピングは、ロボット10が管理する環境のマップの各座標が属するクラスの種類を識別する処理である。
 例えば、識別したオブジェクトの種類に応じてクラスを設定し、オブジェクト種類(=クラス)に応じた色や識別子を設定する。
 このセマンティックマッピングは、例えば多層型のニューラルネットワークであるディープニューラルネットワーク(DNN:Deap Neural Network)や、畳み込みニューラルネットワーク(CNN:Convolutional Neural Network)、あるいは再帰型ニューラルネットワーク(RNN:Recurrent Neural Network)などのアルゴリズムを適用した学習モデルを利用して実行可能であり、例えば画像から得られる特徴量に基づいて各画素対応のオブジェクトを識別する。
 なお、本実施例では、ロボット10が識別するオブジェクトの種類(クラス)は、例えば部屋の種類である。
 本実施例では、セマンティックマップ生成装置50は、ロボット10が走行する走行環境内の部屋を識別し、識別された部屋の種類に応じたクラスを設定したセマンティックマップを生成する。例えば部屋の種類(クラス)に応じて異なる色を設定したセマンティックマップを生成する。
 図3にセマンティックマップ生成装置50が生成するセマンティックマップの例を示す。
 図3には、以下のように部屋の種類に応じて異なる色が設定されたセマンティックマップの例を示ししている。
 リビングルーム=緑
 寝室=青
 バス/トイレ=茶
 キッチン=橙
 玄関=紫
 階段=黒
 子供部屋=黄
 セマンティックマップ生成装置50は、例えば図3に示すような部屋の種類に対応したクラス(識別子)を設定したセマンティックマップを生成して、生成したセマンティックマップをユーザ35が使用するコントローラ(移動体制御装置)30に送信する。
 図4に示すように、ユーザ35は、セマンティックマップ生成装置50から受信したセマンティックマップをコントローラ(移動体制御装置)30の表示部に表示する。
 ユーザ35は、コントローラ(移動体制御装置)30の表示部に表示されたセマンティックマップを確認し、さらに、ユーザ指示、例えば特定の部屋をロボット10の進入禁止領域に設定するなどのユーザ指示情報を入力する。
 ユーザ指示情報の入力により、セマンティックマップの更新処理が実行される。
 すなわち、ユーザ指示情報がセマンティックマップの属性情報としてセマンティックマップに追加記録され、ユーザ指示情報が追加記録された更新セマンティックマップが生成される。
 コントローラ30は、更新されたセマンティックマップ、例えばキッチンがロボット進入禁止領域に設定されたセマンティックマップに基づいて、ロボット10にタスク(例えば掃除)の実行を要求するコマンドを送信する。
 ロボット10は、このコマンドに従い、更新セマンティックマップに従ったタスクを実行する。
 すなわち、キッチンがロボット進入禁止領域として設定されたセマンティックマップに基づいて、キッチンには進入しない走行ルートを設定してタスク(掃除)を実行する。
 このように、本開示の処理では、セマンティックマップ生成装置50が生成したセマンティックマップに対して様々なユーザ指示を入力してセマンティックマップを更新し、更新したセマンティックマップをロボット制御情報として利用する。
 これらの処理により、ユーザの意図に従ったロボットを制御を実現する。
  [2.本開示の移動体制御システムを用いた処理シーケンスの一例について]
 次に、本開示の移動体制御システムを用いた処理シーケンスの一例について説明する。
 図5、図6は、本開示の移動体制御システムを用いた処理のシーケンスの一例について説明するシーケンス図である。
 左から、ロボット10、セマンティックマップ生成装置50、コントローラ30を示しており、各装置の処理、および装置間のデータ送受信処理を、ステップS11からステップS17まで時系列処理として示している。
 以下、図5、図6に示すシーケンス図の各ステップの処理について、順次、説明する。
  (ステップS11)
 まず、ステップS11において、ロボット10が、ロボット走行環境、例えば図1に示すようなある家のフロア等の走行環境を走行してセンサ検出情報(環境情報)を取得する。
 先に説明したように、ロボット10は、カメラや、レーザ光による障害物までの距離を計測するセンサであるLiDAR(Light Detection and Ranging)等のセンサが装着されている。
 なお、ロボット10に装着されるセンサは、カメラやLiDARに限られず、その他、様々な種類のセンサが利用可能である。例えば、ロボットの加速度や角速度等を検出するIMU(慣性計測装置(Inertial Measurement Unit))、ロボットのタイヤの回転数等を検出するオドメトリ装置、さらに、部屋の明るさを検知するための照度センサ、周囲の音声情報を取得するマイク、床面の硬さ・柔らかさ・素材などを推定するための情報を取得する圧力センサ等、様々なセンサが利用可能である。
 ロボット10は、ステップS11において、ロボットの走行中に得られるカメラ撮影画像の他、様々なセンサによるセンサ検出情報(環境情報)を取得する。
 なお、ロボット10が走行中に取得するセンサ検出情報(環境情報)は、セマンティックマップ生成装置50におけるセマンティックマップ生成処理用の学習データとして利用される。
  (ステップS12)
 ロボット10は、ステップS12において、ステップS11で取得したセンサ検出情報(環境情報)を、セマンティックマップ生成装置50に送信する。
 ロボット10は、走行しながら取得したカメラ撮影画像等のセンサ検出情報を順次、セマンティックマップ生成装置50に送信する。
  (ステップS13)
 セマンティックマップ生成装置50は、ロボット10から受信したセンサ検出情報(環境情報)を利用した学習処理を実行して、セマンティックマップを生成する。
 前述したように、例えばニューラルネットワーク(NN:Neural Network)などの学習アルゴリズムを適用した処理により、各画素対応のオブジェクト種類を識別してセマンティックマップを生成する。
 なお、前述したように、本開示の処理において識別するオブジェクト種類は「部屋の種類」である。
 セマンティックマップ生成装置50は、ステップS13において、ロボット10から受信したセンサ検出情報(環境情報)を利用した学習処理を実行して、部屋の種類に応じてクラス分類を実行して、部屋の種類と境界を識別可能としたセマンティックマップを生成する。先に図3、図4を参照して説明したようなセマンティックマップである。
 なお、セマンティックマップ生成装置50がセマンティックマップ生成処理に利用する学習手法は、教師あり学習手法、自己教師あり学習を含む教師なし学習手法等、様々な手法が適用可能である。また、ルールベース手法を利用して機械学習を用いない構成としてもよい。
 セマンティックマップ生成装置50は、さらに、セマンティックマップに設定されるクラス(部屋の種類)単位の様々な特徴を、ロボット10のセンサ検出情報に基づいて解析し、解析結果をクラス属性としてセマンティックマップに記録する。
 セマンティックマップ生成装置50によるセマンティックマップ生成処理やクラス属性設定処理の詳細や、生成するセマンティックマップの具体例については、後段で説明する。
  (ステップS14)
 次に、セマンティックマップ生成装置50は、ステップS14において、ステップS13で生成したセマンティックマップをユーザ35が操作するコントローラ30に送信する。
  (ステップS15)
 次に、ユーザ35は、ステップS15において、セマンティックマップ生成装置50から受信したセマンティックマップをコントローラ(移動体制御装置)30の表示部に表示する。
 ユーザ35は、コントローラ(移動体制御装置)30の表示部に表示されたセマンティックマップを確認し、さらに、ユーザ指示、例えば特定の部屋をロボット10の進入禁止領域に設定するなどのユーザ指示情報を入力する。
 ユーザ指示情報はセマンティックマップのクラス対応の属性情報(ユーザ設定クラス属性)としてセマンティックマップに追加記録され、セマンティックマップの更新処理が実行される。
 すなわち、ユーザ指定情報に基づいて生成されるユーザ設定クラス属性は、セマンティックマップの構成データとしてセマンティックマップデータに追加記録される。
 なお、このステップS15の処理、すなわち、ユーザ指示情報に基づくセマンティックマップに対するクラス属性の記録処理によるセマンティックマップ更新処理の具体例については、後段で詳細に説明する。
  (ステップS16)
 次に、ユーザ35は、ステップS16において、ステップS15で更新したセマンティックマップ、すなわち、ユーザ指示情報に基づくユーザ設定クラス属性を付加した更新セマンティックマップに基づくタスクの実行命令をロボット10に送信する。
 なお、このタスク実行命令の送信時に、ユーザ設定クラス属性を付加した更新セマンティックマップと、タスク情報をロボット10に送信する。
 ユーザ設定クラス属性を付加した更新セマンティックマップは、ロボット10の制御情報、すなわち移動体制御情報として利用される。
  (ステップS17)
 ロボット10は、ステップS17において、コントローラ30が送信したタスク実行命令を受信し、受信したタスク実行命令に従ってタスク(掃除等)を実行する。
 タスクは、更新セマンティックマップを参照して実行される。
 例えば、更新セマンティックマップのユーザ設定クラス属性として、ある1つのクラス、例えば「クラス=キッチン」が進入禁止領域に設定されている場合、キッチンに進入しない走行ルートを設定してタスク(掃除等)を実行する。
 このように本開示の処理では、ユーザ指示情報に基づくクラス属性、すなわちユーザ設定クラス属性を付加した更新セマンティックマップを移動体制御情報として利用することで、ユーザの意図に沿ったロボット制御を実現する。
  [3.セマンティックマップ生成装置によるセマンティックマップ生成処理の具体例と、生成するセマンティックマップの具体例について]
 次に、セマンティックマップ生成装置によるセマンティックマップ生成処理の具体例と、生成するセマンティックマップの具体例について説明する。
 セマンティックマップ生成装置50は、先に説明した図5に示すシーケンス図のステップS13において、ロボット10から受信したセンサ検出情報(環境情報)を利用した学習処理を実行して、セマンティックマップを生成する。
 前述したように、例えばニューラルネットワーク(NN:Neural Network)などの学習アルゴリズムを適用した処理により、各画素対応のオブジェクト種類(部屋種類)を識別して、部屋種類に応じたクラスを設定したセマンティックマップを生成する。
 セマンティックマップ生成装置50は、セマンティックマップを生成する際、セマンティックマップの生成領域に関する地図情報をベースとして利用することが可能である。
 セマンティックマップ生成装置50が、セマンティックマップの生成に利用する地図情報の例について、図7以下を参照して説明する。
 図7には、先に図1を参照して説明した(a)ロボット走行環境と、この「(a)ロボット走行環境」の地図データの一例である「(b1)占有格子地図」を示している。
 「(b1)占有格子地図」は、地図内の矩形領域(グリッド)単位で障害物の占有確率を示す地図である。例えば障害物の占有確率が高い矩形領域(グリッド)は黒、障害物の占有確率が低い領域は白、中間領域はグレー等に設定される。
 この占有格子地図は、ロボット走行環境をロボット10に走行させ、そのセンサ検出情報、例えばカメラ撮影画像等を用いて生成することができる。
 図8には、「(a)ロボット走行環境」の地図データの別の例である「(b2)3次元点群」を示している。
 「(b2)3次元点群」は、障害物の位置に点群を示した地図である。図8に示す「(b2)3次元点群」中の点の位置には障害物が存在することを示している。
 この3次元点群も、ロボット走行環境をロボット10に走行させ、そのセンサ検出情報、例えばカメラ撮影画像等を用いて生成することができる。
 セマンティックマップ生成装置50は、セマンティックマップを生成する際、例えば図7に示すような「(b1)占有格子地図」や、「(b2)3次元点群」をベースの地図として利用可能である。なお、セマンティックマップのベースとして用いる地図は「(b1)占有格子地図」や、「(b2)3次元点群」に限らず、様々な他の形式の2次元地図、3次元地図、トポロジカルマップなども利用可能である。
 図7に示す「(b1)占有格子地図」をベースとしてセマンティックマップを生成する例を図9に示す。
 セマンティックマップ生成装置50は、ロボット10のセンサ検出情報の解析結果に併せて、例えば図9に示す「(b1)占有格子地図」をから検出される情報を利用して部屋の境界などを判別する。例えば、直線的な障害物領域などを部屋の境界となる壁と認識して、部屋の境界等を識別して、各部屋の境界を判定する。さらに、前述したようにロボット10のセンサ検出情報を利用した学習処理などに基づいて、各部屋の種類を判別し、部屋種類単位のクラスを設定したセマンティックマップを生成する。
 図10には、セマンティックマップ生成装置50が生成するセマンティックマップの例と、セマンティックマップ対応のクラス分類例を示している。
 図10右側に示すように、セマンティックマップのクラスは、例えば以下のようなクラスによって構成される。
 クラス識別子001(緑)のクラス(部屋種類)=リビングルーム
 クラス識別子002(橙)のクラス(部屋種類)=キッチン
 クラス識別子003(青)のクラス(部屋種類)=寝室
 クラス識別子004(黄)のクラス(部屋種類)=子供部屋
 クラス識別子005(茶)のクラス(部屋種類)=バス/トイレ
 クラス識別子006(黒)のクラス(部屋種類)=階段
 クラス識別子007(紫)のクラス(部屋種類)=玄関
 セマンティックマップ生成装置50が生成するセマンティックマップには、このように部屋の種類に応じたクラスが設定される。
 なお、本開示のセマンティックマップ生成装置50は、セマンティックマップに設定されたクラス(部屋種類)対応の特徴情報、すなわちロボット10のセンサによって検出されるクラス(部屋種類)対応の特徴情報を属性情報(クラス属性)としてセマンティックマップに記録する。
 図11を参照して、クラス(部屋種類)対応の特徴情報をクラス属性として記録したセマンティックマップの例について説明する。
 なお、先に図5、図6のシーケンス図を参照して説明したように、セマンティックマップ生成装置50は、図5に示す(ステップS13)のセマンティックマップ生成処理に際して、セマンティックマップに設定されるクラス(部屋の種類)単位の様々な特徴を、ロボット10のセンサ検出情報に基づいて解析し、解析結果をクラス属性としてセマンティックマップに記録する。
 また、(ステップS15)においては、ユーザ35が、コントローラ30を用いて、ユーザ指示情報に基づくクラス属性(ユーザ設定クラス属性)をセマンティックマップに記録する。
 図11は、セマンティックマップ生成装置50が図5に示す(ステップS13)において、生成したセマンティックマップ構成データの例である。
 すなわち、セマンティックマップ生成装置50が、ロボット10のセンサ検出情報に基づいてクラス(部屋の種類)単位の様々な特徴を解析して、解析結果をクラス属性として記録したセマンティックマップ構成データの例である。
 図11に示すセマンティックマップ構成データには、セマンティックマップ生成装置50が、センサ検出情報に基づいて生成しれたクラス属性((c)センサ検出情報に基づくクラス属性)が記録されている。
 図11に示すセマンティックマップ構成データには、以下の各情報が含まれる。
 (a)クラス識別子
 (b)クラス(部屋種類)
 (c)センサ検出情報に基づくクラス属性
 上記(a)~(c)の情報中、「(c)センサ検出情報に基づくクラス属性」が、セマンティックマップ生成装置50が生成して記録したクラス属性である。
 セマンティックマップ生成装置50は、ロボット10のセンサ検出値に基いてクラス(部屋種類)対応の特徴を解析し、解析した特徴情報に基づいてこれらのクラス属性を生成して記録する。
 図11には、「(c)センサ検出情報に基づくクラス属性」の具体例として、
 (c1)人の有無
 (c2)床の種類
 例えば、「(c1)人の有無」は、ロボット10のセンサであるカメラの撮影画像や、マイクが取得した音声情報に基づいて判定される。
 また、「(c2)床の種類」は、ロボット10のセンサである圧力センサの取得情報や、マイクが取得したロボット走行時の走行音情報に基づいて判定される。
 本開示のセマンティックマップ生成装置50は、このように、ロボット10のセンサ検出値を解析して、クラス(部屋種類)対応の特徴情報を取得し、これをセマンティックマップのクラス対応の属性情報として記録する。
 図11に示す例では、「(c)センサ検出情報に基づくクラス属性」として、
 (c1)人の有無については、
 クラス(リビングルーム)=人有り
 クラス(キッチン)=人有り
 クラス(寝室)=人無し
 これらのクラス対応属性情報が記録されている。
 また、(c2)床の種類については、
 クラス(リビングルーム)=絨毯
 クラス(キッチン)=フローリング
 クラス(寝室)=絨毯
 これらのクラス対応属性情報が記録されている。
 このセマンティックマップのクラス対応の属性情報は、例えばロボット10によるタスクの実行や、走行ルートの決定処理に利用される。例えば、ロボット10によって実行されるタスクが掃除である場合、人のいる場所は避けて、人のいない場所を優先して掃除する処理などを行うことが可能となる。
 また、騒音低減のためにロボット走行時の速度を床の種類に応じて変更するといった速度制御処理にも利用することができる。
  [4.セマンティックマップ生成装置によるセマンティックマップ生成処理のシーケンスについて]
 次に、セマンティックマップ生成装置によるセマンティックマップ生成処理のシーケンスについて説明する。
 まず、図12に示すフローチャートを参照して、本開示のセマンティックマップ生成装置50によるセマンティックマップ生成処理の基本的なシーケンス例について説明する。
 以下、図12に示すフローの各ステップの処理について、順次、説明する。
  (ステップS101)
 まず、セマンティックマップ生成装置50は、ステップS101において、ロボット10に走行命令を送信し、ロボット10を走行させて、ロボット10に装着されたカメラ等のセンサが検出するセンサ検出データ(学習データ)をロボット10から受信する。
 例えば、図1に示すようなロボット走行環境の全領域をロボット10に走行させ、各位置で検出したセンサ検出情報を入力する。
 なお、この処理は、セマンティックマップ生成のための学習データの収集処理に相当する処理である。
  (ステップS102)
 次に、セマンティックマップ生成装置50は、ステップS102において、ロボット10から受信したセンサ検出データ(学習データ)が、セマンティックマップ生成可能なレベルに達したか否かを判定する。
 例えば、図1に示すようなロボット走行環境の全領域についてのセンサ検出情報が取得できたか否かなどを判定する。
 まだ取得できていない領域がある場合、あるいは十分なセンサ検出情報が得られていない領域がある場合などは、ステップS102の判定をNoとして、ステップS101に戻り、ロボット10の走行処理とセンサ検出情報の取得処理を継続する。
 ステップS102において、ロボット10から受信したセンサ検出データ(学習データ)が、セマンティックマップ生成可能なレベルに達したと判定した場合は、ステップS103に進む。
  (ステップS103)
 次に、セマンティックマップ生成装置50は、ステップS103において、ロボット10から受信したセンサ検出データ(学習データ)を利用したセマンティックマップ生成処理の第1段階処理として、セマンティックス推定処理を実行する。
 具体的には、ロボット10から受信したセンサ検出情報(環境情報)を利用した学習処理を実行して、部屋の種類を推定し、推定した部屋の種類に応じたクラス分類を実行する。
  (ステップS104)
 次に、セマンティックマップ生成装置50は、ステップS104において、ステップS103で推定したクラス(部屋種類)に対応する特徴情報、すなわち、センサ検出情報から得られるクラス(部屋種類)対応の特徴情報をクラス属性(センサ検出情報に基づくクラス属性)として記録したセマンティックマップを生成する。
 これらの処理により、例えば図10~図11を参照して説明したようなセマンティックマップ、すなわち、部屋種類の識別子に相当するクラスが設定されたマップと、各クラスの特徴情報としてのクラス属性が記録されたセマンティックマップが生成される。
 次に、セマンティックマップによって識別される部屋のドアの位置をクラス属性として記録したセマンティックマップの生成処理例について説明する。
 具体的には、例えば、図13に示すようなクラス属性が記録されたセマンティックマップの生成処理である。
 図13には、先に図11を参照して説明したと同様のセマンティックマップ構成データを示している。図13には、以下の各情報を示している。
 (a)クラス識別子
 (b)クラス(部屋種類)
 (c)センサ検出情報に基づくクラス属性
 上記(a)~(c)の情報中、「(c)センサ検出情報に基づくクラス属性」は、セマンティックマップ生成装置50が生成して記録したクラス属性である。
 すなわち、セマンティックマップ生成装置50が、ロボット10のセンサ検出値に基いてクラス(部屋種類)対応の特徴を解析し、解析した特徴情報に基づいて生成して記録したクラス属性である。
 図13には、「(c)センサ検出情報に基づくクラス属性」の具体例として、
 (c1)人の有無
 (c2)床の種類
 (c3)ドア位置(マップ中のドア位置座標)
 前述したように、例えば、「(c1)人の有無」は、ロボット10のセンサであるカメラの撮影画像や、マイクが取得した音声情報に基づいて判定される。
 また、「(c2)床の種類」は、ロボット10のセンサである圧力センサの取得情報や、マイクが取得したロボット走行時の走行音情報に基づいて判定される。
 これらは、先に図11を参照して説明したクラス属性である。
 「(c3)ドア位置(マップ中のドア位置座標)」は、セマンティックマップによって識別される部屋のドアの位置に関する情報である。
 具体的には、例えば図14に示すようなセマンティックマップにおける寝室のドア位置や、子供部屋のドア位置を記録する。
 ドアの位置情報は、例えば図14に示すセマンティックマップの左下端を原点としたXY座標におけるXY座標データを用いて記録する。
 なお、このドアの位置情報は、ロボット10のセンサ検出情報、例えばカメラ撮影画像の解析によって得ることができる。
 図14に示すように、寝室のドア位置は(x1,y1)~(x2,y2)の位置にあり、子供部屋のドア位置は(x3,y3)~(x4,y4)の位置にある。
 これらの座標位置データを図13に示すように各クラス対応属性として記録する。
 すなわち、
 寝室クラスのクラス属性として、ドア位置=(x1,y1)~(x2,y2)、
 子供部屋クラスのクラス属性として、ドア位置=(x3,y3)~(x4,y4)、
 これらのクラス属性を記録する。
 この図13に示すデータを有するセマンティックマップを生成するシーケンスについて、図15に示すフローチャートを参照して説明する。
 以下、図15に示すフローの各ステップの処理について、順次、説明する。
  (ステップS121~S124)
 ステップS121~S124の処理は、先に図12を参照して説明したフローチャートのステップS101~S104の処理と同様の処理である。
 まず、ステップS121において、セマンティックマップ生成装置50は、ロボット10を走行させて、ロボット10に装着されたカメラ等のセンサが検出するセンサ検出データ(学習データ)をロボット10から受信する。
 次に、ステップS122において、ロボット10から受信したセンサ検出データ(学習データ)が、セマンティックマップ生成可能なレベルに達したか否かを判定する。
 ロボット10から受信したセンサ検出データ(学習データ)が、セマンティックマップ生成可能なレベルに達したと判定した場合は、ステップS123に進む。
 次に、セマンティックマップ生成装置50は、ステップS123において、ロボット10から受信したセンサ検出データ(学習データ)を利用したセマンティックマップ生成処理の第1段階処理として、セマンティックス推定処理を実行する。
 具体的には、ロボット10から受信したセンサ検出情報(環境情報)を利用した学習処理を実行して、部屋の種類を推定し、推定した部屋の種類に応じたクラス分類を実行する。
 次に、セマンティックマップ生成装置50は、ステップS124において、ステップS123で推定したクラス(部屋種類)に対応する特徴情報、すなわち、センサ検出情報から得られるクラス(部屋種類)対応の特徴情報をクラス属性(センサ検出情報に基づくクラス属性)として記録したセマンティックマップを生成する。
  (ステップS125)
 さらに、セマンティックマップ生成装置50は、ステップS125において、センサ検出情報に基づいて、部屋のドアの位置を解析し、セマンティックマップのクラスに対応する属性情報、すなわちクラス属性としてドアの位置座標を記録する。
 これらの処理により、例えば図13を参照して説明したドアの位置座標がクラス属性として記録されたセマンティックマップが生成される。
 次に、セマンティックマップのクラス属性を時間対応の情報として記録したセマンティックマップの生成処理例について説明する。
 セマンティックマップにおいて識別される部屋の各々には人がいる部屋と人がいない部屋がある。また、人がいる時間帯は各部屋によって異なる。
 具体例について、図16を参照して説明する。
 図16には、2つの異なる時間に部屋にいる人の例を示している。
 (a)am8時
 (b)am3時
 (a)am8時は、朝の時間であり、リビングルームとキッチンに人がいる状態である。
 (b)am3時は、深夜であり、寝室と、子供部屋に人がいる状態である。
 このようにどの部屋に人がいるか否かは、時間帯によってほぼ決まっている。
 このように部屋単位の人の有無情報は、時間帯によって異なるのが普通であり、セマンティックマップのクラス属性として部屋に人がいるか否かを記録する場合、時間対応の属性情報として記録することが有効である。
 時間対応のクラス属性を記録したセマンティックマップ構成データの例を図17に示す。
 図17には、先に図11や図13を参照して説明したと同様のセマンティックマップ構成データを示している。図17には、以下の各情報を示している。
 (a)クラス識別子
 (b)クラス(部屋種類)
 (c)センサ検出情報に基づく時間対応クラス属性
 上記(a)~(c)の情報中、「(c)センサ検出情報に基づく時間対応クラス属性」が、時間対応のクラス属性である。図17に示す例は、
 (c(t1))時間8:00~18:00の人の有無
 (c(t2))時間22:00~7:00の人の有無
 これらの時間対応クラス属性を記録した例である。
 これらの「人の有無」は、ロボット10のセンサであるカメラの撮影画像や、マイクが取得した音声情報に基づいて判定される。
 「(c(t1))時間8:00~18:00の人の有無」は、ロボット10を時間8:00~18:00の間に移動させて得られたカメラの撮影画像や、マイク取得音声に基づいて判定された時間対応のクラス属性である。
 また、「(c(t2))時間22:00~7:00の人の有無」は、ロボット10を時間22:00~7:00の間に移動させて得られたカメラの撮影画像や、マイク取得音声に基づいて判定された時間対応のクラス属性である。
 この図17に示すデータを有するセマンティックマップを生成するシーケンスについて、図18に示すフローチャートを参照して説明する。
 以下、図18に示すフローの各ステップの処理について、順次、説明する。
  (ステップS151~S154)
 ステップS151~S154の処理は、先に図12を参照して説明したフローチャートのステップS101~S104の処理と同様の処理である。
 まず、ステップS151において、セマンティックマップ生成装置50は、ロボット10を走行させて、ロボット10に装着されたカメラ等のセンサが検出するセンサ検出データ(学習データ)をロボット10から受信する。
 次に、ステップS152において、ロボット10から受信したセンサ検出データ(学習データ)が、セマンティックマップ生成可能なレベルに達したか否かを判定する。
 ロボット10から受信したセンサ検出データ(学習データ)が、セマンティックマップ生成に必要なデータに達したと判定した場合は、ステップS153に進む。
 次に、セマンティックマップ生成装置50は、ステップS153において、ロボット10から受信したセンサ検出データ(学習データ)を利用したセマンティックマップ生成処理の第1段階処理として、セマンティックス推定処理を実行する。
 具体的には、ロボット10から受信したセンサ検出情報(環境情報)を利用した学習処理を実行して、部屋の種類を推定し、推定した部屋の種類に応じたクラス分類を実行する。
 次に、セマンティックマップ生成装置50は、ステップS154において、ステップS153で推定したクラス(部屋種類)に対応する特徴情報、すなわち、センサ検出情報から得られるクラス(部屋種類)対応の特徴情報をクラス属性(センサ検出情報に基づくクラス属性)として記録したセマンティックマップを生成する。
  (ステップS155)
 さらに、セマンティックマップ生成装置50は、ステップS155において、センサ検出データの入力時間に基づいて、セマンテッィクマップの時間対応クラス属性情報を記録する。
 例えば、各クラス(部屋)の人の有無情報を時間対応クラス属性情報として記録する。
 これらの処理により、例えば図17を参照して説明したように、各クラス(部屋)の人の有無情報を時間対応クラス属性として記録したセマンティックマップが生成される。
  [5.ユーザによるクラス対応属性情報の入力処理によるセマンティックマップ更新処理の具体例について]
 次に、ユーザによるクラス対応属性情報の入力処理によるセマンティックマップ更新処理の具体例について説明する。
 以下では、先に図5、図6のシーケンス図を参照して説明した(ステップS15)の処理の具体例について説明する。
 先に図5、図6のシーケンス図を参照して説明した(ステップS15)では、ユーザ35が、セマンティックマップ生成装置50から受信したセマンティックマップをコントローラ(移動体制御装置)30の表示部に表示し、ユーザ指示、例えば特定の部屋をロボット10の進入禁止領域に設定するなどのユーザ指示情報を入力して、ユーザ指示情報をクラス属性としてセマンティックマップに追加するセマンティックマップ更新処理を実行する。
 ユーザ35によってコントローラ30に入力されるユーザ指示情報は、「ユーザ設定クラス属性」としてセマンティックマップに記録される。
 図19以下を参照して、セマンティックマップに対する「ユーザ設定クラス属性」記録処理と、記録された「ユーザ設定クラス属性」の利用例に関する以下の複数の実施例について、順次、説明する。
 (実施例1)屋内を移動するロボット用のセマンティックマップに対して、ユーザ設定クラス属性として、クラス単位のロボット動作可能領域と動作禁止領域を記録して利用する実施例
 (実施例2)屋内を移動するロボット用のセマンティックマップに対して、ユーザ設定クラス属性として、クラス単位の進入可能領域と進入禁止領域を記録して利用する実施例
 (実施例3)屋外を移動するロボット用のセマンティックマップに対して、ユーザ設定クラス属性として、クラス単位の進入可能領域と進入禁止領域を記録して利用する実施例
 (実施例4)屋外を移動するロボット用のセマンティックマップに対して、ユーザ設定クラス属性として、クラス単位の移動可能領域と移動禁止領域を記録して利用する実施例
 (実施例5)屋内を移動するロボット用のセマンティックマップに対して、ユーザ設定クラス属性として、時間対応のクラス属性を記録して利用する実施例
  (5-1.(実施例1)屋内を移動するロボット用のセマンティックマップに対して、ユーザ設定クラス属性として、クラス単位のロボット動作可能領域と動作禁止領域を記録して利用する実施例)
 まず、(実施例1)として、屋内を移動するロボット用のセマンティックマップに対して、ユーザ設定クラス属性として、クラス単位のロボット動作可能領域と動作禁止領域を記録して利用する実施例について説明する。
 図19は、先に図5、図6のシーケンス図を参照して説明した(ステップS15)において、本実施例1の処理を行う場合のユーザ操作の具体例を説明する図である。
 先に図5、図6のシーケンス図を参照して説明した(ステップS15)では、ユーザ35が、セマンティックマップ生成装置50から受信したセマンティックマップをコントローラ(移動体制御装置)30の表示部に表示する。
 ユーザ35は、表示部に表示されたセマンティックマップを利用して、色別表示がなされたクラス(部屋)を指定して、クラス(部屋)単位で、ロボット10の動作可能領域と、動作禁止領域を設定する。
 このようなユーザ操作によって、セマンティックマップ生成装置50が生成したセマンティックマップに対して、ユーザ操作に従ったユーザ設定クラス属性が追記され、セマンティックマップ生成装置50が生成したセマンティックマップの更新処理が実行される。
 具体的には、ユーザの入力により、図20に示すようなセマンティックマップ構成データが生成される。
 図20に示すセマンティックマップ構成データには以下の各データが含まれる。
 (a)クラス識別子
 (b)クラス(部屋種類)
 (c)センサ検出情報に基づくクラス属性
 (d)ユーザ設定クラス属性
 上記(a)~(d)の情報中、「(c)センサ検出情報に基づくクラス属性」は、セマンティックマップ生成装置50がセマンティックマップ生成時に記録したクラス属性であり、ロボット10のセンサによって検出されるクラス(部屋種類)対応の特徴情報から生成されたクラス属性である。
 これに対して、上記(a)~(d)の情報中、「(d)ユーザ設定クラス属性」は、図19を参照して説明したユーザ操作によってセマンティックマップに追記されたクラス属性である。
 図19を参照して説明したように、ユーザ35は、コントローラ30に表示されたセマンティックマップに含まれるクラス(部屋)各々にロボット10の動作可能領域と、動作禁止領域を設定する。
 この処理の結果、図20の「(d)ユーザ設定クラス属性」に示すように、セマンティックマップを構成するクラス(部屋)各々のクラス属性として、ロボット10の動作可能領域と、動作禁止領域が記録され、セマンティックマップの更新処理が実行される。
 更新セマンティックマップには、図20に示すように以下の「(d)ユーザ設定クラス属性」が設定されている。
 (d1)クラス属性=動作可能or禁止、
 クラス(リビングルーム)=可能
 クラス(キッチン)=可能
 クラス(寝室)=禁止
 クラス(子供部屋)=可能
 クラス(バス/トイレ)=禁止
   :
 これらのユーザ設定クラス属性が記録されている。
 このように、ユーザ指示情報がセマンティックマップのクラス属性として追加記録され、セマンティックマップ生成装置50が生成したセマンティックマップの更新処理が実行される。
 コントローラ30は、更新されたセマンティックマップ、例えば図20に示すような各クラス(部屋種類)単位の動作可能、禁止情報がクラス属性として設定されたセマンティックマップに基づいてロボット10にタスク、例えば掃除の実行を要求するコマンドを送信する。
 ロボット10は、このコマンドに基づいてタスク(例えば掃除)を実行する。
 ロボット10は、ユーザ35によって更新されたセマンティックマップ、すなわち各クラス(部屋種類)単位の動作可能、禁止情報がクラス属性として設定されたセマンティックマップに基づいてタスク(例えば掃除)を実行する。
 ロボット10は、更新されたセマンティックマップのユーザ設定クラス属性を参照して、クラス(寝室)と、クラス(バス/トイレ)の2つのクラスがロボット動作禁止領域として設定されていることを確認し、寝室とバス/トイレを避けた走行ルートを設定してタスク(掃除)を実行する。
 このように、ユーザ指示情報をセマンティックマップのクラス属性として記録することで、ロボット10をユーザの意図に従って動作させることが可能となる。
  (5-2.(実施例2)屋内を移動するロボット用のセマンティックマップに対して、ユーザ設定クラス属性として、クラス単位の進入可能領域と進入禁止領域を記録して利用する実施例)
 次に、(実施例2)として、屋内を移動するロボット用のセマンティックマップに対して、ユーザ設定クラス属性として、クラス単位の進入可能領域と進入禁止領域を記録して利用する実施例について説明する。
 図21は、本実施例2の処理を行う場合のユーザ操作の具体例を説明する図である。
 ユーザ35は、セマンティックマップ生成装置50から受信したセマンティックマップをコントローラ(移動体制御装置)30の表示部に表示し、表示したセマンティックマップを利用して、色別表示がなされたクラス(部屋)を指定して、クラス(部屋)単位で、ロボット10の進入可能領域と、進入禁止領域を設定する。
 このようなユーザ操作によって、セマンティックマップ生成装置50が生成したセマンティックマップに対して、ユーザ操作に従ったユーザ設定クラス属性が追記され、セマンティックマップが更新される。
 具体的には、図22に示すような(d)ユーザ設定クラス属性が追記される。
 なお、図22に示すセマンティックマップ構成データは、(a)クラス識別子、(b)クラス(部屋種類)、(d)ユーザ設定クラス属性のみを示している。
 セマンティックマップ生成装置50がセマンティックマップ生成時に記録したクラス属性である「(c)センサ検出情報に基づくクラス属性」は省略して示している。
 図22に示すセマンティックマップ構成データ中の「(d)ユーザ設定クラス属性」が、図21を参照して説明したユーザ操作によってセマンティックマップに追記されたクラス属性である。
 更新セマンティックマップには、図22に示すように以下の「(d)ユーザ設定クラス属性」が設定されている。
 (d1)クラス属性=進入可能として、
 クラス(リビングルーム)=可能
 クラス(キッチン)=可能
 クラス(寝室)=可能
 クラス(子供部屋)=可能
 クラス(バス/トイレ)=可能
 クラス(玄関)=可能
   :
 さらに、(d2)クラス属性=進入禁止として、
 クラス(階段)=禁止
 これらのユーザ設定クラス属性が記録されている。
 このように、ユーザ指示情報がセマンティックマップのクラス属性として追加記録され、更新セマンティックマップが生成される。
 コントローラ30は、更新されたセマンティックマップ、例えば図22に示すような各クラス(部屋種類)単位の進入可能、禁止情報がクラス属性として設定されたセマンティックマップに基づいてロボット10にタスク、例えば掃除の実行を要求するコマンドを送信する。
 ロボット10は、このコマンドに基づいてタスク(例えば掃除)を実行する。
 ロボット10は、ユーザ35によって更新されたセマンティックマップ、すなわち各クラス(部屋種類)単位の進入可能、禁止情報がクラス属性として設定されたセマンティックマップに基づいてタスク(例えば掃除)を実行する。
 ロボット10は、更新されたセマンティックマップのユーザ設定クラス属性を参照して、クラス(階段)がロボット進入禁止領域として設定されていることを確認し、階段を避けた走行ルートを設定してタスク(掃除)を実行する。
 このように、ユーザ指示情報をセマンティックマップのクラス属性として記録することで、ロボット10をユーザの意図に従って動作させることが可能となる。
  (5-3.(実施例3)屋外を移動するロボット用のセマンティックマップに対して、ユーザ設定クラス属性として、クラス単位の接近可能領域と接近禁止領域を記録して利用する実施例)
 次に、(実施例3)として、屋外を移動するロボット用のセマンティックマップに対して、ユーザ設定クラス属性として、クラス単位の接近可能領域と接近禁止領域を記録して利用する実施例について説明する。
 図23は、本実施例3のロボット10、すなわち、屋外を移動するロボット10とロボット移動領域の例を示した図である。
 まず、セマンティックマップ生成装置50は、人工衛星70が撮影した画像を利用して、ロボット10が走行する領域の地図を生成する。生成する地図はセマンティックマップ生成のためのベースとする地図である。
 その後、ロボット10が、セマンティックマップ生成装置50の生成地図を利用して図23に示す屋外の走行環境を走行してセンサ検出情報(環境情報)を取得する。
 先に説明したように、ロボット10は、カメラや、レーザ光による障害物までの距離を計測するセンサであるLiDAR(Light Detection and Ranging)等のセンサが装着されており、これらのセンサによるセンサ検出情報が、セマンティックマップ生成装置50に送信される。
 セマンティックマップ生成装置50は、ロボット10から受信したセンサ検出情報を利用した学習処理を実行して、セマンティックマップを生成する。
 例えば図24に示すようなセマンティックマップを生成する。
 例えば、図24に示すようにセマンティックマップは以下のクラス分類がなされたマップとして生成される。
 クラス識別子001のクラス(オブジェクト種類)=道路
 クラス識別子002のクラス(オブジェクト種類)=ビル
 クラス識別子003のクラス(オブジェクト種類)=家
 クラス識別子004のクラス(オブジェクト種類)=植物
 クラス識別子005のクラス(オブジェクト種類)=燃料貯蔵庫
 セマンティックマップ生成装置50が生成するセマンティックマップは、このようにオブジェクトの種類に応じたクラスが設定される。
 セマンティックマップ生成装置50が生成したセマンティックマップは、ユーザ35が操作するコントローラ30に送信される。
 図25に示すように、ユーザ35は、セマンティックマップ生成装置50から受信したセマンティックマップをコントローラ(移動体制御装置)30の表示部に表示し、表示したセマンティックマップを利用して、色別表示がなされたクラス(オブジェクト)を指定して、クラス(オブジェクト)単位で、ロボット10の接近可能領域と、接近禁止領域を設定する。
 ユーザは、例えば、クラス(燃料貯蔵庫)を接近禁止領域として設定する。
 このようなユーザ操作によって、セマンティックマップ生成装置50が生成したセマンティックマップに対して、ユーザ操作に従ったユーザ設定クラス属性が追記され、セマンティックマップが更新される。
 具体的には、図26に示すような(d)ユーザ設定クラス属性が追記される。
 図26に示すセマンティックマップ構成データ中の「(d)ユーザ設定クラス属性」が、図25を参照して説明したユーザ操作によってセマンティックマップに追記されたクラス属性である。
 更新セマンティックマップには、図26に示すように以下の「(d)ユーザ設定クラス属性」が設定されている。
 (d1)クラス属性=接近可能として、
 クラス(道路)=可能
 クラス(ビル)=可能
 クラス(家)=可能
 クラス(植物)=可能
   :
 さらに、(d2)クラス属性=接近禁止として
 クラス(燃料貯蔵庫)=禁止
 これらのユーザ設定クラス属性が記録されている。
 このように、ユーザ指示情報がセマンティックマップのクラス属性として追加記録され、更新セマンティックマップが生成される。
 コントローラ30は、更新されたセマンティックマップ、例えば図26に示すような各クラス(オブジェクト)単位の接近可能、禁止情報がクラス属性として設定されたセマンティックマップに基づいてロボット10にタスク、例えば荷物の配送を要求するコマンドを送信する。
 ロボット10は、このコマンドに基づいてタスク(例えば荷物配送)を実行する。
 ロボット10は、ユーザ35によって更新されたセマンティックマップ、すなわち各クラス(オブジェクト)単位の接近可能、禁止情報がクラス属性として設定されたセマンティックマップに基づいてタスク(例えば荷物配送)を実行する。
 ロボット10は、更新されたセマンティックマップのユーザ設定クラス属性を参照して、クラス(燃料貯蔵庫)がロボット接近禁止領域として設定されていることを確認し、燃料貯蔵庫を避けた走行ルートを設定してタスク(荷物配送)を実行する。
 例えば、図27に示すように、荷物配送の目的地がAさん宅である場合、図に示す道路上の矢印に示すように、燃料貯蔵庫を避けた走行ルートを設定してタスク(荷物配送)を実行する。
 このように、ユーザ指示情報をセマンティックマップのクラス属性として記録することで、ロボット10をユーザの意図に従って動作させることが可能となる。
  (5-4.(実施例4)屋外を移動するロボット用のセマンティックマップに対して、ユーザ設定クラス属性として、クラス単位の移動可能領域と移動禁止領域を記録して利用する実施例)
 次に、(実施例4)として、屋外を移動するロボット用のセマンティックマップに対して、ユーザ設定クラス属性として、クラス単位の移動可能領域と移動禁止領域を記録して利用する実施例について説明する。
 図28は、本実施例4のロボット10、すなわち、屋外を移動するロボット10とロボット移動可能領域の例を示した図である。
 まず、セマンティックマップ生成装置50は、人工衛星70が撮影した画像を利用して、ロボット10が走行する領域の地図を生成する。生成する地図はセマンティックマップ生成のためのベースとする地図である。
 その後、ロボット10が、セマンティックマップ生成装置50の生成地図を利用して図28に示す屋外の走行環境を走行してセンサ検出情報(環境情報)を取得する。
 先に説明したように、ロボット10は、カメラや、レーザ光による障害物までの距離を計測するセンサであるLiDAR(Light Detection and Ranging)等のセンサが装着されており、これらのセンサによるセンサ検出情報が、セマンティックマップ生成装置50に送信される。
 セマンティックマップ生成装置50は、ロボット10から受信したセンサ検出情報を利用した学習処理を実行して、セマンティックマップを生成する。
 例えば図29に示すようなセマンティックマップを生成する。
 例えば、図29に示すようにセマンティックマップは以下のクラス分類がなされたマップとして生成される。
 クラス識別子001のクラス(オブジェクト種類)=道路
 クラス識別子002のクラス(オブジェクト種類)=ビル
 クラス識別子003のクラス(オブジェクト種類)=家
 クラス識別子004のクラス(オブジェクト種類)=植物
 クラス識別子005のクラス(オブジェクト種類)=森林
 セマンティックマップ生成装置50が生成するセマンティックマップは、このようにオブジェクトの種類に応じたクラスが設定される。
 セマンティックマップ生成装置50が生成したセマンティックマップは、ユーザ35が操作するコントローラ30に送信される。
 図30に示すように、ユーザ35は、セマンティックマップ生成装置50から受信したセマンティックマップをコントローラ(移動体制御装置)30の表示部に表示し、表示したセマンティックマップを利用して、色別表示がなされたクラス(オブジェクト)を指定して、クラス(オブジェクト)単位で、ロボット10の移動可能領域と、移動禁止領域を設定する。
 ユーザは、例えば、クラス(森林)を移動禁止領域として設定する。
 このようなユーザ操作によって、セマンティックマップ生成装置50が生成したセマンティックマップに対して、ユーザ操作に従ったユーザ設定クラス属性が追記され、セマンティックマップが更新される。
 具体的には、図31に示すような(d)ユーザ設定クラス属性が追記される。
 図31に示すセマンティックマップ構成データ中の「(d)ユーザ設定クラス属性」が、図30を参照して説明したユーザ操作によってセマンティックマップに追記されたクラス属性である。
 更新セマンティックマップには、図31に示すように以下の「(d)ユーザ設定クラス属性」が設定されている。
 (d1)クラス属性=移動可能、
 クラス(道路)=可能
 クラス(ビル)=可能
 クラス(家)=可能
 クラス(植物)=可能
   :
 さらに、(d2)クラス属性=移動禁止として
 クラス(森林)=禁止
 これらのユーザ設定クラス属性が記録されている。
 このように、ユーザ指示情報がセマンティックマップのクラス属性として追加記録され、更新セマンティックマップが生成される。
 コントローラ30は、更新されたセマンティックマップ、例えば図31に示すような各クラス(オブジェクト)単位の移動可能、禁止情報がクラス属性として設定されたセマンティックマップに基づいてロボット10にタスク、例えば荷物の配送を要求するコマンドを送信する。
 ロボット10は、このコマンドに基づいてタスク(例えば荷物配送)を実行する。
 ロボット10は、ユーザ35によって更新されたセマンティックマップ、すなわち各クラス(オブジェクト)単位の移動可能、禁止情報がクラス属性として設定されたセマンティックマップに基づいてタスク(例えば荷物配送)を実行する。
 ロボット10は、更新されたセマンティックマップのユーザ設定クラス属性を参照して、クラス(森林)がロボット移動禁止領域として設定されていることを確認し、森林を避けた走行ルートを設定してタスク(荷物配送)を実行する。
 例えば、図32に示すように、荷物配送の目的地がAさん宅である場合、図に示す道路上の矢印に示すように、森林を避けた走行ルートを設定してタスク(荷物配送)を実行する。
 このように、ユーザ指示情報をセマンティックマップのクラス属性として記録することで、ロボット10をユーザの意図に従って動作させることが可能となる。
  (5-5.(実施例5)屋内を移動するロボット用のセマンティックマップに対して、ユーザ設定クラス属性として、時間対応のクラス属性を記録して利用する実施例)
 次に、(実施例5)として、屋内を移動するロボット用のセマンティックマップに対して、ユーザ設定クラス属性として、時間対応のクラス属性を記録して利用する実施例について説明する。
 先に、図16~図18を参照して、セマンティックマップ生成装置50がマンティックマップに「センサ検出情報に基づくクラス属性」を記録する際に時間対応クラス属性を生成して設定する処理について説明した。
 ユーザ35もユーザ設定クラス属性を時間対応のクラス属性としてセマンティックマップに追加することができる。
 実施例5は、このようなユーザによる時間対応クラス属性を追加記録する処理例である。
 例えば図33に示すように、セマンティックマップにおいて識別される部屋の各々に人がいる時間帯は部屋によって異なる。
 図33には、2つの異なる時間に部屋にいる人の例を示している。
 (a)am8時
 (b)pm4時
 (a)am8時は、朝の時間であり、リビングルームに人がいる状態である。
 (b)pm4時は、夕方であり、キッチンと、子供部屋に人がいる状態である。
 このようにどの部屋に人がいるか否かは、時間帯によって異なる。
 ユーザ35は、セマンティックマップ生成装置50が生成したセマンティックマップにユーザ設定クラス属性を追加記録する際、時間対応の属性情報として記録する。
 時間対応のユーザ設定クラス属性を記録したセマンティックマップ構成データの例を図34に示す。
 図34には、「(d)ユーザ設定時間対応クラス属性」を追加記録したセマンティックマップ構成データを示している。
 図34に示す「(d)ユーザ設定時間対応クラス属性」が、ユーザ35が設定した時間対応のクラス属性である。図34に示す例は、
 (d(t1))時間7:00~9:00の動作可能/禁止情報
 (d(t2))時間14:00~16:00の動作可能/禁止情報
 これらの時間対応クラス属性を記録した例である。
 コントローラ30は、更新されたセマンティックマップ、例えば図34に示すような時間対応のクラス属性として部屋単位の動作可能、禁止情報を設定したセマンティックマップに基づいてロボット10にタスク、例えば掃除の実行を要求するコマンドを送信する。
 ロボット10は、このコマンドに基づいてタスク(例えば掃除)を実行する。
 ロボット10は、ユーザ35によって更新されたセマンティックマップ、すなわち時間別の各クラス(部屋種類)単位の動作可能、禁止情報がクラス属性として設定されたセマンティックマップに基づいてタスク(例えば掃除)を実行する。
 ロボット10は、更新されたセマンティックマップのユーザ設定時間対応クラス属性を参照して、タスク(掃除)の実行時間に応じて、適用するユーザ設定時間対応クラス属性を選択して、タスク(掃除)を実行する。
 例えば、タスク(掃除)実行時間が、8:00であれば、セマンティックマップのユーザ設定時間対応クラス属性中の、
 (d(t1))時間700~9:00の動作可能/禁止情報
 この時間対応クラス属性を参照して、クラス(子供部屋)のみがロボット動作可能であることを確認し、子供部屋を掃除するための走行ルートを設定してタスク(掃除)を実行する。
 また、タスク(掃除)実行時間が、15:00であれば、セマンティックマップのユーザ設定時間対応クラス属性中の、
 (d(t2))時間14:00~16:00の動作可能/禁止情報
 この時間対応クラス属性を参照して、クラス(リビングルーム)、クラス(キッチン)、クラス(寝室)がロボット動作可能であることを確認し、これらの各部屋を掃除するための走行ルートを設定してタスク(掃除)を実行する。
 このように、ユーザ指示情報をセマンティックマップのクラス属性として記録することで、ロボット10をユーザの意図に従って動作させることが可能となる。
  [6.各装置の構成例について]
 次に、各装置の構成例について説明する。
 図35には、ロボット10、コントローラ30、セマンティックマップ生成装置50の各装置の構成例を示している。
 図に示すように、ロボット10は、センサ11、通信部12、駆動部13、タスク実行部14、記憶部15を有する。
 コントローラ30は、表示部(モニター)31、セマンティックマップ更新部32、タスク指定部33、入力部34、通信部35、記憶部36を有する。
 セマンティックマップ生成装置50は、地図生成部51、センサ情報取得部52、記憶部53、学習データ生成部54、セマンティックマップ生成部55、センサ情報加工部56、通信部57を有する。
 ロボット10のセンサ11は、前述したように、カメラや、レーザ光による障害物までの距離を計測するセンサであるLiDAR(Light Detection and Ranging)、さらにロボットの加速度や角速度等を検出するIMU(慣性計測装置(Inertial Measurement Unit)、ロボットのタイヤの回転数等を検出するオドメトリ装置、さらに、部屋の明るさを検知するための照度センサ、周囲の音声情報を取得するマイク、床面の硬さ・柔らかさ・素材などを推定するための情報を取得する圧力センサ等、様々なセンサによって構成される。
 通信部12は、コントローラ30、およびセマンティックマップ生成装置50との通信を実行する。
 駆動部13は、ロボット10の移動など、様々なタスク実行のためのロボット駆動処理を実行する。
 タスク実行部14は、コントローラ30などから入力されるタスク実行命令に従ってロボット10にタスクを実行させるための制御を行う。
 記憶部15は、ロボット10が実行するタスクのプログラム、制御パラメータ、さらに、コントローラ30や、セマンティックマップ生成装置50等から入力するコマンドやセマンティックマップ、その他の地図情報などの様々なデータを記憶する。
 コントローラ30の表示部(モニター)31は、例えばセマンティックマップ生成装置50から入力するセマンティックマップなどを表示する。
 なお、表示部31はタッチパネル形式の入力部としても機能する。
 セマンティックマップ更新部32は、表示部31に表示されたセマンティックマップを利用してユーザが入力した情報、例えばユーザ設定クラス属性に基づいて、セマンティックマップの更新処理を実行する。
 タスク指定部33は、ロボット10に実行させるタスク、例えば掃除や、荷物配送などのタスクを指定する。
 入力部34は、タスク実行コマンドの送信、表示部31に表示されたセマンティックマップに対するユーザ設定タスク情報の入力などに利用される。
 通信部35は、ロボット10や、セマンティックマップ生成装置50との通信処理を実行する。
 記憶部36は、セマンティックマップ生成装置50から受信したセマンティックマップや、ユーザによって入力されたクラス属性を記録した更新セマンティックマップ、さらに、様々なタスク実行コマンド、ロボット制御用パラメータなどが記憶される。
 セマンティックマップ生成装置50の地図生成部51は、セマンティックマップ生成用のベースとなる地図、例えば図7を参照して説明した占有格子地図、あるいは図8を参照して説明した3次元点群地図、その他の地図を生成。または外部から取得する処理を実行する。
 センサ情報取得部52は、ロボット10のセンサ11が取得したセンサ検出情報を、通信部57を介して取得する。
 記憶部53は、地図生成部51が生成した地図や、セマンティックマップ、その他、様々なデータを記憶する。
 学習データ生成部54は、セマンティックマップ生成処理のために必要となる学習データを生成する。
 学習データは、例えば、ロボット10のセンサ11が取得したセンサ検出情報に基づいて生成される。
 セマンティックマップ生成部55は、学習データ生成部54が生成した学習データを利用した学習処理を実行してセマンティックマップを生成する。
 前述したように、セマンティックマップは、セマンティックマッピングによって生成される。
 セマンティックマッピングは、ロボット10が管理する環境のマップの各座標が属するクラスの種類を識別する処理である。
 例えば、識別したオブジェクトの種類に応じてクラスを設定し、オブジェクト種類(=クラス)に応じた色や識別子を設定する。
 セマンティックマッピングは、例えば多層型のニューラルネットワークであるディープニューラルネットワーク(DNN:Deap Neural Network)や、畳み込みニューラルネットワーク(CNN:Convolutional Neural Network)、あるいは再帰型ニューラルネットワーク(RNN:Recurrent Neural Network)などのアルゴリズムを適用した学習モデルを利用して実行可能であり、例えば画像から得られる特徴量に基づいて各画素対応のオブジェクトを識別する。
 セマンティックマップ生成部55は、例えば、ロボット10が走行する走行環境内の部屋を識別し、識別された部屋の種類に応じたクラス設定をしたセマンティックマップを生成する。
 センサ情報加工部56は、ロボット10のセンサの検出値に基づく加工情報を生成する。例えばロボット10のセンサであるカメラの検出値として取得される撮影画像から、特徴点を抽出する処理などを実行する。この特徴点データは、セマンティックマップ生成部55に入力され、セマンティックマップ生成処理に利用される。
 通信部57は、ロボット10、コントローラ30と通信を実行する。
 なお、図35に示すシステム構成では、ロボット10、コントローラ30、セマンティックマップ生成装置50が相互に通信可能な構成である。
 これらの構成中、例えばセマンティックマップ生成装置50は、図36に示すようにクラウドサーバに設定した構成としてもよい。
 また、コントローラ30とセマンティックマップ生成装置50を一体化した構成としてもよい。例えば図37に示すように、コントローラ30にセマンティックマップ生成装置50の機能を内蔵した構成とする。
 図37に示すシステムでは、コントローラ30がセマンティックマップを生成し、さらにユーザ設定クラス属性を設定する処理などを全て実行する。
 図37に示す構成とした場合、コントローラ30内部には、先に図35を参照して説明したセマンティックマップ生成装置50の処理部が構成されることになる。
 すなわち、具体的には、図38に示すように、コントローラ30の内部に、地図生成部51、センサ情報取得部52、記憶部53、学習データ生成部54、セマンティックマップ生成部55、センサ情報加工部56が構成される。
  [7.各装置のハードウェア構成例について]
 次に、図39を参照して、ロボット10や、コントローラ30、セマンティックマップ生成装置50のハードウェア構成例について説明する。
 図39に示すハードウェア構成は、これらの装置として適用可能なハードウェア構成の一例を示すものである。
 図39に示すハードウェアの各構成について説明する。
 CPU(Central Processing Unit)101は、ROM(Read Only Memory)102、または記憶部108に記憶されているプログラムに従って各種の処理を実行するデータ処理部として機能する。例えば、上述した実施例において説明したシーケンスに従った処理を実行する。RAM(Random Access Memory)103には、CPU101が実行するプログラムやデータなどが記憶される。これらのCPU101、ROM102、およびRAM103は、バス104により相互に接続されている。
 CPU101はバス104を介して入出力インタフェース105に接続され、入出力インタフェース105には、各種スイッチ、キーボード、タッチパネル、マウス、マイクロホンなどよりなる入力部106、ディスプレイ、スピーカなどよりなる出力部107が接続されている。
 入出力インタフェース105に接続されている記憶部108は、例えばハードディスク等からなり、CPU101が実行するプログラムや各種のデータを記憶する。通信部109は、インターネットやローカルエリアネットワークなどのネットワークを介したデータ通信の送受信部として機能し、外部の装置と通信する。
 入出力インタフェース105に接続されているドライブ110は、磁気ディスク、光ディスク、光磁気ディスク、あるいはメモリカード等の半導体メモリなどのリムーバブルメディア111を駆動し、データの記録あるいは読み取りを実行する。
  [8.本開示の構成のまとめ]
 以上、特定の実施例を参照しながら、本開示の実施例について詳解してきた。しかしながら、本開示の要旨を逸脱しない範囲で当業者が実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本開示の要旨を判断するためには、特許請求の範囲の欄を参酌すべきである。
 なお、本明細書において開示した技術は、以下のような構成をとることができる。
 (1)移動体制御情報生成装置において実行する移動体制御情報生成方法であり、
 データ処理部が、
 移動体の走行領域のマップ内の区分領域であるクラスに対応付けて、クラスの特徴情報、またはクラスに対する移動体の制御情報をクラス属性として記録した移動体制御情報を生成する移動体制御情報生成方法。
 (2)前記マップは、セマンティックマッピングによって生成されるセマンティックマップである(1)に記載の移動体制御情報生成方法。
 (3)前記マップは、前記移動体の屋内の走行領域に存在する部屋の種類、および部屋の境界を識別可能としたマップであり、
 前記クラスは、各部屋に対応付けて設定されたクラスである(1)または(2)に記載の移動体制御情報生成方法。
 (4)前記マップは、前記移動体の屋外の走行領域に存在するオブジェクトを識別可能としたマップであり、
 前記クラスは、各オブジェクトに対応付けて設定されたクラスである(1)~(3)いずれかに記載の移動体制御情報生成方法。
 (5)前記移動体制御情報に記録されるクラス属性は、
 前記移動体に装着されたセンサの検出情報に基づいて解析されるクラスの特徴情報である(1)~(4)いずれかに記載の移動体制御情報生成方法。
 (6)前記移動体制御情報に記録されるクラス属性は、
 ユーザによって入力されるクラス対応の移動体制御情報である(1)~(5)いずれかに記載の移動体制御情報生成方法。
 (7)前記移動体制御情報に記録されるクラス属性は、時間対応のクラス属性であり、
 前記移動体制御情報は、
 前記移動体制御情報を利用した移動体制御を行う場合に、移動体の走行時間に一致する時間対応のクラス属性を選択して利用することを可能とした構成である(1)~(6)いずれかに記載の移動体制御情報生成方法。
 (8)前記クラスは、前記移動体の屋内の走行領域に存在する各部屋に対応付けて設定されたクラスであり、
 前記移動体制御情報に記録されるクラス属性は、各部屋単位の人の有無を示す情報である(1)~(7)いずれかに記載の移動体制御情報生成方法。
 (9)前記クラスは、前記移動体の屋内の走行領域に存在する各部屋に対応付けて設定されたクラスであり、
 前記移動体制御情報に記録されるクラス属性は、各部屋に対する移動体の進入可否を示す情報である(1)~(8)いずれかに記載の移動体制御情報生成方法。
 (10)前記クラスは、前記移動体の屋外の走行領域に存在するオブジェクトに対応付けて設定されたクラスであり、
 前記移動体制御情報に記録されるクラス属性は、各オブジェクトに対する移動体の接近可否を示す情報である(1)~(9)いずれかに記載の移動体制御情報生成方法。
 (11)前記移動体制御情報生成方法は、
 さらに、前記データ処理部が前記マップを表示部に表示し、
 表示部に表示されたマップに対するユーザ操作に応じて、クラスの特徴情報、またはクラスに対する移動体の制御情報をクラス属性として記録した移動体制御情報を生成する(1)~(10)いずれかに記載の移動体制御情報生成方法。
 (12)前記移動体制御情報生成方法は、さらに、
 タスク指定部が、前記移動体に実行させるタスクを指定し、
 通信部を介して、指定タスクの実行命令と、前記クラス属性を記録した移動体制御情報を前記移動体に送信する処理を実行する(1)~(11)いずれかに記載の移動体制御情報生成方法。
 (13)移動体の走行領域のマップ内の区分領域であるクラスに対応付けて、クラスの特徴情報、またはクラスに対する移動体の制御情報をクラス属性として記録した移動体制御情報を生成する移動体制御情報生成部を有する移動体制御情報生成装置。
 (14)移動体の走行領域のマップを表示する表示部と、
 前記マップ内の区分領域であるクラスの特徴情報、またはクラスに対する移動体の制御情報を入力する入力部と、
 前記入力部を介して入力されたクラスの特徴情報、またはクラスに対する移動体の制御情報をクラス属性として記録した移動体制御情報を生成、または更新する移動体制御情報生成部を有する移動体制御情報生成装置。
 (15)移動体の走行領域のマップ内の区分領域であるクラスに対応付けて、クラスの特徴情報、またはクラスに対する移動体の制御情報をクラス属性として記録した移動体制御情報に従って移動する移動体。
 (16)移動体と、前記移動体に制御情報を送信するコントローラと、前記移動体の走行領域のマップを生成するマップ生成装置を有する移動体制御システムであり、
 前記マップ生成装置は、
 前記移動体の走行領域のマップ内の区分領域であるクラスに対応付けて、クラスの特徴情報、またはクラスに対する移動体の制御情報をクラス属性として記録した移動体制御情報を生成し、
 前記コントローラは、
 前記マップ生成装置の生成した移動体制御情報に、
 ユーザ入力に基づくクラス属性の追記処理を実行して更新マップを生成して生成した更新マップを利用して、前記移動体の走行制御を実行する移動体制御システム。
 (17)移動体と、前記移動体に制御情報を送信してするコントローラを有する移動体制御システムであり、
 前記コントローラは、
 前記移動体の走行領域のマップを生成するとともに、生成したマップ内の区分領域であるクラスに対応付けて、クラスの特徴情報、またはクラスに対する移動体の制御情報をクラス属性として記録した移動体制御情報を生成して、生成した移動体制御情報を利用して、前記移動体の走行制御を実行する移動体制御システム。
 なお、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。例えば、プログラムは記録媒体に予め記録しておくことができる。記録媒体からコンピュータにインストールする他、LAN(Local Area Network)、インターネットといったネットワークを介してプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
 また、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
 以上、説明したように、本開示の一実施例の構成によれば、例えば部屋対応のクラス各々に対するクラス属性を記録したマップ等のデータを用いてロボット等の移動体の制御を実行する構成が実現される。
 具体的には、例えば、ロボット等の移動体の走行領域のマップ、例えばセマンティックマップ内の区分領域であるクラスに対応付けてクラスの特徴情報や、クラスに対する移動体制御情報をクラス属性として記録する。マップは部屋の種類、および部屋の境界を識別可能としたマップであり、各部屋対応のクラスに対するクラス属性として部屋内の人の有無や、ロボットの進入可否情報等を記録する。このようなクラス属性を記録したマップやデータを用いてロボットの走行制御を実行する。
 本構成により、例えば部屋対応のクラス各々に対するクラス属性を記録したマップ等のデータを用いてロボット等の移動体の制御を実行する構成が実現される。
  10 ロボット
  11 センサ
  12 通信部
  13 駆動部
  14 タスク実行部
  15 記憶部
  30 コントローラ
  31 表示部(モニター)
  32 セマンティックマップ更新部
  33 タスク指定部
  34 入力部
  35 通信部
  36 記憶部
  50 セマンティックマップ生成装置
  51 地図生成部
  52 センサ情報取得部
  53 記憶部
  54 学習データ生成部
  55 セマンティックマップ生成部
  56 センサ情報加工部
  57 通信部
  70 人工衛星
 101 CPU
 102 ROM
 103 RAM
 104 バス
 105 入出力インタフェース
 106 入力部
 107 出力部
 108 記憶部
 109 通信部
 110 ドライブ
 111 リムーバブルメディア

Claims (17)

  1.  移動体制御情報生成装置において実行する移動体制御情報生成方法であり、
     データ処理部が、
     移動体の走行領域のマップ内の区分領域であるクラスに対応付けて、クラスの特徴情報、またはクラスに対する移動体の制御情報をクラス属性として記録した移動体制御情報を生成する移動体制御情報生成方法。
  2.  前記マップは、セマンティックマッピングによって生成されるセマンティックマップである請求項1に記載の移動体制御情報生成方法。
  3.  前記マップは、前記移動体の屋内の走行領域に存在する部屋の種類、および部屋の境界を識別可能としたマップであり、
     前記クラスは、各部屋に対応付けて設定されたクラスである請求項1に記載の移動体制御情報生成方法。
  4.  前記マップは、前記移動体の屋外の走行領域に存在するオブジェクトを識別可能としたマップであり、
     前記クラスは、各オブジェクトに対応付けて設定されたクラスである請求項1に記載の移動体制御情報生成方法。
  5.  前記移動体制御情報に記録されるクラス属性は、
     前記移動体に装着されたセンサの検出情報に基づいて解析されるクラスの特徴情報である請求項1に記載の移動体制御情報生成方法。
  6.  前記移動体制御情報に記録されるクラス属性は、
     ユーザによって入力されるクラス対応の移動体制御情報である請求項1に記載の移動体制御情報生成方法。
  7.  前記移動体制御情報に記録されるクラス属性は、時間対応のクラス属性であり、
     前記移動体制御情報は、
     前記移動体制御情報を利用した移動体制御を行う場合に、移動体の走行時間に一致する時間対応のクラス属性を選択して利用することを可能とした構成である請求項1に記載の移動体制御情報生成方法。
  8.  前記クラスは、前記移動体の屋内の走行領域に存在する各部屋に対応付けて設定されたクラスであり、
     前記移動体制御情報に記録されるクラス属性は、各部屋単位の人の有無を示す情報である請求項1に記載の移動体制御情報生成方法。
  9.  前記クラスは、前記移動体の屋内の走行領域に存在する各部屋に対応付けて設定されたクラスであり、
     前記移動体制御情報に記録されるクラス属性は、各部屋に対する移動体の進入可否を示す情報である請求項1に記載の移動体制御情報生成方法。
  10.  前記クラスは、前記移動体の屋外の走行領域に存在するオブジェクトに対応付けて設定されたクラスであり、
     前記移動体制御情報に記録されるクラス属性は、各オブジェクトに対する移動体の接近可否を示す情報である請求項1に記載の移動体制御情報生成方法。
  11.  前記移動体制御情報生成方法は、
     さらに、前記データ処理部が前記マップを表示部に表示し、
     表示部に表示されたマップに対するユーザ操作に応じて、クラスの特徴情報、またはクラスに対する移動体の制御情報をクラス属性として記録した移動体制御情報を生成する請求項1に記載の移動体制御情報生成方法。
  12.  前記移動体制御情報生成方法は、さらに、
     タスク指定部が、前記移動体に実行させるタスクを指定し、
     通信部を介して、指定タスクの実行命令と、前記クラス属性を記録した移動体制御情報を前記移動体に送信する処理を実行する請求項1に記載の移動体制御情報生成方法。
  13.  移動体の走行領域のマップ内の区分領域であるクラスに対応付けて、クラスの特徴情報、またはクラスに対する移動体の制御情報をクラス属性として記録した移動体制御情報を生成する移動体制御情報生成部を有する移動体制御情報生成装置。
  14.  移動体の走行領域のマップを表示する表示部と、
     前記マップ内の区分領域であるクラスの特徴情報、またはクラスに対する移動体の制御情報を入力する入力部と、
     前記入力部を介して入力されたクラスの特徴情報、またはクラスに対する移動体の制御情報をクラス属性として記録した移動体制御情報を生成、または更新する移動体制御情報生成部を有する移動体制御情報生成装置。
  15.  移動体の走行領域のマップ内の区分領域であるクラスに対応付けて、クラスの特徴情報、またはクラスに対する移動体の制御情報をクラス属性として記録した移動体制御情報に従って移動する移動体。
  16.  移動体と、前記移動体に制御情報を送信するコントローラと、前記移動体の走行領域のマップを生成するマップ生成装置を有する移動体制御システムであり、
     前記マップ生成装置は、
     前記移動体の走行領域のマップ内の区分領域であるクラスに対応付けて、クラスの特徴情報、またはクラスに対する移動体の制御情報をクラス属性として記録した移動体制御情報を生成し、
     前記コントローラは、
     前記マップ生成装置の生成した移動体制御情報に、
     ユーザ入力に基づくクラス属性の追記処理を実行して更新マップを生成して生成した更新マップを利用して、前記移動体の走行制御を実行する移動体制御システム。
  17.  移動体と、前記移動体に制御情報を送信してするコントローラを有する移動体制御システムであり、
     前記コントローラは、
     前記移動体の走行領域のマップを生成するとともに、生成したマップ内の区分領域であるクラスに対応付けて、クラスの特徴情報、またはクラスに対する移動体の制御情報をクラス属性として記録した移動体制御情報を生成して、生成した移動体制御情報を利用して、前記移動体の走行制御を実行する移動体制御システム。
PCT/JP2023/019362 2022-06-28 2023-05-24 移動体制御情報生成方法、移動体制御情報生成装置、および移動体、並びに移動体制御システム WO2024004453A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2022103303 2022-06-28
JP2022-103303 2022-06-28

Publications (1)

Publication Number Publication Date
WO2024004453A1 true WO2024004453A1 (ja) 2024-01-04

Family

ID=89382645

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2023/019362 WO2024004453A1 (ja) 2022-06-28 2023-05-24 移動体制御情報生成方法、移動体制御情報生成装置、および移動体、並びに移動体制御システム

Country Status (1)

Country Link
WO (1) WO2024004453A1 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017145314A1 (ja) * 2016-02-25 2017-08-31 株式会社日立製作所 移動体の制御方法、移動体及び移動体の制御システム
WO2019240208A1 (ja) * 2018-06-13 2019-12-19 Groove X株式会社 ロボットおよびその制御方法、ならびにプログラム
JP2020531337A (ja) * 2017-08-22 2020-11-05 ウェイモ エルエルシー 自律型車両の停止解析を改善するための乗客の乗車および降車時間の推定
WO2021173308A1 (en) * 2020-02-28 2021-09-02 Irobot Corporation Semantic map management in a mobile robot

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017145314A1 (ja) * 2016-02-25 2017-08-31 株式会社日立製作所 移動体の制御方法、移動体及び移動体の制御システム
JP2020531337A (ja) * 2017-08-22 2020-11-05 ウェイモ エルエルシー 自律型車両の停止解析を改善するための乗客の乗車および降車時間の推定
WO2019240208A1 (ja) * 2018-06-13 2019-12-19 Groove X株式会社 ロボットおよびその制御方法、ならびにプログラム
WO2021173308A1 (en) * 2020-02-28 2021-09-02 Irobot Corporation Semantic map management in a mobile robot

Similar Documents

Publication Publication Date Title
JP7395229B2 (ja) 状況認識のためのモバイル清掃ロボット人工知能
US10012996B1 (en) Route planning for a mobile robot using configuration-based preferences
US20220074762A1 (en) Exploration Of A Robot Deployment Area By An Autonomous Mobile Robot
CN106530946A (zh) 用于编辑室内地图的方法及装置
KR102577785B1 (ko) 청소 로봇 및 그의 태스크 수행 방법
CN106584472A (zh) 用于控制自主移动式设备的方法及装置
WO2021047348A1 (zh) 可通行区域图的建立方法、处理方法、装置和可移动设备
US20190219409A1 (en) System and methods for robotic autonomous motion planning and navigation
CN106767755A (zh) 用于规划自主移动式设备工作点的方法及装置
KR100917377B1 (ko) 인식/추론 수준에 따른 계층적 구조의 실내 정보를 가지는서비스 로봇의 중앙 정보처리 시스템 및 방법
CN106595664A (zh) 室内地图生成、显示、发送的方法及装置
CN106814734A (zh) 使用计算设备控制自主移动式设备的方法及系统
CN106782029A (zh) 室内地图生成方法及装置
CN102682150A (zh) 设计导航场景
KR102537364B1 (ko) 자율주행 로봇, 자율주행 로봇의 위치 추정 서버 및 이를 이용한 자율주행 로봇의 위치 추정 방법
AU2022200471B2 (en) Automated mapping information generation from analysis of building photos
Palacín et al. Automatic Supervision of Temperature, Humidity, and Luminance with an Assistant Personal Robot
CN112015187A (zh) 一种用于智能移动机器人的语义地图构建方法及系统
US20240126283A1 (en) Systems and methods for navigation of an autonomous system
WO2024004453A1 (ja) 移動体制御情報生成方法、移動体制御情報生成装置、および移動体、並びに移動体制御システム
Chikhalikar et al. An object-oriented navigation strategy for service robots leveraging semantic information
Zanuar et al. Autonomous navigation and obstacle avoidance for service robot
Gutiérrez-Álvarez et al. Visual Semantic Navigation with Real Robots
Zhao et al. Interactive indoor environment mapping through human-robot interaction
CN117666560A (zh) 机器人控制方法、装置及存储介质