ENH: Check that float images are between 0 and 1.

This commit is contained in:
Tony S Yu
2012-02-03 17:36:06 -05:00
parent 74b0f41e15
commit 0dcd5dc38e
2 changed files with 9 additions and 0 deletions
+2
View File
@@ -63,6 +63,8 @@ def _convert(image, dtype):
"%s to %s" % (dtypeobj_in, dtypeobj))
if kind_in == 'f':
if np.min(image) < 0 or np.max(image) > 1:
raise ValueError("Images of type float must be between 0 and 1")
if kind == 'f':
# floating point -> floating point
if itemsize_in > itemsize:
+7
View File
@@ -67,6 +67,13 @@ def test_unsupported_dtype():
assert_raises(ValueError, img_as_int, x)
def test_float_out_of_range():
too_high = np.array([2], dtype=np.float32)
assert_raises(ValueError, img_as_int, too_high)
too_low = np.array([-1], dtype=np.float32)
assert_raises(ValueError, img_as_int, too_low)
if __name__ == '__main__':
np.testing.run_module_suite()