This repository contains a Blender simulation of a satellite orbiting Earth, designed to generate datasets for algorithms such as Gaussian Splitting and Neural Radiance Fields (NeRF). The simulation is created using Blender 4.0 or higher.
The simulation showcases a satellite orbiting Earth, capturing data for use in various computational algorithms. This simulation can be utilized for research and development in fields related to computer vision, machine learning, and 3D graphics.
The simulation uses a 1:10000 scale model. The key measurements are as follows:
- Earth Diameter: 12756 km → 127.56 m in simulation
- Atmosphere Thickness: 100 km → 1 cm in simulation
- Total Diameter with Atmosphere: 12856 km → 128.56 m
- Satellite Size: 10 m → 0.001 m in simulation
- Low Earth Orbit (LEO): 500 km above Earth surface → 50 m in simulation
The satellite orbits approximately 50 m + (127.56 m / 2) ≈ 113.78 m from the Earth's center in the simulation.
-
Clone the repository:
git clone https://github.com/yourusername/satellite-orbit-simulation.git cd satellite-orbit-simulation
-
Install Blender 4.0 or higher: Follow the official Blender installation guide. set folder's name and hierarchy as described in Folder Structure section.
-
Open Blender and load the scene:
Open Blender, navigate to the
Scene
folder, and opensatellite_earth_model_for_3DGS.blend
. -
Generate Simulation:
- Adjust settings as needed (e.g., resolution, rendering details, animation settings) or click render->render animation to generate data with default settings.
- Alternatively, run the script
orbit_around_satellite.py
to automate the process.
- Nvidia GPU (any 3060 or higher will do)
- basic knowledge of blender
The repository is organized as follows:
Satellite_Orbiting_Earth_Simulation/
├── Scene/
│ ├── satellite_model.blend
│ ├── earth_model.blend
│ ├── satellite_earth_model.blend
│ ├── satellite_earth_model_for_3DGS.blend
│ └── Datasets/
│ └── "will have generated dataset"
├── Textures/
│ └── "Download and Paste earth texture from the given link"
├── Scripts/
│ └── orbit_around_satellite.py
Scene/
: Contains all scene-related files.satellite_model.blend
: Blender file for the satellite model.earth_model.blend
: Blender file for the Earth model.satellite_earth_model.blend
: Blender file for the combined satellite and Earth model.satellite_earth_model_for_3DGS.blend
: Blender file for the combined satellite and Earth model specifically for 3D Gaussian Splitting.
Textures/
: Folder containing texture files for the models.- Download and paste the Earth texture from the provided link. (first unzip the folder and rename it to "Textures" and paste)
Scripts/
: Folder for any Blender Python scripts used in the simulation.orbit_around_satellite.py
: Script to control the satellite's orbit around Earth.
Datasets/
: Folder to store generated datasets.- Will contain datasets generated from the simulation.
We welcome contributions to improve the simulation. If you have any suggestions or enhancements, please fork the repository, create a new branch, and submit a pull request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/YourFeature
) - Commit your changes (
git commit -m 'Add some feature'
) - Push to the branch (
git push origin feature/YourFeature
) - Open a pull request
Be nice to each other. enjoy!