This project provides a Tkinter-based graphical user interface (GUI) for visualizing 3D knee MRI volumes. The application enables users to view individual slices, identify regions of interest (ROIs) based on metadata, and interactively analyze medical images. It also supports zooming, downloading visualizations, and exploring localized slices for diagnostic purposes.
This tool is designed to assist radiologists and researchers in studying knee conditions, including ACL injuries.
- View MRI volumes with slice-by-slice visualization.
- Highlight and localize regions of interest (ROIs) using metadata.
- Interactive zooming and downloading of visualizations.
- Supports three classes:
- Healthy
- Partially Injured
- Completely Ruptured
The dataset used in this project is publicly available on Kaggle:
To use this tool, download the dataset from the above link and place the .pck
and metadata file.
-
Clone the repository: git clone https://github.com/yourusername/knee-mri-viewer.git cd knee-mri-viewer
-
Create a virtual environment: python -m venv venv source venv/bin/activate
-
Install dependencies: pip install -r requirements.txt
Run the Tkinter application: python src/app.py
- Select the class of interest (Healthy, Partially Injured, Completely Ruptured).
- Choose the corresponding Exam ID from the dropdown.
- Visualize the selected volume with highlighted ROIs.
- Use the "Zoom In" and "Zoom Out" buttons for detailed analysis.
- Save the visualized plot by clicking "Download Plot."
- Python 3.8+
- pandas
- numpy
- matplotlib
- tkinter
Contributions are welcome! Please fork this repository, create a feature branch, and submit a pull request.
This project is licensed under the MIT License - see the LICENSE file for details.