mirror of
https://github.com/wassname/scikit-image.git
synced 2026-06-27 18:25:32 +08:00
Merge pull request #2196 from sciunto/horse
Add missing unittests for data and convert horse to binary
This commit is contained in:
@@ -50,7 +50,7 @@ background is realized with :func:`rgba2rgb` ::
|
||||
|
||||
>>> from skimage.color import rgba2rgb
|
||||
>>> from skimage import data
|
||||
>>> img_rgba = data.horse()
|
||||
>>> img_rgba = data.logo()
|
||||
>>> img_rgb = rgba2rgb(img_rgba)
|
||||
|
||||
Conversion between color and gray values
|
||||
|
||||
@@ -82,7 +82,6 @@ def expected_warnings(matching):
|
||||
matching : list of strings or compiled regexes
|
||||
Regexes for the desired warning to catch
|
||||
|
||||
|
||||
Examples
|
||||
--------
|
||||
>>> from skimage import data, img_as_ubyte, img_as_float
|
||||
@@ -96,14 +95,14 @@ def expected_warnings(matching):
|
||||
pattern(s).
|
||||
Raises a ValueError if any match was not found or an unexpected
|
||||
warning was raised.
|
||||
Allows for three types of behaviors: "and", "or", and "optional" matches.
|
||||
Allows for three types of behaviors: `and`, `or`, and `optional` matches.
|
||||
This is done to accomodate different build enviroments or loop conditions
|
||||
that may produce different warnings. The behaviors can be combined.
|
||||
If you pass multiple patterns, you get an orderless "and", where all of the
|
||||
If you pass multiple patterns, you get an orderless `and`, where all of the
|
||||
warnings must be raised.
|
||||
If you use the "|" operator in a pattern, you can catch one of several
|
||||
If you use the `|` operator in a pattern, you can catch one of several
|
||||
warnings.
|
||||
Finally, you can use "|\A\Z" in a pattern to signify it as optional.
|
||||
Finally, you can use `|\A\Z` in a pattern to signify it as optional.
|
||||
|
||||
"""
|
||||
with all_warnings() as w:
|
||||
|
||||
@@ -200,7 +200,7 @@ def rgba2rgb(rgba, background=(1, 1, 1)):
|
||||
--------
|
||||
>>> from skimage import color
|
||||
>>> from skimage import data
|
||||
>>> img_rgba = data.horse()
|
||||
>>> img_rgba = data.logo()
|
||||
>>> img_rgb = color.rgba2rgb(img_rgba)
|
||||
"""
|
||||
arr = _prepare_rgba_array(rgba)
|
||||
|
||||
+25
-32
@@ -10,34 +10,37 @@ import os as _os
|
||||
|
||||
from .. import data_dir
|
||||
from ..io import imread, use_plugin
|
||||
from .._shared.utils import deprecated
|
||||
from .._shared._warnings import expected_warnings
|
||||
from ._binary_blobs import binary_blobs
|
||||
from .. import img_as_bool
|
||||
|
||||
__all__ = ['load',
|
||||
'astronaut',
|
||||
'camera',
|
||||
'lena',
|
||||
'text',
|
||||
'checkerboard',
|
||||
'chelsea',
|
||||
'clock',
|
||||
'coffee',
|
||||
'coins',
|
||||
'horse',
|
||||
'hubble_deep_field',
|
||||
'immunohistochemistry',
|
||||
'logo',
|
||||
'moon',
|
||||
'page',
|
||||
'horse',
|
||||
'clock',
|
||||
'immunohistochemistry',
|
||||
'chelsea',
|
||||
'coffee',
|
||||
'hubble_deep_field',
|
||||
'rocket',
|
||||
'astronaut']
|
||||
'text',
|
||||
'rocket']
|
||||
|
||||
|
||||
def load(f):
|
||||
def load(f, as_grey=False):
|
||||
"""Load an image file located in the data directory.
|
||||
|
||||
Parameters
|
||||
----------
|
||||
f : string
|
||||
File name.
|
||||
as_grey : bool, optional
|
||||
Convert to greyscale.
|
||||
|
||||
Returns
|
||||
-------
|
||||
@@ -45,7 +48,7 @@ def load(f):
|
||||
Image loaded from ``skimage.data_dir``.
|
||||
"""
|
||||
use_plugin('pil')
|
||||
return imread(_os.path.join(data_dir, f))
|
||||
return imread(_os.path.join(data_dir, f), as_grey=as_grey)
|
||||
|
||||
|
||||
def camera():
|
||||
@@ -57,22 +60,6 @@ def camera():
|
||||
return load("camera.png")
|
||||
|
||||
|
||||
@deprecated('skimage.data.astronaut')
|
||||
def lena():
|
||||
"""Colour "Lena" image.
|
||||
|
||||
**This image has been removed from scikit-image due to copyright
|
||||
concerns.**
|
||||
|
||||
The standard, yet sometimes controversial Lena test image was
|
||||
scanned from the November 1972 edition of Playboy magazine. From
|
||||
an image processing perspective, this image is useful because it
|
||||
contains smooth, textured, shaded as well as detail areas.
|
||||
|
||||
"""
|
||||
raise RuntimeError("This image has been removed due to copyright concerns.")
|
||||
|
||||
|
||||
def astronaut():
|
||||
"""Colour image of the astronaut Eileen Collins.
|
||||
|
||||
@@ -138,6 +125,11 @@ def coins():
|
||||
return load("coins.png")
|
||||
|
||||
|
||||
def logo():
|
||||
"""Scikit-image logo, a RGBA image."""
|
||||
return load("logo.png")
|
||||
|
||||
|
||||
def moon():
|
||||
"""Surface of the moon.
|
||||
|
||||
@@ -168,7 +160,8 @@ def horse():
|
||||
(marauder).
|
||||
|
||||
"""
|
||||
return load("horse.png")
|
||||
with expected_warnings(['Possible precision loss', 'Possible sign loss']):
|
||||
return img_as_bool(load("horse.png", as_grey=True))
|
||||
|
||||
|
||||
def clock():
|
||||
@@ -242,8 +235,8 @@ def hubble_deep_field():
|
||||
`HubbleSite
|
||||
<http://hubblesite.org/newscenter/archive/releases/2012/37/image/a/>`__.
|
||||
|
||||
The image was captured by NASA and `may be freely used in the
|
||||
public domain <http://www.nasa.gov/audience/formedia/features/MP_Photo_Guidelines.html>`_.
|
||||
The image was captured by NASA and `may be freely used in the public domain
|
||||
<http://www.nasa.gov/audience/formedia/features/MP_Photo_Guidelines.html>`_.
|
||||
|
||||
"""
|
||||
return load("hubble_deep_field.jpg")
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 176 KiB |
@@ -3,11 +3,6 @@ import skimage.data as data
|
||||
from numpy.testing import assert_equal, assert_almost_equal, assert_raises
|
||||
|
||||
|
||||
def test_lena_removed():
|
||||
""" Test that "Lena" has been removed """
|
||||
assert_raises(RuntimeError, data.lena)
|
||||
|
||||
|
||||
def test_astronaut():
|
||||
""" Test that "astronaut" image can be loaded. """
|
||||
astronaut = data.astronaut()
|
||||
@@ -25,9 +20,43 @@ def test_checkerboard():
|
||||
data.checkerboard()
|
||||
|
||||
|
||||
def test_text():
|
||||
""" Test that "text" image can be loaded. """
|
||||
data.text()
|
||||
def test_chelsea():
|
||||
""" Test that "chelsea" image can be loaded. """
|
||||
data.chelsea()
|
||||
|
||||
|
||||
def test_clock():
|
||||
""" Test that "clock" image can be loaded. """
|
||||
data.clock()
|
||||
|
||||
|
||||
def test_coffee():
|
||||
""" Test that "coffee" image can be loaded. """
|
||||
data.coffee()
|
||||
|
||||
|
||||
def test_horse():
|
||||
""" Test that "horse" image can be loaded. """
|
||||
horse = data.horse()
|
||||
assert_equal(horse.ndim, 2)
|
||||
assert_equal(horse.dtype, np.dtype('bool'))
|
||||
|
||||
|
||||
def test_hubble():
|
||||
""" Test that "Hubble" image can be loaded. """
|
||||
data.hubble_deep_field()
|
||||
|
||||
|
||||
def test_immunohistochemistry():
|
||||
""" Test that "immunohistochemistry" image can be loaded. """
|
||||
data.immunohistochemistry()
|
||||
|
||||
|
||||
def test_logo():
|
||||
""" Test that "logo" image can be loaded. """
|
||||
logo = data.logo()
|
||||
assert_equal(logo.ndim, 3)
|
||||
assert_equal(logo.shape[2], 4)
|
||||
|
||||
|
||||
def test_moon():
|
||||
@@ -40,19 +69,14 @@ def test_page():
|
||||
data.page()
|
||||
|
||||
|
||||
def test_clock():
|
||||
""" Test that "clock" image can be loaded. """
|
||||
data.clock()
|
||||
def test_rocket():
|
||||
""" Test that "rocket" image can be loaded. """
|
||||
data.rocket()
|
||||
|
||||
|
||||
def test_chelsea():
|
||||
""" Test that "chelsea" image can be loaded. """
|
||||
data.chelsea()
|
||||
|
||||
|
||||
def test_coffee():
|
||||
""" Test that "coffee" image can be loaded. """
|
||||
data.coffee()
|
||||
def test_text():
|
||||
""" Test that "text" image can be loaded. """
|
||||
data.text()
|
||||
|
||||
|
||||
def test_binary_blobs():
|
||||
|
||||
Reference in New Issue
Block a user