# Data

For some manifolds there are artificial or real application data available that can be loaded using the following data functions. Note that these need additionally Manifolds.jl to be loaded.

Manopt.artificial_S1_signalFunction
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)$. This is data for an example from Bergmann et. al., SIAM J Imag Sci, 2014.

Optional

• pts – (500) number of points to sample the function
source
Manopt.artificial_S1_slope_signalFunction
artificial_S1_slope_signal([pts=500, slope=4.])

Creates a Signal of (phase-valued) data represented on the Circle 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 Bergmann et. al., SIAM J Imag Sci, 2014

source
Manopt.artificial_S2_composite_bezier_curveMethod
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, Gousenbourger, Front. Appl. Math. Stat., 2018.

source
Manopt.artificial_S2_lemniscateFunction
artificial_S2_lemniscate(p, t::Float64; a::Float64=π/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 èxpto obtain a point on the [Sphere](https://juliamanifolds.github.io/Manifolds.jl/stable/manifolds/sphere.html).

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 et al., SIAM J Sci Comput, 2016.

source
Manopt.artificial_S2_lemniscateFunction
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 et al., SIAM J Sci Comput, 2016.

source
Manopt.artificial_S2_rotation_imageMethod
artificial_S2_rotation_image([pts=64, rotations=(.5,.5)])

Create 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 et al., SIAM J Sci Comput, 2016.

source
Manopt.artificial_S2_whirl_imageMethod
artificial_S2_whirl_image([pts::Int=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 et al., SIAM J Imag Sci., 2017

It is based on artificial_S2_rotation_image` extended by small whirl patches.

source

# Literature

[BBSW16]
M. Bačák, R. Bergmann, G. Steidl and A. Weinmann. A second order non-smooth variational model for restoring manifold-valued images. SIAM Journal on Scientific Computing 38, A567–A597 (2016), arxiv: [1506.02409](https://arxiv.org/abs/1506.02409).
[BG18]
R. Bergmann and P.-Y. Gousenbourger. A variational model for data fitting on manifolds by minimizing the acceleration of a Bézier curve. Frontiers in Applied Mathematics and Statistics 4 (2018), arXiv: [1807.10090](https://arxiv.org/abs/1807.10090).
[BLSW14]
R. Bergmann, F. Laus, G. Steidl and A. Weinmann. Second order differences of cyclic data and applications in variational denoising. SIAM Journal on Imaging Sciences 7, 2916–2953 (2014), arxiv: [1405.5349](https://arxiv.org/abs/1405.5349).
[BPS16]
R. Bergmann, J. Persch and G. Steidl. A parallel Douglas Rachford algorithm for minimizing ROF-like functionals on images with values in symmetric Hadamard manifolds. SIAM Journal on Imaging Sciences 9, 901–937 (2016), arxiv: [1512.02814](https://arxiv.org/abs/1512.02814).
[LNPS17]
F. Laus, M. Nikolova, J. Persch and G. Steidl. A nonlocal denoising algorithm for manifold-valued images using second order statistics. SIAM Journal on Imaging Sciences 10, 416–448 (2017).