A powerful microscopy image analysis tool built with Streamlit for counting and analyzing objects in microscopy images.
- Image Upload: Support for PNG, JPG, JPEG, and TIFF formats
- Noise Reduction: Gaussian filtering with adjustable sigma parameter
- Multiple Thresholding Methods:
- Isodata
- Li
- Mean
- Minimum
- Otsu
- Triangle
- Yen
- Manual threshold control
- Object Detection: Automatic counting of objects in images
- Morphological Analysis:
- Area measurement
- Eccentricity calculation
- Statistical summaries
- Visualization: Color-coded labeled images for easy object identification
- Clone the repository:
git clone https://github.com/YOUR_USERNAME/cellscope.git
cd cellscope- Install the required dependencies:
pip install -r requirements.txtRun the application using Streamlit:
streamlit run app.pyThe application will open in your default web browser. From there:
- Upload a microscopy image using the file uploader
- Adjust the Gaussian filter sigma value in the sidebar
- Select a thresholding method to segment your image
- View the detected objects count and their properties
- Analyze statistical measurements (area, eccentricity)
- Python 3.7+
- streamlit
- numpy
- scikit-image
- matplotlib
- pandas
- Image Processing: The uploaded image is converted to grayscale if needed
- Filtering: A Gaussian filter reduces noise in the image
- Thresholding: Various algorithms segment the image into foreground (objects) and background
- Object Detection: Connected components are identified and labeled
- Quantification: Morphological properties are measured for each detected object
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.
Built with:
- Streamlit - Web application framework
- scikit-image - Image processing library
- NumPy - Numerical computing
- Pandas - Data analysis
Made with ❤️ for microscopy image analysis