Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (
Help us improve Python packaging - Donate today!

ARIP, software to quantify bacterial resistance to antibiotics by analysing picture of phenotypic plates

Project Description

This software is aimed to quantify bacterial resistance to antibiotics by analysing pictures of phenotypic plates. Currently it supports 96 well plates where different bacteria are cultured with different concentrations of antibiotics, but the application adapt to different plates size in rows and columns. Computer vision algorithms have been implemented in order to detect different levels of bacterial growth. As a result, the software generates a report providing quantitative information for each well of the plate. Pictures should be taken so that the plate is square with the picture frame, the algorithm should be able to cope with a slight rotation of the plate.

Key methods:

  • Hough Circles method to detect circles in an image doc
  • Wells segmentation using threshold feature of opencv doc combining binary and otsu threshold
  • Quality detection using a grid model by rows and columns and clustering them, robust to scale and sensible rotation.


There are two ways for executing the process: binary or library * Binary using file allocated in the project:

python --image images/\<platename\>.png
  • Library installing as described below:

    import arip
    arip.process({'image': 'images/sinteticplate.jpg'})


images/<platename>.png with a plate and ninety six wells


  • Image with extracted wells: images/<platename>/outputXXX.png
  • Cropped image of extracted well: images/<platename>/<row><column><resistance>_<density>.png
  • Report in json format: images/<platename>/report.json
  • Log: images/<platename>/log.txt

description of schema: * row: well row index * column: well colmun index * total: well area in pixels * resistance: absolute resistance found in pixels * density: density of the resistance found

report example:


output images example:

4-A_122-0.23, is the well 4-A, with 122 pixels found as resistance with density of 17%

output log example:

customizing scale well: found False, num wells 93, min radius value 18, max radius value 23
customizing scale well: found False, num wells 96, min radius value 18, max radius value 24
customizing grid matching: found False, num wells recognized 96
Succesfully processed plate, found 96 wells

Installing dependencies


sudo apt-get install python-pip ### opencv sudo apt-get install build-essential sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev sudo apt-get install python-opencv ### scilab sudo apt-get install python-scipy

Installing arip

There are two ways of installing pynteractive: * Cloning the project

$ git clone
$ cd antibiotic-resistance-process
$ python install  ### (as root)


  • Normalizing radius by neighborhood instead of general average
  • Working with static grids or masks
Release History

Release History

This version
History Node


History Node


History Node


Download Files

Download Files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
arip-1.0.2-py2-none-any.whl (10.6 kB) Copy SHA256 Checksum SHA256 py2 Wheel Feb 14, 2017
arip-1.0.2-py2.py3-none-any.whl (10.6 kB) Copy SHA256 Checksum SHA256 py2.py3 Wheel Feb 14, 2017
arip-1.0.2.tar.gz (9.0 kB) Copy SHA256 Checksum SHA256 Source Feb 14, 2017

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting