Linear Shape Deformation Models with Local Support Using Graph-based Structured Matrix Factorisation
Extracted source text · arXiv 1510.08291
\documentclass[10pt,twocolumn,letterpaper]{article}
\usepackage{cvpr}
\usepackage{times}
\usepackage{epsfig}
\usepackage{graphicx}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{amsthm}
\usepackage{mathtools}
%
%
\usepackage{makecell}
\usepackage{booktabs}
\usepackage{floatrow}
\DeclareFloatFont{tiny}{\footnotesize}%
\floatsetup[table]{font=tiny}
\usepackage{mdwlist}
\usepackage{nopageno}
\usepackage{capt-of,etoolbox}
\usepackage[tight,footnotesize,sf,SF]{subfigure}
\usepackage{pgfplots}
\pgfplotsset{compat=newest}
\tikzset{every picture/.style={font issue=\scriptsize},
font issue/.style={execute at begin picture={#1\selectfont}}
}
% \usetikzlibrary{external}
% \tikzexternalize[prefix=tikzFigs/]
\newcommand{\includetikz}[1]{%
% \tikzsetnextfilename{#1}%
\input{#1}%
}
\usepackage[noend]{algorithm2e}
%
%
\newtheorem{mydef}{Definition}
\newtheorem{corollary}{Corollary}
\newtheorem{remark}{Remark}
\newtheorem{todo}{TODO}
\newtheorem{lemma}{Lemma}
\newcommand{\matT}{{T}}
%
\DeclareMathOperator{\Tr}{trace}
%
\DeclareMathOperator{\im}{im}
\DeclareMathOperator{\diag}{diag}
\DeclareMathOperator{\rank}{rank}
\DeclareMathOperator{\VEC}{vec}
\DeclareMathOperator*{\argmin}{arg\,min}
\newcommand{\R}{\mathbb{R}}
\newcommand{\N}{\mathbb{N}}
\newcommand{\Sym}{\mathbb{S}}
\newcommand{\onevec}{\mathbf{1}}
\newcommand{\zerovec}{\mathbf{0}}
\newcommand{\matI}{\mathbf{I}}
\newcommand{\matX}{\mathbf{X}}
\newcommand{\matP}{\mathbf{P}}
\newcommand{\matY}{\mathbf{Y}}
\newcommand{\matQ}{\mathbf{Q}}
\newcommand{\matPhi}{\mathbf{\Phi}}
\newcommand{\matG}{\mathbf{G}}
\newcommand{\matD}{\mathbf{D}}
\newcommand{\matU}{\mathbf{U}}
\newcommand{\prob}{\mathfrak{p}}
\newcommand{\Prob}{\mathfrak{P}}
\newcommand{\matB}{\mathbf{B}}
\newcommand{\matV}{\mathbf{V}}
\newcommand{\matK}{\mathbf{K}}
\newcommand{\matW}{\mathbf{W}}
\newcommand{\matS}{\mathbf{S}}
%
\newcommand{\matZ}{\mathbf{Z}}
\newcommand{\matN}{\mathbf{N}}
\newcommand{\matL}{\mathbf{L}}
\newcommand{\matE}{\mathbf{E}}
\newcommand{\vecphi}{\boldsymbol{\phi}}
\newcommand{\matSigma}{\mathbf{\Sigma}}
\newcommand{\matLambda}{\mathbf{\Lambda}}
\newcommand{\matA}{\mathbf{A}}
\newcommand{\vect}{\mathbf{t}}
\newcommand{\vecb}{\mathbf{b}}
\newcommand{\vecv}{\mathbf{v}}
\newcommand{\vecalpha}{\boldsymbol\alpha}
\newcommand{\vecomega}{\boldsymbol\omega}
\newcommand{\matAlpha}{\boldsymbol A}
\newcommand{\vecp}{\mathbf{p}}
\newcommand{\veca}{\mathbf{a}}
%
\newcommand{\vecq}{\mathbf{q}}
\newcommand{\vecm}{\mathbf{m}}
\newcommand{\vecz}{\mathbf{z}}
\newcommand{\vecu}{\mathbf{u}}
\newcommand{\vecx}{\mathbf{x}}
\newcommand{\vecy}{\mathbf{y}}
\newcommand{\eye}{\mathbf{I}}
\newcommand{\matC}{\mathbf{C}}
\newcommand{\matR}{\mathbf{R}}
\newcommand{\bigMatQ}{{\boldsymbol{\mathsf{Q}}}}
\newcommand{\bigMatU}{{\boldsymbol{\mathsf{U}}}}
\newcommand{\bigVecu}{\boldsymbol{\mathsf{u}}}
\newcommand{\equivalent}{\Leftrightarrow~}
\newcommand{\affineGroup}{\mathit{Aff}(d,\R)}
\newcommand{\unif}{\mathcal{U}}
\newcommand{\prox}{\operatorname{prox}}
\newcommand{\proj}{\operatorname{proj}}
%
%
%
%
\usepackage[pagebackref=true,breaklinks=true,letterpaper=true,colorlinks,bookmarks=false]{hyperref}
\cvprfinalcopy %
\def\cvprPaperID{237} %
\def\httilde{\mbox{\tt\raisebox{-.5ex}{\symbol{126}}}}
%
\ifcvprfinal\pagestyle{empty}\fi
\begin{document}
\setlength{\abovedisplayskip}{4.5pt}
\setlength{\belowdisplayskip}{4.5pt}
%
%
\setlength{\textfloatsep}{2mm}
%
\setlength{\dbltextfloatsep}{2mm}
\setlength{\dblfloatsep}{0mm}
\title{Linear Shape Deformation Models with Local Support using Graph-based Structured Matrix Factorisation}
%
\author{
Florian Bernard\textsuperscript{1,2} $\quad$
%
Peter Gemmar\textsuperscript{2,3}
$\quad$
Frank Hertel\textsuperscript{1}
$\quad$
%
%
Jorge Goncalves\textsuperscript{2}
$\quad$
Johan Thunberg\textsuperscript{2}
%
\\
\textsuperscript{1}Centre Hospitalier de Luxembourg, Luxembourg \\
%
\textsuperscript{2}Luxembourg Centre for Systems Biomedicine, University of Luxembourg, Luxembourg\\
%
\textsuperscript{3}Trier University of Applied Sciences, Trier, Germany
%
}
\makeatletter
\let\@oldmaketitle\@maketitle%
\renewcommand{\@maketitle}{\@oldmaketitle%
\myfigure{}\bigskip}%
\makeatother
\newcommand\myfigure{%
\centering
\vspace{-5mm}
\includegraphics[scale=0.113]{teaser.pdf}
\captionof{figure}{Global support factors of PCA lead to implausible body shapes, whereas the local support factors of our method give more realistic results. See our accompanying video for animated results.}
\label{globvsloc}
}
\maketitle
\begin{abstract}
Representing 3D shape deformations by high-dimensional linear models has many applications in computer vision and medical imaging. Commonly, using Principal Components Analysis a low-dimensional subspace of the high-dimensional shape space is determined. However, the resulting factors (the most dominant eigenvectors of the covariance matrix) have global support, i.e.~changing the coefficient of a single factor deforms the entire shape. Based on matrix factorisation with sparsity and graph-based regularisation terms, we present a method to obtain deformation factors with local support. The benefits include better flexibility and interpretability as well as the possibility of interactively deforming shapes locally. We demonstrate that for brain shapes our method outperforms the state of the art in local support models with respect to generalisation and sparse reconstruction, whereas for body shapes our method gives more realistic deformations.
\end{abstract}
\footnotetext{\copyright ~ 2015 IEEE. Personal use of this material is permitted. Permission from IEEE must be obtained for all other uses, in any current or future media, including reprinting/republishing this material for advertising or promotional purposes, creating new collective works, for resale or redistribution to servers or lists, or reuse of any copyrighted component of this work in other works.}
\section{Introduction}
Due to their simplicity, linear models in high-dimensional space are frequently used for modelling nonlinear deformations of shapes in 2D or 3D space. For example, Active Shape Models (ASM) \cite{Cootes:1992uw}, based on a statistical shape model, are popular for image segmentation.
%
Usually, surface meshes, comprising faces and vertices, are employed for representing the surfaces of shapes in 3D. Dimensionality reduction techniques are used to learn a low-dimensional representation of the \emph{vertex coordinates} from training data. %
Frequently, an affine subspace close to the training shapes is used. To be more specific, mesh deformations are modelled by expressing the vertex coordinates as the sum of a mean shape $\bar{\vecx}$ and a linear combination of $M$ modes of variation $\matPhi = [\matPhi_1,\ldots,\matPhi_M]$, i.e.~the vertices deformed by the weight or coefficient vector $\vecalpha$ are given by $\vecy(\vecalpha)=\bar{\vecx} + \matPhi \vecalpha$, see Fig.~\ref{globvsloc}.
Commonly, by using Principal Components Analysis (PCA), the modes of variation are set to the most dominant eigenvectors of the sample covariance matrix.
%
PCA-based models are computationally convenient due to the orthogonality of the eigenvectors of the (real and symmetric) covariance matrix. Due to the diagonalisation of the covariance matrix, an axis-aligned Gaussian distribution of the weight vectors of the training data is obtained.
%
%
%
A problem of PCA-based models is that eigenvectors have \emph{global support}, i.e.~adjusting the weight of a single factor affects \emph{all} vertices of the shape (Fig.~\ref{globvsloc}).
Thus, in this work, instead of eigenvectors, we consider more general \emph{factors} as modes of variation that have \emph{local support}, i.e.~adjusting the weight of a single factor leads only to a spatially localised deformation of the shape (Fig.~\ref{globvsloc}). The set of all factors can be seen as a dictionary for representing shapes by a linear combination of the factors.
%
%
%
Benefits of factors with local support include more realistic deformations (cf.~Fig.~\ref{globvsloc}), better interpretability of the deformations (e.g. clinical interpretability in a medical context \cite{Sjostrand:2007hb}), and the possibility of interactive local mesh deformations (e.g. editing animated mesh sequences in computer graphics \cite{Neumann:2013gb}, or enhanced flexibility for interactive 3D segmentation based on statistical shape models \cite{Bernard:2015wx,bernard2016arXiv}).
%
%
%
%
%
%
\subsection{PCA Variants}
PCA is a non-convex problem that admits the efficient computation of the global optimum, e.g. by Singular Value Decomposition (SVD). However, the downside is that the incorporation of arbitrary (convex) regularisation terms is not possible due to the SVD-based solution. Therefore, incorporating regularisation terms into PCA is an active field of research and several variants have been presented: Graph-Laplacian PCA \cite{Jiang:2013wd} obtains factors with smoothly varying components according to a given graph. Robust PCA \cite{Candes:2011vf} formulates PCA as a convex low-rank matrix factorisation problem, where the nuclear norm is used as convex relaxation of the matrix rank.
%
A combination of both Graph-Laplacian PCA and Robust PCA has been presented in \cite{Shahid:2015vb}. The Sparse PCA (SPCA) method \cite{Hein:2010wf,Zou:2006tl} obtains sparse factors. Structured Sparse PCA (SSPCA) \cite{Jenatton:2009tq} additionally imposes structure on the sparsity of the factors using group sparsity norms, such as the mixed $\ell_1/\ell_2$ norm. %
%
\subsection{Deformation Model Variants}
In \cite{Last:2011wk}, the flexibility of shape models has been increased by using PCA-based factors in combination with a \emph{per-vertex} weight vector, in contrast to a single weight vector that is used for all vertices. In \cite{Cootes:1995uz,Wang:2000iw}, it is shown that additional elasticity in the PCA-based model can be obtained by manipulation of the sample covariance matrix. Whilst both approaches increase the flexibility of the shape model, they result in global support factors.
In \cite{Sjostrand:2007hb}, SPCA is used to model the anatomical shape variation of the 2D outlines of the corpus callosum.
%
%
In \cite{Uzumcu:2003gz}, 2D images of the cardiac ventricle were used to train an Active Appearance Model based on Independent Component Analysis (ICA) \cite{Hyvarinen:2001vj}.
%
Other applications of ICA for statistical shape models are presented in \cite{Suinesiaputra:2004jh,Zewail:2007ta}.
%
The Orthomax method, where the PCA basis is determined first and then rotated such that it has a ``simple'' structure, is used in \cite{Stegmann:2006ja}.
The major drawback of SPCA, ICA and Orthomax is that the spatial relation between vertices is completely ignored. %
The Key Point Subspace Acceleration method based on Varimax, where a statistical subspace and key points are automatically identified from training data, is introduced in \cite{Meyer:2007wg}.
For mesh animation, in \cite{Tena:2011ts} the clusters of spatially close vertices are determined first by spectral clustering, and then PCA is applied for each vertex cluster, resulting in one sub-PCA model per cluster. This two-stage procedure has the problem, that, due to the independence of both stages, it is unclear whether the clustering is optimal with respect to the deformation model.
%
Also, a blending procedure for the individual sub-PCA models is required. %
A similar approach of first manually segmenting body regions and then learning a PCA-based model has been presented in \cite{Yang:2014tj}.
%
%
The \emph{Sparse Localised Deformation Components} method (SPLOCS) obtains localised deformation modes from animated mesh sequences by using a matrix factorisation formulation with a weighted $\ell_1/\ell_2$ norm regulariser \cite{Neumann:2013gb}. Local support factors are obtained by explicitly modelling local support regions, which are in turn used to update the weights of the $\ell_1/\ell_2$ norm \emph{in each iteration}. This makes the non-convex optimisation problem even harder to solve and dismisses convergence guarantees.
With that, a suboptimal initialisation of the support regions, as presented in the work, affects the quality of the found solution.
The \emph{compressed manifold modes} method \cite{Kovnatsky:2015tm,Neumann:2014uy} has the objective to obtain local support basis functions of the (discretised) Laplace-Beltrami operator of a \emph{single} input mesh.
%
In \cite{Kovnatsky:2014ti}, the authors obtain smooth functional correspondences between shapes that are spatially localised by using an $\ell_1$ norm regulariser in combination with the \emph{row} and \emph{column Dirichlet energy}.
The method proposed in \cite{Rustamov:2013tw} is able to localise \emph{shape differences} based on functional maps between two shapes.
Recently, the \emph{Shape-from-Operator} approach has been presented \cite{Boscaini:2015tl}, where shapes are reconstructed from more general intrinsic operators.
%
%
\subsection{Aims and Main Contributions}
The work presented in this paper has the objective of learning local support deformation factors from training data.
The main application of the resulting shape model is recognition, segmentation and shape interpolation \cite{Bernard:2015wx,bernard2016arXiv}.
Whilst our work remedies several of the mentioned shortcomings of existing methods, it can also be seen as complementary to SPLOCS, which is more tailored towards artistic editing and mesh animation.
The most significant difference to SPLOCS is that we aim at letting the training shapes \emph{automatically determine the location and size} of each local support region.
This is achieved by formulating a matrix factorisation problem that incorporates regularisation terms which simultaneously account for \emph{sparsity} and \emph{smoothness} of the factors, where a graph-based smoothness regulariser accounts for smoothly varying neighbour vertices.
%
In contrast to SPLOCS or sub-PCA, this results in an implicit clustering that is part of the optimisation and does \emph{not require an initialisation} of local support regions, which in turn simplifies the optimisation procedure.
Moreover, by integrating a \emph{smoothness prior} into our framework we can \emph{handle small training datasets}, even if the desired number of factors exceeds the number of training shapes.
%
Our optimisation problem is formulated in terms of the Structured Low-Rank Matrix Factorisation framework \cite{Haeffele:2014wj}, which has \emph{appealing theoretical properties}.
\section{Methods}
First, we introduce our notation and linear shape deformation models.
%
Then, we state the objective and its formulation as optimisation problem, followed by the theoretical motivation. Finally, the block coordinate descent algorithm and the factor splitting method are presented.
%
%
%
\subsection{Notation}
%
%
$\matI_p$ denotes the $p \times p$ identity matrix, $\onevec_p$ the $p$-dimensional vector containing ones, $\zerovec_{p\times q}$ the $p \times q$ zero matrix, and $\mathbb{S}^+_{p}$ the set of $p \times p$ positive semi-definite matrices.
Let $\matA \in \R^{p \times q}$. We use the notation $\matA_{\mathcal{A},\mathcal{B}}$ to denote the submatrix of $\matA$ with the rows indexed by the (ordered) index set $\mathcal{A}$ and columns indexed by the (ordered) index set $\mathcal{B}$. The colon denotes the full (ordered) index set, e.g. $\matA_{\mathcal{A},:}$ is the matrix containing all rows of $\matA$ indexed by $\mathcal{A}$.
%
For brevity, we write $\matA_r$ to denote the $p$-dimensional vector formed by the $r$-th column of $\matA$.
%
The operator $\VEC(\matA)$ creates a $pq$-dimensional column vector from $\matA$ by stacking its columns, and $\otimes$ denotes the Kronecker product.
\subsection{Linear Shape Deformation Models}\label{lindefmod}
%
Let $\matX_k {\in} \R^{N \times 3}$ be the matrix representation of a shape comprising $N$ points (or vertices) in $3$ dimensions, and let ${\{\matX_k : 1 \leq k \leq K\}}$ be the set of $K$ training shapes. We assume that the rows in each $\matX_k$ correspond to homologous points. Using the vectorisation $\vecx_k {=} \VEC(\matX_k) {\in} \R^{3N}$, all $\vecx_k$ are arranged
in the matrix ${\matX {=} [\vecx_1, \ldots, \vecx_K] {\in} \R^{3N{\times}K}}$.
We assume that all shapes have the same pose, are centred at the mean shape $\bar{\matX}$, i.e.~$\sum_k \matX_k {=} \zerovec_{N {\times} 3}$, and that the standard deviation of $\VEC(\matX)$ is one.
%
%
%
%
%
%
%
Pairwise relations between vertices are modelled by a weighted undirected graph $\mathcal{G} {=} (\mathcal{V}, \mathcal{E}, \vecomega)$ that is shared by all shapes.
%
The node set $\mathcal{V} {=}\{1,\ldots,N\}$ enumerates all $N$ vertices, the edge set ${\mathcal{E} {\subseteq} \{1,\ldots, N\}^2}$ represents the connectivity of the vertices, and $\vecomega {\in} \R_+^{\vert \mathcal{E} \vert}$ is the weight vector. The (scalar) weight $\vecomega_e$ of edge $e {=} (i,j) \in \mathcal{E}$ denotes the affinity between vertex $i$ and $j$, where ``close'' vertices have high value $\vecomega_e$.
%
We assume there are no self-edges, i.e.~$(i,i) {\notin} \mathcal{E}$.
The graph can either encode pairwise \emph{spatial} connectivity, or affinities that are not of spatial nature (e.g. symmetries, or prior anatomical knowledge in medical applications).
%
%
%
%
%
For the standard PCA-based method \cite{Cootes:1992uw}, the modes of variation in the $M$ columns of the matrix $\matPhi {\in} \R^{3N \times M}$ are defined
as the $M$ most dominant eigenvectors of the sample covariance matrix $\matC {=} \frac{1}{K-1}\matX \matX^T$. However, we consider
the generalisation where $\matPhi$ contains general $3N$-dimensional vectors, the \emph{factors}, in its $M$ columns. In both cases, the (linear) deformation model (modulo the mean shape)
is given by
\begin{align}\label{pdmvec}
\vecy(\vecalpha) = \matPhi \vecalpha \,,
\end{align}
with weight vector $\vecalpha \in \R^{M}$. Due to vectorisation, the rows with indices $\{1,\ldots,N\}, \{N{+}1,\ldots, 2N\}$ and $\{2N{+}1,\ldots,3N\}$ of $\vecy$ (or $\matPhi$), correspond to the $x$, $y$ and $z$ components of the $N$ vertices of the shape, respectively.
\subsection{Objective and Optimisation Problem}
The objective is to find ${\matPhi = [\matPhi_1, \ldots, \matPhi_M]}$ and ${\matAlpha = [\vecalpha_1, \ldots, \vecalpha_K] \in \R^{M \times K}}$ for a given $M < 3N$ such that, according to eq.~\eqref{pdmvec}, we can write
\begin{align}
\matX \approx \matPhi \matAlpha \,,
\end{align}
where the factors $\matPhi_m$ have \emph{local support}. Local support means that $\matPhi_m$ is sparse and that all \emph{active} vertices, i.e.~vertices that correspond to the non-zero elements of $\matPhi_m$, are connected by (sequences of) edges in the graph $\mathcal{G}$.
%
%
%
%
%
%
%
%
%
%
%
%
%
%
%
%
%
%
%
%
%
%
%
Now we state our problem formally as an optimisation problem. The theoretical motivation thereof is based on \cite{Bach:2008wn,Burer:2005jb,Haeffele:2014wj} and is recapitulated in section \ref{theomot}, where it will also become clear that our chosen regularisation term is related to the \emph{Projective Tensor Norm} \cite{Bach:2008wn,Haeffele:2014wj}.
%
%
%
%
%
A general matrix factorisation problem with squared Frobenius norm loss is given by
\begin{align}
\min_{\matPhi, \matA} \| \matX - \matPhi\matA \|_F^2 + \Omega(\matPhi,\matA)\,,
\end{align}
%
%
%
where the regulariser $\Omega$ imposes certain properties upon $\matPhi$ and $\matA$. The optimisation is performed over \emph{some} compact set (which we assume implicitly from here on).
An obvious property of local support factors is sparsity. Moreover, it is desirable that neighbour vertices vary smoothly. Both properties together seem to be promising candidates to obtain local support factors, which we reflect in our regulariser.
%
%
%
%
%
%
%
%
%
%
%
%
%
Our optimisation problem is given by
\begin{align}\label{optProb}
\min_{{\substack{\matPhi{\in}\R^{{3N{\times}M}}\\ \matA{\in}\R^{M{\times}K}}}}\! \|\matX{-}\matPhi\matA\|_F^2 +
%
{\lambda}\sum_{m=1}^M \!\|\matPhi_m\|_\Phi \|(\matA_{m,:})^T\|_A \,, %
\end{align}
where $\|\cdot\|_\Phi$ and $\|\cdot\|_A$ denote vector norms. %
For $\vecz' \in \R^K, \vecz \in \R^{3N}$, we define
\begin{align}
& \|\vecz'\|_A = %
\lambda_{A} \| \vecz' \|_2 \,, \text{ and } \label{normA} \\
&\|\vecz\|_\Phi = \lambda_{_1}\| \vecz \|_1 {+}
\lambda_{_2} \| \vecz \|_2
+ \lambda_{\infty} \| \vecz \|_{1,\infty}^\mathcal{H} +
\lambda_{\mathcal{G}} \| \matE \vecz \|_2 \,. \label{normPhi}
\end{align}
%
%
%
%
%
%
%
%
Both $\ell_2$ norm terms will be discussed in section \ref{theomot}. The $\ell_1$ norm is used to obtain sparsity in the factors.
%
%
The (mixed) $\ell_1/\ell_\infty$ norm is defined by
\begin{align}\label{l1linf}
\| \vecz \|_{1,\infty}^\mathcal{H} = \sum_{g \in \mathcal{H}}\| \vecz_g \|_{\infty} \,,
\end{align}
where $\vecz_g$ denotes a subvector of $\vecz$ indexed by $g \in \mathcal{H}$. By using the collection ${\mathcal{H} = \{ \{i, i+N, i+2N\} : 1 \leq i \leq N\}}$, a grouping of the x, y and z components per vertex is achieved, i.e.~within a group $g$ only the component with largest magnitude is penalised and no extra cost is to be paid for the other components being non-zero.
%
%
%
%
%
%
%
The last term in eq.~\eqref{normPhi}, the graph-based $\ell_2$ (semi-)norm, imposes smoothness upon each factor, such that neighbour elements according to the graph $\mathcal{G}$ vary smoothly.
Based on the incidence matrix of $\mathcal{G}$, we choose $\matE$ such that
\begin{align}\label{matE}
\| \matE \vecz \|_2 {=} \sqrt{\sum_{d \in \{0,N,2N\}} \sum_{(i,j) = e_p \in \mathcal{E}} \vecomega_{e_p} ( \vecz_{d+i} - \vecz_{d+j})^2}\,.
\end{align}
As such, $\matE$ is a discrete (weighted) gradient operator and $\|\matE \cdot\|_2^2$ corresponds to Graph-Laplacian regularisation \cite{Jiang:2013wd}. $\matE$ is specified in the supplementary material.
The structure of our problem formulation in eqs.~\eqref{optProb}, \eqref{normA}, \eqref{normPhi} allows for various degrees-of-freedom in the form of the parameters. They allow to weigh the data term versus the regulariser ($\lambda$), control the rank of the solution ($\lambda_A$ and $\lambda_2$ together, cf.~last paragraph in section \ref{theomot}), control the sparsity ($\lambda_1$), control the amount of grouping of the x, y and z components ($\lambda_\infty$) and control the smoothness $\lambda_{\mathcal{G}}$. The number of factors $M$ has an impact on the size of the support regions (for small $M$ the regions tend to be larger, whereas for large $M$ they tend to be smaller).
%
%
%
%
%
%
%
%
%
%
%
%
%
%
%
%
%
%
%
%
%
\subsection{Theoretical Motivation}\label{theomot}
%
For a matrix $\matX \in \R^{3N \times K}$ and vector norms $\|\cdot\|_{\Phi}$ and $\|\cdot\|_{ A}$, let us define the function
\begin{align}
\psi^M(\matX) = \label{ptn}
\min_{\substack{\{(\matPhi \in \R^{3N{\times}M}, \\\matA\in\R^{M{\times}K}): \\ \matPhi \matA = \matX\}}} ~~\sum_{m=1}^M \|\matPhi_m\|_{\Phi} \| (\matA_{m,:})^T\|_{ A} \,.
%
\end{align}
%
The function $\psi(\cdot) {=} \lim_{M \rightarrow \infty} \psi^M(\cdot)$
%
defines a norm known as \emph{Projective Tensor Norm} or \emph{Decomposition Norm} \cite{Bach:2008wn,Haeffele:2014wj}.
%
%
%
%
\begin{lemma}
For any $\epsilon > 0$ there exists an $M(\epsilon) \in \N$ such that $\|\psi(\matX) - \psi^{M(\epsilon)}(\matX)\| < \epsilon$.
\end{lemma}
\begin{proof}
For $\psi(\matX)$ there are sequences $\{\matPhi_i\}_{i=1}^{\infty}$ and $\{\matA^T_i\}_{i = 1}^{\infty}$ such that $\psi(\matX) = \sum_{i = 1}^{\infty}\|\matPhi_i\|_{\Phi}\|\matA^T_i\|_{A}$.
Let $l_m = \sum_{i = 1}^{m}\|\matPhi_i\|_{\Phi} \|\matA^T_i\|_{A}$. The sequence
$l_m$ is monotone, bounded from above and convergent. Let
${l_{\infty} = \psi(\matX)}$ denote its limit. Since the sequence is convergent, there is
$M(\epsilon)$ such that $\|l_{\infty} - l_j\| < \epsilon$ for ${j \geq M(\epsilon)}$.
\end{proof}
%
%
%
%
\noindent We now proceed by introducing the optimisation problem
%
%
%
%
%
%
%
%
%
%
%
%
%
%
%
%
%
%
%
%
%
\begin{align}\label{zprob}
\min_\matZ \| \matX - \matZ \|_F^2 + \lambda \psi^M(\matZ) \,.
\end{align}
%
%
%
Next, we establish a connection between problem \eqref{zprob} and our problem \eqref{optProb}.
First, we assume that we are given a solution pair $(\matPhi,\matA)$ minimising problem \eqref{optProb}. By defining $\matZ = \matPhi\matA$, $\matZ$ is a solution to problem \eqref{zprob}.
Secondly, assume we are given a solution $\matZ$ minimising problem \eqref{zprob}. To find a solution solution pair $(\matPhi,\matA)$ minimising problem \eqref{optProb}, one needs to compute the $(\matPhi,\matA)$ that achieves the minimum of the right-hand side of \eqref{ptn} for a given $\matZ$.
This shows that given a solution to one of the problems, one can infer a solution to the other problem. Next we reformulate problem \eqref{zprob}.
Following \cite{Haeffele:2014wj}, we define the matrices $\matQ \in \R^{3N+K \times M},~\matY \in \R^{3N+K \times 3N+K}$ as
\begin{align}
& \matQ = \begin{bmatrix}
\matPhi \\ \matA^T
\end{bmatrix}\,, \quad
\matY = \matQ\matQ^T = \begin{pmatrix}
\matPhi\matPhi^T & \matPhi \matA \\
\matA^T \matPhi^T & \matA^T \matA
\end{pmatrix}\,,
\intertext{and the function $F: \mathbb{S}_{3N+K}^+ \rightarrow \R$ as}
& F(\matY) = F(\matQ\matQ^T) = \| \matX - \matPhi\matA \|_F^2 + \lambda \psi^M(\matPhi\matA)\,.
\end{align}
%
%
%
%
%
\begin{flalign}\label{optProbCvx}
\text{Let} && \matY^* = \argmin_{\matY \in \mathbb{S}_{3N+K}^+} F(\matY)\,. \quad\qquad\qquad
\end{flalign}
For a given $\matY^*$, problem \eqref{zprob} is minimised by the upper-right block matrix of $\matY^*$.
The difference between \eqref{zprob} and \eqref{optProbCvx} is that the latter is over the set of positive semi-definite matrices, which, at first sight, does not present any gain.
However, under certain conditions, the global solution for $\matQ$, rather than the product $\matY = \matQ\matQ^T$, can be obtained directly \cite{Burer:2005jb}. %
In \cite{Bach:2008wn} it is shown that
%
if $\matQ$ is a \emph{rank deficient} local minimum of $F(\matQ\matQ^T)$, then it is also a global minimum. Whilst these results only hold for twice differentiable functions $F$, Haeffele et al.\ have presented analogous results for the case of $F$ being a sum of a twice-differentiable term and a non-differentiable term \cite{Haeffele:2014wj}, such as ours above.
As such, \emph{any} (rank deficient) local optimum of problem \eqref{optProb} is also a global optimum.
If in $\psi(\cdot)$, both $\|\cdot\|_{\Phi}$ and $\|\cdot\|_{ A}$ are the $\ell_2$ norm, $\psi(\cdot)$ is equivalent to the nuclear norm,
%
commonly used as convex relaxation of the matrix rank \cite{Haeffele:2014wj,Recht:2010ht}.
In order to steer the solution towards being rank deficient, we include $\ell_2$ norm terms in $\|\cdot\|_\Phi$ and $\|\cdot\|_A$ (see \eqref{normA} and \eqref{normPhi}). With that, part of the regularisation term in \eqref{optProb} is the nuclear norm that accounts for low-rank solutions.
\subsection{Block Coordinate Descent}
A solution to problem \eqref{optProb} is found by block coordinate descent (BCD) \cite{Xu:2013vk} (algorithm~\ref{bcdCode}). It employs alternating proximal steps, which can be seen as generalisation of gradient steps for non-differentiable functions.
%
%
%
% \vspace{-5mm}
\begin{algorithm}\label{bcdCode}
%
\scriptsize
\SetKwInput{Input}{Input}
\SetKwInput{Output}{Output}
%
\DontPrintSemicolon
\Repeat{convergence}{
\tcp{update $\matPhi$}
%
$\matPhi' \leftarrow \matPhi - \epsilon_\Phi \nabla_\Phi \| \matX - \matPhi \matA \|_F^2$\tcp*{gradient step (loss)}
\For( \tcp*[h]{proximal step $\matPhi$ (penalty)}){$m=1,\ldots,M$}{
$\matPhi_m \leftarrow \prox_{\lambda \|\cdot\|_\Phi \|(\matA_{m,:})^T\|_A}(\matPhi'_m )$
}
\BlankLine
\tcp{update $\matA$}
$\matA' \leftarrow \matA- \epsilon_A \nabla_A\| \matX - \matPhi \matA \|_F^2$\tcp*{gradient step (loss)}
\For( \tcp*[h]{proximal step $\matA$ (penalty)}){$m=1,\ldots,M$}{%
$\matA_{m,:} \leftarrow \prox_{\lambda \|\matPhi_m\|_\Phi \|\cdot\|_A}((\matA^{'}_{m,:})^T)^T$
}
}
\caption{Simplified view of block coordinate descent. For details see \cite{Haeffele:2014wj,Xu:2013vk}.}
\end{algorithm}
% \vspace{-5mm}
%
%
Since computing the proximal mapping is repeated in each iteration, an efficient computation is essential.
%
The proximal mapping of $\|\cdot\|_A$ in eq.~\eqref{normA} has a closed-form solution by \emph{block soft thresholding} \cite{Parikh:2013vb}.
%
%
%
%
%
The proximal mapping of $\|\cdot\|_\Phi$ in eq.~\eqref{normPhi} is solved by dual forward-backward splitting \cite{Combettes:2010uu,Combettes:2009wd} (see supplementary material).
The benefit of BCD is that it scales well to large problems (cf. complexity analysis in the supplementary material). However, a downside is that by using the alternating updates one has only guaranteed convergence to a Nash equilibrium point \cite{Haeffele:2014wj,Xu:2013vk}. %
\subsection{Factor Splitting}
Whilst solving problem \eqref{optProb} leads to smooth and sparse factors, there is no guarantee that the factors have only a \emph{single} local support region. %
In fact, as motivated in section \ref{theomot}, the solution of eq.~\eqref{optProb} is steered towards being low-rank. However, the price to pay for a low-rank solution is that capturing multiple support regions in a \emph{single} factor is preferred over having each support region in an individual factor (e.g. for $M=2$ and any $\veca \neq \zerovec, ~\vecb \neq \zerovec$, the matrix $\matPhi = [\matPhi_1 \matPhi_2]$ has a lower rank when $\matPhi_1 = [\veca^T ~\vecb^T]^T$ and $\matPhi_2 = \zerovec$, compared to $\matPhi_1 = [\veca^T ~\zerovec^T]^T$ and $\matPhi_2 = [\zerovec^T~ \vecb^T]^T$).
%
%
%
%
A simple yet effective way to deal with this issue is to split factors with multiple disconnected support regions into multiple (new) factors (see supplementary material). %
Since this is performed \emph{after} the optimisation problem has been solved, it is preferable over pre- or intra-processing procedures \cite{Tena:2011ts,Neumann:2013gb} since the optimisation remains unaffected and the data term in eq.~\eqref{optProb} does not change due to the splitting. %
%
\setlength{\abovedisplayskip}{2pt}
\setlength{\belowdisplayskip}{2pt}
\section{Experimental Results}\label{expres}
We compared the proposed method with \emph{PCA} \cite{Cootes:1992uw}, \emph{kernel PCA} (kPCA, cf.~\ref{kernelisation}), \emph{Varimax} \cite{Harman:1976vh}, \emph{ICA} \cite{Hyvarinen:2001vj}, \emph{SPCA} \cite{Jenatton:2009tq}, \emph{SSPCA} \cite{Jenatton:2009tq}, and \emph{SPLOCS} \cite{Neumann:2013gb} on two real datasets, brain structures and human body shapes. Only our method and the SPLOCS method explicitly aim to obtain local support factors, whereas the SPCA and SSPCA methods obtain sparse factors (for the latter the $\ell_1/\ell_2$ norm with groups defined by $\mathcal{H}$, cf.~eq.~\eqref{l1linf}, is used). The methods kPCA, SPCA, SSPCA, SPLOCS and ours require to set various parameters, which we address by random sampling (see supplementary material).
For all evaluated methods a factorisation $\matPhi \matA$ is obtained. W.l.o.g. we normalise the rows of $\matA$ to have standard deviation one (since $\matPhi \matA = (\frac{1}{s}\matPhi) (s\matA)$ for $s\neq0$). Then, the factors in $\matPhi$ are ordered descendingly according to their $\ell_2$ norms.
In our method, the number of factors may be changed due to factor splitting, thus, in order to allow a fair comparison, we only retain the first $M$ factors.
Initially, the columns of $\matPhi$ are chosen to $M$ (unique) columns selected randomly from $\matI_{3N}$. This is in accordance with \cite{Haeffele:2014wj}, where empirically good results are obtained using trivial initialisations. Convergence plots for different initialisations can be found in the supplementary material.
%
%
%
\subsection{Quantitative Measures}\label{quanmeas}
For $\vecx = \VEC(\matX)$ and $\tilde\vecx = \VEC(\tilde\matX)$, the \emph{average error}
\begin{align}
e_{\text{avg}}(\vecx,\tilde\vecx) = \frac{1}{N} \sum_{i=1}^N \| \matX_{i,:} {-} \tilde\matX_{i,:}\|_2
\intertext{and the \emph{maximum error}}
e_{\max}(\vecx,\tilde\vecx) =\max_{i=1,\ldots,N} \| \matX_{i,:} - \tilde\matX_{i,:}\|_2
\end{align}
measure the agreement between shape $\matX$ and shape $\tilde\matX$. %
The \emph{reconstruction error} for shape $\vecx_k$ is measured by solving the overdetermined system $\matPhi \vecalpha_k = \vecx_k$ for $\vecalpha_k$ in the least-squares sense, and then computing $e_{\text{avg}}(\vecx_k, \matPhi \vecalpha_k)$ and $e_{\max}(\vecx_k, \matPhi \vecalpha_k)$, respectively.
%
To measure the \emph{specificity error}, $n_s$ shape samples are drawn randomly ($n_s {=} 1000$ for the brain shapes and $n_s {=} 100$ for the body shapes). For each drawn shape, the average and maximum errors between the closest shape in the training set are denoted by $s_{\text{avg}}$ and $s_{\max}$, respectively.
For simplicity, we assumed that the parameter vector $\vecalpha$ follows a zero mean Gaussian distribution, where the covariance matrix $\matC_{\vecalpha}$ is estimated from the parameter vectors $\vecalpha_k$ of the $K$ training shapes. With that, a random shape sample $\vecx_r$ is generated by drawing a sample of the vector $\vecalpha_r$ from its distribution and setting $\vecx_r = \matPhi \vecalpha_r$.
The specificity can be interpreted as a score for assessing how realistic synthesized shapes are on a coarse level of detail (the contribution of errors on fine details to the specificity score is marginal due to the dominance of the errors on coarse scales). %
For evaluating the \emph{generalisation error}, a collection of index sets $\mathcal{I} \subset 2^{\{1,\ldots,K\}}$ is used, where each set $\mathcal{J} \in \mathcal{I}$ denotes the set of indices of the \emph{test shapes} for one run and $\vert \mathcal{I} \vert$ is the number of runs. We used five-fold cross-validation, i.e.~$\vert \mathcal{I} \vert = 5$ and each set $\mathcal{J}$ contains $\operatorname{round}(\frac{K}{5})$ random integers from $\{1, \ldots, K\}$.
In each run, the deformation factors $\matPhi^{\mathcal{\bar J}}$ are computed using only the shapes with indices ${\mathcal{\bar J}} = \{1,\ldots,K\} \setminus \mathcal{J}$. For all test shapes $\vecx_j$, where $j \in \mathcal{J}$, the parameter vector $\vecalpha_j$ is determined by solving $\matPhi^{\mathcal{\bar J}} \vecalpha_j = \vecx_j$ in the least-squares sense. Eventually, the average reconstruction error $e_{\text{avg}}(\vecx_j,\matPhi^{\mathcal{\bar J}} \vecalpha_j)$ and the maximum reconstruction error $e_{\max}(\vecx_j,\matPhi^{\mathcal{\bar J}} \vecalpha_j)$ are computed for each test shape, which we denote as $g_{\text{avg}}$ and $g_{\max}$, respectively.
Moreover, the \emph{sparse reconstruction errors} $g_{\text{avg}}^{0.05}$ and $g_{\max}^{0.05}$ are computed in a similar manner, with the difference that $\vecalpha_j$ is now determined by using only $5\%$ of the rows (selected randomly) of $\matPhi^{\mathcal{\bar J}}$ and $\vecx_j$, denoted by $\tilde\matPhi^{\mathcal{\bar J}}$ and $\tilde\vecx_j$. For that, we minimise $\| \tilde\matPhi^{\mathcal{\bar J}} \vecalpha_j - \tilde\vecx_j\|_2^2 + \| \Gamma \vecalpha_j \|_2^2$ with respect to $\vecalpha_j$, which is a least-squares problem with Tikhonov regularisation, where $\Gamma$ is obtained by Cholesky factorisation of $\matC_{\vecalpha} = \Gamma^T \Gamma$.
%
The purpose of this measure is to evaluate how well a deformation model interpolates an unseen shape from a small subset of its points, which is relevant for shape model-based surface reconstruction \cite{Bernard:2015wx,bernard2016arXiv}.
%
\subsection{Brain Structures}
%
%
%
The first evaluated dataset comprises $8$ brain structure meshes of ${K{=}17}$ subjects \cite{Bernard:2016tv}.
All $8$ meshes together have a total number of ${N{=}1792}$ vertices that are in correspondence among all subjects. Moreover, all meshes have the same topology, i.e.~seen as graphs they are isomorphic. A single deformation model is used to model the deformation of all $8$ meshes in order to capture the interrelation between the brain structures. %
%
%
We fix the number of desired factors to $M{=}96$ to account for a sufficient amount of local details in the factors.
%
Whilst the meshes are smooth and comparably simple in shape (cf.~Fig.~\ref{brainDefFactors}), a particular challenge is that the training dataset comprises only $K{=}17$ shapes.
\subsubsection{Second-order Terms}
%
Based on anatomical knowledge, we use the brain structure interrelation graph $\mathcal{G}_{\text{bs}} = (\mathcal{V}_{\text{bs}}, \mathcal{E}_{\text{bs}})$ shown in Fig.~\ref{bsgraph}, where an edge between two structures denotes that a deformation of one structure may have a direct effect on the deformation of the other structure.
\begin{figure}[h!]
\vspace{-4mm}
\centerline{\includegraphics[scale=0.73]{brainstructuregraph.pdf}}
\caption{Brain structure interrelation graph.}%
\label{bsgraph}\vspace{-3mm}
\end{figure}
%\vspace{-4mm}
Using $\mathcal{G}_{\text{bs}}$, we now build a distance matrix that is then used in the SPLOCS method and our method.
For $\mathfrak{o} \in \mathcal{V}_{\text{bs}}$, let $g_\mathfrak{o} \subset \{1,\ldots,N\}$ denote the (ordered) indices of the vertices of brain structure $\mathfrak{o}$. Let $\matD_{\text{euc}} \in \R^{N \times N}$ be the Euclidean distance matrix, where $(\matD_{\text{euc}})_{ij} = \| \bar{\matX}_{i,:} - \bar{\matX}_{j,:} \|_2$ is the Euclidean distance between vertex $i$ and $j$ of the mean shape $\bar{\matX}$. Moreover, let $\matD_{\text{geo}} \in \R^{N \times N}$ be the geodesic graph distance matrix of the mean shape $\bar{\matX}$ using the graph induced by the (shared) mesh topology. By $\matD_{\text{euc}}^{\mathfrak{o}} \in \R^{\vert g_\mathfrak{o} \vert \times \vert g_\mathfrak{o} \vert}$ and $\matD_{\text{geo}}^{\mathfrak{o}} \in \R^{\vert g_\mathfrak{o} \vert \times \vert g_\mathfrak{o} \vert}$ we denote the Euclidean distance matrix and the geodesic distance matrix of brain structure $\mathfrak{o}$, which are submatrices of $\matD_{\text{euc}}$ and $\matD_{\text{geo}}$, respectively. Let $\bar{d}^{\mathfrak{o}}$ denote the average vertex distance between neighbour vertices of brain structure $\mathfrak{o}$. We define the normalised geodesic graph distance matrix of brain structure $\mathfrak{o}$ by $\tilde\matD_{\text{geo}}^{\mathfrak{o}} = \frac{1}{\bar{d}^{\mathfrak{o}}}\matD_{\text{geo}}^{\mathfrak{o}}$ and the matrix $\tilde\matD_{\text{geo}} \in \R^{N \times N}$ is composed by the individual blocks $\tilde\matD_{\text{geo}}^{\mathfrak{o}}$.
%
The normalised distance matrix between structure $\mathfrak{o}$ and $\mathfrak{\tilde o}$ is given by $\tilde\matD_{\text{bs}}^{\mathfrak{o},\mathfrak{\tilde o}} = \frac{2}{\bar{d}^{\mathfrak{o}}+ \bar{d}^{\mathfrak{\tilde o}}}[(\matD_{\text{euc}})_{g_{\mathfrak{o}}, g_{\mathfrak{\tilde o}}} {-} \onevec_{\vert g_{\mathfrak{o}} \vert} \onevec_{\vert g_{\mathfrak{\tilde o}}\vert}^T d_{\min}^{\mathfrak{o},\mathfrak{\tilde o}}] \in \R^{\vert g_{\mathfrak{o}} \vert \times \vert g_{\mathfrak{\tilde o}}\vert}$, where $d_{\min}^{\mathfrak{o},\mathfrak{\tilde o}}$ is the smallest element of $(\matD_{\text{euc}})_{g_{\mathfrak{o}}, g_{\mathfrak{\tilde o}}}$. The (symmetric) distance matrix $\tilde\matD_{\text{bs}} \in \R^{N \times N}$ between all structures is constructed by
%
%
\begin{align}
(\tilde\matD_{\text{bs}})_{g_{\mathfrak{o}}, g_{\mathfrak{\tilde o}}} = \begin{cases}
\tilde\matD_{\text{bs}}^{\mathfrak{o},\mathfrak{\tilde o}} & \text{ if } \quad (\mathfrak{o},\mathfrak{\tilde o}) \in \mathcal{E}_{\text{bs}} \\
\zerovec_{\vert g_{\mathfrak{o}} \vert \times \vert g_{\mathfrak{\tilde o}}\vert} & \text{ else }
\end{cases} \,.
%
\end{align}
For the SPLOCS method we used the distance matrix $\matD = \alpha_{D} \tilde \matD_{\text{geo}} + (1-\alpha_{D}) \tilde \matD_{\text{bs}}$. For our method, we construct the graph $\mathcal{G} = (\mathcal{V}, \mathcal{E}, \vecomega)$ (cf.~section \ref{lindefmod}) by having an edge $e=(i,j)$ in $\mathcal{E}$ for each $\vecomega_e = \alpha_{D}\exp( - (\tilde \matD_{\text{geo}})_{i,j}^2) + (1-\alpha_D) \exp(- (\tilde\matD_{\text{bs}})_{ij}^2)$ that is larger than the threshold $\theta = 0.1$. In both cases we set $\alpha_D = 0.5$.
\begin{figure*}[t!]%
%
\centerline{\includegraphics[scale=0.247]{brain_shapes_factors.png}}
%
\vspace{-2mm}
\caption{The
colour-coded magnitude (blue corresponds to zero, yellow to the maximum deformation in each plot) for the three deformation factors with largest $\ell_2$ norm is shown in the rows. The factors obtained by SPCA and SSPCA are sparse but not spatially localised (see red arrows). Our method is the only one that obtains local support factors.}
\label{brainDefFactors}
%
%
\end{figure*}
\begin{figure*}%
%
\centerline{
\subfigure{\includetikz{boxplot-brain-pdmReconstructionMeanError.tikz} } \hfil
\subfigure{\includetikz{boxplot-brain-specificityMeanError.tikz} } \hfil
\subfigure{\includetikz{boxplot-brain-generalisationMeanError.tikz} } \hfil
\subfigure{\includetikz{boxplot-brain-meanErrorSparseFitting.tikz}}
}
\vspace{-5mm}
\centerline{
\subfigure{\includetikz{boxplot-brain-pdmReconstructionMaxError.tikz} } \hfil
\subfigure{\includetikz{boxplot-brain-specificityMaxError.tikz} } \hfil
\subfigure{\includetikz{boxplot-brain-generalisationMaxError.tikz} } \hfil
\subfigure{\includetikz{boxplot-brain-maxErrorSparseFitting.tikz}}
}
\vspace{-5mm}
\caption{Boxplots of the quantitative measures for the brain shapes dataset. In each plot, the horizontal axis shows the individual methods and the vertical axis the error scores described in section \ref{quanmeas}.
%
Compared to SPLOCS, which is the only other method explicitly striving for local support deformation factors, our method has a smaller generalisation error and sparse reconstruction error. The sparse but not spatially localised factors obtained by SPCA and SSPCA (cf.~Fig.~\ref{brainDefFactors}) result in a large maximum sparse reconstruction error (bottom right).
%
}
%
\label{brain-boxplots}
%
\end{figure*}
\subsubsection{Dealing with the Small Training Set}\label{kernelisation}
For PCA, Varimax and ICA the number of factors cannot exceed the rank of $\matX$, which is at most $K{-}1$ for $K{<}3N$.
%
For the used matrix factorisation framework, setting $M$ to a value larger than the expected rank of the solution but smaller than full rank has empirically led to good results \cite{Haeffele:2014wj}. However, since our expected rank is $M=96$ and the full rank is at most $K{-}1=16$, this is not possible.
We compensate the insufficient amount of training data by assuming smoothness of the deformations.
Based on concepts introduced in \cite{Cootes:1995uz,Wang:1998bw,Wang:2000iw}, instead of the data matrix $\matX$, we factorise the \emph{kernelised covariance} matrix $\matK$. The standard PCA method finds the $M$ most dominant eigenvectors of the covariance matrix $\matC$ by the (exact) factorisation $\matC = \matPhi \diag(\lambda_1, \ldots, \lambda_{K-1}) \matPhi^T$. The kernelised covariance $\matK$ allows to incorporate additional elasticity into the resulting deformation model. For example, $\matK {=} \matI_{3N}$ results in independent vertex movements \cite{Wang:2000iw}. A more interesting approach is to combine the (scaled) covariance matrix with a smooth vertex deformation. We define $\matK = \frac{1}{\|\VEC(\matX\matX^T)\|_\infty}\matX\matX^T + \matK_{\text{euc}}$, with $\matK_{\text{euc}} = \matI_3 \otimes \matK_{\text{euc}}' \in \R^{3N \times 3N}$. Using the bandwidth $\beta$, $\matK_{\text{euc}}'$ is given by
\begin{align}
(\matK_{\text{euc}}')_{ij} = \exp(-(\frac{(\matD_{\text{euc}})_{ij}}{2 \beta \| \VEC(\matD_{\text{euc}})\|_\infty})^2) \,.
\end{align}
Setting $\matPhi$ to the $M$ most dominant eigenvectors of the symmetric and positive semi-definite matrix $\matK$ gives the solution of kPCA \cite{Bishop:2006ug}. In terms of our proposed matrix factorisation problem in eq.~\eqref{optProb}, we find a factorisation $\matPhi\tilde\matA$ of $\matK$, instead of factorising the data $\matX$. Since the regularisation term remains unchanged, the factor matrix $\matPhi {\in} \R^{3N \times M}$ is still sparse and smooth (due to $\| \cdot \|_\Phi$). Moreover, due to the nuclear norm term being contained in the product $\|\cdot\|_\Phi \|\cdot\|_A$ (cf.~section \ref{theomot}), the resulting factorisation $\matPhi\tilde\matA$ is steered towards being low-rank, in favour of the elaborations in section \ref{theomot}. However, the resulting matrix $\tilde\matA {\in} \R^{M \times 3N}$ now contains the weights for approximating $\matK$ by a linear combination of the columns of $\matPhi$, rather than approximating the data matrix $\matX$ by a linear combination of the columns of $\matPhi$. For the known $\matPhi$, the weights that best approximate the \emph{data matrix} $\matX$ are found by solving the linear system $\matPhi \matA {=} \matX$ in the least-squares sense for $\matA {\in} \R^{M \times K}$.
\subsubsection{Results}
%
The magnitude of the deformation of the first three factors are shown in Fig.~\ref{brainDefFactors}, where it can be seen that only SPCA, SSPCA, SPLOCS and our method obtain \emph{sparse} deformation factors. The SPCA and SSPCA methods do not incorporate the spatial relation between vertices and as such the deformations are not spatially localised (see red arrows in Fig.~\ref{brainDefFactors}, where more than a single region is active). The factors obtained by SPLOCS are non-smooth and do not exhibit local support, in contrast to our method, where smooth deformation factors with local support are obtained.
%
%
The quantitative results presented in Fig.~\ref{brain-boxplots} reveal that our method has a larger reconstruction error. This can be explained by the fact that due to the sparsity and smoothness of the deformation factors a very large number of basis vectors is required in order to exactly span the subspace of the training data. Instead, our method finds a simple (sparse and smooth) representation that explains the data approximately, in favour of Occam's razor. The average reconstruction error is around $1$mm, which is low considering that the brain structures span approximately $6$cm from left to right. Considering specificity, all methods are comparable. PCA, Varimax and ICA, which have the lowest reconstruction errors, have the highest generalisation errors, which underlines that these methods overfit the training data. The kPCA method is able to overcome this issue due to the smoothness assumption. SPCA and SSPCA have good generalisation scores but at the same time a very high maximum reconstruction error. Our method and SPLOCS are the only ones that explicitly strive for local support factors. Since our method outperforms SPLOCS with respect to generalisation and sparse reconstruction error, we claim that our method outperforms the state of the art.
%
\subsection{Human Body Shapes}
%
\begin{figure*}[ht!]
\vspace{-4mm}
\centerline{
\subfigure{\includetikz{boxplot-body-pdmReconstructionMeanError.tikz} } \hfil
\subfigure{\includetikz{boxplot-body-specificityMeanError.tikz} } \hfil
\subfigure{\includetikz{boxplot-body-generalisationMeanError.tikz} } \hfil
\subfigure{\includetikz{boxplot-body-meanErrorSparseFitting.tikz}}
}
\vspace{-5mm}
\centerline{
\subfigure{\includetikz{boxplot-body-pdmReconstructionMaxError.tikz} } \hfil
\subfigure{\includetikz{boxplot-body-specificityMaxError.tikz} } \hfil
\subfigure{\includetikz{boxplot-body-generalisationMaxError.tikz} } \hfil
\subfigure{\includetikz{boxplot-body-maxErrorSparseFitting.tikz}}
}
\vspace{-5mm}
\caption{Boxplots of the quantitative measures in each column for the body shapes dataset. Quantitatively all methods have comparable performance, apart from ICA which performs worse.}
%
\label{body-boxplots}
%
\end{figure*}
%
\begin{figure}%
%
\centerline{\includegraphics[scale=0.25]{body_shapes_factors.png}}
%
\vspace{-2mm}
\caption{The deformation magnitudes reveal that SPCA, SSPCA, SPLOCS and our method obtain local support factors (in the second factor of our method the connection is at the back). The bottom row depicts randomly drawn shapes, where only the methods with local support deformation factors result in plausible shapes.}
\label{bodyDefFactors}
%
%
\end{figure}
%
Our second experiment is based on $1531$ female human body shapes \cite{Yang:2014tj}, where each shape comprises $12500$ vertices that are in correspondence among the training set. Due to the large number of training data and the high level of details in the meshes, we directly factorise the data matrix $\matX$.
%
%
The edge set $\mathcal{E}$ now contains the edges of the triangle mesh topology and the weights for edge $e=(i,j) \in \mathcal{E}$ are given by $\vecomega_e = \exp(- (\frac{(\matD_{\text{euc}})_{ij}}{\bar d})^2 )$, where $\bar d$ denotes the average vertex distance between neighbour vertices. Edges with weights lower than $\theta {=} 0.1$ are ignored.
%
%
%
%
%
%
%
%
%
%
\subsubsection{Results}
%
Quantitatively the evaluated methods have comparable performance, with the exception that ICA has worse overall performance (Fig.~\ref{body-boxplots}). The most noticeable difference between the methods is the specificity error, where SPCA, SSPCA and our method perform best.
Fig.~\ref{bodyDefFactors} reveals that SPCA, SSPCA, SPLOCS and our method obtain factors with local support. Apparently, for large datasets, sparsity alone, as used in SPCA and SSPCA, is sufficient to obtain local support factors. However, our method is the only one that explicitly aims for smoothness of the factors, which leads to more realistic deformations, as shown in Fig.~\ref{perfactorDefs}. %
\begin{figure}%
%
\centerline{\includegraphics[scale=0.28]{bodyshapes_deformations.pdf}}
%
\vspace{-2mm}
\caption{Shapes ${\bar{\vecx} {-} 1.5 \matPhi_m}$ for SPCA ($m{=}1$), SSPCA ($m{=}3$), SPLOCS ($m{=}1$) and our ($m{=}1$) method (cf.~Fig.~\ref{bodyDefFactors}). Our method delivers the most realistic per-factor deformations.}
\label{perfactorDefs}
%
\end{figure}
\section{Conclusion}
We presented a novel approach for learning a linear deformation model from training shapes, where the resulting factors exhibit local support. By embedding sparsity and smoothness regularisers into a theoretically well-grounded matrix factorisation framework, we model local support regions \emph{implicitly}, and thus get rid of the initialisation of the size and location of local support regions, which so far has been necessary in existing methods. %
%
On the small brain shapes dataset that contains relatively simple shapes, our method improves the state of the art with respect to generalisation and sparse reconstruction. For the large body shapes dataset containing more complex shapes, quantitatively our method is on par with existing methods, whilst it delivers more realistic per-factor deformations.
Since articulated motions violate our smoothness assumption, our method cannot handle them.
%
However, when smooth deformations are a reasonable assumption, our method offers a higher flexibility and better interpretability compared to existing methods, whilst at the same time delivering more realistic deformations.
%
\ifcvprfinal
\subsection*{Acknowledgements}
We thank Yipin Yang and colleagues for making the human body shapes dataset publicly available; Benjamin D. Haeffele and Ren\'{e} Vidal for providing their code; Thomas B\"{u}hler and Daniel Cremers for helpful comments on the manuscript; Luis Salamanca for helping to improve our figures; and Michel Antunes and Djamila Aouada for pointing out relevant literature.
The authors gratefully acknowledge the financial support by the Fonds National de la Recherche, Luxembourg (6538106, 8864515).
\fi
{\small
\bibliographystyle{ieee}
\bibliography{refs}
}
\appendix
\twocolumn[\section{Linear Shape Deformation Models with Local Support using Graph-based Structured Matrix Factorisation -- Supplementary Material}]
\subsection{The matrix $\matE$ in eq.~\eqref{matE}}
The matrix $\matE \in \R^{3\vert \mathcal{E} \vert \times 3N}$ is defined
as
%
$\matE = \matI_3 \otimes \matE'$,
%
where $\matE' \in \R^{\vert \mathcal{E} \vert \times N}$ is the weighted incidence matrix of the graph $\mathcal{G} {=} (\mathcal{V}, \mathcal{E}, \vecomega)$ with elements
\begin{align}
\matE'_{pq} = \begin{cases}
\sqrt{\vecomega_{e_p}} & \text{if } q = i \text{ for } e_p = (i,j)\\
-\sqrt{\vecomega_{e_p}} & \text{if } q = j \text{ for } e_p = (i,j)\\
0 & \text{otherwise} \,.
\end{cases}
\end{align}
For $p=1,\ldots, \vert \mathcal{E} \vert$, $e_p \in \mathcal{E}$ denotes the $p$-th edge.
\subsection{Proximal Operators}
\begin{mydef}\label{defProx}
The \emph{proximal operator} (or \emph{proximal mapping}) $\prox_{s\theta}(y): \R^n \rightarrow \R^n$ of a lower semicontinuous function $\theta: \R^n \rightarrow \R$ scaled by $s > 0$ is defined by
\begin{align}
\prox_{s\theta}(\vecy) = \underset{\vecx}{\arg\min}~\{ \frac{1}{2s} \|\vecx-\vecy\|_2^2 + \theta(\vecx) \}\,.
\end{align}
\end{mydef}
\subsubsection{Proximal Operator of $\|\cdot\|_A$}
%
%
%
%
The proximal operator $\prox_{\|\cdot\|_A}(\vecy)$ of $$\|\cdot\|_A = \lambda_A \| \cdot \|_2\,,$$ cf.~eq.~\eqref{normA}, can be computed by the so-called
%
%
%
%
%
\emph{block soft thresholding} \cite{Parikh:2013vb}, i.e.
\begin{align}\label{blocksoftthresh}
\prox_{ \lambda_A \| \cdot\|_2}(\vecy) = (1- \lambda_A/\|\vecy\|_2)_+ \vecy \,,
\end{align}
where for a vector $\vecx \in \R^p$, $(\vecx)_+$ replaces each negative element in $\vecx$ with $0$.
As such, a very efficient way for computing the proximal mapping of $\|\cdot\|_A$ is available.
\subsubsection{Proximal Operator of $\|\cdot\|_\Phi$}
The proximal mapping of
\begin{align}
\|\cdot\|_\Phi =
&\lambda_1 \| \cdot \|_1 +
\lambda_2 \| \cdot \|_2 \nonumber\\
&\quad + \lambda_\infty \| \cdot \|_{1,\infty}^\mathcal{H} +
\lambda_{\mathcal{G}} \| \matE \cdot \|_2 \nonumber\,,
\end{align}
cf.~eq.~\eqref{normPhi}, is given by
\begin{align}
&\prox_{\|\cdot\|_\Phi}(\vecz) = \nonumber\\
& \label{proxPhi} \quad \underset{\vecx}{\arg\min}~\{ \frac{1}{2} \|\vecx-\vecz\|_2^2 + \lambda_1 \| \vecx \|_1 + \lambda_2 \| \vecx \|_2 \\
& \quad\qquad\qquad
+ \lambda_{\infty} \| \vecx \|_{1,\infty}^\mathcal{H} +
\lambda_{\mathcal{G}} \| \matE \vecx \|_2 \}\ \,.\nonumber
\end{align}
Due to the non-separability caused by the linear mapping $\matE$ inside the $\ell_2$ norm, this case is more difficult compared to $\prox_{\|\cdot\|_A}(\vecy)$. However, by introducing
\begin{align}
&{f(\vecx) = \lambda_1 \| \vecx \|_1 + \lambda_2 \| \vecx \|_2 +
\lambda_{\infty} \| \vecx \|_{1,\infty}^\mathcal{H}} %
\intertext{and}
& {g(\vecx) = \lambda_{\mathcal{G}} \|\vecx \|_2}\,,
\end{align}
eq.~\eqref{proxPhi} can be rewritten as
\begin{align}\label{proxPhiDFB}
\underset{\vecx}{\arg\min}~\{ \frac{1}{2} \|\vecx-\vecz\|_2^2 + f(\vecx) + g(\matE\vecx)\}\,.
\end{align}
In this form, \eqref{proxPhiDFB} can now be solved by a dual forward-backward splitting procedure \cite{Combettes:2010uu,Combettes:2009wd} as shown in algorithm~\ref{proxPhiCode}, which we will explain in the rest of this section. The efficient computability hinges on the efficient computation of the (individual) proximal mappings of $f$ and $g$.
\begin{algorithm}\label{proxPhiCode}
\scriptsize
\SetKwInput{Input}{Input}
\SetKwInput{Initialise}{Initialise}
\SetKwInput{Output}{Output}
\SetKwInput{Parameters}{Parameters}
%
\DontPrintSemicolon
%
\Input{$\vecz \in \R^{3N}$}
\Output{$\vecx = \prox_{\|\cdot\|_\Phi}(\vecz)$}
\Parameters{$\lambda, ~\lambda_1, ~\lambda_{\infty},~\lambda_2,~\lambda_{\mathcal{G}} $}
\Initialise{$\vecv, \epsilon \leftarrow 1e^{-4}, \gamma \leftarrow 1.999, \beta = \frac{1+\epsilon}{2}$}
\tcp{Normalise $\matE$ (homogeneity of norm)}
$\lambda_{\mathcal{G}} \leftarrow \lambda_{\mathcal{G}} \|\matE\|_F; \quad \matE \leftarrow \frac{\matE}{\|\matE\|_F}$\\
%
%
%
\Repeat{convergence}{
%
$\vecx \leftarrow \prox_{\lambda_1 \| \cdot\|_1}(\vecz - \matE^T \vecv)$~~\tcp{$\ell_1$ prox, \eqref{softthresh}}
$\vecx \leftarrow \prox_{\lambda_{\infty} \| \cdot\|_{1,\infty}^\mathcal{H}}(\vecx)$~~\tcp{$\ell_1/\ell_\infty$, \cite{Bach:2011ty,Duchi:2008vv}}
$\vecx \leftarrow \prox_{\lambda_{2} \| \cdot\|_{2}}(\vecx)$~~\tcp{$\ell_2$ prox, \eqref{blocksoftthresh}}
$\vecv \leftarrow \vecv {+} \beta\gamma (\matE \vecx {-} \prox_{ \lambda_{\mathcal{G}} / \gamma \|\cdot\|_2}(\frac{\vecv + \gamma \matE \vecx}{\gamma} ) )$ \tcp{$^\dagger$}
}
\caption{Dual forward-backward splitting algorithm to compute the proximal mapping of $\|\cdot\|_\Phi$.}
\end{algorithm}
Since $g$ is a (weighted) $\ell_2$ norm, its proximal mapping is given by \emph{block soft thresholding} presented in eq.~\eqref{blocksoftthresh}.
%
In $f$, the sum of weighted $\ell_1$ and $\ell_1/\ell_\infty$ norms is a term that appears in the \emph{sparse group lasso} and can be computed by applying the \emph{soft thresholding} \cite{Parikh:2013vb} %
\begin{align}\label{softthresh}
\prox_{s \| \cdot\|_1}(\vecy) = (\vecy -s)_+ - (-\vecy - s)_+
\end{align}
first, followed by \emph{group soft thresholding} \cite{Bach:2011ty}. As shown in \cite[Thm. 3]{Haeffele:2014wj}, the $\ell_2$ term can be additionally incorporated by composition, i.e.~by subsequently applying \emph{block soft thresholding} as presented in \eqref{blocksoftthresh}.
%
%
%
%
%
%
Now, to solve the \emph{group soft thresholding} for the proximal mapping of the $\ell_1/\ell_\infty$ norm, one can use the fact that for any norm $\omega$ with dual norm $\omega^*$, $\prox_{s\omega}(\vecy) = {\vecy - \proj_{\omega^* \leq s}(\vecy)}$. By $\proj_{\omega^* \leq s}(\vecy)$, we denote the projection of $\vecy$ onto the $\omega^*$ norm ball with radius $s$ \cite{Bach:2011ty}. The dual norm of the $\ell_1/\ell_\infty$ norm, eq.~\eqref{l1linf}, is the $\ell_\infty/\ell_1$ norm
\begin{align}
\| \vecz \|_{\infty,1}^\mathcal{H} = \max_{g \in \mathcal{H}}\| \vecz_g \|_{1} \,.
%
\end{align}
The orthogonal projection $\proj_{\| \cdot \|_{\infty,1}^\mathcal{H} \leq s}$ onto the $\ell_\infty/\ell_1$ ball is obtained by projecting separately each subvector $\vecz_g$ onto the $\ell_1$ ball in $\R^{\vert g \vert}$ \cite{Bach:2011ty}. This demands an efficient projection onto the $\ell_1$ norm ball. Due to the special structure of our groups in $\mathcal{H}$, i.e.~there are exactly $N$ non-overlapping groups, each of which consisting of three elements, a vectorised Matlab implementation of the method by Duchi et al.\ \cite{Duchi:2008vv} can be employed.
\begin{mydef} (Convex Conjugate)\\
Let $\theta^\star(\vecy) = \sup_{\vecx}(\vecy^T\vecx - \theta(\vecx))$ be the \emph{convex conjugate} of $\theta$.
\end{mydef}
%
The update of the dual variable $\vecv$ in algorithm~\ref{proxPhiCode} (see the line marked with $^\dagger$) is based on the update
\begin{align}
\vecv \leftarrow \vecv + \beta (\prox_{\gamma (\lambda_{\mathcal{G}} \|\cdot\|_2)^\star}(\vecv + \gamma \matE \vecx) - \vecv ) \,,\label{dualupdate}
\end{align}
presented in \cite{Combettes:2009wd,Combettes:2010uu}, where $(\cdot)^\star$ denotes the convex conjugate.
Let us introduce some tools first.
\begin{lemma} \label{moreau} (Extended Moreau Decomposition) \cite{Parikh:2013vb}\\
It holds that
\begin{align}
\forall \vecy: ~\vecy = \prox_{s\theta}(\vecy) + s\prox_{\theta^\star/s}(\vecy/s) \,.
\end{align}
\end{lemma}
\begin{lemma} (Conjugate of conjugate) \label{conjconj} \cite{Boyd:2009kl}\\
For closed convex $\theta$, it holds that $\theta^{\star\star} = \theta$.
\end{lemma}
\begin{corollary}\label{moreauCorol}
For convex and closed $\theta$, it holds that
\begin{align}
\forall \vecy: ~\vecy = \prox_{s\theta^\star}(\vecy) + s\prox_{\theta/s}(\vecy/s) \,.
\end{align}
\end{corollary}
\begin{proof}
Define $\theta' = \theta^\star$ and apply Lemma \ref{moreau} and Lemma \ref{conjconj} with $\theta'$ in place of $\theta$.
\end{proof}
Since for our choice of $\theta = \lambda_{\mathcal{G}} \|\cdot\|_2$, $\theta$ is a closed convex function, by Corollary \ref{moreauCorol}, one can write
\begin{align}
\prox_{\gamma (\lambda_{\mathcal{G}} \|\cdot\|_2)^\star}(\vecy) =
\vecy - \gamma \prox_{ (\lambda_{\mathcal{G}} / \gamma) \|\cdot\|_2}(\vecy/\gamma) \,.
\end{align}
With that, the right-hand side of eq.~\eqref{dualupdate} can be written as
\begin{align}
%
& \vecv + \beta (\vecv + \gamma \matE \vecx - \gamma\prox_{\lambda_{\mathcal{G}} / \gamma \|\cdot\|_2}(\frac{\vecv + \gamma \matE \vecx}{\gamma} ) - \vecv ) = \nonumber\\
% =& \vecv + \beta (\gamma \matE \vecx - \gamma\prox_{ \lambda_{\mathcal{G}} / \gamma \|\cdot\|_2}(\frac{\vecv + \gamma \matE \vecx}{\gamma} ) ) \nonumber\\
& \vecv + \beta\gamma (\matE \vecx - \prox_{\lambda_{\mathcal{G}} / \gamma \|\cdot\|_2}(\frac{\vecv + \gamma \matE \vecx}{\gamma} ) ) \,.
\end{align}
\subsection{Computational Complexity}
In practice it holds that $N \gg \max(M,K)$.
The gradient steps for the updates of $\matPhi$ and $\matA$ have both time complexity
$\mathcal{O}(N \max(M^2,K^2))$,
the proximal step for $\matA$ has complexity $\mathcal{O}(MK)$, and the proximal step for $\matPhi$ has complexity $\mathcal{O}(MN\vert\mathcal{E}\vert n_\text{it})$, where $n_\text{it}$ is the number of iterations for the dual forward-backward splitting procedure (we used a maximum of $n_\text{it}{=}20$). Thus, the total time complexity for one iteration in algorithm~\ref{bcdCode} is $\mathcal{O}(N \max(M^2,K^2) {+} MN \vert\mathcal{E}\vert n_\text{it})$. Since in practice the number of vertices $N$ and the number of edges in the graph $\vert\mathcal{E}\vert$ are larger than $M$ and $K$, the runtime complexity is dominated by the proximal step for $\matPhi$, which in our experiments takes around $60\%$ of the time for the brain shapes dataset ($N{=}1792,~M{=}96,~K{=}17~,\vert\mathcal{E}\vert{=}19182$), and uses more than $90\%$ of the time for the human body shapes dataset ($N{=}12500,~M{=}48,~K{=}1531,\vert\mathcal{E}\vert{=}99894$).
\subsection{Factor Splitting}
\noindent The \emph{factor splitting} procedure is presented in algorithm~\ref{factorSplitting}.
%
\begin{algorithm}\label{factorSplitting}
%
\scriptsize
\SetKwInput{Input}{Input}
\SetKwInput{Initialise}{Initialise}
\SetKwInput{Output}{Output}
\SetKwInput{Parameters}{Parameters}
%
\DontPrintSemicolon
%
\Input{factor $\vecphi \in \R^{N \times 3} \text{ where } \VEC(\vecphi) = \matPhi_m$, graph $\mathcal{G} = (\mathcal{V},\mathcal{E})$}
\Output{$J$ factors $\matPhi' \in \R^{3N \times J}$ with local support}
%
\Initialise{$\mathcal{E'} = \emptyset$, $\matPhi' = [\,]$}
\tcp{build activation graph $\mathcal{G'}$}
\ForEach{$(i,j) = e \in \mathcal{E}$}{
\If( \tcp*[h]{vertex $i$ or $j$ is active}){$\vecphi_{i,:} \neq \zerovec \vee \vecphi_{j,:} \neq \zerovec $ }{
$\mathcal{E'} = \mathcal{E'} \cup \{e\}$ \tcp{add edge}
}
}
$\mathcal{G'} = (\mathcal{V}, \mathcal{E'})$\\
\BlankLine
\tcp{find connected components \cite{Tarjan:1972hk}}
$\mathcal{C}$ = connectedComponents($\mathcal{G'}$) \tcp*{$\mathcal{C} \subset 2^{\mathcal{V}}$}
\BlankLine
%
\ForEach( \tcp*[h]{add new factor for $c \subset \mathcal{V}$}){$c \in \mathcal{C}$}{
$\vecphi' = \zerovec_{N \times 3}$\\
$\vecphi'_{c,:} = \vecphi_{c,:}$\\
$\matPhi' = [\matPhi',~ \VEC(\vecphi')]$
}
\caption{Factor splitting procedure.}
\end{algorithm}
\subsection{Convergence Plots}
For $100$ different initialisations (cf.~section \ref{expres}), the convergence plots are shown for both datasets in Fig.~\ref{convplot}. It can be seen that the main convergence occurs after around $10$ iterations. Moreover, for all $100$ initialisations the objective value are near-congruent.
\begin{figure}[h]%
\centerline{
\subfigure{\includetikz{brain_convergenceplot.tikz} }
}
\centerline{
\subfigure{\includetikz{SPRING_convergenceplot.tikz} }
}
% \vspace{-5mm}
\caption{Convergence plots for the brain shapes dataset (top) and the human body shapes dataset (bottom). The iterations are shown on the horizontal axis and the (relative) objective value in eq.~\eqref{optProb} is shown on the vertical axis. Note that in each subfigure all $100$ lines are near-congruent.}
%
\label{convplot}
\end{figure}
\subsection{Parameter Random Sampling}
%
The methods kPCA, SPCA, SSPCA, SPLOCS and our method require various parameters to be set. In order to find a good parametrisation we conducted random sampling over the parameter space, where we determined reasonable ranges for the parameters experimentally.
In Table \ref{tab:paramSample} the distributions and default values of the parameters for each method are given. $\mathcal{U}(a,b)$ is the uniform distribution with the open interval $(a,b)$ as support, $10^{\mathcal{U}(\cdot,\cdot)}$ is a distribution of the random variable $y = 10^x$, where $x \sim \mathcal{U}(\cdot,\cdot)$,
%
and $\bar{d}_{\max}$ is the largest distance between all pairs of vertices of the mean shape $\bar{X}$. %
%
\begin{table}[htbp]
%
\setlength{\tabcolsep}{1mm}
\centering
\caption{Assumed distributions of the parameters interpreted as random variables.}
\begin{tabular}{lp{6.9cm}}
\toprule
\textbf{Method} & \textbf{Parameter Distribution / Default Value}\\
\midrule
kPCA & $\beta \sim (\mathcal{U}(1,10))^{-1}$ \\
SPCA & ${\lambda \sim \frac{1}{3N}10^{\mathcal{U}(-4,-3)}}$ (see eq.~(2) in \cite{Jenatton:2009tq}) \\
SSPCA & ${\lambda \sim \frac{1}{N}10^{\mathcal{U}(-4,-3)}}$ (see eq.~(2) in \cite{Jenatton:2009tq}) \\
SPLOCS & {${\lambda \sim (3K){\cdot} 10^{\mathcal{U}(-4,-3)}};$
${d_{\min} \sim c {-} w};$
${d_{\max} \sim c {+} w}$}\\
& (see eq.~(6) in \cite{Neumann:2013gb}), where ${c \sim \mathcal{U}(0.1,\bar{d}_{\max} - 0.1)}\qquad$ and
${w \sim \mathcal{U}(0, \min(\vert c - 0.1\vert,\vert \bar{d}_{\max} -0.1 - c\vert))}$ \\
our & ${\beta \sim (\mathcal{U}(1,10))^{-1}};$
{${ \lambda = 64 {\cdot} \frac{3NK }{M}};$}
{${ \lambda_{\mathcal{G}} = \frac{1}{\sqrt{3 \vert \mathcal{E}\vert}}};$
${ \lambda_1 = \frac{1}{\sqrt{3N}}};$}
${ \lambda_2 = \frac{1}{\sqrt{3N}}};$
${ \lambda_\infty = 2 {\cdot} \frac{1}{\sqrt{N}}};$
${ \lambda_A = 10^{-4} {\cdot} \frac{1}{ \sqrt{K}}}$\\
\bottomrule
\end{tabular}%
\vspace{-3mm}
\label{tab:paramSample}%
\end{table}%
%
For each of the $n_r$ random samples (we set $n_r = 500$ for the brain shapes dataset, and $n_r = 50$ for the human body shapes, due to the large size of the dataset) we compute the $8$ scores described in section \ref{quanmeas} and store them in the score matrix $\matS \in \R^{n_r \times 8}$.
After (linearly) mapping the elements of each $n_r$-dimensional column vector in $\matS$ onto the interval $[0,1]$, the best parametrisation is determined by finding the index of the smallest value of the vector $\matS \onevec_{8} \in \R^{n_r}$. %
For the lambda parameters of the proposed method we identified default values that we used for the evaluation of both datasets. Moreover, a normalisation of the parameters is conducted for all methods. For kPCA, SPCA, SSPCA and our method the random sampling was conducted only for a single parameter, whereas for the SPLOCS method three parameters had to be set, two of them related to the size of the local support region.
\end{document}
\begin{thebibliography}{10}\itemsep=-1pt
\bibitem{Bach:2011ty}
F.~Bach, R.~Jenatton, J.~Mairal, and G.~Obozinski.
\newblock {Convex optimization with sparsity-inducing norms}.
\newblock {\em Optimization for Machine Learning}, pages 19--53, 2011.
\bibitem{Bach:2008wn}
F.~Bach, J.~Mairal, and J.~Ponce.
\newblock {Convex sparse matrix factorizations}.
\newblock {\em arXiv.org}, 2008.
\bibitem{Bernard:2015wx}
F.~Bernard, L.~Salamanca, J.~Thunberg, F.~Hertel, J.~Goncalves, and P.~Gemmar.
\newblock {Shape-aware 3D Interpolation using Statistical Shape Models}.
\newblock In {\em Proceedings of Shape Symposium}, Delemont, Sept. 2015.
\bibitem{bernard2016arXiv}
F.~{Bernard}, L.~{Salamanca}, J.~{Thunberg}, A.~{Tack}, D.~{Jentsch},
H.~{Lamecker}, S.~{Zachow}, F.~{Hertel}, J.~{Goncalves}, and P.~{Gemmar}.
\newblock {Shape-aware Surface Reconstruction from Sparse Data}.
\newblock {\em arXiv.org}, Feb. 2016.
\bibitem{Bernard:2016tv}
F.~Bernard, N.~Vlassis, P.~Gemmar, A.~Husch, J.~Thunberg, J.~Goncalves, and
F.~Hertel.
\newblock {Fast correspondences for statistical shape models of brain
structures}.
\newblock In {\em SPIE Medical Imaging}, San Diego, 2016.
\bibitem{Bishop:2006ug}
C.~M. Bishop.
\newblock {\em {Pattern Recognition and Machine Learning (Information Science
and Statistics)}}.
\newblock Springer-Verlag New York, Inc., Secaucus, NJ, USA, 2006.
\bibitem{Boscaini:2015tl}
D.~Boscaini, D.~Eynard, D.~Kourounis, and M.~M. Bronstein.
\newblock {Shape-‐from‐-Operator: Recovering Shapes from Intrinsic
Operators}.
\newblock In {\em Computer Graphics Forum}, pages 265--274. Wiley Online
Library, 2015.
\bibitem{Boyd:2009kl}
S.~Boyd and L.~Vandenberghe.
\newblock {\em {Convex Optimization}}.
\newblock Cambridge University Press, 2009.
\bibitem{Burer:2005jb}
S.~Burer and R.~D. Monteiro.
\newblock {Local minima and convergence in low-rank semidefinite programming}.
\newblock {\em Mathematical Programming}, 103(3):427--444, 2005.
\bibitem{Candes:2011vf}
E.~J. Cand{\`e}s, X.~Li, Y.~Ma, and J.~Wright.
\newblock {Robust principal component analysis?}
\newblock {\em Journal of the ACM (JACM)}, 58(3):11:1--11:37, 2011.
\bibitem{Combettes:2010uu}
P.~L. Combettes, D.~D{\~u}ng, and B.~C. V{\~u}.
\newblock {Dualization of signal recovery problems}.
\newblock {\em Set-Valued and Variational Analysis}, 18(3-4):373--404, 2010.
\bibitem{Combettes:2009wd}
P.~L. Combettes and J.-C. Pesquet.
\newblock {Proximal splitting methods in signal processing}.
\newblock In {\em Fixed-point algorithms for inverse problems in science and
engineering}, pages 185--212. Springer, 2011.
\bibitem{Cootes:1992uw}
T.~F. Cootes and C.~J. Taylor.
\newblock {Active Shape Models - Smart Snakes}.
\newblock In {\em In British Machine Vision Conference}, pages 266--275.
Springer-Verlag, 1992.
\bibitem{Cootes:1995uz}
T.~F. Cootes and C.~J. Taylor.
\newblock {Combining point distribution models with shape models based on
finite element analysis}.
\newblock {\em Image and Vision Computing}, 13(5):403--409, 1995.
\bibitem{Duchi:2008vv}
J.~Duchi, S.~Shalev-Shwartz, Y.~Singer, and T.~Chandra.
\newblock {Efficient projections onto the l1-ball for learning in high
dimensions}.
\newblock In {\em Proceedings of the 25th international conference on Machine
learning}, pages 272--279. ACM, 2008.
\bibitem{Haeffele:2014wj}
B.~Haeffele, E.~Young, and R.~Vidal.
\newblock {Structured low-rank matrix factorization: Optimality, algorithm, and
applications to image processing}.
\newblock In {\em Proceedings of the 31st International Conference on Machine
Learning (ICML-14)}, pages 2007--2015, 2014.
\bibitem{Harman:1976vh}
H.~H. Harman.
\newblock {\em {Modern factor analysis}}.
\newblock University of Chicago Press, 1976.
\bibitem{Hein:2010wf}
M.~Hein and T.~B{\"u}hler.
\newblock {An inverse power method for nonlinear eigenproblems with
applications in 1-spectral clustering and sparse PCA}.
\newblock In {\em Advances in Neural Information Processing Systems 23}, pages
847--855, 2010.
\bibitem{Hyvarinen:2001vj}
A.~Hyv{\"a}rinen, J.~Karhunen, and E.~Oja.
\newblock {\em {Independent Component Analysis}}.
\newblock John Wiley {\&} Sons, Apr. 2001.
\bibitem{Jenatton:2009tq}
R.~Jenatton, G.~Obozinski, and F.~Bach.
\newblock {Structured sparse principal component analysis}.
\newblock {\em The Journal of Machine Learning Research}, (AISTATS Proceedings
9), 2010.
\bibitem{Jiang:2013wd}
B.~Jiang, C.~Ding, B.~Luo, and J.~Tang.
\newblock {Graph-Laplacian PCA: Closed-form solution and robustness}.
\newblock In {\em Computer Vision and Pattern Recognition (CVPR)}, pages
3492--3498, 2013.
\bibitem{Kovnatsky:2014ti}
A.~Kovnatsky, M.~M. Bronstein, X.~Bresson, and P.~Vandergheynst.
\newblock {Functional correspondence by matrix completion}.
\newblock In {\em Computer Vision and Pattern Recognition (CVPR)}, pages
905--914, 2015.
\bibitem{Kovnatsky:2015tm}
A.~Kovnatsky, K.~Glashoff, and M.~M. Bronstein.
\newblock {MADMM: a generic algorithm for non-smooth optimization on
manifolds}.
\newblock {\em arXiv.org}, May 2015.
\bibitem{Last:2011wk}
C.~Last, S.~Winkelbach, F.~M. Wahl, K.~W. Eichhorn, and F.~Bootz.
\newblock {A locally deformable statistical shape model}.
\newblock In {\em Machine Learning in Medical Imaging}, pages 51--58. Springer,
2011.
\bibitem{Meyer:2007wg}
M.~Meyer and J.~Anderson.
\newblock {Key point subspace acceleration and soft caching}.
\newblock {\em ACM Transactions on Graphics (TOG)}, 26(3):74, 2007.
\bibitem{Neumann:2014uy}
T.~Neumann, K.~Varanasi, C.~Theobalt, M.~Magnor, and M.~Wacker.
\newblock {Compressed manifold modes for mesh processing}.
\newblock In {\em Computer Graphics Forum}, pages 35--44. Wiley Online Library,
2014.
\bibitem{Neumann:2013gb}
T.~Neumann, K.~Varanasi, S.~Wenger, M.~Wacker, M.~Magnor, and C.~Theobalt.
\newblock {Sparse localized deformation components}.
\newblock {\em ACM Transactions on Graphics (TOG)}, 32(6):179, 2013.
\bibitem{Parikh:2013vb}
N.~Parikh and S.~Boyd.
\newblock {Proximal algorithms}.
\newblock {\em Foundations and Trends in Optimization}, 2013.
\bibitem{Recht:2010ht}
B.~Recht, M.~Fazel, and P.~A. Parrilo.
\newblock {Guaranteed minimum-rank solutions of linear matrix equations via
nuclear norm minimization}.
\newblock {\em SIAM Review}, 52(3):471--501, 2010.
\bibitem{Rustamov:2013tw}
R.~M. Rustamov, M.~Ovsjanikov, O.~Azencot, M.~Ben-Chen, F.~Chazal, and
L.~Guibas.
\newblock {Map-based exploration of intrinsic shape differences and
variability}.
\newblock {\em ACM Transactions on Graphics (TOG)}, 32(4):72, 2013.
\bibitem{Shahid:2015vb}
N.~Shahid, V.~Kalofolias, X.~Bresson, M.~Bronstein, and P.~Vandergheynst.
\newblock {Robust Principal Component Analysis on Graphs}.
\newblock In {\em International Conference on Computer Vision (ICCV)}, 2015.
\bibitem{Sjostrand:2007hb}
K.~Sjostrand, E.~Rostrup, C.~Ryberg, R.~Larsen, C.~Studholme, H.~Baezner,
J.~Ferro, F.~Fazekas, L.~Pantoni, D.~Inzitari, and G.~Waldemar.
\newblock {Sparse Decomposition and Modeling of Anatomical Shape Variation}.
\newblock {\em IEEE Transactions on Medical Imaging}, 26(12):1625--1635, 2007.
\bibitem{Stegmann:2006ja}
M.~B. Stegmann, K.~Sj{\"o}strand, and R.~Larsen.
\newblock {Sparse modeling of landmark and texture variability using the
orthomax criterion}.
\newblock In {\em SPIE Medical Imaging}, pages 61441G--61441G. SPIE, 2006.
\bibitem{Suinesiaputra:2004jh}
A.~Suinesiaputra, A.~F. Frangi, M.~{\"U}z{\"u}mc{\"u}, J.~H. Reiber, and B.~P.
Lelieveldt.
\newblock {Extraction of myocardial contractility patterns from short-axes MR
images using independent component analysis}.
\newblock In {\em Computer Vision and Mathematical Methods in Medical and
Biomedical Image Analysis}, pages 75--86. Springer, 2004.
\bibitem{Tarjan:1972hk}
R.~Tarjan.
\newblock {Depth-first search and linear graph algorithms}.
\newblock {\em SIAM Journal on Computing}, 1(2):146--160, 1972.
\bibitem{Tena:2011ts}
J.~R. Tena, F.~De~la Torre, and I.~Matthews.
\newblock {Interactive region-based linear 3d face models}.
\newblock {\em ACM Transactions on Graphics (TOG)}, 30(4):76, July 2011.
\bibitem{Uzumcu:2003gz}
M.~{\"U}z{\"u}mc{\"u}, A.~F. Frangi, M.~Sonka, J.~H.~C. Reiber, and B.~P.~F.
Lelieveldt.
\newblock {ICA vs. PCA Active Appearance Models: Application to Cardiac MR
Segmentation.}
\newblock {\em MICCAI}, pages 451--458, 2003.
\bibitem{Wang:1998bw}
Y.~Wang and L.~H. Staib.
\newblock {Boundary finding with correspondence using statistical shape
models}.
\newblock In {\em Computer Vision and Pattern Recognition (CVPR)}, pages
338--345, 1998.
\bibitem{Wang:2000iw}
Y.~Wang and L.~H. Staib.
\newblock {Boundary finding with prior shape and smoothness models}.
\newblock {\em IEEE Transactions on Pattern Analysis and Machine Intelligence},
22(7):738--743, 2000.
\bibitem{Xu:2013vk}
Y.~Xu and W.~Yin.
\newblock {A block coordinate descent method for regularized multiconvex
optimization with applications to nonnegative tensor factorization and
completion}.
\newblock {\em SIAM Journal on Imaging Sciences}, 6(3):1758--1789, 2013.
\bibitem{Yang:2014tj}
Y.~Yang, Y.~Yu, Y.~Zhou, S.~Du, J.~Davis, and R.~Yang.
\newblock {Semantic Parametric Reshaping of Human Body Models}.
\newblock In {\em Proceedings of the 2014 Second International Conference on 3D
Vision-Volume 02}, pages 41--48. IEEE Computer Society, 2014.
\bibitem{Zewail:2007ta}
R.~Zewail, A.~Elsafi, and N.~Durdle.
\newblock {Wavelet-Based Independent Component Analysis For Statistical Shape
Modeling}.
\newblock In {\em Canadian Conference on Electrical and Computer Engineering},
pages 1325--1328. IEEE, 2007.
\bibitem{Zou:2006tl}
H.~Zou, T.~Hastie, and R.~Tibshirani.
\newblock {Sparse principal component analysis}.
\newblock {\em Journal of Computational and Graphical Statistics},
15(2):265--286, 2006.
\end{thebibliography}