## 3 Materials and Methods
### Vulnerability and Storage Efficiency  
In this paper, we assume the mobile users' trajectory on a real map with small velocities; thus, we use the Hough-X transform, since an object's motion is mapped to the \((U,a)\) dual point. To answer a \(k\)-NN query, the following steps are performed:  
1. Decompose the \(k\)-NN query into \(1D\) queries for the \((t,x)\) and \((t,y)\) projection. 2. For each projection, get the dual \(k\)-NN query by using a Hough-X transform. 3. Return the anonymity set, which contains the trajectories IDS that satisfy the dual \(k\)-NN query in each projection. In following, the analysis is focused on the robustness estimation of the proposed approach based on Hough-X. Specifically, the ensuing steps are followed:  
1. Split the initial trajectory into a number of linear sub-trajectories, each of which consists of the same number of \(M\) spatial points. 2. Apply Hough-X in each part. Suppose that \(M\) is the number of points of the \(1D\) trajectory, which a dual point represents, and \(D\) is the number of dual points, which describe the \(1D\) trajectory projection \((t,x)\) or \((t,y)\) in dual space. Therefore, the whole trajectory has a length equal to \(DM\) spatial points, for which \(M\gg D\) should hold. In the following, we camouflage a mobile user who keeps track of a linear trajectory \(x(t)\) or \(y(t)\) or its corresponding dual point with the \(k\) nearest neighboring dual points, which is very probable to remain the same in the next timestamp. Actually, while users move onto the linear sub-trajectory, which relates to the same dual point, the \(k\)-NN set will remain intact. Therefore, for as long as it happens, we can claim that the \(k\)-anonymity holds. Indeed, the privacy preservation is reinforced by a factor \(M\) that formulates the so-called vulnerability level to \(\frac{1}{KM}\). We recall the spatial data security metric that we have already defined in [9] for the quantification and measure of the robustness of our methods. Again, the vulnerability remains equal to \(\frac{1}{k}\) in dual point space. Nonetheless, the definition of vulnerability in the initial dataset is measured as the following. Since the points inside a sub-trajectory are protected by the same dual points, it is obvious that their vulnerability is considerably reduced to \(\frac{1}{Mk}\); this aspect entails that with a probability equal to \(\frac{1}{Mk}\), an intruder can distinguish the identity of a mobile user. The same holds for all sub-trajectories. Hence, the vulnerability in each projection is defined as:  
\[V_{x} =\frac{1}{Mk} \tag{1}\] \[V_{y} =\frac{1}{Mk}\]  
where \(V_{x}\) and \(V_{y}\) is the vulnerability measure based on Hough-X in projection \((t,x)\) and \((t,y)\), accordingly. Next, the vulnerability in each projection is combined, and the total vulnerability is written as in the following equation:  
\[V_{total}=V_{x}V_{y}\binom{2}{M}=\frac{1}{(Mk)^{2}}\binom{2}{M}, \tag{2}\]  
where \(\binom{2}{M}\) represents all combinations of \(M\) points that correspond to 2 dual points of the initial trajectory. Several trajectory compression approaches have been proposed aiming at reducing the trajectory's size. An initial discrimination classifies the compression methods either as offline (after trajectory generation) or online (instantly as objects move). The data compression constitutes a method that decreases the size of the data in order to limit the memory space and ameliorate the efficiency of storage, processing, and/or transmission without loss of information. Various trajectory compression algorithms exist in literature that try to balance the tradeoff between accuracy and storage size. We refer to some major ones--namely, distance-based, velocity-based, semantic, similarity-based, and priority queue [4]. The proposed Hough-X based approach achieves trajectory compression suitable for either a single or multiple trajectory set. Without loss of information, Hough-X maps each linear sub-trajectory spatial point to its representative dual point.