Skip to content

eProsima/agile-hri

Repository files navigation

Vulcanexus HRI

This repository bundles a complete set of Vulcanexus Human–Robot Interaction (HRI) packages, completely compatible and ready-to-use in the Vulcanexus ecosystem (ROS 2).

Each hri_<package> directory is an independent package that can be built separately.

For an overview of Vulcanexus HRI concepts and components, see the official docs.


What is Vulcanexus HRI?

Human-Robot Interaction (HRI) studies how humans and robots can effectively perceive, communicate, and collaborate. It combines computer vision, speech, emotion recognition, and higher-level behavioral models so robots can interact with people naturally and safely.

Vulcanexus HRI provides a set of ROS 2–based components for:

  • Shared HRI message definitions (hri_msgs)
  • Face detection and recognition
  • Human pose recognition
  • Emotion recognition
  • Speech-to-Text (STT)
  • Text-to-Speech (TTS)
  • Visual displays

All of these components are designed to work together on top of ROS 2 and Fast DDS.


Package overview

hri_msgs

Core message definitions used by all Vulcanexus HRI modules.

Main features:

  • Defines custom message types for HRI (faces, skeletons, emotions, regions of interest, etc.)
  • Uses topic keys (Fast DDS keyed topics) so multiple individuals can be represented efficiently on shared topics
  • Provides a common interface layer so all HRI components can interoperate

Any HRI-based application will typically depend on hri_msgs.


hri_face_detect

Face detection and recognition module.

Main features:

  • Detects human faces from video streams
  • Publishes HRI messages describing 2D face positions and landmarks
  • Integrates with hri_id_manager to assign consistent IDs to faces across frames and sessions

This is a perception component that lets your robot see and track human faces.


hri_pose_detect

Human body pose and gesture recognition module.

Main features:

  • Detects human skeletons and keypoints from RGB / RGB-D input
  • Publishes HRI messages describing 2D (and optionally 3D) body poses
  • Integrates with hri_id_manager to assign consistent IDs to bodies across frames and sessions

This is a perception component that lets your robot see and track human bodies.


hri_emotion_detect

Emotion recognition module.

Main features:

  • Estimates human emotional state from visual cues
  • Publishes emotion-related HRI messages for each tracked person

This enables more socially aware behaviors (e.g., adapting interaction or feedback depending on user emotion).


hri_stt

Speech-to-Text (STT) module.

Main features:

  • Converts spoken language (audio input) into text
  • Publishes recognized text on ROS 2 topics using HRI-related messages

Use this to let humans talk to the robot using natural speech.


hri_tts

Text-to-Speech (TTS) module.

Main features:

  • Converts arbitrary text into speech audio
  • Publishes audio on ROS 2 topics or plays it through a speaker
  • Can be used from other nodes or via HRI APIs to vocalize responses

Use this to make the robot speak back to humans.


hri_detection_display

Tools and nodes to render HRI information on a display, for example:

  • Overlaying face, pose or emotion detections on camera images
  • Visualizing tracked humans and their IDs
  • Providing a simple on-screen debugging UI for the HRI stack

Useful for demos, debugging, and building robot UIs that show what the robot “perceives”.


hri_id_manager

Identity management module.

Main features:

  • Assigns and manages unique IDs for detected humans
  • Ensures the same person keeps the same ID across different HRI modules (face, pose, emotion, etc.)
  • Exposes services or topics for mapping detections to identities

This is the glue that lets you tie together data from multiple perception modules into coherent “human entities”.


hri_api

High-level API and helpers to work with the Vulcanexus HRI stack from your own applications. It provides a library totally API compatible with the ROS4HRI stack.

Typical responsibilities:

  • Provide convenience wrappers and utilities around HRI topics/services
  • Simplify subscribing to multiple HRI components from a single node
  • Offer a more user-friendly interface to HRI features (faces, poses, emotions, STT/TTS, etc.)

Installation & build

A complete guide of installation of Vulcanexus HRI can be found here.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors