# Data

For some manifolds there are artificial or real application data available that can be loaded using the following data functions

`Manopt.artificialIn_SAR_image`

— Method`artificialIn_SAR_image([pts=500])`

generate an artificial InSAR image, i.e. phase valued data, of size `pts`

x `pts`

points.

This data set was introduced for the numerical examples in

Bergmann, R., Laus, F., Steidl, G., Weinmann, A.:

Second Order Differences of Cyclic Data and Applications in Variational DenoisingSIAM J. Imaging Sci., 7(4), 2916–2953, 2014. doi: 10.1137/140969993 arxiv: 1405.5349

`Manopt.artificial_S1_signal`

— Function`artificial_S1_signal([pts=500])`

generate a real-valued signal having piecewise constant, linear and quadratic intervals with jumps in between. If the resulting manifold the data lives on, is the Circle the data is also wrapped to $[-\pi,\pi)$.

**Optional**

`pts`

– (`500`

) number of points to sample the function

Bergmann, R., Laus, F., Steidl, G., Weinmann, A.:

Second Order Differences of Cyclic Data and Applications in Variational DenoisingSIAM J. Imaging Sci., 7(4), 2916–2953, 2014. doi: 10.1137/140969993 arxiv: 1405.5349

`Manopt.artificial_S1_signal`

— Method`artificial_S1_signal(x)`

evaluate the example signal $f(x), x ∈ [0,1]$, of phase-valued data introduces in Sec. 5.1 of

Bergmann, R., Laus, F., Steidl, G., Weinmann, A.:

Second Order Differences of Cyclic Data and Applications in Variational DenoisingSIAM J. Imaging Sci., 7(4), 2916–2953, 2014. doi: 10.1137/140969993 arxiv: 1405.5349

for values outside that intervall, this Signal is `missing`

.

`Manopt.artificial_S1_slope_signal`

— Function`artificial_S1_slope_signal([pts=500, slope=4.])`

Creates a Signal of (phase-valued) data represented on the Circle`Manifold with increasing slope.`

**Optional**

`pts`

– (`500`

) number of points to sample the function.`slope`

– (`4.0`

) initial slope that gets increased afterwards

This data set was introduced for the numerical examples in

Second Order Differences of Cyclic Data and Applications in Variational DenoisingSIAM J. Imaging Sci., 7(4), 2916–2953, 2014. doi: 10.1137/140969993 arxiv: 1405.5349

`Manopt.artificial_S2_composite_bezier_curve`

— Method`artificial_S2_composite_bezier_curve()`

Create the artificial curve in the `Sphere(2)`

consisting of 3 segments between the four points

\[p_0 = \begin{bmatrix}0&0&1\end{bmatrix}^{\mathrm{T}}, p_1 = \begin{bmatrix}0&-1&0\end{bmatrix}^{\mathrm{T}}, p_2 = \begin{bmatrix}-1&0&0\end{bmatrix}^{\mathrm{T}}, p_3 = \begin{bmatrix}0&0&-1\end{bmatrix}^{\mathrm{T}},\]

where each segment is a cubic Bezér curve, i.e. each point, except $p_3$ has a first point within the following segment $b_i^+$, $i=0,1,2$ and a last point within the previous segment, except for $p_0$, which are denoted by $b_i^-$, $i=1,2,3$. This curve is differentiable by the conditions $b_i^- = \gamma_{b_i^+,p_i}(2)$, $i=1,2$, where $\gamma_{a,b}$ is the `shortest_geodesic`

connecting $a$ and $b$. The remaining points are defined as

\[\begin{aligned} b_0^+ &= \exp_{p_0}\frac{\pi}{8\sqrt{2}}\begin{pmatrix}1&-1&0\end{pmatrix}^{\mathrm{T}},& b_1^+ &= \exp_{p_1}-\frac{\pi}{4\sqrt{2}}\begin{pmatrix}-1&0&1\end{pmatrix}^{\mathrm{T}},\\ b_2^+ &= \exp_{p_2}\frac{\pi}{4\sqrt{2}}\begin{pmatrix}0&1&-1\end{pmatrix}^{\mathrm{T}},& b_3^- &= \exp_{p_3}-\frac{\pi}{8\sqrt{2}}\begin{pmatrix}-1&1&0\end{pmatrix}^{\mathrm{T}}. \end{aligned}\]

This example was used within minimization of acceleration of the paper

Bergmann, R., Gousenbourger, P.-Y.:

A variational model for data fitting on manifolds by minimizing the acceleration of a Bézier curve, Front. Appl. Math. Stat. 12, 2018. doi: 10.3389/fams.2018.00059 arxiv: 1807.10090

`Manopt.artificial_S2_lemniscate`

— Function`artificial_S2_lemniscate(p,t; a=π/2)`

