## 2 Theory and Algorithm
### SVD-Based Variations' Extraction  
Acceleration video magnification enhances the energy of the lower-level structural boundary variations. Therefore, the deviations can be extracted from idealized edge profiles in the magnified video frames. With all global edge translation signals in ROIs calculated from the magnified video with Equation (8), these signals are employed to construct an analysis matrix that is formed with subtle variations of the idealized edge profile:  
\[\mathbf{G}_{((M-1)\times N)}=[f(x,2)-f(x,1),f(x,3)-f(x,1),...,f(x,M)-f(x,1)]^{*} =[G_{1},G_{2},...,G_{n}]^{*} \tag{17}\]  
where \(M\) is the number of images in the video, \(N\) is the sampling pixel number along the \(x\) axis and sign \(*\) represents the matrix transposition. In order to extract a valuable structural vibration signal from the matrix \(\mathbf{G}\), a singular-value decomposition (SVD)-based approach is employed.  
As a factorization method of the matrix in linear algebra, the SVD is broadly applied in signal denoising and data compression areas. For a given real matrix \(\mathbf{G}_{((M-1)\times N)}\), the SVD decomposes the matrix of the form:  
\[\mathbf{G}_{((M-1)\times N)}=\mathbf{U}_{(M-1)\times(M-1)}\mathbf{\Sigma}_{(M -1)\times N}\mathbf{V}_{N\times N}^{*} \tag{18}\]  
Figure 3: The black circle simulation test: (**a**) original clean video frame and pixel time slice; (**b**) noise video frame with Gaussian white noise of variance 0.005 and pixel time slice; (**c**) magnified clean video frame and pixel time slice; (**d**) magnified noise video frame and pixel time slice.  
where \(\mathbf{\Sigma}=\left[diag\left(\gamma_{1},\gamma_{2},...,\gamma_{q}\right)\right],(q= min(M-1,N))\) is a diagonal matrix with non-negative singular values on the diagonal in descending order, \(\mathbf{U}=\left[\mathbf{u}_{1},\mathbf{u}_{2},...,\mathbf{u}_{M-1}\right]\) and \(\mathbf{V}=\left[\mathbf{v}_{1},\mathbf{v}_{2},...,\mathbf{v}_{N}\right]\) are both unitary matrices composed of orthonormal eigenvectors, and matrix \(\mathbf{V}^{*}\) represents the conjugate transpose of matrix \(\mathbf{V}\).  
It is known that the magnitude of the singular values in matrix \(\mathbf{\Sigma}\) indicates the energy distribution of vibration signals and noise. Since the magnitude of the singular values corresponding to noise are relatively lower, the available vibration signal can be calculated by using the low-rank approximation of the matrix \(\mathbf{G}\) according to the Eckart-Young theorem:  
\[\mathbf{\tilde{G}}\approx\gamma_{1}\mathbf{u}_{1}\mathbf{v}_{1}^{*}+\gamma_{2 }\mathbf{u}_{2}\mathbf{v}_{2}^{*}+,...,+\gamma_{k}\mathbf{u}_{k}\mathbf{v}_{k} ^{*} \tag{19}\]  
where \(\gamma_{i}(i=1,2,...,k)(k<q)\) are the former \(k\) singular values and the other singular values are all replaced by zero. In practical applications, we use the column summation of matrix \(\mathbf{\tilde{G}}\) to further study vibration characteristics. In summary, the overall flowchart of our proposed vibration extraction process is shown in Figure 4. For textured edge profiles that may introduce noise to the deviation extraction result, we follow the image coloration optimization method of [PERSON] et al.  
During the deviation extraction, every deviation variation \(f(x)\) contains a random constant shift of \(\frac{1}{N}\sum_{x}f(x)\), which reflects a constant shift [25]. In contrast to optical flow or image registration motion extraction algorithms, which calculate the true displacement value, signals extracted using the SVD-based method only reflect the tendency of the structure's vibration. It should be noted that all extracted vibration signals in the following experiments are normalized signals extracted by the SVD-based approach. Nevertheless, these signals remain acceptable and have a high cross-correlation relationship with true vibrations [18].