RoboWaiter/robowaiter/scene/tasks/VLN.py

36 lines
1.1 KiB
Python
Raw Normal View History

"""
视觉语言导航
识别顾客NPC靠近打招呼对话领位导航到适合人数的空闲餐桌
开始条件监测到顾客靠近
结束条件完成领位语音请问您想喝点什么并等待下一步指令
"""
2023-11-09 08:47:57 +08:00
import os
import pickle
import time
import random
import matplotlib.pyplot as plt
import numpy as np
from robowaiter.scene.scene import Scene,init_world # TODO: 文件名改成Scene.py
from robowaiter.scene.scene import Scene
from robowaiter.utils import get_root_path
class SceneVLN(Scene):
def __init__(self, robot):
super().__init__(robot)
2023-11-09 08:47:57 +08:00
# 在这里加入场景中发生的事件, (事件发生的时间,事件函数)
self.event_list = [
(5, self.create_chat_event("测试VLN前往桌子")),
]
2023-10-25 22:12:15 +08:00
def _reset(self):
root_path = get_root_path()
file_name = os.path.join(root_path,'robowaiter/algos/navigate/map_5.pkl')
2023-11-09 08:47:57 +08:00
with open(file_name, 'rb') as file:
map = pickle.load(file)
2023-10-25 22:12:15 +08:00
2023-11-09 08:47:57 +08:00
self.state['map']['2d'] = map
self.state['map']['obj_pos']['Table'] = np.array((-100, 700))