scikit-image

Форк
0
/
test_blur_effect.py 
52 строки · 1.7 Кб
1
from numpy.testing import assert_array_equal
2

3
from skimage.color import rgb2gray
4
from skimage.data import astronaut, cells3d
5
from skimage.filters import gaussian
6
from skimage.measure import blur_effect
7

8

9
def test_blur_effect():
10
    """Test that the blur metric increases with more blurring."""
11
    image = astronaut()
12
    B0 = blur_effect(image, channel_axis=-1)
13
    B1 = blur_effect(gaussian(image, sigma=1, channel_axis=-1), channel_axis=-1)
14
    B2 = blur_effect(gaussian(image, sigma=4, channel_axis=-1), channel_axis=-1)
15
    assert 0 <= B0 < 1
16
    assert B0 < B1 < B2
17

18

19
def test_blur_effect_h_size():
20
    """Test that the blur metric decreases with increasing size of the
21
    re-blurring filter.
22
    """
23
    image = astronaut()
24
    B0 = blur_effect(image, h_size=3, channel_axis=-1)
25
    B1 = blur_effect(image, channel_axis=-1)  # default h_size is 11
26
    B2 = blur_effect(image, h_size=30, channel_axis=-1)
27
    assert 0 <= B0 < 1
28
    assert B0 > B1 > B2
29

30

31
def test_blur_effect_channel_axis():
32
    """Test that passing an RGB image is equivalent to passing its grayscale
33
    version.
34
    """
35
    image = astronaut()
36
    B0 = blur_effect(image, channel_axis=-1)
37
    B1 = blur_effect(rgb2gray(image))
38
    B0_arr = blur_effect(image, channel_axis=-1, reduce_func=None)
39
    B1_arr = blur_effect(rgb2gray(image), reduce_func=None)
40
    assert 0 <= B0 < 1
41
    assert B0 == B1
42
    assert_array_equal(B0_arr, B1_arr)
43

44

45
def test_blur_effect_3d():
46
    """Test that the blur metric works on a 3D image."""
47
    image_3d = cells3d()[:, 1, :, :]  # grab just the nuclei
48
    B0 = blur_effect(image_3d)
49
    B1 = blur_effect(gaussian(image_3d, sigma=1))
50
    B2 = blur_effect(gaussian(image_3d, sigma=4))
51
    assert 0 <= B0 < 1
52
    assert B0 < B1 < B2
53

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.