Perform oocyst segmentation in mercurochrome stained mosquito midgut

Overview

Midgut_oocyst_segmentation

Perform oocyst segmentation in mercurochrome stained mosquito midguts

This oocyst segmentation model also powers the webtool at http://got2findthemall.org/

Requirements to run locally:

(1) Build tools
     Visual Studio build tools if using Windows:
     https://visualstudio.microsoft.com/visual-cpp-build-tools/

     Xcode if using MacOS

     Linux: you should be able to figure this out if you use Linux

(2) Python and packages

Python >3.8

Python packages:
Notes: the listed versions are tested to work. You can use pip to install all the packages listed here,
or create a conda environment using conda_env.yml supplied by this repo
     torch=1.9.1
     torchvision=0.10.0
     torchaudio=0.9.1
     pandas=1.3.3
     pycocotools=2.0.2
     dataclasses=0.6
     typing=3.7.4.3
     opencv-python=4.5.3.56
     xlsxwriter=3.0.1
     detectron2=0.5

For the detectron2 package, you can git clone the repo and install using (must have Git installed):
python -m pip install 'git+https://github.com/facebookresearch/detectron2.git' --user

Instructions:

(1) Clone the repository

(2) unzip the two model weight files and keep it in the "model" directory:
     <1> model_0002399.MG.pth
       (unzip from model_0002399.MG.zip.001 and model_0002399.MG.zip.002)
     <2> model_0006199.pth
       (unzip from model_0006199.zip.001 and model_0006199.zip.002)

(3) prepare your own jpeg images and place them in a folder, or use the "test_images" folder

(4) run oocyst segementation with the following command:
     python oocyst_segmentation.py --dir [path to your folder]

(5) Four result files with the same prefix will be generated for each image
      count_N_size.xlsx               oocyst count, area and coordiate of each oocyst, average area
      [prefix].oocyst.jpg                oocyst annotated on the original image
      [prefix].midgut.jpg                midgut annotated on the original image
      [prefix].midgut.MASK.jpg       A full-resolution black-whight MASK of the midgut identified

Owner
Duo Peng
Duo Peng
Python project setup, updater, and launcher

Launcher Python project setup, updater, and launcher Purpose: Increase project productivity and provide features easily. Once installed as a git submo

DAAV, LLC 1 Jan 07, 2022
Patch PL to disable LK verification. Patch LK to disable boot/recovery verification.

Simple Python(3) script to disable LK verification in Amazon Preloader images and boot/recovery image verification in Amazon LK ("Little Kernel") images.

Roger Ortiz 18 Mar 17, 2022
An example module hooking system, will be used in PySAMP.

An example module hooking system, will be used in PySAMP.

2 May 01, 2022
Nook is a simple, concatenative programming language written in Python.

Nook Nook is a simple, concatenative programming language written in Python. Status Nook is currently WIP. It lacks a lot of basic feature, and will n

Wumi4 4 Jul 20, 2022
Prototype application for GCM bias-correction and downscaling

dodola Prototype application for GCM bias-correction and downscaling This is an unstable prototype. This is under heavy development. Features Nothing!

Climate Impact Lab 9 Dec 27, 2022
Python Repository for Bachelor Ski Sign.

BachelorSkiSign Python Repository for Bachelor Ski Sign. This application reads data from https://bachelorapi.azurewebsites.net/ It is written in Ciru

Winston 1 Jan 04, 2022
What Do Deep Nets Learn? Class-wise Patterns Revealed in the Input Space

What Do Deep Nets Learn? Class-wise Patterns Revealed in the Input Space Introduction: Environment: Python3.6.5, PyTorch1.5.0 Dataset: CIFAR-10, Image

8 Mar 23, 2022
ChainJacking is a tool to find which of your Go lang direct GitHub dependencies is susceptible to ChainJacking attack.

ChainJacking is a tool to find which of your Go lang direct GitHub dependencies is susceptible to ChainJacking attack.

Checkmarx 36 Nov 02, 2022
Zapiski za ure o C++-u

cpp-notes Zapiski o C++-u. Objavljena verzija je na https://e6.ijs.si/~jslak/c++/ Generating the notes The setup assumes you are working in a Linux en

Jure Slak 1 Jan 05, 2022
A collection of some leetcode challenges in python and JavaScript

Python and Javascript Coding Challenges Some leetcode questions I'm currently working on to open up my mind to better ways of problem solving. Impleme

Ted Ngeene 1 Dec 20, 2021
Blender 3.0 Python - Open temporary areas in the Text Editor

PopDrawers When editing text in Blender, it can be handy to have areas like Info, Console, Outliner, etc visible on screen to help with scripting. How

SpectralVectors 7 Nov 16, 2022
A program made in PYTHON🐍 that automatically performs data insertions into a POSTGRES database 🐘 , using as base a .CSV file πŸ“ , useful in mass data insertions

A program made in PYTHON🐍 that automatically performs data insertions into a POSTGRES database 🐘 , using as base a .CSV file πŸ“ , useful in mass data insertions.

Davi Galdino 1 Oct 17, 2022
Watcher for systemdrun user scopes

Systemctl Memory Watcher Animated watcher for systemdrun user scopes. Usage Launch some process in your GNU-Linux or compatible OS with systemd-run co

Antonio Vanegas 2 Jan 20, 2022
New multi tool im making adding features currently

Emera Multi Tool New multi tool im making adding features currently Current List of Planned Features - Linkvertise Bypasser - Discord Auto Bump - Gith

Lamp 3 Dec 03, 2021
FCurve-Cleaner: Tries to clean your dense mocap graphs like an animator would

Tries to clean your dense mocap graphs like an animator would! So it will produce a usable artist friendly result while maintaining the original graph.

wiSHFul97 5 Aug 17, 2022
A telegram bot which programed to countdown.

countdown-vi this is a telegram bot which programed to countdown. usage well, first you should specify a exact interval. there is 5 column, very first

Arya Shabane 3 Feb 15, 2022
An-7 tool for python

***An-7 tool - Anonime-X Team*** An-x Menu : SPAM Android web malware interpreter Spam Tools : scampages letters mailers smtpcrack wpbrute shell Andro

Hamza Anonime 8 Nov 18, 2021
Aim of the project is to reduce phishing victims. πŸ˜‡

Sites: For more details visit our Blog. How to use πŸ˜€ : You just have to paste the url in the ENTER THE SUSPECTED URL section and SELECT THE RESEMBELI

0 May 19, 2022
Calculatrix is a project where I'll create plenty of calculators in a lot of differents languages

Calculatrix What is Calculatrix ? Calculatrix is a project where I'll create plenty of calculators in a lot of differents languages. I know this sound

1 Jun 14, 2022