From bb705db4615e5e91d16806617398333895df6af4 Mon Sep 17 00:00:00 2001 From: John Evans Date: Tue, 9 Jul 2013 08:16:37 -0400 Subject: [PATCH] pylint work, wraps up much of jp2k module. #71 --- docs/source/how_do_i.rst | 6 +- glymur/jp2k.py | 128 +++++++++--------- glymur/test/test_callbacks.py | 4 +- glymur/test/test_jp2k.py | 22 ++-- glymur/test/test_opj_suite.py | 212 +++++++++++++++--------------- glymur/test/test_opj_suite_neg.py | 6 +- glymur/test/test_printing.py | 4 +- 7 files changed, 195 insertions(+), 187 deletions(-) diff --git a/docs/source/how_do_i.rst b/docs/source/how_do_i.rst index a15b865..5fcee3a 100644 --- a/docs/source/how_do_i.rst +++ b/docs/source/how_do_i.rst @@ -6,13 +6,13 @@ How do I...? Read the lowest resolution thumbnail? ===================================== Printing the Jp2k object should reveal the number of resolutions (look in the -COD segment section), but you can take a shortcut by supplying -1 as the reduce -level. :: +COD segment section), but you can take a shortcut by supplying -1 as the +resolution level. :: >>> import glymur >>> file = glymur.data.nemo() >>> j = glymur.Jp2k(file) - >>> thumbnail = j.read(reduce=-1) + >>> thumbnail = j.read(rlevel=-1) Display metadata? ================= diff --git a/glymur/jp2k.py b/glymur/jp2k.py index 64dbcd1..1677954 100644 --- a/glymur/jp2k.py +++ b/glymur/jp2k.py @@ -44,22 +44,25 @@ _CMPFUNC = ctypes.CFUNCTYPE(ctypes.c_void_p, ctypes.c_char_p, ctypes.c_void_p) def _default_error_handler(msg, _): + """Default error handler callback for openjpeg library.""" msg = "OpenJPEG library error: {0}".format(msg.decode('utf-8').rstrip()) _opj2.set_error_message(msg) def _default_info_handler(msg, _): + """Default info handler callback for openjpeg library.""" print("[INFO] {0}".format(msg.decode('utf-8').rstrip())) def _default_warning_handler(library_msg, _): + """Default warning handler callback for openjpeg library.""" library_msg = library_msg.decode('utf-8').rstrip() msg = "OpenJPEG library warning: {0}".format(library_msg) warnings.warn(msg) -_error_callback = _CMPFUNC(_default_error_handler) -_info_callback = _CMPFUNC(_default_info_handler) -_warning_callback = _CMPFUNC(_default_warning_handler) +_ERROR_CALLBACK = _CMPFUNC(_default_error_handler) +_INFO_CALLBACK = _CMPFUNC(_default_info_handler) +_WARNING_CALLBACK = _CMPFUNC(_default_warning_handler) class Jp2k(Jp2kBox): @@ -86,10 +89,12 @@ class Jp2k(Jp2kBox): mode : str, optional The mode used to open the file. """ + Jp2kBox.__init__(self) self.filename = filename self.mode = mode self.box = [] - self.offset = 0 + self._codec_format = None + self._file_size = 0 # Parse the file for JP2/JPX contents only if we are reading it. if mode == 'rb': @@ -117,11 +122,11 @@ class Jp2k(Jp2kBox): self.length = stat.st_size self._file_size = stat.st_size - with open(self.filename, 'rb') as f: + with open(self.filename, 'rb') as fptr: # Make sure we have a JPEG2000 file. It could be either JP2 or # J2C. Check for J2C first, single box in that case. - read_buffer = f.read(2) + read_buffer = fptr.read(2) signature, = struct.unpack('>H', read_buffer) if signature == 0xff4f: self._codec_format = _opj2.CODEC_J2K @@ -135,21 +140,23 @@ class Jp2k(Jp2kBox): # First 4 bytes should be 12, the length of the 'jP ' box. # 2nd 4 bytes should be the box ID ('jP '). # 3rd 4 bytes should be the box signature (13, 10, 135, 10). - f.seek(0) - read_buffer = f.read(12) + fptr.seek(0) + read_buffer = fptr.read(12) values = struct.unpack('>I4s4B', read_buffer) - L = values[0] - T = values[1] + box_length = values[0] + box_id = values[1] signature = values[2:] - if L != 12 or T != b'jP ' or signature != (13, 10, 135, 10): + if ((box_length != 12) or (box_id != b'jP ') or + (signature != (13, 10, 135, 10))): msg = '{0} is not a JPEG 2000 file.'.format(self.filename) raise IOError(msg) # Back up and start again, we know we have a superbox (box of # boxes) here. - f.seek(0) - self.box = self.parse_superbox(f) + fptr.seek(0) + self.box = self.parse_superbox(fptr) + # pylint: disable-msg=W0221 def write(self, img_array, cratios=None, eph=False, psnr=None, numres=None, cbsize=None, psizes=None, grid_offset=None, sop=False, subsam=None, tilesize=None, prog=None, modesw=None, @@ -214,7 +221,7 @@ class Jp2k(Jp2kBox): >>> import glymur >>> jfile = glymur.data.nemo() >>> jp2 = glymur.Jp2k(jfile) - >>> data = jp2.read(reduce=1) + >>> data = jp2.read(rlevel=1) >>> from tempfile import NamedTemporaryFile >>> tfile = NamedTemporaryFile(suffix='.jp2', delete=False) >>> j = Jp2k(tfile.name, mode='wb') @@ -224,8 +231,8 @@ class Jp2k(Jp2kBox): cparams = _opj2.set_default_encoder_parameters() outfile = self.filename.encode() - n = _opj2.PATH_LEN - len(outfile) - outfile += b'0' * n + num_pad_bytes = _opj2.PATH_LEN - len(outfile) + outfile += b'0' * num_pad_bytes cparams.outfile = outfile if self.filename[-4:].lower() == '.jp2': @@ -241,19 +248,19 @@ class Jp2k(Jp2kBox): cparams.cp_disto_alloc = 1 if cbsize is not None: - w = cbsize[1] - h = cbsize[0] - if h * w > 4096 or h < 4 or w < 4: + width = cbsize[1] + height = cbsize[0] + if height * width > 4096 or height < 4 or width < 4: msg = "Code block area cannot exceed 4096. " msg += "Code block height and width must be larger than 4." raise RuntimeError(msg) - if ((math.log(h, 2) != math.floor(math.log(h, 2)) or - math.log(w, 2) != math.floor(math.log(w, 2)))): + if ((math.log(height, 2) != math.floor(math.log(height, 2)) or + math.log(width, 2) != math.floor(math.log(width, 2)))): msg = "Bad code block size ({0}, {1}), " msg += "must be powers of 2." - raise IOError(msg.format(h, w)) - cparams.cblockw_init = w - cparams.cblockh_init = h + raise IOError(msg.format(height, width)) + cparams.cblockw_init = width + cparams.cblockh_init = height if cratios is not None: cparams.tcp_numlayers = len(cratios) @@ -269,9 +276,10 @@ class Jp2k(Jp2kBox): cparams.image_offset_y0 = grid_offset[0] if modesw is not None: - for x in range(6): - if modesw & (1 << x): - cparams.mode |= (1 << x) + for shift in range(6): + power_of_two = 1 << shift + if modesw & power_of_two: + cparams.mode |= power_of_two if numres is not None: cparams.numresolution = numres @@ -402,12 +410,12 @@ class Jp2k(Jp2kBox): codec = _opj2.create_compress(codec_fmt) if verbose: - _opj2.set_info_handler(codec, _info_callback) + _opj2.set_info_handler(codec, _INFO_CALLBACK) else: _opj2.set_info_handler(codec, None) - _opj2.set_warning_handler(codec, _warning_callback) - _opj2.set_error_handler(codec, _error_callback) + _opj2.set_warning_handler(codec, _WARNING_CALLBACK) + _opj2.set_error_handler(codec, _ERROR_CALLBACK) _opj2.setup_encoder(codec, cparams, image) strm = _opj2.stream_create_default_file_stream_v3(self.filename, False) _opj2.start_compress(codec, image, strm) @@ -559,8 +567,8 @@ class Jp2k(Jp2kBox): Parameters ---------- - reduce : int, optional - Factor by which to reduce output resolution. Use -1 to get the + rlevel : int, optional + Factor by which to rlevel output resolution. Use -1 to get the lowest resolution thumbnail. This is the only keyword option available to use when only OpenJPEG version 1.5.1 is present. layer : int, optional @@ -594,7 +602,7 @@ class Jp2k(Jp2kBox): Read the lowest resolution thumbnail. - >>> thumbnail = jp.read(reduce=-1) + >>> thumbnail = jp.read(rlevel=-1) >>> thumbnail.shape (728, 1296, 3) """ @@ -604,13 +612,13 @@ class Jp2k(Jp2kBox): img = self._read_openjpeg(**kwargs) return img - def _read_openjpeg(self, reduce=0, verbose=False): + def _read_openjpeg(self, rlevel=0, verbose=False): """Read a JPEG 2000 image using libopenjpeg. Parameters ---------- - reduce : int, optional - Factor by which to reduce output resolution. Use -1 to get the + rlevel : int, optional + Factor by which to rlevel output resolution. Use -1 to get the lowest resolution thumbnail. verbose : bool, optional Print informational messages produced by the OpenJPEG library. @@ -640,7 +648,7 @@ class Jp2k(Jp2kBox): # Set decoding parameters. dparameters = _opj.dparameters_t() _opj.set_default_decoder_parameters(ctypes.byref(dparameters)) - dparameters.cp_reduce = reduce + dparameters.cp_reduce = rlevel dparameters.decod_format = self._codec_format infile = self.filename.encode() @@ -651,11 +659,11 @@ class Jp2k(Jp2kBox): dinfo = _opj.create_decompress(dparameters.decod_format) event_mgr = _opj.event_mgr_t() - info_handler = ctypes.cast(_info_callback, ctypes.c_void_p) + info_handler = ctypes.cast(_INFO_CALLBACK, ctypes.c_void_p) event_mgr.info_handler = info_handler if verbose else None - event_mgr.warning_handler = ctypes.cast(_warning_callback, + event_mgr.warning_handler = ctypes.cast(_WARNING_CALLBACK, ctypes.c_void_p) - event_mgr.error_handler = ctypes.cast(_error_callback, + event_mgr.error_handler = ctypes.cast(_ERROR_CALLBACK, ctypes.c_void_p) _opj.set_event_mgr(dinfo, ctypes.byref(event_mgr)) @@ -719,7 +727,7 @@ class Jp2k(Jp2kBox): return data - def _read_openjp2(self, reduce=0, layer=0, area=None, tile=None, + def _read_openjp2(self, rlevel=0, layer=0, area=None, tile=None, verbose=False): """Read a JPEG 2000 image using libopenjp2. @@ -727,8 +735,8 @@ class Jp2k(Jp2kBox): ---------- layer : int, optional Number of quality layer to decode. - reduce : int, optional - Factor by which to reduce output resolution. Use -1 to get the + rlevel : int, optional + Factor by which to rlevel output resolution. Use -1 to get the lowest resolution thumbnail. area : tuple, optional Specifies decoding image area, @@ -756,7 +764,7 @@ class Jp2k(Jp2kBox): msg = "Components must all have the same subsampling factors." raise RuntimeError(msg) - img_array = self._read_common(reduce=reduce, + img_array = self._read_common(rlevel=rlevel, layer=layer, area=area, tile=tile, @@ -769,7 +777,7 @@ class Jp2k(Jp2kBox): return img_array - def _read_common(self, reduce=0, layer=0, area=None, tile=None, + def _read_common(self, rlevel=0, layer=0, area=None, tile=None, verbose=False, as_bands=False): """Read a JPEG 2000 image. @@ -777,8 +785,8 @@ class Jp2k(Jp2kBox): ---------- layer : int, optional Number of quality layer to decode. - reduce : int, optional - Factor by which to reduce output resolution. + rlevel : int, optional + Factor by which to rlevel output resolution. area : tuple, optional Specifies decoding image area, (first_row, first_col, last_row, last_col) @@ -805,12 +813,12 @@ class Jp2k(Jp2kBox): dparam.cp_layer = layer - if reduce == -1: + if rlevel == -1: # Get the lowest resolution thumbnail. codestream = self.get_codestream() - reduce = codestream.segment[2].spcod[4] + rlevel = codestream.segment[2].spcod[4] - dparam.cp_reduce = reduce + dparam.cp_reduce = rlevel if area is not None: if area[0] < 0 or area[1] < 0: msg = "Upper left corner coordinates must be nonnegative: {0}" @@ -836,10 +844,10 @@ class Jp2k(Jp2kBox): codec = _opj2.create_decompress(self._codec_format) stack.callback(_opj2.destroy_codec, codec) - _opj2.set_error_handler(codec, _error_callback) - _opj2.set_warning_handler(codec, _warning_callback) + _opj2.set_error_handler(codec, _ERROR_CALLBACK) + _opj2.set_warning_handler(codec, _WARNING_CALLBACK) if verbose: - _opj2.set_info_handler(codec, _info_callback) + _opj2.set_info_handler(codec, _INFO_CALLBACK) else: _opj2.set_info_handler(codec, None) @@ -905,7 +913,7 @@ class Jp2k(Jp2kBox): return data - def read_bands(self, reduce=0, layer=0, area=None, tile=None, + def read_bands(self, rlevel=0, layer=0, area=None, tile=None, verbose=False): """Read a JPEG 2000 image. @@ -917,8 +925,8 @@ class Jp2k(Jp2kBox): ---------- layer : int, optional Number of quality layer to decode. - reduce : int, optional - Factor by which to reduce output resolution. + rlevel : int, optional + Factor by which to rlevel output resolution. area : tuple, optional Specifies decoding image area, (first_row, first_col, last_row, last_col) @@ -941,7 +949,7 @@ class Jp2k(Jp2kBox): >>> import glymur >>> jfile = glymur.data.nemo() >>> jp = glymur.Jp2k(jfile) - >>> components_lst = jp.read_bands(reduce=1) + >>> components_lst = jp.read_bands(rlevel=1) Raises ------ @@ -952,7 +960,7 @@ class Jp2k(Jp2kBox): msg = "Requires openjp2 library." raise NotImplementedError(msg) - lst = self._read_common(reduce=reduce, + lst = self._read_common(rlevel=rlevel, layer=layer, area=area, tile=tile, @@ -1006,8 +1014,8 @@ class Jp2k(Jp2kBox): raise RuntimeError(msg) fptr.seek(box[0].offset) read_buffer = fptr.read(8) - (L, T) = struct.unpack('>I4s', read_buffer) - if L == 1: + (box_length, _) = struct.unpack('>I4s', read_buffer) + if box_length == 1: # Seek past the XL field. read_buffer = fptr.read(8) codestream = Codestream(fptr, header_only=header_only) diff --git a/glymur/test/test_callbacks.py b/glymur/test/test_callbacks.py index b203f6b..5b2dc6b 100644 --- a/glymur/test/test_callbacks.py +++ b/glymur/test/test_callbacks.py @@ -46,7 +46,7 @@ class TestCallbacks(unittest.TestCase): # Verify that we get the expected stdio output when our internal info # callback handler is enabled. j = glymur.Jp2k(self.j2kfile) - d = j.read(reduce=1, verbose=True, area=(0, 0, 200, 150)) + d = j.read(rlevel=1, verbose=True, area=(0, 0, 200, 150)) actual = sys.stdout.getvalue().strip() lines = ['[INFO] Start to read j2k main header (0).', @@ -92,7 +92,7 @@ class TestCallbacks15(unittest.TestCase): # Verify that we get the expected stdio output when our internal info # callback handler is enabled. j = glymur.Jp2k(self.j2kfile) - d = j.read(reduce=1, verbose=True) + d = j.read(rlevel=1, verbose=True) actual = sys.stdout.getvalue().strip() regex = re.compile(r"""\[INFO\]\stile\s1\sof\s1\s+ diff --git a/glymur/test/test_jp2k.py b/glymur/test/test_jp2k.py index bbb4428..5f04283 100644 --- a/glymur/test/test_jp2k.py +++ b/glymur/test/test_jp2k.py @@ -88,11 +88,11 @@ class TestJp2k(unittest.TestCase): with self.assertWarns(UserWarning) as cw: jp2k = Jp2k(self._bad_xml_file) - def test_reduce_max(self): - # Verify that reduce=-1 gets us the lowest resolution image + def test_rlevel_max(self): + # Verify that rlevel=-1 gets us the lowest resolution image j = Jp2k(self.j2kfile) - thumbnail1 = j.read(reduce=-1) - thumbnail2 = j.read(reduce=5) + thumbnail1 = j.read(rlevel=-1) + thumbnail2 = j.read(rlevel=5) np.testing.assert_array_equal(thumbnail1, thumbnail2) self.assertEqual(thumbnail1.shape, (25, 15, 3)) @@ -120,11 +120,11 @@ class TestJp2k(unittest.TestCase): # End corner must be >= start corner d = j.read(area=(10, 10, 8, 8)) - def test_reduce_too_high(self): + def test_rlevel_too_high(self): # Verify that we error out appropriately if not given a JPEG 2000 file. j = Jp2k(self.jp2file) with self.assertRaises(IOError): - d = j.read(reduce=6) + d = j.read(rlevel=6) def test_not_JPEG2000(self): # Verify that we error out appropriately if not given a JPEG 2000 file. @@ -167,7 +167,7 @@ class TestJp2k(unittest.TestCase): def test_write_cprl(self): # Issue 17 j = Jp2k(self.jp2file) - expdata = j.read(reduce=1) + expdata = j.read(rlevel=1) with tempfile.NamedTemporaryFile(suffix='.jp2') as tfile: ofile = Jp2k(tfile.name, 'wb') ofile.write(expdata, prog='CPRL') @@ -529,7 +529,7 @@ class TestJp2k(unittest.TestCase): def test_asoc_label_box(self): # Construct a fake file with an asoc and a label box, as # OpenJPEG doesn't have such a file. - data = Jp2k(self.jp2file).read(reduce=1) + data = Jp2k(self.jp2file).read(rlevel=1) with tempfile.NamedTemporaryFile(suffix='.jp2') as tfile: j = Jp2k(tfile.name, 'wb') j.write(data) @@ -600,10 +600,10 @@ class TestJp2k(unittest.TestCase): :\sdx=1\sdy=0''', re.VERBOSE) if sys.hexversion < 0x03020000: with self.assertRaisesRegexp((IOError, OSError), regexp) as ce: - d = j.read(reduce=1) + d = j.read(rlevel=1) else: with self.assertRaisesRegex((IOError, OSError), regexp) as ce: - d = j.read(reduce=1) + d = j.read(rlevel=1) def test_xmp_attribute(self): # Verify that we can read the XMP packet in our shipping example file. @@ -699,7 +699,7 @@ class TestJp2k15(unittest.TestCase): # and OPJ_DATA_ROOT is not set. We need at least one # working JP2 test. j2k = Jp2k(self.jp2file) - d = j2k.read(reduce=1) + d = j2k.read(rlevel=1) def test_basic_j2k(self): # This test is only useful when openjp2 is not available diff --git a/glymur/test/test_opj_suite.py b/glymur/test/test_opj_suite.py index f882811..f780725 100644 --- a/glymur/test/test_opj_suite.py +++ b/glymur/test/test_opj_suite.py @@ -49,7 +49,7 @@ class TestSuite(unittest.TestCase): def test_ETS_C0P0_p0_01_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_01.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c0p0_01.pgx') pgxdata = read_pgx(pgxfile) @@ -62,7 +62,7 @@ class TestSuite(unittest.TestCase): # really know what to do with it. Just ignore. warnings.simplefilter("ignore") jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c0p0_02.pgx') pgxdata = read_pgx(pgxfile) @@ -72,7 +72,7 @@ class TestSuite(unittest.TestCase): def test_ETS_C0P0_p0_03_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_03.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c0p0_03r0.pgx') pgxdata = read_pgx(pgxfile) @@ -81,7 +81,7 @@ class TestSuite(unittest.TestCase): def test_ETS_C0P0_p0_03_j2k_r1(self): jfile = os.path.join(data_root, 'input/conformance/p0_03.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=1) + jpdata = jp2k.read(rlevel=1) pgxfile = os.path.join(data_root, 'baseline/conformance/c0p0_03r1.pgx') @@ -92,7 +92,7 @@ class TestSuite(unittest.TestCase): def test_ETS_C0P0_p0_04_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_04.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=3) + jpdata = jp2k.read(rlevel=3) pgxfile = os.path.join(data_root, 'baseline/conformance/c0p0_04.pgx') @@ -105,7 +105,7 @@ class TestSuite(unittest.TestCase): def test_ETS_C0P0_p0_05_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_05.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read_bands(reduce=3) + jpdata = jp2k.read_bands(rlevel=3) pgxfile = os.path.join(data_root, 'baseline/conformance/c0p0_05.pgx') @@ -117,7 +117,7 @@ class TestSuite(unittest.TestCase): def test_ETS_C0P0_p0_06_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_06.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=3) + jpdata = jp2k.read(rlevel=3) pgxfile = os.path.join(data_root, 'baseline/conformance/c0p0_06.pgx') @@ -142,7 +142,7 @@ class TestSuite(unittest.TestCase): def test_ETS_C0P0_p0_08_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_08.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=5) + jpdata = jp2k.read(rlevel=5) pgxfile = os.path.join(data_root, 'baseline/conformance/c0p0_08.pgx') @@ -154,7 +154,7 @@ class TestSuite(unittest.TestCase): def test_ETS_C0P0_p0_09_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_09.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=2) + jpdata = jp2k.read(rlevel=2) pgxfile = os.path.join(data_root, 'baseline/conformance/c0p0_09.pgx') @@ -167,7 +167,7 @@ class TestSuite(unittest.TestCase): def test_ETS_C0P0_p0_10_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_10.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c0p0_10.pgx') @@ -179,7 +179,7 @@ class TestSuite(unittest.TestCase): def test_ETS_C0P0_p0_11_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_11.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c0p0_11.pgx') @@ -191,7 +191,7 @@ class TestSuite(unittest.TestCase): def test_ETS_C0P0_p0_12_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_12.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c0p0_12.pgx') @@ -203,7 +203,7 @@ class TestSuite(unittest.TestCase): def test_ETS_C0P0_p0_13_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_13.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c0p0_13.pgx') @@ -215,7 +215,7 @@ class TestSuite(unittest.TestCase): def test_ETS_C0P0_p0_14_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_14.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=2) + jpdata = jp2k.read(rlevel=2) pgxfile = os.path.join(data_root, 'baseline/conformance/c0p0_14.pgx') @@ -227,7 +227,7 @@ class TestSuite(unittest.TestCase): def test_ETS_C0P0_p0_15_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_15.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c0p0_15r0.pgx') @@ -238,7 +238,7 @@ class TestSuite(unittest.TestCase): def test_ETS_C0P0_p0_15_j2k_r1(self): jfile = os.path.join(data_root, 'input/conformance/p0_15.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=1) + jpdata = jp2k.read(rlevel=1) pgxfile = os.path.join(data_root, 'baseline/conformance/c0p0_15r1.pgx') @@ -249,7 +249,7 @@ class TestSuite(unittest.TestCase): def test_ETS_C0P0_p0_16_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_16.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c0p0_16.pgx') @@ -260,7 +260,7 @@ class TestSuite(unittest.TestCase): def test_ETS_C0P1_p1_01_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p1_01.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c0p1_01.pgx') @@ -272,7 +272,7 @@ class TestSuite(unittest.TestCase): def test_ETS_C0P1_p1_02_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p1_02.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=3) + jpdata = jp2k.read(rlevel=3) pgxfile = os.path.join(data_root, 'baseline/conformance/c0p1_02.pgx') @@ -288,7 +288,7 @@ class TestSuite(unittest.TestCase): def test_ETS_C0P1_p1_03_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p1_03.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=3) + jpdata = jp2k.read(rlevel=3) pgxfile = os.path.join(data_root, 'baseline/conformance/c0p1_03.pgx') @@ -304,7 +304,7 @@ class TestSuite(unittest.TestCase): def test_ETS_C0P1_p1_04_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p1_04.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c0p1_04r0.pgx') @@ -318,7 +318,7 @@ class TestSuite(unittest.TestCase): def test_ETS_C0P1_p1_04_j2k_r3(self): jfile = os.path.join(data_root, 'input/conformance/p1_04.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=3) + jpdata = jp2k.read(rlevel=3) pgxfile = os.path.join(data_root, 'baseline/conformance/c0p1_04r3.pgx') @@ -332,7 +332,7 @@ class TestSuite(unittest.TestCase): def test_ETS_C0P1_p1_05_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p1_05.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=4) + jpdata = jp2k.read(rlevel=4) pgxfile = os.path.join(data_root, 'baseline/conformance/c0p1_05.pgx') @@ -347,7 +347,7 @@ class TestSuite(unittest.TestCase): def test_ETS_C0P1_p1_06_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p1_06.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=1) + jpdata = jp2k.read(rlevel=1) pgxfile = os.path.join(data_root, 'baseline/conformance/c0p1_06.pgx') @@ -362,7 +362,7 @@ class TestSuite(unittest.TestCase): def test_ETS_C0P1_p1_07_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p1_07.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c0p1_07.pgx') @@ -376,7 +376,7 @@ class TestSuite(unittest.TestCase): def test_ETS_C1P0_p0_01_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_01.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c1p0_01_0.pgx') pgxdata = read_pgx(pgxfile) @@ -390,7 +390,7 @@ class TestSuite(unittest.TestCase): # really know what to do with it. Just ignore. warnings.simplefilter("ignore") jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c1p0_02_0.pgx') pgxdata = read_pgx(pgxfile) @@ -400,7 +400,7 @@ class TestSuite(unittest.TestCase): def test_ETS_C1P0_p0_03_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_03.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c1p0_03_0.pgx') pgxdata = read_pgx(pgxfile) @@ -410,7 +410,7 @@ class TestSuite(unittest.TestCase): def test_ETS_C1P0_p0_04_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_04.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c1p0_04_0.pgx') pgxdata = read_pgx(pgxfile) @@ -498,7 +498,7 @@ class TestSuite(unittest.TestCase): def test_ETS_C1P0_p0_08_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_08.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=1) + jpdata = jp2k.read(rlevel=1) pgxfile = os.path.join(data_root, 'baseline/conformance/c1p0_08_0.pgx') pgxdata = read_pgx(pgxfile) @@ -515,7 +515,7 @@ class TestSuite(unittest.TestCase): def test_ETS_C1P0_p0_09_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_09.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c1p0_09_0.pgx') pgxdata = read_pgx(pgxfile) @@ -524,7 +524,7 @@ class TestSuite(unittest.TestCase): def test_ETS_C1P0_p0_10_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_10.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c1p0_10_0.pgx') pgxdata = read_pgx(pgxfile) @@ -541,7 +541,7 @@ class TestSuite(unittest.TestCase): def test_ETS_C1P0_p0_11_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_11.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c1p0_11_0.pgx') pgxdata = read_pgx(pgxfile) @@ -551,7 +551,7 @@ class TestSuite(unittest.TestCase): def test_ETS_C1P0_p0_12_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_12.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c1p0_12_0.pgx') pgxdata = read_pgx(pgxfile) @@ -561,7 +561,7 @@ class TestSuite(unittest.TestCase): def test_ETS_C1P0_p0_13_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_13.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c1p0_13_0.pgx') pgxdata = read_pgx(pgxfile) @@ -582,7 +582,7 @@ class TestSuite(unittest.TestCase): def test_ETS_C1P0_p0_14_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_14.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c1p0_14_0.pgx') pgxdata = read_pgx(pgxfile) @@ -599,7 +599,7 @@ class TestSuite(unittest.TestCase): def test_ETS_C1P0_p0_15_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_15.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c1p0_15_0.pgx') pgxdata = read_pgx(pgxfile) @@ -608,7 +608,7 @@ class TestSuite(unittest.TestCase): def test_ETS_C1P0_p0_16_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_16.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c1p0_16_0.pgx') pgxdata = read_pgx(pgxfile) @@ -617,7 +617,7 @@ class TestSuite(unittest.TestCase): def test_ETS_C1P1_p1_01_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p1_01.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c1p1_01_0.pgx') pgxdata = read_pgx(pgxfile) @@ -626,7 +626,7 @@ class TestSuite(unittest.TestCase): def test_ETS_C1P1_p1_02_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p1_02.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c1p1_02_0.pgx') pgxdata = read_pgx(pgxfile) @@ -1140,51 +1140,51 @@ class TestSuite(unittest.TestCase): def test_NR_DEC_p1_04_j2k_50_decode(self): jfile = os.path.join(data_root, 'input/conformance/p1_04.j2k') jp2k = Jp2k(jfile) - ssdata = jp2k.read(area=(0, 0, 1024, 1024), reduce=2) - odata = jp2k.read(reduce=2) + ssdata = jp2k.read(area=(0, 0, 1024, 1024), rlevel=2) + odata = jp2k.read(rlevel=2) np.testing.assert_array_equal(ssdata, odata[0:256, 0:256]) def test_NR_DEC_p1_04_j2k_51_decode(self): jfile = os.path.join(data_root, 'input/conformance/p1_04.j2k') jp2k = Jp2k(jfile) - ssdata = jp2k.read(area=(640, 512, 768, 640), reduce=2) - odata = jp2k.read(reduce=2) + ssdata = jp2k.read(area=(640, 512, 768, 640), rlevel=2) + odata = jp2k.read(rlevel=2) np.testing.assert_array_equal(ssdata, odata[160:192, 128:160]) def test_NR_DEC_p1_04_j2k_52_decode(self): jfile = os.path.join(data_root, 'input/conformance/p1_04.j2k') jp2k = Jp2k(jfile) - ssdata = jp2k.read(area=(896, 896, 1024, 1024), reduce=2) - odata = jp2k.read(reduce=2) + ssdata = jp2k.read(area=(896, 896, 1024, 1024), rlevel=2) + odata = jp2k.read(rlevel=2) np.testing.assert_array_equal(ssdata, odata[224:352, 224:352]) def test_NR_DEC_p1_04_j2k_53_decode(self): jfile = os.path.join(data_root, 'input/conformance/p1_04.j2k') jp2k = Jp2k(jfile) - ssdata = jp2k.read(area=(500, 100, 800, 300), reduce=2) - odata = jp2k.read(reduce=2) + ssdata = jp2k.read(area=(500, 100, 800, 300), rlevel=2) + odata = jp2k.read(rlevel=2) np.testing.assert_array_equal(ssdata, odata[125:200, 25:75]) def test_NR_DEC_p1_04_j2k_54_decode(self): jfile = os.path.join(data_root, 'input/conformance/p1_04.j2k') jp2k = Jp2k(jfile) - ssdata = jp2k.read(area=(520, 260, 600, 360), reduce=2) - odata = jp2k.read(reduce=2) + ssdata = jp2k.read(area=(520, 260, 600, 360), rlevel=2) + odata = jp2k.read(rlevel=2) np.testing.assert_array_equal(ssdata, odata[130:150, 65:90]) def test_NR_DEC_p1_04_j2k_55_decode(self): jfile = os.path.join(data_root, 'input/conformance/p1_04.j2k') jp2k = Jp2k(jfile) - ssdata = jp2k.read(area=(520, 260, 660, 360), reduce=2) - odata = jp2k.read(reduce=2) + ssdata = jp2k.read(area=(520, 260, 660, 360), rlevel=2) + odata = jp2k.read(rlevel=2) np.testing.assert_array_equal(ssdata, odata[130:165, 65:90]) def test_NR_DEC_p1_04_j2k_56_decode(self): jfile = os.path.join(data_root, 'input/conformance/p1_04.j2k') jp2k = Jp2k(jfile) - ssdata = jp2k.read(area=(520, 360, 600, 400), reduce=2) - odata = jp2k.read(reduce=2) + ssdata = jp2k.read(area=(520, 360, 600, 400), rlevel=2) + odata = jp2k.read(rlevel=2) np.testing.assert_array_equal(ssdata, odata[130:150, 90:100]) def test_NR_DEC_p1_04_j2k_57_decode(self): @@ -1201,8 +1201,8 @@ class TestSuite(unittest.TestCase): jp2k = Jp2k(jfile) with warnings.catch_warnings(): warnings.simplefilter("ignore") - tdata = jp2k.read(tile=63, reduce=2) # last tile - odata = jp2k.read(reduce=2) + tdata = jp2k.read(tile=63, rlevel=2) # last tile + odata = jp2k.read(rlevel=2) np.testing.assert_array_equal(tdata, odata[224:256, 224:256]) def test_NR_DEC_p1_04_j2k_59_decode(self): @@ -1219,8 +1219,8 @@ class TestSuite(unittest.TestCase): jp2k = Jp2k(jfile) with warnings.catch_warnings(): warnings.simplefilter("ignore") - tdata = jp2k.read(tile=12, reduce=1) # 2nd row, 5th column - odata = jp2k.read(reduce=1) + tdata = jp2k.read(tile=12, rlevel=1) # 2nd row, 5th column + odata = jp2k.read(rlevel=1) np.testing.assert_array_equal(tdata, odata[64:128, 256:320]) @unittest.skip("fprintf stderr output in r2343.") @@ -1283,45 +1283,45 @@ class TestSuite(unittest.TestCase): def test_NR_DEC_p1_06_j2k_68_decode(self): jfile = os.path.join(data_root, 'input/conformance/p1_06.j2k') jp2k = Jp2k(jfile) - ssdata = jp2k.read(area=(0, 0, 12, 12), reduce=1) - odata = jp2k.read(reduce=1) + ssdata = jp2k.read(area=(0, 0, 12, 12), rlevel=1) + odata = jp2k.read(rlevel=1) np.testing.assert_array_equal(ssdata, odata[0:6, 0:6]) @unittest.skip("fprintf stderr output in r2343.") def test_NR_DEC_p1_06_j2k_69_decode(self): jfile = os.path.join(data_root, 'input/conformance/p1_06.j2k') jp2k = Jp2k(jfile) - ssdata = jp2k.read(area=(1, 8, 8, 11), reduce=1) + ssdata = jp2k.read(area=(1, 8, 8, 11), rlevel=1) self.assertEqual(ssdata.shape, (3, 2, 3)) def test_NR_DEC_p1_06_j2k_70_decode(self): jfile = os.path.join(data_root, 'input/conformance/p1_06.j2k') jp2k = Jp2k(jfile) - ssdata = jp2k.read(area=(9, 9, 12, 12), reduce=1) + ssdata = jp2k.read(area=(9, 9, 12, 12), rlevel=1) self.assertEqual(ssdata.shape, (1, 1, 3)) def test_NR_DEC_p1_06_j2k_71_decode(self): jfile = os.path.join(data_root, 'input/conformance/p1_06.j2k') jp2k = Jp2k(jfile) - ssdata = jp2k.read(area=(10, 4, 12, 10), reduce=1) + ssdata = jp2k.read(area=(10, 4, 12, 10), rlevel=1) self.assertEqual(ssdata.shape, (1, 3, 3)) def test_NR_DEC_p1_06_j2k_72_decode(self): jfile = os.path.join(data_root, 'input/conformance/p1_06.j2k') jp2k = Jp2k(jfile) - ssdata = jp2k.read(area=(3, 3, 9, 9), reduce=1) + ssdata = jp2k.read(area=(3, 3, 9, 9), rlevel=1) self.assertEqual(ssdata.shape, (3, 3, 3)) def test_NR_DEC_p1_06_j2k_73_decode(self): jfile = os.path.join(data_root, 'input/conformance/p1_06.j2k') jp2k = Jp2k(jfile) - ssdata = jp2k.read(area=(4, 4, 7, 7), reduce=1) + ssdata = jp2k.read(area=(4, 4, 7, 7), rlevel=1) self.assertEqual(ssdata.shape, (2, 2, 3)) def test_NR_DEC_p1_06_j2k_74_decode(self): jfile = os.path.join(data_root, 'input/conformance/p1_06.j2k') jp2k = Jp2k(jfile) - ssdata = jp2k.read(area=(4, 4, 5, 5), reduce=1) + ssdata = jp2k.read(area=(4, 4, 5, 5), rlevel=1) self.assertEqual(ssdata.shape, (1, 1, 3)) def test_NR_DEC_p1_06_j2k_75_decode(self): @@ -1329,7 +1329,7 @@ class TestSuite(unittest.TestCase): jfile = os.path.join(data_root, 'input/conformance/p1_06.j2k') jp2k = Jp2k(jfile) with self.assertRaises((IOError, OSError)) as ce: - ssdata = jp2k.read(area=(9, 9, 12, 12), reduce=2) + ssdata = jp2k.read(area=(9, 9, 12, 12), rlevel=2) @unittest.skip("fprintf stderr output in r2343.") def test_NR_DEC_p1_06_j2k_76_decode(self): @@ -1378,7 +1378,7 @@ class TestSuite(unittest.TestCase): jp2k = Jp2k(jfile) with warnings.catch_warnings(): warnings.simplefilter("ignore") - tiledata = jp2k.read(tile=0, reduce=2) + tiledata = jp2k.read(tile=0, rlevel=2) @unittest.skip("fprintf stderr output in r2343.") def test_NR_DEC_p1_06_j2k_81_decode(self): @@ -1387,7 +1387,7 @@ class TestSuite(unittest.TestCase): jp2k = Jp2k(jfile) with warnings.catch_warnings(): warnings.simplefilter("ignore") - tiledata = jp2k.read(tile=5, reduce=2) + tiledata = jp2k.read(tile=5, rlevel=2) @unittest.skip("fprintf stderr output in r2343.") def test_NR_DEC_p1_06_j2k_82_decode(self): @@ -1396,7 +1396,7 @@ class TestSuite(unittest.TestCase): jp2k = Jp2k(jfile) with warnings.catch_warnings(): warnings.simplefilter("ignore") - tiledata = jp2k.read(tile=9, reduce=2) + tiledata = jp2k.read(tile=9, rlevel=2) @unittest.skip("fprintf stderr output in r2343.") def test_NR_DEC_p1_06_j2k_83_decode(self): @@ -1406,14 +1406,14 @@ class TestSuite(unittest.TestCase): with warnings.catch_warnings(): warnings.simplefilter("ignore") with self.assertRaises((IOError, OSError)) as ce: - tiledata = jp2k.read(tile=15, reduce=2) + tiledata = jp2k.read(tile=15, rlevel=2) @unittest.skip("fprintf stderr output in r2343.") def test_NR_DEC_p1_06_j2k_84_decode(self): # Just read the data, don't bother verifying. jfile = os.path.join(data_root, 'input/conformance/p1_06.j2k') jp2k = Jp2k(jfile) - data = jp2k.read(reduce=4) + data = jp2k.read(rlevel=4) def test_NR_DEC_p0_04_j2k_85_decode(self): jfile = os.path.join(data_root, 'input/conformance/p0_04.j2k') @@ -1460,43 +1460,43 @@ class TestSuite(unittest.TestCase): def test_NR_DEC_p0_04_j2k_91_decode(self): jfile = os.path.join(data_root, 'input/conformance/p0_04.j2k') jp2k = Jp2k(jfile) - ssdata = jp2k.read(area=(0, 0, 256, 256), reduce=2) - fulldata = jp2k.read(reduce=2) + ssdata = jp2k.read(area=(0, 0, 256, 256), rlevel=2) + fulldata = jp2k.read(rlevel=2) np.testing.assert_array_equal(fulldata[0:64, 0:64], ssdata) def test_NR_DEC_p0_04_j2k_92_decode(self): jfile = os.path.join(data_root, 'input/conformance/p0_04.j2k') jp2k = Jp2k(jfile) - ssdata = jp2k.read(area=(0, 128, 128, 256), reduce=2) - fulldata = jp2k.read(reduce=2) + ssdata = jp2k.read(area=(0, 128, 128, 256), rlevel=2) + fulldata = jp2k.read(rlevel=2) np.testing.assert_array_equal(fulldata[0:32, 32:64], ssdata) def test_NR_DEC_p0_04_j2k_93_decode(self): jfile = os.path.join(data_root, 'input/conformance/p0_04.j2k') jp2k = Jp2k(jfile) - ssdata = jp2k.read(area=(10, 50, 200, 120), reduce=2) - fulldata = jp2k.read(reduce=2) + ssdata = jp2k.read(area=(10, 50, 200, 120), rlevel=2) + fulldata = jp2k.read(rlevel=2) np.testing.assert_array_equal(fulldata[3:50, 13:30], ssdata) def test_NR_DEC_p0_04_j2k_94_decode(self): jfile = os.path.join(data_root, 'input/conformance/p0_04.j2k') jp2k = Jp2k(jfile) - ssdata = jp2k.read(area=(150, 10, 210, 190), reduce=2) - fulldata = jp2k.read(reduce=2) + ssdata = jp2k.read(area=(150, 10, 210, 190), rlevel=2) + fulldata = jp2k.read(rlevel=2) np.testing.assert_array_equal(fulldata[38:53, 3:48], ssdata) def test_NR_DEC_p0_04_j2k_95_decode(self): jfile = os.path.join(data_root, 'input/conformance/p0_04.j2k') jp2k = Jp2k(jfile) - ssdata = jp2k.read(area=(80, 100, 150, 200), reduce=2) - fulldata = jp2k.read(reduce=2) + ssdata = jp2k.read(area=(80, 100, 150, 200), rlevel=2) + fulldata = jp2k.read(rlevel=2) np.testing.assert_array_equal(fulldata[20:38, 25:50], ssdata) def test_NR_DEC_p0_04_j2k_96_decode(self): jfile = os.path.join(data_root, 'input/conformance/p0_04.j2k') jp2k = Jp2k(jfile) - ssdata = jp2k.read(area=(20, 150, 50, 200), reduce=2) - fulldata = jp2k.read(reduce=2) + ssdata = jp2k.read(area=(20, 150, 50, 200), rlevel=2) + fulldata = jp2k.read(rlevel=2) np.testing.assert_array_equal(fulldata[5:13, 38:50], ssdata) @@ -7360,7 +7360,7 @@ class TestSuite15(unittest.TestCase): def test_ETS_C0P0_p0_01_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_01.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c0p0_01.pgx') pgxdata = read_pgx(pgxfile) @@ -7373,7 +7373,7 @@ class TestSuite15(unittest.TestCase): # really know what to do with it. Just ignore. warnings.simplefilter("ignore") jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c0p0_02.pgx') pgxdata = read_pgx(pgxfile) @@ -7382,7 +7382,7 @@ class TestSuite15(unittest.TestCase): def test_ETS_C0P0_p0_09_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_09.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=2) + jpdata = jp2k.read(rlevel=2) pgxfile = os.path.join(data_root, 'baseline/conformance/c0p0_09.pgx') @@ -7394,7 +7394,7 @@ class TestSuite15(unittest.TestCase): def test_ETS_C0P0_p0_11_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_11.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c0p0_11.pgx') @@ -7406,7 +7406,7 @@ class TestSuite15(unittest.TestCase): def test_ETS_C0P0_p0_12_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_12.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c0p0_12.pgx') @@ -7417,7 +7417,7 @@ class TestSuite15(unittest.TestCase): def test_ETS_C0P0_p0_16_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_16.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c0p0_16.pgx') @@ -7428,7 +7428,7 @@ class TestSuite15(unittest.TestCase): def test_ETS_C0P1_p1_01_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p1_01.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c0p1_01.pgx') @@ -7439,7 +7439,7 @@ class TestSuite15(unittest.TestCase): def test_ETS_C1P0_p0_01_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_01.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c1p0_01_0.pgx') pgxdata = read_pgx(pgxfile) @@ -7453,7 +7453,7 @@ class TestSuite15(unittest.TestCase): # really know what to do with it. Just ignore. warnings.simplefilter("ignore") jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c1p0_02_0.pgx') pgxdata = read_pgx(pgxfile) @@ -7463,7 +7463,7 @@ class TestSuite15(unittest.TestCase): def test_ETS_C1P0_p0_03_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_03.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c1p0_03_0.pgx') pgxdata = read_pgx(pgxfile) @@ -7473,7 +7473,7 @@ class TestSuite15(unittest.TestCase): def test_ETS_C1P0_p0_04_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_04.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c1p0_04_0.pgx') pgxdata = read_pgx(pgxfile) @@ -7493,7 +7493,7 @@ class TestSuite15(unittest.TestCase): def test_ETS_C1P0_p0_08_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_08.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=1) + jpdata = jp2k.read(rlevel=1) pgxfile = os.path.join(data_root, 'baseline/conformance/c1p0_08_0.pgx') pgxdata = read_pgx(pgxfile) @@ -7510,7 +7510,7 @@ class TestSuite15(unittest.TestCase): def test_ETS_C1P0_p0_09_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_09.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c1p0_09_0.pgx') pgxdata = read_pgx(pgxfile) @@ -7522,7 +7522,7 @@ class TestSuite15(unittest.TestCase): with warnings.catch_warnings(): # This file has an invalid ICC profile warnings.simplefilter("ignore") - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c1p0_10_0.pgx') pgxdata = read_pgx(pgxfile) @@ -7539,7 +7539,7 @@ class TestSuite15(unittest.TestCase): def test_ETS_C1P0_p0_11_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_11.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c1p0_11_0.pgx') pgxdata = read_pgx(pgxfile) @@ -7549,7 +7549,7 @@ class TestSuite15(unittest.TestCase): def test_ETS_C1P0_p0_12_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_12.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c1p0_12_0.pgx') pgxdata = read_pgx(pgxfile) @@ -7559,7 +7559,7 @@ class TestSuite15(unittest.TestCase): def test_ETS_C1P0_p0_13_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_13.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c1p0_13_0.pgx') pgxdata = read_pgx(pgxfile) @@ -7580,7 +7580,7 @@ class TestSuite15(unittest.TestCase): def test_ETS_C1P0_p0_14_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_14.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c1p0_14_0.pgx') pgxdata = read_pgx(pgxfile) @@ -7597,7 +7597,7 @@ class TestSuite15(unittest.TestCase): def test_ETS_C1P0_p0_15_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_15.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c1p0_15_0.pgx') pgxdata = read_pgx(pgxfile) @@ -7606,7 +7606,7 @@ class TestSuite15(unittest.TestCase): def test_ETS_C1P0_p0_16_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p0_16.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c1p0_16_0.pgx') pgxdata = read_pgx(pgxfile) @@ -7615,7 +7615,7 @@ class TestSuite15(unittest.TestCase): def test_ETS_C1P1_p1_01_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p1_01.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c1p1_01_0.pgx') pgxdata = read_pgx(pgxfile) @@ -7624,7 +7624,7 @@ class TestSuite15(unittest.TestCase): def test_ETS_C1P1_p1_02_j2k(self): jfile = os.path.join(data_root, 'input/conformance/p1_02.j2k') jp2k = Jp2k(jfile) - jpdata = jp2k.read(reduce=0) + jpdata = jp2k.read(rlevel=0) pgxfile = os.path.join(data_root, 'baseline/conformance/c1p1_02_0.pgx') pgxdata = read_pgx(pgxfile) diff --git a/glymur/test/test_opj_suite_neg.py b/glymur/test/test_opj_suite_neg.py index 6027ea2..8220f24 100644 --- a/glymur/test/test_opj_suite_neg.py +++ b/glymur/test/test_opj_suite_neg.py @@ -157,7 +157,7 @@ class TestSuiteNegative(unittest.TestCase): def test_precinct_size_not_multiple_of_two(self): # Seems like precinct sizes should be powers of two. ifile = Jp2k(self.j2kfile) - data = ifile.read(reduce=2) + data = ifile.read(rlevel=2) with tempfile.NamedTemporaryFile(suffix='.jp2') as tfile: ofile = Jp2k(tfile.name, 'wb') with self.assertRaises(IOError) as ce: @@ -166,7 +166,7 @@ class TestSuiteNegative(unittest.TestCase): def test_codeblock_size_not_multiple_of_two(self): # Seems like code block sizes should be powers of two. ifile = Jp2k(self.j2kfile) - data = ifile.read(reduce=2) + data = ifile.read(rlevel=2) with tempfile.NamedTemporaryFile(suffix='.jp2') as tfile: ofile = Jp2k(tfile.name, 'wb') with self.assertRaises(IOError) as ce: @@ -176,7 +176,7 @@ class TestSuiteNegative(unittest.TestCase): # Seems like code block sizes should never exceed half that of # precinct size. ifile = Jp2k(self.j2kfile) - data = ifile.read(reduce=2) + data = ifile.read(rlevel=2) with tempfile.NamedTemporaryFile(suffix='.jp2') as tfile: ofile = Jp2k(tfile.name, 'wb') with self.assertRaises(IOError) as ce: diff --git a/glymur/test/test_printing.py b/glymur/test/test_printing.py index 54176cd..4ced196 100644 --- a/glymur/test/test_printing.py +++ b/glymur/test/test_printing.py @@ -34,7 +34,7 @@ class TestPrintingNeedsLib(unittest.TestCase): with tempfile.NamedTemporaryFile(suffix='.jp2', delete=False) as tfile: cls._plain_nemo_file = tfile.name ijfile = Jp2k(jp2file) - data = ijfile.read(reduce=1) + data = ijfile.read(rlevel=1) ojfile = Jp2k(cls._plain_nemo_file, 'wb') ojfile.write(data) @@ -122,7 +122,7 @@ class TestPrintingNeedsLib(unittest.TestCase): def test_asoc_label_box(self): # Construct a fake file with an asoc and a label box, as # OpenJPEG doesn't have such a file. - data = glymur.Jp2k(self.jp2file).read(reduce=1) + data = glymur.Jp2k(self.jp2file).read(rlevel=1) with tempfile.NamedTemporaryFile(suffix='.jp2') as tfile: j = glymur.Jp2k(tfile.name, 'wb') j.write(data)