Inspired by Vasilj Godzh
Mathematica code:
s[q_] := (SeedRandom[q]; RandomReal[])
r[S_, a_, v_, w_, t_] :=
S (1 + .05 Sin[v*a] Cos[w*a] + .1 Cos[8*a] + .025 Sin[a + t])
F[Q_, S_, M_, v_, w_, th_, t_] :=
{EdgeForm[{AbsoluteThickness[th], Black}], FaceForm[White],
Polygon[
Table[
{{0, 0},
{r[S, (a + s[Q*a]) 2 Pi/M, v, w, t] Cos[(a + s[Q*a]) 2 Pi/M],
r[S, (a + s[Q*a]) 2 Pi/M, v, w, t] Sin[(a + s[Q*a]) 2 Pi/M]},
{r[S, (a + 1 + s[Q (Mod[a, M] + 1)]) 2 Pi/M, v, w, t] Cos[(a + 1 + s[Q (Mod[a, M] + 1)]) 2 Pi/M],
r[S, (a + 1 + s[Q (Mod[a, M] + 1)]) 2 Pi/M, v, w, t] Sin[(a + 1 + s[Q (Mod[a, M] + 1)]) 2 Pi/M]}},
{a, 1, M, 1}]]}
Manipulate[
Graphics[
Table[
Translate[
Reverse@
Table[
F[i*j, (1 + .3 i^1.7), 125 + 25 i,
3 + Round[9 s[i*j]], 3 + Round[9 s[2 i*j]],
.6, t + s[j] 2 Pi],
{i, 1, 4, 1}],
{17*s[j], 23.8*s[2 j]}],
{j, 1, 46, 1}],
PlotRange -> {{.5, 17.5}, {-1.2, 22.6}},
ImageSize -> {500, 700}],
{t, 0, 2Pi}]



