Archeon is an immersive VR application that transforms real-world environments into interactive 3D experiences using cutting-edge Gaussian Splats technology. Capture spaces with your mobile device, process them in the cloud, and experience them in virtual reality.
- ๐ฑ Mobile Capture: Record real environments using the Archeon mobile app
- ๐ฎ Gaussian Splats Technology: Advanced AI converts 2D videos to photorealistic 3D models
- โ๏ธ Cloud Sync: Seamless synchronization of 3D models via Firebase
- ๐ถ๏ธ VR Experience: Immersive viewing with full 6DOF movement support
- ๐ Web Viewer: Non-VR browser-based model viewing option
- ๐ User Authentication: Secure Firebase-based user management
โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ
โ Mobile App โโโโถโ Cloud AI โโโโโถโ Desktop Viewer โ
โ (Recording) โ โ (Processing) โ โ (VR/Web) โ
โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ
โ โ โ
โ โโโโโโโโโโโโโโโโโโโ โ
โโโโโโโโโโโโโโโถโ Firebase Cloud โโโโโโโโโโโโโโโโ
โ Storage โ
โโโโโโโโโโโโโโโโโโโ
ArcheonSetup/
โโโ Archeon.py # Main Streamlit application
โโโ archeon.yaml # Conda environment configuration
โโโ logo-no-background.png # Application logo
โโโ viewer/ # Unity VR viewer application
โ โโโ ArcheonViewer.exe # Main VR viewer executable
โ โโโ ArcheonViewer_Data/ # Unity application data
โ โโโ MonoBleedingEdge/ # Unity runtime
โ โโโ UnityCrashHandler64.exe # Unity crash handler
โ โโโ UnityPlayer.dll # Unity player library
โโโ web_viewer/ # Web-based viewer
โ โโโ GaussianSplats3D/ # Gaussian Splats 3D library
โ โโโ package.json # npm configuration
โ โโโ build/ # Built demo files
โ โโโ util/ # Development server utilities
โ โโโ demo/ # Demo content
โโโ downloads/ # User model storage (created at runtime)
โ โโโ [user_id]/ # Per-user synchronized content
โโโ viewer.zip # Zipped viewer for distribution
โโโ .gitignore # Git ignore file
โโโ LICENSE # MIT License
- Operating System: Windows 10/11 64-bit
- Python: 3.9+
- Node.js: 16+ (for web viewer)
- npm: Latest version
- VR Hardware (optional): Oculus Rift/Quest, HTC Vive, Valve Index
- Minimum RAM: 8GB (16GB recommended)
- Graphics: NVIDIA GTX 1060 / AMD RX 580 or better
-
Clone the repository
git clone <repository-url> cd ArcheonSetup
-
Create and activate conda environment
conda env create -f archeon.yaml conda activate archeon
-
Setup Web Viewer (Required for non-VR viewing)
cd web_viewer/GaussianSplats3D npm install # If dependencies need to be installed npm run demo
This will start the Gaussian Splats 3D viewer server on
http://localhost:8080 -
Run the main application (in a new terminal)
# Navigate back to project root cd .. streamlit run Archeon.py
-
Access the web interface
- Main app:
http://localhost:8501 - Web viewer:
http://localhost:8080 - Log in with your Archeon account credentials
- Main app:
Note: Keep both servers running simultaneously for full functionality. The main Streamlit app handles authentication and file sync, while the web viewer provides browser-based 3D model viewing.
- Download the Archeon mobile app
- Record videos of real-world spaces by walking around them
- Upload directly from the mobile app for cloud processing
- Advanced computer vision algorithms analyze your video
- Gaussian Splats technology creates photorealistic 3D models
- Processing typically takes 15-30 minutes per environment
- Use the desktop app to sync processed models to your computer
- Launch the VR viewer for immersive 6DOF exploration
- Or use the web viewer for non-VR experiences
- Login: Use your Archeon account credentials
- Model Sync Tab:
- View all your processed 3D environments
- Click "Sync Models" to download to local storage
- Model Viewer Tab:
- Launch Viewer: Opens the Unity-based VR application
- Launch Non-VR Viewer: Opens web viewer in new browser tab
- Launch embedded Non-VR Viewer: Shows web viewer within the app
- Help Tab: Documentation and troubleshooting
๐ถ๏ธ VR Mode (Unity Viewer):
- Full immersive VR experience
- 6DOF movement and interaction
- Requires VR headset
- Launched via "Launch Viewer" button
๐ Web Mode (Browser Viewer):
- No VR hardware required
- Mouse and keyboard controls
- Runs at
http://localhost:8080 - Accessible via web viewer buttons or direct browser access
The web viewer must be running before using web viewing options:
cd web_viewer/GaussianSplats3D
npm run demoKeep this terminal open while using the application.
- Movement: Use VR controllers or headset tracking
- Scale: Adjust model size for comfortable viewing
- Lighting: Toggle different lighting modes
- Navigation: Teleport or smooth locomotion options
- Input: Video files from mobile app (.mp4, .mov)
- 3D Models: Gaussian Splats (.gs files)
- Web Rendering: Real-time Gaussian Splats via WebGL
- Average model size: 5-50MB
- Typical processing time: 15-30 minutes
Minimum:
- Intel i5 / AMD Ryzen 5
- 8GB RAM
- NVIDIA GTX 1060 / AMD RX 580
- 500MB + model storage space
Recommended:
- Intel i7 / AMD Ryzen 7
- 16GB RAM
- NVIDIA RTX 3060 / AMD RX 6600 XT
- SSD storage
Dependencies:
streamlit- Web interface frameworkpyrebase4- Firebase integrationrequests- HTTP clientpycryptodome- Cryptographic functions
Web Viewer Dependencies:
@mkkellogg/gaussian-splats-3d- Gaussian Splats 3D rendering library- Node.js server for serving 3D models
- Modern web browser with WebGL support
External services:
- Firebase Authentication
- Firebase Cloud Storage
- Archeon AI Processing Pipeline
The application connects to Firebase using predefined configuration. For development or custom deployments, modify the firebase_config dictionary in Archeon.py:
firebase_config = {
"apiKey": "your-api-key",
"authDomain": "your-project.firebaseapp.com",
"projectId": "your-project-id",
# ... other config
}Models appear distorted:
- Ensure adequate lighting during recording
- Record from multiple angles and positions
- Move slowly and steadily while recording
Sync fails:
- Check internet connection
- Verify sufficient disk space
- Try logging out and back in
VR viewer won't launch:
- Confirm system requirements are met
- Ensure VR headset is properly connected
- Check that all files synced successfully
Web viewer not loading:
- Ensure
npm run demois running fromweb_viewer/GaussianSplats3D/directory - Check that port 8080 is not blocked by firewall
- Verify Node.js and npm are properly installed
- Try refreshing the browser or clearing cache
Web viewer shows blank page:
- Confirm models have been synced to local directory
- Check browser console for JavaScript errors
- Ensure WebGL is enabled in your browser
- ๐ง Email: hamzaaamer6@gmail.com
For questions, issues, or feedback, please reach out via email.
graph LR
A["๐ฑ Record with Mobile App"] --> B["โ๏ธ Upload to Cloud"]
B --> C["๐ค AI Processing"]
C --> D["๐ป Download to Desktop"]
D --> E["๐ถ๏ธ View in VR/Web"]
style A fill:#e3f2fd,stroke:#1976d2,stroke-width:2px,color:#000
style B fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px,color:#000
style C fill:#fce4ec,stroke:#c2185b,stroke-width:2px,color:#000
style D fill:#e8f5e8,stroke:#388e3c,stroke-width:2px,color:#000
style E fill:#fff3e0,stroke:#f57c00,stroke-width:2px,color:#000
-
Start the web viewer development server:
cd web_viewer/GaussianSplats3D npm install # If first time setup npm run demo # Starts the Gaussian Splats 3D demo server
-
Start the main Streamlit application:
# In a new terminal, from project root conda activate archeon streamlit run Archeon.py -
Access development interfaces:
- Main app:
http://localhost:8501 - Web viewer:
http://localhost:8080
- Main app:
The web viewer uses the Gaussian Splats 3D library (@mkkellogg/gaussian-splats-3d) for browser-based 3D model viewing:
- Location:
./web_viewer/GaussianSplats3D/ - Start command:
npm run demo - Technology: Gaussian Splats 3D rendering in WebGL
- Integration: Serves 3D models via HTTP on localhost:8080
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under a customized Academic License - see the LICENSE file for details.
- Unity Technologies for VR framework
- Firebase for cloud infrastructure
- Streamlit for web interface framework
- @mkkellogg/gaussian-splats-3d library for web-based Gaussian Splats rendering
- The Gaussian Splats research community
Made with โค๏ธ by the Archeon Team
Transform reality into immersive experiences
