The official repository of iGEM Paris Bettencourt team's software tools.

Overview

iGEM_ParisBettencourt21

The official repository of iGEM Paris Bettencourt team's software tools.

Cell counting

There are two programs dedicated to the cell counting from the GFP images obtained from the experiments.

The first python program(gfpminicell_count.py) involves the following image processing techniques

  • cleaning by border stripping
  • gray-scaling
  • gaussian blurring
  • binary thresholding for preparing the processed image

The second program(cell_count.py) involves additional sharpening and thresholding techniques before gaussian blurring in order to capture the full contours of different sized images. So in sequence, the image goes through cleaning -> gray-scaling -> filter-convolved sharpening -> binary thresholding -> gaussian blurring -> final binary thresholding.

For the final counting, a procedure called contour mapping from OpenCV is used and the corresponding contours are counted as the number of cells seen on the processed images.

Example Images

There are two folders dedicated to store images for each of the two programs described above:

  • Cells folder consists of sample images containing both mother and minicells and
  • Minicells folder has Green Fluorescent Protein (GFP) images of only minicells

Running the program for cell counting

We need a basic python environment and preferably Miniconda or Anaconda as they help keep all the packages modular

  • In order to install the required packages for this program, run the following command that uses python3-pip: pip3 install -r requirements.txt

  • For minicell counting (from images that has only minicells filtered), put them in the Minicells folder and run the following command python gfpminicell_count.py -i GFPMinicells/3.png

  • For cell counting from images that includes both mother and minicells, put them in the Cells folder and run the following command in the main folder containing the .py file python cell_count.py -i Cells/mgfp01.JPG

    Note: Cells/mgfp01.JPG and Minicells/1.png are just sample images from the example folders, they could be replaced by GFP microscopic images with the corresponding relative path to the files

Interpreting results

The program outputs:

  • Original border-cropped image: "Cleaned-original image"

Example: GFPMinicells/3.png

  • Final processed image on which the contours are mapped and counted: "Contour-ready image"

Example: Contour-ready3.png

  • The number of cells counted in the GFP image: "cell-count" (Also in the window-caption of the processed image) Example above: cell-count is 18

Another (Mini)cells count example

Example: Cells/mgfp01.JPG

Image uploader

The image_uploading_bot.py script is dedicated to automated web navigation. It uses the selenium python extensions to

  • Upload a set of images from a local folder to the igem servers
  • Store the data of the uploaded files for accessible wiki editing

minicell producing culture models

There are two version of simulation for culture of minicell producing strains:

  • version 1 is an algorithmic approach for low number of cells
  • version 2 is another approach using approximation of partial differential equations

version 1

On the first version called minicell_bioproduction_model_v1.py different simulation where implementated according to different assumptions. The ouput are graphs of cell growing and minicell/mothercell counting

Owner
Abhay Koushik
I am an Engineer, Artist, and Researcher exploring Neurosciences and Psychology.
Abhay Koushik
The parser of a timetable of tennis matches for Flashscore website

FlashscoreParser The parser of a timetable of tennis matches for Flashscore website. The program collects the schedule of tennis matches for two days

Valendovsky 1 Jul 15, 2022
📜Generate poetry with gcc diagnostics

gado (gcc awesome diagnostics orchestrator) is a wrapper of gcc that outputs its errors and warnings in a more poetic format.

Dikson Santos 19 Jun 25, 2022
Set up a sidechain for the XRPL quickly and easily

Sidechain Launch Kit Introduction This directory contains python scripts to tests and explore side chains. This document walks through the steps to se

Xpring Engineering 15 Dec 08, 2022
【教程】莉沫酱教你学继承!?

【教程】莉沫酱教你学继承! 众所周知,类的继承就是说当一个类死亡的时候,它的子类会获得它拥有的资源。 根据类的继承法不同,各个子类能获得的资源也不同。 继承法的类型 在解释继承法之前,我们先定义三个类,一个父类A,和它的子类B、C。 它们都拥有x、y、z三个属性。

黄巍 17 Dec 05, 2022
Simple script to match riders with drivers.

theBestPooler Simple script to match riders with drivers. It's a greedy, unoptimised search, so no guarantees that it works. It just seems to work (ve

Devansh 1 Nov 22, 2021
Integration between the awesome window manager and the firefox web browser.

Integration between the awesome window manager and the firefox web browser.

contribuewwt 3 Feb 02, 2022
Gerador do Arquivo Magnético Sintegra em Python

pysintegra é uma lib simples com o objetivo de facilitar a geração do arquivo SINTEGRA seguindo o Convênio ICMS 57/95. Com o surgimento do SPED, muito

Felipe Correa 5 Apr 07, 2022
Weblate is a copylefted libre software web-based continuous localization system

Weblate is a copylefted libre software web-based continuous localization system, used by over 2500 libre projects and companies in more than 165 count

Weblate 7 Dec 15, 2022
Find the remote website version based on a git repository

versionshaker Versionshaker is a tool to find a remote website version based on a git repository This tool will help you to find the website version o

Orange Cyberdefense 110 Oct 23, 2022
A code base for python programs the goal is to integrate all the useful and essential functions

Base Dev EN This GitHub will be available in French and English FR Ce GitHub sera disponible en français et en anglais Author License Screen EN 🇬🇧 D

Pikatsuto 1 Mar 07, 2022
flake8 plugin which forbids match statements (PEP 634)

flake8-match flake8 plugin which forbids match statements (PEP 634)

Anthony Sottile 25 Nov 01, 2022
Find out where all films you want to watch are streaming

Just Watch Letterboxd Find out where all films you want to watch are streaming Ever wonder what films you want to watch are already on the streaming p

Jordan Oslislo 2 Feb 04, 2022
Sorter makes file organisation and management easier.

Sorter Sorter makes file organisation easier. It simply helps you organise several files that contain similar characteristics into a single folder. Yo

Aswa Paul 34 Aug 14, 2022
A python library for writing parser-based interactive fiction.

About IntFicPy A python library for writing parser-based interactive fiction. Currently in early development. IntFicPy Docs Parser-based interactive f

Rita Lester 31 Nov 23, 2022
synchronize projects via yaml/json manifest. built on libvcs

vcspull - synchronize your repos. built on libvcs Manage your commonly used repos from YAML / JSON manifest(s). Compare to myrepos. Great if you use t

python utilities for version control 200 Dec 20, 2022
Null safe support for Python

Null Safe Python Null safe support for Python. Installation pip install nullsafe Quick Start Dummy Class class Dummy: pass Normal Python code: o =

Paaksing 13 Nov 17, 2022
Vaccine for STOP/DJVU ransomware, prevents encryption

STOP/DJVU Ransomware Vaccine Prevents STOP/DJVU Ransomware from encrypting your files. This tool does not prevent the infection itself. STOP ransomwar

Karsten Hahn 16 May 31, 2022
Automatic and platform-independent unpacker for Windows binaries based on emulation

_ _ __ _ __ _ | | | | / / (_) \ \ | | | | | |_ __ | | _ | | _ __ __ _ ___| | _____ _ __

514 Dec 21, 2022
Plugin to manage site, circuit and device diagrams and documents in Netbox

Netbox Documents Plugin A plugin designed to faciliate the storage of site, circuit and device specific documents within NetBox Note: Netbox v3.2+ is

Jason Yates 38 Dec 24, 2022
This application is made solely for entertainment purposes

Timepass This application is made solely for entertainment purposes helps you find things to do when you're bored ! tells jokes guaranteed to bring on

Omkar Pramod Hankare 2 Nov 24, 2021