This commit is contained in:
John Evans 2014-11-21 10:21:55 -05:00
commit e165edbe53
2 changed files with 19 additions and 9 deletions

View file

@ -14,15 +14,12 @@ retrieve a full resolution and first lower-resolution image ::
>>> jp2file = glymur.data.nemo() # just a path to a JPEG2000 file >>> jp2file = glymur.data.nemo() # just a path to a JPEG2000 file
>>> jp2 = glymur.Jp2k(jp2file) >>> jp2 = glymur.Jp2k(jp2file)
>>> fullres = jp2[:] >>> fullres = jp2[:]
>>> print(fullres.shape) >>> fullres.shape
(1456, 2592, 3) (1456, 2592, 3)
>>> thumbnail = jp2[::2, ::2] >>> thumbnail = jp2[::2, ::2]
>>> print(thumbnail.shape) >>> thumbnail.shape
(728, 1296, 3) (728, 1296, 3)
The :py:meth:`read` method exposes many more options for other JPEG 2000
features such as quality layers.
... write images? ... write images?
================= =================
It's pretty simple, just supply the image data as the 2nd argument to the Jp2k It's pretty simple, just supply the image data as the 2nd argument to the Jp2k

View file

@ -345,11 +345,24 @@ class TestJp2k(unittest.TestCase):
self.assertEqual(newjp2.filename, self.j2kfile) self.assertEqual(newjp2.filename, self.j2kfile)
self.assertEqual(len(newjp2.box), 0) self.assertEqual(len(newjp2.box), 0)
@unittest.skip("see issue 302") @unittest.skipIf(WARNING_INFRASTRUCTURE_ISSUE, WARNING_INFRASTRUCTURE_MSG)
def test_rlevel_max(self): def test_rlevel_max_backwards_compatibility(self):
"""Verify that rlevel=-1 gets us the lowest resolution image""" """
Verify that rlevel=-1 gets us the lowest resolution image
This is an old option only available via the read method, not via
array-style slicing.
"""
j = Jp2k(self.j2kfile) j = Jp2k(self.j2kfile)
thumbnail1 = j.read(rlevel=-1) if sys.hexversion < 0x03000000:
with warnings.catch_warnings():
# Suppress a warning due to deprecated syntax
# Not as easy to verify the warning under python2.
warnings.simplefilter("ignore")
thumbnail1 = j.read(rlevel=-1)
else:
with self.assertWarns(DeprecationWarning):
thumbnail1 = j.read(rlevel=-1)
thumbnail2 = j[::32, ::32] thumbnail2 = j[::32, ::32]
np.testing.assert_array_equal(thumbnail1, thumbnail2) np.testing.assert_array_equal(thumbnail1, thumbnail2)
self.assertEqual(thumbnail1.shape, (25, 15, 3)) self.assertEqual(thumbnail1.shape, (25, 15, 3))