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
Python Library to get fast extensive Dummy Data for testing

Dumda Python Library to get fast extensive Dummy Data for testing https://pypi.org/project/dumda/ Installation pip install dumda Usage: Cities from d

Oliver B. 0 Dec 27, 2021
Get a list of the top-10 rejected libraries in your WhiteSource inventory

WhiteSource Top 10 Rejected Libraries Generate a spreadsheet listing the 10 most common libraries in your WhiteSource inventory that were rejected by

WhiteSource-PS-tools 10 Mar 23, 2022
A Python version of Canvacord

A copy of canvacord made in python! Table of contents Installation Examples Creating Images Links Downloads Installation Run any of these commands in

10 Mar 28, 2022
Aggressor script that gets the latest commands from CobaltStrikes web site and creates an aggressor script based on tool options.

opsec-aggressor Aggressor script that gets the latest commands from CobaltStrikes opsec page and creates an aggressor script based on tool options. Gr

JP 10 Nov 26, 2022
Just messing around with AI for fun coding 😂

Python-AI Projects 🤖 World Clock ⏰ ⚙︎ Steps to run world-clock.py file Download and open the file in your Python IDE. Run the file a type the name of

Danish Saleem 0 Feb 10, 2022
easy_sbatch - Batch submitting Slurm jobs with script templates

easy_sbatch - Batch submitting Slurm jobs with script templates

Wei Shen 13 Oct 11, 2022
Быстрый локальный старт

Быстрый локальный старт

Anton Ogorodnikov 1 Sep 28, 2021
A simple IDA Pro plugin to show all HexRays decompiler comments written by user

XRaysComments A simple IDA Pro plugin to show all HexRays decompiler comments written by user Installation Copy the file xray_comments.py to the plugi

Nox 20 Dec 27, 2022
A basic DIY-project made using Python and MySQL

Banking-Using-Python-MySQL This is a basic DIY-project made using Python and MySQL. Pre-Requisite needed:-- MySQL command Line:- creating a database

ABHISHEK 0 Jul 03, 2022
KiCad bus length matching script.

KiBus length matching script This script implements way to monitor multiple nets, combined into a bus that needs to be length matched

Piotr Esden-Tempski 22 Mar 17, 2022
Junos PyEZ is a Python library to remotely manage/automate Junos devices.

The repo is under active development. If you take a clone, you are getting the latest, and perhaps not entirely stable code. DOCUMENTATION Official Do

Juniper Networks 623 Dec 10, 2022
Sample microservices application demo

Development mode docker-compose -f docker-compose.yml -f docker-compose.dev.yml up -d or export COMPOSE_FILE='docker-compose.yml:docker-compose.dev.ym

Konstantinos Bairaktaris 1 Nov 14, 2021
Developing and Comparing Vision-based Algorithms for Vision-based Agile Flight

DodgeDrone: Vision-based Agile Drone Flight (ICRA 2022 Competition) Would you like to push the boundaries of drone navigation? Then participate in the

Robotics and Perception Group 115 Dec 10, 2022
A python package for batch import of resume attachments to be parsed in HrFlow.

HrFlow Importer Description A python package for batch import of resume attachments to be parsed in HrFlow. hrflow-importer is an open-source project

HrFlow.ai (ex: Riminder.net) 3 Nov 15, 2022
An alternative site to emplea.do due to inconsistent service of the app.

feline a agile and fast alternative to emplea.do License: MIT Settings Moved to settings. Basic Commands Setting Up Your Users To create a normal user

Codetiger 8 Nov 10, 2021
A Google sheet which keeps track of the locations that want to visit and a price cutoff

FlightDeals Here's how the program works. First, I have a Google sheet which keeps track of the locations that I want to visit and a price cutoff. It

Lynne Munini 5 Nov 21, 2022
Курс про техническое совершенство для нетехнарей

Technical Excellence 101 Курс про техническое совершенство для нетехнарей. Этот курс представлят из себя серию воркшопов, при помощи которых можно объ

Anton Bevzuk 11 Nov 13, 2022
The Python Achievements Framework!

Pychievements: The Python Achievements Framework! Pychievements is a framework for creating and tracking achievements within a Python application. It

Brian 114 Jul 21, 2022
Check broken access control exists in the Java web application

javaEeAccessControlCheck Check broken access control exists in the Java web application. 检查 Java Web 应用程序中是否存在访问控制绕过问题。 使用 python3 javaEeAccessControl

kw0ng 3 May 04, 2022
A simple program which gets a file(CSV/Excel) with tasks and creates different variants

TestMakerProject A simple program which gets a file(CSV/Excel) with tasks and creates different variants The main program is QTengine.py You only have

George 3 Nov 18, 2021