Multiple Reflection Symmetry Detection via Linear-Directional Kernel Density Estimation

Symmetry is an important composition feature by investigating similar sides inside an image plane. It has a crucial effect to recognize man-made or nature objects within the universe. Recent symmetry detection approaches used a smoothing kernel over different voting maps in the polar coordinate system to detect symmetry peaks, which split the regions of symmetry axis candidates in inefficient way. We propose a reliable voting representation based on weighted linear-directional kernel density estimation, to detect multiple symmetries over challenging real-world and synthetic images. Experimental evaluation on two public datasets demonstrates the superior performance of the proposed algorithm to detect global symmetry axes respect to the major image shapes.


Introduction
Reflection symmetry is a fundamental principle of visual perception to feel the equally distributed weights within foreground objects inside an image. These weights are inspected respect to textural complexity of their shapes, in such non-identical manner to preserve a well-balanced composition between similar objects and their surrounding background [16,13,39]. Detection of reflection symmetry has a principal intermediate-level role in recent computer vision applications [41,31,38,1]. Liu et al. [19] described the global symmetry as top-tier visual features, which are distributed uniformly across the image sides and contributed to define an uppermost similarity behavior. This paper focuses on detecting multiple bilateral symmetry axes by exploring the geometrical correlation between regions on a global scale.
The baseline algorithm was proposed in 2006 by Loy and Eklundh [21]. They analyzed the bilateral symmetry from image features' constellation by introducing the general scheme: (1) detection of local feature points (i.e. SIFT), associated with local geometrical properties (location, orientation, scale) and arXiv:1704.06392v1 [cs.CV] 21 Apr 2017 descriptor vectors. (2) pairwise matching and evaluation of a local symmetry magnitude of their descriptors, to generate symmetry candidates. (3) accumulation of their symmetry magnitude in a Hough-like voting space parametrized with orientation and displacement, to identify the dominant reflection axes inside an image. The first survey of symmetry detection algorithms was introduced by the computer vision group of Pennsylvania State University in 2008 [28]. The same group conducted symmetry detection challenges in 2011 [32] and 2013 [18], where the baseline algorithm [21] still outperformed the participated approaches [26,17,23,30]. Other keypoint-based algorithms [7,5] also proposed feature refinement techniques for better results. Edge/contour-based features [24,9,37,3,8,4,11] are modernly used instead of the intensity-based, due to saliency properties in detecting well-defined symmetric structures inside an object. In both approaches, a limited number of feature points are detected in the image, axis candidates are randomly sampled across the voting space. These sparse symmetry candidates further need to be grouped through a smoothing kernel to define relevant monoor multi-axis hypothesis. Our idea is to formulate the voting problem as a density estimation problem, by computing the probability of detecting symmetry axis at every position and orientation inside the image plane.
Kernel density estimation is one of the most popular techniques in nonparametric statistics. Density estimates are controlled by a smoothing bandwidth and a weighting kernel function. Density estimates with linear kernels have been introduced in 1954 [2], and then have been adapted to deal with directional data since the mid 1980s [15]. Many computer vision applications used kernel density estimation for linear data [12,25,40,10,34,36,33,20], and fewer recently used it for directional data [35,27]. Garcia-Portugues et al. [14] derived the general principle of joint kernel density estimator for linear-directional data.
Our contribution is twofold. First we propose a weighted joint density estimator to handle both orientation and displacement information. Second, we introduce a robust linear-directional kernel-based voting representation for reflection symmetry detection. This approach is evaluated for multiple symmetry detection using two public datasets. The remaining sections of this paper are organized as follows. Section 2 describes the proposed algorithm. Sections 3 and 4 present the experimental details and results on two public datasets. Finally, the conclusion is given in section 5.

Algorithm Details
Given an image, our algorithm focuses globally to detect all symmetry axes using a dense and regular estimation of linear-directional density, as briefly shown in figure 1. First, we extract wavelet-based features with different scales, accompanied with edge and textural characteristics (for better display, only features with high magnitude are displayed over the gray-scale version of the input image). Second, we triangulate each feature pair at each scale with respect to the origin of the feature space, in order to define symmetrical weights in the polar coordinate system. Third, we formulate a voting representation based on weighted pairs via linear-directional kernel density estimation. Finally, the global symmetry axes are well-chosen by searching for maximum peaks, and spatially defined by the convex hull of the voting features. . Best seen on screen (zoom-in for details).

