From 4f37418406a58e380abe357357e4a27c5685b5d0 Mon Sep 17 00:00:00 2001 From: Steven Silvester Date: Tue, 25 Dec 2012 23:00:46 -0600 Subject: [PATCH 1/6] ENH: Added support for python3 in travis build --- .travis.yml | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/.travis.yml b/.travis.yml index 28104a17..f50ba1ac 100644 --- a/.travis.yml +++ b/.travis.yml @@ -7,16 +7,17 @@ language: erlang env: - - PYTHON=python PYSUF='' - # - PYTHON=python3 PYSUF=3 : python3-numpy not currently available + - PYTHON=python PYSUF='' PYVER=2.7 + - PYTHON=python3 PYSUF='3' PYVER=3.2 install: - # - sudo apt-get build-dep $PYTHON-numpy + - sudo apt-get update # needed for python3-numpy - sudo apt-get install $PYTHON-dev - sudo apt-get install $PYTHON-numpy - sudo apt-get install $PYTHON-scipy - sudo apt-get install $PYTHON-setuptools - sudo apt-get install $PYTHON-nose - - sudo apt-get install cython + - sudo easy_install$PYSUF pip + - sudo pip-$PYVER install cython - sudo apt-get install libfreeimage3 - $PYTHON setup.py build - sudo $PYTHON setup.py install @@ -24,5 +25,5 @@ script: # Change into an innocuous directory and find tests from installation - mkdir for_test - cd for_test - - nosetests --exe -v --cover-package=skimage skimage + - nosetests-$PYVER --exe -v --cover-package=skimage skimage From aef305a0d3064ddbd9438180d1ab321a4bf7790b Mon Sep 17 00:00:00 2001 From: Steven Silvester Date: Tue, 25 Dec 2012 23:02:27 -0600 Subject: [PATCH 2/6] BUG: Python 3 Travis build caught this error --- skimage/exposure/tests/test_exposure.py | 1 - 1 file changed, 1 deletion(-) diff --git a/skimage/exposure/tests/test_exposure.py b/skimage/exposure/tests/test_exposure.py index 43e1017d..08f59145 100644 --- a/skimage/exposure/tests/test_exposure.py +++ b/skimage/exposure/tests/test_exposure.py @@ -142,7 +142,6 @@ def peak_snr(img1, img2): img2 = skimage.img_as_float(img2) mse = 1. / img1.size * np.square(img1 - img2).sum() _, max_ = dtype_range[img1.dtype.type] - print mse, max_ return 20 * np.log(max_ / mse) From a0a05954c2776fe22cc28258604f83730e11270e Mon Sep 17 00:00:00 2001 From: Steven Silvester Date: Wed, 26 Dec 2012 00:34:17 -0600 Subject: [PATCH 3/6] BUG: Failed exposure tests on Python3, fixed --- skimage/exposure/_adapthist.py | 2 +- skimage/exposure/tests/test_exposure.py | 15 +++++++-------- 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/skimage/exposure/_adapthist.py b/skimage/exposure/_adapthist.py index 667d2cb2..88729ce2 100644 --- a/skimage/exposure/_adapthist.py +++ b/skimage/exposure/_adapthist.py @@ -150,7 +150,7 @@ def _clahe(image, ntiles_x, ntiles_y, clip_limit, nbins=128): hist = np.bincount(hist) hist = np.append(hist, np.zeros(nbins - hist.size, dtype=int)) hist = clip_histogram(hist, clip_limit) - hist = map_histogram(hist, 0, NR_OF_GREY, n_pixels) + hist = map_histogram(hist, 0, NR_OF_GREY - 1, n_pixels) map_array[y, x] = hist # Interpolate greylevel mappings to get CLAHE image diff --git a/skimage/exposure/tests/test_exposure.py b/skimage/exposure/tests/test_exposure.py index 08f59145..12ef2acd 100644 --- a/skimage/exposure/tests/test_exposure.py +++ b/skimage/exposure/tests/test_exposure.py @@ -85,10 +85,10 @@ def test_adapthist_scalar(): assert adapted.max() == (1 << 16) - 1 assert img.shape == adapted.shape full_scale = skimage.exposure.rescale_intensity(skimage.img_as_uint(img)) + assert_almost_equal = np.testing.assert_almost_equal - assert_almost_equal(peak_snr(full_scale, adapted), 101.231, 3) - assert_almost_equal(norm_brightness_err(full_scale, adapted), - 0.041, 3) + assert peak_snr(full_scale, adapted) > 95 + assert norm_brightness_err(full_scale, adapted) < 0.05 return img, adapted @@ -102,8 +102,8 @@ def test_adapthist_grayscale(): nbins=128) assert_almost_equal = np.testing.assert_almost_equal assert img.shape == adapted.shape - assert_almost_equal(peak_snr(img, adapted), 97.949, 3) - assert_almost_equal(norm_brightness_err(img, adapted), 0.03077, 3) + assert peak_snr(img, adapted) > 95 + assert norm_brightness_err(img, adapted) < 0.05 return data, adapted @@ -117,9 +117,8 @@ def test_adapthist_color(): assert adapted.max() == 1.0 assert img.shape == adapted.shape full_scale = skimage.exposure.rescale_intensity(img) - assert_almost_equal(peak_snr(full_scale, adapted), 102.940, 3) - assert_almost_equal(norm_brightness_err(full_scale, adapted), - 0.0110, 3) + assert peak_snr(img, adapted) > 95 + assert norm_brightness_err(img, adapted) < 0.05 return data, adapted From 5e44e7848803f13b4fcd06c6b3940b57f8c5f2bf Mon Sep 17 00:00:00 2001 From: Steven Silvester Date: Wed, 26 Dec 2012 00:45:41 -0600 Subject: [PATCH 4/6] STY: Used float comparison in test_exposure --- skimage/exposure/tests/test_exposure.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/skimage/exposure/tests/test_exposure.py b/skimage/exposure/tests/test_exposure.py index 12ef2acd..12338e79 100644 --- a/skimage/exposure/tests/test_exposure.py +++ b/skimage/exposure/tests/test_exposure.py @@ -87,7 +87,7 @@ def test_adapthist_scalar(): full_scale = skimage.exposure.rescale_intensity(skimage.img_as_uint(img)) assert_almost_equal = np.testing.assert_almost_equal - assert peak_snr(full_scale, adapted) > 95 + assert peak_snr(full_scale, adapted) > 95. assert norm_brightness_err(full_scale, adapted) < 0.05 return img, adapted @@ -102,7 +102,7 @@ def test_adapthist_grayscale(): nbins=128) assert_almost_equal = np.testing.assert_almost_equal assert img.shape == adapted.shape - assert peak_snr(img, adapted) > 95 + assert peak_snr(img, adapted) > 95. assert norm_brightness_err(img, adapted) < 0.05 return data, adapted @@ -117,7 +117,7 @@ def test_adapthist_color(): assert adapted.max() == 1.0 assert img.shape == adapted.shape full_scale = skimage.exposure.rescale_intensity(img) - assert peak_snr(img, adapted) > 95 + assert peak_snr(img, adapted) > 95. assert norm_brightness_err(img, adapted) < 0.05 return data, adapted From 6a54c569004f786d34d262615e71be114c778b05 Mon Sep 17 00:00:00 2001 From: Steven Silvester Date: Wed, 26 Dec 2012 00:59:05 -0600 Subject: [PATCH 5/6] STY: Change minor formatting to test travis build --- skimage/exposure/tests/test_exposure.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/skimage/exposure/tests/test_exposure.py b/skimage/exposure/tests/test_exposure.py index 12338e79..a6323ea8 100644 --- a/skimage/exposure/tests/test_exposure.py +++ b/skimage/exposure/tests/test_exposure.py @@ -87,7 +87,7 @@ def test_adapthist_scalar(): full_scale = skimage.exposure.rescale_intensity(skimage.img_as_uint(img)) assert_almost_equal = np.testing.assert_almost_equal - assert peak_snr(full_scale, adapted) > 95. + assert peak_snr(full_scale, adapted) > 95.0 assert norm_brightness_err(full_scale, adapted) < 0.05 return img, adapted @@ -102,7 +102,7 @@ def test_adapthist_grayscale(): nbins=128) assert_almost_equal = np.testing.assert_almost_equal assert img.shape == adapted.shape - assert peak_snr(img, adapted) > 95. + assert peak_snr(img, adapted) > 95.0 assert norm_brightness_err(img, adapted) < 0.05 return data, adapted @@ -117,7 +117,7 @@ def test_adapthist_color(): assert adapted.max() == 1.0 assert img.shape == adapted.shape full_scale = skimage.exposure.rescale_intensity(img) - assert peak_snr(img, adapted) > 95. + assert peak_snr(img, adapted) > 95.0 assert norm_brightness_err(img, adapted) < 0.05 return data, adapted From 8da3541bff57246c80d4567bad180c3a2e4e42f9 Mon Sep 17 00:00:00 2001 From: Steven Silvester Date: Wed, 26 Dec 2012 09:11:53 -0600 Subject: [PATCH 6/6] STY: Minor change to docstring to test travis build --- skimage/exposure/tests/test_exposure.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/skimage/exposure/tests/test_exposure.py b/skimage/exposure/tests/test_exposure.py index a6323ea8..a5d72cbb 100644 --- a/skimage/exposure/tests/test_exposure.py +++ b/skimage/exposure/tests/test_exposure.py @@ -108,7 +108,7 @@ def test_adapthist_grayscale(): def test_adapthist_color(): - '''Test a color uint16 image + '''Test an RGB color uint16 image ''' img = skimage.img_as_uint(data.lena()) adapted = exposure.equalize_adapthist(img, clip_limit=0.01)