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
A place where the most basic, basic of python coding exists

python-basics A place where the most basic, basic of python coding exists As you can see, there are four folders and the best order to read is: appeti

Chuqin 2 Oct 05, 2022
Sync SiYuanNote & Yuque.

SiyuanYuque Sync SiYuanNote & Yuque. Install Use pip to install. pip install SiyuanYuque Execute like this: python -m SiyuanYuque Remember to create a

Clouder 23 Nov 25, 2022
Python library for parsing Godot scene files

Godot Parser This is a python library for parsing Godot scene (.tscn) and resource (.tres) files. It's intended to make it easier to automate certain

Steven Arcangeli 30 Jan 04, 2023
Covid 19 status. Flask application. CovidAPI. Heroku.

Covid 19 In this project we see total count of people who got this virus and total death. How does it works Written in Python. Web app, Flask. package

AmirHossein Mohammadi 12 Jan 16, 2022
Машинное обучение на ФКН ВШЭ

Курс "Машинное обучение" на ФКН ВШЭ Конспекты лекций, материалы семинаров и домашние задания (теоретические, практические, соревнования) по курсу "Маш

Evgeny Sokolov 2.2k Jan 04, 2023
Python-geoarrow - Storing geometry data in Apache Arrow format

geoarrow Storing geometry data in Apache Arrow format Installation $ pip install

Joris Van den Bossche 11 Mar 03, 2022
simple password manager.

simple password manager.

1 Nov 18, 2021
It is Keqin Wang first project in CMU, trying to use DRL(PPO) to control a 5-dof manipulator to draw line in space.

5dof-robot-writing this project aim to use PPO control a 5 dof manipulator to draw lines in 3d space. Introduction to the files the pybullet environme

Keqin Wang 4 Aug 22, 2022
MatroSka Mod Compiler for ts4scripts

MMC Current Version: 0.2 MatroSka Mod Compiler for .ts4script files Requirements Have Python 3.7 installed and set as default. Running from Source pip

MatroSka 1 Dec 13, 2021
Visual Python and C++ nanosecond profiler, logger, tests enabler

Look into Palanteer and get an omniscient view of your program Palanteer is a set of lean and efficient tools to improve the quality of software, for

Damien Feneyrou 1.9k Dec 26, 2022
ARA Records Ansible and makes it easier to understand and troubleshoot.

ARA Records Ansible ARA Records Ansible and makes it easier to understand and troubleshoot. It's another recursive acronym. What it does Simple to ins

Community managed Ansible repositories 1.6k Dec 25, 2022
Example applications, dashboards, scripts, notebooks, and other utilities built using Polygon.io

Polygon.io Examples Example applications, dashboards, scripts, notebooks, and other utilities built using Polygon.io. Examples Preview Name Type Langu

Tim Paine 4 Jun 01, 2022
Audio-analytics for music-producers! Automate tedious tasks such as musical scale detection, BPM rate classification and audio file conversion.

Click here to be re-directed to the Beat Inspect Streamlit Web-App You are a music producer? Let's get in touch via LinkedIn Fundamental Analytics for

Stefan Rummer 11 Dec 27, 2022
A person does not exist image bot

A person does not exist image bot

Fayas Noushad 3 Dec 12, 2021
Is a polybar module that will show you your progress in Hack The Box

HTB-Status for Polybar Is a polybar module that will show you your progress in Hack The Box indicating your current rank, global rank, points and resp

bitc0de 8 Jan 14, 2022
Includes Chapters for Python Crash Course session.

python-crash-course Includes Chapters for Python Crash Course session. What will you learn: Python Essentials Creating Server Writing REST API Writing

Vineet Rao 3 Feb 17, 2021
Time python - Códigos para auxiliar e mostrar formas de como fazer um relógio e manipular o seu tempo

Time_python Códigos para auxiliar e mostrar formas de como fazer um relógio e manipular o seu tempo. Bibliotecas Nestes foram usadas bibliotecas nativ

Eduardo Henrique 1 Jan 03, 2022
An easy way to access to your EPITECH subjects based on the Roslyn's database.

An easy way to access to your EPITECH subjects based on the Roslyn's database.

Mathias 1 Feb 09, 2022
Module for working with the site dnevnik.ru with python

dnevnikru Module for working with the site dnevnik.ru with python Dnevnik object accepts login and password from the dnevnik.ru account Methods: homew

Aleksandr 21 Nov 21, 2022
Quantity Takeoff with Python. Collecting groups of elements by filters

The free tool QuantityTakeoff allows you to group elements from Revit and IFC models (in BIMJSON-CSV format) with just a few filters and find the required volume values for the grouped elements.

OpenDataBIM 9 Jan 06, 2023