Python: Convert Image to String, Convert String to Image

To store or transfer an image, we often need to convert an image to a string in such a way that the string represents the image. Like other programming languages (e.g. Java), we can also convert an image to a string representation in Python.

Converting in Python is pretty straightforward, and the key part is using the “base64” module which provides standard data encoding an decoding.

Convert Image to String

Here is the code for converting an image to a string.

import base64
 
with open("t.png", "rb") as imageFile:
    str = base64.b64encode(imageFile.read())
    print str

Output:

iVBORw0KGgoAAAANSUhEUgAAAuAAAACFCAIAAACVGtqeAAAAA3
NCSVQICAjb4U/gAAAAGXRFWHRTb2Z0d2FyZQBnbm9tZS1zY3Jl
ZW5zaG907wO/PgAAIABJREFUeJzsnXc81d8fx9+fe695rYwIaa

Convert String to Image

The following code segment will create an image by using the given string.

fh = open("imageToSave.png", "wb")
fh.write(str.decode('base64'))
fh.close()

12 thoughts on “Python: Convert Image to String, Convert String to Image”

  1. i tried this to try one of the data compression algorithms, there you compress the string data and decompress and convert it back to bytes and then to image

Leave a Comment