generate a point from the signal on the Sphere $\mathbb S^2$ by creating the Lemniscate of Bernoulli in the tangent space of `p`

sampled at `t`

and use èxp` to obtain a point on the Sphere.

**Input**

`p`

– the tangent space the Lemniscate is created in`t`

– value to sample the Lemniscate at

**Optional Values**

`a`

– (`π/2`

) defines a half axis of the Lemniscate to cover a half sphere.

This dataset was used in the numerical example of Section 5.1 of

Bačák, M., Bergmann, R., Steidl, G., Weinmann, A.:

A Second Order Non-Smooth Variational Model for Restoring Manifold-Valued ImagesSIAM J. Sci. Comput. 38(1), A567–A597, 2016. doi: 10.1137/15M101988X arxiv: 1506.02409

`Manopt.artificial_S2_lemniscate`

— Function`artificial_S2_lemniscate(p [,pts=128,a=π/2,interval=[0,2π])`

generate a Signal on the Sphere $\mathbb S^2$ by creating the Lemniscate of Bernoulli in the tangent space of `p`

sampled at `pts`

points and use `exp`

to get a signal on the Sphere.

**Input**

`p`

– the tangent space the Lemniscate is created in`pts`

– (`128`

) number of points to sample the Lemniscate`a`

– (`π/2`

) defines a half axis of the Lemniscate to cover a half sphere.`interval`

– (`[0,2*π]`

) range to sample the lemniscate at, the default value refers to one closed curve

This dataset was used in the numerical example of Section 5.1 of

Bačák, M., Bergmann, R., Steidl, G., Weinmann, A.:

A Second Order Non-Smooth Variational Model for Restoring Manifold-Valued ImagesSIAM J. Sci. Comput. 38(1), A567–A597, 2016. doi: 10.1137/15M101988X arxiv: 1506.02409

`Manopt.artificial_S2_rotation_image`

— Function`artificial_S2_rotation_image([pts=64, rotations=(.5,.5)])`

creates an image with a rotation on each axis as a parametrization.

**Optional Parameters**

`pts`

– (`64`

) number of pixels along one dimension`rotations`

– (`(.5,.5)`

) number of total rotations performed on the axes.

This dataset was used in the numerical example of Section 5.1 of

Bačák, M., Bergmann, R., Steidl, G., Weinmann, A.:

A Second Order Non-Smooth Variational Model for Restoring Manifold-Valued ImagesSIAM J. Sci. Comput. 38(1), A567–A597, 2016. doi: 10.1137/15M101988X arxiv: 1506.02409

`Manopt.artificial_S2_whirl_image`

— Function`artificial_S2_whirl_image([pts=64])`

generate an artificial image of data on the 2 sphere,

**Arguments**

`pts`

– (`64`

) size of the image in`pts`

$\times$`pts`

pixel.

This example dataset was used in the numerical example in Section 5.5 of

Laus, F., Nikolova, M., Persch, J., Steidl, G.:

A Nonlocal Denoising Algorithm for Manifold-Valued Images Using Second Order Statistics, SIAM J. Imaging Sci., 10(1), 416–448, 2017. doi: 10.1137/16M1087114 arxiv: 1607.08481

It is based on `artificial_S2_rotation_image`

extended by small whirl patches.

`Manopt.artificial_S2_whirl_patch`

— Function`artificial_S2_whirl_patch([pts=5])`

create a whirl within the `pts`

$\times$`pts`

patch of Sphere(@ref)`(2)`

-valued image data.

These patches are used within `artificial_S2_whirl_image`

.

**Optional Parameters**

`pts`

– (`5`

) size of the patch. If the number is odd, the center is the north pole.

`Manopt.artificial_SPD_image`

— Function`artificial_SPD_image([pts=64, stepsize=1.5])`

create an artificial image of symmetric positive definite matrices of size `pts`

$\times$`pts`

pixel with a jump of size `stepsize`

.

This dataset was used in the numerical example of Section 5.2 of

A Second Order Non-Smooth Variational Model for Restoring Manifold-Valued ImagesSIAM J. Sci. Comput. 38(1), A567–A597, 2016. doi: 10.1137/15M101988X arxiv: 1506.02409

`Manopt.artificial_SPD_image2`

— Function`artificial_SPD_image2([pts=64, fraction=.66])`

create an artificial image of symmetric positive definite matrices of size `pts`

$\times$`pts`

pixel with right hand side `fraction`

is moved upwards.

This data set was introduced in the numerical examples of Section of

Bergmann, R., Persch, J., Steidl, G.:

A Parallel Douglas Rachford Algorithm for Minimizing ROF-like Functionals on Images with Values in Symmetric Hadamard ManifoldsSIAM J. Imaging. Sci. 9(3), pp. 901-937, 2016. doi: 10.1137/15M1052858 arxiv: 1512.02814