Skip to content

ravikt/astratag

 
 

Repository files navigation

AstraTag

Multi-Range Fiducial Marker for Spacecraft Rendezvous, Proximity Operations and Docking

This repository contains the implementation of multi-range, recursive fiducial marker AstraTag. The marker template is derived from square shaped Spidron. The marker is designed for in-orbit operations around cooperative targets. The objective of introducing recurisve feature is to make it suitable for conducting rendezvous and proximity operation. Its three layers provide robustness against a partial occlusion. Below are some of the sample markers.

To test the marker, a space-like environment was created using a pair of mock-up spacecraft. The mock-ups, inspired by the Aditya-L1 spacecraft and the Indian Space Station module BAS-01, were used as targets. The images below demonstrate a sample result. The setup was placed on a turntable to simulate out-of-plane rotation.

frame 0001 frame 0103

AstraTag markers can also be used in robotics application in terrestial and underwater environments.

Requirements

  • C++17 or later
  • OpenCV 4.x (required by CMake)
  • CMake 3.16 or later
  • A standard build toolchain (gcc/clang, make)

Quick build (recommended)

  1. Clone the repository and create a build directory:
git clone https://github.com/ravikt/astratag.git
cd astratag
mkdir build && cd build
cmake ..
make -j$(nproc)
# from project root
./build/astratag_detect

# or from build/
./astratag_detect

License

See LICENSE in the repository root for license terms.

About

Fiducial Marker for Spacecraft RPOD

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 99.5%
  • Other 0.5%