Change the future

Sunday 2:30 p.m.–3 p.m.

Purely Python Imaging with Pymaging

Jonas Obrist

Audience level:
Intermediate
Category:
Useful Libraries

Description

A little over a year ago, frustration with the state of image processing in Python led me to start a project called pymaging. Pymaging is a pure Python image processing library that works on Python 2.x and 3.x. This talk will dive into why I started this project, how I dug into the problems, what I learned about image formats and my goals for the future of this project.

Abstract

A little over a year ago, I had no clue how images on computers actually worked. Nevertheless, frustration with the current state of image processing in Python and curiosity led me to starting a project called pymaging. This project aims to become a pure Python image processing library that works on Python 2.x and 3.x. Currently, that goal is only partially achieved with pymaging supporting decoding for three formats and encoding in one, as well as a few high level APIs to do common tasks. However the project is starting to gain some contributors and I've built a proof of concept Django app powered by pymaging running on Python 3.2. This talk will dive into why I started this project, how I dug into the problems, what I learned about image formats and my goals for the future of the project.

This talk will cover the following points:

  • My background and why I started pymaging (5 minutes)
  • How I approached this, for me completely new, topic (5 minute)
  • A highlevel overview of how pymaging works (10 minutes)
  • The current state of pymaging (3 minutes)
  • Benefits and drawbacks of using pure Python for image processing (7 minutes)
  • How I maintain Python 2 and Python 3 support in the same codebase (3 minutes)
  • Lessons I've learned building this library (10 minutes)
  • The future of pymaging and imaging in Python (7 minutes)