BlenderWebApp is a project that processes 3D .obj files, applies textures, and renders images using Blender. The rendered images and their corresponding YOLO annotations are made available through a web interface.
- Upload
.objfiles - Automatically apply textures to 3D models
- Render images from multiple angles
- Download rendered images and annotations
- Web interface for easy access
Before getting started, ensure you have the following installed:
- Python 3.x (preferably Python 3.8 or higher)
- Blender (version 4.2.3 LTS or later)
- Node.js and npm (for running the frontend)
- Redis (for managing Celery tasks)
- Git (for cloning the repository)
BlenderWebApp/
├── backend/
│ ├── app.py # Flask backend
│ ├── gateRenderer.py # Blender script for rendering
│ ├── uploads/ # Folder for uploaded .obj files
│ ├── renders/ # Folder for rendered images
│ └── textures/ # Folder for texture files
└── frontend/
├── public/ # Public static files
├── src/
│ └── App.js # Main React app
├── package.json # Frontend dependencies
├── README.md # Frontend-specific readme
└── requirements.txt # Python dependencies
git clone https://github.com/sohazur/BlenderWebApp.git
cd BlenderWebApppython3 -m venv venv
source venv/bin/activatepip install -r requirements.txt- On Linux/MacOS:
redis-server- On Windows, you may need to download and install Redis separately.
Open a new terminal in the BlenderWebApp directory and activate the virtual environment:
source venv/bin/activateThen start the worker:
celery -A backend.app.celery worker --loglevel=infoIn another terminal, navigate to the BlenderWebApp/backend directory, activate the virtual environment, and run:
flask run --port=5001The backend will start on http://localhost:5001.
cd frontendnpm installnpm startThe frontend will start on http://localhost:3000.
Navigate to http://localhost:3000 in your web browser.
Use the upload button to select and upload an OBJ file.
After uploading, the backend processes the file. You can see the progress in the UI. Once completed, download links for the rendered images will appear.
Click on the download links to save the rendered images to your local machine.