Skip to content
Snippets Groups Projects
Commit aa55f254 authored by Amir MOHAMMADI's avatar Amir MOHAMMADI
Browse files

Add bob_to_pillow and back conversion

parent 6601f669
No related branches found
No related tags found
1 merge request!39Add bob_to_pillow and back conversion
Pipeline #60635 passed
import numpy as np
from PIL import Image
def to_matplotlib(img):
......@@ -45,6 +46,46 @@ def to_bob(img):
return np.moveaxis(img, -1, -3)
def bob_to_pillow(img):
"""Converts the floating or uint8 image to a Pillow Image.
Parameters
----------
img : numpy.ndarray
A gray-scale or RGB color image in Bob format (channels first)
Returns
-------
Image
An object of pillow.Image.
"""
# first convert to matplotlib format
img = to_matplotlib(img)
# if img is floating point, convert to uint8
if isinstance(img, np.floating):
# we expect float images to be between 0 and 1
img = np.clip(img, 0, 1) * 255
img = img.astype(np.uint8)
return Image.fromarray(img)
def pillow_to_bob(img):
"""Converts an RGB or gray-scale pillow image to Bob format
Parameters
----------
img : Image
A Pillow Image
Returns
-------
numpy.ndarray
Image in Bob format
"""
return to_bob(np.array(img))
def opencvbgr_to_bob(img):
"""Returns a view of the image from OpenCV BGR format to Bob RGB format.
This function works with images, batches of images, videos, and higher
......
......@@ -24,11 +24,13 @@ requirements:
- bob.extension
- h5py {{ h5py }}
- numpy {{ numpy }}
- pillow {{ pillow }}
- imageio {{ imageio }}
run:
- python
- setuptools
- {{ pin_compatible('numpy') }}
- {{ pin_compatible('pillow') }}
- {{ pin_compatible('imageio') }}
- {{ pin_compatible('h5py') }}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment