Convert image loaded as binary string into numpy array

6.2k Views Asked by At

Is there a method to convert an image, that is loaded as a binary string, into a numpy array of size (im_height, im_width, 3)? Something like this:

# read image as binary string
with open(img_path, "rb") as image_file:
  image_string = image_file.read()

# convert image string to numpy
image_np = convert_binary_string_to_numpy(image_string)

How would that conversion function look like? I'm working with decryption, thus I need to work with binary strings. Thanks!

1

There are 1 best solutions below

0
Andriy Makukha On BEST ANSWER
import io
import numpy as np    
from PIL import Image

image_string = open(IMG_PATH, 'rb').read()
img = Image.open(io.BytesIO(image_string))
arr = np.asarray(img)