Feature Extraction and Normalization
Upon the application of Morlet wavelet over an image with multiple scales, feature points {p i = [p i x , p i y ] T , i = 1 . . . P } are sampled, as detailed in [11], along a regular grid with respect to image size (width W and height H), along side with their local edge components (scale σ i , maximum wavelet response J i and direction τ i over all orientations) plus neighboring textural histograms h i . These points are normalized with keeping aspect ratio as following:

Pairwise Symmetry Triangulation
We first define a set of feature pairs {q n = (p i ,p j ) | n = 1, . . . , N } such that i = j and σ i = σ j . Then, we perform a triangulation process (as illustrated in figure 2) with respect to the feature origin, producing the symmetry candidate axis as the bisector of the pair segment. The candiate axis is parametrized by and has a symmetry weight ω n [9,11] defined as follows: where m n ∈ [0, 1] is a semi-dense edge magnitude, c n ∈ [0, 1] is a mirror symmetry coefficient based on the local edge orientation of points of the pair, d n ∈ [0, 1] is a measure based on histograms h i and h j , representing the similarity between the local texture around the feature points, and ||.|| 1 is L 1 norm.

Weighted Linear-Directional Kernel Density Estimation
One dimensional linear variable ρ represents displacement part of a candidate axis, assuming ρ 1 , . . . , ρ N samples of ρ with size N . Let µ describes two dimensional directional variable (circular data corresponds to angle θ, representing orientation part of a candidate axis, see figure 2), assuming µ 1 , . . . , µ N samples of µ with the same size of ρ. Inspired from [29], the linear kernel density estimator f l (.) is defined as where G(.) is a Gaussian kernel with bandwidth parameter g. Inspired from [15], the directional kernel density estimator f d (.) is defined as: L(x; k) = e kx , C(k) = 1 2πS(0, k) , where L(.) is a von-Mises Fisher kernel [22] with concentration parameter k, and normalization constant C(k). S(.) is the modified Bessel function of the first kind. y is remarked as directional unit-vector of angle θ, such that ||y|| = 1.
The multiple symmetry peaks inside the voting representationf l,d (.) are identified through finding non-interleaved extreme spots via a standard non-maximal suppression technique [6]. The spatial extent of each peak representing a symmetry axis is determined by the convex hull of the voting pair associated with the peak [21]. Figures [3a-3d] present an example of multiple symmetry detection, using 1D and 2D kernel-based voting maps. Three vertical symmetry axes are shown in the weighted linear kernel densityf l (x; g) (figure 3b). Two major directional axes appear in the weighted directional kernel densityf d (y; k) at angles θ = 90 • , 180 • (figure 3c). All global symmetry axes are clearly recognized through the combination version of the previous weighted densitiesf l,d (x, y; g, k) (figure 3d). To obtain such representation, as θ originally belongs to [0, π), each angle value is multiplied by 2 in order to obtain an appropriate periodicity with the directional kernel.

