## 4 Experiments
### Experimental Setup  
To improve the reproducibility of the experimental results, it is essential to provide comprehensive information about the settings used in the study, including hyperparameters, hardware platform details, and the rationale behind selecting specific weights in the loss function. These details will enable other researchers to replicate the results accurately. In terms of hyperparameters, the model was trained using an initial learning rate of \(1\times 10^{-4}\) which was gradually decayed by a factor of 0.1 every 20 epochs. This learning rate schedule was found to strike an optimal balance between training speed and convergence. The training batch size was set to 16, which provided a reasonable compromise between memory efficiency and model performance. For optimization, the Adam optimizer was chosen due to its adaptive learning rate properties, using the momentum parameters \(\beta 1=0.9\) and \(\beta 2=0.999\). A weight decay of \(1\times 10^{-6}\) was applied to regularize the model and mitigate overfitting. The model was trained for 50 epochs, allowing it to converge while preventing overfitting. Data augmentation techniques, including random horizontal flips, color jittering, and random cropping, were applied to enhance the robustness of the model during training. These hyperparameters were optimized through a grid search on a small validation set.  
The experiments were conducted on a system equipped with an NVIDIA RTX 2080 Ti GPU, Intel Core i9-9900K CPU, and 64 GB of RAM. The model was implemented using PyTorch 1.7.1 with CUDA 11.0 for GPU acceleration. Training the model for 50 epochs on the KITTI dataset required approximately 24 h, while training on the SUN RGB-D and NYU Depth v2 datasets took around 12 h each. These system specifications and timescales ensure transparency regarding the computational resources required for reproducing the results. A crucial aspect of the training process was the selection of the weights involved in the loss function. The total loss is a weighted sum of the photometric loss (\(\lambda_{\text{photo}}\)) and the smoothness loss (\(\lambda_{\text{smooth}}\)). The weight of \(\lambda_{\text{photo}}\) was set to 0.85, as this value provided an optimal balance between maintaining photometric consistency and avoiding overemphasis on pixel-level differences. This weight was chosen after experimenting with values between 0.5 and 1.0, where 0.85 minimized validation loss. The smoothness loss, \(\lambda_{\text{smooth}}\), was set to 0.15. This value was carefully selected to ensure that the depth maps were sufficiently smooth without losing important details, as larger values led to overly smoothed predictions. Both weights were fine-tuned using cross-validation on the validation set to maintain a balance between accuracy and regularization. Additionally, a fixed random seed of 42 was used throughout the experiments to ensure consistency across different runs. Standard depth estimation metrics, such as the root mean squared error (RMSE), absolute relative error (Abs Rel), and threshold accuracy \(\delta<1.25\), were employed to evaluate the model. These metrics were chosen to align with prior work in the field and provide a consistent basis for comparison.