Added defaults to ColourSpecificationBox class
This commit is contained in:
parent
dd1c20480c
commit
d3fe2c3df2
5 changed files with 87 additions and 44 deletions
|
|
@ -31,6 +31,7 @@ from .core import _colorspace_map_display
|
||||||
from .core import _color_type_map_display
|
from .core import _color_type_map_display
|
||||||
from .core import _method_display
|
from .core import _method_display
|
||||||
from .core import _reader_requirements_display
|
from .core import _reader_requirements_display
|
||||||
|
from .core import *
|
||||||
|
|
||||||
|
|
||||||
class Jp2kBox(object):
|
class Jp2kBox(object):
|
||||||
|
|
@ -164,9 +165,22 @@ class ColourSpecificationBox(Jp2kBox):
|
||||||
ICC profile header according to ICC profile specification. If
|
ICC profile header according to ICC profile specification. If
|
||||||
colorspace is not None, then icc_profile must be empty.
|
colorspace is not None, then icc_profile must be empty.
|
||||||
"""
|
"""
|
||||||
def __init__(self, **kwargs):
|
def __init__(self, method=ENUMERATED_COLORSPACE, precedence=0,
|
||||||
|
approximation=1, colorspace=None, icc_profile=None, **kwargs):
|
||||||
Jp2kBox.__init__(self, id='', longname='Colour Specification')
|
Jp2kBox.__init__(self, id='', longname='Colour Specification')
|
||||||
|
|
||||||
|
if colorspace is not None and icc_profile is not None:
|
||||||
|
raise IOError("colorspace and icc_profile cannot both be set.")
|
||||||
|
if method not in (1, 2, 3, 4):
|
||||||
|
raise IOError("Invalid method.")
|
||||||
|
if approximation not in (0, 1, 2, 3, 4):
|
||||||
|
raise IOError("Invalid approximation.")
|
||||||
self.__dict__.update(**kwargs)
|
self.__dict__.update(**kwargs)
|
||||||
|
self.method = method
|
||||||
|
self.precedence = precedence
|
||||||
|
self.approximation = approximation
|
||||||
|
self.colorspace = colorspace
|
||||||
|
self.icc_profile = icc_profile
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
msg = Jp2kBox.__str__(self)
|
msg = Jp2kBox.__str__(self)
|
||||||
|
|
@ -686,29 +700,30 @@ class ImageHeaderBox(Jp2kBox):
|
||||||
False if the image components are unsigned.
|
False if the image components are unsigned.
|
||||||
compression : int
|
compression : int
|
||||||
The compression type, should be 7 if JP2.
|
The compression type, should be 7 if JP2.
|
||||||
cspace_unknown : bool
|
colorspace_unknown : bool
|
||||||
false if the color space is known and correctly specified.
|
false if the color space is known and correctly specified.
|
||||||
ip_provided : bool
|
ip_provided : bool
|
||||||
false if the file does not contain intellectual propery rights information.
|
false if the file does not contain intellectual propery rights information.
|
||||||
"""
|
"""
|
||||||
def __init__(self, *pargs, **kwargs):
|
def __init__(self, height, width, num_components=1, signed=False,
|
||||||
|
bits_per_component=8, compression=7, colorspace_unknown=False,
|
||||||
|
ip_provided=False, **kwargs):
|
||||||
"""
|
"""
|
||||||
Examples
|
Examples
|
||||||
--------
|
--------
|
||||||
>>> import glymur
|
>>> import glymur
|
||||||
>>> box = glymur.jp2box.ImageHeaderBox([512, 256, 3])
|
>>> box = glymur.jp2box.ImageHeaderBox(height=512, width=256)
|
||||||
"""
|
"""
|
||||||
Jp2kBox.__init__(self, id='ihdr', longname='Image Header')
|
Jp2kBox.__init__(self, id='ihdr', longname='Image Header')
|
||||||
|
self.height = height
|
||||||
|
self.width = width
|
||||||
|
self.num_components = num_components
|
||||||
|
self.signed = signed
|
||||||
|
self.bits_per_component = bits_per_component
|
||||||
|
self.compression = compression
|
||||||
|
self.colorspace_unknown = colorspace_unknown
|
||||||
|
self.ip_provided = False
|
||||||
self.__dict__.update(**kwargs)
|
self.__dict__.update(**kwargs)
|
||||||
if len(pargs) == 1:
|
|
||||||
self.height = pargs[0][0]
|
|
||||||
self.width = pargs[0][1]
|
|
||||||
self.num_components = pargs[0][2]
|
|
||||||
self.bits_per_component = 8
|
|
||||||
self.signed = False
|
|
||||||
self.compression = 7
|
|
||||||
self.cspace_unknown = False
|
|
||||||
self.ip_provided = False
|
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
msg = Jp2kBox.__str__(self)
|
msg = Jp2kBox.__str__(self)
|
||||||
|
|
@ -723,7 +738,7 @@ class ImageHeaderBox(Jp2kBox):
|
||||||
self.bits_per_component,
|
self.bits_per_component,
|
||||||
self.signed,
|
self.signed,
|
||||||
'wavelet' if self.compression == 7 else 'unknown',
|
'wavelet' if self.compression == 7 else 'unknown',
|
||||||
self.cspace_unknown)
|
self.colorspace_unknown)
|
||||||
return msg
|
return msg
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
|
|
@ -752,16 +767,16 @@ class ImageHeaderBox(Jp2kBox):
|
||||||
# Read the box information
|
# Read the box information
|
||||||
buffer = f.read(14)
|
buffer = f.read(14)
|
||||||
params = struct.unpack('>IIHBBBB', buffer)
|
params = struct.unpack('>IIHBBBB', buffer)
|
||||||
kwargs['height'] = params[0]
|
height = params[0]
|
||||||
kwargs['width'] = params[1]
|
width = params[1]
|
||||||
kwargs['num_components'] = params[2]
|
kwargs['num_components'] = params[2]
|
||||||
kwargs['bits_per_component'] = (params[3] & 0x7f) + 1
|
kwargs['bits_per_component'] = (params[3] & 0x7f) + 1
|
||||||
kwargs['signed'] = (params[3] & 0x80) > 1
|
kwargs['signed'] = (params[3] & 0x80) > 1
|
||||||
kwargs['compression'] = params[4]
|
kwargs['compression'] = params[4]
|
||||||
kwargs['cspace_unknown'] = True if params[5] else False
|
kwargs['colorspace_unknown'] = True if params[5] else False
|
||||||
kwargs['ip_provided'] = True if params[6] else False
|
kwargs['ip_provided'] = True if params[6] else False
|
||||||
|
|
||||||
box = ImageHeaderBox(**kwargs)
|
box = ImageHeaderBox(height, width, **kwargs)
|
||||||
return box
|
return box
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -36,13 +36,41 @@ class TestJp2Boxes(unittest.TestCase):
|
||||||
|
|
||||||
def test_default_ImageHeaderBox(self):
|
def test_default_ImageHeaderBox(self):
|
||||||
# Should be able to instantiate an image header box.
|
# Should be able to instantiate an image header box.
|
||||||
b = glymur.jp2box.ImageHeaderBox([512, 256, 3])
|
b = glymur.jp2box.ImageHeaderBox(height=512, width=256,
|
||||||
|
num_components=3)
|
||||||
self.assertEqual(b.height, 512)
|
self.assertEqual(b.height, 512)
|
||||||
self.assertEqual(b.width, 256)
|
self.assertEqual(b.width, 256)
|
||||||
self.assertEqual(b.num_components, 3)
|
self.assertEqual(b.num_components, 3)
|
||||||
self.assertEqual(b.bits_per_component, 8)
|
self.assertEqual(b.bits_per_component, 8)
|
||||||
self.assertFalse(b.signed)
|
self.assertFalse(b.signed)
|
||||||
self.assertFalse(b.cspace_unknown)
|
self.assertFalse(b.colorspace_unknown)
|
||||||
|
|
||||||
|
def test_default_ColourSpecificationBox(self):
|
||||||
|
b = glymur.jp2box.ColourSpecificationBox(colorspace=glymur.core.SRGB)
|
||||||
|
self.assertEqual(b.method, glymur.core.ENUMERATED_COLORSPACE)
|
||||||
|
self.assertEqual(b.precedence, 0)
|
||||||
|
self.assertEqual(b.approximation, 1)
|
||||||
|
self.assertEqual(b.colorspace, glymur.core.SRGB)
|
||||||
|
self.assertIsNone(b.icc_profile)
|
||||||
|
|
||||||
|
def test_ColourSpecificationBox_with_colorspace_and_icc(self):
|
||||||
|
# Colour specification boxes can't have both.
|
||||||
|
with self.assertRaises(IOError):
|
||||||
|
colorspace = glymur.core.SRGB
|
||||||
|
icc_profile = b'\x01\x02\x03\x04'
|
||||||
|
b = glymur.jp2box.ColourSpecificationBox(colorspace, icc_profile)
|
||||||
|
|
||||||
|
def test_ColourSpecificationBox_with_bad_method(self):
|
||||||
|
colorspace = glymur.core.SRGB
|
||||||
|
method = -1
|
||||||
|
with self.assertRaises(IOError):
|
||||||
|
b = glymur.jp2box.ColourSpecificationBox(colorspace, method)
|
||||||
|
|
||||||
|
def test_ColourSpecificationBox_with_bad_approximation(self):
|
||||||
|
colorspace = glymur.core.SRGB
|
||||||
|
approximation = -1
|
||||||
|
with self.assertRaises(IOError):
|
||||||
|
b = glymur.jp2box.ColourSpecificationBox(colorspace, approximation)
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
|
|
|
||||||
|
|
@ -213,7 +213,7 @@ class TestJp2k(unittest.TestCase):
|
||||||
self.assertEqual(jp2k.box[2].box[0].bits_per_component, 8)
|
self.assertEqual(jp2k.box[2].box[0].bits_per_component, 8)
|
||||||
self.assertEqual(jp2k.box[2].box[0].signed, False)
|
self.assertEqual(jp2k.box[2].box[0].signed, False)
|
||||||
self.assertEqual(jp2k.box[2].box[0].compression, 7)
|
self.assertEqual(jp2k.box[2].box[0].compression, 7)
|
||||||
self.assertEqual(jp2k.box[2].box[0].cspace_unknown, False)
|
self.assertEqual(jp2k.box[2].box[0].colorspace_unknown, False)
|
||||||
self.assertEqual(jp2k.box[2].box[0].ip_provided, False)
|
self.assertEqual(jp2k.box[2].box[0].ip_provided, False)
|
||||||
|
|
||||||
self.assertEqual(jp2k.box[2].box[1].id, 'colr')
|
self.assertEqual(jp2k.box[2].box[1].id, 'colr')
|
||||||
|
|
|
||||||
|
|
@ -4116,7 +4116,7 @@ class TestSuiteDump(unittest.TestCase):
|
||||||
self.assertEqual(jp2.box[3].box[0].bits_per_component, 8)
|
self.assertEqual(jp2.box[3].box[0].bits_per_component, 8)
|
||||||
self.assertEqual(jp2.box[3].box[0].signed, False)
|
self.assertEqual(jp2.box[3].box[0].signed, False)
|
||||||
self.assertEqual(jp2.box[3].box[0].compression, 7) # wavelet
|
self.assertEqual(jp2.box[3].box[0].compression, 7) # wavelet
|
||||||
self.assertEqual(jp2.box[3].box[0].cspace_unknown, False)
|
self.assertEqual(jp2.box[3].box[0].colorspace_unknown, False)
|
||||||
self.assertEqual(jp2.box[3].box[0].ip_provided, False)
|
self.assertEqual(jp2.box[3].box[0].ip_provided, False)
|
||||||
|
|
||||||
# Jp2 Header
|
# Jp2 Header
|
||||||
|
|
@ -4158,7 +4158,7 @@ class TestSuiteDump(unittest.TestCase):
|
||||||
self.assertEqual(jp2.box[2].box[0].bits_per_component, 8)
|
self.assertEqual(jp2.box[2].box[0].bits_per_component, 8)
|
||||||
self.assertEqual(jp2.box[2].box[0].signed, False)
|
self.assertEqual(jp2.box[2].box[0].signed, False)
|
||||||
self.assertEqual(jp2.box[2].box[0].compression, 7) # wavelet
|
self.assertEqual(jp2.box[2].box[0].compression, 7) # wavelet
|
||||||
self.assertEqual(jp2.box[2].box[0].cspace_unknown, False)
|
self.assertEqual(jp2.box[2].box[0].colorspace_unknown, False)
|
||||||
self.assertEqual(jp2.box[2].box[0].ip_provided, False)
|
self.assertEqual(jp2.box[2].box[0].ip_provided, False)
|
||||||
|
|
||||||
# Jp2 Header
|
# Jp2 Header
|
||||||
|
|
@ -4204,7 +4204,7 @@ class TestSuiteDump(unittest.TestCase):
|
||||||
self.assertEqual(jp2.box[2].box[0].bits_per_component, 8)
|
self.assertEqual(jp2.box[2].box[0].bits_per_component, 8)
|
||||||
self.assertEqual(jp2.box[2].box[0].signed, False)
|
self.assertEqual(jp2.box[2].box[0].signed, False)
|
||||||
self.assertEqual(jp2.box[2].box[0].compression, 7) # wavelet
|
self.assertEqual(jp2.box[2].box[0].compression, 7) # wavelet
|
||||||
self.assertEqual(jp2.box[2].box[0].cspace_unknown, False)
|
self.assertEqual(jp2.box[2].box[0].colorspace_unknown, False)
|
||||||
self.assertEqual(jp2.box[2].box[0].ip_provided, False)
|
self.assertEqual(jp2.box[2].box[0].ip_provided, False)
|
||||||
|
|
||||||
# Jp2 Header
|
# Jp2 Header
|
||||||
|
|
@ -4250,7 +4250,7 @@ class TestSuiteDump(unittest.TestCase):
|
||||||
self.assertEqual(jp2.box[2].box[0].bits_per_component, 8)
|
self.assertEqual(jp2.box[2].box[0].bits_per_component, 8)
|
||||||
self.assertEqual(jp2.box[2].box[0].signed, False)
|
self.assertEqual(jp2.box[2].box[0].signed, False)
|
||||||
self.assertEqual(jp2.box[2].box[0].compression, 7) # wavelet
|
self.assertEqual(jp2.box[2].box[0].compression, 7) # wavelet
|
||||||
self.assertEqual(jp2.box[2].box[0].cspace_unknown, False)
|
self.assertEqual(jp2.box[2].box[0].colorspace_unknown, False)
|
||||||
self.assertEqual(jp2.box[2].box[0].ip_provided, False)
|
self.assertEqual(jp2.box[2].box[0].ip_provided, False)
|
||||||
|
|
||||||
# Jp2 Header
|
# Jp2 Header
|
||||||
|
|
@ -4292,7 +4292,7 @@ class TestSuiteDump(unittest.TestCase):
|
||||||
self.assertEqual(jp2.box[3].box[0].num_components, 3)
|
self.assertEqual(jp2.box[3].box[0].num_components, 3)
|
||||||
self.assertEqual(jp2.box[3].box[0].signed, False)
|
self.assertEqual(jp2.box[3].box[0].signed, False)
|
||||||
self.assertEqual(jp2.box[3].box[0].compression, 7) # wavelet
|
self.assertEqual(jp2.box[3].box[0].compression, 7) # wavelet
|
||||||
self.assertEqual(jp2.box[3].box[0].cspace_unknown, False)
|
self.assertEqual(jp2.box[3].box[0].colorspace_unknown, False)
|
||||||
self.assertEqual(jp2.box[3].box[0].ip_provided, False)
|
self.assertEqual(jp2.box[3].box[0].ip_provided, False)
|
||||||
|
|
||||||
# Jp2 Header
|
# Jp2 Header
|
||||||
|
|
@ -4338,7 +4338,7 @@ class TestSuiteDump(unittest.TestCase):
|
||||||
self.assertEqual(jp2.box[2].box[0].bits_per_component, 12)
|
self.assertEqual(jp2.box[2].box[0].bits_per_component, 12)
|
||||||
self.assertEqual(jp2.box[2].box[0].signed, False)
|
self.assertEqual(jp2.box[2].box[0].signed, False)
|
||||||
self.assertEqual(jp2.box[2].box[0].compression, 7) # wavelet
|
self.assertEqual(jp2.box[2].box[0].compression, 7) # wavelet
|
||||||
self.assertEqual(jp2.box[2].box[0].cspace_unknown, False)
|
self.assertEqual(jp2.box[2].box[0].colorspace_unknown, False)
|
||||||
self.assertEqual(jp2.box[2].box[0].ip_provided, False)
|
self.assertEqual(jp2.box[2].box[0].ip_provided, False)
|
||||||
|
|
||||||
# Jp2 Header
|
# Jp2 Header
|
||||||
|
|
@ -4387,7 +4387,7 @@ class TestSuiteDump(unittest.TestCase):
|
||||||
self.assertEqual(jp2.box[3].box[0].bits_per_component, 16)
|
self.assertEqual(jp2.box[3].box[0].bits_per_component, 16)
|
||||||
self.assertEqual(jp2.box[3].box[0].signed, False)
|
self.assertEqual(jp2.box[3].box[0].signed, False)
|
||||||
self.assertEqual(jp2.box[3].box[0].compression, 7) # wavelet
|
self.assertEqual(jp2.box[3].box[0].compression, 7) # wavelet
|
||||||
self.assertEqual(jp2.box[3].box[0].cspace_unknown, False)
|
self.assertEqual(jp2.box[3].box[0].colorspace_unknown, False)
|
||||||
self.assertEqual(jp2.box[3].box[0].ip_provided, False)
|
self.assertEqual(jp2.box[3].box[0].ip_provided, False)
|
||||||
|
|
||||||
# Jp2 Header
|
# Jp2 Header
|
||||||
|
|
@ -4436,7 +4436,7 @@ class TestSuiteDump(unittest.TestCase):
|
||||||
self.assertEqual(jp2.box[2].box[0].bits_per_component, 8)
|
self.assertEqual(jp2.box[2].box[0].bits_per_component, 8)
|
||||||
self.assertEqual(jp2.box[2].box[0].signed, False)
|
self.assertEqual(jp2.box[2].box[0].signed, False)
|
||||||
self.assertEqual(jp2.box[2].box[0].compression, 7) # wavelet
|
self.assertEqual(jp2.box[2].box[0].compression, 7) # wavelet
|
||||||
self.assertEqual(jp2.box[2].box[0].cspace_unknown, False)
|
self.assertEqual(jp2.box[2].box[0].colorspace_unknown, False)
|
||||||
self.assertEqual(jp2.box[2].box[0].ip_provided, False)
|
self.assertEqual(jp2.box[2].box[0].ip_provided, False)
|
||||||
|
|
||||||
# Jp2 Header
|
# Jp2 Header
|
||||||
|
|
@ -4488,7 +4488,7 @@ class TestSuiteDump(unittest.TestCase):
|
||||||
self.assertEqual(jp2.box[2].box[0].bits_per_component, 8)
|
self.assertEqual(jp2.box[2].box[0].bits_per_component, 8)
|
||||||
self.assertEqual(jp2.box[2].box[0].signed, False)
|
self.assertEqual(jp2.box[2].box[0].signed, False)
|
||||||
self.assertEqual(jp2.box[2].box[0].compression, 7) # wavelet
|
self.assertEqual(jp2.box[2].box[0].compression, 7) # wavelet
|
||||||
self.assertEqual(jp2.box[2].box[0].cspace_unknown, False)
|
self.assertEqual(jp2.box[2].box[0].colorspace_unknown, False)
|
||||||
self.assertEqual(jp2.box[2].box[0].ip_provided, False)
|
self.assertEqual(jp2.box[2].box[0].ip_provided, False)
|
||||||
|
|
||||||
# Palette box.
|
# Palette box.
|
||||||
|
|
@ -5985,7 +5985,7 @@ class TestSuiteDump(unittest.TestCase):
|
||||||
self.assertEqual(jp2.box[2].box[0].bits_per_component, 8)
|
self.assertEqual(jp2.box[2].box[0].bits_per_component, 8)
|
||||||
self.assertEqual(jp2.box[2].box[0].signed, False)
|
self.assertEqual(jp2.box[2].box[0].signed, False)
|
||||||
self.assertEqual(jp2.box[2].box[0].compression, 7) # wavelet
|
self.assertEqual(jp2.box[2].box[0].compression, 7) # wavelet
|
||||||
self.assertEqual(jp2.box[2].box[0].cspace_unknown, False)
|
self.assertEqual(jp2.box[2].box[0].colorspace_unknown, False)
|
||||||
self.assertEqual(jp2.box[2].box[0].ip_provided, False)
|
self.assertEqual(jp2.box[2].box[0].ip_provided, False)
|
||||||
|
|
||||||
# Jp2 Header
|
# Jp2 Header
|
||||||
|
|
@ -6118,7 +6118,7 @@ class TestSuiteDump(unittest.TestCase):
|
||||||
self.assertEqual(jp2.box[2].box[0].bits_per_component, 8)
|
self.assertEqual(jp2.box[2].box[0].bits_per_component, 8)
|
||||||
self.assertEqual(jp2.box[2].box[0].signed, False)
|
self.assertEqual(jp2.box[2].box[0].signed, False)
|
||||||
self.assertEqual(jp2.box[2].box[0].compression, 7) # wavelet
|
self.assertEqual(jp2.box[2].box[0].compression, 7) # wavelet
|
||||||
self.assertEqual(jp2.box[2].box[0].cspace_unknown, False)
|
self.assertEqual(jp2.box[2].box[0].colorspace_unknown, False)
|
||||||
self.assertEqual(jp2.box[2].box[0].ip_provided, False)
|
self.assertEqual(jp2.box[2].box[0].ip_provided, False)
|
||||||
|
|
||||||
# Jp2 Header
|
# Jp2 Header
|
||||||
|
|
@ -6246,7 +6246,7 @@ class TestSuiteDump(unittest.TestCase):
|
||||||
self.assertEqual(jp2.box[2].box[0].bits_per_component, 8)
|
self.assertEqual(jp2.box[2].box[0].bits_per_component, 8)
|
||||||
self.assertEqual(jp2.box[2].box[0].signed, False)
|
self.assertEqual(jp2.box[2].box[0].signed, False)
|
||||||
self.assertEqual(jp2.box[2].box[0].compression, 7) # wavelet
|
self.assertEqual(jp2.box[2].box[0].compression, 7) # wavelet
|
||||||
self.assertEqual(jp2.box[2].box[0].cspace_unknown, False)
|
self.assertEqual(jp2.box[2].box[0].colorspace_unknown, False)
|
||||||
self.assertEqual(jp2.box[2].box[0].ip_provided, False)
|
self.assertEqual(jp2.box[2].box[0].ip_provided, False)
|
||||||
|
|
||||||
# Jp2 Header
|
# Jp2 Header
|
||||||
|
|
@ -6386,7 +6386,7 @@ class TestSuiteDump(unittest.TestCase):
|
||||||
self.assertEqual(jp2.box[3].box[0].bits_per_component, 8)
|
self.assertEqual(jp2.box[3].box[0].bits_per_component, 8)
|
||||||
self.assertEqual(jp2.box[3].box[0].signed, False)
|
self.assertEqual(jp2.box[3].box[0].signed, False)
|
||||||
self.assertEqual(jp2.box[3].box[0].compression, 7) # wavelet
|
self.assertEqual(jp2.box[3].box[0].compression, 7) # wavelet
|
||||||
self.assertEqual(jp2.box[3].box[0].cspace_unknown, True)
|
self.assertEqual(jp2.box[3].box[0].colorspace_unknown, True)
|
||||||
self.assertEqual(jp2.box[3].box[0].ip_provided, False)
|
self.assertEqual(jp2.box[3].box[0].ip_provided, False)
|
||||||
|
|
||||||
# Jp2 Header
|
# Jp2 Header
|
||||||
|
|
@ -6497,7 +6497,7 @@ class TestSuiteDump(unittest.TestCase):
|
||||||
self.assertEqual(jp2.box[2].box[0].bits_per_component, 8)
|
self.assertEqual(jp2.box[2].box[0].bits_per_component, 8)
|
||||||
self.assertEqual(jp2.box[2].box[0].signed, False)
|
self.assertEqual(jp2.box[2].box[0].signed, False)
|
||||||
self.assertEqual(jp2.box[2].box[0].compression, 7) # wavelet
|
self.assertEqual(jp2.box[2].box[0].compression, 7) # wavelet
|
||||||
self.assertEqual(jp2.box[2].box[0].cspace_unknown, True)
|
self.assertEqual(jp2.box[2].box[0].colorspace_unknown, True)
|
||||||
self.assertEqual(jp2.box[2].box[0].ip_provided, False)
|
self.assertEqual(jp2.box[2].box[0].ip_provided, False)
|
||||||
|
|
||||||
# Jp2 Header
|
# Jp2 Header
|
||||||
|
|
@ -6597,7 +6597,7 @@ class TestSuiteDump(unittest.TestCase):
|
||||||
self.assertEqual(jp2.box[3].box[0].bits_per_component, 8)
|
self.assertEqual(jp2.box[3].box[0].bits_per_component, 8)
|
||||||
self.assertEqual(jp2.box[3].box[0].signed, False)
|
self.assertEqual(jp2.box[3].box[0].signed, False)
|
||||||
self.assertEqual(jp2.box[3].box[0].compression, 7) # wavelet
|
self.assertEqual(jp2.box[3].box[0].compression, 7) # wavelet
|
||||||
self.assertEqual(jp2.box[3].box[0].cspace_unknown, True)
|
self.assertEqual(jp2.box[3].box[0].colorspace_unknown, True)
|
||||||
self.assertEqual(jp2.box[3].box[0].ip_provided, False)
|
self.assertEqual(jp2.box[3].box[0].ip_provided, False)
|
||||||
|
|
||||||
# Jp2 Header
|
# Jp2 Header
|
||||||
|
|
@ -6694,7 +6694,7 @@ class TestSuiteDump(unittest.TestCase):
|
||||||
self.assertEqual(jp2.box[2].box[0].bits_per_component, 8)
|
self.assertEqual(jp2.box[2].box[0].bits_per_component, 8)
|
||||||
self.assertEqual(jp2.box[2].box[0].signed, False)
|
self.assertEqual(jp2.box[2].box[0].signed, False)
|
||||||
self.assertEqual(jp2.box[2].box[0].compression, 7) # wavelet
|
self.assertEqual(jp2.box[2].box[0].compression, 7) # wavelet
|
||||||
self.assertEqual(jp2.box[2].box[0].cspace_unknown, True)
|
self.assertEqual(jp2.box[2].box[0].colorspace_unknown, True)
|
||||||
self.assertEqual(jp2.box[2].box[0].ip_provided, False)
|
self.assertEqual(jp2.box[2].box[0].ip_provided, False)
|
||||||
|
|
||||||
# Jp2 Header
|
# Jp2 Header
|
||||||
|
|
@ -6813,7 +6813,7 @@ class TestSuiteDump(unittest.TestCase):
|
||||||
self.assertEqual(jp2.box[3].box[0].bits_per_component, 1)
|
self.assertEqual(jp2.box[3].box[0].bits_per_component, 1)
|
||||||
self.assertEqual(jp2.box[3].box[0].signed, False)
|
self.assertEqual(jp2.box[3].box[0].signed, False)
|
||||||
self.assertEqual(jp2.box[3].box[0].compression, 7) # wavelet
|
self.assertEqual(jp2.box[3].box[0].compression, 7) # wavelet
|
||||||
self.assertEqual(jp2.box[3].box[0].cspace_unknown, True)
|
self.assertEqual(jp2.box[3].box[0].colorspace_unknown, True)
|
||||||
self.assertEqual(jp2.box[3].box[0].ip_provided, False)
|
self.assertEqual(jp2.box[3].box[0].ip_provided, False)
|
||||||
|
|
||||||
# Jp2 Header
|
# Jp2 Header
|
||||||
|
|
@ -6927,7 +6927,7 @@ class TestSuiteDump(unittest.TestCase):
|
||||||
self.assertEqual(jp2.box[3].box[0].bits_per_component, 4)
|
self.assertEqual(jp2.box[3].box[0].bits_per_component, 4)
|
||||||
self.assertEqual(jp2.box[3].box[0].signed, False)
|
self.assertEqual(jp2.box[3].box[0].signed, False)
|
||||||
self.assertEqual(jp2.box[3].box[0].compression, 7) # wavelet
|
self.assertEqual(jp2.box[3].box[0].compression, 7) # wavelet
|
||||||
self.assertEqual(jp2.box[3].box[0].cspace_unknown, True)
|
self.assertEqual(jp2.box[3].box[0].colorspace_unknown, True)
|
||||||
self.assertEqual(jp2.box[3].box[0].ip_provided, False)
|
self.assertEqual(jp2.box[3].box[0].ip_provided, False)
|
||||||
|
|
||||||
# Jp2 Header
|
# Jp2 Header
|
||||||
|
|
@ -7035,7 +7035,7 @@ class TestSuiteDump(unittest.TestCase):
|
||||||
self.assertEqual(jp2.box[2].box[0].bits_per_component, 8)
|
self.assertEqual(jp2.box[2].box[0].bits_per_component, 8)
|
||||||
self.assertEqual(jp2.box[2].box[0].signed, False)
|
self.assertEqual(jp2.box[2].box[0].signed, False)
|
||||||
self.assertEqual(jp2.box[2].box[0].compression, 7) # wavelet
|
self.assertEqual(jp2.box[2].box[0].compression, 7) # wavelet
|
||||||
self.assertEqual(jp2.box[2].box[0].cspace_unknown, False)
|
self.assertEqual(jp2.box[2].box[0].colorspace_unknown, False)
|
||||||
self.assertEqual(jp2.box[2].box[0].ip_provided, False)
|
self.assertEqual(jp2.box[2].box[0].ip_provided, False)
|
||||||
|
|
||||||
# Jp2 Header
|
# Jp2 Header
|
||||||
|
|
@ -7142,7 +7142,7 @@ class TestSuiteDump(unittest.TestCase):
|
||||||
self.assertEqual(jp2.box[2].box[0].bits_per_component, 8)
|
self.assertEqual(jp2.box[2].box[0].bits_per_component, 8)
|
||||||
self.assertEqual(jp2.box[2].box[0].signed, False)
|
self.assertEqual(jp2.box[2].box[0].signed, False)
|
||||||
self.assertEqual(jp2.box[2].box[0].compression, 7) # wavelet
|
self.assertEqual(jp2.box[2].box[0].compression, 7) # wavelet
|
||||||
self.assertEqual(jp2.box[2].box[0].cspace_unknown, False)
|
self.assertEqual(jp2.box[2].box[0].colorspace_unknown, False)
|
||||||
self.assertEqual(jp2.box[2].box[0].ip_provided, False)
|
self.assertEqual(jp2.box[2].box[0].ip_provided, False)
|
||||||
|
|
||||||
# Jp2 Header
|
# Jp2 Header
|
||||||
|
|
@ -7241,7 +7241,7 @@ class TestSuiteDump(unittest.TestCase):
|
||||||
self.assertEqual(jp2.box[2].box[0].bits_per_component, 8)
|
self.assertEqual(jp2.box[2].box[0].bits_per_component, 8)
|
||||||
self.assertEqual(jp2.box[2].box[0].signed, False)
|
self.assertEqual(jp2.box[2].box[0].signed, False)
|
||||||
self.assertEqual(jp2.box[2].box[0].compression, 7) # wavelet
|
self.assertEqual(jp2.box[2].box[0].compression, 7) # wavelet
|
||||||
self.assertEqual(jp2.box[2].box[0].cspace_unknown, False)
|
self.assertEqual(jp2.box[2].box[0].colorspace_unknown, False)
|
||||||
self.assertEqual(jp2.box[2].box[0].ip_provided, False)
|
self.assertEqual(jp2.box[2].box[0].ip_provided, False)
|
||||||
|
|
||||||
# Jp2 Header
|
# Jp2 Header
|
||||||
|
|
@ -7343,7 +7343,7 @@ class TestSuiteDump(unittest.TestCase):
|
||||||
self.assertEqual(jp2.box[3].box[0].bits_per_component, 8)
|
self.assertEqual(jp2.box[3].box[0].bits_per_component, 8)
|
||||||
self.assertEqual(jp2.box[3].box[0].signed, False)
|
self.assertEqual(jp2.box[3].box[0].signed, False)
|
||||||
self.assertEqual(jp2.box[3].box[0].compression, 7) # wavelet
|
self.assertEqual(jp2.box[3].box[0].compression, 7) # wavelet
|
||||||
self.assertEqual(jp2.box[3].box[0].cspace_unknown, True)
|
self.assertEqual(jp2.box[3].box[0].colorspace_unknown, True)
|
||||||
self.assertEqual(jp2.box[3].box[0].ip_provided, False)
|
self.assertEqual(jp2.box[3].box[0].ip_provided, False)
|
||||||
|
|
||||||
# Jp2 Header
|
# Jp2 Header
|
||||||
|
|
|
||||||
|
|
@ -686,7 +686,7 @@ class TestSuiteWrite(unittest.TestCase):
|
||||||
self.assertEqual(jp2.box[2].box[0].bits_per_component, 8)
|
self.assertEqual(jp2.box[2].box[0].bits_per_component, 8)
|
||||||
self.assertEqual(jp2.box[2].box[0].signed, False)
|
self.assertEqual(jp2.box[2].box[0].signed, False)
|
||||||
self.assertEqual(jp2.box[2].box[0].compression, 7) # wavelet
|
self.assertEqual(jp2.box[2].box[0].compression, 7) # wavelet
|
||||||
self.assertEqual(jp2.box[2].box[0].cspace_unknown, False)
|
self.assertEqual(jp2.box[2].box[0].colorspace_unknown, False)
|
||||||
self.assertEqual(jp2.box[2].box[0].ip_provided, False)
|
self.assertEqual(jp2.box[2].box[0].ip_provided, False)
|
||||||
|
|
||||||
# Jp2 Header
|
# Jp2 Header
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue