paper the following general notations are used. ${\ensuremath{\mathbb{N}}}$, ${\ensuremath{\mathbb{R}}}$ and ${\ensuremath{\mathbb{C}}}$ denote the integer, real and complex domains, respectively. $\|A\|$ denotes the norm of matrix $A$, where no subscript means that any norm can be used. $\|A\|_F$, $\|A\|_p$, $\|A\|_\infty$, $\|A\|_2$ and $\|A\|_1$ represent Frobenius-norm ($F-$norm), Schatten $p-$norm, $\infty-$norm, 2-norm and 1-norm of matrix $A$. The consistent norm of matrix $A$ is denoted by $\|A\|_c$. The determinant of matrix $A$ is denoted by $\mbox{det}(A)$. The optimal value of the parameter $a$ is denoted by $a^*$ (a superscript asterisk). It should not be confused with the convolution operator $*$, which is used in this paper as $A*B$. Note that there are several other specific notations also defined in the text, which will be introduced when they appear.

Two-Dimensional Multi-Scale Phase Congruency {#sec:2dmspc}
============================================

In this section, fundamental concepts of the 2D-MSPC are briefly described. Interested readers are directed to [@Kovesi1996], [@Kovesi1999] and [@Kovesi2003] for details. The 2D-MSPC is a combination of one-dimensional PC calculated over several orientations. The 2D-MSPC based on the measurement of local energy is given by $$\begin{aligned}
\label{eq:pc}
& \mbox{PC}(x)= \frac{ \sum_{o}  W_o(x) \left \lfloor  E_o(x)-T_o \right \rfloor}{ \sum_{o} \sum_{n}A_{no}(x) + \varepsilon}
\\ \nonumber & o=1,2,\ldots, O
\\ \nonumber 