This project is a coding challenge focused on building an interactive application for analysing surgical videos. The application is designed to perform frame-by-frame analysis and support real-time processing for in-depth exploration of surgical procedures.
- Frame-by-frame video analysis: Allows users to step through each frame of a surgical video.
- Real-time processing: Provides an efficient interface for real-time surgical video review.
- Simple and interactive GUI: Built using
PySimpleGUI
for a user-friendly experience.
Ensure you have the following installed on your machine:
- Python 3.9+
pip
for installing Python packages
git clone https://github.com/solenedietsch/enAcuity-coding-challenge
cd enAcuity-coding-challenge
python -m venv venv
source venv/bin/activate # On Windows: venv\\Scripts\\activate
The project requires PySimpleGUI
and other libraries for video processing. Run the following command:
pip install -r requirements.txt
Once the setup is complete, you can run the application with the following command:
python app.py
- Start the application: Launch the GUI by running
main.py
. - Load video: Use the file picker to load a video from the Cholec80 dataset.
- Frame controls:
- Navigate frame-by-frame using the provided buttons.
- Pause and play for real-time processing.
- Analysis Tools: The interface provides basic real-time processing tools for video exploration.
If you encounter GUI issues:
-
Make sure PySimpleGUI is correctly installed.
-
Update PySimpleGUI using:
-
pip install --upgrade pysimplegui
-
Create a PySimpleGUI account: https://www.pysimplegui.com/pricing.
-
Create a Hobbyist account.
- Add annotation features for labeling surgical phases.
- Integrate machine learning models for automatic event detection.
Contributions are welcome! Feel free to submit issues or pull requests.
This project is licensed under the MIT License. See LICENSE
for details.