Skip to content
Snippets Groups Projects
Commit 2e519abc authored by Paul McCarthy's avatar Paul McCarthy :mountain_bicyclist:
Browse files

Merge branch 'mnt/jpeg2000' into 'master'

MNT: Rudimentary support for JPEG 2000.

See merge request fsl/fslpy!316
parents 8d1f3fa3 decb9bec
No related branches found
No related tags found
No related merge requests found
Pipeline #12188 passed
...@@ -2,6 +2,19 @@ This document contains the ``fslpy`` release history in reverse chronological ...@@ -2,6 +2,19 @@ This document contains the ``fslpy`` release history in reverse chronological
order. order.
3.8.0 (Under development)
-------------------------
Added
^^^^^
* New :func:`.fslorient` wrapper function (!315).
* The :class:`.Bitmap` class has basic support for loading JPEG2000 images
(!316).
3.7.1 (Friday 12th November 2021) 3.7.1 (Friday 12th November 2021)
--------------------------------- ---------------------------------
......
...@@ -22,7 +22,8 @@ log = logging.getLogger(__name__) ...@@ -22,7 +22,8 @@ log = logging.getLogger(__name__)
BITMAP_EXTENSIONS = ['.bmp', '.png', '.jpg', '.jpeg', BITMAP_EXTENSIONS = ['.bmp', '.png', '.jpg', '.jpeg',
'.tif', '.tiff', '.gif', '.rgba'] '.tif', '.tiff', '.gif', '.rgba',
'.jp2', '.jpg2', '.jp2k']
"""File extensions we understand. """ """File extensions we understand. """
...@@ -34,7 +35,10 @@ BITMAP_DESCRIPTIONS = [ ...@@ -34,7 +35,10 @@ BITMAP_DESCRIPTIONS = [
'TIFF', 'TIFF',
'TIFF', 'TIFF',
'Graphics Interchange Format', 'Graphics Interchange Format',
'Raw RGBA'] 'Raw RGBA',
'JPEG 2000',
'JPEG 2000',
'JPEG 2000']
"""A description for each :attr:`BITMAP_EXTENSION`. """ """A description for each :attr:`BITMAP_EXTENSION`. """
...@@ -54,9 +58,11 @@ class Bitmap(object): ...@@ -54,9 +58,11 @@ class Bitmap(object):
if isinstance(bmp, (pathlib.Path, str)): if isinstance(bmp, (pathlib.Path, str)):
try: try:
# Allow big images # Allow big/truncated images
import PIL.Image as Image import PIL.Image as Image
Image.MAX_IMAGE_PIXELS = 1e9 import PIL.ImageFile as ImageFile
Image .MAX_IMAGE_PIXELS = None
ImageFile.LOAD_TRUNCATED_IMAGES = True
except ImportError: except ImportError:
raise RuntimeError('Install Pillow to use the Bitmap class') raise RuntimeError('Install Pillow to use the Bitmap class')
......
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