Ejemplo n.º 1
0
aed_endpoint = "https://westus2.api.cognitive.microsoft.com/"
aed_key = "1837b9d29e0b4a22843d103a7ca8b3c9"

# instantiate modules
mic = MicrophoneModule(1000, rate=16000)
asr = AzureASRModule("179eaa4b8fc54e0fa5115ba5d14883f2")
emotion = AzureEmotionDetectionModule(aed_key, aed_endpoint)
iasr = IncrementalizeASRModule()

#initialize ros and its topics
rospy.init_node("Robot_Ready_SDS_RosNode", anonymous=True)
mic_publisher = RosPublisher('mic')
asr_publisher = RosPublisher('asr')
# asr_subscriber = RosSubscriber('asr',debug=True)

debug = DebugModule()

# hook modules up to each other
mic.subscribe(asr)
mic.subscribe(mic_publisher)
asr.subscribe(iasr)
iasr.subscribe(asr_publisher)
iasr.subscribe(debug)

# initialize modules
mic.run()
mic_publisher.run()
asr.run()
asr_publisher.run()
# asr_subscriber.run()
iasr.run()
Ejemplo n.º 2
0
mic = MicrophoneModule(1000)
asr = GoogleASRModule()
iasr = IncrementalizeASRModule()
dm = OpenDialModule(domain_dir=domain_dir, variables=opendial_variables)
webcam = WebcamModule()
# misty_camera = MistyCameraModule(misty_ip)
# misty_refer = MistyReferModule(misty_ip)
# misty_state = MistyStateModule(misty_ip)
# cropper = ImageCropperModule(top=200)
# object_detector = AzureObjectDetectionModule(aod_key, aod_endpoint)
object_detector = MaskrRCNNObjectDetection(mask_rcnn_labels,
                                           mask_rcnn_model,
                                           max_objs=1)
feature_extractor = KerasObjectFeatureExtractorModule()
wac = WordsAsClassifiersModule(wac_dir=wac_dir)
debug = DebugModule()

print('All modules instantiated.')

# psi related modules
# WriterSingleton should use the *source* ip address (i.e., this machine's)
WriterSingleton(ip='10.255.221.241', port='12346')  # create the zeromq writer
psi = ZeroMQWriter(topic='retico')

# mic as input
mic.subscribe(asr)
asr.subscribe(iasr)
iasr.subscribe(wac)
wac.subscribe(dm)

# robot state as input
Ejemplo n.º 3
0
# asr = GoogleASRModule(rate=16000)

mic = MicrophoneModule(1000)
asr = GoogleASRModule()
iasr = IncrementalizeASRModule()
dm = OpenDialModule(domain_dir=domain_dir, variables=opendial_variables)
# cozmo_camera = WebcamModule()
misty_camera = MistyCameraModule(misty_ip)
misty_refer = MistyReferModule(misty_ip)
misty_state = MistyStateModule(misty_ip)
cropper = ImageCropperModule(top=200)
# object_detector = AzureObjectDetectionModule(aod_key, aod_endpoint)
object_detector = MaskrRCNNObjectDetection(mask_rcnn_labels, mask_rcnn_model, max_objs=1)
feature_extractor = KerasObjectFeatureExtractorModule()
wac = WordsAsClassifiersModule(wac_dir=wac_dir)
debug = DebugModule()

print('All modules instantiated.')

# psi related modules
# WriterSingleton should use the *source* ip address (i.e., this machine's)
# WriterSingleton(ip='10.255.146.186', port='12346') # create the zeromq writer
# iasr_psi = ZeroMQWriter(topic='asr')
# nlu_psi = ZeroMQWriter(topic='nlu')
# dm_psi = ZeroMQWriter(topic='dm')

# mic as input
mic.subscribe(asr)
asr.subscribe(iasr)
iasr.subscribe(wac)
wac.subscribe(dm)
Ejemplo n.º 4
0
def init_all(robot : cozmo.robot.Robot):
    
    domain_dir = '/home/casey/git/retico/data/cozmo/dm/dialogue.xml'
    aod_endpoint = ""
    aod_key = ""
    wac_dir = '/home/casey/git/retico/data/wac/subset'
    mask_rcnn_labels = '/home/casey/git/retico/data/maskrcnn/label_map.pbtxt'
    mask_rcnn_model = '/home/casey/git/retico/data/maskrcnn/frozen_inference_graph.pb'

    opendial_variables = ['face_count', # CozmoStateModule
                           'num_objs', # ObjectDetector
                           'near_object', # CozmoRefer
                           'exploring', # CozmoRefer
                           'aligned', # CozmoRefer
                           'word_to_find', # WordsAsClassifiersModule
                           'best_object', # WordsAsClassifiersModule
                           'obj_confidence'] # WordsAsClassifiersModule

    #
    # INSTANTIATE MODULES
    #
    # mic = RespeakerMicrophoneModule('192.168.0.102:8000')
    # asr = GoogleASRModule(rate=16000)
    
    mic = MicrophoneModule(1000)
    asr = GoogleASRModule()
    iasr = IncrementalizeASRModule()
    dm = OpenDialModule(domain_dir=domain_dir, variables=opendial_variables)
    cozmo_refer = CozmoReferModule(robot)
    cozmo_camera = CozmoCameraModule(robot)
    # cozmo_camera = WebcamModule()
    # cozmo_state = CozmoStateModule(robot)
    # object_detector = AzureObjectDetectionModule(aod_key, aod_endpoint)
    object_detector = MaskrRCNNObjectDetection(mask_rcnn_labels, mask_rcnn_model)
    feature_extractor = KerasObjectFeatureExtractorModule()
    wac = WordsAsClassifiersModule(wac_dir=wac_dir)
    debug = DebugModule()

    # psi related modules
    # WriterSingleton should use the *source* ip address (i.e., this machine's)
    # WriterSingleton(ip='192.168.0.101', port='12346') # create the zeromq writer
    # psi = ZeroMQWriter(topic='retico')
   
    # mic as input
    mic.subscribe(asr)
    asr.subscribe(iasr)
    iasr.subscribe(wac)
    wac.subscribe(dm)
    dm.subscribe(cozmo_refer)

    # robot state as input
    # cozmo_state.subscribe(dm)
    wac.subscribe(cozmo_refer)
    object_detector.subscribe(dm)
    object_detector.subscribe(cozmo_refer)
    cozmo_refer.subscribe(dm)

    # robot camera as input
    cozmo_camera.subscribe(object_detector)
    object_detector.subscribe(feature_extractor)
    feature_extractor.subscribe(wac)
    # feature_extractor.subscribe(debug)

    # iasr.subscribe(psi)
    # wac.subscribe(psi)
    # dm.subscribe(psi)
    # feature_extractor.subscribe(psi)
    # object_detector.subscribe(psi)

    #
    # INITIALIZE MODULES
    # 
    mic.run()
    asr.run()
    iasr.run()
    dm.run()
    cozmo_refer.run() # IF I MAKE THIS RUN EVERYTHING SLOWS DOWN
    # cozmo_state.run()
    cozmo_camera.run()
    object_detector.run()
    feature_extractor.run()
    wac.run()
    debug.run()
    # psi.run()

    input() # keep everything running

    mic.stop()
    asr.stop()
    iasr.stop()
    cozmo_refer.stop()
    # cozmo_state.stop()
    dm.stop()
    cozmo_camera.stop()
    object_detector.stop()
    feature_extractor.stop()
    wac.stop()
    debug.stop()