8000 GitHub - avrtt/medvision: Medical img/video processing: optical flow (Farneback, Lucas-Kanade, DL), CBIR (SIFT/ORB/CNN embeddings), object detection and Dash interactivity
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Medical img/video processing: optical flow (Farneback, Lucas-Kanade, DL), CBIR (SIFT/ORB/CNN embeddings), object detection and Dash interactivity

License

Notifications You must be signed in to change notification settings

avrtt/medvision

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Medvision is an end-to-end solution built for a scientific institution that needed a tool for processing medical images and videos. The application enables:

  • Optical flow analysis
    Implements Farneback, Lucas-Kanade and deep learning-based optical flow algorithms for motion estimation.
  • Content-based image retrieval
    Uses SIFT, ORB and CNN-based embeddings to extract features and perform similarity search on a dataset.
  • Object detection & recognition
    Detects and recognizes patterns and objects in images/videos with state-of-the-art deep learning methods.
  • Video motion analysis
    Processes video streams for motion tracking and analysis.
  • Dashboard
    Visualizes statistics and results via an interactive dashboard built with Plotly Dash.

Installation

  1. Clone:
    git clone git@github.com:avrtt/medvision.git
    cd medvision
  2. Create a virtual environment & install dependencies:
    python -m venv venv
    source venv/bin/activate # Linux/Mac
    venv\Scripts\activate # Windows
    pip install -r requirements.txt
  3. Some modules (e.g., deep optical flow and CNN embeddings) use pre-trained weights. Please refer to the config.py file and follow the instructions to download the necessary files.

Usage

  • Process an image:
    python main.py --mode process_image --input path/to/image.png
  • Process a video:
    python main.py --mode process_video --input path/to/video.mp4
  • Perform CBIR:
    python main.py --mode retrieval --query path/to/query_image.png --dataset path/to/dataset
  • Launch dashboard:
    python main.py --mode dashboard
  • [to be expanded]

Project structure

.
├── README.md
├── .gitignore
├── requirements.txt
├── config.py
├── main.py
├── modules
│   ├── __init__.py
│   ├── image_processing.py
│   ├── video_processing.py
│   ├── optical_flow.py
│   ├── retrieval.py
│   ├── object_detection.py
│   └── dashboard.py
└── models
    ├── deep_flow_model.py
    └── cnn_embedding.py

Dependencies

numpy
opencv-python
matplotlib
dash
flask
torch
torchvision
scikit-learn
imutils
Pillow
plotly

Contributing

Contributions and suggestions are welcome.

License

GPL-3.0.

0