8000 GitHub - xmprise1/goal_vit
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

xmprise1/goal_vit

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Goal-oriented Navigation with Vision Transformer

This project implements a Vision Transformer (ViT) based navigation system that combines RGB images, local occupancy maps, and goal information to generate robot control commands. The system is integrated with ROS for real-world robot control. In the case of the hybrid model, the control values predicted by the model are combined with the pure pursuit control values.

Project Structure

goal_vit/
├── models/         # Neural network models
├── ros/            # ROS node implementations
├── utils/          # Utility functions
├── config/         # Configuration files
├── ros_launch/     # gazebo simulator
└── README.md       # This file

Key Components

1. Vision Transformer Model

The core of the system is a custom Vision Transformer that processes:

  • RGB camera images (64×192)
  • Local occupancy maps (64×64)
  • Goal information (relative position, distance, angle)

The model outputs:

  • Linear velocity
  • Angular velocity

2. ROS Integration

The system includes:

  • Navigation controller node
  • Data collection node
  • Visualization utilities

3. Main Features

  • Real-time navigation control
  • Path following with Pure Pursuit correction
  • Automatic local map generation
  • Visual debugging tools
  • Comprehensive data collection

4. Limitations

  • Tested in a relatively simple Gazebo simulator; coordinate transformation for path information needs verification.
  • The current E2E model cannot avoid dynamic objects.

Demo

1. E2E Model

E2E Model

2. Hybrid Model

Hybrid Model

Installation

  1. Clone the repository:
git clone <repository_url>
cd goal_vit
  1. Install dependencies:
pip install -r requirements.txt
  1. Build the ROS package:
cd <catkin_workspace>
catkin_make

Usage

Training

  1. Collect training data:
rosrun goal_vit data_collector.py
  1. Train the model:
python train.py --config config/model_config.py

Deployment

  1. Start the navigation controller:
rosrun goal_vit controller.py _model_path:=path/to/model.pth _map_path:=path/to/map.pgm _yaml_path:=path/to/map.yaml
  1. Send navigation goals via RViz or command line:
rostopic pub /move_base_simple/goal geometry_msgs/PoseStamped "..."

Configuration

The system behavior can be customized through:

  • config/model_config.py: Model architecture and training parameters
  • config/ros_config.py: ROS node parameters and control settings

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%
0