This is a Flask application that allows users to upload videos and perform video processing tasks using the COLMAP and NeRF libraries. The processed videos can be downloaded by the users.
Before running the application, ensure that you have the following dependencies installed:
- Python 3
- Flask
- Flask-SSE
- Redis
- COLMAP
- NeRF
You can install the required Python packages by running the following command:
pip install -r requirements.txt
Additionally, make sure you have Redis server installed and running. Update the REDIS_URL in the app.config section of the code to match your Redis server URL.
- Clone the repository:
git clone https://github.com/your-username/flask-video-processing.git- Navigate to the project directory:
cd flask-video-processing- Start the Flask application:
python app.py
The application will run on http://localhost:5000 by default.
- Access the application in your web browser and upload a video file.
- Wait for the processing to complete. You will see log messages indicating the progress.
- Once the processing is finished, you can download the processed video.
The project structure is as follows:
flask-video-processing/
|- scripts/
|- colmap2nerf.py
|- run.py
|- static/
|- css/
|- main.css
|- js/
|- main.js
|- templates/
|- index.html
|- app.py
|- base_cam.json
|- requirements.txt
|- readme.md- The
scriptsdirectory contains the Python scripts for video processing using COLMAP and NeRF. - The
staticdirectory contains the CSS and JavaScript files for the frontend. - The
templatesdirectory contains the HTML template for the application's UI. - The
app.pyfile is the main Flask application file. - The
base_cam.jsonfile is a configuration file for camera settings. - The
requirements.txtfile lists the required Python packages. - The
readme.mdfile is the documentation file.
If you want to contribute to this project, you can follow these steps:
- Fork the repository.
- Create a new branch:
git checkout -b feature/your-featureThis project is developed and maintained by the following team members:
He is responsible for coordinating the project, managing tasks, and ensuring timely completion of milestones. He also oversees the overall development process and ensures effective communication within the team.
He is responsible for designing and implementing the server-side logic of the application. He works on data processing, API development, and integration with external services.
He is a skilled frontend developer who handles the user interface and client-side development of the application. He is responsible for creating responsive and user-friendly interfaces using HTML, CSS, and JavaScript frameworks.