forked from aleju/imgaug
-
Notifications
You must be signed in to change notification settings - Fork 0
/
check_parameters.py
85 lines (77 loc) · 3.89 KB
/
check_parameters.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
from __future__ import print_function, division
import imgaug as ia
# TODO ForceSign
from imgaug.parameters import (
Binomial, Choice, DiscreteUniform, Poisson, Normal, Laplace, ChiSquare,
Weibull, Uniform, Beta, Deterministic, Clip, Discretize, Multiply, Add,
Divide, Power, Absolute, RandomSign, Positive, Negative,
SimplexNoise, FrequencyNoise, Sigmoid
)
import numpy as np
def main():
params = [
("Binomial(0.1)", Binomial(0.1)),
("Choice", Choice([0, 1, 2])),
("Choice with p", Choice([0, 1, 2], p=[0.1, 0.2, 0.7])),
("DiscreteUniform(0, 10)", DiscreteUniform(0, 10)),
("Poisson(0)", Poisson(0)),
("Poisson(5)", Poisson(5)),
("Discretize(Poisson(5))", Discretize(Poisson(5))),
("Normal(0, 1)", Normal(0, 1)),
("Normal(1, 1)", Normal(1, 1)),
("Normal(1, 2)", Normal(0, 2)),
("Normal(Choice([-1, 1]), 2)", Normal(Choice([-1, 1]), 2)),
("Discretize(Normal(0, 1.0))", Discretize(Normal(0, 1.0))),
("Positive(Normal(0, 1.0))", Positive(Normal(0, 1.0))),
("Positive(Normal(0, 1.0), mode='reroll')", Positive(Normal(0, 1.0), mode="reroll")),
("Negative(Normal(0, 1.0))", Negative(Normal(0, 1.0))),
("Negative(Normal(0, 1.0), mode='reroll')", Negative(Normal(0, 1.0), mode="reroll")),
("Laplace(0, 1.0)", Laplace(0, 1.0)),
("Laplace(1.0, 3.0)", Laplace(1.0, 3.0)),
("Laplace([-1.0, 1.0], 1.0)", Laplace([-1.0, 1.0], 1.0)),
("ChiSquare(1)", ChiSquare(1)),
("ChiSquare([1, 6])", ChiSquare([1, 6])),
("Weibull(0.5)", Weibull(0.5)),
("Weibull((1.0, 3.0))", Weibull((1.0, 3.0))),
("Uniform(0, 10)", Uniform(0, 10)),
("Beta(0.5, 0.5)", Beta(0.5, 0.5)),
("Deterministic(1)", Deterministic(1)),
("Clip(Normal(0, 1), 0, None)", Clip(Normal(0, 1), minval=0, maxval=None)),
("Multiply(Uniform(0, 10), 2)", Multiply(Uniform(0, 10), 2)),
("Add(Uniform(0, 10), 5)", Add(Uniform(0, 10), 5)),
("Absolute(Normal(0, 1))", Absolute(Normal(0, 1))),
("RandomSign(Poisson(1))", RandomSign(Poisson(1))),
("RandomSign(Poisson(1), 0.9)", RandomSign(Poisson(1), 0.9))
]
params_arithmetic = [
("Normal(0, 1.0)", Normal(0.0, 1.0)),
("Normal(0, 1.0) + 5", Normal(0.0, 1.0) + 5),
("5 + Normal(0, 1.0)", 5 + Normal(0.0, 1.0)),
("5 + Normal(0, 1.0)", Add(5, Normal(0.0, 1.0), elementwise=True)),
("Normal(0, 1.0) * 10", Normal(0.0, 1.0) * 10),
("10 * Normal(0, 1.0)", 10 * Normal(0.0, 1.0)),
("10 * Normal(0, 1.0)", Multiply(10, Normal(0.0, 1.0), elementwise=True)),
("Normal(0, 1.0) / 10", Normal(0.0, 1.0) / 10),
("10 / Normal(0, 1.0)", 10 / Normal(0.0, 1.0)),
("10 / Normal(0, 1.0)", Divide(10, Normal(0.0, 1.0), elementwise=True)),
("Normal(0, 1.0) ** 2", Normal(0.0, 1.0) ** 2),
("2 ** Normal(0, 1.0)", 2 ** Normal(0.0, 1.0)),
("2 ** Normal(0, 1.0)", Power(2, Normal(0.0, 1.0), elementwise=True))
]
params_noise = [
("SimplexNoise", SimplexNoise()),
("Sigmoid(SimplexNoise)", Sigmoid(SimplexNoise())),
("SimplexNoise(linear)", SimplexNoise(upscale_method="linear")),
("SimplexNoise(nearest)", SimplexNoise(upscale_method="nearest")),
("FrequencyNoise((-4, 4))", FrequencyNoise(exponent=(-4, 4))),
("FrequencyNoise(-2)", FrequencyNoise(exponent=-2)),
("FrequencyNoise(2)", FrequencyNoise(exponent=2))
]
images_params = [param.draw_distribution_graph() for (title, param) in params]
images_arithmetic = [param.draw_distribution_graph() for (title, param) in params_arithmetic]
images_noise = [param.draw_distribution_graph(size=(1000, 10, 10)) for (title, param) in params_noise]
ia.imshow(np.vstack(images_params))
ia.imshow(np.vstack(images_arithmetic))
ia.imshow(np.vstack(images_noise))
if __name__ == "__main__":
main()