Implementation and Evaluation Details
We compare our reflection symmetry detection approach against three different methods (Loy2006 [21], Cicconet2014 [9], and Elawady2016 [11]). We executed their source codes with default parameter values, assigned by the authors for stable performance. For our approach, we empirically set the linear-kernel bandwidth parameter g to 0.03, and directional-kernel concentration parameter k to 40. Two public datasets are used to represent multiple reflection symmetry detection results: (1) PSU dataset: Liu's vision group proposed a symmetry groundtruth for Flickr images (# images = 142, # symmetries = 479) in ECCV2010 1 , CVPR2011 2 and CVPR2013 3 . Non-duplicative images are com- Quantitative comparisons are performed as proposed in [32,18], where a detected symmetry axis considered as a true positive (TP): 1) The angle between the detected symmetry axis and its corresponding groundtruth symmetry axis is less than 10 degree; 2) The distance between the centers of detected and same groundtruth axes is less than 20% minimum length of the axes. Multiple detections can match to the same ground-truth axis, but not vice versa. The overall performance of algorithms are defined through the precision and recall rates:  [11]. Loy2006 and Ela2016 were reported to have the best performed results for the single symmetry detection in keypoint-based and edge-based methods respectively [11]. Figure 4 presents precision-recall curves for the multiple symmetry datasets (PSUm [32,18], and NYm [8]), to compare the proposed method to three prior algorithms (Loy2006 [21], Cic2014 [9], and Ela2016 [11]). Cic2014 [9] has the lowest performance for precision and recall in both curves. In figure 4a, Loy2006 [21] has better precision than Ela2016 [11] over corresponding low recall, while the precision of the proposed method (aka Our2017) outperforms all these methods in most sections of the curve. In figure 4b, Ela2016 [11] has a superior precision performance over Loy2006 [21] under the recall rate of 40%, meanwhile the proposed method has the best performance along both precision and recall rates. Additionally, we also compute the F 1 score to define the harmonic mean between precision and recall rates, and used the maximum F 1 score to qualify the overall performance of different detection algorithms. The values of maximum F 1 score are presented in figure 4 to express the precision-recall curve for each method in a single global measure. Figure 5 shows precision and recall rates where the maximum F 1 scores are selected among the corresponding curves in figure 4. The proposed method achieved the best performance among all results. Figure 6 presents some experimental results for multiple symmetry detection from two publicly available datasets (PSUm [32,18], NYm [8]). Groundtruth of   [32,18] and (b)NYm [8] datasets to show the superior performance of our method "Our2017" against the three prior algorithms ("Loy2006" [21], "Cic2014" [9], "Ela2016" [11]). The maximum F1 scores are qualitatively presented as square symbols along the curves, and quantitatively indicated between parentheses inside the top-right legends. Best seen on screen. Fig. 5: Comparison of maximum F1 score and its equivalent precision and recall rates among two different dataset (PSUm [32,18], NYm [8]) for our method "Our2017" against the baseline algorithm "Loy2006" [21] and two of the recent algorithms "Cic2014" [9] and "Ela2016" [11].  [32,18] (1st and 2nd columns) and NYm [8] (3rd column) datasets with groundtruth in 1st row (a,b,c). our method in 2nd row (d,e,f) produces better results among El2016 [11] in 3rd row (g,h,i) and Loy2006 [21] in 4th row (j,k,l). For each algorithm, the top five symmetry results is presented in such order: red, yellow, green, blue, and magenta. Each symmetry axis is shown in a straight line with squared endpoints. Best seen on screen.
the first example (figure 6a) shows four symmetries (vertical, horizontal, and diagonals) of a flower within natural background view. The proposed method (figure 6d) detects correctly vertical and horizontal axes, while Loy2006 [21] (figure 6j) fails to find enough feature points resulting two partial (diagonal and vertical) axes, and Ela2016 [11] (figure 6g) breakdown the vertical axis to represent the top five detections. Second and third examples (figures 6b, 6c) display three in-between symmetries of a thinned metal object and five symmetries expressing arms' details of a starfish respectively over variant texture-less surfaces. These symmetries have been efficiently detected by the proposed method (figures 6e, 6f) over Ela2016 [11] (figures 6h, 6i). However, Loy2006 [21] (figures 6k, 6l) concentrates on local symmetries describing the inner details of the centric objects.

Conclusion
This paper proposes a linear-directional kernel-based voting scheme within unified feature representation, in order to support a reliable detection framework for global multiple symmetries. Our approach solves the drawbacks of the previous symmetry detection approaches, by estimating the fixed-sized kernel density with efficient bandwidth parameters, and identifying correctly the symmetrical regions at a global scale. Quantitative and qualitative evaluations present the state-of-the-art performance of our proposed framework among public datasets. This work can be extended to refine the accuracy of the symmetry peaks and the selection of corresponding voting features, using a continuous maxima-seeking technique. The future work is introducing an entropy-based measure, to exploit the global strength of various symmetry axes inside an image.