## 3 Materials and Methods
### Fall Detection Method  
This study implements a hierarchical architecture for fall detection, as shown in Figure 6, using bounding boxes and pose keypoints from the YOLOv8 model, originally used for subject anonymization in Section 3.2. These outputs are used for the extraction of motion features, including the average velocity of keypoints, the body's center, the bounding box's center, and the aspect ratio of the bounding box. To accommodate frame rate variations across different video acquisition systems, motion features are normalized by calculating respective pixel/second velocities. Thereafter, a 1D causal CNN is employed for binary classification, determining \"fall\" or \"not fall\" scenarios in each frame. This network uses the extracted features and their  
Figure 6: Proposed fall detection method. temporal variations. The causal nature of the network guarantees that predictions are made based on present and past data only. The size of the training and inference window is set to correspond to 1 s or the number of frames per second, allowing for a consistent temporal scope in analyzing the video data. The average pose keypoint velocity is calculated by measuring the change in the position of each keypoint across consecutive frames and dividing it by the time elapsed between these frames. If \(P_{i,t}\) and \(P_{i,t+1}\) represent the positions of keypoint \(i\) at times \(t\) and \(t+1\), respectively, the velocity \(V_{i}\) for keypoint \(i\) is calculated as shown in Equation (4):  
\[V_{i}=\frac{\|P_{i,t+1}-P_{i,t}\|}{\Delta t} \tag{4}\]  
The average velocity (\(V_{avg}\)) across all \(N\) keypoints can be calculated as shown in Equation (5):  
\[V_{avg}=\frac{1}{N}{\sum_{i=1}^{N}V_{i}} \tag{5}\]  
The body center (\(C_{body}\)) is determined using the positions of the shoulders and hips. The midpoints \(M_{shoulder}\) and \(M_{hip}\) are found by averaging the positions of the left and right shoulders (\(P_{\text{LS}}\) and \(P_{\text{RS}}\)) and the left and right hips (\(P_{\text{LH}}\) and \(P_{\text{RH}}\)), respectively, as shown in Equations (6)-(8):  
\[M_{shoulder}=\frac{P_{\text{LS}}+P_{\text{RS}}}{2} \tag{6}\]  
\[M_{hip}=\frac{P_{\text{LH}}+P_{\text{RH}}}{2} \tag{7}\]  
\[C_{body}=\frac{M_{shoulder}+M_{hip}}{2} \tag{8}\]  
The center of the bounding box (\(C_{bbox}\)) is calculated by taking the average of the \(x\) and \(y\) coordinates of the bounding box's corners. If \(B_{ll}\) and \(B_{br}\) represent the top-left and bottom-right corners of the bbox, respectively, then \(C_{bbox}\) can be calculated using Equation (9):  
\[C_{bbox}=\frac{B_{tl}+B_{br}}{2} \tag{9}\]  
The aspect ratio (\(AR\)) of the bounding box is determined by the ratio of its width to its height. The width can be calculated as the difference between the \(x\) components of the left (\(B_{tl}\)) and right (\(B_{tr}\)) corners, while height can be calculated from the \(y\) components of the top (\(B_{tl}\)) and bottom (\(B_{bl}\)) corners. Therefore, the equation for calculating \(AR\) can be formulated as in Equation (10):  
\[AR=\frac{B_{tr}(x)-B_{tl}(x)}{B_{bl}(y)-B_{tl}(y)} \tag{10}\]  
The temporal variation (\(\sigma\)) of the features is calculated over a sliding window containing the sequence of feature values [\(F_{t}\), \(F_{t+1}\), \(F_{t+2}\),..., \(F_{t+n}\)] over time \(t\). Within this window, the temporal variation is calculated using Equation (11):  
\[\sigma=\sqrt{\frac{1}{k}{\sum_{i=t-k+1}^{t}(F_{i}-\mu)^{2}}} \tag{11}\]  
where \(F_{i}\) represents the feature value at each frame within the window, \(\mu\) is the mean of these values, and \(k\) is the total number of frames in the window. This equation quantifies the variability of feature values around the mean, providing a measure of temporal variation across the video frames. Building on previous research on fall detection systems, this research aims to develop a classification model that can be seamlessly implemented across various scenes.