# Virtual Gymnasium: Personalized Weight Perception Interface in Lifting Virtual Objects
## 4 Force Gauge Circular Graphical User Interface
### Movement Trajectory  
The proposed FGCGUI also visualizes the movement trajectory to provide proper weight perception and exercise effects (Figure 4). Because the lifting curl is a repetitive exercise that visualizes a circular arc using an elbow joint fixed as a standard joint, the proposed system generates a customized movement trajectory according to sampled data with the density-based spatial clustering of applications with noise (DBSCAN) clustering algorithm, based on the length of the arm of the user [26]. The proposed system samples the positions of the hands while the user lifts a virtual object and creates a customized movement trajectory based on the sampled positions. However, the sampled positions may not be accurate owing to recognition errors and changes in each input. The proposed system generates a movement trajectory as non-uniform rational B-spline (NURBS) curves using [PERSON]'s algorithm [27] (Figure 4). If the sampled positions are \(\text{d}_{i}\), then the total number of sampled positions can be set to n, sampled points (de Boor points) are \(\text{p}_{i}\), knots which produce a vector that defines the domain of the curve can be set to \(\text{u}_{i}\), B-splines function of degree n is set to \(\text{N}_{i}^{\text{n}}\)(u) as described in Equation (1). Linear interpolation can be performed sequentially on \(\text{d}_{i}\) n times for each section between the positions. Because the linearly interpolated values should be calculated using the curved movement trajectory, we calculated them as a B-spline curve in a 3D space. The result of this calculation is the sum of the B-spline functions, as described in Equation (2). Figure 4 shows the generation of the movement trajectory of the curve using [PERSON]'s algorithm when there are four sampled positions from p0 to p3, the outermost lines connecting them linearly, and their knots being from u = 0 to u = 3. Because the sampled positions become the outermost line and the curve  
Figure 3: Exercise process. (**A**) Starts current dumbbell curl where the elbow joint is fixed as a standard joint. (**B**) A user lifts a dumbbell, and the movement trajectory is represented as a circular arc. is created accordingly, the proposed system determines the sampled positions located at the outermost part of the recognized hand of the user. \[ \begin{split}&\text{r}(\text{u})=\text{ p}_{0}\text{N}_{0}^{3}(\text{u})+\text{ p}_{1}\text{N}_{1}^{3}(\text{u})+\text{ p}_{2}\text{N}_{2}^{3}(\text{u})+\cdots+\text{ p}_{n}\text{N}_{n}^{3}(\text{u})\\ &\text{r}(\text{u})\text{ is the function of B-spline curve with a given knots}\\ &\text{p}_{\text{i}}:\text{sampled points(de Boor Points), i =0,\ 1,\ \ldots,\ \text{D}-1}\\ &\text{N}_{\text{i}}^{\text{n}}(\text{u})\ :\text{B-splines basic function of degree n}(=3)\end{split}  \tag{1}\]  
\(\text{u}_{\text{j}}:\)knots produce a vector that defines the domain of the curve,  
\[ \begin{split}&\text{j}=0,\ 1,\ \ldots,\ \text{K}-1,\text{ where K}=\text{D}+\text{n}+1\\ &\text{N}_{\text{i}}^{\text{n}}(\text{u})=\frac{\text{u}-\text{u} _{\text{i}-1}}{\text{u}_{\text{i}+n-1}-\text{u}_{\text{i}-1}}\text{N}_{\text {i}}^{\text{n}-1}(\text{u})+\frac{\text{u}_{\text{i}+\text{n}}-\text{u}}{\text {u}_{\text{i}+n}-\text{u}_{\text{i}}}\text{N}_{\text{i}+1}^{\text{n}-1}(\text {u})\\ &\text{N}_{\text{i}}^{0}(\text{u})=\left\{\begin{array}{l}1\text { if }\text{u}_{\text{i}-1}\leq u\leq\text{u}_{\text{i}}\\ \text{o else}\end{array},\ \sum\limits_{\text{i}=0}^{\text{D}-1}\text{N}_{\text{i}}^{ \text{n}}(\text{u})=1\end{array}\right.\end{split}  \tag{2}\]  
Figure 5 shows the movement trajectory created using Equations (1) and (2) in a VR environment. When a user creates a movement trajectory, he/she repeats the lifting process following a video of the fitness trainer's exercise process (Figure 5). The proposed system then creates a personalized movement trajectory using the sampled positions of the elbow and hand of the user. The movement trajectory also changes depending on the exercise type.