Skip to content
/ abram Public

The Astronomical Bodies Rendering Application for Mission design (ABRAM) is a validated physically-based open-access render engine for planets, moons and small bodies.

License

Notifications You must be signed in to change notification settings

andrepiz/abram

Repository files navigation

ABRAM

The Astronomical Bodies Rendering Application for Mission design is a validated physically-based render engine for planets, moons and small bodies.

Installation & Usage

Clone the repository and the linked submodules by running the following git commands:

git clone https://github.com/andrepiz/abram

git submodule init

git submodule update

Then, simply run the script call() to generate your first rendering. Check the ABRAM wiki to access the full documentation.

Dependencies

ABRAM has been developed and tested in MATLAB r2023b with the following dependencies:

  • Image Processing Toolbox (required)
  • Parallel Computing Toolbox (for multi-thread rendering)
  • Statistics and Machine Learning Toolbox (for image noises)

Credits

If you use the tool, please cite it in your work as:

A. Pizzetti, P. Panicucci, F. Capolupo, F.Topputo. "Development and Validation of a Physically Based Rendering Methodology for Celestial Bodies". Under review.

Publications

ABRAM has been used in the following publications:

A. Pizzetti, P. Panicucci, F.Topputo. "A Bottom-Up Approach for Radiometric Validation of Synthetic Imagery". Inter-Agency GNC V&V Workshop (IAGNC 2025).

A. Pizzetti, P. Panicucci, F.Topputo. "A Radiometric Consistent Render Procedure for Planets and Moons". 4th Space Imaging Workshop.

P. Panicucci, C. Balossi, F. Ornati, F. Piccolo, A. Pizzetti, F.Topputo, F. Capolupo. "What if Star Trackers Were Navigation Cameras?". 35th AAS/AIAA Space Flight Mechanics Meeting.

Get involved

Feel free to open an issue to report a bug or ask for a functionality. Do you want to contribute to the project or you need some help in the usage? e-mail me at andrea.pizzetti@polimi.it

Version Changelog
v1.7 Changed algorithm of frustum culling; added raymarching shadow culling algorithm; added depthbuffer shadow culling algorithm; added depth map as optional output; added new concentrated sampling; refactored code and architecture; added default objects initialization; extended flexibility of inputs
v1.6 Added horizon maps; added support to tiled maps; added support to multi-threads parallelization
v1.5 Added support to hyperspectral maps; added support to non-spherical shapes; added tutorials
v1.4 Improved frame rate; added Hapke reflection model; added ellipsoidal shapes
v1.3 Added occlusions; improved direct gridding efficiency; added smart-calling of methods
v1.2 New object-oriented architecture; new fast mode with constant BRDF and no loops; increased fps at close range by pre-computing fov intersection; capability to merge QE and T spectra defined at different wavelengths
v1.1 Added parallelization
v1.0 Ready for dissemination

About

The Astronomical Bodies Rendering Application for Mission design (ABRAM) is a validated physically-based open-access render engine for planets, moons and small bodies.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages