"""Standard test images. For more images, see - http://sipi.usc.edu/database/database.php """ import os as _os from ..io import imread from skimage import data_dir __all__ = ['load', 'camera', 'lena', 'text', 'checkerboard', 'coins', 'moon', 'page', 'horse', 'clock', 'immunohistochemistry', 'chelsea', 'coffee'] def load(f): """Load an image file located in the data directory. Parameters ---------- f : string File name. Returns ------- img : ndarray Image loaded from skimage.data_dir. """ return imread(_os.path.join(data_dir, f)) def camera(): """Gray-level "camera" image. Often used for segmentation and denoising examples. """ return load("camera.png") def lena(): """Colour "Lena" image. 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. """ return load("lena.png") def text(): """Gray-level "text" image used for corner detection. Notes ----- This image was downloaded from Wikipedia `__. No known copyright restrictions, released into the public domain. """ return load("text.png") def checkerboard(): """Checkerboard image. Checkerboards are often used in image calibration, since the corner-points are easy to locate. Because of the many parallel edges, they also visualise distortions particularly well. """ return load("chessboard_GRAY.png") def coins(): """Greek coins from Pompeii. This image shows several coins outlined against a gray background. It is especially useful in, e.g. segmentation tests, where individual objects need to be identified against a background. The background shares enough grey levels with the coins that a simple segmentation is not sufficient. Notes ----- This image was downloaded from the `Brooklyn Museum Collection `__. No known copyright restrictions. """ return load("coins.png") def moon(): """Surface of the moon. This low-contrast image of the surface of the moon is useful for illustrating histogram equalization and contrast stretching. """ return load("moon.png") def page(): """Scanned page. This image of printed text is useful for demonstrations requiring uneven background illumination. """ return load("page.png") def horse(): """Black and white silhouette of a horse. This image was downloaded from `openclipart ` Released into public domain and drawn and uploaded by Andreas Preuss (marauder). """ return load("horse.png") def clock(): """Motion blurred clock. This photograph of a wall clock was taken while moving the camera in an aproximately horizontal direction. It may be used to illustrate inverse filters and deconvolution. Released into the public domain by the photographer (Stefan van der Walt). """ return load("clock_motion.png") def immunohistochemistry(): """Immunohistochemical (IHC) staining with hematoxylin counterstaining. This picture shows colonic glands where the IHC expression of FHL2 protein is revealed with DAB. Hematoxylin counterstaining is applied to enhance the negative parts of the tissue. This image was acquired at the Center for Microscopy And Molecular Imaging (CMMI). No known copyright restrictions. """ return load("ihc.png") def chelsea(): """Chelsea the cat. An example with texture, prominent edges in horizontal and diagonal directions, as well as features of differing scales. Notes ----- No copyright restrictions. CC0 by the photographer (Stefan van der Walt). """ return load("chelsea.png") def coffee(): """Coffee cup. This photograph is courtesy of Pikolo Espresso Bar. It contains several elliptical shapes as well as varying texture (smooth porcelain to course wood grain). Notes ----- No copyright restrictions. CC0 by the photographer (Rachel Michetti). """ return load("coffee.png")