Skip to main content

Benchmark for image reading for different libraries.

Project description

Code style: black CircleCI

I/O benchmark

I/O benchmark for different image processing python libraries.

The code is inspired by the benchmark code of Alex Parinov for the albumentations library.

https://github.com/albu/albumentations/blob/master/benchmark/benchmark.py

The idea is inspired by the work of Roman Soloviov:

https://www.kaggle.com/zfturbo/benchmark-2019-speed-of-image-reading

Installation

sudo apt install libturbojpeg libvips-dev

You can use pip to install imread_benchmark:

pip install imread_benchmark

If you want to get the latest version of the code before it is released on PyPI you can install the library from GitHub:

pip install -U git+https://github.com/ternaus/imread_benchmark

To calculate the I/O speed of your SSD/HDD in Linux

sudo apt-get install hdparm

sudo hdparm -Tt <disk_id>

where disk_id is of the type /dev/sda

As a result you may expect something like:

/dev/sda:
 Timing cached reads:   26114 MB in  1.99 seconds = 13122.03 MB/sec
 Timing buffered disk reads: 1062 MB in  3.00 seconds = 353.70 MB/sec

To run the benchmark

To get the description of all input parameters

imread_benchmark -h
imread_benchmark -d <path to images> \
                 -i <number of images to use> \
                 -r <number of repeats>

Extra options: -p - to print benchmarked libraries versions -s - to shuffle images on every run --show-std - to show standard deviation for measurements

Libraries that are benchmarked:

  • OpenCV
  • pillow-simd (PIL-SIMD)
  • jpeg4py
  • scikit-image (skimage)
  • imageio
  • pyvips

Project details


Download files

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

Files for imread-benchmark, version 0.0.5
Filename, size File type Python version Upload date Hashes
Filename, size imread_benchmark-0.0.5-py2.py3-none-any.whl (5.7 kB) File type Wheel Python version py2.py3 Upload date Hashes View hashes
Filename, size imread_benchmark-0.0.5.tar.gz (5.2 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page