From b19c0368fedcf733c67829ec95a0e83cfd2d1bb1 Mon Sep 17 00:00:00 2001 From: Ralf Gommers Date: Mon, 12 Oct 2009 02:02:53 +0200 Subject: [PATCH] Fixes to MultiImage, added tests for it, plus a test TIF image. --- scikits/image/io/io.py | 20 +++++++---- scikits/image/io/tests/data/multipage.tif | Bin 0 -> 940 bytes scikits/image/io/tests/test_io.py | 42 ++++++++++++++++++++++ 3 files changed, 55 insertions(+), 7 deletions(-) create mode 100644 scikits/image/io/tests/data/multipage.tif diff --git a/scikits/image/io/io.py b/scikits/image/io/io.py index 9e589c03..0317bcc0 100644 --- a/scikits/image/io/io.py +++ b/scikits/image/io/io.py @@ -44,23 +44,25 @@ class MultiImage(object): Examples -------- - >>> img = MultiImage(fname) #doctest: +SKIP + >>> import os.path + >>> fname = os.path.join('tests', 'data', 'multipage.tif') + + >>> img = MultiImage(fname) >>> len(img) - 3 + 2 >>> for frame in img: ... print frame.shape - (576, 384) - (576, 384) - (576, 384) + (15, 10) + (15, 10) """ def __init__(self, filename, conserve_memory=True): """Load a multi-img""" self._filename = filename - self.conserve_memory = conserve_memory + self._conserve_memory = conserve_memory self._cached = None img = Image.open(self._filename) - if self.conserve_memory: + if self._conserve_memory: self._numframes = self._find_numframes(img) else: self._frames = self._getallframes(img) @@ -70,6 +72,10 @@ class MultiImage(object): def filename(self): return self._filename + @property + def conserve_memory(self): + return self._conserve_memory + def _find_numframes(self, img): """Find the number of frames in the multi-img.""" i = 0 diff --git a/scikits/image/io/tests/data/multipage.tif b/scikits/image/io/tests/data/multipage.tif new file mode 100644 index 0000000000000000000000000000000000000000..77fa220a89fb74837c5c18f7b0698b8e50873a91 GIT binary patch literal 940 zcmebD)MA*&00d0Ttn8dzJbe6u!lGglQqr>Wib^VK>YCa*dImQ;gQiXaS2Jusp%P6IeGbo#U*7GRn@ii4NWbr?Va5{eG?{5o;rQTtT}V% zFI>E2*@~5`*RJ2NY0K8_J9qEdci`aRqsLF2I&=2?#miT&-MD%C?!5<(o;-d2^3|Jn zA3lEm`t8TBKY#xVG5lj-VPFI~59CHhW-yxz#Duc>L2^(w2awGSWrOsvA+foT*u0EP z417TO8lWOUMu_QoWTQ#fpQSqGZ!f1o0y)NoULG{XQF4Q zU|^&=sO&cch^Z?!1UEc z=II{=4DyzyUF~?N_0`I|J@e_Ill)BI+hm>3yOart?{8vC z`F~@*d+4iIe(~`