No version for distro humble showing github. Known supported distros are highlighted in the buttons above.

Repository Summary

Description
Checkout URI https://github.com/irvlutd/autox-semmap.git
VCS Type git
VCS Version main
Last Updated 2026-09-01
Dev Status UNKNOWN
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

README

Build Once, Monitor Continuously: Persistent Semantic Mapping via Autonomous Exploration and Open-Vocabulary Object Updates

IROS 2026 WORLDS Workshop

Sai Haneesh Allu, Itay Kadosh, Tyler Summers, Yu Xiang

<div align=”center””>

arXiv ** ** Project WebPage ** ** Video

</div>


Persistent semantic monitoring of indoor spaces such as warehouses, hospitals, and offices requires a robot to repeatedly monitor an environment and track how objects change over time. Running full simultaneous localization and mapping (SLAM) with dense semantic reconstruction from scratch on every visit is redundant when the environment geometry stays the same and only the objects move. We present a modular two-stage system that separates geometric mapping from semantic updating. In the first stage, a frontier-based exploration method with a dynamic search window builds a 2D occupancy grid. In the second stage, the robot relocalizes in this map and builds a semantic object graph using an open-vocabulary object detector and a promptable segmentation model. Only the lightweight semantic stage is repeated on later visits, so the system scales well to frequent revisits. The object graph uses a category and distance based association rule to update objects, which lets the map reflect both intra-session changes (object changes within a single traversal) and inter-session changes (changes across revisits), such as objects being moved, removed, or added. We validate the system on a Fetch robot in two real indoor environments of about 8,500 sq.m and 117 sq.m, and report precision, recall, and F1 scores across multiple update iterations.



image info


Citation

Please cite this work if it helps in your research

@misc{allu2026buildoncemonitorcontinuously,
      title={Build Once, Monitor Continuously: Persistent Semantic Mapping via Autonomous Exploration and Open-Vocabulary Object Updates}, 
      author={Sai Haneesh Allu and Itay Kadosh and Tyler Summers and Yu Xiang},
      year={2026},
      eprint={2409.15493},
      archivePrefix={arXiv},
      primaryClass={cs.RO},
      url={https://arxiv.org/abs/2409.15493}, 
}

For any questions regarding this work, contact Sai Haneesh Allu. For any issues regarding this code, please raise an issue.

Index

  1. Installation
  2. Initialization
  3. Mapping and Exploration
  4. Environment Traversal planning
  5. Semantic Map Construction and Update
  6. Running on a real robot system
  7. Real World Demo



Installation

The following subsections provide detailed installation guidelines related to workspace setup, dependencies and other requirements to test this work effectively. Additionally, a docker has been provided with instructions. Credits to Iminolee.

A. Install ROS and Gazebo

This code is tested on ros noetic version. Detailed installation instructions are found here. To install ROS Noetic, execute the following commands in your terminal:

sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'

sudo apt install -y curl

curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -

sudo apt update

sudo apt install -y ros-noetic-desktop-full

echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc

source ~/.bashrc

For compatibility with ROS Noetic, Gazebo 11 is recommended. Detailed installation instructions are found here.

sudo sh -c 'echo "deb http://packages.osrfoundation.org/gazebo/ubuntu-stable `lsb_release -cs` main" > /etc/apt/sources.list.d/gazebo-stable.list'

wget https://packages.osrfoundation.org/gazebo.key -O - | sudo apt-key add -

sudo apt-get update

sudo apt-get install -y gazebo11

B. Create Conda Environment

We strongly recommend using a virtual environment for this work, preferably Anaconda or Miniconda. Create a new environment as follows:

File truncated at 100 lines see the full file

No version for distro jazzy showing github. Known supported distros are highlighted in the buttons above.

Repository Summary

Description
Checkout URI https://github.com/irvlutd/autox-semmap.git
VCS Type git
VCS Version main
Last Updated 2026-09-01
Dev Status UNKNOWN
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

README

Build Once, Monitor Continuously: Persistent Semantic Mapping via Autonomous Exploration and Open-Vocabulary Object Updates

IROS 2026 WORLDS Workshop

Sai Haneesh Allu, Itay Kadosh, Tyler Summers, Yu Xiang

<div align=”center””>

arXiv ** ** Project WebPage ** ** Video

</div>


Persistent semantic monitoring of indoor spaces such as warehouses, hospitals, and offices requires a robot to repeatedly monitor an environment and track how objects change over time. Running full simultaneous localization and mapping (SLAM) with dense semantic reconstruction from scratch on every visit is redundant when the environment geometry stays the same and only the objects move. We present a modular two-stage system that separates geometric mapping from semantic updating. In the first stage, a frontier-based exploration method with a dynamic search window builds a 2D occupancy grid. In the second stage, the robot relocalizes in this map and builds a semantic object graph using an open-vocabulary object detector and a promptable segmentation model. Only the lightweight semantic stage is repeated on later visits, so the system scales well to frequent revisits. The object graph uses a category and distance based association rule to update objects, which lets the map reflect both intra-session changes (object changes within a single traversal) and inter-session changes (changes across revisits), such as objects being moved, removed, or added. We validate the system on a Fetch robot in two real indoor environments of about 8,500 sq.m and 117 sq.m, and report precision, recall, and F1 scores across multiple update iterations.



image info


Citation

Please cite this work if it helps in your research

@misc{allu2026buildoncemonitorcontinuously,
      title={Build Once, Monitor Continuously: Persistent Semantic Mapping via Autonomous Exploration and Open-Vocabulary Object Updates}, 
      author={Sai Haneesh Allu and Itay Kadosh and Tyler Summers and Yu Xiang},
      year={2026},
      eprint={2409.15493},
      archivePrefix={arXiv},
      primaryClass={cs.RO},
      url={https://arxiv.org/abs/2409.15493}, 
}

For any questions regarding this work, contact Sai Haneesh Allu. For any issues regarding this code, please raise an issue.

Index

  1. Installation
  2. Initialization
  3. Mapping and Exploration
  4. Environment Traversal planning
  5. Semantic Map Construction and Update
  6. Running on a real robot system
  7. Real World Demo



Installation

The following subsections provide detailed installation guidelines related to workspace setup, dependencies and other requirements to test this work effectively. Additionally, a docker has been provided with instructions. Credits to Iminolee.

A. Install ROS and Gazebo

This code is tested on ros noetic version. Detailed installation instructions are found here. To install ROS Noetic, execute the following commands in your terminal:

sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'

sudo apt install -y curl

curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -

sudo apt update

sudo apt install -y ros-noetic-desktop-full

echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc

source ~/.bashrc

For compatibility with ROS Noetic, Gazebo 11 is recommended. Detailed installation instructions are found here.

sudo sh -c 'echo "deb http://packages.osrfoundation.org/gazebo/ubuntu-stable `lsb_release -cs` main" > /etc/apt/sources.list.d/gazebo-stable.list'

wget https://packages.osrfoundation.org/gazebo.key -O - | sudo apt-key add -

sudo apt-get update

sudo apt-get install -y gazebo11

B. Create Conda Environment

We strongly recommend using a virtual environment for this work, preferably Anaconda or Miniconda. Create a new environment as follows:

File truncated at 100 lines see the full file

No version for distro kilted showing github. Known supported distros are highlighted in the buttons above.

Repository Summary

Description
Checkout URI https://github.com/irvlutd/autox-semmap.git
VCS Type git
VCS Version main
Last Updated 2026-09-01
Dev Status UNKNOWN
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

README

Build Once, Monitor Continuously: Persistent Semantic Mapping via Autonomous Exploration and Open-Vocabulary Object Updates

IROS 2026 WORLDS Workshop

Sai Haneesh Allu, Itay Kadosh, Tyler Summers, Yu Xiang

<div align=”center””>

arXiv ** ** Project WebPage ** ** Video

</div>


Persistent semantic monitoring of indoor spaces such as warehouses, hospitals, and offices requires a robot to repeatedly monitor an environment and track how objects change over time. Running full simultaneous localization and mapping (SLAM) with dense semantic reconstruction from scratch on every visit is redundant when the environment geometry stays the same and only the objects move. We present a modular two-stage system that separates geometric mapping from semantic updating. In the first stage, a frontier-based exploration method with a dynamic search window builds a 2D occupancy grid. In the second stage, the robot relocalizes in this map and builds a semantic object graph using an open-vocabulary object detector and a promptable segmentation model. Only the lightweight semantic stage is repeated on later visits, so the system scales well to frequent revisits. The object graph uses a category and distance based association rule to update objects, which lets the map reflect both intra-session changes (object changes within a single traversal) and inter-session changes (changes across revisits), such as objects being moved, removed, or added. We validate the system on a Fetch robot in two real indoor environments of about 8,500 sq.m and 117 sq.m, and report precision, recall, and F1 scores across multiple update iterations.



image info


Citation

Please cite this work if it helps in your research

@misc{allu2026buildoncemonitorcontinuously,
      title={Build Once, Monitor Continuously: Persistent Semantic Mapping via Autonomous Exploration and Open-Vocabulary Object Updates}, 
      author={Sai Haneesh Allu and Itay Kadosh and Tyler Summers and Yu Xiang},
      year={2026},
      eprint={2409.15493},
      archivePrefix={arXiv},
      primaryClass={cs.RO},
      url={https://arxiv.org/abs/2409.15493}, 
}

For any questions regarding this work, contact Sai Haneesh Allu. For any issues regarding this code, please raise an issue.

Index

  1. Installation
  2. Initialization
  3. Mapping and Exploration
  4. Environment Traversal planning
  5. Semantic Map Construction and Update
  6. Running on a real robot system
  7. Real World Demo



Installation

The following subsections provide detailed installation guidelines related to workspace setup, dependencies and other requirements to test this work effectively. Additionally, a docker has been provided with instructions. Credits to Iminolee.

A. Install ROS and Gazebo

This code is tested on ros noetic version. Detailed installation instructions are found here. To install ROS Noetic, execute the following commands in your terminal:

sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'

sudo apt install -y curl

curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -

sudo apt update

sudo apt install -y ros-noetic-desktop-full

echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc

source ~/.bashrc

For compatibility with ROS Noetic, Gazebo 11 is recommended. Detailed installation instructions are found here.

sudo sh -c 'echo "deb http://packages.osrfoundation.org/gazebo/ubuntu-stable `lsb_release -cs` main" > /etc/apt/sources.list.d/gazebo-stable.list'

wget https://packages.osrfoundation.org/gazebo.key -O - | sudo apt-key add -

sudo apt-get update

sudo apt-get install -y gazebo11

B. Create Conda Environment

We strongly recommend using a virtual environment for this work, preferably Anaconda or Miniconda. Create a new environment as follows:

File truncated at 100 lines see the full file

No version for distro lyrical showing github. Known supported distros are highlighted in the buttons above.

Repository Summary

Description
Checkout URI https://github.com/irvlutd/autox-semmap.git
VCS Type git
VCS Version main
Last Updated 2026-09-01
Dev Status UNKNOWN
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

README

Build Once, Monitor Continuously: Persistent Semantic Mapping via Autonomous Exploration and Open-Vocabulary Object Updates

IROS 2026 WORLDS Workshop

Sai Haneesh Allu, Itay Kadosh, Tyler Summers, Yu Xiang

<div align=”center””>

arXiv ** ** Project WebPage ** ** Video

</div>


Persistent semantic monitoring of indoor spaces such as warehouses, hospitals, and offices requires a robot to repeatedly monitor an environment and track how objects change over time. Running full simultaneous localization and mapping (SLAM) with dense semantic reconstruction from scratch on every visit is redundant when the environment geometry stays the same and only the objects move. We present a modular two-stage system that separates geometric mapping from semantic updating. In the first stage, a frontier-based exploration method with a dynamic search window builds a 2D occupancy grid. In the second stage, the robot relocalizes in this map and builds a semantic object graph using an open-vocabulary object detector and a promptable segmentation model. Only the lightweight semantic stage is repeated on later visits, so the system scales well to frequent revisits. The object graph uses a category and distance based association rule to update objects, which lets the map reflect both intra-session changes (object changes within a single traversal) and inter-session changes (changes across revisits), such as objects being moved, removed, or added. We validate the system on a Fetch robot in two real indoor environments of about 8,500 sq.m and 117 sq.m, and report precision, recall, and F1 scores across multiple update iterations.



image info


Citation

Please cite this work if it helps in your research

@misc{allu2026buildoncemonitorcontinuously,
      title={Build Once, Monitor Continuously: Persistent Semantic Mapping via Autonomous Exploration and Open-Vocabulary Object Updates}, 
      author={Sai Haneesh Allu and Itay Kadosh and Tyler Summers and Yu Xiang},
      year={2026},
      eprint={2409.15493},
      archivePrefix={arXiv},
      primaryClass={cs.RO},
      url={https://arxiv.org/abs/2409.15493}, 
}

For any questions regarding this work, contact Sai Haneesh Allu. For any issues regarding this code, please raise an issue.

Index

  1. Installation
  2. Initialization
  3. Mapping and Exploration
  4. Environment Traversal planning
  5. Semantic Map Construction and Update
  6. Running on a real robot system
  7. Real World Demo



Installation

The following subsections provide detailed installation guidelines related to workspace setup, dependencies and other requirements to test this work effectively. Additionally, a docker has been provided with instructions. Credits to Iminolee.

A. Install ROS and Gazebo

This code is tested on ros noetic version. Detailed installation instructions are found here. To install ROS Noetic, execute the following commands in your terminal:

sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'

sudo apt install -y curl

curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -

sudo apt update

sudo apt install -y ros-noetic-desktop-full

echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc

source ~/.bashrc

For compatibility with ROS Noetic, Gazebo 11 is recommended. Detailed installation instructions are found here.

sudo sh -c 'echo "deb http://packages.osrfoundation.org/gazebo/ubuntu-stable `lsb_release -cs` main" > /etc/apt/sources.list.d/gazebo-stable.list'

wget https://packages.osrfoundation.org/gazebo.key -O - | sudo apt-key add -

sudo apt-get update

sudo apt-get install -y gazebo11

B. Create Conda Environment

We strongly recommend using a virtual environment for this work, preferably Anaconda or Miniconda. Create a new environment as follows:

File truncated at 100 lines see the full file

No version for distro rolling showing github. Known supported distros are highlighted in the buttons above.

Repository Summary

Description
Checkout URI https://github.com/irvlutd/autox-semmap.git
VCS Type git
VCS Version main
Last Updated 2026-09-01
Dev Status UNKNOWN
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

README

Build Once, Monitor Continuously: Persistent Semantic Mapping via Autonomous Exploration and Open-Vocabulary Object Updates

IROS 2026 WORLDS Workshop

Sai Haneesh Allu, Itay Kadosh, Tyler Summers, Yu Xiang

<div align=”center””>

arXiv ** ** Project WebPage ** ** Video

</div>


Persistent semantic monitoring of indoor spaces such as warehouses, hospitals, and offices requires a robot to repeatedly monitor an environment and track how objects change over time. Running full simultaneous localization and mapping (SLAM) with dense semantic reconstruction from scratch on every visit is redundant when the environment geometry stays the same and only the objects move. We present a modular two-stage system that separates geometric mapping from semantic updating. In the first stage, a frontier-based exploration method with a dynamic search window builds a 2D occupancy grid. In the second stage, the robot relocalizes in this map and builds a semantic object graph using an open-vocabulary object detector and a promptable segmentation model. Only the lightweight semantic stage is repeated on later visits, so the system scales well to frequent revisits. The object graph uses a category and distance based association rule to update objects, which lets the map reflect both intra-session changes (object changes within a single traversal) and inter-session changes (changes across revisits), such as objects being moved, removed, or added. We validate the system on a Fetch robot in two real indoor environments of about 8,500 sq.m and 117 sq.m, and report precision, recall, and F1 scores across multiple update iterations.



image info


Citation

Please cite this work if it helps in your research

@misc{allu2026buildoncemonitorcontinuously,
      title={Build Once, Monitor Continuously: Persistent Semantic Mapping via Autonomous Exploration and Open-Vocabulary Object Updates}, 
      author={Sai Haneesh Allu and Itay Kadosh and Tyler Summers and Yu Xiang},
      year={2026},
      eprint={2409.15493},
      archivePrefix={arXiv},
      primaryClass={cs.RO},
      url={https://arxiv.org/abs/2409.15493}, 
}

For any questions regarding this work, contact Sai Haneesh Allu. For any issues regarding this code, please raise an issue.

Index

  1. Installation
  2. Initialization
  3. Mapping and Exploration
  4. Environment Traversal planning
  5. Semantic Map Construction and Update
  6. Running on a real robot system
  7. Real World Demo



Installation

The following subsections provide detailed installation guidelines related to workspace setup, dependencies and other requirements to test this work effectively. Additionally, a docker has been provided with instructions. Credits to Iminolee.

A. Install ROS and Gazebo

This code is tested on ros noetic version. Detailed installation instructions are found here. To install ROS Noetic, execute the following commands in your terminal:

sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'

sudo apt install -y curl

curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -

sudo apt update

sudo apt install -y ros-noetic-desktop-full

echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc

source ~/.bashrc

For compatibility with ROS Noetic, Gazebo 11 is recommended. Detailed installation instructions are found here.

sudo sh -c 'echo "deb http://packages.osrfoundation.org/gazebo/ubuntu-stable `lsb_release -cs` main" > /etc/apt/sources.list.d/gazebo-stable.list'

wget https://packages.osrfoundation.org/gazebo.key -O - | sudo apt-key add -

sudo apt-get update

sudo apt-get install -y gazebo11

B. Create Conda Environment

We strongly recommend using a virtual environment for this work, preferably Anaconda or Miniconda. Create a new environment as follows:

File truncated at 100 lines see the full file

Repository Summary

Description
Checkout URI https://github.com/irvlutd/autox-semmap.git
VCS Type git
VCS Version main
Last Updated 2026-09-01
Dev Status UNKNOWN
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

README

Build Once, Monitor Continuously: Persistent Semantic Mapping via Autonomous Exploration and Open-Vocabulary Object Updates

IROS 2026 WORLDS Workshop

Sai Haneesh Allu, Itay Kadosh, Tyler Summers, Yu Xiang

<div align=”center””>

arXiv ** ** Project WebPage ** ** Video

</div>


Persistent semantic monitoring of indoor spaces such as warehouses, hospitals, and offices requires a robot to repeatedly monitor an environment and track how objects change over time. Running full simultaneous localization and mapping (SLAM) with dense semantic reconstruction from scratch on every visit is redundant when the environment geometry stays the same and only the objects move. We present a modular two-stage system that separates geometric mapping from semantic updating. In the first stage, a frontier-based exploration method with a dynamic search window builds a 2D occupancy grid. In the second stage, the robot relocalizes in this map and builds a semantic object graph using an open-vocabulary object detector and a promptable segmentation model. Only the lightweight semantic stage is repeated on later visits, so the system scales well to frequent revisits. The object graph uses a category and distance based association rule to update objects, which lets the map reflect both intra-session changes (object changes within a single traversal) and inter-session changes (changes across revisits), such as objects being moved, removed, or added. We validate the system on a Fetch robot in two real indoor environments of about 8,500 sq.m and 117 sq.m, and report precision, recall, and F1 scores across multiple update iterations.



image info


Citation

Please cite this work if it helps in your research

@misc{allu2026buildoncemonitorcontinuously,
      title={Build Once, Monitor Continuously: Persistent Semantic Mapping via Autonomous Exploration and Open-Vocabulary Object Updates}, 
      author={Sai Haneesh Allu and Itay Kadosh and Tyler Summers and Yu Xiang},
      year={2026},
      eprint={2409.15493},
      archivePrefix={arXiv},
      primaryClass={cs.RO},
      url={https://arxiv.org/abs/2409.15493}, 
}

For any questions regarding this work, contact Sai Haneesh Allu. For any issues regarding this code, please raise an issue.

Index

  1. Installation
  2. Initialization
  3. Mapping and Exploration
  4. Environment Traversal planning
  5. Semantic Map Construction and Update
  6. Running on a real robot system
  7. Real World Demo



Installation

The following subsections provide detailed installation guidelines related to workspace setup, dependencies and other requirements to test this work effectively. Additionally, a docker has been provided with instructions. Credits to Iminolee.

A. Install ROS and Gazebo

This code is tested on ros noetic version. Detailed installation instructions are found here. To install ROS Noetic, execute the following commands in your terminal:

sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'

sudo apt install -y curl

curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -

sudo apt update

sudo apt install -y ros-noetic-desktop-full

echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc

source ~/.bashrc

For compatibility with ROS Noetic, Gazebo 11 is recommended. Detailed installation instructions are found here.

sudo sh -c 'echo "deb http://packages.osrfoundation.org/gazebo/ubuntu-stable `lsb_release -cs` main" > /etc/apt/sources.list.d/gazebo-stable.list'

wget https://packages.osrfoundation.org/gazebo.key -O - | sudo apt-key add -

sudo apt-get update

sudo apt-get install -y gazebo11

B. Create Conda Environment

We strongly recommend using a virtual environment for this work, preferably Anaconda or Miniconda. Create a new environment as follows:

File truncated at 100 lines see the full file

No version for distro galactic showing github. Known supported distros are highlighted in the buttons above.

Repository Summary

Description
Checkout URI https://github.com/irvlutd/autox-semmap.git
VCS Type git
VCS Version main
Last Updated 2026-09-01
Dev Status UNKNOWN
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

README

Build Once, Monitor Continuously: Persistent Semantic Mapping via Autonomous Exploration and Open-Vocabulary Object Updates

IROS 2026 WORLDS Workshop

Sai Haneesh Allu, Itay Kadosh, Tyler Summers, Yu Xiang

<div align=”center””>

arXiv ** ** Project WebPage ** ** Video

</div>


Persistent semantic monitoring of indoor spaces such as warehouses, hospitals, and offices requires a robot to repeatedly monitor an environment and track how objects change over time. Running full simultaneous localization and mapping (SLAM) with dense semantic reconstruction from scratch on every visit is redundant when the environment geometry stays the same and only the objects move. We present a modular two-stage system that separates geometric mapping from semantic updating. In the first stage, a frontier-based exploration method with a dynamic search window builds a 2D occupancy grid. In the second stage, the robot relocalizes in this map and builds a semantic object graph using an open-vocabulary object detector and a promptable segmentation model. Only the lightweight semantic stage is repeated on later visits, so the system scales well to frequent revisits. The object graph uses a category and distance based association rule to update objects, which lets the map reflect both intra-session changes (object changes within a single traversal) and inter-session changes (changes across revisits), such as objects being moved, removed, or added. We validate the system on a Fetch robot in two real indoor environments of about 8,500 sq.m and 117 sq.m, and report precision, recall, and F1 scores across multiple update iterations.



image info


Citation

Please cite this work if it helps in your research

@misc{allu2026buildoncemonitorcontinuously,
      title={Build Once, Monitor Continuously: Persistent Semantic Mapping via Autonomous Exploration and Open-Vocabulary Object Updates}, 
      author={Sai Haneesh Allu and Itay Kadosh and Tyler Summers and Yu Xiang},
      year={2026},
      eprint={2409.15493},
      archivePrefix={arXiv},
      primaryClass={cs.RO},
      url={https://arxiv.org/abs/2409.15493}, 
}

For any questions regarding this work, contact Sai Haneesh Allu. For any issues regarding this code, please raise an issue.

Index

  1. Installation
  2. Initialization
  3. Mapping and Exploration
  4. Environment Traversal planning
  5. Semantic Map Construction and Update
  6. Running on a real robot system
  7. Real World Demo



Installation

The following subsections provide detailed installation guidelines related to workspace setup, dependencies and other requirements to test this work effectively. Additionally, a docker has been provided with instructions. Credits to Iminolee.

A. Install ROS and Gazebo

This code is tested on ros noetic version. Detailed installation instructions are found here. To install ROS Noetic, execute the following commands in your terminal:

sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'

sudo apt install -y curl

curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -

sudo apt update

sudo apt install -y ros-noetic-desktop-full

echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc

source ~/.bashrc

For compatibility with ROS Noetic, Gazebo 11 is recommended. Detailed installation instructions are found here.

sudo sh -c 'echo "deb http://packages.osrfoundation.org/gazebo/ubuntu-stable `lsb_release -cs` main" > /etc/apt/sources.list.d/gazebo-stable.list'

wget https://packages.osrfoundation.org/gazebo.key -O - | sudo apt-key add -

sudo apt-get update

sudo apt-get install -y gazebo11

B. Create Conda Environment

We strongly recommend using a virtual environment for this work, preferably Anaconda or Miniconda. Create a new environment as follows:

File truncated at 100 lines see the full file

No version for distro iron showing github. Known supported distros are highlighted in the buttons above.

Repository Summary

Description
Checkout URI https://github.com/irvlutd/autox-semmap.git
VCS Type git
VCS Version main
Last Updated 2026-09-01
Dev Status UNKNOWN
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

README

Build Once, Monitor Continuously: Persistent Semantic Mapping via Autonomous Exploration and Open-Vocabulary Object Updates

IROS 2026 WORLDS Workshop

Sai Haneesh Allu, Itay Kadosh, Tyler Summers, Yu Xiang

<div align=”center””>

arXiv ** ** Project WebPage ** ** Video

</div>


Persistent semantic monitoring of indoor spaces such as warehouses, hospitals, and offices requires a robot to repeatedly monitor an environment and track how objects change over time. Running full simultaneous localization and mapping (SLAM) with dense semantic reconstruction from scratch on every visit is redundant when the environment geometry stays the same and only the objects move. We present a modular two-stage system that separates geometric mapping from semantic updating. In the first stage, a frontier-based exploration method with a dynamic search window builds a 2D occupancy grid. In the second stage, the robot relocalizes in this map and builds a semantic object graph using an open-vocabulary object detector and a promptable segmentation model. Only the lightweight semantic stage is repeated on later visits, so the system scales well to frequent revisits. The object graph uses a category and distance based association rule to update objects, which lets the map reflect both intra-session changes (object changes within a single traversal) and inter-session changes (changes across revisits), such as objects being moved, removed, or added. We validate the system on a Fetch robot in two real indoor environments of about 8,500 sq.m and 117 sq.m, and report precision, recall, and F1 scores across multiple update iterations.



image info


Citation

Please cite this work if it helps in your research

@misc{allu2026buildoncemonitorcontinuously,
      title={Build Once, Monitor Continuously: Persistent Semantic Mapping via Autonomous Exploration and Open-Vocabulary Object Updates}, 
      author={Sai Haneesh Allu and Itay Kadosh and Tyler Summers and Yu Xiang},
      year={2026},
      eprint={2409.15493},
      archivePrefix={arXiv},
      primaryClass={cs.RO},
      url={https://arxiv.org/abs/2409.15493}, 
}

For any questions regarding this work, contact Sai Haneesh Allu. For any issues regarding this code, please raise an issue.

Index

  1. Installation
  2. Initialization
  3. Mapping and Exploration
  4. Environment Traversal planning
  5. Semantic Map Construction and Update
  6. Running on a real robot system
  7. Real World Demo



Installation

The following subsections provide detailed installation guidelines related to workspace setup, dependencies and other requirements to test this work effectively. Additionally, a docker has been provided with instructions. Credits to Iminolee.

A. Install ROS and Gazebo

This code is tested on ros noetic version. Detailed installation instructions are found here. To install ROS Noetic, execute the following commands in your terminal:

sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'

sudo apt install -y curl

curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -

sudo apt update

sudo apt install -y ros-noetic-desktop-full

echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc

source ~/.bashrc

For compatibility with ROS Noetic, Gazebo 11 is recommended. Detailed installation instructions are found here.

sudo sh -c 'echo "deb http://packages.osrfoundation.org/gazebo/ubuntu-stable `lsb_release -cs` main" > /etc/apt/sources.list.d/gazebo-stable.list'

wget https://packages.osrfoundation.org/gazebo.key -O - | sudo apt-key add -

sudo apt-get update

sudo apt-get install -y gazebo11

B. Create Conda Environment

We strongly recommend using a virtual environment for this work, preferably Anaconda or Miniconda. Create a new environment as follows:

File truncated at 100 lines see the full file

No version for distro melodic showing github. Known supported distros are highlighted in the buttons above.

Repository Summary

Description
Checkout URI https://github.com/irvlutd/autox-semmap.git
VCS Type git
VCS Version main
Last Updated 2026-09-01
Dev Status UNKNOWN
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

README

Build Once, Monitor Continuously: Persistent Semantic Mapping via Autonomous Exploration and Open-Vocabulary Object Updates

IROS 2026 WORLDS Workshop

Sai Haneesh Allu, Itay Kadosh, Tyler Summers, Yu Xiang

<div align=”center””>

arXiv ** ** Project WebPage ** ** Video

</div>


Persistent semantic monitoring of indoor spaces such as warehouses, hospitals, and offices requires a robot to repeatedly monitor an environment and track how objects change over time. Running full simultaneous localization and mapping (SLAM) with dense semantic reconstruction from scratch on every visit is redundant when the environment geometry stays the same and only the objects move. We present a modular two-stage system that separates geometric mapping from semantic updating. In the first stage, a frontier-based exploration method with a dynamic search window builds a 2D occupancy grid. In the second stage, the robot relocalizes in this map and builds a semantic object graph using an open-vocabulary object detector and a promptable segmentation model. Only the lightweight semantic stage is repeated on later visits, so the system scales well to frequent revisits. The object graph uses a category and distance based association rule to update objects, which lets the map reflect both intra-session changes (object changes within a single traversal) and inter-session changes (changes across revisits), such as objects being moved, removed, or added. We validate the system on a Fetch robot in two real indoor environments of about 8,500 sq.m and 117 sq.m, and report precision, recall, and F1 scores across multiple update iterations.



image info


Citation

Please cite this work if it helps in your research

@misc{allu2026buildoncemonitorcontinuously,
      title={Build Once, Monitor Continuously: Persistent Semantic Mapping via Autonomous Exploration and Open-Vocabulary Object Updates}, 
      author={Sai Haneesh Allu and Itay Kadosh and Tyler Summers and Yu Xiang},
      year={2026},
      eprint={2409.15493},
      archivePrefix={arXiv},
      primaryClass={cs.RO},
      url={https://arxiv.org/abs/2409.15493}, 
}

For any questions regarding this work, contact Sai Haneesh Allu. For any issues regarding this code, please raise an issue.

Index

  1. Installation
  2. Initialization
  3. Mapping and Exploration
  4. Environment Traversal planning
  5. Semantic Map Construction and Update
  6. Running on a real robot system
  7. Real World Demo



Installation

The following subsections provide detailed installation guidelines related to workspace setup, dependencies and other requirements to test this work effectively. Additionally, a docker has been provided with instructions. Credits to Iminolee.

A. Install ROS and Gazebo

This code is tested on ros noetic version. Detailed installation instructions are found here. To install ROS Noetic, execute the following commands in your terminal:

sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'

sudo apt install -y curl

curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -

sudo apt update

sudo apt install -y ros-noetic-desktop-full

echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc

source ~/.bashrc

For compatibility with ROS Noetic, Gazebo 11 is recommended. Detailed installation instructions are found here.

sudo sh -c 'echo "deb http://packages.osrfoundation.org/gazebo/ubuntu-stable `lsb_release -cs` main" > /etc/apt/sources.list.d/gazebo-stable.list'

wget https://packages.osrfoundation.org/gazebo.key -O - | sudo apt-key add -

sudo apt-get update

sudo apt-get install -y gazebo11

B. Create Conda Environment

We strongly recommend using a virtual environment for this work, preferably Anaconda or Miniconda. Create a new environment as follows:

File truncated at 100 lines see the full file

No version for distro noetic showing github. Known supported distros are highlighted in the buttons above.

Repository Summary

Description
Checkout URI https://github.com/irvlutd/autox-semmap.git
VCS Type git
VCS Version main
Last Updated 2026-09-01
Dev Status UNKNOWN
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

README

Build Once, Monitor Continuously: Persistent Semantic Mapping via Autonomous Exploration and Open-Vocabulary Object Updates

IROS 2026 WORLDS Workshop

Sai Haneesh Allu, Itay Kadosh, Tyler Summers, Yu Xiang

<div align=”center””>

arXiv ** ** Project WebPage ** ** Video

</div>


Persistent semantic monitoring of indoor spaces such as warehouses, hospitals, and offices requires a robot to repeatedly monitor an environment and track how objects change over time. Running full simultaneous localization and mapping (SLAM) with dense semantic reconstruction from scratch on every visit is redundant when the environment geometry stays the same and only the objects move. We present a modular two-stage system that separates geometric mapping from semantic updating. In the first stage, a frontier-based exploration method with a dynamic search window builds a 2D occupancy grid. In the second stage, the robot relocalizes in this map and builds a semantic object graph using an open-vocabulary object detector and a promptable segmentation model. Only the lightweight semantic stage is repeated on later visits, so the system scales well to frequent revisits. The object graph uses a category and distance based association rule to update objects, which lets the map reflect both intra-session changes (object changes within a single traversal) and inter-session changes (changes across revisits), such as objects being moved, removed, or added. We validate the system on a Fetch robot in two real indoor environments of about 8,500 sq.m and 117 sq.m, and report precision, recall, and F1 scores across multiple update iterations.



image info


Citation

Please cite this work if it helps in your research

@misc{allu2026buildoncemonitorcontinuously,
      title={Build Once, Monitor Continuously: Persistent Semantic Mapping via Autonomous Exploration and Open-Vocabulary Object Updates}, 
      author={Sai Haneesh Allu and Itay Kadosh and Tyler Summers and Yu Xiang},
      year={2026},
      eprint={2409.15493},
      archivePrefix={arXiv},
      primaryClass={cs.RO},
      url={https://arxiv.org/abs/2409.15493}, 
}

For any questions regarding this work, contact Sai Haneesh Allu. For any issues regarding this code, please raise an issue.

Index

  1. Installation
  2. Initialization
  3. Mapping and Exploration
  4. Environment Traversal planning
  5. Semantic Map Construction and Update
  6. Running on a real robot system
  7. Real World Demo



Installation

The following subsections provide detailed installation guidelines related to workspace setup, dependencies and other requirements to test this work effectively. Additionally, a docker has been provided with instructions. Credits to Iminolee.

A. Install ROS and Gazebo

This code is tested on ros noetic version. Detailed installation instructions are found here. To install ROS Noetic, execute the following commands in your terminal:

sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'

sudo apt install -y curl

curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -

sudo apt update

sudo apt install -y ros-noetic-desktop-full

echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc

source ~/.bashrc

For compatibility with ROS Noetic, Gazebo 11 is recommended. Detailed installation instructions are found here.

sudo sh -c 'echo "deb http://packages.osrfoundation.org/gazebo/ubuntu-stable `lsb_release -cs` main" > /etc/apt/sources.list.d/gazebo-stable.list'

wget https://packages.osrfoundation.org/gazebo.key -O - | sudo apt-key add -

sudo apt-get update

sudo apt-get install -y gazebo11

B. Create Conda Environment

We strongly recommend using a virtual environment for this work, preferably Anaconda or Miniconda. Create a new environment as follows:

File truncated at 100 lines see the full file