# Active Contours in the Complex Domain for Salient Object Detection
## 3 Proposed Method
### Complex Domain Transformation  
The active contour model displays unstable behavior in the energy minimization problem and it suffers from improper initialization. Pixelwise salience detection provides a solution for initialization and further foreground identification. The conventional method of the active contour model has limitations in the case of noise. We propose a complex domain algorithm (ACCD_SOD) to resolve the problem in order to obtain clear and accurate salient objects. Our proposed algorithm for saliency operates on the complex domain. We combine the complex domain with the Schrodinger equation [44] to develop a fundamental solution for the linear case [45,46]. The complex domain has a general property of forward and inverse diffusion [47]. The complex domain contains salience cues and gives favorable results for cyclic objects, which makes it suitable for active contours [48]. The complex domain consists of two-two signals, real and imaginary. We transform the image to the complex domain by multiplying the input image by a complex number \(i\) (iota).  
Let \(\Omega\) define the image domain and a complex function \(f\colon\Omega\to C\), where \(C\) gives the complex value. The special symbol iota (\(i\)) stands for the unit of the imaginary part and can be represented as \(i=\sqrt{-1}\). It has the property that \(i^{2}=-1\). The standard form of a complex number is \(a+ib,a,b\in R\). Complex numbers are the extension of real numbers. If \(b=0\), it is a real number, and, if \(a=0\), it is a pure imaginary number. We convert a real image to the complex domain via  
\[f(x,y)=i\times I(x,y) \tag{16}\]  
The transformations between the complex function and the original real image are summarized, as follows:  
\[i\times f(x,y)=-I(x,y)\to i^{2}\times I(x,y) \tag{17}\]  
\[f(x,y)=i\times f(x,y)\to i^{n}\times f(x,y) \tag{18}\]  
where \(n\) is an odd number \(n=1,3,5,\ldots\ldots\ldots\ldots\).  
Let a value \(x\in Z\), where \(Z\) is the integer domain. The function \(f=\sqrt[n]{i\times x}\) gives a complex value. Its output complex value preserves the characteristics that  
\[f:\left\{\begin{array}{l}f(Z^{-})\to C,\qquad\quad\mbox{ \emph{grow}}\to\mbox{ \emph{real}}\quad\mbox{\emph{value}},\\ f(Z^{+})\to C,\quad\mbox{\emph{decrease}}\to\mbox{\emph{imaginary}}\quad \mbox{\emph{value}}.\end{array}\right. \tag{19}\]  
If the number n increases to infinity, then the value has the following limit:  
\[\lim_{n\to\infty}\sqrt[n]{i\times Z}=\pm 1 \tag{20}\]  
Figure 2: Illustration of the architecture of our ACCD_SOD algorithm.  
We use the geometrical representation in Figure 3 to explain the limits. Multiplication by \(+1\) is alternately equal to rotation by 360 degrees, and it will maintain the complex value at the same position. When we multiply a complex value by \(-1\), it is equivalent to rotation by 180 degrees and, if we multiply by \(-1\) two times, it is equal to \(+1\). Multiplication by \(i\) is equivalent to 90-degree rotation. If we multiply by \(\sqrt{i}\), this can also be expressed as a rotation of 45 degrees. Multiplying by \(\sqrt{i}\) eight times is equal to a 360-degrees rotation. The value on the imaginary unit circle of 45 degrees gives the value of \(\sqrt{i}\). In general, multiplication by \(\sqrt[i]{i}\) is the same as a \(90/n\)-degree rotation.