CINXE.COM

Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS

<!DOCTYPE html> <html lang="en"> <head> <meta content="text/html; charset=utf-8" http-equiv="content-type"/> <title>Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS</title> <!--Generated on Tue Dec 31 18:39:25 2024 by LaTeXML (version 0.8.8) http://dlmf.nist.gov/LaTeXML/.--> <!--Document created on December 2024.--> <meta content="width=device-width, initial-scale=1, shrink-to-fit=no" name="viewport"/> <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet" type="text/css"/> <link href="/static/browse/0.3.4/css/ar5iv.0.7.9.min.css" rel="stylesheet" type="text/css"/> <link href="/static/browse/0.3.4/css/ar5iv-fonts.0.7.9.min.css" rel="stylesheet" type="text/css"/> <link href="/static/browse/0.3.4/css/latexml_styles.css" rel="stylesheet" type="text/css"/> <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/html2canvas/1.3.3/html2canvas.min.js"></script> <script src="/static/browse/0.3.4/js/addons_new.js"></script> <script src="/static/browse/0.3.4/js/feedbackOverlay.js"></script> <base href="/html/2501.01465v1/"/></head> <body> <nav class="ltx_page_navbar"> <nav class="ltx_TOC"> <ol class="ltx_toclist"> <li class="ltx_tocentry ltx_tocentry_section"> <a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S1" title="In Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title"><span class="ltx_tag ltx_tag_ref">1 </span>Introduction</span></a> <ol class="ltx_toclist ltx_toclist_section"> <li class="ltx_tocentry ltx_tocentry_paragraph"><a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S1.SS0.SSS0.Px1" title="In 1 Introduction ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title">Background</span></a></li> <li class="ltx_tocentry ltx_tocentry_paragraph"><a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S1.SS0.SSS0.Px2" title="In 1 Introduction ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title">Problem Statement and Motivation</span></a></li> <li class="ltx_tocentry ltx_tocentry_paragraph"><a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S1.SS0.SSS0.Px3" title="In 1 Introduction ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title">Objective</span></a></li> </ol> </li> <li class="ltx_tocentry ltx_tocentry_section"> <a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S2" title="In Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title"><span class="ltx_tag ltx_tag_ref">2 </span>Methodology</span></a> <ol class="ltx_toclist ltx_toclist_section"> <li class="ltx_tocentry ltx_tocentry_paragraph"><a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S2.SS0.SSS0.Px1" title="In 2 Methodology ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title">Pipeline Overview</span></a></li> <li class="ltx_tocentry ltx_tocentry_subsection"><a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S2.SS1" title="In 2 Methodology ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title"><span class="ltx_tag ltx_tag_ref">2.1 </span>Frame Selection</span></a></li> <li class="ltx_tocentry ltx_tocentry_subsection"><a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S2.SS2" title="In 2 Methodology ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title"><span class="ltx_tag ltx_tag_ref">2.2 </span>Depth Estimation</span></a></li> <li class="ltx_tocentry ltx_tocentry_subsection"> <a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S2.SS3" title="In 2 Methodology ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title"><span class="ltx_tag ltx_tag_ref">2.3 </span>3D Reconstruction</span></a> <ol class="ltx_toclist ltx_toclist_subsection"> <li class="ltx_tocentry ltx_tocentry_paragraph"><a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S2.SS3.SSS0.Px1" title="In 2.3 3D Reconstruction ‣ 2 Methodology ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title">Dynamic Thresholding Mechanism</span></a></li> <li class="ltx_tocentry ltx_tocentry_paragraph"><a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S2.SS3.SSS0.Px2" title="In 2.3 3D Reconstruction ‣ 2 Methodology ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title">Visualization and Error Analysis</span></a></li> </ol> </li> <li class="ltx_tocentry ltx_tocentry_subsection"><a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S2.SS4" title="In 2 Methodology ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title"><span class="ltx_tag ltx_tag_ref">2.4 </span>Technical Implementation Details from the Code</span></a></li> </ol> </li> <li class="ltx_tocentry ltx_tocentry_section"> <a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S3" title="In Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title"><span class="ltx_tag ltx_tag_ref">3 </span>Experiments and Evaluation</span></a> <ol class="ltx_toclist ltx_toclist_section"> <li class="ltx_tocentry ltx_tocentry_paragraph"><a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S3.SS0.SSS0.Px1" title="In 3 Experiments and Evaluation ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title">The choice of dataset</span></a></li> <li class="ltx_tocentry ltx_tocentry_paragraph"><a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S3.SS0.SSS0.Px2" title="In 3 Experiments and Evaluation ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title">Quantative study of depth estimation methods</span></a></li> <li class="ltx_tocentry ltx_tocentry_paragraph"><a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S3.SS0.SSS0.Px3" title="In 3 Experiments and Evaluation ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title">Metrics</span></a></li> <li class="ltx_tocentry ltx_tocentry_paragraph"><a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S3.SS0.SSS0.Px4" title="In 3 Experiments and Evaluation ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title">Finding the best ICP Threshold</span></a></li> <li class="ltx_tocentry ltx_tocentry_paragraph"><a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S3.SS0.SSS0.Px5" title="In 3 Experiments and Evaluation ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title">Qualitative test for 3D reconstruction</span></a></li> <li class="ltx_tocentry ltx_tocentry_paragraph"><a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S3.SS0.SSS0.Px6" title="In 3 Experiments and Evaluation ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title">About the testing of the frame selection module</span></a></li> <li class="ltx_tocentry ltx_tocentry_paragraph"><a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S3.SS0.SSS0.Px7" title="In 3 Experiments and Evaluation ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title">Adjustments Made</span></a></li> </ol> </li> <li class="ltx_tocentry ltx_tocentry_section"> <a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S4" title="In Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title"><span class="ltx_tag ltx_tag_ref">4 </span>Results</span></a> <ol class="ltx_toclist ltx_toclist_section"> <li class="ltx_tocentry ltx_tocentry_subsection"> <a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S4.SS1" title="In 4 Results ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title"><span class="ltx_tag ltx_tag_ref">4.1 </span>Depth Estimation Performance evaluation</span></a> <ol class="ltx_toclist ltx_toclist_subsection"> <li class="ltx_tocentry ltx_tocentry_paragraph"><a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S4.SS1.SSS0.Px1" title="In 4.1 Depth Estimation Performance evaluation ‣ 4 Results ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title">Quantitative Results</span></a></li> <li class="ltx_tocentry ltx_tocentry_paragraph"><a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S4.SS1.SSS0.Px2" title="In 4.1 Depth Estimation Performance evaluation ‣ 4 Results ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title">Anomalies and Observations</span></a></li> </ol> </li> <li class="ltx_tocentry ltx_tocentry_subsection"> <a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S4.SS2" title="In 4 Results ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title"><span class="ltx_tag ltx_tag_ref">4.2 </span>Searching of the best thresholding scheme</span></a> <ol class="ltx_toclist ltx_toclist_subsection"> <li class="ltx_tocentry ltx_tocentry_paragraph"><a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S4.SS2.SSS0.Px1" title="In 4.2 Searching of the best thresholding scheme ‣ 4 Results ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title">Constant Value</span></a></li> <li class="ltx_tocentry ltx_tocentry_paragraph"><a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S4.SS2.SSS0.Px2" title="In 4.2 Searching of the best thresholding scheme ‣ 4 Results ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title">90 percentile</span></a></li> <li class="ltx_tocentry ltx_tocentry_paragraph"><a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S4.SS2.SSS0.Px3" title="In 4.2 Searching of the best thresholding scheme ‣ 4 Results ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title">Mean of error with a factor</span></a></li> <li class="ltx_tocentry ltx_tocentry_paragraph"><a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S4.SS2.SSS0.Px4" title="In 4.2 Searching of the best thresholding scheme ‣ 4 Results ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title">1.5 Times Median</span></a></li> <li class="ltx_tocentry ltx_tocentry_paragraph"><a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S4.SS2.SSS0.Px5" title="In 4.2 Searching of the best thresholding scheme ‣ 4 Results ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title">Linear Interpolation</span></a></li> <li class="ltx_tocentry ltx_tocentry_paragraph"><a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S4.SS2.SSS0.Px6" title="In 4.2 Searching of the best thresholding scheme ‣ 4 Results ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title">80% of Maximum Distance</span></a></li> <li class="ltx_tocentry ltx_tocentry_paragraph"><a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S4.SS2.SSS0.Px7" title="In 4.2 Searching of the best thresholding scheme ‣ 4 Results ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title">Mean Plus Two Standard Deviations</span></a></li> </ol> </li> <li class="ltx_tocentry ltx_tocentry_subsection"> <a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S4.SS3" title="In 4 Results ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title"><span class="ltx_tag ltx_tag_ref">4.3 </span>3D Reconstruction Outcomes</span></a> <ol class="ltx_toclist ltx_toclist_subsection"> <li class="ltx_tocentry ltx_tocentry_paragraph"><a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S4.SS3.SSS0.Px1" title="In 4.3 3D Reconstruction Outcomes ‣ 4 Results ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title">Qualitative Results</span></a></li> <li class="ltx_tocentry ltx_tocentry_paragraph"><a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S4.SS3.SSS0.Px2" title="In 4.3 3D Reconstruction Outcomes ‣ 4 Results ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title">Challenges Faced</span></a></li> </ol> </li> <li class="ltx_tocentry ltx_tocentry_subsection"> <a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S4.SS4" title="In 4 Results ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title"><span class="ltx_tag ltx_tag_ref">4.4 </span>Visualization and Analysis</span></a> <ol class="ltx_toclist ltx_toclist_subsection"> <li class="ltx_tocentry ltx_tocentry_paragraph"><a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S4.SS4.SSS0.Px1" title="In 4.4 Visualization and Analysis ‣ 4 Results ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title">ICP Alignment Visualization</span></a></li> <li class="ltx_tocentry ltx_tocentry_paragraph"><a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S4.SS4.SSS0.Px2" title="In 4.4 Visualization and Analysis ‣ 4 Results ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title">Thresholding Strategies</span></a></li> </ol> </li> </ol> </li> <li class="ltx_tocentry ltx_tocentry_section"> <a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S5" title="In Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title"><span class="ltx_tag ltx_tag_ref">5 </span>Discussion</span></a> <ol class="ltx_toclist ltx_toclist_section"> <li class="ltx_tocentry ltx_tocentry_paragraph"><a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S5.SS0.SSS0.Px1" title="In 5 Discussion ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title">Relative Depth</span></a></li> <li class="ltx_tocentry ltx_tocentry_paragraph"><a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S5.SS0.SSS0.Px2" title="In 5 Discussion ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title">Reconstruction</span></a></li> <li class="ltx_tocentry ltx_tocentry_paragraph"><a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S5.SS0.SSS0.Px3" title="In 5 Discussion ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title">Ground Truth Discrepancies</span></a></li> </ol> </li> <li class="ltx_tocentry ltx_tocentry_section"><a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S6" title="In Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_title"><span class="ltx_tag ltx_tag_ref">6 </span>Conclusion</span></a></li> </ol></nav> </nav> <div class="ltx_page_main"> <div class="ltx_page_content"> <article class="ltx_document ltx_authors_1line"> <div class="ltx_para" id="p1"> <span class="ltx_ERROR undefined" id="p1.1">\UseRawInputEncoding</span> </div> <h1 class="ltx_title ltx_title_document">Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS</h1> <div class="ltx_authors"> <span class="ltx_creator ltx_role_author"> <span class="ltx_personname">Yicheng Zhu </span></span> </div> <div class="ltx_dates">(December 2024)</div> <div class="ltx_abstract"> <h6 class="ltx_title ltx_title_abstract">Abstract</h6> <p class="ltx_p" id="id1.id1">Tracking surgical modifications based on endoscopic videos is technically feasible and of great clinical advantages; however, it still remains challenging. This report presents a modular pipeline to divide and conquer the clinical challenges in the process. The pipeline integrates frame selection, depth estimation, and 3D reconstruction components, allowing for flexibility and adaptability in incorporating new methods. Recent advancements, including the integration of Depth-Anything V2 and EndoDAC for depth estimation, as well as improvements in the Iterative Closest Point (ICP) alignment process, are detailed. Experiments conducted on the Hamlyn dataset demonstrate the effectiveness of the integrated methods. System capability and limitations are both discussed.</p> </div> <section class="ltx_section" id="S1"> <h2 class="ltx_title ltx_title_section"> <span class="ltx_tag ltx_tag_section">1 </span>Introduction</h2> <section class="ltx_paragraph" id="S1.SS0.SSS0.Px1"> <h4 class="ltx_title ltx_title_paragraph">Background</h4> <div class="ltx_para" id="S1.SS0.SSS0.Px1.p1"> <p class="ltx_p" id="S1.SS0.SSS0.Px1.p1.1">Image-guided surgery (IGS) technology, by displaying surgical instruments on CT/MRI images in real-time, grants surgeons the ability to see instruments inside a patient and to see pathology that is not visible in an endoscope, making endoscopic approaches possible in some procedures <cite class="ltx_cite ltx_citemacro_cite">[<a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#bib.bib1" title="">1</a>, <a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#bib.bib2" title="">2</a>]</cite>. A preoperative CT/MRI scan is used as a reference map to visually provide the position information to the surgeon, showing the position of the surgical instrument tip inside a patient and lesions that are not visible in endoscopic images <cite class="ltx_cite ltx_citemacro_cite">[<a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#bib.bib3" title="">3</a>]</cite>.</p> </div> <div class="ltx_para" id="S1.SS0.SSS0.Px1.p2"> <p class="ltx_p" id="S1.SS0.SSS0.Px1.p2.1">Endoscopic Sinus and Skull Base Surgery (ESSBS) is a procedure that covers the wide sinus and skull base area. The anatomical structures are similar and surrounded by abundant amounts of nerves and blood vessels, making it challenging to ensure surgical completeness. The revision rate of ESSBS is close to 28% <cite class="ltx_cite ltx_citemacro_cite">[<a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#bib.bib4" title="">4</a>, <a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#bib.bib5" title="">5</a>, <a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#bib.bib6" title="">6</a>]</cite>.</p> </div> </section> <section class="ltx_paragraph" id="S1.SS0.SSS0.Px2"> <h4 class="ltx_title ltx_title_paragraph">Problem Statement and Motivation</h4> <div class="ltx_para" id="S1.SS0.SSS0.Px2.p1"> <p class="ltx_p" id="S1.SS0.SSS0.Px2.p1.1">However, the reference map of the patient is static and does not account for tissue removal, deformation, or other intraoperative changes. In order to update tissue removal and deformation, intraoperative CT/MRI scans need to be performed <cite class="ltx_cite ltx_citemacro_cite">[<a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#bib.bib3" title="">3</a>]</cite>, which expose the patient to an extra amount of radiation and anesthesia.</p> </div> <div class="ltx_para" id="S1.SS0.SSS0.Px2.p2"> <p class="ltx_p" id="S1.SS0.SSS0.Px2.p2.1">Tracking surgical modifications in real-time with endoscopic videos and instrument motion will revolutionize IGS as it will not only improve navigation precision and reliability but also potentially extend IGS to soft-tissue dominant endoscopic surgeries.</p> </div> <div class="ltx_para" id="S1.SS0.SSS0.Px2.p3"> <p class="ltx_p" id="S1.SS0.SSS0.Px2.p3.1">The motion-based surgical modification tracking is rarely studied because IGS motion data not only suffers low sample rate and occlusion but also has unpredictable tracking failures<cite class="ltx_cite ltx_citemacro_cite">[<a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#bib.bib7" title="">7</a>, <a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#bib.bib8" title="">8</a>, <a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#bib.bib9" title="">9</a>, <a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#bib.bib10" title="">10</a>]</cite>.</p> </div> <div class="ltx_para" id="S1.SS0.SSS0.Px2.p4"> <p class="ltx_p" id="S1.SS0.SSS0.Px2.p4.1">Tracking surgical modifications with endoscopic images in real-time, on the other hand, is an appealing possible solution and has been extensively studied over the past two decades<cite class="ltx_cite ltx_citemacro_cite">[<a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#bib.bib11" title="">11</a>, <a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#bib.bib12" title="">12</a>]</cite>. However, the classic visual reconstruction methods, including the geometric models and the viewing angle difference-based algorithms (often known as Structure from Motion (SfM)<cite class="ltx_cite ltx_citemacro_cite">[<a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#bib.bib13" title="">13</a>]</cite>), the 3-Dimensional geometry, and the light source changes based algorithms (often known as Shape-from Shading (SfS)<cite class="ltx_cite ltx_citemacro_cite">[<a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#bib.bib14" title="">14</a>]</cite>), and the consistency of motions and observations (often known as Visual Simultaneous Localization and Mapping (vSLAM) <cite class="ltx_cite ltx_citemacro_cite">[<a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#bib.bib15" title="">15</a>]</cite>), can not maintain convergence under the adverse conditions in ESSBS, such as bleeding, occlusion, reflection, over-exposure, etc. The recent deep-learning reconstruction methods address various adverse conditions independently <cite class="ltx_cite ltx_citemacro_cite">[<a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#bib.bib16" title="">16</a>]</cite>; however, they lack methods and data to address the dimensionality explosion problem caused by the presence of all adverse conditions in ESSBS, and <em class="ltx_emph ltx_font_italic" id="S1.SS0.SSS0.Px2.p4.1.1">representative state of art deep learning algorithms diverge within a few minutes in operating rooms</em><cite class="ltx_cite ltx_citemacro_cite">[<a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#bib.bib17" title="">17</a>]</cite>.</p> </div> </section> <section class="ltx_paragraph" id="S1.SS0.SSS0.Px3"> <h4 class="ltx_title ltx_title_paragraph">Objective</h4> <div class="ltx_para" id="S1.SS0.SSS0.Px3.p1"> <p class="ltx_p" id="S1.SS0.SSS0.Px3.p1.1">The primary objective of this current pipeline is to establish a foundational framework for 3D reconstruction in endoscopic surgeries. Recent advancements have been made to integrate new depth estimation methods and improve the 3D reconstruction process. The aims are:</p> </div> <div class="ltx_para" id="S1.SS0.SSS0.Px3.p2"> <ol class="ltx_enumerate" id="S1.I1"> <li class="ltx_item" id="S1.I1.i1" style="list-style-type:none;"> <span class="ltx_tag ltx_tag_item">1.</span> <div class="ltx_para" id="S1.I1.i1.p1"> <p class="ltx_p" id="S1.I1.i1.p1.1"><span class="ltx_text ltx_font_bold" id="S1.I1.i1.p1.1.1">Preprocessing</span>: Handle different kinds of inputs, including video files, and extract frames as needed.</p> </div> </li> <li class="ltx_item" id="S1.I1.i2" style="list-style-type:none;"> <span class="ltx_tag ltx_tag_item">2.</span> <div class="ltx_para" id="S1.I1.i2.p1"> <p class="ltx_p" id="S1.I1.i2.p1.1"><span class="ltx_text ltx_font_bold" id="S1.I1.i2.p1.1.1">Frame Selection</span>: Implement and refine frame selection methods to filter out informative frames, reducing noise and eliminating irrelevant or low-quality frames. Currently implemented frame selection methods include</p> <ul class="ltx_itemize" id="S1.I1.i2.I1"> <li class="ltx_item" id="S1.I1.i2.I1.i1" style="list-style-type:none;"> <span class="ltx_tag ltx_tag_item">•</span> <div class="ltx_para" id="S1.I1.i2.I1.i1.p1"> <p class="ltx_p" id="S1.I1.i2.I1.i1.p1.1">HyperIQA <cite class="ltx_cite ltx_citemacro_cite">[<a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#bib.bib18" title="">18</a>]</cite>, choosing frames based on their quality assessment score.</p> </div> </li> <li class="ltx_item" id="S1.I1.i2.I1.i2" style="list-style-type:none;"> <span class="ltx_tag ltx_tag_item">•</span> <div class="ltx_para" id="S1.I1.i2.I1.i2.p1"> <p class="ltx_p" id="S1.I1.i2.I1.i2.p1.1">R-channel intensity, choosing frames based on their average r-channel intensity.</p> </div> </li> </ul> </div> </li> <li class="ltx_item" id="S1.I1.i3" style="list-style-type:none;"> <span class="ltx_tag ltx_tag_item">3.</span> <div class="ltx_para" id="S1.I1.i3.p1"> <p class="ltx_p" id="S1.I1.i3.p1.1"><span class="ltx_text ltx_font_bold" id="S1.I1.i3.p1.1.1">Depth Estimation</span>: Integrate new depth estimation methods such as Depth-Anything V1, V2 <cite class="ltx_cite ltx_citemacro_cite">[<a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#bib.bib19" title="">19</a>, <a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#bib.bib20" title="">20</a>]</cite> and EndoDAC<cite class="ltx_cite ltx_citemacro_cite">[<a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#bib.bib21" title="">21</a>]</cite>, and implement necessary post-processing steps.</p> </div> </li> <li class="ltx_item" id="S1.I1.i4" style="list-style-type:none;"> <span class="ltx_tag ltx_tag_item">4.</span> <div class="ltx_para" id="S1.I1.i4.p1"> <p class="ltx_p" id="S1.I1.i4.p1.1"><span class="ltx_text ltx_font_bold" id="S1.I1.i4.p1.1.1">3D Reconstruction</span>: Implement the point cloud generation using ICP alignment techniques, dynamic thresholding, and artifact removal methods.</p> </div> </li> </ol> </div> </section> </section> <section class="ltx_section" id="S2"> <h2 class="ltx_title ltx_title_section"> <span class="ltx_tag ltx_tag_section">2 </span>Methodology</h2> <div class="ltx_para" id="S2.p1"> <p class="ltx_p" id="S2.p1.1">Modern visual reconstruction algorithms reach sub-pixel accuracy in ideal laboratory environments but fail to maintain performance in complex real-world environments <cite class="ltx_cite ltx_citemacro_cite">[<a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#bib.bib16" title="">16</a>]</cite>). This is because visual reconstruction requires continuous tracking of scene changes, but various problems deteriorate performance and eventually cause failures<cite class="ltx_cite ltx_citemacro_cite">[<a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#bib.bib13" title="">13</a>, <a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#bib.bib14" title="">14</a>, <a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#bib.bib15" title="">15</a>]</cite>. Endoscopic surgeries have extremely challenging scenes, and even humans can lose track. To overcome the problem, we will use a DCL framework that divides and conquers the visual tracking problem in ESSBS, detects and isolates adverse factors, excludes images containing unrecoverable errors from the reconstruction process, compensates for the impacts of adverse factors, reduces the uncertain information contained in an image, and image quality improvement and joint multi-image reconstruction track soft tissue deformation and improve reconstruction accuracy.</p> </div> <section class="ltx_paragraph" id="S2.SS0.SSS0.Px1"> <h4 class="ltx_title ltx_title_paragraph">Pipeline Overview</h4> <div class="ltx_para" id="S2.SS0.SSS0.Px1.p1"> <p class="ltx_p" id="S2.SS0.SSS0.Px1.p1.1">The pipeline code is implemented in Python, with a modular structure and extensive in-line documentation. It is optimized for IDEs like PyCharm and VSCode by utilizing region-based code folding. The repository is available at: <a class="ltx_ref ltx_url ltx_font_typewriter" href="https://github.com/Mayonezyck/pipeline" title="">https://github.com/Mayonezyck/pipeline</a>. Users can refer to the <span class="ltx_text ltx_font_typewriter" id="S2.SS0.SSS0.Px1.p1.1.1">README.md</span> for detailed installation and configuration instructions. The pipeline is structured around a configuration YAML file (<span class="ltx_text ltx_font_typewriter" id="S2.SS0.SSS0.Px1.p1.1.2">CONFIG.yaml</span>), which enables flexible and easily modifiable parameters for each stage of the pipeline.</p> </div> </section> <section class="ltx_subsection" id="S2.SS1"> <h3 class="ltx_title ltx_title_subsection"> <span class="ltx_tag ltx_tag_subsection">2.1 </span>Frame Selection</h3> <div class="ltx_para" id="S2.SS1.p1"> <p class="ltx_p" id="S2.SS1.p1.1">The pipeline begins with a frame selection step that filters out uninformative or low-quality frames from the input endoscopic video or image folder. This step can run multiple selection schemes in sequence, controlled by parameters in <span class="ltx_text ltx_font_typewriter" id="S2.SS1.p1.1.1">CONFIG.yaml</span>.</p> </div> <div class="ltx_para" id="S2.SS1.p2"> <ol class="ltx_enumerate" id="S2.I1"> <li class="ltx_item" id="S2.I1.i1" style="list-style-type:none;"> <span class="ltx_tag ltx_tag_item">1.</span> <div class="ltx_para" id="S2.I1.i1.p1"> <p class="ltx_p" id="S2.I1.i1.p1.1"><span class="ltx_text ltx_font_bold" id="S2.I1.i1.p1.1.1">HyperIQA</span>: The pipeline uses HyperIQA <cite class="ltx_cite ltx_citemacro_cite">[<a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#bib.bib18" title="">18</a>]</cite>, a blind image quality assessment model. For each frame, it estimates a quality score. Frames are then thresholded based on the IQA score. The code implementation (in <span class="ltx_text ltx_font_typewriter" id="S2.I1.i1.p1.1.2">frameSelect/hyperIQA/hyperIQA.py</span>) loads a pre trained HyperIQA model, runs inference on each frame (with random crops for robustness), and returns a mean quality score.</p> </div> <div class="ltx_para" id="S2.I1.i1.p2"> <table class="ltx_equation ltx_eqn_table" id="S2.E1"> <tbody><tr class="ltx_equation ltx_eqn_row ltx_align_baseline"> <td class="ltx_eqn_cell ltx_eqn_center_padleft"></td> <td class="ltx_eqn_cell ltx_align_center"><math alttext="\text{QualityScore}=\frac{1}{N}\sum_{i=1}^{N}f_{\text{HyperIQA}}(I)" class="ltx_Math" display="block" id="S2.E1.m1.1"><semantics id="S2.E1.m1.1a"><mrow id="S2.E1.m1.1.2" xref="S2.E1.m1.1.2.cmml"><mtext id="S2.E1.m1.1.2.2" xref="S2.E1.m1.1.2.2a.cmml">QualityScore</mtext><mo id="S2.E1.m1.1.2.1" xref="S2.E1.m1.1.2.1.cmml">=</mo><mrow id="S2.E1.m1.1.2.3" xref="S2.E1.m1.1.2.3.cmml"><mfrac id="S2.E1.m1.1.2.3.2" xref="S2.E1.m1.1.2.3.2.cmml"><mn id="S2.E1.m1.1.2.3.2.2" xref="S2.E1.m1.1.2.3.2.2.cmml">1</mn><mi id="S2.E1.m1.1.2.3.2.3" xref="S2.E1.m1.1.2.3.2.3.cmml">N</mi></mfrac><mo id="S2.E1.m1.1.2.3.1" xref="S2.E1.m1.1.2.3.1.cmml">⁢</mo><mrow id="S2.E1.m1.1.2.3.3" xref="S2.E1.m1.1.2.3.3.cmml"><munderover id="S2.E1.m1.1.2.3.3.1" xref="S2.E1.m1.1.2.3.3.1.cmml"><mo id="S2.E1.m1.1.2.3.3.1.2.2" movablelimits="false" xref="S2.E1.m1.1.2.3.3.1.2.2.cmml">∑</mo><mrow id="S2.E1.m1.1.2.3.3.1.2.3" xref="S2.E1.m1.1.2.3.3.1.2.3.cmml"><mi id="S2.E1.m1.1.2.3.3.1.2.3.2" xref="S2.E1.m1.1.2.3.3.1.2.3.2.cmml">i</mi><mo id="S2.E1.m1.1.2.3.3.1.2.3.1" xref="S2.E1.m1.1.2.3.3.1.2.3.1.cmml">=</mo><mn id="S2.E1.m1.1.2.3.3.1.2.3.3" xref="S2.E1.m1.1.2.3.3.1.2.3.3.cmml">1</mn></mrow><mi id="S2.E1.m1.1.2.3.3.1.3" xref="S2.E1.m1.1.2.3.3.1.3.cmml">N</mi></munderover><mrow id="S2.E1.m1.1.2.3.3.2" xref="S2.E1.m1.1.2.3.3.2.cmml"><msub id="S2.E1.m1.1.2.3.3.2.2" xref="S2.E1.m1.1.2.3.3.2.2.cmml"><mi id="S2.E1.m1.1.2.3.3.2.2.2" xref="S2.E1.m1.1.2.3.3.2.2.2.cmml">f</mi><mtext id="S2.E1.m1.1.2.3.3.2.2.3" xref="S2.E1.m1.1.2.3.3.2.2.3a.cmml">HyperIQA</mtext></msub><mo id="S2.E1.m1.1.2.3.3.2.1" xref="S2.E1.m1.1.2.3.3.2.1.cmml">⁢</mo><mrow id="S2.E1.m1.1.2.3.3.2.3.2" xref="S2.E1.m1.1.2.3.3.2.cmml"><mo id="S2.E1.m1.1.2.3.3.2.3.2.1" stretchy="false" xref="S2.E1.m1.1.2.3.3.2.cmml">(</mo><mi id="S2.E1.m1.1.1" xref="S2.E1.m1.1.1.cmml">I</mi><mo id="S2.E1.m1.1.2.3.3.2.3.2.2" stretchy="false" xref="S2.E1.m1.1.2.3.3.2.cmml">)</mo></mrow></mrow></mrow></mrow></mrow><annotation-xml encoding="MathML-Content" id="S2.E1.m1.1b"><apply id="S2.E1.m1.1.2.cmml" xref="S2.E1.m1.1.2"><eq id="S2.E1.m1.1.2.1.cmml" xref="S2.E1.m1.1.2.1"></eq><ci id="S2.E1.m1.1.2.2a.cmml" xref="S2.E1.m1.1.2.2"><mtext id="S2.E1.m1.1.2.2.cmml" xref="S2.E1.m1.1.2.2">QualityScore</mtext></ci><apply id="S2.E1.m1.1.2.3.cmml" xref="S2.E1.m1.1.2.3"><times id="S2.E1.m1.1.2.3.1.cmml" xref="S2.E1.m1.1.2.3.1"></times><apply id="S2.E1.m1.1.2.3.2.cmml" xref="S2.E1.m1.1.2.3.2"><divide id="S2.E1.m1.1.2.3.2.1.cmml" xref="S2.E1.m1.1.2.3.2"></divide><cn id="S2.E1.m1.1.2.3.2.2.cmml" type="integer" xref="S2.E1.m1.1.2.3.2.2">1</cn><ci id="S2.E1.m1.1.2.3.2.3.cmml" xref="S2.E1.m1.1.2.3.2.3">𝑁</ci></apply><apply id="S2.E1.m1.1.2.3.3.cmml" xref="S2.E1.m1.1.2.3.3"><apply id="S2.E1.m1.1.2.3.3.1.cmml" xref="S2.E1.m1.1.2.3.3.1"><csymbol cd="ambiguous" id="S2.E1.m1.1.2.3.3.1.1.cmml" xref="S2.E1.m1.1.2.3.3.1">superscript</csymbol><apply id="S2.E1.m1.1.2.3.3.1.2.cmml" xref="S2.E1.m1.1.2.3.3.1"><csymbol cd="ambiguous" id="S2.E1.m1.1.2.3.3.1.2.1.cmml" xref="S2.E1.m1.1.2.3.3.1">subscript</csymbol><sum id="S2.E1.m1.1.2.3.3.1.2.2.cmml" xref="S2.E1.m1.1.2.3.3.1.2.2"></sum><apply id="S2.E1.m1.1.2.3.3.1.2.3.cmml" xref="S2.E1.m1.1.2.3.3.1.2.3"><eq id="S2.E1.m1.1.2.3.3.1.2.3.1.cmml" xref="S2.E1.m1.1.2.3.3.1.2.3.1"></eq><ci id="S2.E1.m1.1.2.3.3.1.2.3.2.cmml" xref="S2.E1.m1.1.2.3.3.1.2.3.2">𝑖</ci><cn id="S2.E1.m1.1.2.3.3.1.2.3.3.cmml" type="integer" xref="S2.E1.m1.1.2.3.3.1.2.3.3">1</cn></apply></apply><ci id="S2.E1.m1.1.2.3.3.1.3.cmml" xref="S2.E1.m1.1.2.3.3.1.3">𝑁</ci></apply><apply id="S2.E1.m1.1.2.3.3.2.cmml" xref="S2.E1.m1.1.2.3.3.2"><times id="S2.E1.m1.1.2.3.3.2.1.cmml" xref="S2.E1.m1.1.2.3.3.2.1"></times><apply id="S2.E1.m1.1.2.3.3.2.2.cmml" xref="S2.E1.m1.1.2.3.3.2.2"><csymbol cd="ambiguous" id="S2.E1.m1.1.2.3.3.2.2.1.cmml" xref="S2.E1.m1.1.2.3.3.2.2">subscript</csymbol><ci id="S2.E1.m1.1.2.3.3.2.2.2.cmml" xref="S2.E1.m1.1.2.3.3.2.2.2">𝑓</ci><ci id="S2.E1.m1.1.2.3.3.2.2.3a.cmml" xref="S2.E1.m1.1.2.3.3.2.2.3"><mtext id="S2.E1.m1.1.2.3.3.2.2.3.cmml" mathsize="70%" xref="S2.E1.m1.1.2.3.3.2.2.3">HyperIQA</mtext></ci></apply><ci id="S2.E1.m1.1.1.cmml" xref="S2.E1.m1.1.1">𝐼</ci></apply></apply></apply></apply></annotation-xml><annotation encoding="application/x-tex" id="S2.E1.m1.1c">\text{QualityScore}=\frac{1}{N}\sum_{i=1}^{N}f_{\text{HyperIQA}}(I)</annotation><annotation encoding="application/x-llamapun" id="S2.E1.m1.1d">QualityScore = divide start_ARG 1 end_ARG start_ARG italic_N end_ARG ∑ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_N end_POSTSUPERSCRIPT italic_f start_POSTSUBSCRIPT HyperIQA end_POSTSUBSCRIPT ( italic_I )</annotation></semantics></math></td> <td class="ltx_eqn_cell ltx_eqn_center_padright"></td> <td class="ltx_eqn_cell ltx_eqn_eqno ltx_align_middle ltx_align_right" rowspan="1"><span class="ltx_tag ltx_tag_equation ltx_align_right">(1)</span></td> </tr></tbody> </table> </div> <div class="ltx_para" id="S2.I1.i1.p3"> <p class="ltx_p" id="S2.I1.i1.p3.3">where <math alttext="f_{\text{HyperIQA}}" class="ltx_Math" display="inline" id="S2.I1.i1.p3.1.m1.1"><semantics id="S2.I1.i1.p3.1.m1.1a"><msub id="S2.I1.i1.p3.1.m1.1.1" xref="S2.I1.i1.p3.1.m1.1.1.cmml"><mi id="S2.I1.i1.p3.1.m1.1.1.2" xref="S2.I1.i1.p3.1.m1.1.1.2.cmml">f</mi><mtext id="S2.I1.i1.p3.1.m1.1.1.3" xref="S2.I1.i1.p3.1.m1.1.1.3a.cmml">HyperIQA</mtext></msub><annotation-xml encoding="MathML-Content" id="S2.I1.i1.p3.1.m1.1b"><apply id="S2.I1.i1.p3.1.m1.1.1.cmml" xref="S2.I1.i1.p3.1.m1.1.1"><csymbol cd="ambiguous" id="S2.I1.i1.p3.1.m1.1.1.1.cmml" xref="S2.I1.i1.p3.1.m1.1.1">subscript</csymbol><ci id="S2.I1.i1.p3.1.m1.1.1.2.cmml" xref="S2.I1.i1.p3.1.m1.1.1.2">𝑓</ci><ci id="S2.I1.i1.p3.1.m1.1.1.3a.cmml" xref="S2.I1.i1.p3.1.m1.1.1.3"><mtext id="S2.I1.i1.p3.1.m1.1.1.3.cmml" mathsize="70%" xref="S2.I1.i1.p3.1.m1.1.1.3">HyperIQA</mtext></ci></apply></annotation-xml><annotation encoding="application/x-tex" id="S2.I1.i1.p3.1.m1.1c">f_{\text{HyperIQA}}</annotation><annotation encoding="application/x-llamapun" id="S2.I1.i1.p3.1.m1.1d">italic_f start_POSTSUBSCRIPT HyperIQA end_POSTSUBSCRIPT</annotation></semantics></math> is the HyperIQA inference function, <math alttext="I" class="ltx_Math" display="inline" id="S2.I1.i1.p3.2.m2.1"><semantics id="S2.I1.i1.p3.2.m2.1a"><mi id="S2.I1.i1.p3.2.m2.1.1" xref="S2.I1.i1.p3.2.m2.1.1.cmml">I</mi><annotation-xml encoding="MathML-Content" id="S2.I1.i1.p3.2.m2.1b"><ci id="S2.I1.i1.p3.2.m2.1.1.cmml" xref="S2.I1.i1.p3.2.m2.1.1">𝐼</ci></annotation-xml><annotation encoding="application/x-tex" id="S2.I1.i1.p3.2.m2.1c">I</annotation><annotation encoding="application/x-llamapun" id="S2.I1.i1.p3.2.m2.1d">italic_I</annotation></semantics></math> is the input image, and <math alttext="N" class="ltx_Math" display="inline" id="S2.I1.i1.p3.3.m3.1"><semantics id="S2.I1.i1.p3.3.m3.1a"><mi id="S2.I1.i1.p3.3.m3.1.1" xref="S2.I1.i1.p3.3.m3.1.1.cmml">N</mi><annotation-xml encoding="MathML-Content" id="S2.I1.i1.p3.3.m3.1b"><ci id="S2.I1.i1.p3.3.m3.1.1.cmml" xref="S2.I1.i1.p3.3.m3.1.1">𝑁</ci></annotation-xml><annotation encoding="application/x-tex" id="S2.I1.i1.p3.3.m3.1c">N</annotation><annotation encoding="application/x-llamapun" id="S2.I1.i1.p3.3.m3.1d">italic_N</annotation></semantics></math> is the number of random crops used.</p> </div> <div class="ltx_para" id="S2.I1.i1.p4"> <p class="ltx_p" id="S2.I1.i1.p4.1">A threshold <math alttext="T_{\text{IQA}}" class="ltx_Math" display="inline" id="S2.I1.i1.p4.1.m1.1"><semantics id="S2.I1.i1.p4.1.m1.1a"><msub id="S2.I1.i1.p4.1.m1.1.1" xref="S2.I1.i1.p4.1.m1.1.1.cmml"><mi id="S2.I1.i1.p4.1.m1.1.1.2" xref="S2.I1.i1.p4.1.m1.1.1.2.cmml">T</mi><mtext id="S2.I1.i1.p4.1.m1.1.1.3" xref="S2.I1.i1.p4.1.m1.1.1.3a.cmml">IQA</mtext></msub><annotation-xml encoding="MathML-Content" id="S2.I1.i1.p4.1.m1.1b"><apply id="S2.I1.i1.p4.1.m1.1.1.cmml" xref="S2.I1.i1.p4.1.m1.1.1"><csymbol cd="ambiguous" id="S2.I1.i1.p4.1.m1.1.1.1.cmml" xref="S2.I1.i1.p4.1.m1.1.1">subscript</csymbol><ci id="S2.I1.i1.p4.1.m1.1.1.2.cmml" xref="S2.I1.i1.p4.1.m1.1.1.2">𝑇</ci><ci id="S2.I1.i1.p4.1.m1.1.1.3a.cmml" xref="S2.I1.i1.p4.1.m1.1.1.3"><mtext id="S2.I1.i1.p4.1.m1.1.1.3.cmml" mathsize="70%" xref="S2.I1.i1.p4.1.m1.1.1.3">IQA</mtext></ci></apply></annotation-xml><annotation encoding="application/x-tex" id="S2.I1.i1.p4.1.m1.1c">T_{\text{IQA}}</annotation><annotation encoding="application/x-llamapun" id="S2.I1.i1.p4.1.m1.1d">italic_T start_POSTSUBSCRIPT IQA end_POSTSUBSCRIPT</annotation></semantics></math> is then applied:</p> <table class="ltx_equation ltx_eqn_table" id="S2.Ex1"> <tbody><tr class="ltx_equation ltx_eqn_row ltx_align_baseline"> <td class="ltx_eqn_cell ltx_eqn_center_padleft"></td> <td class="ltx_eqn_cell ltx_align_center"><math alttext="\text{SelectFrame}(I)=\begin{cases}1&amp;\text{if }\text{QualityScore}(I)&gt;T_{\text% {IQA}}\\ 0&amp;\text{otherwise}\end{cases}" class="ltx_Math" display="block" id="S2.Ex1.m1.5"><semantics id="S2.Ex1.m1.5a"><mrow id="S2.Ex1.m1.5.6" xref="S2.Ex1.m1.5.6.cmml"><mrow id="S2.Ex1.m1.5.6.2" xref="S2.Ex1.m1.5.6.2.cmml"><mtext id="S2.Ex1.m1.5.6.2.2" xref="S2.Ex1.m1.5.6.2.2a.cmml">SelectFrame</mtext><mo id="S2.Ex1.m1.5.6.2.1" xref="S2.Ex1.m1.5.6.2.1.cmml">⁢</mo><mrow id="S2.Ex1.m1.5.6.2.3.2" xref="S2.Ex1.m1.5.6.2.cmml"><mo id="S2.Ex1.m1.5.6.2.3.2.1" stretchy="false" xref="S2.Ex1.m1.5.6.2.cmml">(</mo><mi id="S2.Ex1.m1.5.5" xref="S2.Ex1.m1.5.5.cmml">I</mi><mo id="S2.Ex1.m1.5.6.2.3.2.2" stretchy="false" xref="S2.Ex1.m1.5.6.2.cmml">)</mo></mrow></mrow><mo id="S2.Ex1.m1.5.6.1" xref="S2.Ex1.m1.5.6.1.cmml">=</mo><mrow id="S2.Ex1.m1.4.4" xref="S2.Ex1.m1.5.6.3.1.cmml"><mo id="S2.Ex1.m1.4.4.5" xref="S2.Ex1.m1.5.6.3.1.1.cmml">{</mo><mtable columnspacing="5pt" displaystyle="true" id="S2.Ex1.m1.4.4.4" rowspacing="0pt" xref="S2.Ex1.m1.5.6.3.1.cmml"><mtr id="S2.Ex1.m1.4.4.4a" xref="S2.Ex1.m1.5.6.3.1.cmml"><mtd class="ltx_align_left" columnalign="left" id="S2.Ex1.m1.4.4.4b" xref="S2.Ex1.m1.5.6.3.1.cmml"><mn id="S2.Ex1.m1.1.1.1.1.1.1" xref="S2.Ex1.m1.1.1.1.1.1.1.cmml">1</mn></mtd><mtd class="ltx_align_left" columnalign="left" id="S2.Ex1.m1.4.4.4c" xref="S2.Ex1.m1.5.6.3.1.cmml"><mrow id="S2.Ex1.m1.2.2.2.2.2.1" xref="S2.Ex1.m1.2.2.2.2.2.1.cmml"><mrow id="S2.Ex1.m1.2.2.2.2.2.1.3" xref="S2.Ex1.m1.2.2.2.2.2.1.3.cmml"><mrow id="S2.Ex1.m1.2.2.2.2.2.1.3.2" xref="S2.Ex1.m1.2.2.2.2.2.1.3.2c.cmml"><mtext id="S2.Ex1.m1.2.2.2.2.2.1.3.2a" xref="S2.Ex1.m1.2.2.2.2.2.1.3.2c.cmml">if </mtext><mtext id="S2.Ex1.m1.2.2.2.2.2.1.3.2b" xref="S2.Ex1.m1.2.2.2.2.2.1.3.2c.cmml">QualityScore</mtext></mrow><mo id="S2.Ex1.m1.2.2.2.2.2.1.3.1" xref="S2.Ex1.m1.2.2.2.2.2.1.3.1.cmml">⁢</mo><mrow id="S2.Ex1.m1.2.2.2.2.2.1.3.3.2" xref="S2.Ex1.m1.2.2.2.2.2.1.3.cmml"><mo id="S2.Ex1.m1.2.2.2.2.2.1.3.3.2.1" stretchy="false" xref="S2.Ex1.m1.2.2.2.2.2.1.3.cmml">(</mo><mi id="S2.Ex1.m1.2.2.2.2.2.1.1" xref="S2.Ex1.m1.2.2.2.2.2.1.1.cmml">I</mi><mo id="S2.Ex1.m1.2.2.2.2.2.1.3.3.2.2" stretchy="false" xref="S2.Ex1.m1.2.2.2.2.2.1.3.cmml">)</mo></mrow></mrow><mo id="S2.Ex1.m1.2.2.2.2.2.1.2" xref="S2.Ex1.m1.2.2.2.2.2.1.2.cmml">&gt;</mo><msub id="S2.Ex1.m1.2.2.2.2.2.1.4" xref="S2.Ex1.m1.2.2.2.2.2.1.4.cmml"><mi id="S2.Ex1.m1.2.2.2.2.2.1.4.2" xref="S2.Ex1.m1.2.2.2.2.2.1.4.2.cmml">T</mi><mtext id="S2.Ex1.m1.2.2.2.2.2.1.4.3" xref="S2.Ex1.m1.2.2.2.2.2.1.4.3a.cmml">IQA</mtext></msub></mrow></mtd></mtr><mtr id="S2.Ex1.m1.4.4.4d" xref="S2.Ex1.m1.5.6.3.1.cmml"><mtd class="ltx_align_left" columnalign="left" id="S2.Ex1.m1.4.4.4e" xref="S2.Ex1.m1.5.6.3.1.cmml"><mn id="S2.Ex1.m1.3.3.3.3.1.1" xref="S2.Ex1.m1.3.3.3.3.1.1.cmml">0</mn></mtd><mtd class="ltx_align_left" columnalign="left" id="S2.Ex1.m1.4.4.4f" xref="S2.Ex1.m1.5.6.3.1.cmml"><mtext id="S2.Ex1.m1.4.4.4.4.2.1" xref="S2.Ex1.m1.4.4.4.4.2.1a.cmml">otherwise</mtext></mtd></mtr></mtable></mrow></mrow><annotation-xml encoding="MathML-Content" id="S2.Ex1.m1.5b"><apply id="S2.Ex1.m1.5.6.cmml" xref="S2.Ex1.m1.5.6"><eq id="S2.Ex1.m1.5.6.1.cmml" xref="S2.Ex1.m1.5.6.1"></eq><apply id="S2.Ex1.m1.5.6.2.cmml" xref="S2.Ex1.m1.5.6.2"><times id="S2.Ex1.m1.5.6.2.1.cmml" xref="S2.Ex1.m1.5.6.2.1"></times><ci id="S2.Ex1.m1.5.6.2.2a.cmml" xref="S2.Ex1.m1.5.6.2.2"><mtext id="S2.Ex1.m1.5.6.2.2.cmml" xref="S2.Ex1.m1.5.6.2.2">SelectFrame</mtext></ci><ci id="S2.Ex1.m1.5.5.cmml" xref="S2.Ex1.m1.5.5">𝐼</ci></apply><apply id="S2.Ex1.m1.5.6.3.1.cmml" xref="S2.Ex1.m1.4.4"><csymbol cd="latexml" id="S2.Ex1.m1.5.6.3.1.1.cmml" xref="S2.Ex1.m1.4.4.5">cases</csymbol><cn id="S2.Ex1.m1.1.1.1.1.1.1.cmml" type="integer" xref="S2.Ex1.m1.1.1.1.1.1.1">1</cn><apply id="S2.Ex1.m1.2.2.2.2.2.1.cmml" xref="S2.Ex1.m1.2.2.2.2.2.1"><gt id="S2.Ex1.m1.2.2.2.2.2.1.2.cmml" xref="S2.Ex1.m1.2.2.2.2.2.1.2"></gt><apply id="S2.Ex1.m1.2.2.2.2.2.1.3.cmml" xref="S2.Ex1.m1.2.2.2.2.2.1.3"><times id="S2.Ex1.m1.2.2.2.2.2.1.3.1.cmml" xref="S2.Ex1.m1.2.2.2.2.2.1.3.1"></times><ci id="S2.Ex1.m1.2.2.2.2.2.1.3.2c.cmml" xref="S2.Ex1.m1.2.2.2.2.2.1.3.2"><mrow id="S2.Ex1.m1.2.2.2.2.2.1.3.2.cmml" xref="S2.Ex1.m1.2.2.2.2.2.1.3.2"><mtext id="S2.Ex1.m1.2.2.2.2.2.1.3.2a.cmml" xref="S2.Ex1.m1.2.2.2.2.2.1.3.2">if </mtext><mtext id="S2.Ex1.m1.2.2.2.2.2.1.3.2b.cmml" xref="S2.Ex1.m1.2.2.2.2.2.1.3.2">QualityScore</mtext></mrow></ci><ci id="S2.Ex1.m1.2.2.2.2.2.1.1.cmml" xref="S2.Ex1.m1.2.2.2.2.2.1.1">𝐼</ci></apply><apply id="S2.Ex1.m1.2.2.2.2.2.1.4.cmml" xref="S2.Ex1.m1.2.2.2.2.2.1.4"><csymbol cd="ambiguous" id="S2.Ex1.m1.2.2.2.2.2.1.4.1.cmml" xref="S2.Ex1.m1.2.2.2.2.2.1.4">subscript</csymbol><ci id="S2.Ex1.m1.2.2.2.2.2.1.4.2.cmml" xref="S2.Ex1.m1.2.2.2.2.2.1.4.2">𝑇</ci><ci id="S2.Ex1.m1.2.2.2.2.2.1.4.3a.cmml" xref="S2.Ex1.m1.2.2.2.2.2.1.4.3"><mtext id="S2.Ex1.m1.2.2.2.2.2.1.4.3.cmml" mathsize="70%" xref="S2.Ex1.m1.2.2.2.2.2.1.4.3">IQA</mtext></ci></apply></apply><cn id="S2.Ex1.m1.3.3.3.3.1.1.cmml" type="integer" xref="S2.Ex1.m1.3.3.3.3.1.1">0</cn><ci id="S2.Ex1.m1.4.4.4.4.2.1a.cmml" xref="S2.Ex1.m1.4.4.4.4.2.1"><mtext id="S2.Ex1.m1.4.4.4.4.2.1.cmml" xref="S2.Ex1.m1.4.4.4.4.2.1">otherwise</mtext></ci></apply></apply></annotation-xml><annotation encoding="application/x-tex" id="S2.Ex1.m1.5c">\text{SelectFrame}(I)=\begin{cases}1&amp;\text{if }\text{QualityScore}(I)&gt;T_{\text% {IQA}}\\ 0&amp;\text{otherwise}\end{cases}</annotation><annotation encoding="application/x-llamapun" id="S2.Ex1.m1.5d">SelectFrame ( italic_I ) = { start_ROW start_CELL 1 end_CELL start_CELL if roman_QualityScore ( italic_I ) &gt; italic_T start_POSTSUBSCRIPT IQA end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL 0 end_CELL start_CELL otherwise end_CELL end_ROW</annotation></semantics></math></td> <td class="ltx_eqn_cell ltx_eqn_center_padright"></td> </tr></tbody> </table> </div> </li> <li class="ltx_item" id="S2.I1.i2" style="list-style-type:none;"> <span class="ltx_tag ltx_tag_item">2.</span> <div class="ltx_para" id="S2.I1.i2.p1"> <p class="ltx_p" id="S2.I1.i2.p1.2"><span class="ltx_text ltx_font_bold" id="S2.I1.i2.p1.2.1">R_Channel</span>: A heuristic filter (<span class="ltx_text ltx_font_typewriter" id="S2.I1.i2.p1.2.2">frameSelect/rchannel.py</span>) that uses the mean intensity of the red channel to select frames. If the red channel average intensity <math alttext="R_{\text{mean}}" class="ltx_Math" display="inline" id="S2.I1.i2.p1.1.m1.1"><semantics id="S2.I1.i2.p1.1.m1.1a"><msub id="S2.I1.i2.p1.1.m1.1.1" xref="S2.I1.i2.p1.1.m1.1.1.cmml"><mi id="S2.I1.i2.p1.1.m1.1.1.2" xref="S2.I1.i2.p1.1.m1.1.1.2.cmml">R</mi><mtext id="S2.I1.i2.p1.1.m1.1.1.3" xref="S2.I1.i2.p1.1.m1.1.1.3a.cmml">mean</mtext></msub><annotation-xml encoding="MathML-Content" id="S2.I1.i2.p1.1.m1.1b"><apply id="S2.I1.i2.p1.1.m1.1.1.cmml" xref="S2.I1.i2.p1.1.m1.1.1"><csymbol cd="ambiguous" id="S2.I1.i2.p1.1.m1.1.1.1.cmml" xref="S2.I1.i2.p1.1.m1.1.1">subscript</csymbol><ci id="S2.I1.i2.p1.1.m1.1.1.2.cmml" xref="S2.I1.i2.p1.1.m1.1.1.2">𝑅</ci><ci id="S2.I1.i2.p1.1.m1.1.1.3a.cmml" xref="S2.I1.i2.p1.1.m1.1.1.3"><mtext id="S2.I1.i2.p1.1.m1.1.1.3.cmml" mathsize="70%" xref="S2.I1.i2.p1.1.m1.1.1.3">mean</mtext></ci></apply></annotation-xml><annotation encoding="application/x-tex" id="S2.I1.i2.p1.1.m1.1c">R_{\text{mean}}</annotation><annotation encoding="application/x-llamapun" id="S2.I1.i2.p1.1.m1.1d">italic_R start_POSTSUBSCRIPT mean end_POSTSUBSCRIPT</annotation></semantics></math> is above a user-specified threshold <math alttext="T_{R}" class="ltx_Math" display="inline" id="S2.I1.i2.p1.2.m2.1"><semantics id="S2.I1.i2.p1.2.m2.1a"><msub id="S2.I1.i2.p1.2.m2.1.1" xref="S2.I1.i2.p1.2.m2.1.1.cmml"><mi id="S2.I1.i2.p1.2.m2.1.1.2" xref="S2.I1.i2.p1.2.m2.1.1.2.cmml">T</mi><mi id="S2.I1.i2.p1.2.m2.1.1.3" xref="S2.I1.i2.p1.2.m2.1.1.3.cmml">R</mi></msub><annotation-xml encoding="MathML-Content" id="S2.I1.i2.p1.2.m2.1b"><apply id="S2.I1.i2.p1.2.m2.1.1.cmml" xref="S2.I1.i2.p1.2.m2.1.1"><csymbol cd="ambiguous" id="S2.I1.i2.p1.2.m2.1.1.1.cmml" xref="S2.I1.i2.p1.2.m2.1.1">subscript</csymbol><ci id="S2.I1.i2.p1.2.m2.1.1.2.cmml" xref="S2.I1.i2.p1.2.m2.1.1.2">𝑇</ci><ci id="S2.I1.i2.p1.2.m2.1.1.3.cmml" xref="S2.I1.i2.p1.2.m2.1.1.3">𝑅</ci></apply></annotation-xml><annotation encoding="application/x-tex" id="S2.I1.i2.p1.2.m2.1c">T_{R}</annotation><annotation encoding="application/x-llamapun" id="S2.I1.i2.p1.2.m2.1d">italic_T start_POSTSUBSCRIPT italic_R end_POSTSUBSCRIPT</annotation></semantics></math>, the frame is considered to be from the inside environment and not an out-of-patient shot. Formally:</p> <table class="ltx_equation ltx_eqn_table" id="S2.Ex2"> <tbody><tr class="ltx_equation ltx_eqn_row ltx_align_baseline"> <td class="ltx_eqn_cell ltx_eqn_center_padleft"></td> <td class="ltx_eqn_cell ltx_align_center"><math alttext="\text{SelectFrame}(I)=\begin{cases}1&amp;\text{if }R_{\text{mean}}(I)&gt;T_{R}\\ 0&amp;\text{otherwise}\end{cases}" class="ltx_Math" display="block" id="S2.Ex2.m1.5"><semantics id="S2.Ex2.m1.5a"><mrow id="S2.Ex2.m1.5.6" xref="S2.Ex2.m1.5.6.cmml"><mrow id="S2.Ex2.m1.5.6.2" xref="S2.Ex2.m1.5.6.2.cmml"><mtext id="S2.Ex2.m1.5.6.2.2" xref="S2.Ex2.m1.5.6.2.2a.cmml">SelectFrame</mtext><mo id="S2.Ex2.m1.5.6.2.1" xref="S2.Ex2.m1.5.6.2.1.cmml">⁢</mo><mrow id="S2.Ex2.m1.5.6.2.3.2" xref="S2.Ex2.m1.5.6.2.cmml"><mo id="S2.Ex2.m1.5.6.2.3.2.1" stretchy="false" xref="S2.Ex2.m1.5.6.2.cmml">(</mo><mi id="S2.Ex2.m1.5.5" xref="S2.Ex2.m1.5.5.cmml">I</mi><mo id="S2.Ex2.m1.5.6.2.3.2.2" stretchy="false" xref="S2.Ex2.m1.5.6.2.cmml">)</mo></mrow></mrow><mo id="S2.Ex2.m1.5.6.1" xref="S2.Ex2.m1.5.6.1.cmml">=</mo><mrow id="S2.Ex2.m1.4.4" xref="S2.Ex2.m1.5.6.3.1.cmml"><mo id="S2.Ex2.m1.4.4.5" xref="S2.Ex2.m1.5.6.3.1.1.cmml">{</mo><mtable columnspacing="5pt" displaystyle="true" id="S2.Ex2.m1.4.4.4" rowspacing="0pt" xref="S2.Ex2.m1.5.6.3.1.cmml"><mtr id="S2.Ex2.m1.4.4.4a" xref="S2.Ex2.m1.5.6.3.1.cmml"><mtd class="ltx_align_left" columnalign="left" id="S2.Ex2.m1.4.4.4b" xref="S2.Ex2.m1.5.6.3.1.cmml"><mn id="S2.Ex2.m1.1.1.1.1.1.1" xref="S2.Ex2.m1.1.1.1.1.1.1.cmml">1</mn></mtd><mtd class="ltx_align_left" columnalign="left" id="S2.Ex2.m1.4.4.4c" xref="S2.Ex2.m1.5.6.3.1.cmml"><mrow id="S2.Ex2.m1.2.2.2.2.2.1" xref="S2.Ex2.m1.2.2.2.2.2.1.cmml"><mrow id="S2.Ex2.m1.2.2.2.2.2.1.3" xref="S2.Ex2.m1.2.2.2.2.2.1.3.cmml"><mtext id="S2.Ex2.m1.2.2.2.2.2.1.3.2" xref="S2.Ex2.m1.2.2.2.2.2.1.3.2a.cmml">if </mtext><mo id="S2.Ex2.m1.2.2.2.2.2.1.3.1" xref="S2.Ex2.m1.2.2.2.2.2.1.3.1.cmml">⁢</mo><msub id="S2.Ex2.m1.2.2.2.2.2.1.3.3" xref="S2.Ex2.m1.2.2.2.2.2.1.3.3.cmml"><mi id="S2.Ex2.m1.2.2.2.2.2.1.3.3.2" xref="S2.Ex2.m1.2.2.2.2.2.1.3.3.2.cmml">R</mi><mtext id="S2.Ex2.m1.2.2.2.2.2.1.3.3.3" xref="S2.Ex2.m1.2.2.2.2.2.1.3.3.3a.cmml">mean</mtext></msub><mo id="S2.Ex2.m1.2.2.2.2.2.1.3.1a" xref="S2.Ex2.m1.2.2.2.2.2.1.3.1.cmml">⁢</mo><mrow id="S2.Ex2.m1.2.2.2.2.2.1.3.4.2" xref="S2.Ex2.m1.2.2.2.2.2.1.3.cmml"><mo id="S2.Ex2.m1.2.2.2.2.2.1.3.4.2.1" stretchy="false" xref="S2.Ex2.m1.2.2.2.2.2.1.3.cmml">(</mo><mi id="S2.Ex2.m1.2.2.2.2.2.1.1" xref="S2.Ex2.m1.2.2.2.2.2.1.1.cmml">I</mi><mo id="S2.Ex2.m1.2.2.2.2.2.1.3.4.2.2" stretchy="false" xref="S2.Ex2.m1.2.2.2.2.2.1.3.cmml">)</mo></mrow></mrow><mo id="S2.Ex2.m1.2.2.2.2.2.1.2" xref="S2.Ex2.m1.2.2.2.2.2.1.2.cmml">&gt;</mo><msub id="S2.Ex2.m1.2.2.2.2.2.1.4" xref="S2.Ex2.m1.2.2.2.2.2.1.4.cmml"><mi id="S2.Ex2.m1.2.2.2.2.2.1.4.2" xref="S2.Ex2.m1.2.2.2.2.2.1.4.2.cmml">T</mi><mi id="S2.Ex2.m1.2.2.2.2.2.1.4.3" xref="S2.Ex2.m1.2.2.2.2.2.1.4.3.cmml">R</mi></msub></mrow></mtd></mtr><mtr id="S2.Ex2.m1.4.4.4d" xref="S2.Ex2.m1.5.6.3.1.cmml"><mtd class="ltx_align_left" columnalign="left" id="S2.Ex2.m1.4.4.4e" xref="S2.Ex2.m1.5.6.3.1.cmml"><mn id="S2.Ex2.m1.3.3.3.3.1.1" xref="S2.Ex2.m1.3.3.3.3.1.1.cmml">0</mn></mtd><mtd class="ltx_align_left" columnalign="left" id="S2.Ex2.m1.4.4.4f" xref="S2.Ex2.m1.5.6.3.1.cmml"><mtext id="S2.Ex2.m1.4.4.4.4.2.1" xref="S2.Ex2.m1.4.4.4.4.2.1a.cmml">otherwise</mtext></mtd></mtr></mtable></mrow></mrow><annotation-xml encoding="MathML-Content" id="S2.Ex2.m1.5b"><apply id="S2.Ex2.m1.5.6.cmml" xref="S2.Ex2.m1.5.6"><eq id="S2.Ex2.m1.5.6.1.cmml" xref="S2.Ex2.m1.5.6.1"></eq><apply id="S2.Ex2.m1.5.6.2.cmml" xref="S2.Ex2.m1.5.6.2"><times id="S2.Ex2.m1.5.6.2.1.cmml" xref="S2.Ex2.m1.5.6.2.1"></times><ci id="S2.Ex2.m1.5.6.2.2a.cmml" xref="S2.Ex2.m1.5.6.2.2"><mtext id="S2.Ex2.m1.5.6.2.2.cmml" xref="S2.Ex2.m1.5.6.2.2">SelectFrame</mtext></ci><ci id="S2.Ex2.m1.5.5.cmml" xref="S2.Ex2.m1.5.5">𝐼</ci></apply><apply id="S2.Ex2.m1.5.6.3.1.cmml" xref="S2.Ex2.m1.4.4"><csymbol cd="latexml" id="S2.Ex2.m1.5.6.3.1.1.cmml" xref="S2.Ex2.m1.4.4.5">cases</csymbol><cn id="S2.Ex2.m1.1.1.1.1.1.1.cmml" type="integer" xref="S2.Ex2.m1.1.1.1.1.1.1">1</cn><apply id="S2.Ex2.m1.2.2.2.2.2.1.cmml" xref="S2.Ex2.m1.2.2.2.2.2.1"><gt id="S2.Ex2.m1.2.2.2.2.2.1.2.cmml" xref="S2.Ex2.m1.2.2.2.2.2.1.2"></gt><apply id="S2.Ex2.m1.2.2.2.2.2.1.3.cmml" xref="S2.Ex2.m1.2.2.2.2.2.1.3"><times id="S2.Ex2.m1.2.2.2.2.2.1.3.1.cmml" xref="S2.Ex2.m1.2.2.2.2.2.1.3.1"></times><ci id="S2.Ex2.m1.2.2.2.2.2.1.3.2a.cmml" xref="S2.Ex2.m1.2.2.2.2.2.1.3.2"><mtext id="S2.Ex2.m1.2.2.2.2.2.1.3.2.cmml" xref="S2.Ex2.m1.2.2.2.2.2.1.3.2">if </mtext></ci><apply id="S2.Ex2.m1.2.2.2.2.2.1.3.3.cmml" xref="S2.Ex2.m1.2.2.2.2.2.1.3.3"><csymbol cd="ambiguous" id="S2.Ex2.m1.2.2.2.2.2.1.3.3.1.cmml" xref="S2.Ex2.m1.2.2.2.2.2.1.3.3">subscript</csymbol><ci id="S2.Ex2.m1.2.2.2.2.2.1.3.3.2.cmml" xref="S2.Ex2.m1.2.2.2.2.2.1.3.3.2">𝑅</ci><ci id="S2.Ex2.m1.2.2.2.2.2.1.3.3.3a.cmml" xref="S2.Ex2.m1.2.2.2.2.2.1.3.3.3"><mtext id="S2.Ex2.m1.2.2.2.2.2.1.3.3.3.cmml" mathsize="70%" xref="S2.Ex2.m1.2.2.2.2.2.1.3.3.3">mean</mtext></ci></apply><ci id="S2.Ex2.m1.2.2.2.2.2.1.1.cmml" xref="S2.Ex2.m1.2.2.2.2.2.1.1">𝐼</ci></apply><apply id="S2.Ex2.m1.2.2.2.2.2.1.4.cmml" xref="S2.Ex2.m1.2.2.2.2.2.1.4"><csymbol cd="ambiguous" id="S2.Ex2.m1.2.2.2.2.2.1.4.1.cmml" xref="S2.Ex2.m1.2.2.2.2.2.1.4">subscript</csymbol><ci id="S2.Ex2.m1.2.2.2.2.2.1.4.2.cmml" xref="S2.Ex2.m1.2.2.2.2.2.1.4.2">𝑇</ci><ci id="S2.Ex2.m1.2.2.2.2.2.1.4.3.cmml" xref="S2.Ex2.m1.2.2.2.2.2.1.4.3">𝑅</ci></apply></apply><cn id="S2.Ex2.m1.3.3.3.3.1.1.cmml" type="integer" xref="S2.Ex2.m1.3.3.3.3.1.1">0</cn><ci id="S2.Ex2.m1.4.4.4.4.2.1a.cmml" xref="S2.Ex2.m1.4.4.4.4.2.1"><mtext id="S2.Ex2.m1.4.4.4.4.2.1.cmml" xref="S2.Ex2.m1.4.4.4.4.2.1">otherwise</mtext></ci></apply></apply></annotation-xml><annotation encoding="application/x-tex" id="S2.Ex2.m1.5c">\text{SelectFrame}(I)=\begin{cases}1&amp;\text{if }R_{\text{mean}}(I)&gt;T_{R}\\ 0&amp;\text{otherwise}\end{cases}</annotation><annotation encoding="application/x-llamapun" id="S2.Ex2.m1.5d">SelectFrame ( italic_I ) = { start_ROW start_CELL 1 end_CELL start_CELL if italic_R start_POSTSUBSCRIPT mean end_POSTSUBSCRIPT ( italic_I ) &gt; italic_T start_POSTSUBSCRIPT italic_R end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL 0 end_CELL start_CELL otherwise end_CELL end_ROW</annotation></semantics></math></td> <td class="ltx_eqn_cell ltx_eqn_center_padright"></td> </tr></tbody> </table> </div> </li> </ol> </div> <div class="ltx_para" id="S2.SS1.p3"> <p class="ltx_p" id="S2.SS1.p3.1">At the end of the selection process, a curated list of frames is produced, and a temporary folder is created to store these selected frames. This step ensures that downstream operations only work on frames of adequate quality and relevance.</p> </div> </section> <section class="ltx_subsection" id="S2.SS2"> <h3 class="ltx_title ltx_title_subsection"> <span class="ltx_tag ltx_tag_subsection">2.2 </span>Depth Estimation</h3> <div class="ltx_para" id="S2.SS2.p1"> <p class="ltx_p" id="S2.SS2.p1.1">Depth estimation is crucial for 3D reconstruction. The pipeline supports multiple depth estimation algorithms, with configurations selected through <span class="ltx_text ltx_font_typewriter" id="S2.SS2.p1.1.1">CONFIG.yaml</span>. The current codebase implements:</p> </div> <div class="ltx_para" id="S2.SS2.p2"> <ul class="ltx_itemize" id="S2.I2"> <li class="ltx_item" id="S2.I2.i1" style="list-style-type:none;"> <span class="ltx_tag ltx_tag_item">•</span> <div class="ltx_para" id="S2.I2.i1.p1"> <p class="ltx_p" id="S2.I2.i1.p1.2"><span class="ltx_text ltx_font_bold" id="S2.I2.i1.p1.2.1">Depth-Anything:v2</span> <cite class="ltx_cite ltx_citemacro_cite">[<a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#bib.bib19" title="">19</a>]</cite>: This serves as the primary depth estimation method. The code (in <span class="ltx_text ltx_font_typewriter" id="S2.I2.i1.p1.2.2">depthEstimate/Depth-Anything-V2</span>) runs a command-line interface to generate depth maps for each selected frame. Each frame <math alttext="I" class="ltx_Math" display="inline" id="S2.I2.i1.p1.1.m1.1"><semantics id="S2.I2.i1.p1.1.m1.1a"><mi id="S2.I2.i1.p1.1.m1.1.1" xref="S2.I2.i1.p1.1.m1.1.1.cmml">I</mi><annotation-xml encoding="MathML-Content" id="S2.I2.i1.p1.1.m1.1b"><ci id="S2.I2.i1.p1.1.m1.1.1.cmml" xref="S2.I2.i1.p1.1.m1.1.1">𝐼</ci></annotation-xml><annotation encoding="application/x-tex" id="S2.I2.i1.p1.1.m1.1c">I</annotation><annotation encoding="application/x-llamapun" id="S2.I2.i1.p1.1.m1.1d">italic_I</annotation></semantics></math> is mapped to a depth image <math alttext="D" class="ltx_Math" display="inline" id="S2.I2.i1.p1.2.m2.1"><semantics id="S2.I2.i1.p1.2.m2.1a"><mi id="S2.I2.i1.p1.2.m2.1.1" xref="S2.I2.i1.p1.2.m2.1.1.cmml">D</mi><annotation-xml encoding="MathML-Content" id="S2.I2.i1.p1.2.m2.1b"><ci id="S2.I2.i1.p1.2.m2.1.1.cmml" xref="S2.I2.i1.p1.2.m2.1.1">𝐷</ci></annotation-xml><annotation encoding="application/x-tex" id="S2.I2.i1.p1.2.m2.1c">D</annotation><annotation encoding="application/x-llamapun" id="S2.I2.i1.p1.2.m2.1d">italic_D</annotation></semantics></math> through:</p> <table class="ltx_equation ltx_eqn_table" id="S2.Ex3"> <tbody><tr class="ltx_equation ltx_eqn_row ltx_align_baseline"> <td class="ltx_eqn_cell ltx_eqn_center_padleft"></td> <td class="ltx_eqn_cell ltx_align_center"><math alttext="D=f_{\text{Depth-Anything:v2}}(I;\theta)" class="ltx_Math" display="block" id="S2.Ex3.m1.2"><semantics id="S2.Ex3.m1.2a"><mrow id="S2.Ex3.m1.2.3" xref="S2.Ex3.m1.2.3.cmml"><mi id="S2.Ex3.m1.2.3.2" xref="S2.Ex3.m1.2.3.2.cmml">D</mi><mo id="S2.Ex3.m1.2.3.1" xref="S2.Ex3.m1.2.3.1.cmml">=</mo><mrow id="S2.Ex3.m1.2.3.3" xref="S2.Ex3.m1.2.3.3.cmml"><msub id="S2.Ex3.m1.2.3.3.2" xref="S2.Ex3.m1.2.3.3.2.cmml"><mi id="S2.Ex3.m1.2.3.3.2.2" xref="S2.Ex3.m1.2.3.3.2.2.cmml">f</mi><mtext id="S2.Ex3.m1.2.3.3.2.3" xref="S2.Ex3.m1.2.3.3.2.3a.cmml">Depth-Anything:v2</mtext></msub><mo id="S2.Ex3.m1.2.3.3.1" xref="S2.Ex3.m1.2.3.3.1.cmml">⁢</mo><mrow id="S2.Ex3.m1.2.3.3.3.2" xref="S2.Ex3.m1.2.3.3.3.1.cmml"><mo id="S2.Ex3.m1.2.3.3.3.2.1" stretchy="false" xref="S2.Ex3.m1.2.3.3.3.1.cmml">(</mo><mi id="S2.Ex3.m1.1.1" xref="S2.Ex3.m1.1.1.cmml">I</mi><mo id="S2.Ex3.m1.2.3.3.3.2.2" xref="S2.Ex3.m1.2.3.3.3.1.cmml">;</mo><mi id="S2.Ex3.m1.2.2" xref="S2.Ex3.m1.2.2.cmml">θ</mi><mo id="S2.Ex3.m1.2.3.3.3.2.3" stretchy="false" xref="S2.Ex3.m1.2.3.3.3.1.cmml">)</mo></mrow></mrow></mrow><annotation-xml encoding="MathML-Content" id="S2.Ex3.m1.2b"><apply id="S2.Ex3.m1.2.3.cmml" xref="S2.Ex3.m1.2.3"><eq id="S2.Ex3.m1.2.3.1.cmml" xref="S2.Ex3.m1.2.3.1"></eq><ci id="S2.Ex3.m1.2.3.2.cmml" xref="S2.Ex3.m1.2.3.2">𝐷</ci><apply id="S2.Ex3.m1.2.3.3.cmml" xref="S2.Ex3.m1.2.3.3"><times id="S2.Ex3.m1.2.3.3.1.cmml" xref="S2.Ex3.m1.2.3.3.1"></times><apply id="S2.Ex3.m1.2.3.3.2.cmml" xref="S2.Ex3.m1.2.3.3.2"><csymbol cd="ambiguous" id="S2.Ex3.m1.2.3.3.2.1.cmml" xref="S2.Ex3.m1.2.3.3.2">subscript</csymbol><ci id="S2.Ex3.m1.2.3.3.2.2.cmml" xref="S2.Ex3.m1.2.3.3.2.2">𝑓</ci><ci id="S2.Ex3.m1.2.3.3.2.3a.cmml" xref="S2.Ex3.m1.2.3.3.2.3"><mtext id="S2.Ex3.m1.2.3.3.2.3.cmml" mathsize="70%" xref="S2.Ex3.m1.2.3.3.2.3">Depth-Anything:v2</mtext></ci></apply><list id="S2.Ex3.m1.2.3.3.3.1.cmml" xref="S2.Ex3.m1.2.3.3.3.2"><ci id="S2.Ex3.m1.1.1.cmml" xref="S2.Ex3.m1.1.1">𝐼</ci><ci id="S2.Ex3.m1.2.2.cmml" xref="S2.Ex3.m1.2.2">𝜃</ci></list></apply></apply></annotation-xml><annotation encoding="application/x-tex" id="S2.Ex3.m1.2c">D=f_{\text{Depth-Anything:v2}}(I;\theta)</annotation><annotation encoding="application/x-llamapun" id="S2.Ex3.m1.2d">italic_D = italic_f start_POSTSUBSCRIPT Depth-Anything:v2 end_POSTSUBSCRIPT ( italic_I ; italic_θ )</annotation></semantics></math></td> <td class="ltx_eqn_cell ltx_eqn_center_padright"></td> </tr></tbody> </table> <p class="ltx_p" id="S2.I2.i1.p1.3">Where <math alttext="\theta" class="ltx_Math" display="inline" id="S2.I2.i1.p1.3.m1.1"><semantics id="S2.I2.i1.p1.3.m1.1a"><mi id="S2.I2.i1.p1.3.m1.1.1" xref="S2.I2.i1.p1.3.m1.1.1.cmml">θ</mi><annotation-xml encoding="MathML-Content" id="S2.I2.i1.p1.3.m1.1b"><ci id="S2.I2.i1.p1.3.m1.1.1.cmml" xref="S2.I2.i1.p1.3.m1.1.1">𝜃</ci></annotation-xml><annotation encoding="application/x-tex" id="S2.I2.i1.p1.3.m1.1c">\theta</annotation><annotation encoding="application/x-llamapun" id="S2.I2.i1.p1.3.m1.1d">italic_θ</annotation></semantics></math> are the pre-trained model parameters.</p> </div> </li> <li class="ltx_item" id="S2.I2.i2" style="list-style-type:none;"> <span class="ltx_tag ltx_tag_item">•</span> <div class="ltx_para" id="S2.I2.i2.p1"> <p class="ltx_p" id="S2.I2.i2.p1.1"><span class="ltx_text ltx_font_bold" id="S2.I2.i2.p1.1.1">EndoDAC</span> <cite class="ltx_cite ltx_citemacro_cite">[<a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#bib.bib21" title="">21</a>]</cite>: A state-of-the-art endoscopic depth estimation model trained on the SCARED dataset. Implemented in <span class="ltx_text ltx_font_typewriter" id="S2.I2.i2.p1.1.2">depthEstimate/EndoDAC</span>, it produces disparity maps that are converted to depth using camera parameters. Postprocessing steps are discussed later.</p> </div> <figure class="ltx_figure" id="S2.F1"><img alt="Refer to caption" class="ltx_graphics ltx_centering ltx_img_square" height="411" id="S2.F1.g1" src="extracted/6104631/figures/COMPARISON.png" width="419"/> <figcaption class="ltx_caption ltx_centering"><span class="ltx_tag ltx_tag_figure">Figure 1: </span>Visualization comparing Depth-Anything V2 and EndoDAC results on a sample frame.[The first frame of test22 from Hamlyn.]</figcaption> </figure> <figure class="ltx_figure" id="S2.F2"><img alt="Refer to caption" class="ltx_graphics ltx_centering ltx_img_square" height="411" id="S2.F2.g1" src="extracted/6104631/figures/compare2.png" width="419"/> <figcaption class="ltx_caption ltx_centering"><span class="ltx_tag ltx_tag_figure">Figure 2: </span>Visualization comparing Depth-Anything V2 and EndoDAC results on a sample frame.[The first frame of rectified01 from Hamlyn.]</figcaption> </figure> </li> </ul> </div> <div class="ltx_para" id="S2.SS2.p3"> <p class="ltx_p" id="S2.SS2.p3.1">After prediction, a universal mask is applied to remove black borders or invalid pixels from all depth maps. This mask is generated by comparing pixel intensities across all input frames (see the <span class="ltx_text ltx_font_typewriter" id="S2.SS2.p3.1.1">generate_universal_mask</span> function in the ICP code). Additionally, post-processing steps can handle the normalization and scaling of depth maps.</p> </div> </section> <section class="ltx_subsection" id="S2.SS3"> <h3 class="ltx_title ltx_title_subsection"> <span class="ltx_tag ltx_tag_subsection">2.3 </span>3D Reconstruction</h3> <div class="ltx_para" id="S2.SS3.p1"> <p class="ltx_p" id="S2.SS3.p1.1">The final step merges depth information from multiple frames to form a unified 3D point cloud. The pipeline implements an Iterative Closest Point (ICP)<cite class="ltx_cite ltx_citemacro_cite">[<a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#bib.bib22" title="">22</a>, <a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#bib.bib23" title="">23</a>]</cite> based reconstruction method. Two modes are supported:</p> </div> <div class="ltx_para" id="S2.SS3.p2"> <ul class="ltx_itemize" id="S2.I3"> <li class="ltx_item" id="S2.I3.i1" style="list-style-type:none;"> <span class="ltx_tag ltx_tag_item">•</span> <div class="ltx_para" id="S2.I3.i1.p1"> <p class="ltx_p" id="S2.I3.i1.p1.1"><span class="ltx_text ltx_font_bold" id="S2.I3.i1.p1.1.1">ICP with Global Alignment</span>: Each new frame’s depth map, after conversion to a point cloud, is aligned to the global map. The transformation <math alttext="T" class="ltx_Math" display="inline" id="S2.I3.i1.p1.1.m1.1"><semantics id="S2.I3.i1.p1.1.m1.1a"><mi id="S2.I3.i1.p1.1.m1.1.1" xref="S2.I3.i1.p1.1.m1.1.1.cmml">T</mi><annotation-xml encoding="MathML-Content" id="S2.I3.i1.p1.1.m1.1b"><ci id="S2.I3.i1.p1.1.m1.1.1.cmml" xref="S2.I3.i1.p1.1.m1.1.1">𝑇</ci></annotation-xml><annotation encoding="application/x-tex" id="S2.I3.i1.p1.1.m1.1c">T</annotation><annotation encoding="application/x-llamapun" id="S2.I3.i1.p1.1.m1.1d">italic_T</annotation></semantics></math> that minimizes point-to-point distances is estimated iteratively:</p> <table class="ltx_equation ltx_eqn_table" id="S2.Ex4"> <tbody><tr class="ltx_equation ltx_eqn_row ltx_align_baseline"> <td class="ltx_eqn_cell ltx_eqn_center_padleft"></td> <td class="ltx_eqn_cell ltx_align_center"><math alttext="\min_{R,t}\sum_{i}\|R\mathbf{x}^{B}_{i}+t-\mathbf{x}^{A}_{\text{closest}(i)}\|% ^{2}" class="ltx_Math" display="block" id="S2.Ex4.m1.4"><semantics id="S2.Ex4.m1.4a"><mrow id="S2.Ex4.m1.4.4" xref="S2.Ex4.m1.4.4.cmml"><munder id="S2.Ex4.m1.4.4.3" xref="S2.Ex4.m1.4.4.3.cmml"><mi id="S2.Ex4.m1.4.4.3.2" xref="S2.Ex4.m1.4.4.3.2.cmml">min</mi><mrow id="S2.Ex4.m1.2.2.2.4" xref="S2.Ex4.m1.2.2.2.3.cmml"><mi id="S2.Ex4.m1.1.1.1.1" xref="S2.Ex4.m1.1.1.1.1.cmml">R</mi><mo id="S2.Ex4.m1.2.2.2.4.1" xref="S2.Ex4.m1.2.2.2.3.cmml">,</mo><mi id="S2.Ex4.m1.2.2.2.2" xref="S2.Ex4.m1.2.2.2.2.cmml">t</mi></mrow></munder><mo id="S2.Ex4.m1.4.4.2" xref="S2.Ex4.m1.4.4.2.cmml">⁢</mo><mrow id="S2.Ex4.m1.4.4.1" xref="S2.Ex4.m1.4.4.1.cmml"><munder id="S2.Ex4.m1.4.4.1.2" xref="S2.Ex4.m1.4.4.1.2.cmml"><mo id="S2.Ex4.m1.4.4.1.2.2" movablelimits="false" rspace="0em" xref="S2.Ex4.m1.4.4.1.2.2.cmml">∑</mo><mi id="S2.Ex4.m1.4.4.1.2.3" xref="S2.Ex4.m1.4.4.1.2.3.cmml">i</mi></munder><msup id="S2.Ex4.m1.4.4.1.1" xref="S2.Ex4.m1.4.4.1.1.cmml"><mrow id="S2.Ex4.m1.4.4.1.1.1.1" xref="S2.Ex4.m1.4.4.1.1.1.2.cmml"><mo id="S2.Ex4.m1.4.4.1.1.1.1.2" stretchy="false" xref="S2.Ex4.m1.4.4.1.1.1.2.1.cmml">‖</mo><mrow id="S2.Ex4.m1.4.4.1.1.1.1.1" xref="S2.Ex4.m1.4.4.1.1.1.1.1.cmml"><mrow id="S2.Ex4.m1.4.4.1.1.1.1.1.2" xref="S2.Ex4.m1.4.4.1.1.1.1.1.2.cmml"><mrow id="S2.Ex4.m1.4.4.1.1.1.1.1.2.2" xref="S2.Ex4.m1.4.4.1.1.1.1.1.2.2.cmml"><mi id="S2.Ex4.m1.4.4.1.1.1.1.1.2.2.2" xref="S2.Ex4.m1.4.4.1.1.1.1.1.2.2.2.cmml">R</mi><mo id="S2.Ex4.m1.4.4.1.1.1.1.1.2.2.1" xref="S2.Ex4.m1.4.4.1.1.1.1.1.2.2.1.cmml">⁢</mo><msubsup id="S2.Ex4.m1.4.4.1.1.1.1.1.2.2.3" xref="S2.Ex4.m1.4.4.1.1.1.1.1.2.2.3.cmml"><mi id="S2.Ex4.m1.4.4.1.1.1.1.1.2.2.3.2.2" xref="S2.Ex4.m1.4.4.1.1.1.1.1.2.2.3.2.2.cmml">𝐱</mi><mi id="S2.Ex4.m1.4.4.1.1.1.1.1.2.2.3.3" xref="S2.Ex4.m1.4.4.1.1.1.1.1.2.2.3.3.cmml">i</mi><mi id="S2.Ex4.m1.4.4.1.1.1.1.1.2.2.3.2.3" xref="S2.Ex4.m1.4.4.1.1.1.1.1.2.2.3.2.3.cmml">B</mi></msubsup></mrow><mo id="S2.Ex4.m1.4.4.1.1.1.1.1.2.1" xref="S2.Ex4.m1.4.4.1.1.1.1.1.2.1.cmml">+</mo><mi id="S2.Ex4.m1.4.4.1.1.1.1.1.2.3" xref="S2.Ex4.m1.4.4.1.1.1.1.1.2.3.cmml">t</mi></mrow><mo id="S2.Ex4.m1.4.4.1.1.1.1.1.1" xref="S2.Ex4.m1.4.4.1.1.1.1.1.1.cmml">−</mo><msubsup id="S2.Ex4.m1.4.4.1.1.1.1.1.3" xref="S2.Ex4.m1.4.4.1.1.1.1.1.3.cmml"><mi id="S2.Ex4.m1.4.4.1.1.1.1.1.3.2.2" xref="S2.Ex4.m1.4.4.1.1.1.1.1.3.2.2.cmml">𝐱</mi><mrow id="S2.Ex4.m1.3.3.1" xref="S2.Ex4.m1.3.3.1.cmml"><mtext id="S2.Ex4.m1.3.3.1.3" xref="S2.Ex4.m1.3.3.1.3a.cmml">closest</mtext><mo id="S2.Ex4.m1.3.3.1.2" xref="S2.Ex4.m1.3.3.1.2.cmml">⁢</mo><mrow id="S2.Ex4.m1.3.3.1.4.2" xref="S2.Ex4.m1.3.3.1.cmml"><mo id="S2.Ex4.m1.3.3.1.4.2.1" stretchy="false" xref="S2.Ex4.m1.3.3.1.cmml">(</mo><mi id="S2.Ex4.m1.3.3.1.1" xref="S2.Ex4.m1.3.3.1.1.cmml">i</mi><mo id="S2.Ex4.m1.3.3.1.4.2.2" stretchy="false" xref="S2.Ex4.m1.3.3.1.cmml">)</mo></mrow></mrow><mi id="S2.Ex4.m1.4.4.1.1.1.1.1.3.2.3" xref="S2.Ex4.m1.4.4.1.1.1.1.1.3.2.3.cmml">A</mi></msubsup></mrow><mo id="S2.Ex4.m1.4.4.1.1.1.1.3" stretchy="false" xref="S2.Ex4.m1.4.4.1.1.1.2.1.cmml">‖</mo></mrow><mn id="S2.Ex4.m1.4.4.1.1.3" xref="S2.Ex4.m1.4.4.1.1.3.cmml">2</mn></msup></mrow></mrow><annotation-xml encoding="MathML-Content" id="S2.Ex4.m1.4b"><apply id="S2.Ex4.m1.4.4.cmml" xref="S2.Ex4.m1.4.4"><times id="S2.Ex4.m1.4.4.2.cmml" xref="S2.Ex4.m1.4.4.2"></times><apply id="S2.Ex4.m1.4.4.3.cmml" xref="S2.Ex4.m1.4.4.3"><csymbol cd="ambiguous" id="S2.Ex4.m1.4.4.3.1.cmml" xref="S2.Ex4.m1.4.4.3">subscript</csymbol><min id="S2.Ex4.m1.4.4.3.2.cmml" xref="S2.Ex4.m1.4.4.3.2"></min><list id="S2.Ex4.m1.2.2.2.3.cmml" xref="S2.Ex4.m1.2.2.2.4"><ci id="S2.Ex4.m1.1.1.1.1.cmml" xref="S2.Ex4.m1.1.1.1.1">𝑅</ci><ci id="S2.Ex4.m1.2.2.2.2.cmml" xref="S2.Ex4.m1.2.2.2.2">𝑡</ci></list></apply><apply id="S2.Ex4.m1.4.4.1.cmml" xref="S2.Ex4.m1.4.4.1"><apply id="S2.Ex4.m1.4.4.1.2.cmml" xref="S2.Ex4.m1.4.4.1.2"><csymbol cd="ambiguous" id="S2.Ex4.m1.4.4.1.2.1.cmml" xref="S2.Ex4.m1.4.4.1.2">subscript</csymbol><sum id="S2.Ex4.m1.4.4.1.2.2.cmml" xref="S2.Ex4.m1.4.4.1.2.2"></sum><ci id="S2.Ex4.m1.4.4.1.2.3.cmml" xref="S2.Ex4.m1.4.4.1.2.3">𝑖</ci></apply><apply id="S2.Ex4.m1.4.4.1.1.cmml" xref="S2.Ex4.m1.4.4.1.1"><csymbol cd="ambiguous" id="S2.Ex4.m1.4.4.1.1.2.cmml" xref="S2.Ex4.m1.4.4.1.1">superscript</csymbol><apply id="S2.Ex4.m1.4.4.1.1.1.2.cmml" xref="S2.Ex4.m1.4.4.1.1.1.1"><csymbol cd="latexml" id="S2.Ex4.m1.4.4.1.1.1.2.1.cmml" xref="S2.Ex4.m1.4.4.1.1.1.1.2">norm</csymbol><apply id="S2.Ex4.m1.4.4.1.1.1.1.1.cmml" xref="S2.Ex4.m1.4.4.1.1.1.1.1"><minus id="S2.Ex4.m1.4.4.1.1.1.1.1.1.cmml" xref="S2.Ex4.m1.4.4.1.1.1.1.1.1"></minus><apply id="S2.Ex4.m1.4.4.1.1.1.1.1.2.cmml" xref="S2.Ex4.m1.4.4.1.1.1.1.1.2"><plus id="S2.Ex4.m1.4.4.1.1.1.1.1.2.1.cmml" xref="S2.Ex4.m1.4.4.1.1.1.1.1.2.1"></plus><apply id="S2.Ex4.m1.4.4.1.1.1.1.1.2.2.cmml" xref="S2.Ex4.m1.4.4.1.1.1.1.1.2.2"><times id="S2.Ex4.m1.4.4.1.1.1.1.1.2.2.1.cmml" xref="S2.Ex4.m1.4.4.1.1.1.1.1.2.2.1"></times><ci id="S2.Ex4.m1.4.4.1.1.1.1.1.2.2.2.cmml" xref="S2.Ex4.m1.4.4.1.1.1.1.1.2.2.2">𝑅</ci><apply id="S2.Ex4.m1.4.4.1.1.1.1.1.2.2.3.cmml" xref="S2.Ex4.m1.4.4.1.1.1.1.1.2.2.3"><csymbol cd="ambiguous" id="S2.Ex4.m1.4.4.1.1.1.1.1.2.2.3.1.cmml" xref="S2.Ex4.m1.4.4.1.1.1.1.1.2.2.3">subscript</csymbol><apply id="S2.Ex4.m1.4.4.1.1.1.1.1.2.2.3.2.cmml" xref="S2.Ex4.m1.4.4.1.1.1.1.1.2.2.3"><csymbol cd="ambiguous" id="S2.Ex4.m1.4.4.1.1.1.1.1.2.2.3.2.1.cmml" xref="S2.Ex4.m1.4.4.1.1.1.1.1.2.2.3">superscript</csymbol><ci id="S2.Ex4.m1.4.4.1.1.1.1.1.2.2.3.2.2.cmml" xref="S2.Ex4.m1.4.4.1.1.1.1.1.2.2.3.2.2">𝐱</ci><ci id="S2.Ex4.m1.4.4.1.1.1.1.1.2.2.3.2.3.cmml" xref="S2.Ex4.m1.4.4.1.1.1.1.1.2.2.3.2.3">𝐵</ci></apply><ci id="S2.Ex4.m1.4.4.1.1.1.1.1.2.2.3.3.cmml" xref="S2.Ex4.m1.4.4.1.1.1.1.1.2.2.3.3">𝑖</ci></apply></apply><ci id="S2.Ex4.m1.4.4.1.1.1.1.1.2.3.cmml" xref="S2.Ex4.m1.4.4.1.1.1.1.1.2.3">𝑡</ci></apply><apply id="S2.Ex4.m1.4.4.1.1.1.1.1.3.cmml" xref="S2.Ex4.m1.4.4.1.1.1.1.1.3"><csymbol cd="ambiguous" id="S2.Ex4.m1.4.4.1.1.1.1.1.3.1.cmml" xref="S2.Ex4.m1.4.4.1.1.1.1.1.3">subscript</csymbol><apply id="S2.Ex4.m1.4.4.1.1.1.1.1.3.2.cmml" xref="S2.Ex4.m1.4.4.1.1.1.1.1.3"><csymbol cd="ambiguous" id="S2.Ex4.m1.4.4.1.1.1.1.1.3.2.1.cmml" xref="S2.Ex4.m1.4.4.1.1.1.1.1.3">superscript</csymbol><ci id="S2.Ex4.m1.4.4.1.1.1.1.1.3.2.2.cmml" xref="S2.Ex4.m1.4.4.1.1.1.1.1.3.2.2">𝐱</ci><ci id="S2.Ex4.m1.4.4.1.1.1.1.1.3.2.3.cmml" xref="S2.Ex4.m1.4.4.1.1.1.1.1.3.2.3">𝐴</ci></apply><apply id="S2.Ex4.m1.3.3.1.cmml" xref="S2.Ex4.m1.3.3.1"><times id="S2.Ex4.m1.3.3.1.2.cmml" xref="S2.Ex4.m1.3.3.1.2"></times><ci id="S2.Ex4.m1.3.3.1.3a.cmml" xref="S2.Ex4.m1.3.3.1.3"><mtext id="S2.Ex4.m1.3.3.1.3.cmml" mathsize="70%" xref="S2.Ex4.m1.3.3.1.3">closest</mtext></ci><ci id="S2.Ex4.m1.3.3.1.1.cmml" xref="S2.Ex4.m1.3.3.1.1">𝑖</ci></apply></apply></apply></apply><cn id="S2.Ex4.m1.4.4.1.1.3.cmml" type="integer" xref="S2.Ex4.m1.4.4.1.1.3">2</cn></apply></apply></apply></annotation-xml><annotation encoding="application/x-tex" id="S2.Ex4.m1.4c">\min_{R,t}\sum_{i}\|R\mathbf{x}^{B}_{i}+t-\mathbf{x}^{A}_{\text{closest}(i)}\|% ^{2}</annotation><annotation encoding="application/x-llamapun" id="S2.Ex4.m1.4d">roman_min start_POSTSUBSCRIPT italic_R , italic_t end_POSTSUBSCRIPT ∑ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ∥ italic_R bold_x start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT + italic_t - bold_x start_POSTSUPERSCRIPT italic_A end_POSTSUPERSCRIPT start_POSTSUBSCRIPT closest ( italic_i ) end_POSTSUBSCRIPT ∥ start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT</annotation></semantics></math></td> <td class="ltx_eqn_cell ltx_eqn_center_padright"></td> </tr></tbody> </table> <p class="ltx_p" id="S2.I3.i1.p1.4">Where <math alttext="(R,t)" class="ltx_Math" display="inline" id="S2.I3.i1.p1.2.m1.2"><semantics id="S2.I3.i1.p1.2.m1.2a"><mrow id="S2.I3.i1.p1.2.m1.2.3.2" xref="S2.I3.i1.p1.2.m1.2.3.1.cmml"><mo id="S2.I3.i1.p1.2.m1.2.3.2.1" stretchy="false" xref="S2.I3.i1.p1.2.m1.2.3.1.cmml">(</mo><mi id="S2.I3.i1.p1.2.m1.1.1" xref="S2.I3.i1.p1.2.m1.1.1.cmml">R</mi><mo id="S2.I3.i1.p1.2.m1.2.3.2.2" xref="S2.I3.i1.p1.2.m1.2.3.1.cmml">,</mo><mi id="S2.I3.i1.p1.2.m1.2.2" xref="S2.I3.i1.p1.2.m1.2.2.cmml">t</mi><mo id="S2.I3.i1.p1.2.m1.2.3.2.3" stretchy="false" xref="S2.I3.i1.p1.2.m1.2.3.1.cmml">)</mo></mrow><annotation-xml encoding="MathML-Content" id="S2.I3.i1.p1.2.m1.2b"><interval closure="open" id="S2.I3.i1.p1.2.m1.2.3.1.cmml" xref="S2.I3.i1.p1.2.m1.2.3.2"><ci id="S2.I3.i1.p1.2.m1.1.1.cmml" xref="S2.I3.i1.p1.2.m1.1.1">𝑅</ci><ci id="S2.I3.i1.p1.2.m1.2.2.cmml" xref="S2.I3.i1.p1.2.m1.2.2">𝑡</ci></interval></annotation-xml><annotation encoding="application/x-tex" id="S2.I3.i1.p1.2.m1.2c">(R,t)</annotation><annotation encoding="application/x-llamapun" id="S2.I3.i1.p1.2.m1.2d">( italic_R , italic_t )</annotation></semantics></math> is the rigid transformation (rotation and translation) from the source point cloud <math alttext="B" class="ltx_Math" display="inline" id="S2.I3.i1.p1.3.m2.1"><semantics id="S2.I3.i1.p1.3.m2.1a"><mi id="S2.I3.i1.p1.3.m2.1.1" xref="S2.I3.i1.p1.3.m2.1.1.cmml">B</mi><annotation-xml encoding="MathML-Content" id="S2.I3.i1.p1.3.m2.1b"><ci id="S2.I3.i1.p1.3.m2.1.1.cmml" xref="S2.I3.i1.p1.3.m2.1.1">𝐵</ci></annotation-xml><annotation encoding="application/x-tex" id="S2.I3.i1.p1.3.m2.1c">B</annotation><annotation encoding="application/x-llamapun" id="S2.I3.i1.p1.3.m2.1d">italic_B</annotation></semantics></math> to the reference point cloud <math alttext="A" class="ltx_Math" display="inline" id="S2.I3.i1.p1.4.m3.1"><semantics id="S2.I3.i1.p1.4.m3.1a"><mi id="S2.I3.i1.p1.4.m3.1.1" xref="S2.I3.i1.p1.4.m3.1.1.cmml">A</mi><annotation-xml encoding="MathML-Content" id="S2.I3.i1.p1.4.m3.1b"><ci id="S2.I3.i1.p1.4.m3.1.1.cmml" xref="S2.I3.i1.p1.4.m3.1.1">𝐴</ci></annotation-xml><annotation encoding="application/x-tex" id="S2.I3.i1.p1.4.m3.1c">A</annotation><annotation encoding="application/x-llamapun" id="S2.I3.i1.p1.4.m3.1d">italic_A</annotation></semantics></math>, the alignment is done repeatedly, integrating each new frame into the global model.</p> </div> </li> <li class="ltx_item" id="S2.I3.i2" style="list-style-type:none;"> <span class="ltx_tag ltx_tag_item">•</span> <div class="ltx_para" id="S2.I3.i2.p1"> <p class="ltx_p" id="S2.I3.i2.p1.1"><span class="ltx_text ltx_font_bold" id="S2.I3.i2.p1.1.1">ICP with Neighbor Alignment</span>: Instead of aligning each frame to the global map directly, frames may be aligned to their temporal neighbors to reduce drift. This approach can improve local consistency.</p> </div> </li> </ul> </div> <div class="ltx_para" id="S2.SS3.p3"> <p class="ltx_p" id="S2.SS3.p3.1">The ICP variants are implemented in <span class="ltx_text ltx_font_typewriter" id="S2.SS3.p3.1.1">reconstruction/icp_neighbor.py</span> and <span class="ltx_text ltx_font_typewriter" id="S2.SS3.p3.1.2">reconstruction/icp.py</span>, allowing switching between a custom ICP routine and Open3D’s built-in ICP method <cite class="ltx_cite ltx_citemacro_cite">[<a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#bib.bib24" title="">24</a>]</cite>. The custom ICP uses a KD-tree search (via <span class="ltx_text ltx_font_typewriter" id="S2.SS3.p3.1.3">scipy.spatial.cKDTree</span> <cite class="ltx_cite ltx_citemacro_cite">[<a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#bib.bib25" title="">25</a>]</cite>) to find closest point correspondences and applies dynamic thresholding to filter out non-overlapping regions or outliers.</p> </div> <section class="ltx_paragraph" id="S2.SS3.SSS0.Px1"> <h4 class="ltx_title ltx_title_paragraph">Dynamic Thresholding Mechanism</h4> <div class="ltx_para" id="S2.SS3.SSS0.Px1.p1"> <p class="ltx_p" id="S2.SS3.SSS0.Px1.p1.1">Dynamic thresholds are applied on distances between correspondences to focus on well-overlapping points:</p> <table class="ltx_equation ltx_eqn_table" id="S2.Ex5"> <tbody><tr class="ltx_equation ltx_eqn_row ltx_align_baseline"> <td class="ltx_eqn_cell ltx_eqn_center_padleft"></td> <td class="ltx_eqn_cell ltx_align_center"><math alttext="\text{mask}(i)=\begin{cases}1&amp;\text{if }d(i)&lt;T_{d}\\ 0&amp;\text{otherwise}\end{cases}" class="ltx_Math" display="block" id="S2.Ex5.m1.5"><semantics id="S2.Ex5.m1.5a"><mrow id="S2.Ex5.m1.5.6" xref="S2.Ex5.m1.5.6.cmml"><mrow id="S2.Ex5.m1.5.6.2" xref="S2.Ex5.m1.5.6.2.cmml"><mtext id="S2.Ex5.m1.5.6.2.2" xref="S2.Ex5.m1.5.6.2.2a.cmml">mask</mtext><mo id="S2.Ex5.m1.5.6.2.1" xref="S2.Ex5.m1.5.6.2.1.cmml">⁢</mo><mrow id="S2.Ex5.m1.5.6.2.3.2" xref="S2.Ex5.m1.5.6.2.cmml"><mo id="S2.Ex5.m1.5.6.2.3.2.1" stretchy="false" xref="S2.Ex5.m1.5.6.2.cmml">(</mo><mi id="S2.Ex5.m1.5.5" xref="S2.Ex5.m1.5.5.cmml">i</mi><mo id="S2.Ex5.m1.5.6.2.3.2.2" stretchy="false" xref="S2.Ex5.m1.5.6.2.cmml">)</mo></mrow></mrow><mo id="S2.Ex5.m1.5.6.1" xref="S2.Ex5.m1.5.6.1.cmml">=</mo><mrow id="S2.Ex5.m1.4.4" xref="S2.Ex5.m1.5.6.3.1.cmml"><mo id="S2.Ex5.m1.4.4.5" xref="S2.Ex5.m1.5.6.3.1.1.cmml">{</mo><mtable columnspacing="5pt" displaystyle="true" id="S2.Ex5.m1.4.4.4" rowspacing="0pt" xref="S2.Ex5.m1.5.6.3.1.cmml"><mtr id="S2.Ex5.m1.4.4.4a" xref="S2.Ex5.m1.5.6.3.1.cmml"><mtd class="ltx_align_left" columnalign="left" id="S2.Ex5.m1.4.4.4b" xref="S2.Ex5.m1.5.6.3.1.cmml"><mn id="S2.Ex5.m1.1.1.1.1.1.1" xref="S2.Ex5.m1.1.1.1.1.1.1.cmml">1</mn></mtd><mtd class="ltx_align_left" columnalign="left" id="S2.Ex5.m1.4.4.4c" xref="S2.Ex5.m1.5.6.3.1.cmml"><mrow id="S2.Ex5.m1.2.2.2.2.2.1" xref="S2.Ex5.m1.2.2.2.2.2.1.cmml"><mrow id="S2.Ex5.m1.2.2.2.2.2.1.3" xref="S2.Ex5.m1.2.2.2.2.2.1.3.cmml"><mtext id="S2.Ex5.m1.2.2.2.2.2.1.3.2" xref="S2.Ex5.m1.2.2.2.2.2.1.3.2a.cmml">if </mtext><mo id="S2.Ex5.m1.2.2.2.2.2.1.3.1" xref="S2.Ex5.m1.2.2.2.2.2.1.3.1.cmml">⁢</mo><mi id="S2.Ex5.m1.2.2.2.2.2.1.3.3" xref="S2.Ex5.m1.2.2.2.2.2.1.3.3.cmml">d</mi><mo id="S2.Ex5.m1.2.2.2.2.2.1.3.1a" xref="S2.Ex5.m1.2.2.2.2.2.1.3.1.cmml">⁢</mo><mrow id="S2.Ex5.m1.2.2.2.2.2.1.3.4.2" xref="S2.Ex5.m1.2.2.2.2.2.1.3.cmml"><mo id="S2.Ex5.m1.2.2.2.2.2.1.3.4.2.1" stretchy="false" xref="S2.Ex5.m1.2.2.2.2.2.1.3.cmml">(</mo><mi id="S2.Ex5.m1.2.2.2.2.2.1.1" xref="S2.Ex5.m1.2.2.2.2.2.1.1.cmml">i</mi><mo id="S2.Ex5.m1.2.2.2.2.2.1.3.4.2.2" stretchy="false" xref="S2.Ex5.m1.2.2.2.2.2.1.3.cmml">)</mo></mrow></mrow><mo id="S2.Ex5.m1.2.2.2.2.2.1.2" xref="S2.Ex5.m1.2.2.2.2.2.1.2.cmml">&lt;</mo><msub id="S2.Ex5.m1.2.2.2.2.2.1.4" xref="S2.Ex5.m1.2.2.2.2.2.1.4.cmml"><mi id="S2.Ex5.m1.2.2.2.2.2.1.4.2" xref="S2.Ex5.m1.2.2.2.2.2.1.4.2.cmml">T</mi><mi id="S2.Ex5.m1.2.2.2.2.2.1.4.3" xref="S2.Ex5.m1.2.2.2.2.2.1.4.3.cmml">d</mi></msub></mrow></mtd></mtr><mtr id="S2.Ex5.m1.4.4.4d" xref="S2.Ex5.m1.5.6.3.1.cmml"><mtd class="ltx_align_left" columnalign="left" id="S2.Ex5.m1.4.4.4e" xref="S2.Ex5.m1.5.6.3.1.cmml"><mn id="S2.Ex5.m1.3.3.3.3.1.1" xref="S2.Ex5.m1.3.3.3.3.1.1.cmml">0</mn></mtd><mtd class="ltx_align_left" columnalign="left" id="S2.Ex5.m1.4.4.4f" xref="S2.Ex5.m1.5.6.3.1.cmml"><mtext id="S2.Ex5.m1.4.4.4.4.2.1" xref="S2.Ex5.m1.4.4.4.4.2.1a.cmml">otherwise</mtext></mtd></mtr></mtable></mrow></mrow><annotation-xml encoding="MathML-Content" id="S2.Ex5.m1.5b"><apply id="S2.Ex5.m1.5.6.cmml" xref="S2.Ex5.m1.5.6"><eq id="S2.Ex5.m1.5.6.1.cmml" xref="S2.Ex5.m1.5.6.1"></eq><apply id="S2.Ex5.m1.5.6.2.cmml" xref="S2.Ex5.m1.5.6.2"><times id="S2.Ex5.m1.5.6.2.1.cmml" xref="S2.Ex5.m1.5.6.2.1"></times><ci id="S2.Ex5.m1.5.6.2.2a.cmml" xref="S2.Ex5.m1.5.6.2.2"><mtext id="S2.Ex5.m1.5.6.2.2.cmml" xref="S2.Ex5.m1.5.6.2.2">mask</mtext></ci><ci id="S2.Ex5.m1.5.5.cmml" xref="S2.Ex5.m1.5.5">𝑖</ci></apply><apply id="S2.Ex5.m1.5.6.3.1.cmml" xref="S2.Ex5.m1.4.4"><csymbol cd="latexml" id="S2.Ex5.m1.5.6.3.1.1.cmml" xref="S2.Ex5.m1.4.4.5">cases</csymbol><cn id="S2.Ex5.m1.1.1.1.1.1.1.cmml" type="integer" xref="S2.Ex5.m1.1.1.1.1.1.1">1</cn><apply id="S2.Ex5.m1.2.2.2.2.2.1.cmml" xref="S2.Ex5.m1.2.2.2.2.2.1"><lt id="S2.Ex5.m1.2.2.2.2.2.1.2.cmml" xref="S2.Ex5.m1.2.2.2.2.2.1.2"></lt><apply id="S2.Ex5.m1.2.2.2.2.2.1.3.cmml" xref="S2.Ex5.m1.2.2.2.2.2.1.3"><times id="S2.Ex5.m1.2.2.2.2.2.1.3.1.cmml" xref="S2.Ex5.m1.2.2.2.2.2.1.3.1"></times><ci id="S2.Ex5.m1.2.2.2.2.2.1.3.2a.cmml" xref="S2.Ex5.m1.2.2.2.2.2.1.3.2"><mtext id="S2.Ex5.m1.2.2.2.2.2.1.3.2.cmml" xref="S2.Ex5.m1.2.2.2.2.2.1.3.2">if </mtext></ci><ci id="S2.Ex5.m1.2.2.2.2.2.1.3.3.cmml" xref="S2.Ex5.m1.2.2.2.2.2.1.3.3">𝑑</ci><ci id="S2.Ex5.m1.2.2.2.2.2.1.1.cmml" xref="S2.Ex5.m1.2.2.2.2.2.1.1">𝑖</ci></apply><apply id="S2.Ex5.m1.2.2.2.2.2.1.4.cmml" xref="S2.Ex5.m1.2.2.2.2.2.1.4"><csymbol cd="ambiguous" id="S2.Ex5.m1.2.2.2.2.2.1.4.1.cmml" xref="S2.Ex5.m1.2.2.2.2.2.1.4">subscript</csymbol><ci id="S2.Ex5.m1.2.2.2.2.2.1.4.2.cmml" xref="S2.Ex5.m1.2.2.2.2.2.1.4.2">𝑇</ci><ci id="S2.Ex5.m1.2.2.2.2.2.1.4.3.cmml" xref="S2.Ex5.m1.2.2.2.2.2.1.4.3">𝑑</ci></apply></apply><cn id="S2.Ex5.m1.3.3.3.3.1.1.cmml" type="integer" xref="S2.Ex5.m1.3.3.3.3.1.1">0</cn><ci id="S2.Ex5.m1.4.4.4.4.2.1a.cmml" xref="S2.Ex5.m1.4.4.4.4.2.1"><mtext id="S2.Ex5.m1.4.4.4.4.2.1.cmml" xref="S2.Ex5.m1.4.4.4.4.2.1">otherwise</mtext></ci></apply></apply></annotation-xml><annotation encoding="application/x-tex" id="S2.Ex5.m1.5c">\text{mask}(i)=\begin{cases}1&amp;\text{if }d(i)&lt;T_{d}\\ 0&amp;\text{otherwise}\end{cases}</annotation><annotation encoding="application/x-llamapun" id="S2.Ex5.m1.5d">mask ( italic_i ) = { start_ROW start_CELL 1 end_CELL start_CELL if italic_d ( italic_i ) &lt; italic_T start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL 0 end_CELL start_CELL otherwise end_CELL end_ROW</annotation></semantics></math></td> <td class="ltx_eqn_cell ltx_eqn_center_padright"></td> </tr></tbody> </table> </div> <div class="ltx_para" id="S2.SS3.SSS0.Px1.p2"> <p class="ltx_p" id="S2.SS3.SSS0.Px1.p2.1">Threshold <math alttext="T_{d}" class="ltx_Math" display="inline" id="S2.SS3.SSS0.Px1.p2.1.m1.1"><semantics id="S2.SS3.SSS0.Px1.p2.1.m1.1a"><msub id="S2.SS3.SSS0.Px1.p2.1.m1.1.1" xref="S2.SS3.SSS0.Px1.p2.1.m1.1.1.cmml"><mi id="S2.SS3.SSS0.Px1.p2.1.m1.1.1.2" xref="S2.SS3.SSS0.Px1.p2.1.m1.1.1.2.cmml">T</mi><mi id="S2.SS3.SSS0.Px1.p2.1.m1.1.1.3" xref="S2.SS3.SSS0.Px1.p2.1.m1.1.1.3.cmml">d</mi></msub><annotation-xml encoding="MathML-Content" id="S2.SS3.SSS0.Px1.p2.1.m1.1b"><apply id="S2.SS3.SSS0.Px1.p2.1.m1.1.1.cmml" xref="S2.SS3.SSS0.Px1.p2.1.m1.1.1"><csymbol cd="ambiguous" id="S2.SS3.SSS0.Px1.p2.1.m1.1.1.1.cmml" xref="S2.SS3.SSS0.Px1.p2.1.m1.1.1">subscript</csymbol><ci id="S2.SS3.SSS0.Px1.p2.1.m1.1.1.2.cmml" xref="S2.SS3.SSS0.Px1.p2.1.m1.1.1.2">𝑇</ci><ci id="S2.SS3.SSS0.Px1.p2.1.m1.1.1.3.cmml" xref="S2.SS3.SSS0.Px1.p2.1.m1.1.1.3">𝑑</ci></apply></annotation-xml><annotation encoding="application/x-tex" id="S2.SS3.SSS0.Px1.p2.1.m1.1c">T_{d}</annotation><annotation encoding="application/x-llamapun" id="S2.SS3.SSS0.Px1.p2.1.m1.1d">italic_T start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT</annotation></semantics></math> can be constant or adaptively chosen based on statistical measures (mean, median, standard deviation, or percentile of observed distances). The code implements adaptive thresholding to exclude points that lie beyond a certain distance, improving convergence and reducing the influence of outliers.</p> </div> </section> <section class="ltx_paragraph" id="S2.SS3.SSS0.Px2"> <h4 class="ltx_title ltx_title_paragraph">Visualization and Error Analysis</h4> <div class="ltx_para" id="S2.SS3.SSS0.Px2.p1"> <p class="ltx_p" id="S2.SS3.SSS0.Px2.p1.1">Various visualization tools are integrated to facilitate debugging and parameter tuning. The pipeline can generate heatmaps representing alignment errors per pixel. In Figure <a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S2.F3" title="Figure 3 ‣ Visualization and Error Analysis ‣ 2.3 3D Reconstruction ‣ 2 Methodology ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_tag">3</span></a>, we show an illustration of such error heatmaps for the first and tenth iterations of ICP:</p> <table class="ltx_equation ltx_eqn_table" id="S2.Ex6"> <tbody><tr class="ltx_equation ltx_eqn_row ltx_align_baseline"> <td class="ltx_eqn_cell ltx_eqn_center_padleft"></td> <td class="ltx_eqn_cell ltx_align_center"><math alttext="\text{Error Heatmap}(x,y)=\begin{cases}\text{Distance}(\text{Point}_{1},\text{% Point}_{2}),&amp;\text{if a matching point is found,}\\ 0,&amp;\text{if no matching point is found.}\end{cases}" class="ltx_Math" display="block" id="S2.Ex6.m1.6"><semantics id="S2.Ex6.m1.6a"><mrow id="S2.Ex6.m1.6.7" xref="S2.Ex6.m1.6.7.cmml"><mrow id="S2.Ex6.m1.6.7.2" xref="S2.Ex6.m1.6.7.2.cmml"><mtext id="S2.Ex6.m1.6.7.2.2" xref="S2.Ex6.m1.6.7.2.2a.cmml">Error Heatmap</mtext><mo id="S2.Ex6.m1.6.7.2.1" xref="S2.Ex6.m1.6.7.2.1.cmml">⁢</mo><mrow id="S2.Ex6.m1.6.7.2.3.2" xref="S2.Ex6.m1.6.7.2.3.1.cmml"><mo id="S2.Ex6.m1.6.7.2.3.2.1" stretchy="false" xref="S2.Ex6.m1.6.7.2.3.1.cmml">(</mo><mi id="S2.Ex6.m1.5.5" xref="S2.Ex6.m1.5.5.cmml">x</mi><mo id="S2.Ex6.m1.6.7.2.3.2.2" xref="S2.Ex6.m1.6.7.2.3.1.cmml">,</mo><mi id="S2.Ex6.m1.6.6" xref="S2.Ex6.m1.6.6.cmml">y</mi><mo id="S2.Ex6.m1.6.7.2.3.2.3" stretchy="false" xref="S2.Ex6.m1.6.7.2.3.1.cmml">)</mo></mrow></mrow><mo id="S2.Ex6.m1.6.7.1" xref="S2.Ex6.m1.6.7.1.cmml">=</mo><mrow id="S2.Ex6.m1.4.4" xref="S2.Ex6.m1.6.7.3.1.cmml"><mo id="S2.Ex6.m1.4.4.5" xref="S2.Ex6.m1.6.7.3.1.1.cmml">{</mo><mtable columnspacing="5pt" displaystyle="true" id="S2.Ex6.m1.4.4.4" rowspacing="0pt" xref="S2.Ex6.m1.6.7.3.1.cmml"><mtr id="S2.Ex6.m1.4.4.4a" xref="S2.Ex6.m1.6.7.3.1.cmml"><mtd class="ltx_align_left" columnalign="left" id="S2.Ex6.m1.4.4.4b" xref="S2.Ex6.m1.6.7.3.1.cmml"><mrow id="S2.Ex6.m1.1.1.1.1.1.1.1" xref="S2.Ex6.m1.1.1.1.1.1.1.1.1.cmml"><mrow id="S2.Ex6.m1.1.1.1.1.1.1.1.1" xref="S2.Ex6.m1.1.1.1.1.1.1.1.1.cmml"><mtext id="S2.Ex6.m1.1.1.1.1.1.1.1.1.4" xref="S2.Ex6.m1.1.1.1.1.1.1.1.1.4a.cmml">Distance</mtext><mo id="S2.Ex6.m1.1.1.1.1.1.1.1.1.3" xref="S2.Ex6.m1.1.1.1.1.1.1.1.1.3.cmml">⁢</mo><mrow id="S2.Ex6.m1.1.1.1.1.1.1.1.1.2.2" xref="S2.Ex6.m1.1.1.1.1.1.1.1.1.2.3.cmml"><mo id="S2.Ex6.m1.1.1.1.1.1.1.1.1.2.2.3" stretchy="false" xref="S2.Ex6.m1.1.1.1.1.1.1.1.1.2.3.cmml">(</mo><msub id="S2.Ex6.m1.1.1.1.1.1.1.1.1.1.1.1" xref="S2.Ex6.m1.1.1.1.1.1.1.1.1.1.1.1.cmml"><mtext id="S2.Ex6.m1.1.1.1.1.1.1.1.1.1.1.1.2" xref="S2.Ex6.m1.1.1.1.1.1.1.1.1.1.1.1.2a.cmml">Point</mtext><mn id="S2.Ex6.m1.1.1.1.1.1.1.1.1.1.1.1.3" xref="S2.Ex6.m1.1.1.1.1.1.1.1.1.1.1.1.3.cmml">1</mn></msub><mo id="S2.Ex6.m1.1.1.1.1.1.1.1.1.2.2.4" xref="S2.Ex6.m1.1.1.1.1.1.1.1.1.2.3.cmml">,</mo><msub id="S2.Ex6.m1.1.1.1.1.1.1.1.1.2.2.2" xref="S2.Ex6.m1.1.1.1.1.1.1.1.1.2.2.2.cmml"><mtext id="S2.Ex6.m1.1.1.1.1.1.1.1.1.2.2.2.2" xref="S2.Ex6.m1.1.1.1.1.1.1.1.1.2.2.2.2a.cmml">Point</mtext><mn id="S2.Ex6.m1.1.1.1.1.1.1.1.1.2.2.2.3" xref="S2.Ex6.m1.1.1.1.1.1.1.1.1.2.2.2.3.cmml">2</mn></msub><mo id="S2.Ex6.m1.1.1.1.1.1.1.1.1.2.2.5" stretchy="false" xref="S2.Ex6.m1.1.1.1.1.1.1.1.1.2.3.cmml">)</mo></mrow></mrow><mo id="S2.Ex6.m1.1.1.1.1.1.1.1.2" xref="S2.Ex6.m1.1.1.1.1.1.1.1.1.cmml">,</mo></mrow></mtd><mtd class="ltx_align_left" columnalign="left" id="S2.Ex6.m1.4.4.4c" xref="S2.Ex6.m1.6.7.3.1.cmml"><mtext id="S2.Ex6.m1.2.2.2.2.2.1" xref="S2.Ex6.m1.2.2.2.2.2.1a.cmml">if a matching point is found,</mtext></mtd></mtr><mtr id="S2.Ex6.m1.4.4.4d" xref="S2.Ex6.m1.6.7.3.1.cmml"><mtd class="ltx_align_left" columnalign="left" id="S2.Ex6.m1.4.4.4e" xref="S2.Ex6.m1.6.7.3.1.cmml"><mrow id="S2.Ex6.m1.3.3.3.3.1.1.3" xref="S2.Ex6.m1.6.7.3.1.cmml"><mn id="S2.Ex6.m1.3.3.3.3.1.1.1" xref="S2.Ex6.m1.3.3.3.3.1.1.1.cmml">0</mn><mo id="S2.Ex6.m1.3.3.3.3.1.1.3.1" xref="S2.Ex6.m1.6.7.3.1.cmml">,</mo></mrow></mtd><mtd class="ltx_align_left" columnalign="left" id="S2.Ex6.m1.4.4.4f" xref="S2.Ex6.m1.6.7.3.1.cmml"><mtext id="S2.Ex6.m1.4.4.4.4.2.1" xref="S2.Ex6.m1.4.4.4.4.2.1a.cmml">if no matching point is found.</mtext></mtd></mtr></mtable></mrow></mrow><annotation-xml encoding="MathML-Content" id="S2.Ex6.m1.6b"><apply id="S2.Ex6.m1.6.7.cmml" xref="S2.Ex6.m1.6.7"><eq id="S2.Ex6.m1.6.7.1.cmml" xref="S2.Ex6.m1.6.7.1"></eq><apply id="S2.Ex6.m1.6.7.2.cmml" xref="S2.Ex6.m1.6.7.2"><times id="S2.Ex6.m1.6.7.2.1.cmml" xref="S2.Ex6.m1.6.7.2.1"></times><ci id="S2.Ex6.m1.6.7.2.2a.cmml" xref="S2.Ex6.m1.6.7.2.2"><mtext id="S2.Ex6.m1.6.7.2.2.cmml" xref="S2.Ex6.m1.6.7.2.2">Error Heatmap</mtext></ci><interval closure="open" id="S2.Ex6.m1.6.7.2.3.1.cmml" xref="S2.Ex6.m1.6.7.2.3.2"><ci id="S2.Ex6.m1.5.5.cmml" xref="S2.Ex6.m1.5.5">𝑥</ci><ci id="S2.Ex6.m1.6.6.cmml" xref="S2.Ex6.m1.6.6">𝑦</ci></interval></apply><apply id="S2.Ex6.m1.6.7.3.1.cmml" xref="S2.Ex6.m1.4.4"><csymbol cd="latexml" id="S2.Ex6.m1.6.7.3.1.1.cmml" xref="S2.Ex6.m1.4.4.5">cases</csymbol><apply id="S2.Ex6.m1.1.1.1.1.1.1.1.1.cmml" xref="S2.Ex6.m1.1.1.1.1.1.1.1"><times id="S2.Ex6.m1.1.1.1.1.1.1.1.1.3.cmml" xref="S2.Ex6.m1.1.1.1.1.1.1.1.1.3"></times><ci id="S2.Ex6.m1.1.1.1.1.1.1.1.1.4a.cmml" xref="S2.Ex6.m1.1.1.1.1.1.1.1.1.4"><mtext id="S2.Ex6.m1.1.1.1.1.1.1.1.1.4.cmml" xref="S2.Ex6.m1.1.1.1.1.1.1.1.1.4">Distance</mtext></ci><interval closure="open" id="S2.Ex6.m1.1.1.1.1.1.1.1.1.2.3.cmml" xref="S2.Ex6.m1.1.1.1.1.1.1.1.1.2.2"><apply id="S2.Ex6.m1.1.1.1.1.1.1.1.1.1.1.1.cmml" xref="S2.Ex6.m1.1.1.1.1.1.1.1.1.1.1.1"><csymbol cd="ambiguous" id="S2.Ex6.m1.1.1.1.1.1.1.1.1.1.1.1.1.cmml" xref="S2.Ex6.m1.1.1.1.1.1.1.1.1.1.1.1">subscript</csymbol><ci id="S2.Ex6.m1.1.1.1.1.1.1.1.1.1.1.1.2a.cmml" xref="S2.Ex6.m1.1.1.1.1.1.1.1.1.1.1.1.2"><mtext id="S2.Ex6.m1.1.1.1.1.1.1.1.1.1.1.1.2.cmml" xref="S2.Ex6.m1.1.1.1.1.1.1.1.1.1.1.1.2">Point</mtext></ci><cn id="S2.Ex6.m1.1.1.1.1.1.1.1.1.1.1.1.3.cmml" type="integer" xref="S2.Ex6.m1.1.1.1.1.1.1.1.1.1.1.1.3">1</cn></apply><apply id="S2.Ex6.m1.1.1.1.1.1.1.1.1.2.2.2.cmml" xref="S2.Ex6.m1.1.1.1.1.1.1.1.1.2.2.2"><csymbol cd="ambiguous" id="S2.Ex6.m1.1.1.1.1.1.1.1.1.2.2.2.1.cmml" xref="S2.Ex6.m1.1.1.1.1.1.1.1.1.2.2.2">subscript</csymbol><ci id="S2.Ex6.m1.1.1.1.1.1.1.1.1.2.2.2.2a.cmml" xref="S2.Ex6.m1.1.1.1.1.1.1.1.1.2.2.2.2"><mtext id="S2.Ex6.m1.1.1.1.1.1.1.1.1.2.2.2.2.cmml" xref="S2.Ex6.m1.1.1.1.1.1.1.1.1.2.2.2.2">Point</mtext></ci><cn id="S2.Ex6.m1.1.1.1.1.1.1.1.1.2.2.2.3.cmml" type="integer" xref="S2.Ex6.m1.1.1.1.1.1.1.1.1.2.2.2.3">2</cn></apply></interval></apply><ci id="S2.Ex6.m1.2.2.2.2.2.1a.cmml" xref="S2.Ex6.m1.2.2.2.2.2.1"><mtext id="S2.Ex6.m1.2.2.2.2.2.1.cmml" xref="S2.Ex6.m1.2.2.2.2.2.1">if a matching point is found,</mtext></ci><cn id="S2.Ex6.m1.3.3.3.3.1.1.1.cmml" type="integer" xref="S2.Ex6.m1.3.3.3.3.1.1.1">0</cn><ci id="S2.Ex6.m1.4.4.4.4.2.1a.cmml" xref="S2.Ex6.m1.4.4.4.4.2.1"><mtext id="S2.Ex6.m1.4.4.4.4.2.1.cmml" xref="S2.Ex6.m1.4.4.4.4.2.1">if no matching point is found.</mtext></ci></apply></apply></annotation-xml><annotation encoding="application/x-tex" id="S2.Ex6.m1.6c">\text{Error Heatmap}(x,y)=\begin{cases}\text{Distance}(\text{Point}_{1},\text{% Point}_{2}),&amp;\text{if a matching point is found,}\\ 0,&amp;\text{if no matching point is found.}\end{cases}</annotation><annotation encoding="application/x-llamapun" id="S2.Ex6.m1.6d">Error Heatmap ( italic_x , italic_y ) = { start_ROW start_CELL Distance ( Point start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , Point start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) , end_CELL start_CELL if a matching point is found, end_CELL end_ROW start_ROW start_CELL 0 , end_CELL start_CELL if no matching point is found. end_CELL end_ROW</annotation></semantics></math></td> <td class="ltx_eqn_cell ltx_eqn_center_padright"></td> </tr></tbody> </table> </div> <figure class="ltx_figure" id="S2.F3"> <div class="ltx_flex_figure"> <div class="ltx_flex_cell ltx_flex_size_2"><img alt="Refer to caption" class="ltx_graphics ltx_centering ltx_figure_panel ltx_img_square" height="215" id="S2.F3.g1" src="extracted/6104631/figures/11-20-my-ss0.png" width="240"/></div> <div class="ltx_flex_cell ltx_flex_size_2"><img alt="Refer to caption" class="ltx_graphics ltx_centering ltx_figure_panel ltx_img_square" height="215" id="S2.F3.g2" src="extracted/6104631/figures/11-20-my-ss1.png" width="240"/></div> </div> <figcaption class="ltx_caption ltx_centering"><span class="ltx_tag ltx_tag_figure">Figure 3: </span>Heatmap of the per-pixel alignment error at the first (left) and tenth (right) ICP iteration. Darker areas indicate masked-out regions, while dark blue areas represent smaller errors.</figcaption> </figure> <div class="ltx_para" id="S2.SS3.SSS0.Px2.p2"> <p class="ltx_p" id="S2.SS3.SSS0.Px2.p2.1">The code also outputs diagnostic plots, logs intermediate transformations, and can save intermediate point clouds for manual inspection.</p> </div> </section> </section> <section class="ltx_subsection" id="S2.SS4"> <h3 class="ltx_title ltx_title_subsection"> <span class="ltx_tag ltx_tag_subsection">2.4 </span>Technical Implementation Details from the Code</h3> <div class="ltx_para" id="S2.SS4.p1"> <p class="ltx_p" id="S2.SS4.p1.1">Below are some additional technical details tied directly to the code structure:</p> </div> <div class="ltx_para" id="S2.SS4.p2"> <ul class="ltx_itemize" id="S2.I4"> <li class="ltx_item" id="S2.I4.i1" style="list-style-type:none;"> <span class="ltx_tag ltx_tag_item">•</span> <div class="ltx_para" id="S2.I4.i1.p1"> <p class="ltx_p" id="S2.I4.i1.p1.1"><span class="ltx_text ltx_font_bold" id="S2.I4.i1.p1.1.1">Configuration Loading (main.py)</span>: The pipeline reads <span class="ltx_text ltx_font_typewriter" id="S2.I4.i1.p1.1.2">CONFIG.yaml</span> via <span class="ltx_text ltx_font_typewriter" id="S2.I4.i1.p1.1.3">dataloader/yaml_handler.py</span>, setting parameters like <span class="ltx_text ltx_font_typewriter" id="S2.I4.i1.p1.1.4">DATA_PATH</span>, <span class="ltx_text ltx_font_typewriter" id="S2.I4.i1.p1.1.5">SELECT_SCHEME</span>, and <span class="ltx_text ltx_font_typewriter" id="S2.I4.i1.p1.1.6">DEPTH_SCHEME</span>.</p> </div> </li> <li class="ltx_item" id="S2.I4.i2" style="list-style-type:none;"> <span class="ltx_tag ltx_tag_item">•</span> <div class="ltx_para" id="S2.I4.i2.p1"> <p class="ltx_p" id="S2.I4.i2.p1.1"><span class="ltx_text ltx_font_bold" id="S2.I4.i2.p1.1.1">Frame Extraction and Temporary Folder Management (main.py)</span>: The <span class="ltx_text ltx_font_typewriter" id="S2.I4.i2.p1.1.2">frame_handler</span> and <span class="ltx_text ltx_font_typewriter" id="S2.I4.i2.p1.1.3">temp_folder</span> modules manage frames. Selected frames are copied to a temporary directory <span class="ltx_text ltx_font_typewriter" id="S2.I4.i2.p1.1.4">/temp</span> for standardized input to depth estimation scripts.</p> </div> </li> <li class="ltx_item" id="S2.I4.i3" style="list-style-type:none;"> <span class="ltx_tag ltx_tag_item">•</span> <div class="ltx_para" id="S2.I4.i3.p1"> <p class="ltx_p" id="S2.I4.i3.p1.1"><span class="ltx_text ltx_font_bold" id="S2.I4.i3.p1.1.1">Depth Estimation Scripts (estimate.py)</span>: Depending on the chosen method (e.g., <span class="ltx_text ltx_font_typewriter" id="S2.I4.i3.p1.1.2">depth-anything:v2</span>), the code constructs command-line arguments and invokes external Python scripts (e.g., <span class="ltx_text ltx_font_typewriter" id="S2.I4.i3.p1.1.3">run.py</span>) in the corresponding subfolder. Parameters such as <span class="ltx_text ltx_font_typewriter" id="S2.I4.i3.p1.1.4">GRAYSCALE</span> or <span class="ltx_text ltx_font_typewriter" id="S2.I4.i3.p1.1.5">PRED_ONLY</span> are appended based on the YAML configuration.</p> </div> </li> <li class="ltx_item" id="S2.I4.i4" style="list-style-type:none;"> <span class="ltx_tag ltx_tag_item">•</span> <div class="ltx_para" id="S2.I4.i4.p1"> <p class="ltx_p" id="S2.I4.i4.p1.1"><span class="ltx_text ltx_font_bold" id="S2.I4.i4.p1.1.1">Postprocessing (postprocessing.py)</span>:</p> </div> <div class="ltx_para" id="S2.I4.i4.p2"> <p class="ltx_p" id="S2.I4.i4.p2.1">After obtaining the raw depth or disparity maps, a postprocessing stage (as implemented in <span class="ltx_text ltx_font_typewriter" id="S2.I4.i4.p2.1.1">postProcessing/postprocess.py</span>) refines the results. Consider the case where EndoDAC predictions output disparity maps <span class="ltx_text ltx_font_typewriter" id="S2.I4.i4.p2.1.2">_disp.npy</span>. The pipeline:</p> </div> <div class="ltx_para" id="S2.I4.i4.p3"> <p class="ltx_p" id="S2.I4.i4.p3.2">1. <span class="ltx_text ltx_font_bold" id="S2.I4.i4.p3.2.1">Resizes</span> the disparity map to match the original frame’s resolution <math alttext="(W,H)" class="ltx_Math" display="inline" id="S2.I4.i4.p3.1.m1.2"><semantics id="S2.I4.i4.p3.1.m1.2a"><mrow id="S2.I4.i4.p3.1.m1.2.3.2" xref="S2.I4.i4.p3.1.m1.2.3.1.cmml"><mo id="S2.I4.i4.p3.1.m1.2.3.2.1" stretchy="false" xref="S2.I4.i4.p3.1.m1.2.3.1.cmml">(</mo><mi id="S2.I4.i4.p3.1.m1.1.1" xref="S2.I4.i4.p3.1.m1.1.1.cmml">W</mi><mo id="S2.I4.i4.p3.1.m1.2.3.2.2" xref="S2.I4.i4.p3.1.m1.2.3.1.cmml">,</mo><mi id="S2.I4.i4.p3.1.m1.2.2" xref="S2.I4.i4.p3.1.m1.2.2.cmml">H</mi><mo id="S2.I4.i4.p3.1.m1.2.3.2.3" stretchy="false" xref="S2.I4.i4.p3.1.m1.2.3.1.cmml">)</mo></mrow><annotation-xml encoding="MathML-Content" id="S2.I4.i4.p3.1.m1.2b"><interval closure="open" id="S2.I4.i4.p3.1.m1.2.3.1.cmml" xref="S2.I4.i4.p3.1.m1.2.3.2"><ci id="S2.I4.i4.p3.1.m1.1.1.cmml" xref="S2.I4.i4.p3.1.m1.1.1">𝑊</ci><ci id="S2.I4.i4.p3.1.m1.2.2.cmml" xref="S2.I4.i4.p3.1.m1.2.2">𝐻</ci></interval></annotation-xml><annotation encoding="application/x-tex" id="S2.I4.i4.p3.1.m1.2c">(W,H)</annotation><annotation encoding="application/x-llamapun" id="S2.I4.i4.p3.1.m1.2d">( italic_W , italic_H )</annotation></semantics></math>. Given the original image size <math alttext="(W,H)" class="ltx_Math" display="inline" id="S2.I4.i4.p3.2.m2.2"><semantics id="S2.I4.i4.p3.2.m2.2a"><mrow id="S2.I4.i4.p3.2.m2.2.3.2" xref="S2.I4.i4.p3.2.m2.2.3.1.cmml"><mo id="S2.I4.i4.p3.2.m2.2.3.2.1" stretchy="false" xref="S2.I4.i4.p3.2.m2.2.3.1.cmml">(</mo><mi id="S2.I4.i4.p3.2.m2.1.1" xref="S2.I4.i4.p3.2.m2.1.1.cmml">W</mi><mo id="S2.I4.i4.p3.2.m2.2.3.2.2" xref="S2.I4.i4.p3.2.m2.2.3.1.cmml">,</mo><mi id="S2.I4.i4.p3.2.m2.2.2" xref="S2.I4.i4.p3.2.m2.2.2.cmml">H</mi><mo id="S2.I4.i4.p3.2.m2.2.3.2.3" stretchy="false" xref="S2.I4.i4.p3.2.m2.2.3.1.cmml">)</mo></mrow><annotation-xml encoding="MathML-Content" id="S2.I4.i4.p3.2.m2.2b"><interval closure="open" id="S2.I4.i4.p3.2.m2.2.3.1.cmml" xref="S2.I4.i4.p3.2.m2.2.3.2"><ci id="S2.I4.i4.p3.2.m2.1.1.cmml" xref="S2.I4.i4.p3.2.m2.1.1">𝑊</ci><ci id="S2.I4.i4.p3.2.m2.2.2.cmml" xref="S2.I4.i4.p3.2.m2.2.2">𝐻</ci></interval></annotation-xml><annotation encoding="application/x-tex" id="S2.I4.i4.p3.2.m2.2c">(W,H)</annotation><annotation encoding="application/x-llamapun" id="S2.I4.i4.p3.2.m2.2d">( italic_W , italic_H )</annotation></semantics></math>:</p> <table class="ltx_equation ltx_eqn_table" id="S2.Ex7"> <tbody><tr class="ltx_equation ltx_eqn_row ltx_align_baseline"> <td class="ltx_eqn_cell ltx_eqn_center_padleft"></td> <td class="ltx_eqn_cell ltx_align_center"><math alttext="\tilde{\text{disp}}=\text{Resize}(\text{disp},W,H)" class="ltx_Math" display="block" id="S2.Ex7.m1.3"><semantics id="S2.Ex7.m1.3a"><mrow id="S2.Ex7.m1.3.4" xref="S2.Ex7.m1.3.4.cmml"><mover accent="true" id="S2.Ex7.m1.3.4.2" xref="S2.Ex7.m1.3.4.2.cmml"><mtext id="S2.Ex7.m1.3.4.2.2" xref="S2.Ex7.m1.3.4.2.2a.cmml">disp</mtext><mo id="S2.Ex7.m1.3.4.2.1" xref="S2.Ex7.m1.3.4.2.1.cmml">~</mo></mover><mo id="S2.Ex7.m1.3.4.1" xref="S2.Ex7.m1.3.4.1.cmml">=</mo><mrow id="S2.Ex7.m1.3.4.3" xref="S2.Ex7.m1.3.4.3.cmml"><mtext id="S2.Ex7.m1.3.4.3.2" xref="S2.Ex7.m1.3.4.3.2a.cmml">Resize</mtext><mo id="S2.Ex7.m1.3.4.3.1" xref="S2.Ex7.m1.3.4.3.1.cmml">⁢</mo><mrow id="S2.Ex7.m1.3.4.3.3.2" xref="S2.Ex7.m1.3.4.3.3.1.cmml"><mo id="S2.Ex7.m1.3.4.3.3.2.1" stretchy="false" xref="S2.Ex7.m1.3.4.3.3.1.cmml">(</mo><mtext id="S2.Ex7.m1.1.1" xref="S2.Ex7.m1.1.1a.cmml">disp</mtext><mo id="S2.Ex7.m1.3.4.3.3.2.2" xref="S2.Ex7.m1.3.4.3.3.1.cmml">,</mo><mi id="S2.Ex7.m1.2.2" xref="S2.Ex7.m1.2.2.cmml">W</mi><mo id="S2.Ex7.m1.3.4.3.3.2.3" xref="S2.Ex7.m1.3.4.3.3.1.cmml">,</mo><mi id="S2.Ex7.m1.3.3" xref="S2.Ex7.m1.3.3.cmml">H</mi><mo id="S2.Ex7.m1.3.4.3.3.2.4" stretchy="false" xref="S2.Ex7.m1.3.4.3.3.1.cmml">)</mo></mrow></mrow></mrow><annotation-xml encoding="MathML-Content" id="S2.Ex7.m1.3b"><apply id="S2.Ex7.m1.3.4.cmml" xref="S2.Ex7.m1.3.4"><eq id="S2.Ex7.m1.3.4.1.cmml" xref="S2.Ex7.m1.3.4.1"></eq><apply id="S2.Ex7.m1.3.4.2.cmml" xref="S2.Ex7.m1.3.4.2"><ci id="S2.Ex7.m1.3.4.2.1.cmml" xref="S2.Ex7.m1.3.4.2.1">~</ci><ci id="S2.Ex7.m1.3.4.2.2a.cmml" xref="S2.Ex7.m1.3.4.2.2"><mtext id="S2.Ex7.m1.3.4.2.2.cmml" xref="S2.Ex7.m1.3.4.2.2">disp</mtext></ci></apply><apply id="S2.Ex7.m1.3.4.3.cmml" xref="S2.Ex7.m1.3.4.3"><times id="S2.Ex7.m1.3.4.3.1.cmml" xref="S2.Ex7.m1.3.4.3.1"></times><ci id="S2.Ex7.m1.3.4.3.2a.cmml" xref="S2.Ex7.m1.3.4.3.2"><mtext id="S2.Ex7.m1.3.4.3.2.cmml" xref="S2.Ex7.m1.3.4.3.2">Resize</mtext></ci><vector id="S2.Ex7.m1.3.4.3.3.1.cmml" xref="S2.Ex7.m1.3.4.3.3.2"><ci id="S2.Ex7.m1.1.1a.cmml" xref="S2.Ex7.m1.1.1"><mtext id="S2.Ex7.m1.1.1.cmml" xref="S2.Ex7.m1.1.1">disp</mtext></ci><ci id="S2.Ex7.m1.2.2.cmml" xref="S2.Ex7.m1.2.2">𝑊</ci><ci id="S2.Ex7.m1.3.3.cmml" xref="S2.Ex7.m1.3.3">𝐻</ci></vector></apply></apply></annotation-xml><annotation encoding="application/x-tex" id="S2.Ex7.m1.3c">\tilde{\text{disp}}=\text{Resize}(\text{disp},W,H)</annotation><annotation encoding="application/x-llamapun" id="S2.Ex7.m1.3d">over~ start_ARG disp end_ARG = Resize ( disp , italic_W , italic_H )</annotation></semantics></math></td> <td class="ltx_eqn_cell ltx_eqn_center_padright"></td> </tr></tbody> </table> </div> <div class="ltx_para" id="S2.I4.i4.p4"> <p class="ltx_p" id="S2.I4.i4.p4.2">2. <span class="ltx_text ltx_font_bold" id="S2.I4.i4.p4.2.1">Converts Disparity to Depth</span> using the provided <math alttext="f_{x}" class="ltx_Math" display="inline" id="S2.I4.i4.p4.1.m1.1"><semantics id="S2.I4.i4.p4.1.m1.1a"><msub id="S2.I4.i4.p4.1.m1.1.1" xref="S2.I4.i4.p4.1.m1.1.1.cmml"><mi id="S2.I4.i4.p4.1.m1.1.1.2" xref="S2.I4.i4.p4.1.m1.1.1.2.cmml">f</mi><mi id="S2.I4.i4.p4.1.m1.1.1.3" xref="S2.I4.i4.p4.1.m1.1.1.3.cmml">x</mi></msub><annotation-xml encoding="MathML-Content" id="S2.I4.i4.p4.1.m1.1b"><apply id="S2.I4.i4.p4.1.m1.1.1.cmml" xref="S2.I4.i4.p4.1.m1.1.1"><csymbol cd="ambiguous" id="S2.I4.i4.p4.1.m1.1.1.1.cmml" xref="S2.I4.i4.p4.1.m1.1.1">subscript</csymbol><ci id="S2.I4.i4.p4.1.m1.1.1.2.cmml" xref="S2.I4.i4.p4.1.m1.1.1.2">𝑓</ci><ci id="S2.I4.i4.p4.1.m1.1.1.3.cmml" xref="S2.I4.i4.p4.1.m1.1.1.3">𝑥</ci></apply></annotation-xml><annotation encoding="application/x-tex" id="S2.I4.i4.p4.1.m1.1c">f_{x}</annotation><annotation encoding="application/x-llamapun" id="S2.I4.i4.p4.1.m1.1d">italic_f start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT</annotation></semantics></math> and baseline <math alttext="b" class="ltx_Math" display="inline" id="S2.I4.i4.p4.2.m2.1"><semantics id="S2.I4.i4.p4.2.m2.1a"><mi id="S2.I4.i4.p4.2.m2.1.1" xref="S2.I4.i4.p4.2.m2.1.1.cmml">b</mi><annotation-xml encoding="MathML-Content" id="S2.I4.i4.p4.2.m2.1b"><ci id="S2.I4.i4.p4.2.m2.1.1.cmml" xref="S2.I4.i4.p4.2.m2.1.1">𝑏</ci></annotation-xml><annotation encoding="application/x-tex" id="S2.I4.i4.p4.2.m2.1c">b</annotation><annotation encoding="application/x-llamapun" id="S2.I4.i4.p4.2.m2.1d">italic_b</annotation></semantics></math>:</p> <table class="ltx_equation ltx_eqn_table" id="S2.Ex8"> <tbody><tr class="ltx_equation ltx_eqn_row ltx_align_baseline"> <td class="ltx_eqn_cell ltx_eqn_center_padleft"></td> <td class="ltx_eqn_cell ltx_align_center"><math alttext="D(x,y)=\frac{f_{x}\cdot b}{\tilde{\text{disp}}(x,y)}" class="ltx_Math" display="block" id="S2.Ex8.m1.4"><semantics id="S2.Ex8.m1.4a"><mrow id="S2.Ex8.m1.4.5" xref="S2.Ex8.m1.4.5.cmml"><mrow id="S2.Ex8.m1.4.5.2" xref="S2.Ex8.m1.4.5.2.cmml"><mi id="S2.Ex8.m1.4.5.2.2" xref="S2.Ex8.m1.4.5.2.2.cmml">D</mi><mo id="S2.Ex8.m1.4.5.2.1" xref="S2.Ex8.m1.4.5.2.1.cmml">⁢</mo><mrow id="S2.Ex8.m1.4.5.2.3.2" xref="S2.Ex8.m1.4.5.2.3.1.cmml"><mo id="S2.Ex8.m1.4.5.2.3.2.1" stretchy="false" xref="S2.Ex8.m1.4.5.2.3.1.cmml">(</mo><mi id="S2.Ex8.m1.3.3" xref="S2.Ex8.m1.3.3.cmml">x</mi><mo id="S2.Ex8.m1.4.5.2.3.2.2" xref="S2.Ex8.m1.4.5.2.3.1.cmml">,</mo><mi id="S2.Ex8.m1.4.4" xref="S2.Ex8.m1.4.4.cmml">y</mi><mo id="S2.Ex8.m1.4.5.2.3.2.3" stretchy="false" xref="S2.Ex8.m1.4.5.2.3.1.cmml">)</mo></mrow></mrow><mo id="S2.Ex8.m1.4.5.1" xref="S2.Ex8.m1.4.5.1.cmml">=</mo><mfrac id="S2.Ex8.m1.2.2" xref="S2.Ex8.m1.2.2.cmml"><mrow id="S2.Ex8.m1.2.2.4" xref="S2.Ex8.m1.2.2.4.cmml"><msub id="S2.Ex8.m1.2.2.4.2" xref="S2.Ex8.m1.2.2.4.2.cmml"><mi id="S2.Ex8.m1.2.2.4.2.2" xref="S2.Ex8.m1.2.2.4.2.2.cmml">f</mi><mi id="S2.Ex8.m1.2.2.4.2.3" xref="S2.Ex8.m1.2.2.4.2.3.cmml">x</mi></msub><mo id="S2.Ex8.m1.2.2.4.1" lspace="0.222em" rspace="0.222em" xref="S2.Ex8.m1.2.2.4.1.cmml">⋅</mo><mi id="S2.Ex8.m1.2.2.4.3" xref="S2.Ex8.m1.2.2.4.3.cmml">b</mi></mrow><mrow id="S2.Ex8.m1.2.2.2" xref="S2.Ex8.m1.2.2.2.cmml"><mover accent="true" id="S2.Ex8.m1.2.2.2.4" xref="S2.Ex8.m1.2.2.2.4.cmml"><mtext id="S2.Ex8.m1.2.2.2.4.2" xref="S2.Ex8.m1.2.2.2.4.2a.cmml">disp</mtext><mo id="S2.Ex8.m1.2.2.2.4.1" xref="S2.Ex8.m1.2.2.2.4.1.cmml">~</mo></mover><mo id="S2.Ex8.m1.2.2.2.3" xref="S2.Ex8.m1.2.2.2.3.cmml">⁢</mo><mrow id="S2.Ex8.m1.2.2.2.5.2" xref="S2.Ex8.m1.2.2.2.5.1.cmml"><mo id="S2.Ex8.m1.2.2.2.5.2.1" stretchy="false" xref="S2.Ex8.m1.2.2.2.5.1.cmml">(</mo><mi id="S2.Ex8.m1.1.1.1.1" xref="S2.Ex8.m1.1.1.1.1.cmml">x</mi><mo id="S2.Ex8.m1.2.2.2.5.2.2" xref="S2.Ex8.m1.2.2.2.5.1.cmml">,</mo><mi id="S2.Ex8.m1.2.2.2.2" xref="S2.Ex8.m1.2.2.2.2.cmml">y</mi><mo id="S2.Ex8.m1.2.2.2.5.2.3" stretchy="false" xref="S2.Ex8.m1.2.2.2.5.1.cmml">)</mo></mrow></mrow></mfrac></mrow><annotation-xml encoding="MathML-Content" id="S2.Ex8.m1.4b"><apply id="S2.Ex8.m1.4.5.cmml" xref="S2.Ex8.m1.4.5"><eq id="S2.Ex8.m1.4.5.1.cmml" xref="S2.Ex8.m1.4.5.1"></eq><apply id="S2.Ex8.m1.4.5.2.cmml" xref="S2.Ex8.m1.4.5.2"><times id="S2.Ex8.m1.4.5.2.1.cmml" xref="S2.Ex8.m1.4.5.2.1"></times><ci id="S2.Ex8.m1.4.5.2.2.cmml" xref="S2.Ex8.m1.4.5.2.2">𝐷</ci><interval closure="open" id="S2.Ex8.m1.4.5.2.3.1.cmml" xref="S2.Ex8.m1.4.5.2.3.2"><ci id="S2.Ex8.m1.3.3.cmml" xref="S2.Ex8.m1.3.3">𝑥</ci><ci id="S2.Ex8.m1.4.4.cmml" xref="S2.Ex8.m1.4.4">𝑦</ci></interval></apply><apply id="S2.Ex8.m1.2.2.cmml" xref="S2.Ex8.m1.2.2"><divide id="S2.Ex8.m1.2.2.3.cmml" xref="S2.Ex8.m1.2.2"></divide><apply id="S2.Ex8.m1.2.2.4.cmml" xref="S2.Ex8.m1.2.2.4"><ci id="S2.Ex8.m1.2.2.4.1.cmml" xref="S2.Ex8.m1.2.2.4.1">⋅</ci><apply id="S2.Ex8.m1.2.2.4.2.cmml" xref="S2.Ex8.m1.2.2.4.2"><csymbol cd="ambiguous" id="S2.Ex8.m1.2.2.4.2.1.cmml" xref="S2.Ex8.m1.2.2.4.2">subscript</csymbol><ci id="S2.Ex8.m1.2.2.4.2.2.cmml" xref="S2.Ex8.m1.2.2.4.2.2">𝑓</ci><ci id="S2.Ex8.m1.2.2.4.2.3.cmml" xref="S2.Ex8.m1.2.2.4.2.3">𝑥</ci></apply><ci id="S2.Ex8.m1.2.2.4.3.cmml" xref="S2.Ex8.m1.2.2.4.3">𝑏</ci></apply><apply id="S2.Ex8.m1.2.2.2.cmml" xref="S2.Ex8.m1.2.2.2"><times id="S2.Ex8.m1.2.2.2.3.cmml" xref="S2.Ex8.m1.2.2.2.3"></times><apply id="S2.Ex8.m1.2.2.2.4.cmml" xref="S2.Ex8.m1.2.2.2.4"><ci id="S2.Ex8.m1.2.2.2.4.1.cmml" xref="S2.Ex8.m1.2.2.2.4.1">~</ci><ci id="S2.Ex8.m1.2.2.2.4.2a.cmml" xref="S2.Ex8.m1.2.2.2.4.2"><mtext id="S2.Ex8.m1.2.2.2.4.2.cmml" xref="S2.Ex8.m1.2.2.2.4.2">disp</mtext></ci></apply><interval closure="open" id="S2.Ex8.m1.2.2.2.5.1.cmml" xref="S2.Ex8.m1.2.2.2.5.2"><ci id="S2.Ex8.m1.1.1.1.1.cmml" xref="S2.Ex8.m1.1.1.1.1">𝑥</ci><ci id="S2.Ex8.m1.2.2.2.2.cmml" xref="S2.Ex8.m1.2.2.2.2">𝑦</ci></interval></apply></apply></apply></annotation-xml><annotation encoding="application/x-tex" id="S2.Ex8.m1.4c">D(x,y)=\frac{f_{x}\cdot b}{\tilde{\text{disp}}(x,y)}</annotation><annotation encoding="application/x-llamapun" id="S2.Ex8.m1.4d">italic_D ( italic_x , italic_y ) = divide start_ARG italic_f start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT ⋅ italic_b end_ARG start_ARG over~ start_ARG disp end_ARG ( italic_x , italic_y ) end_ARG</annotation></semantics></math></td> <td class="ltx_eqn_cell ltx_eqn_center_padright"></td> </tr></tbody> </table> </div> <div class="ltx_para" id="S2.I4.i4.p5"> <p class="ltx_p" id="S2.I4.i4.p5.3">3. <span class="ltx_text ltx_font_bold" id="S2.I4.i4.p5.3.1">Normalization</span>: The resulting depth map is then normalized to an 8-bit scale (0–255) for visualization and storage. Let <math alttext="D_{\text{min}}" class="ltx_Math" display="inline" id="S2.I4.i4.p5.1.m1.1"><semantics id="S2.I4.i4.p5.1.m1.1a"><msub id="S2.I4.i4.p5.1.m1.1.1" xref="S2.I4.i4.p5.1.m1.1.1.cmml"><mi id="S2.I4.i4.p5.1.m1.1.1.2" xref="S2.I4.i4.p5.1.m1.1.1.2.cmml">D</mi><mtext id="S2.I4.i4.p5.1.m1.1.1.3" xref="S2.I4.i4.p5.1.m1.1.1.3a.cmml">min</mtext></msub><annotation-xml encoding="MathML-Content" id="S2.I4.i4.p5.1.m1.1b"><apply id="S2.I4.i4.p5.1.m1.1.1.cmml" xref="S2.I4.i4.p5.1.m1.1.1"><csymbol cd="ambiguous" id="S2.I4.i4.p5.1.m1.1.1.1.cmml" xref="S2.I4.i4.p5.1.m1.1.1">subscript</csymbol><ci id="S2.I4.i4.p5.1.m1.1.1.2.cmml" xref="S2.I4.i4.p5.1.m1.1.1.2">𝐷</ci><ci id="S2.I4.i4.p5.1.m1.1.1.3a.cmml" xref="S2.I4.i4.p5.1.m1.1.1.3"><mtext id="S2.I4.i4.p5.1.m1.1.1.3.cmml" mathsize="70%" xref="S2.I4.i4.p5.1.m1.1.1.3">min</mtext></ci></apply></annotation-xml><annotation encoding="application/x-tex" id="S2.I4.i4.p5.1.m1.1c">D_{\text{min}}</annotation><annotation encoding="application/x-llamapun" id="S2.I4.i4.p5.1.m1.1d">italic_D start_POSTSUBSCRIPT min end_POSTSUBSCRIPT</annotation></semantics></math> and <math alttext="D_{\text{max}}" class="ltx_Math" display="inline" id="S2.I4.i4.p5.2.m2.1"><semantics id="S2.I4.i4.p5.2.m2.1a"><msub id="S2.I4.i4.p5.2.m2.1.1" xref="S2.I4.i4.p5.2.m2.1.1.cmml"><mi id="S2.I4.i4.p5.2.m2.1.1.2" xref="S2.I4.i4.p5.2.m2.1.1.2.cmml">D</mi><mtext id="S2.I4.i4.p5.2.m2.1.1.3" xref="S2.I4.i4.p5.2.m2.1.1.3a.cmml">max</mtext></msub><annotation-xml encoding="MathML-Content" id="S2.I4.i4.p5.2.m2.1b"><apply id="S2.I4.i4.p5.2.m2.1.1.cmml" xref="S2.I4.i4.p5.2.m2.1.1"><csymbol cd="ambiguous" id="S2.I4.i4.p5.2.m2.1.1.1.cmml" xref="S2.I4.i4.p5.2.m2.1.1">subscript</csymbol><ci id="S2.I4.i4.p5.2.m2.1.1.2.cmml" xref="S2.I4.i4.p5.2.m2.1.1.2">𝐷</ci><ci id="S2.I4.i4.p5.2.m2.1.1.3a.cmml" xref="S2.I4.i4.p5.2.m2.1.1.3"><mtext id="S2.I4.i4.p5.2.m2.1.1.3.cmml" mathsize="70%" xref="S2.I4.i4.p5.2.m2.1.1.3">max</mtext></ci></apply></annotation-xml><annotation encoding="application/x-tex" id="S2.I4.i4.p5.2.m2.1c">D_{\text{max}}</annotation><annotation encoding="application/x-llamapun" id="S2.I4.i4.p5.2.m2.1d">italic_D start_POSTSUBSCRIPT max end_POSTSUBSCRIPT</annotation></semantics></math> be the minimum and maximum values in <math alttext="D" class="ltx_Math" display="inline" id="S2.I4.i4.p5.3.m3.1"><semantics id="S2.I4.i4.p5.3.m3.1a"><mi id="S2.I4.i4.p5.3.m3.1.1" xref="S2.I4.i4.p5.3.m3.1.1.cmml">D</mi><annotation-xml encoding="MathML-Content" id="S2.I4.i4.p5.3.m3.1b"><ci id="S2.I4.i4.p5.3.m3.1.1.cmml" xref="S2.I4.i4.p5.3.m3.1.1">𝐷</ci></annotation-xml><annotation encoding="application/x-tex" id="S2.I4.i4.p5.3.m3.1c">D</annotation><annotation encoding="application/x-llamapun" id="S2.I4.i4.p5.3.m3.1d">italic_D</annotation></semantics></math>, respectively:</p> <table class="ltx_equation ltx_eqn_table" id="S2.Ex9"> <tbody><tr class="ltx_equation ltx_eqn_row ltx_align_baseline"> <td class="ltx_eqn_cell ltx_eqn_center_padleft"></td> <td class="ltx_eqn_cell ltx_align_center"><math alttext="D_{\text{norm}}(x,y)=\frac{D(x,y)-D_{\text{min}}}{D_{\text{max}}-D_{\text{min}% }}\cdot 255" class="ltx_Math" display="block" id="S2.Ex9.m1.4"><semantics id="S2.Ex9.m1.4a"><mrow id="S2.Ex9.m1.4.5" xref="S2.Ex9.m1.4.5.cmml"><mrow id="S2.Ex9.m1.4.5.2" xref="S2.Ex9.m1.4.5.2.cmml"><msub id="S2.Ex9.m1.4.5.2.2" xref="S2.Ex9.m1.4.5.2.2.cmml"><mi id="S2.Ex9.m1.4.5.2.2.2" xref="S2.Ex9.m1.4.5.2.2.2.cmml">D</mi><mtext id="S2.Ex9.m1.4.5.2.2.3" xref="S2.Ex9.m1.4.5.2.2.3a.cmml">norm</mtext></msub><mo id="S2.Ex9.m1.4.5.2.1" xref="S2.Ex9.m1.4.5.2.1.cmml">⁢</mo><mrow id="S2.Ex9.m1.4.5.2.3.2" xref="S2.Ex9.m1.4.5.2.3.1.cmml"><mo id="S2.Ex9.m1.4.5.2.3.2.1" stretchy="false" xref="S2.Ex9.m1.4.5.2.3.1.cmml">(</mo><mi id="S2.Ex9.m1.3.3" xref="S2.Ex9.m1.3.3.cmml">x</mi><mo id="S2.Ex9.m1.4.5.2.3.2.2" xref="S2.Ex9.m1.4.5.2.3.1.cmml">,</mo><mi id="S2.Ex9.m1.4.4" xref="S2.Ex9.m1.4.4.cmml">y</mi><mo id="S2.Ex9.m1.4.5.2.3.2.3" stretchy="false" xref="S2.Ex9.m1.4.5.2.3.1.cmml">)</mo></mrow></mrow><mo id="S2.Ex9.m1.4.5.1" xref="S2.Ex9.m1.4.5.1.cmml">=</mo><mrow id="S2.Ex9.m1.4.5.3" xref="S2.Ex9.m1.4.5.3.cmml"><mfrac id="S2.Ex9.m1.2.2" xref="S2.Ex9.m1.2.2.cmml"><mrow id="S2.Ex9.m1.2.2.2" xref="S2.Ex9.m1.2.2.2.cmml"><mrow id="S2.Ex9.m1.2.2.2.4" xref="S2.Ex9.m1.2.2.2.4.cmml"><mi id="S2.Ex9.m1.2.2.2.4.2" xref="S2.Ex9.m1.2.2.2.4.2.cmml">D</mi><mo id="S2.Ex9.m1.2.2.2.4.1" xref="S2.Ex9.m1.2.2.2.4.1.cmml">⁢</mo><mrow id="S2.Ex9.m1.2.2.2.4.3.2" xref="S2.Ex9.m1.2.2.2.4.3.1.cmml"><mo id="S2.Ex9.m1.2.2.2.4.3.2.1" stretchy="false" xref="S2.Ex9.m1.2.2.2.4.3.1.cmml">(</mo><mi id="S2.Ex9.m1.1.1.1.1" xref="S2.Ex9.m1.1.1.1.1.cmml">x</mi><mo id="S2.Ex9.m1.2.2.2.4.3.2.2" xref="S2.Ex9.m1.2.2.2.4.3.1.cmml">,</mo><mi id="S2.Ex9.m1.2.2.2.2" xref="S2.Ex9.m1.2.2.2.2.cmml">y</mi><mo id="S2.Ex9.m1.2.2.2.4.3.2.3" stretchy="false" xref="S2.Ex9.m1.2.2.2.4.3.1.cmml">)</mo></mrow></mrow><mo id="S2.Ex9.m1.2.2.2.3" xref="S2.Ex9.m1.2.2.2.3.cmml">−</mo><msub id="S2.Ex9.m1.2.2.2.5" xref="S2.Ex9.m1.2.2.2.5.cmml"><mi id="S2.Ex9.m1.2.2.2.5.2" xref="S2.Ex9.m1.2.2.2.5.2.cmml">D</mi><mtext id="S2.Ex9.m1.2.2.2.5.3" xref="S2.Ex9.m1.2.2.2.5.3a.cmml">min</mtext></msub></mrow><mrow id="S2.Ex9.m1.2.2.4" xref="S2.Ex9.m1.2.2.4.cmml"><msub id="S2.Ex9.m1.2.2.4.2" xref="S2.Ex9.m1.2.2.4.2.cmml"><mi id="S2.Ex9.m1.2.2.4.2.2" xref="S2.Ex9.m1.2.2.4.2.2.cmml">D</mi><mtext id="S2.Ex9.m1.2.2.4.2.3" xref="S2.Ex9.m1.2.2.4.2.3a.cmml">max</mtext></msub><mo id="S2.Ex9.m1.2.2.4.1" xref="S2.Ex9.m1.2.2.4.1.cmml">−</mo><msub id="S2.Ex9.m1.2.2.4.3" xref="S2.Ex9.m1.2.2.4.3.cmml"><mi id="S2.Ex9.m1.2.2.4.3.2" xref="S2.Ex9.m1.2.2.4.3.2.cmml">D</mi><mtext id="S2.Ex9.m1.2.2.4.3.3" xref="S2.Ex9.m1.2.2.4.3.3a.cmml">min</mtext></msub></mrow></mfrac><mo id="S2.Ex9.m1.4.5.3.1" lspace="0.222em" rspace="0.222em" xref="S2.Ex9.m1.4.5.3.1.cmml">⋅</mo><mn id="S2.Ex9.m1.4.5.3.2" xref="S2.Ex9.m1.4.5.3.2.cmml">255</mn></mrow></mrow><annotation-xml encoding="MathML-Content" id="S2.Ex9.m1.4b"><apply id="S2.Ex9.m1.4.5.cmml" xref="S2.Ex9.m1.4.5"><eq id="S2.Ex9.m1.4.5.1.cmml" xref="S2.Ex9.m1.4.5.1"></eq><apply id="S2.Ex9.m1.4.5.2.cmml" xref="S2.Ex9.m1.4.5.2"><times id="S2.Ex9.m1.4.5.2.1.cmml" xref="S2.Ex9.m1.4.5.2.1"></times><apply id="S2.Ex9.m1.4.5.2.2.cmml" xref="S2.Ex9.m1.4.5.2.2"><csymbol cd="ambiguous" id="S2.Ex9.m1.4.5.2.2.1.cmml" xref="S2.Ex9.m1.4.5.2.2">subscript</csymbol><ci id="S2.Ex9.m1.4.5.2.2.2.cmml" xref="S2.Ex9.m1.4.5.2.2.2">𝐷</ci><ci id="S2.Ex9.m1.4.5.2.2.3a.cmml" xref="S2.Ex9.m1.4.5.2.2.3"><mtext id="S2.Ex9.m1.4.5.2.2.3.cmml" mathsize="70%" xref="S2.Ex9.m1.4.5.2.2.3">norm</mtext></ci></apply><interval closure="open" id="S2.Ex9.m1.4.5.2.3.1.cmml" xref="S2.Ex9.m1.4.5.2.3.2"><ci id="S2.Ex9.m1.3.3.cmml" xref="S2.Ex9.m1.3.3">𝑥</ci><ci id="S2.Ex9.m1.4.4.cmml" xref="S2.Ex9.m1.4.4">𝑦</ci></interval></apply><apply id="S2.Ex9.m1.4.5.3.cmml" xref="S2.Ex9.m1.4.5.3"><ci id="S2.Ex9.m1.4.5.3.1.cmml" xref="S2.Ex9.m1.4.5.3.1">⋅</ci><apply id="S2.Ex9.m1.2.2.cmml" xref="S2.Ex9.m1.2.2"><divide id="S2.Ex9.m1.2.2.3.cmml" xref="S2.Ex9.m1.2.2"></divide><apply id="S2.Ex9.m1.2.2.2.cmml" xref="S2.Ex9.m1.2.2.2"><minus id="S2.Ex9.m1.2.2.2.3.cmml" xref="S2.Ex9.m1.2.2.2.3"></minus><apply id="S2.Ex9.m1.2.2.2.4.cmml" xref="S2.Ex9.m1.2.2.2.4"><times id="S2.Ex9.m1.2.2.2.4.1.cmml" xref="S2.Ex9.m1.2.2.2.4.1"></times><ci id="S2.Ex9.m1.2.2.2.4.2.cmml" xref="S2.Ex9.m1.2.2.2.4.2">𝐷</ci><interval closure="open" id="S2.Ex9.m1.2.2.2.4.3.1.cmml" xref="S2.Ex9.m1.2.2.2.4.3.2"><ci id="S2.Ex9.m1.1.1.1.1.cmml" xref="S2.Ex9.m1.1.1.1.1">𝑥</ci><ci id="S2.Ex9.m1.2.2.2.2.cmml" xref="S2.Ex9.m1.2.2.2.2">𝑦</ci></interval></apply><apply id="S2.Ex9.m1.2.2.2.5.cmml" xref="S2.Ex9.m1.2.2.2.5"><csymbol cd="ambiguous" id="S2.Ex9.m1.2.2.2.5.1.cmml" xref="S2.Ex9.m1.2.2.2.5">subscript</csymbol><ci id="S2.Ex9.m1.2.2.2.5.2.cmml" xref="S2.Ex9.m1.2.2.2.5.2">𝐷</ci><ci id="S2.Ex9.m1.2.2.2.5.3a.cmml" xref="S2.Ex9.m1.2.2.2.5.3"><mtext id="S2.Ex9.m1.2.2.2.5.3.cmml" mathsize="70%" xref="S2.Ex9.m1.2.2.2.5.3">min</mtext></ci></apply></apply><apply id="S2.Ex9.m1.2.2.4.cmml" xref="S2.Ex9.m1.2.2.4"><minus id="S2.Ex9.m1.2.2.4.1.cmml" xref="S2.Ex9.m1.2.2.4.1"></minus><apply id="S2.Ex9.m1.2.2.4.2.cmml" xref="S2.Ex9.m1.2.2.4.2"><csymbol cd="ambiguous" id="S2.Ex9.m1.2.2.4.2.1.cmml" xref="S2.Ex9.m1.2.2.4.2">subscript</csymbol><ci id="S2.Ex9.m1.2.2.4.2.2.cmml" xref="S2.Ex9.m1.2.2.4.2.2">𝐷</ci><ci id="S2.Ex9.m1.2.2.4.2.3a.cmml" xref="S2.Ex9.m1.2.2.4.2.3"><mtext id="S2.Ex9.m1.2.2.4.2.3.cmml" mathsize="70%" xref="S2.Ex9.m1.2.2.4.2.3">max</mtext></ci></apply><apply id="S2.Ex9.m1.2.2.4.3.cmml" xref="S2.Ex9.m1.2.2.4.3"><csymbol cd="ambiguous" id="S2.Ex9.m1.2.2.4.3.1.cmml" xref="S2.Ex9.m1.2.2.4.3">subscript</csymbol><ci id="S2.Ex9.m1.2.2.4.3.2.cmml" xref="S2.Ex9.m1.2.2.4.3.2">𝐷</ci><ci id="S2.Ex9.m1.2.2.4.3.3a.cmml" xref="S2.Ex9.m1.2.2.4.3.3"><mtext id="S2.Ex9.m1.2.2.4.3.3.cmml" mathsize="70%" xref="S2.Ex9.m1.2.2.4.3.3">min</mtext></ci></apply></apply></apply><cn id="S2.Ex9.m1.4.5.3.2.cmml" type="integer" xref="S2.Ex9.m1.4.5.3.2">255</cn></apply></apply></annotation-xml><annotation encoding="application/x-tex" id="S2.Ex9.m1.4c">D_{\text{norm}}(x,y)=\frac{D(x,y)-D_{\text{min}}}{D_{\text{max}}-D_{\text{min}% }}\cdot 255</annotation><annotation encoding="application/x-llamapun" id="S2.Ex9.m1.4d">italic_D start_POSTSUBSCRIPT norm end_POSTSUBSCRIPT ( italic_x , italic_y ) = divide start_ARG italic_D ( italic_x , italic_y ) - italic_D start_POSTSUBSCRIPT min end_POSTSUBSCRIPT end_ARG start_ARG italic_D start_POSTSUBSCRIPT max end_POSTSUBSCRIPT - italic_D start_POSTSUBSCRIPT min end_POSTSUBSCRIPT end_ARG ⋅ 255</annotation></semantics></math></td> <td class="ltx_eqn_cell ltx_eqn_center_padright"></td> </tr></tbody> </table> </div> <div class="ltx_para" id="S2.I4.i4.p6"> <p class="ltx_p" id="S2.I4.i4.p6.1">This produces a grayscale depth image suitable for immediate inspection.</p> </div> <div class="ltx_para" id="S2.I4.i4.p7"> <p class="ltx_p" id="S2.I4.i4.p7.1">An example workflow for EndoDAC postprocessing from the code snippet is:</p> </div> <div class="ltx_para" id="S2.I4.i4.p8"> <ol class="ltx_enumerate" id="S2.I4.i4.I1"> <li class="ltx_item" id="S2.I4.i4.I0.i1" style="list-style-type:none;"> <span class="ltx_tag ltx_tag_item">1.</span> <div class="ltx_para" id="S2.I4.i4.I0.i1.p1"> <p class="ltx_p" id="S2.I4.i4.I0.i1.p1.1">Locate the <span class="ltx_text ltx_font_typewriter" id="S2.I4.i4.I0.i1.p1.1.1">_disp.npy</span> files in the prediction output directory.</p> </div> </li> <li class="ltx_item" id="S2.I4.i4.I0.i2" style="list-style-type:none;"> <span class="ltx_tag ltx_tag_item">2.</span> <div class="ltx_para" id="S2.I4.i4.I0.i2.p1"> <p class="ltx_p" id="S2.I4.i4.I0.i2.p1.1">For each <span class="ltx_text ltx_font_typewriter" id="S2.I4.i4.I0.i2.p1.1.1">_disp.npy</span> file, load the disparity map and resize it to the original image dimensions.</p> </div> </li> <li class="ltx_item" id="S2.I4.i4.I0.i3" style="list-style-type:none;"> <span class="ltx_tag ltx_tag_item">3.</span> <div class="ltx_para" id="S2.I4.i4.I0.i3.p1"> <p class="ltx_p" id="S2.I4.i4.I0.i3.p1.1">Compute depth from disparity.</p> </div> </li> <li class="ltx_item" id="S2.I4.i4.I0.i4" style="list-style-type:none;"> <span class="ltx_tag ltx_tag_item">4.</span> <div class="ltx_para" id="S2.I4.i4.I0.i4.p1"> <p class="ltx_p" id="S2.I4.i4.I0.i4.p1.1">Normalize <math alttext="D" class="ltx_Math" display="inline" id="S2.I4.i4.I0.i4.p1.1.m1.1"><semantics id="S2.I4.i4.I0.i4.p1.1.m1.1a"><mi id="S2.I4.i4.I0.i4.p1.1.m1.1.1" xref="S2.I4.i4.I0.i4.p1.1.m1.1.1.cmml">D</mi><annotation-xml encoding="MathML-Content" id="S2.I4.i4.I0.i4.p1.1.m1.1b"><ci id="S2.I4.i4.I0.i4.p1.1.m1.1.1.cmml" xref="S2.I4.i4.I0.i4.p1.1.m1.1.1">𝐷</ci></annotation-xml><annotation encoding="application/x-tex" id="S2.I4.i4.I0.i4.p1.1.m1.1c">D</annotation><annotation encoding="application/x-llamapun" id="S2.I4.i4.I0.i4.p1.1.m1.1d">italic_D</annotation></semantics></math> and save as a <span class="ltx_text ltx_font_typewriter" id="S2.I4.i4.I0.i4.p1.1.1">_depth.png</span> image.</p> </div> </li> </ol> </div> </li> <li class="ltx_item" id="S2.I4.i5" style="list-style-type:none;"> <span class="ltx_tag ltx_tag_item">•</span> <div class="ltx_para" id="S2.I4.i5.p1"> <p class="ltx_p" id="S2.I4.i5.p1.3"><span class="ltx_text ltx_font_bold" id="S2.I4.i5.p1.3.1">Custom ICP Implementation (icp_neighbor.py and icp.py)</span>: The ICP routine uses SVD-based point set alignment. Given correspondences, the rotation <math alttext="R" class="ltx_Math" display="inline" id="S2.I4.i5.p1.1.m1.1"><semantics id="S2.I4.i5.p1.1.m1.1a"><mi id="S2.I4.i5.p1.1.m1.1.1" xref="S2.I4.i5.p1.1.m1.1.1.cmml">R</mi><annotation-xml encoding="MathML-Content" id="S2.I4.i5.p1.1.m1.1b"><ci id="S2.I4.i5.p1.1.m1.1.1.cmml" xref="S2.I4.i5.p1.1.m1.1.1">𝑅</ci></annotation-xml><annotation encoding="application/x-tex" id="S2.I4.i5.p1.1.m1.1c">R</annotation><annotation encoding="application/x-llamapun" id="S2.I4.i5.p1.1.m1.1d">italic_R</annotation></semantics></math> and translation <math alttext="t" class="ltx_Math" display="inline" id="S2.I4.i5.p1.2.m2.1"><semantics id="S2.I4.i5.p1.2.m2.1a"><mi id="S2.I4.i5.p1.2.m2.1.1" xref="S2.I4.i5.p1.2.m2.1.1.cmml">t</mi><annotation-xml encoding="MathML-Content" id="S2.I4.i5.p1.2.m2.1b"><ci id="S2.I4.i5.p1.2.m2.1.1.cmml" xref="S2.I4.i5.p1.2.m2.1.1">𝑡</ci></annotation-xml><annotation encoding="application/x-tex" id="S2.I4.i5.p1.2.m2.1c">t</annotation><annotation encoding="application/x-llamapun" id="S2.I4.i5.p1.2.m2.1d">italic_t</annotation></semantics></math> are computed from the covariance matrix <math alttext="H" class="ltx_Math" display="inline" id="S2.I4.i5.p1.3.m3.1"><semantics id="S2.I4.i5.p1.3.m3.1a"><mi id="S2.I4.i5.p1.3.m3.1.1" xref="S2.I4.i5.p1.3.m3.1.1.cmml">H</mi><annotation-xml encoding="MathML-Content" id="S2.I4.i5.p1.3.m3.1b"><ci id="S2.I4.i5.p1.3.m3.1.1.cmml" xref="S2.I4.i5.p1.3.m3.1.1">𝐻</ci></annotation-xml><annotation encoding="application/x-tex" id="S2.I4.i5.p1.3.m3.1c">H</annotation><annotation encoding="application/x-llamapun" id="S2.I4.i5.p1.3.m3.1d">italic_H</annotation></semantics></math> :</p> <table class="ltx_equation ltx_eqn_table" id="S2.Ex10"> <tbody><tr class="ltx_equation ltx_eqn_row ltx_align_baseline"> <td class="ltx_eqn_cell ltx_eqn_center_padleft"></td> <td class="ltx_eqn_cell ltx_align_center"><math alttext="H=\sum_{i}(\mathbf{x}_{i}^{B}-\bar{\mathbf{x}}^{B})(\mathbf{x}_{\text{closest}% (i)}^{A}-\bar{\mathbf{x}}^{A})^{\top}" class="ltx_Math" display="block" id="S2.Ex10.m1.3"><semantics id="S2.Ex10.m1.3a"><mrow id="S2.Ex10.m1.3.3" xref="S2.Ex10.m1.3.3.cmml"><mi id="S2.Ex10.m1.3.3.4" xref="S2.Ex10.m1.3.3.4.cmml">H</mi><mo id="S2.Ex10.m1.3.3.3" rspace="0.111em" xref="S2.Ex10.m1.3.3.3.cmml">=</mo><mrow id="S2.Ex10.m1.3.3.2" xref="S2.Ex10.m1.3.3.2.cmml"><munder id="S2.Ex10.m1.3.3.2.3" xref="S2.Ex10.m1.3.3.2.3.cmml"><mo id="S2.Ex10.m1.3.3.2.3.2" movablelimits="false" rspace="0em" xref="S2.Ex10.m1.3.3.2.3.2.cmml">∑</mo><mi id="S2.Ex10.m1.3.3.2.3.3" xref="S2.Ex10.m1.3.3.2.3.3.cmml">i</mi></munder><mrow id="S2.Ex10.m1.3.3.2.2" xref="S2.Ex10.m1.3.3.2.2.cmml"><mrow id="S2.Ex10.m1.2.2.1.1.1.1" xref="S2.Ex10.m1.2.2.1.1.1.1.1.cmml"><mo id="S2.Ex10.m1.2.2.1.1.1.1.2" stretchy="false" xref="S2.Ex10.m1.2.2.1.1.1.1.1.cmml">(</mo><mrow id="S2.Ex10.m1.2.2.1.1.1.1.1" xref="S2.Ex10.m1.2.2.1.1.1.1.1.cmml"><msubsup id="S2.Ex10.m1.2.2.1.1.1.1.1.2" xref="S2.Ex10.m1.2.2.1.1.1.1.1.2.cmml"><mi id="S2.Ex10.m1.2.2.1.1.1.1.1.2.2.2" xref="S2.Ex10.m1.2.2.1.1.1.1.1.2.2.2.cmml">𝐱</mi><mi id="S2.Ex10.m1.2.2.1.1.1.1.1.2.2.3" xref="S2.Ex10.m1.2.2.1.1.1.1.1.2.2.3.cmml">i</mi><mi id="S2.Ex10.m1.2.2.1.1.1.1.1.2.3" xref="S2.Ex10.m1.2.2.1.1.1.1.1.2.3.cmml">B</mi></msubsup><mo id="S2.Ex10.m1.2.2.1.1.1.1.1.1" xref="S2.Ex10.m1.2.2.1.1.1.1.1.1.cmml">−</mo><msup id="S2.Ex10.m1.2.2.1.1.1.1.1.3" xref="S2.Ex10.m1.2.2.1.1.1.1.1.3.cmml"><mover accent="true" id="S2.Ex10.m1.2.2.1.1.1.1.1.3.2" xref="S2.Ex10.m1.2.2.1.1.1.1.1.3.2.cmml"><mi id="S2.Ex10.m1.2.2.1.1.1.1.1.3.2.2" xref="S2.Ex10.m1.2.2.1.1.1.1.1.3.2.2.cmml">𝐱</mi><mo id="S2.Ex10.m1.2.2.1.1.1.1.1.3.2.1" xref="S2.Ex10.m1.2.2.1.1.1.1.1.3.2.1.cmml">¯</mo></mover><mi id="S2.Ex10.m1.2.2.1.1.1.1.1.3.3" xref="S2.Ex10.m1.2.2.1.1.1.1.1.3.3.cmml">B</mi></msup></mrow><mo id="S2.Ex10.m1.2.2.1.1.1.1.3" stretchy="false" xref="S2.Ex10.m1.2.2.1.1.1.1.1.cmml">)</mo></mrow><mo id="S2.Ex10.m1.3.3.2.2.3" xref="S2.Ex10.m1.3.3.2.2.3.cmml">⁢</mo><msup id="S2.Ex10.m1.3.3.2.2.2" xref="S2.Ex10.m1.3.3.2.2.2.cmml"><mrow id="S2.Ex10.m1.3.3.2.2.2.1.1" xref="S2.Ex10.m1.3.3.2.2.2.1.1.1.cmml"><mo id="S2.Ex10.m1.3.3.2.2.2.1.1.2" stretchy="false" xref="S2.Ex10.m1.3.3.2.2.2.1.1.1.cmml">(</mo><mrow id="S2.Ex10.m1.3.3.2.2.2.1.1.1" xref="S2.Ex10.m1.3.3.2.2.2.1.1.1.cmml"><msubsup id="S2.Ex10.m1.3.3.2.2.2.1.1.1.2" xref="S2.Ex10.m1.3.3.2.2.2.1.1.1.2.cmml"><mi id="S2.Ex10.m1.3.3.2.2.2.1.1.1.2.2.2" xref="S2.Ex10.m1.3.3.2.2.2.1.1.1.2.2.2.cmml">𝐱</mi><mrow id="S2.Ex10.m1.1.1.1" xref="S2.Ex10.m1.1.1.1.cmml"><mtext id="S2.Ex10.m1.1.1.1.3" xref="S2.Ex10.m1.1.1.1.3a.cmml">closest</mtext><mo id="S2.Ex10.m1.1.1.1.2" xref="S2.Ex10.m1.1.1.1.2.cmml">⁢</mo><mrow id="S2.Ex10.m1.1.1.1.4.2" xref="S2.Ex10.m1.1.1.1.cmml"><mo id="S2.Ex10.m1.1.1.1.4.2.1" stretchy="false" xref="S2.Ex10.m1.1.1.1.cmml">(</mo><mi id="S2.Ex10.m1.1.1.1.1" xref="S2.Ex10.m1.1.1.1.1.cmml">i</mi><mo id="S2.Ex10.m1.1.1.1.4.2.2" stretchy="false" xref="S2.Ex10.m1.1.1.1.cmml">)</mo></mrow></mrow><mi id="S2.Ex10.m1.3.3.2.2.2.1.1.1.2.3" xref="S2.Ex10.m1.3.3.2.2.2.1.1.1.2.3.cmml">A</mi></msubsup><mo id="S2.Ex10.m1.3.3.2.2.2.1.1.1.1" xref="S2.Ex10.m1.3.3.2.2.2.1.1.1.1.cmml">−</mo><msup id="S2.Ex10.m1.3.3.2.2.2.1.1.1.3" xref="S2.Ex10.m1.3.3.2.2.2.1.1.1.3.cmml"><mover accent="true" id="S2.Ex10.m1.3.3.2.2.2.1.1.1.3.2" xref="S2.Ex10.m1.3.3.2.2.2.1.1.1.3.2.cmml"><mi id="S2.Ex10.m1.3.3.2.2.2.1.1.1.3.2.2" xref="S2.Ex10.m1.3.3.2.2.2.1.1.1.3.2.2.cmml">𝐱</mi><mo id="S2.Ex10.m1.3.3.2.2.2.1.1.1.3.2.1" xref="S2.Ex10.m1.3.3.2.2.2.1.1.1.3.2.1.cmml">¯</mo></mover><mi id="S2.Ex10.m1.3.3.2.2.2.1.1.1.3.3" xref="S2.Ex10.m1.3.3.2.2.2.1.1.1.3.3.cmml">A</mi></msup></mrow><mo id="S2.Ex10.m1.3.3.2.2.2.1.1.3" stretchy="false" xref="S2.Ex10.m1.3.3.2.2.2.1.1.1.cmml">)</mo></mrow><mo id="S2.Ex10.m1.3.3.2.2.2.3" xref="S2.Ex10.m1.3.3.2.2.2.3.cmml">⊤</mo></msup></mrow></mrow></mrow><annotation-xml encoding="MathML-Content" id="S2.Ex10.m1.3b"><apply id="S2.Ex10.m1.3.3.cmml" xref="S2.Ex10.m1.3.3"><eq id="S2.Ex10.m1.3.3.3.cmml" xref="S2.Ex10.m1.3.3.3"></eq><ci id="S2.Ex10.m1.3.3.4.cmml" xref="S2.Ex10.m1.3.3.4">𝐻</ci><apply id="S2.Ex10.m1.3.3.2.cmml" xref="S2.Ex10.m1.3.3.2"><apply id="S2.Ex10.m1.3.3.2.3.cmml" xref="S2.Ex10.m1.3.3.2.3"><csymbol cd="ambiguous" id="S2.Ex10.m1.3.3.2.3.1.cmml" xref="S2.Ex10.m1.3.3.2.3">subscript</csymbol><sum id="S2.Ex10.m1.3.3.2.3.2.cmml" xref="S2.Ex10.m1.3.3.2.3.2"></sum><ci id="S2.Ex10.m1.3.3.2.3.3.cmml" xref="S2.Ex10.m1.3.3.2.3.3">𝑖</ci></apply><apply id="S2.Ex10.m1.3.3.2.2.cmml" xref="S2.Ex10.m1.3.3.2.2"><times id="S2.Ex10.m1.3.3.2.2.3.cmml" xref="S2.Ex10.m1.3.3.2.2.3"></times><apply id="S2.Ex10.m1.2.2.1.1.1.1.1.cmml" xref="S2.Ex10.m1.2.2.1.1.1.1"><minus id="S2.Ex10.m1.2.2.1.1.1.1.1.1.cmml" xref="S2.Ex10.m1.2.2.1.1.1.1.1.1"></minus><apply id="S2.Ex10.m1.2.2.1.1.1.1.1.2.cmml" xref="S2.Ex10.m1.2.2.1.1.1.1.1.2"><csymbol cd="ambiguous" id="S2.Ex10.m1.2.2.1.1.1.1.1.2.1.cmml" xref="S2.Ex10.m1.2.2.1.1.1.1.1.2">superscript</csymbol><apply id="S2.Ex10.m1.2.2.1.1.1.1.1.2.2.cmml" xref="S2.Ex10.m1.2.2.1.1.1.1.1.2"><csymbol cd="ambiguous" id="S2.Ex10.m1.2.2.1.1.1.1.1.2.2.1.cmml" xref="S2.Ex10.m1.2.2.1.1.1.1.1.2">subscript</csymbol><ci id="S2.Ex10.m1.2.2.1.1.1.1.1.2.2.2.cmml" xref="S2.Ex10.m1.2.2.1.1.1.1.1.2.2.2">𝐱</ci><ci id="S2.Ex10.m1.2.2.1.1.1.1.1.2.2.3.cmml" xref="S2.Ex10.m1.2.2.1.1.1.1.1.2.2.3">𝑖</ci></apply><ci id="S2.Ex10.m1.2.2.1.1.1.1.1.2.3.cmml" xref="S2.Ex10.m1.2.2.1.1.1.1.1.2.3">𝐵</ci></apply><apply id="S2.Ex10.m1.2.2.1.1.1.1.1.3.cmml" xref="S2.Ex10.m1.2.2.1.1.1.1.1.3"><csymbol cd="ambiguous" id="S2.Ex10.m1.2.2.1.1.1.1.1.3.1.cmml" xref="S2.Ex10.m1.2.2.1.1.1.1.1.3">superscript</csymbol><apply id="S2.Ex10.m1.2.2.1.1.1.1.1.3.2.cmml" xref="S2.Ex10.m1.2.2.1.1.1.1.1.3.2"><ci id="S2.Ex10.m1.2.2.1.1.1.1.1.3.2.1.cmml" xref="S2.Ex10.m1.2.2.1.1.1.1.1.3.2.1">¯</ci><ci id="S2.Ex10.m1.2.2.1.1.1.1.1.3.2.2.cmml" xref="S2.Ex10.m1.2.2.1.1.1.1.1.3.2.2">𝐱</ci></apply><ci id="S2.Ex10.m1.2.2.1.1.1.1.1.3.3.cmml" xref="S2.Ex10.m1.2.2.1.1.1.1.1.3.3">𝐵</ci></apply></apply><apply id="S2.Ex10.m1.3.3.2.2.2.cmml" xref="S2.Ex10.m1.3.3.2.2.2"><csymbol cd="ambiguous" id="S2.Ex10.m1.3.3.2.2.2.2.cmml" xref="S2.Ex10.m1.3.3.2.2.2">superscript</csymbol><apply id="S2.Ex10.m1.3.3.2.2.2.1.1.1.cmml" xref="S2.Ex10.m1.3.3.2.2.2.1.1"><minus id="S2.Ex10.m1.3.3.2.2.2.1.1.1.1.cmml" xref="S2.Ex10.m1.3.3.2.2.2.1.1.1.1"></minus><apply id="S2.Ex10.m1.3.3.2.2.2.1.1.1.2.cmml" xref="S2.Ex10.m1.3.3.2.2.2.1.1.1.2"><csymbol cd="ambiguous" id="S2.Ex10.m1.3.3.2.2.2.1.1.1.2.1.cmml" xref="S2.Ex10.m1.3.3.2.2.2.1.1.1.2">superscript</csymbol><apply id="S2.Ex10.m1.3.3.2.2.2.1.1.1.2.2.cmml" xref="S2.Ex10.m1.3.3.2.2.2.1.1.1.2"><csymbol cd="ambiguous" id="S2.Ex10.m1.3.3.2.2.2.1.1.1.2.2.1.cmml" xref="S2.Ex10.m1.3.3.2.2.2.1.1.1.2">subscript</csymbol><ci id="S2.Ex10.m1.3.3.2.2.2.1.1.1.2.2.2.cmml" xref="S2.Ex10.m1.3.3.2.2.2.1.1.1.2.2.2">𝐱</ci><apply id="S2.Ex10.m1.1.1.1.cmml" xref="S2.Ex10.m1.1.1.1"><times id="S2.Ex10.m1.1.1.1.2.cmml" xref="S2.Ex10.m1.1.1.1.2"></times><ci id="S2.Ex10.m1.1.1.1.3a.cmml" xref="S2.Ex10.m1.1.1.1.3"><mtext id="S2.Ex10.m1.1.1.1.3.cmml" mathsize="70%" xref="S2.Ex10.m1.1.1.1.3">closest</mtext></ci><ci id="S2.Ex10.m1.1.1.1.1.cmml" xref="S2.Ex10.m1.1.1.1.1">𝑖</ci></apply></apply><ci id="S2.Ex10.m1.3.3.2.2.2.1.1.1.2.3.cmml" xref="S2.Ex10.m1.3.3.2.2.2.1.1.1.2.3">𝐴</ci></apply><apply id="S2.Ex10.m1.3.3.2.2.2.1.1.1.3.cmml" xref="S2.Ex10.m1.3.3.2.2.2.1.1.1.3"><csymbol cd="ambiguous" id="S2.Ex10.m1.3.3.2.2.2.1.1.1.3.1.cmml" xref="S2.Ex10.m1.3.3.2.2.2.1.1.1.3">superscript</csymbol><apply id="S2.Ex10.m1.3.3.2.2.2.1.1.1.3.2.cmml" xref="S2.Ex10.m1.3.3.2.2.2.1.1.1.3.2"><ci id="S2.Ex10.m1.3.3.2.2.2.1.1.1.3.2.1.cmml" xref="S2.Ex10.m1.3.3.2.2.2.1.1.1.3.2.1">¯</ci><ci id="S2.Ex10.m1.3.3.2.2.2.1.1.1.3.2.2.cmml" xref="S2.Ex10.m1.3.3.2.2.2.1.1.1.3.2.2">𝐱</ci></apply><ci id="S2.Ex10.m1.3.3.2.2.2.1.1.1.3.3.cmml" xref="S2.Ex10.m1.3.3.2.2.2.1.1.1.3.3">𝐴</ci></apply></apply><csymbol cd="latexml" id="S2.Ex10.m1.3.3.2.2.2.3.cmml" xref="S2.Ex10.m1.3.3.2.2.2.3">top</csymbol></apply></apply></apply></apply></annotation-xml><annotation encoding="application/x-tex" id="S2.Ex10.m1.3c">H=\sum_{i}(\mathbf{x}_{i}^{B}-\bar{\mathbf{x}}^{B})(\mathbf{x}_{\text{closest}% (i)}^{A}-\bar{\mathbf{x}}^{A})^{\top}</annotation><annotation encoding="application/x-llamapun" id="S2.Ex10.m1.3d">italic_H = ∑ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( bold_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT - over¯ start_ARG bold_x end_ARG start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT ) ( bold_x start_POSTSUBSCRIPT closest ( italic_i ) end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_A end_POSTSUPERSCRIPT - over¯ start_ARG bold_x end_ARG start_POSTSUPERSCRIPT italic_A end_POSTSUPERSCRIPT ) start_POSTSUPERSCRIPT ⊤ end_POSTSUPERSCRIPT</annotation></semantics></math></td> <td class="ltx_eqn_cell ltx_eqn_center_padright"></td> </tr></tbody> </table> <table class="ltx_equation ltx_eqn_table" id="S2.Ex11"> <tbody><tr class="ltx_equation ltx_eqn_row ltx_align_baseline"> <td class="ltx_eqn_cell ltx_eqn_center_padleft"></td> <td class="ltx_eqn_cell ltx_align_center"><math alttext="U,S,V^{T}=\text{SVD}(H),\quad R=VU^{T},\quad t=\bar{\mathbf{x}}^{A}-R\bar{% \mathbf{x}}^{B}" class="ltx_Math" display="block" id="S2.Ex11.m1.5"><semantics id="S2.Ex11.m1.5a"><mrow id="S2.Ex11.m1.5.5.2" xref="S2.Ex11.m1.5.5.3.cmml"><mrow id="S2.Ex11.m1.4.4.1.1" xref="S2.Ex11.m1.4.4.1.1.cmml"><mrow id="S2.Ex11.m1.4.4.1.1.1.1" xref="S2.Ex11.m1.4.4.1.1.1.2.cmml"><mi id="S2.Ex11.m1.2.2" xref="S2.Ex11.m1.2.2.cmml">U</mi><mo id="S2.Ex11.m1.4.4.1.1.1.1.2" xref="S2.Ex11.m1.4.4.1.1.1.2.cmml">,</mo><mi id="S2.Ex11.m1.3.3" xref="S2.Ex11.m1.3.3.cmml">S</mi><mo id="S2.Ex11.m1.4.4.1.1.1.1.3" xref="S2.Ex11.m1.4.4.1.1.1.2.cmml">,</mo><msup id="S2.Ex11.m1.4.4.1.1.1.1.1" xref="S2.Ex11.m1.4.4.1.1.1.1.1.cmml"><mi id="S2.Ex11.m1.4.4.1.1.1.1.1.2" xref="S2.Ex11.m1.4.4.1.1.1.1.1.2.cmml">V</mi><mi id="S2.Ex11.m1.4.4.1.1.1.1.1.3" xref="S2.Ex11.m1.4.4.1.1.1.1.1.3.cmml">T</mi></msup></mrow><mo id="S2.Ex11.m1.4.4.1.1.2" xref="S2.Ex11.m1.4.4.1.1.2.cmml">=</mo><mrow id="S2.Ex11.m1.4.4.1.1.3" xref="S2.Ex11.m1.4.4.1.1.3.cmml"><mtext id="S2.Ex11.m1.4.4.1.1.3.2" xref="S2.Ex11.m1.4.4.1.1.3.2a.cmml">SVD</mtext><mo id="S2.Ex11.m1.4.4.1.1.3.1" xref="S2.Ex11.m1.4.4.1.1.3.1.cmml">⁢</mo><mrow id="S2.Ex11.m1.4.4.1.1.3.3.2" xref="S2.Ex11.m1.4.4.1.1.3.cmml"><mo id="S2.Ex11.m1.4.4.1.1.3.3.2.1" stretchy="false" xref="S2.Ex11.m1.4.4.1.1.3.cmml">(</mo><mi id="S2.Ex11.m1.1.1" xref="S2.Ex11.m1.1.1.cmml">H</mi><mo id="S2.Ex11.m1.4.4.1.1.3.3.2.2" stretchy="false" xref="S2.Ex11.m1.4.4.1.1.3.cmml">)</mo></mrow></mrow></mrow><mo id="S2.Ex11.m1.5.5.2.3" rspace="1.167em" xref="S2.Ex11.m1.5.5.3a.cmml">,</mo><mrow id="S2.Ex11.m1.5.5.2.2.2" xref="S2.Ex11.m1.5.5.2.2.3.cmml"><mrow id="S2.Ex11.m1.5.5.2.2.1.1" xref="S2.Ex11.m1.5.5.2.2.1.1.cmml"><mi id="S2.Ex11.m1.5.5.2.2.1.1.2" xref="S2.Ex11.m1.5.5.2.2.1.1.2.cmml">R</mi><mo id="S2.Ex11.m1.5.5.2.2.1.1.1" xref="S2.Ex11.m1.5.5.2.2.1.1.1.cmml">=</mo><mrow id="S2.Ex11.m1.5.5.2.2.1.1.3" xref="S2.Ex11.m1.5.5.2.2.1.1.3.cmml"><mi id="S2.Ex11.m1.5.5.2.2.1.1.3.2" xref="S2.Ex11.m1.5.5.2.2.1.1.3.2.cmml">V</mi><mo id="S2.Ex11.m1.5.5.2.2.1.1.3.1" xref="S2.Ex11.m1.5.5.2.2.1.1.3.1.cmml">⁢</mo><msup id="S2.Ex11.m1.5.5.2.2.1.1.3.3" xref="S2.Ex11.m1.5.5.2.2.1.1.3.3.cmml"><mi id="S2.Ex11.m1.5.5.2.2.1.1.3.3.2" xref="S2.Ex11.m1.5.5.2.2.1.1.3.3.2.cmml">U</mi><mi id="S2.Ex11.m1.5.5.2.2.1.1.3.3.3" xref="S2.Ex11.m1.5.5.2.2.1.1.3.3.3.cmml">T</mi></msup></mrow></mrow><mo id="S2.Ex11.m1.5.5.2.2.2.3" rspace="1.167em" xref="S2.Ex11.m1.5.5.2.2.3a.cmml">,</mo><mrow id="S2.Ex11.m1.5.5.2.2.2.2" xref="S2.Ex11.m1.5.5.2.2.2.2.cmml"><mi id="S2.Ex11.m1.5.5.2.2.2.2.2" xref="S2.Ex11.m1.5.5.2.2.2.2.2.cmml">t</mi><mo id="S2.Ex11.m1.5.5.2.2.2.2.1" xref="S2.Ex11.m1.5.5.2.2.2.2.1.cmml">=</mo><mrow id="S2.Ex11.m1.5.5.2.2.2.2.3" xref="S2.Ex11.m1.5.5.2.2.2.2.3.cmml"><msup id="S2.Ex11.m1.5.5.2.2.2.2.3.2" xref="S2.Ex11.m1.5.5.2.2.2.2.3.2.cmml"><mover accent="true" id="S2.Ex11.m1.5.5.2.2.2.2.3.2.2" xref="S2.Ex11.m1.5.5.2.2.2.2.3.2.2.cmml"><mi id="S2.Ex11.m1.5.5.2.2.2.2.3.2.2.2" xref="S2.Ex11.m1.5.5.2.2.2.2.3.2.2.2.cmml">𝐱</mi><mo id="S2.Ex11.m1.5.5.2.2.2.2.3.2.2.1" xref="S2.Ex11.m1.5.5.2.2.2.2.3.2.2.1.cmml">¯</mo></mover><mi id="S2.Ex11.m1.5.5.2.2.2.2.3.2.3" xref="S2.Ex11.m1.5.5.2.2.2.2.3.2.3.cmml">A</mi></msup><mo id="S2.Ex11.m1.5.5.2.2.2.2.3.1" xref="S2.Ex11.m1.5.5.2.2.2.2.3.1.cmml">−</mo><mrow id="S2.Ex11.m1.5.5.2.2.2.2.3.3" xref="S2.Ex11.m1.5.5.2.2.2.2.3.3.cmml"><mi id="S2.Ex11.m1.5.5.2.2.2.2.3.3.2" xref="S2.Ex11.m1.5.5.2.2.2.2.3.3.2.cmml">R</mi><mo id="S2.Ex11.m1.5.5.2.2.2.2.3.3.1" xref="S2.Ex11.m1.5.5.2.2.2.2.3.3.1.cmml">⁢</mo><msup id="S2.Ex11.m1.5.5.2.2.2.2.3.3.3" xref="S2.Ex11.m1.5.5.2.2.2.2.3.3.3.cmml"><mover accent="true" id="S2.Ex11.m1.5.5.2.2.2.2.3.3.3.2" xref="S2.Ex11.m1.5.5.2.2.2.2.3.3.3.2.cmml"><mi id="S2.Ex11.m1.5.5.2.2.2.2.3.3.3.2.2" xref="S2.Ex11.m1.5.5.2.2.2.2.3.3.3.2.2.cmml">𝐱</mi><mo id="S2.Ex11.m1.5.5.2.2.2.2.3.3.3.2.1" xref="S2.Ex11.m1.5.5.2.2.2.2.3.3.3.2.1.cmml">¯</mo></mover><mi id="S2.Ex11.m1.5.5.2.2.2.2.3.3.3.3" xref="S2.Ex11.m1.5.5.2.2.2.2.3.3.3.3.cmml">B</mi></msup></mrow></mrow></mrow></mrow></mrow><annotation-xml encoding="MathML-Content" id="S2.Ex11.m1.5b"><apply id="S2.Ex11.m1.5.5.3.cmml" xref="S2.Ex11.m1.5.5.2"><csymbol cd="ambiguous" id="S2.Ex11.m1.5.5.3a.cmml" xref="S2.Ex11.m1.5.5.2.3">formulae-sequence</csymbol><apply id="S2.Ex11.m1.4.4.1.1.cmml" xref="S2.Ex11.m1.4.4.1.1"><eq id="S2.Ex11.m1.4.4.1.1.2.cmml" xref="S2.Ex11.m1.4.4.1.1.2"></eq><list id="S2.Ex11.m1.4.4.1.1.1.2.cmml" xref="S2.Ex11.m1.4.4.1.1.1.1"><ci id="S2.Ex11.m1.2.2.cmml" xref="S2.Ex11.m1.2.2">𝑈</ci><ci id="S2.Ex11.m1.3.3.cmml" xref="S2.Ex11.m1.3.3">𝑆</ci><apply id="S2.Ex11.m1.4.4.1.1.1.1.1.cmml" xref="S2.Ex11.m1.4.4.1.1.1.1.1"><csymbol cd="ambiguous" id="S2.Ex11.m1.4.4.1.1.1.1.1.1.cmml" xref="S2.Ex11.m1.4.4.1.1.1.1.1">superscript</csymbol><ci id="S2.Ex11.m1.4.4.1.1.1.1.1.2.cmml" xref="S2.Ex11.m1.4.4.1.1.1.1.1.2">𝑉</ci><ci id="S2.Ex11.m1.4.4.1.1.1.1.1.3.cmml" xref="S2.Ex11.m1.4.4.1.1.1.1.1.3">𝑇</ci></apply></list><apply id="S2.Ex11.m1.4.4.1.1.3.cmml" xref="S2.Ex11.m1.4.4.1.1.3"><times id="S2.Ex11.m1.4.4.1.1.3.1.cmml" xref="S2.Ex11.m1.4.4.1.1.3.1"></times><ci id="S2.Ex11.m1.4.4.1.1.3.2a.cmml" xref="S2.Ex11.m1.4.4.1.1.3.2"><mtext id="S2.Ex11.m1.4.4.1.1.3.2.cmml" xref="S2.Ex11.m1.4.4.1.1.3.2">SVD</mtext></ci><ci id="S2.Ex11.m1.1.1.cmml" xref="S2.Ex11.m1.1.1">𝐻</ci></apply></apply><apply id="S2.Ex11.m1.5.5.2.2.3.cmml" xref="S2.Ex11.m1.5.5.2.2.2"><csymbol cd="ambiguous" id="S2.Ex11.m1.5.5.2.2.3a.cmml" xref="S2.Ex11.m1.5.5.2.2.2.3">formulae-sequence</csymbol><apply id="S2.Ex11.m1.5.5.2.2.1.1.cmml" xref="S2.Ex11.m1.5.5.2.2.1.1"><eq id="S2.Ex11.m1.5.5.2.2.1.1.1.cmml" xref="S2.Ex11.m1.5.5.2.2.1.1.1"></eq><ci id="S2.Ex11.m1.5.5.2.2.1.1.2.cmml" xref="S2.Ex11.m1.5.5.2.2.1.1.2">𝑅</ci><apply id="S2.Ex11.m1.5.5.2.2.1.1.3.cmml" xref="S2.Ex11.m1.5.5.2.2.1.1.3"><times id="S2.Ex11.m1.5.5.2.2.1.1.3.1.cmml" xref="S2.Ex11.m1.5.5.2.2.1.1.3.1"></times><ci id="S2.Ex11.m1.5.5.2.2.1.1.3.2.cmml" xref="S2.Ex11.m1.5.5.2.2.1.1.3.2">𝑉</ci><apply id="S2.Ex11.m1.5.5.2.2.1.1.3.3.cmml" xref="S2.Ex11.m1.5.5.2.2.1.1.3.3"><csymbol cd="ambiguous" id="S2.Ex11.m1.5.5.2.2.1.1.3.3.1.cmml" xref="S2.Ex11.m1.5.5.2.2.1.1.3.3">superscript</csymbol><ci id="S2.Ex11.m1.5.5.2.2.1.1.3.3.2.cmml" xref="S2.Ex11.m1.5.5.2.2.1.1.3.3.2">𝑈</ci><ci id="S2.Ex11.m1.5.5.2.2.1.1.3.3.3.cmml" xref="S2.Ex11.m1.5.5.2.2.1.1.3.3.3">𝑇</ci></apply></apply></apply><apply id="S2.Ex11.m1.5.5.2.2.2.2.cmml" xref="S2.Ex11.m1.5.5.2.2.2.2"><eq id="S2.Ex11.m1.5.5.2.2.2.2.1.cmml" xref="S2.Ex11.m1.5.5.2.2.2.2.1"></eq><ci id="S2.Ex11.m1.5.5.2.2.2.2.2.cmml" xref="S2.Ex11.m1.5.5.2.2.2.2.2">𝑡</ci><apply id="S2.Ex11.m1.5.5.2.2.2.2.3.cmml" xref="S2.Ex11.m1.5.5.2.2.2.2.3"><minus id="S2.Ex11.m1.5.5.2.2.2.2.3.1.cmml" xref="S2.Ex11.m1.5.5.2.2.2.2.3.1"></minus><apply id="S2.Ex11.m1.5.5.2.2.2.2.3.2.cmml" xref="S2.Ex11.m1.5.5.2.2.2.2.3.2"><csymbol cd="ambiguous" id="S2.Ex11.m1.5.5.2.2.2.2.3.2.1.cmml" xref="S2.Ex11.m1.5.5.2.2.2.2.3.2">superscript</csymbol><apply id="S2.Ex11.m1.5.5.2.2.2.2.3.2.2.cmml" xref="S2.Ex11.m1.5.5.2.2.2.2.3.2.2"><ci id="S2.Ex11.m1.5.5.2.2.2.2.3.2.2.1.cmml" xref="S2.Ex11.m1.5.5.2.2.2.2.3.2.2.1">¯</ci><ci id="S2.Ex11.m1.5.5.2.2.2.2.3.2.2.2.cmml" xref="S2.Ex11.m1.5.5.2.2.2.2.3.2.2.2">𝐱</ci></apply><ci id="S2.Ex11.m1.5.5.2.2.2.2.3.2.3.cmml" xref="S2.Ex11.m1.5.5.2.2.2.2.3.2.3">𝐴</ci></apply><apply id="S2.Ex11.m1.5.5.2.2.2.2.3.3.cmml" xref="S2.Ex11.m1.5.5.2.2.2.2.3.3"><times id="S2.Ex11.m1.5.5.2.2.2.2.3.3.1.cmml" xref="S2.Ex11.m1.5.5.2.2.2.2.3.3.1"></times><ci id="S2.Ex11.m1.5.5.2.2.2.2.3.3.2.cmml" xref="S2.Ex11.m1.5.5.2.2.2.2.3.3.2">𝑅</ci><apply id="S2.Ex11.m1.5.5.2.2.2.2.3.3.3.cmml" xref="S2.Ex11.m1.5.5.2.2.2.2.3.3.3"><csymbol cd="ambiguous" id="S2.Ex11.m1.5.5.2.2.2.2.3.3.3.1.cmml" xref="S2.Ex11.m1.5.5.2.2.2.2.3.3.3">superscript</csymbol><apply id="S2.Ex11.m1.5.5.2.2.2.2.3.3.3.2.cmml" xref="S2.Ex11.m1.5.5.2.2.2.2.3.3.3.2"><ci id="S2.Ex11.m1.5.5.2.2.2.2.3.3.3.2.1.cmml" xref="S2.Ex11.m1.5.5.2.2.2.2.3.3.3.2.1">¯</ci><ci id="S2.Ex11.m1.5.5.2.2.2.2.3.3.3.2.2.cmml" xref="S2.Ex11.m1.5.5.2.2.2.2.3.3.3.2.2">𝐱</ci></apply><ci id="S2.Ex11.m1.5.5.2.2.2.2.3.3.3.3.cmml" xref="S2.Ex11.m1.5.5.2.2.2.2.3.3.3.3">𝐵</ci></apply></apply></apply></apply></apply></apply></annotation-xml><annotation encoding="application/x-tex" id="S2.Ex11.m1.5c">U,S,V^{T}=\text{SVD}(H),\quad R=VU^{T},\quad t=\bar{\mathbf{x}}^{A}-R\bar{% \mathbf{x}}^{B}</annotation><annotation encoding="application/x-llamapun" id="S2.Ex11.m1.5d">italic_U , italic_S , italic_V start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT = SVD ( italic_H ) , italic_R = italic_V italic_U start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , italic_t = over¯ start_ARG bold_x end_ARG start_POSTSUPERSCRIPT italic_A end_POSTSUPERSCRIPT - italic_R over¯ start_ARG bold_x end_ARG start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT</annotation></semantics></math></td> <td class="ltx_eqn_cell ltx_eqn_center_padright"></td> </tr></tbody> </table> </div> <div class="ltx_para" id="S2.I4.i5.p2"> <p class="ltx_p" id="S2.I4.i5.p2.2">To handle outliers points with distances above a dynamic threshold are excluded before computing <math alttext="R" class="ltx_Math" display="inline" id="S2.I4.i5.p2.1.m1.1"><semantics id="S2.I4.i5.p2.1.m1.1a"><mi id="S2.I4.i5.p2.1.m1.1.1" xref="S2.I4.i5.p2.1.m1.1.1.cmml">R</mi><annotation-xml encoding="MathML-Content" id="S2.I4.i5.p2.1.m1.1b"><ci id="S2.I4.i5.p2.1.m1.1.1.cmml" xref="S2.I4.i5.p2.1.m1.1.1">𝑅</ci></annotation-xml><annotation encoding="application/x-tex" id="S2.I4.i5.p2.1.m1.1c">R</annotation><annotation encoding="application/x-llamapun" id="S2.I4.i5.p2.1.m1.1d">italic_R</annotation></semantics></math> and <math alttext="t" class="ltx_Math" display="inline" id="S2.I4.i5.p2.2.m2.1"><semantics id="S2.I4.i5.p2.2.m2.1a"><mi id="S2.I4.i5.p2.2.m2.1.1" xref="S2.I4.i5.p2.2.m2.1.1.cmml">t</mi><annotation-xml encoding="MathML-Content" id="S2.I4.i5.p2.2.m2.1b"><ci id="S2.I4.i5.p2.2.m2.1.1.cmml" xref="S2.I4.i5.p2.2.m2.1.1">𝑡</ci></annotation-xml><annotation encoding="application/x-tex" id="S2.I4.i5.p2.2.m2.1c">t</annotation><annotation encoding="application/x-llamapun" id="S2.I4.i5.p2.2.m2.1d">italic_t</annotation></semantics></math>.</p> </div> </li> <li class="ltx_item" id="S2.I4.i6" style="list-style-type:none;"> <span class="ltx_tag ltx_tag_item">•</span> <div class="ltx_para" id="S2.I4.i6.p1"> <p class="ltx_p" id="S2.I4.i6.p1.1"><span class="ltx_text ltx_font_bold" id="S2.I4.i6.p1.1.1">Point Cloud Merging and K-D Tree Filtering</span>: In the merging step, a KD-tree is built on the global map. Points from the new frame that lie beyond certain distance thresholds are considered to represent new areas and are appended to the global map, while duplicates or erroneous points are discarded.</p> </div> </li> <li class="ltx_item" id="S2.I4.i7" style="list-style-type:none;"> <span class="ltx_tag ltx_tag_item">•</span> <div class="ltx_para" id="S2.I4.i7.p1"> <p class="ltx_p" id="S2.I4.i7.p1.1"><span class="ltx_text ltx_font_bold" id="S2.I4.i7.p1.1.1">Evaluation and Visualization</span>: The code provides functionalities in <span class="ltx_text ltx_font_typewriter" id="S2.I4.i7.p1.1.2">evaluation/evaluate.py</span> and <span class="ltx_text ltx_font_typewriter" id="S2.I4.i7.p1.1.3">visualize/outputvisual.py</span> to measure reconstruction quality against ground truth and output intermediate results, if available.</p> </div> </li> </ul> </div> </section> </section> <section class="ltx_section" id="S3"> <h2 class="ltx_title ltx_title_section"> <span class="ltx_tag ltx_tag_section">3 </span>Experiments and Evaluation</h2> <div class="ltx_para" id="S3.p1"> <p class="ltx_p" id="S3.p1.1">We conducted three main experiments to evaluate key components of our pipeline:</p> </div> <div class="ltx_para" id="S3.p2"> <ul class="ltx_itemize" id="S3.I1"> <li class="ltx_item" id="S3.I1.i1" style="list-style-type:none;"> <span class="ltx_tag ltx_tag_item">•</span> <div class="ltx_para" id="S3.I1.i1.p1"> <p class="ltx_p" id="S3.I1.i1.p1.1">depth-estimation and its quantitative analysis</p> </div> </li> <li class="ltx_item" id="S3.I1.i2" style="list-style-type:none;"> <span class="ltx_tag ltx_tag_item">•</span> <div class="ltx_para" id="S3.I1.i2.p1"> <p class="ltx_p" id="S3.I1.i2.p1.1">ICP threshold tuning</p> </div> </li> <li class="ltx_item" id="S3.I1.i3" style="list-style-type:none;"> <span class="ltx_tag ltx_tag_item">•</span> <div class="ltx_para" id="S3.I1.i3.p1"> <p class="ltx_p" id="S3.I1.i3.p1.1">end-to-end 3D reconstruction with qualitative assessment.</p> </div> </li> </ul> </div> <section class="ltx_paragraph" id="S3.SS0.SSS0.Px1"> <h4 class="ltx_title ltx_title_paragraph">The choice of dataset</h4> <div class="ltx_para" id="S3.SS0.SSS0.Px1.p1"> <p class="ltx_p" id="S3.SS0.SSS0.Px1.p1.1">The three implemented methods were tested on two datasets, the ’test22’ and ’rectified01’, both from the Hamlyn dataset. The ’test22’ is chosen because its structure makes it easy for humans to qualitatively judge the performance of the process. ’Rectified01’ is chosen because it’s a dataset where the camera is placed almost vertically to the surface, so the ground truth is likely to be precise.</p> </div> </section> <section class="ltx_paragraph" id="S3.SS0.SSS0.Px2"> <h4 class="ltx_title ltx_title_paragraph">Quantative study of depth estimation methods</h4> <div class="ltx_para" id="S3.SS0.SSS0.Px2.p1"> <p class="ltx_p" id="S3.SS0.SSS0.Px2.p1.2">Standard evaluation metrics were used to assess the performance of the depth estimation methods, including RMSE, MAE, Square relative error, <math alttext="\delta" class="ltx_Math" display="inline" id="S3.SS0.SSS0.Px2.p1.1.m1.1"><semantics id="S3.SS0.SSS0.Px2.p1.1.m1.1a"><mi id="S3.SS0.SSS0.Px2.p1.1.m1.1.1" xref="S3.SS0.SSS0.Px2.p1.1.m1.1.1.cmml">δ</mi><annotation-xml encoding="MathML-Content" id="S3.SS0.SSS0.Px2.p1.1.m1.1b"><ci id="S3.SS0.SSS0.Px2.p1.1.m1.1.1.cmml" xref="S3.SS0.SSS0.Px2.p1.1.m1.1.1">𝛿</ci></annotation-xml><annotation encoding="application/x-tex" id="S3.SS0.SSS0.Px2.p1.1.m1.1c">\delta</annotation><annotation encoding="application/x-llamapun" id="S3.SS0.SSS0.Px2.p1.1.m1.1d">italic_δ</annotation></semantics></math> accuracy(<math alttext="\delta&lt;1.25" class="ltx_Math" display="inline" id="S3.SS0.SSS0.Px2.p1.2.m2.1"><semantics id="S3.SS0.SSS0.Px2.p1.2.m2.1a"><mrow id="S3.SS0.SSS0.Px2.p1.2.m2.1.1" xref="S3.SS0.SSS0.Px2.p1.2.m2.1.1.cmml"><mi id="S3.SS0.SSS0.Px2.p1.2.m2.1.1.2" xref="S3.SS0.SSS0.Px2.p1.2.m2.1.1.2.cmml">δ</mi><mo id="S3.SS0.SSS0.Px2.p1.2.m2.1.1.1" xref="S3.SS0.SSS0.Px2.p1.2.m2.1.1.1.cmml">&lt;</mo><mn id="S3.SS0.SSS0.Px2.p1.2.m2.1.1.3" xref="S3.SS0.SSS0.Px2.p1.2.m2.1.1.3.cmml">1.25</mn></mrow><annotation-xml encoding="MathML-Content" id="S3.SS0.SSS0.Px2.p1.2.m2.1b"><apply id="S3.SS0.SSS0.Px2.p1.2.m2.1.1.cmml" xref="S3.SS0.SSS0.Px2.p1.2.m2.1.1"><lt id="S3.SS0.SSS0.Px2.p1.2.m2.1.1.1.cmml" xref="S3.SS0.SSS0.Px2.p1.2.m2.1.1.1"></lt><ci id="S3.SS0.SSS0.Px2.p1.2.m2.1.1.2.cmml" xref="S3.SS0.SSS0.Px2.p1.2.m2.1.1.2">𝛿</ci><cn id="S3.SS0.SSS0.Px2.p1.2.m2.1.1.3.cmml" type="float" xref="S3.SS0.SSS0.Px2.p1.2.m2.1.1.3">1.25</cn></apply></annotation-xml><annotation encoding="application/x-tex" id="S3.SS0.SSS0.Px2.p1.2.m2.1c">\delta&lt;1.25</annotation><annotation encoding="application/x-llamapun" id="S3.SS0.SSS0.Px2.p1.2.m2.1d">italic_δ &lt; 1.25</annotation></semantics></math>), SSIM <cite class="ltx_cite ltx_citemacro_cite">[<a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#bib.bib26" title="">26</a>]</cite>, and Log RMSE. The establishment of those evaluation protocols follows the standard stated in Eigen et al.’s work <cite class="ltx_cite ltx_citemacro_cite">[<a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#bib.bib27" title="">27</a>]</cite>.</p> </div> </section> <section class="ltx_paragraph" id="S3.SS0.SSS0.Px3"> <h4 class="ltx_title ltx_title_paragraph">Metrics</h4> <div class="ltx_para" id="S3.SS0.SSS0.Px3.p1"> <ul class="ltx_itemize" id="S3.I2"> <li class="ltx_item" id="S3.I2.i1" style="list-style-type:none;"> <span class="ltx_tag ltx_tag_item">•</span> <div class="ltx_para" id="S3.I2.i1.p1"> <p class="ltx_p" id="S3.I2.i1.p1.1">Root Mean Squared Error (RMSE):</p> <table class="ltx_equation ltx_eqn_table" id="S3.E2"> <tbody><tr class="ltx_equation ltx_eqn_row ltx_align_baseline"> <td class="ltx_eqn_cell ltx_eqn_center_padleft"></td> <td class="ltx_eqn_cell ltx_align_center"><math alttext="RMSE=\sqrt{\frac{1}{N}\sum_{i=1}^{N}(d_{i}^{\text{pred}}-d_{i}^{\text{gt}})^{2}}" class="ltx_Math" display="block" id="S3.E2.m1.1"><semantics id="S3.E2.m1.1a"><mrow id="S3.E2.m1.1.2" xref="S3.E2.m1.1.2.cmml"><mrow id="S3.E2.m1.1.2.2" xref="S3.E2.m1.1.2.2.cmml"><mi id="S3.E2.m1.1.2.2.2" xref="S3.E2.m1.1.2.2.2.cmml">R</mi><mo id="S3.E2.m1.1.2.2.1" xref="S3.E2.m1.1.2.2.1.cmml">⁢</mo><mi id="S3.E2.m1.1.2.2.3" xref="S3.E2.m1.1.2.2.3.cmml">M</mi><mo id="S3.E2.m1.1.2.2.1a" xref="S3.E2.m1.1.2.2.1.cmml">⁢</mo><mi id="S3.E2.m1.1.2.2.4" xref="S3.E2.m1.1.2.2.4.cmml">S</mi><mo id="S3.E2.m1.1.2.2.1b" xref="S3.E2.m1.1.2.2.1.cmml">⁢</mo><mi id="S3.E2.m1.1.2.2.5" xref="S3.E2.m1.1.2.2.5.cmml">E</mi></mrow><mo id="S3.E2.m1.1.2.1" xref="S3.E2.m1.1.2.1.cmml">=</mo><msqrt id="S3.E2.m1.1.1" xref="S3.E2.m1.1.1.cmml"><mrow id="S3.E2.m1.1.1.1" xref="S3.E2.m1.1.1.1.cmml"><mfrac id="S3.E2.m1.1.1.1.3" xref="S3.E2.m1.1.1.1.3.cmml"><mn id="S3.E2.m1.1.1.1.3.2" xref="S3.E2.m1.1.1.1.3.2.cmml">1</mn><mi id="S3.E2.m1.1.1.1.3.3" xref="S3.E2.m1.1.1.1.3.3.cmml">N</mi></mfrac><mo id="S3.E2.m1.1.1.1.2" xref="S3.E2.m1.1.1.1.2.cmml">⁢</mo><mrow id="S3.E2.m1.1.1.1.1" xref="S3.E2.m1.1.1.1.1.cmml"><munderover id="S3.E2.m1.1.1.1.1.2" xref="S3.E2.m1.1.1.1.1.2.cmml"><mo id="S3.E2.m1.1.1.1.1.2.2.2" movablelimits="false" rspace="0em" xref="S3.E2.m1.1.1.1.1.2.2.2.cmml">∑</mo><mrow id="S3.E2.m1.1.1.1.1.2.2.3" xref="S3.E2.m1.1.1.1.1.2.2.3.cmml"><mi id="S3.E2.m1.1.1.1.1.2.2.3.2" xref="S3.E2.m1.1.1.1.1.2.2.3.2.cmml">i</mi><mo id="S3.E2.m1.1.1.1.1.2.2.3.1" xref="S3.E2.m1.1.1.1.1.2.2.3.1.cmml">=</mo><mn id="S3.E2.m1.1.1.1.1.2.2.3.3" xref="S3.E2.m1.1.1.1.1.2.2.3.3.cmml">1</mn></mrow><mi id="S3.E2.m1.1.1.1.1.2.3" xref="S3.E2.m1.1.1.1.1.2.3.cmml">N</mi></munderover><msup id="S3.E2.m1.1.1.1.1.1" xref="S3.E2.m1.1.1.1.1.1.cmml"><mrow id="S3.E2.m1.1.1.1.1.1.1.1" xref="S3.E2.m1.1.1.1.1.1.1.1.1.cmml"><mo id="S3.E2.m1.1.1.1.1.1.1.1.2" stretchy="false" xref="S3.E2.m1.1.1.1.1.1.1.1.1.cmml">(</mo><mrow id="S3.E2.m1.1.1.1.1.1.1.1.1" xref="S3.E2.m1.1.1.1.1.1.1.1.1.cmml"><msubsup id="S3.E2.m1.1.1.1.1.1.1.1.1.2" xref="S3.E2.m1.1.1.1.1.1.1.1.1.2.cmml"><mi id="S3.E2.m1.1.1.1.1.1.1.1.1.2.2.2" xref="S3.E2.m1.1.1.1.1.1.1.1.1.2.2.2.cmml">d</mi><mi id="S3.E2.m1.1.1.1.1.1.1.1.1.2.2.3" xref="S3.E2.m1.1.1.1.1.1.1.1.1.2.2.3.cmml">i</mi><mtext id="S3.E2.m1.1.1.1.1.1.1.1.1.2.3" xref="S3.E2.m1.1.1.1.1.1.1.1.1.2.3a.cmml">pred</mtext></msubsup><mo id="S3.E2.m1.1.1.1.1.1.1.1.1.1" xref="S3.E2.m1.1.1.1.1.1.1.1.1.1.cmml">−</mo><msubsup id="S3.E2.m1.1.1.1.1.1.1.1.1.3" xref="S3.E2.m1.1.1.1.1.1.1.1.1.3.cmml"><mi id="S3.E2.m1.1.1.1.1.1.1.1.1.3.2.2" xref="S3.E2.m1.1.1.1.1.1.1.1.1.3.2.2.cmml">d</mi><mi id="S3.E2.m1.1.1.1.1.1.1.1.1.3.2.3" xref="S3.E2.m1.1.1.1.1.1.1.1.1.3.2.3.cmml">i</mi><mtext id="S3.E2.m1.1.1.1.1.1.1.1.1.3.3" xref="S3.E2.m1.1.1.1.1.1.1.1.1.3.3a.cmml">gt</mtext></msubsup></mrow><mo id="S3.E2.m1.1.1.1.1.1.1.1.3" stretchy="false" xref="S3.E2.m1.1.1.1.1.1.1.1.1.cmml">)</mo></mrow><mn id="S3.E2.m1.1.1.1.1.1.3" xref="S3.E2.m1.1.1.1.1.1.3.cmml">2</mn></msup></mrow></mrow></msqrt></mrow><annotation-xml encoding="MathML-Content" id="S3.E2.m1.1b"><apply id="S3.E2.m1.1.2.cmml" xref="S3.E2.m1.1.2"><eq id="S3.E2.m1.1.2.1.cmml" xref="S3.E2.m1.1.2.1"></eq><apply id="S3.E2.m1.1.2.2.cmml" xref="S3.E2.m1.1.2.2"><times id="S3.E2.m1.1.2.2.1.cmml" xref="S3.E2.m1.1.2.2.1"></times><ci id="S3.E2.m1.1.2.2.2.cmml" xref="S3.E2.m1.1.2.2.2">𝑅</ci><ci id="S3.E2.m1.1.2.2.3.cmml" xref="S3.E2.m1.1.2.2.3">𝑀</ci><ci id="S3.E2.m1.1.2.2.4.cmml" xref="S3.E2.m1.1.2.2.4">𝑆</ci><ci id="S3.E2.m1.1.2.2.5.cmml" xref="S3.E2.m1.1.2.2.5">𝐸</ci></apply><apply id="S3.E2.m1.1.1.cmml" xref="S3.E2.m1.1.1"><root id="S3.E2.m1.1.1a.cmml" xref="S3.E2.m1.1.1"></root><apply id="S3.E2.m1.1.1.1.cmml" xref="S3.E2.m1.1.1.1"><times id="S3.E2.m1.1.1.1.2.cmml" xref="S3.E2.m1.1.1.1.2"></times><apply id="S3.E2.m1.1.1.1.3.cmml" xref="S3.E2.m1.1.1.1.3"><divide id="S3.E2.m1.1.1.1.3.1.cmml" xref="S3.E2.m1.1.1.1.3"></divide><cn id="S3.E2.m1.1.1.1.3.2.cmml" type="integer" xref="S3.E2.m1.1.1.1.3.2">1</cn><ci id="S3.E2.m1.1.1.1.3.3.cmml" xref="S3.E2.m1.1.1.1.3.3">𝑁</ci></apply><apply id="S3.E2.m1.1.1.1.1.cmml" xref="S3.E2.m1.1.1.1.1"><apply id="S3.E2.m1.1.1.1.1.2.cmml" xref="S3.E2.m1.1.1.1.1.2"><csymbol cd="ambiguous" id="S3.E2.m1.1.1.1.1.2.1.cmml" xref="S3.E2.m1.1.1.1.1.2">superscript</csymbol><apply id="S3.E2.m1.1.1.1.1.2.2.cmml" xref="S3.E2.m1.1.1.1.1.2"><csymbol cd="ambiguous" id="S3.E2.m1.1.1.1.1.2.2.1.cmml" xref="S3.E2.m1.1.1.1.1.2">subscript</csymbol><sum id="S3.E2.m1.1.1.1.1.2.2.2.cmml" xref="S3.E2.m1.1.1.1.1.2.2.2"></sum><apply id="S3.E2.m1.1.1.1.1.2.2.3.cmml" xref="S3.E2.m1.1.1.1.1.2.2.3"><eq id="S3.E2.m1.1.1.1.1.2.2.3.1.cmml" xref="S3.E2.m1.1.1.1.1.2.2.3.1"></eq><ci id="S3.E2.m1.1.1.1.1.2.2.3.2.cmml" xref="S3.E2.m1.1.1.1.1.2.2.3.2">𝑖</ci><cn id="S3.E2.m1.1.1.1.1.2.2.3.3.cmml" type="integer" xref="S3.E2.m1.1.1.1.1.2.2.3.3">1</cn></apply></apply><ci id="S3.E2.m1.1.1.1.1.2.3.cmml" xref="S3.E2.m1.1.1.1.1.2.3">𝑁</ci></apply><apply id="S3.E2.m1.1.1.1.1.1.cmml" xref="S3.E2.m1.1.1.1.1.1"><csymbol cd="ambiguous" id="S3.E2.m1.1.1.1.1.1.2.cmml" xref="S3.E2.m1.1.1.1.1.1">superscript</csymbol><apply id="S3.E2.m1.1.1.1.1.1.1.1.1.cmml" xref="S3.E2.m1.1.1.1.1.1.1.1"><minus id="S3.E2.m1.1.1.1.1.1.1.1.1.1.cmml" xref="S3.E2.m1.1.1.1.1.1.1.1.1.1"></minus><apply id="S3.E2.m1.1.1.1.1.1.1.1.1.2.cmml" xref="S3.E2.m1.1.1.1.1.1.1.1.1.2"><csymbol cd="ambiguous" id="S3.E2.m1.1.1.1.1.1.1.1.1.2.1.cmml" xref="S3.E2.m1.1.1.1.1.1.1.1.1.2">superscript</csymbol><apply id="S3.E2.m1.1.1.1.1.1.1.1.1.2.2.cmml" xref="S3.E2.m1.1.1.1.1.1.1.1.1.2"><csymbol cd="ambiguous" id="S3.E2.m1.1.1.1.1.1.1.1.1.2.2.1.cmml" xref="S3.E2.m1.1.1.1.1.1.1.1.1.2">subscript</csymbol><ci id="S3.E2.m1.1.1.1.1.1.1.1.1.2.2.2.cmml" xref="S3.E2.m1.1.1.1.1.1.1.1.1.2.2.2">𝑑</ci><ci id="S3.E2.m1.1.1.1.1.1.1.1.1.2.2.3.cmml" xref="S3.E2.m1.1.1.1.1.1.1.1.1.2.2.3">𝑖</ci></apply><ci id="S3.E2.m1.1.1.1.1.1.1.1.1.2.3a.cmml" xref="S3.E2.m1.1.1.1.1.1.1.1.1.2.3"><mtext id="S3.E2.m1.1.1.1.1.1.1.1.1.2.3.cmml" mathsize="70%" xref="S3.E2.m1.1.1.1.1.1.1.1.1.2.3">pred</mtext></ci></apply><apply id="S3.E2.m1.1.1.1.1.1.1.1.1.3.cmml" xref="S3.E2.m1.1.1.1.1.1.1.1.1.3"><csymbol cd="ambiguous" id="S3.E2.m1.1.1.1.1.1.1.1.1.3.1.cmml" xref="S3.E2.m1.1.1.1.1.1.1.1.1.3">superscript</csymbol><apply id="S3.E2.m1.1.1.1.1.1.1.1.1.3.2.cmml" xref="S3.E2.m1.1.1.1.1.1.1.1.1.3"><csymbol cd="ambiguous" id="S3.E2.m1.1.1.1.1.1.1.1.1.3.2.1.cmml" xref="S3.E2.m1.1.1.1.1.1.1.1.1.3">subscript</csymbol><ci id="S3.E2.m1.1.1.1.1.1.1.1.1.3.2.2.cmml" xref="S3.E2.m1.1.1.1.1.1.1.1.1.3.2.2">𝑑</ci><ci id="S3.E2.m1.1.1.1.1.1.1.1.1.3.2.3.cmml" xref="S3.E2.m1.1.1.1.1.1.1.1.1.3.2.3">𝑖</ci></apply><ci id="S3.E2.m1.1.1.1.1.1.1.1.1.3.3a.cmml" xref="S3.E2.m1.1.1.1.1.1.1.1.1.3.3"><mtext id="S3.E2.m1.1.1.1.1.1.1.1.1.3.3.cmml" mathsize="70%" xref="S3.E2.m1.1.1.1.1.1.1.1.1.3.3">gt</mtext></ci></apply></apply><cn id="S3.E2.m1.1.1.1.1.1.3.cmml" type="integer" xref="S3.E2.m1.1.1.1.1.1.3">2</cn></apply></apply></apply></apply></apply></annotation-xml><annotation encoding="application/x-tex" id="S3.E2.m1.1c">RMSE=\sqrt{\frac{1}{N}\sum_{i=1}^{N}(d_{i}^{\text{pred}}-d_{i}^{\text{gt}})^{2}}</annotation><annotation encoding="application/x-llamapun" id="S3.E2.m1.1d">italic_R italic_M italic_S italic_E = square-root start_ARG divide start_ARG 1 end_ARG start_ARG italic_N end_ARG ∑ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_N end_POSTSUPERSCRIPT ( italic_d start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT pred end_POSTSUPERSCRIPT - italic_d start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT gt end_POSTSUPERSCRIPT ) start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_ARG</annotation></semantics></math></td> <td class="ltx_eqn_cell ltx_eqn_center_padright"></td> <td class="ltx_eqn_cell ltx_eqn_eqno ltx_align_middle ltx_align_right" rowspan="1"><span class="ltx_tag ltx_tag_equation ltx_align_right">(2)</span></td> </tr></tbody> </table> </div> </li> <li class="ltx_item" id="S3.I2.i2" style="list-style-type:none;"> <span class="ltx_tag ltx_tag_item">•</span> <div class="ltx_para" id="S3.I2.i2.p1"> <p class="ltx_p" id="S3.I2.i2.p1.1">Mean Abolute Error (MAE):</p> <table class="ltx_equation ltx_eqn_table" id="S3.E3"> <tbody><tr class="ltx_equation ltx_eqn_row ltx_align_baseline"> <td class="ltx_eqn_cell ltx_eqn_center_padleft"></td> <td class="ltx_eqn_cell ltx_align_center"><math alttext="MAE=\frac{1}{N}\sum_{i=1}^{N}|d_{i}^{\text{pred}}-d_{i}^{\text{gt}}|" class="ltx_Math" display="block" id="S3.E3.m1.1"><semantics id="S3.E3.m1.1a"><mrow id="S3.E3.m1.1.1" xref="S3.E3.m1.1.1.cmml"><mrow id="S3.E3.m1.1.1.3" xref="S3.E3.m1.1.1.3.cmml"><mi id="S3.E3.m1.1.1.3.2" xref="S3.E3.m1.1.1.3.2.cmml">M</mi><mo id="S3.E3.m1.1.1.3.1" xref="S3.E3.m1.1.1.3.1.cmml">⁢</mo><mi id="S3.E3.m1.1.1.3.3" xref="S3.E3.m1.1.1.3.3.cmml">A</mi><mo id="S3.E3.m1.1.1.3.1a" xref="S3.E3.m1.1.1.3.1.cmml">⁢</mo><mi id="S3.E3.m1.1.1.3.4" xref="S3.E3.m1.1.1.3.4.cmml">E</mi></mrow><mo id="S3.E3.m1.1.1.2" xref="S3.E3.m1.1.1.2.cmml">=</mo><mrow id="S3.E3.m1.1.1.1" xref="S3.E3.m1.1.1.1.cmml"><mfrac id="S3.E3.m1.1.1.1.3" xref="S3.E3.m1.1.1.1.3.cmml"><mn id="S3.E3.m1.1.1.1.3.2" xref="S3.E3.m1.1.1.1.3.2.cmml">1</mn><mi id="S3.E3.m1.1.1.1.3.3" xref="S3.E3.m1.1.1.1.3.3.cmml">N</mi></mfrac><mo id="S3.E3.m1.1.1.1.2" xref="S3.E3.m1.1.1.1.2.cmml">⁢</mo><mrow id="S3.E3.m1.1.1.1.1" xref="S3.E3.m1.1.1.1.1.cmml"><munderover id="S3.E3.m1.1.1.1.1.2" xref="S3.E3.m1.1.1.1.1.2.cmml"><mo id="S3.E3.m1.1.1.1.1.2.2.2" movablelimits="false" rspace="0em" xref="S3.E3.m1.1.1.1.1.2.2.2.cmml">∑</mo><mrow id="S3.E3.m1.1.1.1.1.2.2.3" xref="S3.E3.m1.1.1.1.1.2.2.3.cmml"><mi id="S3.E3.m1.1.1.1.1.2.2.3.2" xref="S3.E3.m1.1.1.1.1.2.2.3.2.cmml">i</mi><mo id="S3.E3.m1.1.1.1.1.2.2.3.1" xref="S3.E3.m1.1.1.1.1.2.2.3.1.cmml">=</mo><mn id="S3.E3.m1.1.1.1.1.2.2.3.3" xref="S3.E3.m1.1.1.1.1.2.2.3.3.cmml">1</mn></mrow><mi id="S3.E3.m1.1.1.1.1.2.3" xref="S3.E3.m1.1.1.1.1.2.3.cmml">N</mi></munderover><mrow id="S3.E3.m1.1.1.1.1.1.1" xref="S3.E3.m1.1.1.1.1.1.2.cmml"><mo id="S3.E3.m1.1.1.1.1.1.1.2" stretchy="false" xref="S3.E3.m1.1.1.1.1.1.2.1.cmml">|</mo><mrow id="S3.E3.m1.1.1.1.1.1.1.1" xref="S3.E3.m1.1.1.1.1.1.1.1.cmml"><msubsup id="S3.E3.m1.1.1.1.1.1.1.1.2" xref="S3.E3.m1.1.1.1.1.1.1.1.2.cmml"><mi id="S3.E3.m1.1.1.1.1.1.1.1.2.2.2" xref="S3.E3.m1.1.1.1.1.1.1.1.2.2.2.cmml">d</mi><mi id="S3.E3.m1.1.1.1.1.1.1.1.2.2.3" xref="S3.E3.m1.1.1.1.1.1.1.1.2.2.3.cmml">i</mi><mtext id="S3.E3.m1.1.1.1.1.1.1.1.2.3" xref="S3.E3.m1.1.1.1.1.1.1.1.2.3a.cmml">pred</mtext></msubsup><mo id="S3.E3.m1.1.1.1.1.1.1.1.1" xref="S3.E3.m1.1.1.1.1.1.1.1.1.cmml">−</mo><msubsup id="S3.E3.m1.1.1.1.1.1.1.1.3" xref="S3.E3.m1.1.1.1.1.1.1.1.3.cmml"><mi id="S3.E3.m1.1.1.1.1.1.1.1.3.2.2" xref="S3.E3.m1.1.1.1.1.1.1.1.3.2.2.cmml">d</mi><mi id="S3.E3.m1.1.1.1.1.1.1.1.3.2.3" xref="S3.E3.m1.1.1.1.1.1.1.1.3.2.3.cmml">i</mi><mtext id="S3.E3.m1.1.1.1.1.1.1.1.3.3" xref="S3.E3.m1.1.1.1.1.1.1.1.3.3a.cmml">gt</mtext></msubsup></mrow><mo id="S3.E3.m1.1.1.1.1.1.1.3" stretchy="false" xref="S3.E3.m1.1.1.1.1.1.2.1.cmml">|</mo></mrow></mrow></mrow></mrow><annotation-xml encoding="MathML-Content" id="S3.E3.m1.1b"><apply id="S3.E3.m1.1.1.cmml" xref="S3.E3.m1.1.1"><eq id="S3.E3.m1.1.1.2.cmml" xref="S3.E3.m1.1.1.2"></eq><apply id="S3.E3.m1.1.1.3.cmml" xref="S3.E3.m1.1.1.3"><times id="S3.E3.m1.1.1.3.1.cmml" xref="S3.E3.m1.1.1.3.1"></times><ci id="S3.E3.m1.1.1.3.2.cmml" xref="S3.E3.m1.1.1.3.2">𝑀</ci><ci id="S3.E3.m1.1.1.3.3.cmml" xref="S3.E3.m1.1.1.3.3">𝐴</ci><ci id="S3.E3.m1.1.1.3.4.cmml" xref="S3.E3.m1.1.1.3.4">𝐸</ci></apply><apply id="S3.E3.m1.1.1.1.cmml" xref="S3.E3.m1.1.1.1"><times id="S3.E3.m1.1.1.1.2.cmml" xref="S3.E3.m1.1.1.1.2"></times><apply id="S3.E3.m1.1.1.1.3.cmml" xref="S3.E3.m1.1.1.1.3"><divide id="S3.E3.m1.1.1.1.3.1.cmml" xref="S3.E3.m1.1.1.1.3"></divide><cn id="S3.E3.m1.1.1.1.3.2.cmml" type="integer" xref="S3.E3.m1.1.1.1.3.2">1</cn><ci id="S3.E3.m1.1.1.1.3.3.cmml" xref="S3.E3.m1.1.1.1.3.3">𝑁</ci></apply><apply id="S3.E3.m1.1.1.1.1.cmml" xref="S3.E3.m1.1.1.1.1"><apply id="S3.E3.m1.1.1.1.1.2.cmml" xref="S3.E3.m1.1.1.1.1.2"><csymbol cd="ambiguous" id="S3.E3.m1.1.1.1.1.2.1.cmml" xref="S3.E3.m1.1.1.1.1.2">superscript</csymbol><apply id="S3.E3.m1.1.1.1.1.2.2.cmml" xref="S3.E3.m1.1.1.1.1.2"><csymbol cd="ambiguous" id="S3.E3.m1.1.1.1.1.2.2.1.cmml" xref="S3.E3.m1.1.1.1.1.2">subscript</csymbol><sum id="S3.E3.m1.1.1.1.1.2.2.2.cmml" xref="S3.E3.m1.1.1.1.1.2.2.2"></sum><apply id="S3.E3.m1.1.1.1.1.2.2.3.cmml" xref="S3.E3.m1.1.1.1.1.2.2.3"><eq id="S3.E3.m1.1.1.1.1.2.2.3.1.cmml" xref="S3.E3.m1.1.1.1.1.2.2.3.1"></eq><ci id="S3.E3.m1.1.1.1.1.2.2.3.2.cmml" xref="S3.E3.m1.1.1.1.1.2.2.3.2">𝑖</ci><cn id="S3.E3.m1.1.1.1.1.2.2.3.3.cmml" type="integer" xref="S3.E3.m1.1.1.1.1.2.2.3.3">1</cn></apply></apply><ci id="S3.E3.m1.1.1.1.1.2.3.cmml" xref="S3.E3.m1.1.1.1.1.2.3">𝑁</ci></apply><apply id="S3.E3.m1.1.1.1.1.1.2.cmml" xref="S3.E3.m1.1.1.1.1.1.1"><abs id="S3.E3.m1.1.1.1.1.1.2.1.cmml" xref="S3.E3.m1.1.1.1.1.1.1.2"></abs><apply id="S3.E3.m1.1.1.1.1.1.1.1.cmml" xref="S3.E3.m1.1.1.1.1.1.1.1"><minus id="S3.E3.m1.1.1.1.1.1.1.1.1.cmml" xref="S3.E3.m1.1.1.1.1.1.1.1.1"></minus><apply id="S3.E3.m1.1.1.1.1.1.1.1.2.cmml" xref="S3.E3.m1.1.1.1.1.1.1.1.2"><csymbol cd="ambiguous" id="S3.E3.m1.1.1.1.1.1.1.1.2.1.cmml" xref="S3.E3.m1.1.1.1.1.1.1.1.2">superscript</csymbol><apply id="S3.E3.m1.1.1.1.1.1.1.1.2.2.cmml" xref="S3.E3.m1.1.1.1.1.1.1.1.2"><csymbol cd="ambiguous" id="S3.E3.m1.1.1.1.1.1.1.1.2.2.1.cmml" xref="S3.E3.m1.1.1.1.1.1.1.1.2">subscript</csymbol><ci id="S3.E3.m1.1.1.1.1.1.1.1.2.2.2.cmml" xref="S3.E3.m1.1.1.1.1.1.1.1.2.2.2">𝑑</ci><ci id="S3.E3.m1.1.1.1.1.1.1.1.2.2.3.cmml" xref="S3.E3.m1.1.1.1.1.1.1.1.2.2.3">𝑖</ci></apply><ci id="S3.E3.m1.1.1.1.1.1.1.1.2.3a.cmml" xref="S3.E3.m1.1.1.1.1.1.1.1.2.3"><mtext id="S3.E3.m1.1.1.1.1.1.1.1.2.3.cmml" mathsize="70%" xref="S3.E3.m1.1.1.1.1.1.1.1.2.3">pred</mtext></ci></apply><apply id="S3.E3.m1.1.1.1.1.1.1.1.3.cmml" xref="S3.E3.m1.1.1.1.1.1.1.1.3"><csymbol cd="ambiguous" id="S3.E3.m1.1.1.1.1.1.1.1.3.1.cmml" xref="S3.E3.m1.1.1.1.1.1.1.1.3">superscript</csymbol><apply id="S3.E3.m1.1.1.1.1.1.1.1.3.2.cmml" xref="S3.E3.m1.1.1.1.1.1.1.1.3"><csymbol cd="ambiguous" id="S3.E3.m1.1.1.1.1.1.1.1.3.2.1.cmml" xref="S3.E3.m1.1.1.1.1.1.1.1.3">subscript</csymbol><ci id="S3.E3.m1.1.1.1.1.1.1.1.3.2.2.cmml" xref="S3.E3.m1.1.1.1.1.1.1.1.3.2.2">𝑑</ci><ci id="S3.E3.m1.1.1.1.1.1.1.1.3.2.3.cmml" xref="S3.E3.m1.1.1.1.1.1.1.1.3.2.3">𝑖</ci></apply><ci id="S3.E3.m1.1.1.1.1.1.1.1.3.3a.cmml" xref="S3.E3.m1.1.1.1.1.1.1.1.3.3"><mtext id="S3.E3.m1.1.1.1.1.1.1.1.3.3.cmml" mathsize="70%" xref="S3.E3.m1.1.1.1.1.1.1.1.3.3">gt</mtext></ci></apply></apply></apply></apply></apply></apply></annotation-xml><annotation encoding="application/x-tex" id="S3.E3.m1.1c">MAE=\frac{1}{N}\sum_{i=1}^{N}|d_{i}^{\text{pred}}-d_{i}^{\text{gt}}|</annotation><annotation encoding="application/x-llamapun" id="S3.E3.m1.1d">italic_M italic_A italic_E = divide start_ARG 1 end_ARG start_ARG italic_N end_ARG ∑ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_N end_POSTSUPERSCRIPT | italic_d start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT pred end_POSTSUPERSCRIPT - italic_d start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT gt end_POSTSUPERSCRIPT |</annotation></semantics></math></td> <td class="ltx_eqn_cell ltx_eqn_center_padright"></td> <td class="ltx_eqn_cell ltx_eqn_eqno ltx_align_middle ltx_align_right" rowspan="1"><span class="ltx_tag ltx_tag_equation ltx_align_right">(3)</span></td> </tr></tbody> </table> </div> </li> <li class="ltx_item" id="S3.I2.i3" style="list-style-type:none;"> <span class="ltx_tag ltx_tag_item">•</span> <div class="ltx_para" id="S3.I2.i3.p1"> <p class="ltx_p" id="S3.I2.i3.p1.1">Squared Relative Error (Sq Rel):</p> <table class="ltx_equation ltx_eqn_table" id="S3.E4"> <tbody><tr class="ltx_equation ltx_eqn_row ltx_align_baseline"> <td class="ltx_eqn_cell ltx_eqn_center_padleft"></td> <td class="ltx_eqn_cell ltx_align_center"><math alttext="SqRel=\frac{1}{N}\sum_{i=1}^{N}\frac{(d_{i}^{\text{pred}}-d_{i}^{\text{gt}})^{% 2}}{d_{i}^{\text{gt}}}" class="ltx_Math" display="block" id="S3.E4.m1.1"><semantics id="S3.E4.m1.1a"><mrow id="S3.E4.m1.1.2" xref="S3.E4.m1.1.2.cmml"><mrow id="S3.E4.m1.1.2.2" xref="S3.E4.m1.1.2.2.cmml"><mi id="S3.E4.m1.1.2.2.2" xref="S3.E4.m1.1.2.2.2.cmml">S</mi><mo id="S3.E4.m1.1.2.2.1" xref="S3.E4.m1.1.2.2.1.cmml">⁢</mo><mi id="S3.E4.m1.1.2.2.3" xref="S3.E4.m1.1.2.2.3.cmml">q</mi><mo id="S3.E4.m1.1.2.2.1a" xref="S3.E4.m1.1.2.2.1.cmml">⁢</mo><mi id="S3.E4.m1.1.2.2.4" xref="S3.E4.m1.1.2.2.4.cmml">R</mi><mo id="S3.E4.m1.1.2.2.1b" xref="S3.E4.m1.1.2.2.1.cmml">⁢</mo><mi id="S3.E4.m1.1.2.2.5" xref="S3.E4.m1.1.2.2.5.cmml">e</mi><mo id="S3.E4.m1.1.2.2.1c" xref="S3.E4.m1.1.2.2.1.cmml">⁢</mo><mi id="S3.E4.m1.1.2.2.6" xref="S3.E4.m1.1.2.2.6.cmml">l</mi></mrow><mo id="S3.E4.m1.1.2.1" xref="S3.E4.m1.1.2.1.cmml">=</mo><mrow id="S3.E4.m1.1.2.3" xref="S3.E4.m1.1.2.3.cmml"><mfrac id="S3.E4.m1.1.2.3.2" xref="S3.E4.m1.1.2.3.2.cmml"><mn id="S3.E4.m1.1.2.3.2.2" xref="S3.E4.m1.1.2.3.2.2.cmml">1</mn><mi id="S3.E4.m1.1.2.3.2.3" xref="S3.E4.m1.1.2.3.2.3.cmml">N</mi></mfrac><mo id="S3.E4.m1.1.2.3.1" xref="S3.E4.m1.1.2.3.1.cmml">⁢</mo><mrow id="S3.E4.m1.1.2.3.3" xref="S3.E4.m1.1.2.3.3.cmml"><munderover id="S3.E4.m1.1.2.3.3.1" xref="S3.E4.m1.1.2.3.3.1.cmml"><mo id="S3.E4.m1.1.2.3.3.1.2.2" movablelimits="false" xref="S3.E4.m1.1.2.3.3.1.2.2.cmml">∑</mo><mrow id="S3.E4.m1.1.2.3.3.1.2.3" xref="S3.E4.m1.1.2.3.3.1.2.3.cmml"><mi id="S3.E4.m1.1.2.3.3.1.2.3.2" xref="S3.E4.m1.1.2.3.3.1.2.3.2.cmml">i</mi><mo id="S3.E4.m1.1.2.3.3.1.2.3.1" xref="S3.E4.m1.1.2.3.3.1.2.3.1.cmml">=</mo><mn id="S3.E4.m1.1.2.3.3.1.2.3.3" xref="S3.E4.m1.1.2.3.3.1.2.3.3.cmml">1</mn></mrow><mi id="S3.E4.m1.1.2.3.3.1.3" xref="S3.E4.m1.1.2.3.3.1.3.cmml">N</mi></munderover><mfrac id="S3.E4.m1.1.1" xref="S3.E4.m1.1.1.cmml"><msup id="S3.E4.m1.1.1.1" xref="S3.E4.m1.1.1.1.cmml"><mrow id="S3.E4.m1.1.1.1.1.1" xref="S3.E4.m1.1.1.1.1.1.1.cmml"><mo id="S3.E4.m1.1.1.1.1.1.2" stretchy="false" xref="S3.E4.m1.1.1.1.1.1.1.cmml">(</mo><mrow id="S3.E4.m1.1.1.1.1.1.1" xref="S3.E4.m1.1.1.1.1.1.1.cmml"><msubsup id="S3.E4.m1.1.1.1.1.1.1.2" xref="S3.E4.m1.1.1.1.1.1.1.2.cmml"><mi id="S3.E4.m1.1.1.1.1.1.1.2.2.2" xref="S3.E4.m1.1.1.1.1.1.1.2.2.2.cmml">d</mi><mi id="S3.E4.m1.1.1.1.1.1.1.2.2.3" xref="S3.E4.m1.1.1.1.1.1.1.2.2.3.cmml">i</mi><mtext id="S3.E4.m1.1.1.1.1.1.1.2.3" xref="S3.E4.m1.1.1.1.1.1.1.2.3a.cmml">pred</mtext></msubsup><mo id="S3.E4.m1.1.1.1.1.1.1.1" xref="S3.E4.m1.1.1.1.1.1.1.1.cmml">−</mo><msubsup id="S3.E4.m1.1.1.1.1.1.1.3" xref="S3.E4.m1.1.1.1.1.1.1.3.cmml"><mi id="S3.E4.m1.1.1.1.1.1.1.3.2.2" xref="S3.E4.m1.1.1.1.1.1.1.3.2.2.cmml">d</mi><mi id="S3.E4.m1.1.1.1.1.1.1.3.2.3" xref="S3.E4.m1.1.1.1.1.1.1.3.2.3.cmml">i</mi><mtext id="S3.E4.m1.1.1.1.1.1.1.3.3" xref="S3.E4.m1.1.1.1.1.1.1.3.3a.cmml">gt</mtext></msubsup></mrow><mo id="S3.E4.m1.1.1.1.1.1.3" stretchy="false" xref="S3.E4.m1.1.1.1.1.1.1.cmml">)</mo></mrow><mn id="S3.E4.m1.1.1.1.3" xref="S3.E4.m1.1.1.1.3.cmml">2</mn></msup><msubsup id="S3.E4.m1.1.1.3" xref="S3.E4.m1.1.1.3.cmml"><mi id="S3.E4.m1.1.1.3.2.2" xref="S3.E4.m1.1.1.3.2.2.cmml">d</mi><mi id="S3.E4.m1.1.1.3.2.3" xref="S3.E4.m1.1.1.3.2.3.cmml">i</mi><mtext id="S3.E4.m1.1.1.3.3" xref="S3.E4.m1.1.1.3.3a.cmml">gt</mtext></msubsup></mfrac></mrow></mrow></mrow><annotation-xml encoding="MathML-Content" id="S3.E4.m1.1b"><apply id="S3.E4.m1.1.2.cmml" xref="S3.E4.m1.1.2"><eq id="S3.E4.m1.1.2.1.cmml" xref="S3.E4.m1.1.2.1"></eq><apply id="S3.E4.m1.1.2.2.cmml" xref="S3.E4.m1.1.2.2"><times id="S3.E4.m1.1.2.2.1.cmml" xref="S3.E4.m1.1.2.2.1"></times><ci id="S3.E4.m1.1.2.2.2.cmml" xref="S3.E4.m1.1.2.2.2">𝑆</ci><ci id="S3.E4.m1.1.2.2.3.cmml" xref="S3.E4.m1.1.2.2.3">𝑞</ci><ci id="S3.E4.m1.1.2.2.4.cmml" xref="S3.E4.m1.1.2.2.4">𝑅</ci><ci id="S3.E4.m1.1.2.2.5.cmml" xref="S3.E4.m1.1.2.2.5">𝑒</ci><ci id="S3.E4.m1.1.2.2.6.cmml" xref="S3.E4.m1.1.2.2.6">𝑙</ci></apply><apply id="S3.E4.m1.1.2.3.cmml" xref="S3.E4.m1.1.2.3"><times id="S3.E4.m1.1.2.3.1.cmml" xref="S3.E4.m1.1.2.3.1"></times><apply id="S3.E4.m1.1.2.3.2.cmml" xref="S3.E4.m1.1.2.3.2"><divide id="S3.E4.m1.1.2.3.2.1.cmml" xref="S3.E4.m1.1.2.3.2"></divide><cn id="S3.E4.m1.1.2.3.2.2.cmml" type="integer" xref="S3.E4.m1.1.2.3.2.2">1</cn><ci id="S3.E4.m1.1.2.3.2.3.cmml" xref="S3.E4.m1.1.2.3.2.3">𝑁</ci></apply><apply id="S3.E4.m1.1.2.3.3.cmml" xref="S3.E4.m1.1.2.3.3"><apply id="S3.E4.m1.1.2.3.3.1.cmml" xref="S3.E4.m1.1.2.3.3.1"><csymbol cd="ambiguous" id="S3.E4.m1.1.2.3.3.1.1.cmml" xref="S3.E4.m1.1.2.3.3.1">superscript</csymbol><apply id="S3.E4.m1.1.2.3.3.1.2.cmml" xref="S3.E4.m1.1.2.3.3.1"><csymbol cd="ambiguous" id="S3.E4.m1.1.2.3.3.1.2.1.cmml" xref="S3.E4.m1.1.2.3.3.1">subscript</csymbol><sum id="S3.E4.m1.1.2.3.3.1.2.2.cmml" xref="S3.E4.m1.1.2.3.3.1.2.2"></sum><apply id="S3.E4.m1.1.2.3.3.1.2.3.cmml" xref="S3.E4.m1.1.2.3.3.1.2.3"><eq id="S3.E4.m1.1.2.3.3.1.2.3.1.cmml" xref="S3.E4.m1.1.2.3.3.1.2.3.1"></eq><ci id="S3.E4.m1.1.2.3.3.1.2.3.2.cmml" xref="S3.E4.m1.1.2.3.3.1.2.3.2">𝑖</ci><cn id="S3.E4.m1.1.2.3.3.1.2.3.3.cmml" type="integer" xref="S3.E4.m1.1.2.3.3.1.2.3.3">1</cn></apply></apply><ci id="S3.E4.m1.1.2.3.3.1.3.cmml" xref="S3.E4.m1.1.2.3.3.1.3">𝑁</ci></apply><apply id="S3.E4.m1.1.1.cmml" xref="S3.E4.m1.1.1"><divide id="S3.E4.m1.1.1.2.cmml" xref="S3.E4.m1.1.1"></divide><apply id="S3.E4.m1.1.1.1.cmml" xref="S3.E4.m1.1.1.1"><csymbol cd="ambiguous" id="S3.E4.m1.1.1.1.2.cmml" xref="S3.E4.m1.1.1.1">superscript</csymbol><apply id="S3.E4.m1.1.1.1.1.1.1.cmml" xref="S3.E4.m1.1.1.1.1.1"><minus id="S3.E4.m1.1.1.1.1.1.1.1.cmml" xref="S3.E4.m1.1.1.1.1.1.1.1"></minus><apply id="S3.E4.m1.1.1.1.1.1.1.2.cmml" xref="S3.E4.m1.1.1.1.1.1.1.2"><csymbol cd="ambiguous" id="S3.E4.m1.1.1.1.1.1.1.2.1.cmml" xref="S3.E4.m1.1.1.1.1.1.1.2">superscript</csymbol><apply id="S3.E4.m1.1.1.1.1.1.1.2.2.cmml" xref="S3.E4.m1.1.1.1.1.1.1.2"><csymbol cd="ambiguous" id="S3.E4.m1.1.1.1.1.1.1.2.2.1.cmml" xref="S3.E4.m1.1.1.1.1.1.1.2">subscript</csymbol><ci id="S3.E4.m1.1.1.1.1.1.1.2.2.2.cmml" xref="S3.E4.m1.1.1.1.1.1.1.2.2.2">𝑑</ci><ci id="S3.E4.m1.1.1.1.1.1.1.2.2.3.cmml" xref="S3.E4.m1.1.1.1.1.1.1.2.2.3">𝑖</ci></apply><ci id="S3.E4.m1.1.1.1.1.1.1.2.3a.cmml" xref="S3.E4.m1.1.1.1.1.1.1.2.3"><mtext id="S3.E4.m1.1.1.1.1.1.1.2.3.cmml" mathsize="70%" xref="S3.E4.m1.1.1.1.1.1.1.2.3">pred</mtext></ci></apply><apply id="S3.E4.m1.1.1.1.1.1.1.3.cmml" xref="S3.E4.m1.1.1.1.1.1.1.3"><csymbol cd="ambiguous" id="S3.E4.m1.1.1.1.1.1.1.3.1.cmml" xref="S3.E4.m1.1.1.1.1.1.1.3">superscript</csymbol><apply id="S3.E4.m1.1.1.1.1.1.1.3.2.cmml" xref="S3.E4.m1.1.1.1.1.1.1.3"><csymbol cd="ambiguous" id="S3.E4.m1.1.1.1.1.1.1.3.2.1.cmml" xref="S3.E4.m1.1.1.1.1.1.1.3">subscript</csymbol><ci id="S3.E4.m1.1.1.1.1.1.1.3.2.2.cmml" xref="S3.E4.m1.1.1.1.1.1.1.3.2.2">𝑑</ci><ci id="S3.E4.m1.1.1.1.1.1.1.3.2.3.cmml" xref="S3.E4.m1.1.1.1.1.1.1.3.2.3">𝑖</ci></apply><ci id="S3.E4.m1.1.1.1.1.1.1.3.3a.cmml" xref="S3.E4.m1.1.1.1.1.1.1.3.3"><mtext id="S3.E4.m1.1.1.1.1.1.1.3.3.cmml" mathsize="70%" xref="S3.E4.m1.1.1.1.1.1.1.3.3">gt</mtext></ci></apply></apply><cn id="S3.E4.m1.1.1.1.3.cmml" type="integer" xref="S3.E4.m1.1.1.1.3">2</cn></apply><apply id="S3.E4.m1.1.1.3.cmml" xref="S3.E4.m1.1.1.3"><csymbol cd="ambiguous" id="S3.E4.m1.1.1.3.1.cmml" xref="S3.E4.m1.1.1.3">superscript</csymbol><apply id="S3.E4.m1.1.1.3.2.cmml" xref="S3.E4.m1.1.1.3"><csymbol cd="ambiguous" id="S3.E4.m1.1.1.3.2.1.cmml" xref="S3.E4.m1.1.1.3">subscript</csymbol><ci id="S3.E4.m1.1.1.3.2.2.cmml" xref="S3.E4.m1.1.1.3.2.2">𝑑</ci><ci id="S3.E4.m1.1.1.3.2.3.cmml" xref="S3.E4.m1.1.1.3.2.3">𝑖</ci></apply><ci id="S3.E4.m1.1.1.3.3a.cmml" xref="S3.E4.m1.1.1.3.3"><mtext id="S3.E4.m1.1.1.3.3.cmml" mathsize="70%" xref="S3.E4.m1.1.1.3.3">gt</mtext></ci></apply></apply></apply></apply></apply></annotation-xml><annotation encoding="application/x-tex" id="S3.E4.m1.1c">SqRel=\frac{1}{N}\sum_{i=1}^{N}\frac{(d_{i}^{\text{pred}}-d_{i}^{\text{gt}})^{% 2}}{d_{i}^{\text{gt}}}</annotation><annotation encoding="application/x-llamapun" id="S3.E4.m1.1d">italic_S italic_q italic_R italic_e italic_l = divide start_ARG 1 end_ARG start_ARG italic_N end_ARG ∑ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_N end_POSTSUPERSCRIPT divide start_ARG ( italic_d start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT pred end_POSTSUPERSCRIPT - italic_d start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT gt end_POSTSUPERSCRIPT ) start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_ARG start_ARG italic_d start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT gt end_POSTSUPERSCRIPT end_ARG</annotation></semantics></math></td> <td class="ltx_eqn_cell ltx_eqn_center_padright"></td> <td class="ltx_eqn_cell ltx_eqn_eqno ltx_align_middle ltx_align_right" rowspan="1"><span class="ltx_tag ltx_tag_equation ltx_align_right">(4)</span></td> </tr></tbody> </table> </div> </li> <li class="ltx_item" id="S3.I2.i4" style="list-style-type:none;"> <span class="ltx_tag ltx_tag_item">•</span> <div class="ltx_para" id="S3.I2.i4.p1"> <p class="ltx_p" id="S3.I2.i4.p1.1">Delta Accuracy (Threshold Accuracy):</p> </div> <div class="ltx_para" id="S3.I2.i4.p2"> <p class="ltx_p" id="S3.I2.i4.p2.1">For a threshold <math alttext="\delta" class="ltx_Math" display="inline" id="S3.I2.i4.p2.1.m1.1"><semantics id="S3.I2.i4.p2.1.m1.1a"><mi id="S3.I2.i4.p2.1.m1.1.1" xref="S3.I2.i4.p2.1.m1.1.1.cmml">δ</mi><annotation-xml encoding="MathML-Content" id="S3.I2.i4.p2.1.m1.1b"><ci id="S3.I2.i4.p2.1.m1.1.1.cmml" xref="S3.I2.i4.p2.1.m1.1.1">𝛿</ci></annotation-xml><annotation encoding="application/x-tex" id="S3.I2.i4.p2.1.m1.1c">\delta</annotation><annotation encoding="application/x-llamapun" id="S3.I2.i4.p2.1.m1.1d">italic_δ</annotation></semantics></math>:</p> <table class="ltx_equation ltx_eqn_table" id="S3.E5"> <tbody><tr class="ltx_equation ltx_eqn_row ltx_align_baseline"> <td class="ltx_eqn_cell ltx_eqn_center_padleft"></td> <td class="ltx_eqn_cell ltx_align_center"><math alttext="\delta=\frac{\max(d_{i}^{\text{pred}},d_{i}^{\text{gt}})}{\min(d_{i}^{\text{% pred}},d_{i}^{\text{gt}})}" class="ltx_Math" display="block" id="S3.E5.m1.6"><semantics id="S3.E5.m1.6a"><mrow id="S3.E5.m1.6.7" xref="S3.E5.m1.6.7.cmml"><mi id="S3.E5.m1.6.7.2" xref="S3.E5.m1.6.7.2.cmml">δ</mi><mo id="S3.E5.m1.6.7.1" xref="S3.E5.m1.6.7.1.cmml">=</mo><mfrac id="S3.E5.m1.6.6" xref="S3.E5.m1.6.6.cmml"><mrow id="S3.E5.m1.3.3.3.3" xref="S3.E5.m1.3.3.3.4.cmml"><mi id="S3.E5.m1.1.1.1.1" xref="S3.E5.m1.1.1.1.1.cmml">max</mi><mo id="S3.E5.m1.3.3.3.3a" xref="S3.E5.m1.3.3.3.4.cmml">⁡</mo><mrow id="S3.E5.m1.3.3.3.3.2" xref="S3.E5.m1.3.3.3.4.cmml"><mo id="S3.E5.m1.3.3.3.3.2.3" stretchy="false" xref="S3.E5.m1.3.3.3.4.cmml">(</mo><msubsup id="S3.E5.m1.2.2.2.2.1.1" xref="S3.E5.m1.2.2.2.2.1.1.cmml"><mi id="S3.E5.m1.2.2.2.2.1.1.2.2" xref="S3.E5.m1.2.2.2.2.1.1.2.2.cmml">d</mi><mi id="S3.E5.m1.2.2.2.2.1.1.2.3" xref="S3.E5.m1.2.2.2.2.1.1.2.3.cmml">i</mi><mtext id="S3.E5.m1.2.2.2.2.1.1.3" xref="S3.E5.m1.2.2.2.2.1.1.3a.cmml">pred</mtext></msubsup><mo id="S3.E5.m1.3.3.3.3.2.4" xref="S3.E5.m1.3.3.3.4.cmml">,</mo><msubsup id="S3.E5.m1.3.3.3.3.2.2" xref="S3.E5.m1.3.3.3.3.2.2.cmml"><mi id="S3.E5.m1.3.3.3.3.2.2.2.2" xref="S3.E5.m1.3.3.3.3.2.2.2.2.cmml">d</mi><mi id="S3.E5.m1.3.3.3.3.2.2.2.3" xref="S3.E5.m1.3.3.3.3.2.2.2.3.cmml">i</mi><mtext id="S3.E5.m1.3.3.3.3.2.2.3" xref="S3.E5.m1.3.3.3.3.2.2.3a.cmml">gt</mtext></msubsup><mo id="S3.E5.m1.3.3.3.3.2.5" stretchy="false" xref="S3.E5.m1.3.3.3.4.cmml">)</mo></mrow></mrow><mrow id="S3.E5.m1.6.6.6.3" xref="S3.E5.m1.6.6.6.4.cmml"><mi id="S3.E5.m1.4.4.4.1" xref="S3.E5.m1.4.4.4.1.cmml">min</mi><mo id="S3.E5.m1.6.6.6.3a" xref="S3.E5.m1.6.6.6.4.cmml">⁡</mo><mrow id="S3.E5.m1.6.6.6.3.2" xref="S3.E5.m1.6.6.6.4.cmml"><mo id="S3.E5.m1.6.6.6.3.2.3" stretchy="false" xref="S3.E5.m1.6.6.6.4.cmml">(</mo><msubsup id="S3.E5.m1.5.5.5.2.1.1" xref="S3.E5.m1.5.5.5.2.1.1.cmml"><mi id="S3.E5.m1.5.5.5.2.1.1.2.2" xref="S3.E5.m1.5.5.5.2.1.1.2.2.cmml">d</mi><mi id="S3.E5.m1.5.5.5.2.1.1.2.3" xref="S3.E5.m1.5.5.5.2.1.1.2.3.cmml">i</mi><mtext id="S3.E5.m1.5.5.5.2.1.1.3" xref="S3.E5.m1.5.5.5.2.1.1.3a.cmml">pred</mtext></msubsup><mo id="S3.E5.m1.6.6.6.3.2.4" xref="S3.E5.m1.6.6.6.4.cmml">,</mo><msubsup id="S3.E5.m1.6.6.6.3.2.2" xref="S3.E5.m1.6.6.6.3.2.2.cmml"><mi id="S3.E5.m1.6.6.6.3.2.2.2.2" xref="S3.E5.m1.6.6.6.3.2.2.2.2.cmml">d</mi><mi id="S3.E5.m1.6.6.6.3.2.2.2.3" xref="S3.E5.m1.6.6.6.3.2.2.2.3.cmml">i</mi><mtext id="S3.E5.m1.6.6.6.3.2.2.3" xref="S3.E5.m1.6.6.6.3.2.2.3a.cmml">gt</mtext></msubsup><mo id="S3.E5.m1.6.6.6.3.2.5" stretchy="false" xref="S3.E5.m1.6.6.6.4.cmml">)</mo></mrow></mrow></mfrac></mrow><annotation-xml encoding="MathML-Content" id="S3.E5.m1.6b"><apply id="S3.E5.m1.6.7.cmml" xref="S3.E5.m1.6.7"><eq id="S3.E5.m1.6.7.1.cmml" xref="S3.E5.m1.6.7.1"></eq><ci id="S3.E5.m1.6.7.2.cmml" xref="S3.E5.m1.6.7.2">𝛿</ci><apply id="S3.E5.m1.6.6.cmml" xref="S3.E5.m1.6.6"><divide id="S3.E5.m1.6.6.7.cmml" xref="S3.E5.m1.6.6"></divide><apply id="S3.E5.m1.3.3.3.4.cmml" xref="S3.E5.m1.3.3.3.3"><max id="S3.E5.m1.1.1.1.1.cmml" xref="S3.E5.m1.1.1.1.1"></max><apply id="S3.E5.m1.2.2.2.2.1.1.cmml" xref="S3.E5.m1.2.2.2.2.1.1"><csymbol cd="ambiguous" id="S3.E5.m1.2.2.2.2.1.1.1.cmml" xref="S3.E5.m1.2.2.2.2.1.1">superscript</csymbol><apply id="S3.E5.m1.2.2.2.2.1.1.2.cmml" xref="S3.E5.m1.2.2.2.2.1.1"><csymbol cd="ambiguous" id="S3.E5.m1.2.2.2.2.1.1.2.1.cmml" xref="S3.E5.m1.2.2.2.2.1.1">subscript</csymbol><ci id="S3.E5.m1.2.2.2.2.1.1.2.2.cmml" xref="S3.E5.m1.2.2.2.2.1.1.2.2">𝑑</ci><ci id="S3.E5.m1.2.2.2.2.1.1.2.3.cmml" xref="S3.E5.m1.2.2.2.2.1.1.2.3">𝑖</ci></apply><ci id="S3.E5.m1.2.2.2.2.1.1.3a.cmml" xref="S3.E5.m1.2.2.2.2.1.1.3"><mtext id="S3.E5.m1.2.2.2.2.1.1.3.cmml" mathsize="70%" xref="S3.E5.m1.2.2.2.2.1.1.3">pred</mtext></ci></apply><apply id="S3.E5.m1.3.3.3.3.2.2.cmml" xref="S3.E5.m1.3.3.3.3.2.2"><csymbol cd="ambiguous" id="S3.E5.m1.3.3.3.3.2.2.1.cmml" xref="S3.E5.m1.3.3.3.3.2.2">superscript</csymbol><apply id="S3.E5.m1.3.3.3.3.2.2.2.cmml" xref="S3.E5.m1.3.3.3.3.2.2"><csymbol cd="ambiguous" id="S3.E5.m1.3.3.3.3.2.2.2.1.cmml" xref="S3.E5.m1.3.3.3.3.2.2">subscript</csymbol><ci id="S3.E5.m1.3.3.3.3.2.2.2.2.cmml" xref="S3.E5.m1.3.3.3.3.2.2.2.2">𝑑</ci><ci id="S3.E5.m1.3.3.3.3.2.2.2.3.cmml" xref="S3.E5.m1.3.3.3.3.2.2.2.3">𝑖</ci></apply><ci id="S3.E5.m1.3.3.3.3.2.2.3a.cmml" xref="S3.E5.m1.3.3.3.3.2.2.3"><mtext id="S3.E5.m1.3.3.3.3.2.2.3.cmml" mathsize="70%" xref="S3.E5.m1.3.3.3.3.2.2.3">gt</mtext></ci></apply></apply><apply id="S3.E5.m1.6.6.6.4.cmml" xref="S3.E5.m1.6.6.6.3"><min id="S3.E5.m1.4.4.4.1.cmml" xref="S3.E5.m1.4.4.4.1"></min><apply id="S3.E5.m1.5.5.5.2.1.1.cmml" xref="S3.E5.m1.5.5.5.2.1.1"><csymbol cd="ambiguous" id="S3.E5.m1.5.5.5.2.1.1.1.cmml" xref="S3.E5.m1.5.5.5.2.1.1">superscript</csymbol><apply id="S3.E5.m1.5.5.5.2.1.1.2.cmml" xref="S3.E5.m1.5.5.5.2.1.1"><csymbol cd="ambiguous" id="S3.E5.m1.5.5.5.2.1.1.2.1.cmml" xref="S3.E5.m1.5.5.5.2.1.1">subscript</csymbol><ci id="S3.E5.m1.5.5.5.2.1.1.2.2.cmml" xref="S3.E5.m1.5.5.5.2.1.1.2.2">𝑑</ci><ci id="S3.E5.m1.5.5.5.2.1.1.2.3.cmml" xref="S3.E5.m1.5.5.5.2.1.1.2.3">𝑖</ci></apply><ci id="S3.E5.m1.5.5.5.2.1.1.3a.cmml" xref="S3.E5.m1.5.5.5.2.1.1.3"><mtext id="S3.E5.m1.5.5.5.2.1.1.3.cmml" mathsize="70%" xref="S3.E5.m1.5.5.5.2.1.1.3">pred</mtext></ci></apply><apply id="S3.E5.m1.6.6.6.3.2.2.cmml" xref="S3.E5.m1.6.6.6.3.2.2"><csymbol cd="ambiguous" id="S3.E5.m1.6.6.6.3.2.2.1.cmml" xref="S3.E5.m1.6.6.6.3.2.2">superscript</csymbol><apply id="S3.E5.m1.6.6.6.3.2.2.2.cmml" xref="S3.E5.m1.6.6.6.3.2.2"><csymbol cd="ambiguous" id="S3.E5.m1.6.6.6.3.2.2.2.1.cmml" xref="S3.E5.m1.6.6.6.3.2.2">subscript</csymbol><ci id="S3.E5.m1.6.6.6.3.2.2.2.2.cmml" xref="S3.E5.m1.6.6.6.3.2.2.2.2">𝑑</ci><ci id="S3.E5.m1.6.6.6.3.2.2.2.3.cmml" xref="S3.E5.m1.6.6.6.3.2.2.2.3">𝑖</ci></apply><ci id="S3.E5.m1.6.6.6.3.2.2.3a.cmml" xref="S3.E5.m1.6.6.6.3.2.2.3"><mtext id="S3.E5.m1.6.6.6.3.2.2.3.cmml" mathsize="70%" xref="S3.E5.m1.6.6.6.3.2.2.3">gt</mtext></ci></apply></apply></apply></apply></annotation-xml><annotation encoding="application/x-tex" id="S3.E5.m1.6c">\delta=\frac{\max(d_{i}^{\text{pred}},d_{i}^{\text{gt}})}{\min(d_{i}^{\text{% pred}},d_{i}^{\text{gt}})}</annotation><annotation encoding="application/x-llamapun" id="S3.E5.m1.6d">italic_δ = divide start_ARG roman_max ( italic_d start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT pred end_POSTSUPERSCRIPT , italic_d start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT gt end_POSTSUPERSCRIPT ) end_ARG start_ARG roman_min ( italic_d start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT pred end_POSTSUPERSCRIPT , italic_d start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT gt end_POSTSUPERSCRIPT ) end_ARG</annotation></semantics></math></td> <td class="ltx_eqn_cell ltx_eqn_center_padright"></td> <td class="ltx_eqn_cell ltx_eqn_eqno ltx_align_middle ltx_align_right" rowspan="1"><span class="ltx_tag ltx_tag_equation ltx_align_right">(5)</span></td> </tr></tbody> </table> <p class="ltx_p" id="S3.I2.i4.p2.2">The accuracy is then calculated as the proportion of pixels where <math alttext="\delta" class="ltx_Math" display="inline" id="S3.I2.i4.p2.2.m1.1"><semantics id="S3.I2.i4.p2.2.m1.1a"><mi id="S3.I2.i4.p2.2.m1.1.1" xref="S3.I2.i4.p2.2.m1.1.1.cmml">δ</mi><annotation-xml encoding="MathML-Content" id="S3.I2.i4.p2.2.m1.1b"><ci id="S3.I2.i4.p2.2.m1.1.1.cmml" xref="S3.I2.i4.p2.2.m1.1.1">𝛿</ci></annotation-xml><annotation encoding="application/x-tex" id="S3.I2.i4.p2.2.m1.1c">\delta</annotation><annotation encoding="application/x-llamapun" id="S3.I2.i4.p2.2.m1.1d">italic_δ</annotation></semantics></math> is less than a certain value, in our case (threshold = 1.25)</p> <table class="ltx_equation ltx_eqn_table" id="S3.E6"> <tbody><tr class="ltx_equation ltx_eqn_row ltx_align_baseline"> <td class="ltx_eqn_cell ltx_eqn_center_padleft"></td> <td class="ltx_eqn_cell ltx_align_center"><math alttext="\text{Delta Accuracy}=\frac{1}{N}\sum_{i=1}^{N}[\delta&lt;1.25]" class="ltx_Math" display="block" id="S3.E6.m1.1"><semantics id="S3.E6.m1.1a"><mrow id="S3.E6.m1.1.1" xref="S3.E6.m1.1.1.cmml"><mtext id="S3.E6.m1.1.1.3" xref="S3.E6.m1.1.1.3a.cmml">Delta Accuracy</mtext><mo id="S3.E6.m1.1.1.2" xref="S3.E6.m1.1.1.2.cmml">=</mo><mrow id="S3.E6.m1.1.1.1" xref="S3.E6.m1.1.1.1.cmml"><mfrac id="S3.E6.m1.1.1.1.3" xref="S3.E6.m1.1.1.1.3.cmml"><mn id="S3.E6.m1.1.1.1.3.2" xref="S3.E6.m1.1.1.1.3.2.cmml">1</mn><mi id="S3.E6.m1.1.1.1.3.3" xref="S3.E6.m1.1.1.1.3.3.cmml">N</mi></mfrac><mo id="S3.E6.m1.1.1.1.2" xref="S3.E6.m1.1.1.1.2.cmml">⁢</mo><mrow id="S3.E6.m1.1.1.1.1" xref="S3.E6.m1.1.1.1.1.cmml"><munderover id="S3.E6.m1.1.1.1.1.2" xref="S3.E6.m1.1.1.1.1.2.cmml"><mo id="S3.E6.m1.1.1.1.1.2.2.2" movablelimits="false" rspace="0em" xref="S3.E6.m1.1.1.1.1.2.2.2.cmml">∑</mo><mrow id="S3.E6.m1.1.1.1.1.2.2.3" xref="S3.E6.m1.1.1.1.1.2.2.3.cmml"><mi id="S3.E6.m1.1.1.1.1.2.2.3.2" xref="S3.E6.m1.1.1.1.1.2.2.3.2.cmml">i</mi><mo id="S3.E6.m1.1.1.1.1.2.2.3.1" xref="S3.E6.m1.1.1.1.1.2.2.3.1.cmml">=</mo><mn id="S3.E6.m1.1.1.1.1.2.2.3.3" xref="S3.E6.m1.1.1.1.1.2.2.3.3.cmml">1</mn></mrow><mi id="S3.E6.m1.1.1.1.1.2.3" xref="S3.E6.m1.1.1.1.1.2.3.cmml">N</mi></munderover><mrow id="S3.E6.m1.1.1.1.1.1.1" xref="S3.E6.m1.1.1.1.1.1.2.cmml"><mo id="S3.E6.m1.1.1.1.1.1.1.2" stretchy="false" xref="S3.E6.m1.1.1.1.1.1.2.1.cmml">[</mo><mrow id="S3.E6.m1.1.1.1.1.1.1.1" xref="S3.E6.m1.1.1.1.1.1.1.1.cmml"><mi id="S3.E6.m1.1.1.1.1.1.1.1.2" xref="S3.E6.m1.1.1.1.1.1.1.1.2.cmml">δ</mi><mo id="S3.E6.m1.1.1.1.1.1.1.1.1" xref="S3.E6.m1.1.1.1.1.1.1.1.1.cmml">&lt;</mo><mn id="S3.E6.m1.1.1.1.1.1.1.1.3" xref="S3.E6.m1.1.1.1.1.1.1.1.3.cmml">1.25</mn></mrow><mo id="S3.E6.m1.1.1.1.1.1.1.3" stretchy="false" xref="S3.E6.m1.1.1.1.1.1.2.1.cmml">]</mo></mrow></mrow></mrow></mrow><annotation-xml encoding="MathML-Content" id="S3.E6.m1.1b"><apply id="S3.E6.m1.1.1.cmml" xref="S3.E6.m1.1.1"><eq id="S3.E6.m1.1.1.2.cmml" xref="S3.E6.m1.1.1.2"></eq><ci id="S3.E6.m1.1.1.3a.cmml" xref="S3.E6.m1.1.1.3"><mtext id="S3.E6.m1.1.1.3.cmml" xref="S3.E6.m1.1.1.3">Delta Accuracy</mtext></ci><apply id="S3.E6.m1.1.1.1.cmml" xref="S3.E6.m1.1.1.1"><times id="S3.E6.m1.1.1.1.2.cmml" xref="S3.E6.m1.1.1.1.2"></times><apply id="S3.E6.m1.1.1.1.3.cmml" xref="S3.E6.m1.1.1.1.3"><divide id="S3.E6.m1.1.1.1.3.1.cmml" xref="S3.E6.m1.1.1.1.3"></divide><cn id="S3.E6.m1.1.1.1.3.2.cmml" type="integer" xref="S3.E6.m1.1.1.1.3.2">1</cn><ci id="S3.E6.m1.1.1.1.3.3.cmml" xref="S3.E6.m1.1.1.1.3.3">𝑁</ci></apply><apply id="S3.E6.m1.1.1.1.1.cmml" xref="S3.E6.m1.1.1.1.1"><apply id="S3.E6.m1.1.1.1.1.2.cmml" xref="S3.E6.m1.1.1.1.1.2"><csymbol cd="ambiguous" id="S3.E6.m1.1.1.1.1.2.1.cmml" xref="S3.E6.m1.1.1.1.1.2">superscript</csymbol><apply id="S3.E6.m1.1.1.1.1.2.2.cmml" xref="S3.E6.m1.1.1.1.1.2"><csymbol cd="ambiguous" id="S3.E6.m1.1.1.1.1.2.2.1.cmml" xref="S3.E6.m1.1.1.1.1.2">subscript</csymbol><sum id="S3.E6.m1.1.1.1.1.2.2.2.cmml" xref="S3.E6.m1.1.1.1.1.2.2.2"></sum><apply id="S3.E6.m1.1.1.1.1.2.2.3.cmml" xref="S3.E6.m1.1.1.1.1.2.2.3"><eq id="S3.E6.m1.1.1.1.1.2.2.3.1.cmml" xref="S3.E6.m1.1.1.1.1.2.2.3.1"></eq><ci id="S3.E6.m1.1.1.1.1.2.2.3.2.cmml" xref="S3.E6.m1.1.1.1.1.2.2.3.2">𝑖</ci><cn id="S3.E6.m1.1.1.1.1.2.2.3.3.cmml" type="integer" xref="S3.E6.m1.1.1.1.1.2.2.3.3">1</cn></apply></apply><ci id="S3.E6.m1.1.1.1.1.2.3.cmml" xref="S3.E6.m1.1.1.1.1.2.3">𝑁</ci></apply><apply id="S3.E6.m1.1.1.1.1.1.2.cmml" xref="S3.E6.m1.1.1.1.1.1.1"><csymbol cd="latexml" id="S3.E6.m1.1.1.1.1.1.2.1.cmml" xref="S3.E6.m1.1.1.1.1.1.1.2">delimited-[]</csymbol><apply id="S3.E6.m1.1.1.1.1.1.1.1.cmml" xref="S3.E6.m1.1.1.1.1.1.1.1"><lt id="S3.E6.m1.1.1.1.1.1.1.1.1.cmml" xref="S3.E6.m1.1.1.1.1.1.1.1.1"></lt><ci id="S3.E6.m1.1.1.1.1.1.1.1.2.cmml" xref="S3.E6.m1.1.1.1.1.1.1.1.2">𝛿</ci><cn id="S3.E6.m1.1.1.1.1.1.1.1.3.cmml" type="float" xref="S3.E6.m1.1.1.1.1.1.1.1.3">1.25</cn></apply></apply></apply></apply></apply></annotation-xml><annotation encoding="application/x-tex" id="S3.E6.m1.1c">\text{Delta Accuracy}=\frac{1}{N}\sum_{i=1}^{N}[\delta&lt;1.25]</annotation><annotation encoding="application/x-llamapun" id="S3.E6.m1.1d">Delta Accuracy = divide start_ARG 1 end_ARG start_ARG italic_N end_ARG ∑ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_N end_POSTSUPERSCRIPT [ italic_δ &lt; 1.25 ]</annotation></semantics></math></td> <td class="ltx_eqn_cell ltx_eqn_center_padright"></td> <td class="ltx_eqn_cell ltx_eqn_eqno ltx_align_middle ltx_align_right" rowspan="1"><span class="ltx_tag ltx_tag_equation ltx_align_right">(6)</span></td> </tr></tbody> </table> </div> </li> <li class="ltx_item" id="S3.I2.i5" style="list-style-type:none;"> <span class="ltx_tag ltx_tag_item">•</span> <div class="ltx_para" id="S3.I2.i5.p1"> <p class="ltx_p" id="S3.I2.i5.p1.8">Structural Similarity Index (SSIM):</p> <table class="ltx_equation ltx_eqn_table" id="S3.E7"> <tbody><tr class="ltx_equation ltx_eqn_row ltx_align_baseline"> <td class="ltx_eqn_cell ltx_eqn_center_padleft"></td> <td class="ltx_eqn_cell ltx_align_center"><math alttext="SSIM(x,y)=\frac{(2\mu_{x}\mu_{y}+C_{1})(2\sigma_{xy}+C_{2})}{(\mu_{x}^{2}+\mu_% {y}^{2}+C_{1})(\sigma_{x}^{2}+\sigma_{y}^{2}+C_{2})}" class="ltx_Math" display="block" id="S3.E7.m1.6"><semantics id="S3.E7.m1.6a"><mrow id="S3.E7.m1.6.7" xref="S3.E7.m1.6.7.cmml"><mrow id="S3.E7.m1.6.7.2" xref="S3.E7.m1.6.7.2.cmml"><mi id="S3.E7.m1.6.7.2.2" xref="S3.E7.m1.6.7.2.2.cmml">S</mi><mo id="S3.E7.m1.6.7.2.1" xref="S3.E7.m1.6.7.2.1.cmml">⁢</mo><mi id="S3.E7.m1.6.7.2.3" xref="S3.E7.m1.6.7.2.3.cmml">S</mi><mo id="S3.E7.m1.6.7.2.1a" xref="S3.E7.m1.6.7.2.1.cmml">⁢</mo><mi id="S3.E7.m1.6.7.2.4" xref="S3.E7.m1.6.7.2.4.cmml">I</mi><mo id="S3.E7.m1.6.7.2.1b" xref="S3.E7.m1.6.7.2.1.cmml">⁢</mo><mi id="S3.E7.m1.6.7.2.5" xref="S3.E7.m1.6.7.2.5.cmml">M</mi><mo id="S3.E7.m1.6.7.2.1c" xref="S3.E7.m1.6.7.2.1.cmml">⁢</mo><mrow id="S3.E7.m1.6.7.2.6.2" xref="S3.E7.m1.6.7.2.6.1.cmml"><mo id="S3.E7.m1.6.7.2.6.2.1" stretchy="false" xref="S3.E7.m1.6.7.2.6.1.cmml">(</mo><mi id="S3.E7.m1.5.5" xref="S3.E7.m1.5.5.cmml">x</mi><mo id="S3.E7.m1.6.7.2.6.2.2" xref="S3.E7.m1.6.7.2.6.1.cmml">,</mo><mi id="S3.E7.m1.6.6" xref="S3.E7.m1.6.6.cmml">y</mi><mo id="S3.E7.m1.6.7.2.6.2.3" stretchy="false" xref="S3.E7.m1.6.7.2.6.1.cmml">)</mo></mrow></mrow><mo id="S3.E7.m1.6.7.1" xref="S3.E7.m1.6.7.1.cmml">=</mo><mfrac id="S3.E7.m1.4.4" xref="S3.E7.m1.4.4.cmml"><mrow id="S3.E7.m1.2.2.2" xref="S3.E7.m1.2.2.2.cmml"><mrow id="S3.E7.m1.1.1.1.1.1" xref="S3.E7.m1.1.1.1.1.1.1.cmml"><mo id="S3.E7.m1.1.1.1.1.1.2" stretchy="false" xref="S3.E7.m1.1.1.1.1.1.1.cmml">(</mo><mrow id="S3.E7.m1.1.1.1.1.1.1" xref="S3.E7.m1.1.1.1.1.1.1.cmml"><mrow id="S3.E7.m1.1.1.1.1.1.1.2" xref="S3.E7.m1.1.1.1.1.1.1.2.cmml"><mn id="S3.E7.m1.1.1.1.1.1.1.2.2" xref="S3.E7.m1.1.1.1.1.1.1.2.2.cmml">2</mn><mo id="S3.E7.m1.1.1.1.1.1.1.2.1" xref="S3.E7.m1.1.1.1.1.1.1.2.1.cmml">⁢</mo><msub id="S3.E7.m1.1.1.1.1.1.1.2.3" xref="S3.E7.m1.1.1.1.1.1.1.2.3.cmml"><mi id="S3.E7.m1.1.1.1.1.1.1.2.3.2" xref="S3.E7.m1.1.1.1.1.1.1.2.3.2.cmml">μ</mi><mi id="S3.E7.m1.1.1.1.1.1.1.2.3.3" xref="S3.E7.m1.1.1.1.1.1.1.2.3.3.cmml">x</mi></msub><mo id="S3.E7.m1.1.1.1.1.1.1.2.1a" xref="S3.E7.m1.1.1.1.1.1.1.2.1.cmml">⁢</mo><msub id="S3.E7.m1.1.1.1.1.1.1.2.4" xref="S3.E7.m1.1.1.1.1.1.1.2.4.cmml"><mi id="S3.E7.m1.1.1.1.1.1.1.2.4.2" xref="S3.E7.m1.1.1.1.1.1.1.2.4.2.cmml">μ</mi><mi id="S3.E7.m1.1.1.1.1.1.1.2.4.3" xref="S3.E7.m1.1.1.1.1.1.1.2.4.3.cmml">y</mi></msub></mrow><mo id="S3.E7.m1.1.1.1.1.1.1.1" xref="S3.E7.m1.1.1.1.1.1.1.1.cmml">+</mo><msub id="S3.E7.m1.1.1.1.1.1.1.3" xref="S3.E7.m1.1.1.1.1.1.1.3.cmml"><mi id="S3.E7.m1.1.1.1.1.1.1.3.2" xref="S3.E7.m1.1.1.1.1.1.1.3.2.cmml">C</mi><mn id="S3.E7.m1.1.1.1.1.1.1.3.3" xref="S3.E7.m1.1.1.1.1.1.1.3.3.cmml">1</mn></msub></mrow><mo id="S3.E7.m1.1.1.1.1.1.3" stretchy="false" xref="S3.E7.m1.1.1.1.1.1.1.cmml">)</mo></mrow><mo id="S3.E7.m1.2.2.2.3" xref="S3.E7.m1.2.2.2.3.cmml">⁢</mo><mrow id="S3.E7.m1.2.2.2.2.1" xref="S3.E7.m1.2.2.2.2.1.1.cmml"><mo id="S3.E7.m1.2.2.2.2.1.2" stretchy="false" xref="S3.E7.m1.2.2.2.2.1.1.cmml">(</mo><mrow id="S3.E7.m1.2.2.2.2.1.1" xref="S3.E7.m1.2.2.2.2.1.1.cmml"><mrow id="S3.E7.m1.2.2.2.2.1.1.2" xref="S3.E7.m1.2.2.2.2.1.1.2.cmml"><mn id="S3.E7.m1.2.2.2.2.1.1.2.2" xref="S3.E7.m1.2.2.2.2.1.1.2.2.cmml">2</mn><mo id="S3.E7.m1.2.2.2.2.1.1.2.1" xref="S3.E7.m1.2.2.2.2.1.1.2.1.cmml">⁢</mo><msub id="S3.E7.m1.2.2.2.2.1.1.2.3" xref="S3.E7.m1.2.2.2.2.1.1.2.3.cmml"><mi id="S3.E7.m1.2.2.2.2.1.1.2.3.2" xref="S3.E7.m1.2.2.2.2.1.1.2.3.2.cmml">σ</mi><mrow id="S3.E7.m1.2.2.2.2.1.1.2.3.3" xref="S3.E7.m1.2.2.2.2.1.1.2.3.3.cmml"><mi id="S3.E7.m1.2.2.2.2.1.1.2.3.3.2" xref="S3.E7.m1.2.2.2.2.1.1.2.3.3.2.cmml">x</mi><mo id="S3.E7.m1.2.2.2.2.1.1.2.3.3.1" xref="S3.E7.m1.2.2.2.2.1.1.2.3.3.1.cmml">⁢</mo><mi id="S3.E7.m1.2.2.2.2.1.1.2.3.3.3" xref="S3.E7.m1.2.2.2.2.1.1.2.3.3.3.cmml">y</mi></mrow></msub></mrow><mo id="S3.E7.m1.2.2.2.2.1.1.1" xref="S3.E7.m1.2.2.2.2.1.1.1.cmml">+</mo><msub id="S3.E7.m1.2.2.2.2.1.1.3" xref="S3.E7.m1.2.2.2.2.1.1.3.cmml"><mi id="S3.E7.m1.2.2.2.2.1.1.3.2" xref="S3.E7.m1.2.2.2.2.1.1.3.2.cmml">C</mi><mn id="S3.E7.m1.2.2.2.2.1.1.3.3" xref="S3.E7.m1.2.2.2.2.1.1.3.3.cmml">2</mn></msub></mrow><mo id="S3.E7.m1.2.2.2.2.1.3" stretchy="false" xref="S3.E7.m1.2.2.2.2.1.1.cmml">)</mo></mrow></mrow><mrow id="S3.E7.m1.4.4.4" xref="S3.E7.m1.4.4.4.cmml"><mrow id="S3.E7.m1.3.3.3.1.1" xref="S3.E7.m1.3.3.3.1.1.1.cmml"><mo id="S3.E7.m1.3.3.3.1.1.2" stretchy="false" xref="S3.E7.m1.3.3.3.1.1.1.cmml">(</mo><mrow id="S3.E7.m1.3.3.3.1.1.1" xref="S3.E7.m1.3.3.3.1.1.1.cmml"><msubsup id="S3.E7.m1.3.3.3.1.1.1.2" xref="S3.E7.m1.3.3.3.1.1.1.2.cmml"><mi id="S3.E7.m1.3.3.3.1.1.1.2.2.2" xref="S3.E7.m1.3.3.3.1.1.1.2.2.2.cmml">μ</mi><mi id="S3.E7.m1.3.3.3.1.1.1.2.2.3" xref="S3.E7.m1.3.3.3.1.1.1.2.2.3.cmml">x</mi><mn id="S3.E7.m1.3.3.3.1.1.1.2.3" xref="S3.E7.m1.3.3.3.1.1.1.2.3.cmml">2</mn></msubsup><mo id="S3.E7.m1.3.3.3.1.1.1.1" xref="S3.E7.m1.3.3.3.1.1.1.1.cmml">+</mo><msubsup id="S3.E7.m1.3.3.3.1.1.1.3" xref="S3.E7.m1.3.3.3.1.1.1.3.cmml"><mi id="S3.E7.m1.3.3.3.1.1.1.3.2.2" xref="S3.E7.m1.3.3.3.1.1.1.3.2.2.cmml">μ</mi><mi id="S3.E7.m1.3.3.3.1.1.1.3.2.3" xref="S3.E7.m1.3.3.3.1.1.1.3.2.3.cmml">y</mi><mn id="S3.E7.m1.3.3.3.1.1.1.3.3" xref="S3.E7.m1.3.3.3.1.1.1.3.3.cmml">2</mn></msubsup><mo id="S3.E7.m1.3.3.3.1.1.1.1a" xref="S3.E7.m1.3.3.3.1.1.1.1.cmml">+</mo><msub id="S3.E7.m1.3.3.3.1.1.1.4" xref="S3.E7.m1.3.3.3.1.1.1.4.cmml"><mi id="S3.E7.m1.3.3.3.1.1.1.4.2" xref="S3.E7.m1.3.3.3.1.1.1.4.2.cmml">C</mi><mn id="S3.E7.m1.3.3.3.1.1.1.4.3" xref="S3.E7.m1.3.3.3.1.1.1.4.3.cmml">1</mn></msub></mrow><mo id="S3.E7.m1.3.3.3.1.1.3" stretchy="false" xref="S3.E7.m1.3.3.3.1.1.1.cmml">)</mo></mrow><mo id="S3.E7.m1.4.4.4.3" xref="S3.E7.m1.4.4.4.3.cmml">⁢</mo><mrow id="S3.E7.m1.4.4.4.2.1" xref="S3.E7.m1.4.4.4.2.1.1.cmml"><mo id="S3.E7.m1.4.4.4.2.1.2" stretchy="false" xref="S3.E7.m1.4.4.4.2.1.1.cmml">(</mo><mrow id="S3.E7.m1.4.4.4.2.1.1" xref="S3.E7.m1.4.4.4.2.1.1.cmml"><msubsup id="S3.E7.m1.4.4.4.2.1.1.2" xref="S3.E7.m1.4.4.4.2.1.1.2.cmml"><mi id="S3.E7.m1.4.4.4.2.1.1.2.2.2" xref="S3.E7.m1.4.4.4.2.1.1.2.2.2.cmml">σ</mi><mi id="S3.E7.m1.4.4.4.2.1.1.2.2.3" xref="S3.E7.m1.4.4.4.2.1.1.2.2.3.cmml">x</mi><mn id="S3.E7.m1.4.4.4.2.1.1.2.3" xref="S3.E7.m1.4.4.4.2.1.1.2.3.cmml">2</mn></msubsup><mo id="S3.E7.m1.4.4.4.2.1.1.1" xref="S3.E7.m1.4.4.4.2.1.1.1.cmml">+</mo><msubsup id="S3.E7.m1.4.4.4.2.1.1.3" xref="S3.E7.m1.4.4.4.2.1.1.3.cmml"><mi id="S3.E7.m1.4.4.4.2.1.1.3.2.2" xref="S3.E7.m1.4.4.4.2.1.1.3.2.2.cmml">σ</mi><mi id="S3.E7.m1.4.4.4.2.1.1.3.2.3" xref="S3.E7.m1.4.4.4.2.1.1.3.2.3.cmml">y</mi><mn id="S3.E7.m1.4.4.4.2.1.1.3.3" xref="S3.E7.m1.4.4.4.2.1.1.3.3.cmml">2</mn></msubsup><mo id="S3.E7.m1.4.4.4.2.1.1.1a" xref="S3.E7.m1.4.4.4.2.1.1.1.cmml">+</mo><msub id="S3.E7.m1.4.4.4.2.1.1.4" xref="S3.E7.m1.4.4.4.2.1.1.4.cmml"><mi id="S3.E7.m1.4.4.4.2.1.1.4.2" xref="S3.E7.m1.4.4.4.2.1.1.4.2.cmml">C</mi><mn id="S3.E7.m1.4.4.4.2.1.1.4.3" xref="S3.E7.m1.4.4.4.2.1.1.4.3.cmml">2</mn></msub></mrow><mo id="S3.E7.m1.4.4.4.2.1.3" stretchy="false" xref="S3.E7.m1.4.4.4.2.1.1.cmml">)</mo></mrow></mrow></mfrac></mrow><annotation-xml encoding="MathML-Content" id="S3.E7.m1.6b"><apply id="S3.E7.m1.6.7.cmml" xref="S3.E7.m1.6.7"><eq id="S3.E7.m1.6.7.1.cmml" xref="S3.E7.m1.6.7.1"></eq><apply id="S3.E7.m1.6.7.2.cmml" xref="S3.E7.m1.6.7.2"><times id="S3.E7.m1.6.7.2.1.cmml" xref="S3.E7.m1.6.7.2.1"></times><ci id="S3.E7.m1.6.7.2.2.cmml" xref="S3.E7.m1.6.7.2.2">𝑆</ci><ci id="S3.E7.m1.6.7.2.3.cmml" xref="S3.E7.m1.6.7.2.3">𝑆</ci><ci id="S3.E7.m1.6.7.2.4.cmml" xref="S3.E7.m1.6.7.2.4">𝐼</ci><ci id="S3.E7.m1.6.7.2.5.cmml" xref="S3.E7.m1.6.7.2.5">𝑀</ci><interval closure="open" id="S3.E7.m1.6.7.2.6.1.cmml" xref="S3.E7.m1.6.7.2.6.2"><ci id="S3.E7.m1.5.5.cmml" xref="S3.E7.m1.5.5">𝑥</ci><ci id="S3.E7.m1.6.6.cmml" xref="S3.E7.m1.6.6">𝑦</ci></interval></apply><apply id="S3.E7.m1.4.4.cmml" xref="S3.E7.m1.4.4"><divide id="S3.E7.m1.4.4.5.cmml" xref="S3.E7.m1.4.4"></divide><apply id="S3.E7.m1.2.2.2.cmml" xref="S3.E7.m1.2.2.2"><times id="S3.E7.m1.2.2.2.3.cmml" xref="S3.E7.m1.2.2.2.3"></times><apply id="S3.E7.m1.1.1.1.1.1.1.cmml" xref="S3.E7.m1.1.1.1.1.1"><plus id="S3.E7.m1.1.1.1.1.1.1.1.cmml" xref="S3.E7.m1.1.1.1.1.1.1.1"></plus><apply id="S3.E7.m1.1.1.1.1.1.1.2.cmml" xref="S3.E7.m1.1.1.1.1.1.1.2"><times id="S3.E7.m1.1.1.1.1.1.1.2.1.cmml" xref="S3.E7.m1.1.1.1.1.1.1.2.1"></times><cn id="S3.E7.m1.1.1.1.1.1.1.2.2.cmml" type="integer" xref="S3.E7.m1.1.1.1.1.1.1.2.2">2</cn><apply id="S3.E7.m1.1.1.1.1.1.1.2.3.cmml" xref="S3.E7.m1.1.1.1.1.1.1.2.3"><csymbol cd="ambiguous" id="S3.E7.m1.1.1.1.1.1.1.2.3.1.cmml" xref="S3.E7.m1.1.1.1.1.1.1.2.3">subscript</csymbol><ci id="S3.E7.m1.1.1.1.1.1.1.2.3.2.cmml" xref="S3.E7.m1.1.1.1.1.1.1.2.3.2">𝜇</ci><ci id="S3.E7.m1.1.1.1.1.1.1.2.3.3.cmml" xref="S3.E7.m1.1.1.1.1.1.1.2.3.3">𝑥</ci></apply><apply id="S3.E7.m1.1.1.1.1.1.1.2.4.cmml" xref="S3.E7.m1.1.1.1.1.1.1.2.4"><csymbol cd="ambiguous" id="S3.E7.m1.1.1.1.1.1.1.2.4.1.cmml" xref="S3.E7.m1.1.1.1.1.1.1.2.4">subscript</csymbol><ci id="S3.E7.m1.1.1.1.1.1.1.2.4.2.cmml" xref="S3.E7.m1.1.1.1.1.1.1.2.4.2">𝜇</ci><ci id="S3.E7.m1.1.1.1.1.1.1.2.4.3.cmml" xref="S3.E7.m1.1.1.1.1.1.1.2.4.3">𝑦</ci></apply></apply><apply id="S3.E7.m1.1.1.1.1.1.1.3.cmml" xref="S3.E7.m1.1.1.1.1.1.1.3"><csymbol cd="ambiguous" id="S3.E7.m1.1.1.1.1.1.1.3.1.cmml" xref="S3.E7.m1.1.1.1.1.1.1.3">subscript</csymbol><ci id="S3.E7.m1.1.1.1.1.1.1.3.2.cmml" xref="S3.E7.m1.1.1.1.1.1.1.3.2">𝐶</ci><cn id="S3.E7.m1.1.1.1.1.1.1.3.3.cmml" type="integer" xref="S3.E7.m1.1.1.1.1.1.1.3.3">1</cn></apply></apply><apply id="S3.E7.m1.2.2.2.2.1.1.cmml" xref="S3.E7.m1.2.2.2.2.1"><plus id="S3.E7.m1.2.2.2.2.1.1.1.cmml" xref="S3.E7.m1.2.2.2.2.1.1.1"></plus><apply id="S3.E7.m1.2.2.2.2.1.1.2.cmml" xref="S3.E7.m1.2.2.2.2.1.1.2"><times id="S3.E7.m1.2.2.2.2.1.1.2.1.cmml" xref="S3.E7.m1.2.2.2.2.1.1.2.1"></times><cn id="S3.E7.m1.2.2.2.2.1.1.2.2.cmml" type="integer" xref="S3.E7.m1.2.2.2.2.1.1.2.2">2</cn><apply id="S3.E7.m1.2.2.2.2.1.1.2.3.cmml" xref="S3.E7.m1.2.2.2.2.1.1.2.3"><csymbol cd="ambiguous" id="S3.E7.m1.2.2.2.2.1.1.2.3.1.cmml" xref="S3.E7.m1.2.2.2.2.1.1.2.3">subscript</csymbol><ci id="S3.E7.m1.2.2.2.2.1.1.2.3.2.cmml" xref="S3.E7.m1.2.2.2.2.1.1.2.3.2">𝜎</ci><apply id="S3.E7.m1.2.2.2.2.1.1.2.3.3.cmml" xref="S3.E7.m1.2.2.2.2.1.1.2.3.3"><times id="S3.E7.m1.2.2.2.2.1.1.2.3.3.1.cmml" xref="S3.E7.m1.2.2.2.2.1.1.2.3.3.1"></times><ci id="S3.E7.m1.2.2.2.2.1.1.2.3.3.2.cmml" xref="S3.E7.m1.2.2.2.2.1.1.2.3.3.2">𝑥</ci><ci id="S3.E7.m1.2.2.2.2.1.1.2.3.3.3.cmml" xref="S3.E7.m1.2.2.2.2.1.1.2.3.3.3">𝑦</ci></apply></apply></apply><apply id="S3.E7.m1.2.2.2.2.1.1.3.cmml" xref="S3.E7.m1.2.2.2.2.1.1.3"><csymbol cd="ambiguous" id="S3.E7.m1.2.2.2.2.1.1.3.1.cmml" xref="S3.E7.m1.2.2.2.2.1.1.3">subscript</csymbol><ci id="S3.E7.m1.2.2.2.2.1.1.3.2.cmml" xref="S3.E7.m1.2.2.2.2.1.1.3.2">𝐶</ci><cn id="S3.E7.m1.2.2.2.2.1.1.3.3.cmml" type="integer" xref="S3.E7.m1.2.2.2.2.1.1.3.3">2</cn></apply></apply></apply><apply id="S3.E7.m1.4.4.4.cmml" xref="S3.E7.m1.4.4.4"><times id="S3.E7.m1.4.4.4.3.cmml" xref="S3.E7.m1.4.4.4.3"></times><apply id="S3.E7.m1.3.3.3.1.1.1.cmml" xref="S3.E7.m1.3.3.3.1.1"><plus id="S3.E7.m1.3.3.3.1.1.1.1.cmml" xref="S3.E7.m1.3.3.3.1.1.1.1"></plus><apply id="S3.E7.m1.3.3.3.1.1.1.2.cmml" xref="S3.E7.m1.3.3.3.1.1.1.2"><csymbol cd="ambiguous" id="S3.E7.m1.3.3.3.1.1.1.2.1.cmml" xref="S3.E7.m1.3.3.3.1.1.1.2">superscript</csymbol><apply id="S3.E7.m1.3.3.3.1.1.1.2.2.cmml" xref="S3.E7.m1.3.3.3.1.1.1.2"><csymbol cd="ambiguous" id="S3.E7.m1.3.3.3.1.1.1.2.2.1.cmml" xref="S3.E7.m1.3.3.3.1.1.1.2">subscript</csymbol><ci id="S3.E7.m1.3.3.3.1.1.1.2.2.2.cmml" xref="S3.E7.m1.3.3.3.1.1.1.2.2.2">𝜇</ci><ci id="S3.E7.m1.3.3.3.1.1.1.2.2.3.cmml" xref="S3.E7.m1.3.3.3.1.1.1.2.2.3">𝑥</ci></apply><cn id="S3.E7.m1.3.3.3.1.1.1.2.3.cmml" type="integer" xref="S3.E7.m1.3.3.3.1.1.1.2.3">2</cn></apply><apply id="S3.E7.m1.3.3.3.1.1.1.3.cmml" xref="S3.E7.m1.3.3.3.1.1.1.3"><csymbol cd="ambiguous" id="S3.E7.m1.3.3.3.1.1.1.3.1.cmml" xref="S3.E7.m1.3.3.3.1.1.1.3">superscript</csymbol><apply id="S3.E7.m1.3.3.3.1.1.1.3.2.cmml" xref="S3.E7.m1.3.3.3.1.1.1.3"><csymbol cd="ambiguous" id="S3.E7.m1.3.3.3.1.1.1.3.2.1.cmml" xref="S3.E7.m1.3.3.3.1.1.1.3">subscript</csymbol><ci id="S3.E7.m1.3.3.3.1.1.1.3.2.2.cmml" xref="S3.E7.m1.3.3.3.1.1.1.3.2.2">𝜇</ci><ci id="S3.E7.m1.3.3.3.1.1.1.3.2.3.cmml" xref="S3.E7.m1.3.3.3.1.1.1.3.2.3">𝑦</ci></apply><cn id="S3.E7.m1.3.3.3.1.1.1.3.3.cmml" type="integer" xref="S3.E7.m1.3.3.3.1.1.1.3.3">2</cn></apply><apply id="S3.E7.m1.3.3.3.1.1.1.4.cmml" xref="S3.E7.m1.3.3.3.1.1.1.4"><csymbol cd="ambiguous" id="S3.E7.m1.3.3.3.1.1.1.4.1.cmml" xref="S3.E7.m1.3.3.3.1.1.1.4">subscript</csymbol><ci id="S3.E7.m1.3.3.3.1.1.1.4.2.cmml" xref="S3.E7.m1.3.3.3.1.1.1.4.2">𝐶</ci><cn id="S3.E7.m1.3.3.3.1.1.1.4.3.cmml" type="integer" xref="S3.E7.m1.3.3.3.1.1.1.4.3">1</cn></apply></apply><apply id="S3.E7.m1.4.4.4.2.1.1.cmml" xref="S3.E7.m1.4.4.4.2.1"><plus id="S3.E7.m1.4.4.4.2.1.1.1.cmml" xref="S3.E7.m1.4.4.4.2.1.1.1"></plus><apply id="S3.E7.m1.4.4.4.2.1.1.2.cmml" xref="S3.E7.m1.4.4.4.2.1.1.2"><csymbol cd="ambiguous" id="S3.E7.m1.4.4.4.2.1.1.2.1.cmml" xref="S3.E7.m1.4.4.4.2.1.1.2">superscript</csymbol><apply id="S3.E7.m1.4.4.4.2.1.1.2.2.cmml" xref="S3.E7.m1.4.4.4.2.1.1.2"><csymbol cd="ambiguous" id="S3.E7.m1.4.4.4.2.1.1.2.2.1.cmml" xref="S3.E7.m1.4.4.4.2.1.1.2">subscript</csymbol><ci id="S3.E7.m1.4.4.4.2.1.1.2.2.2.cmml" xref="S3.E7.m1.4.4.4.2.1.1.2.2.2">𝜎</ci><ci id="S3.E7.m1.4.4.4.2.1.1.2.2.3.cmml" xref="S3.E7.m1.4.4.4.2.1.1.2.2.3">𝑥</ci></apply><cn id="S3.E7.m1.4.4.4.2.1.1.2.3.cmml" type="integer" xref="S3.E7.m1.4.4.4.2.1.1.2.3">2</cn></apply><apply id="S3.E7.m1.4.4.4.2.1.1.3.cmml" xref="S3.E7.m1.4.4.4.2.1.1.3"><csymbol cd="ambiguous" id="S3.E7.m1.4.4.4.2.1.1.3.1.cmml" xref="S3.E7.m1.4.4.4.2.1.1.3">superscript</csymbol><apply id="S3.E7.m1.4.4.4.2.1.1.3.2.cmml" xref="S3.E7.m1.4.4.4.2.1.1.3"><csymbol cd="ambiguous" id="S3.E7.m1.4.4.4.2.1.1.3.2.1.cmml" xref="S3.E7.m1.4.4.4.2.1.1.3">subscript</csymbol><ci id="S3.E7.m1.4.4.4.2.1.1.3.2.2.cmml" xref="S3.E7.m1.4.4.4.2.1.1.3.2.2">𝜎</ci><ci id="S3.E7.m1.4.4.4.2.1.1.3.2.3.cmml" xref="S3.E7.m1.4.4.4.2.1.1.3.2.3">𝑦</ci></apply><cn id="S3.E7.m1.4.4.4.2.1.1.3.3.cmml" type="integer" xref="S3.E7.m1.4.4.4.2.1.1.3.3">2</cn></apply><apply id="S3.E7.m1.4.4.4.2.1.1.4.cmml" xref="S3.E7.m1.4.4.4.2.1.1.4"><csymbol cd="ambiguous" id="S3.E7.m1.4.4.4.2.1.1.4.1.cmml" xref="S3.E7.m1.4.4.4.2.1.1.4">subscript</csymbol><ci id="S3.E7.m1.4.4.4.2.1.1.4.2.cmml" xref="S3.E7.m1.4.4.4.2.1.1.4.2">𝐶</ci><cn id="S3.E7.m1.4.4.4.2.1.1.4.3.cmml" type="integer" xref="S3.E7.m1.4.4.4.2.1.1.4.3">2</cn></apply></apply></apply></apply></apply></annotation-xml><annotation encoding="application/x-tex" id="S3.E7.m1.6c">SSIM(x,y)=\frac{(2\mu_{x}\mu_{y}+C_{1})(2\sigma_{xy}+C_{2})}{(\mu_{x}^{2}+\mu_% {y}^{2}+C_{1})(\sigma_{x}^{2}+\sigma_{y}^{2}+C_{2})}</annotation><annotation encoding="application/x-llamapun" id="S3.E7.m1.6d">italic_S italic_S italic_I italic_M ( italic_x , italic_y ) = divide start_ARG ( 2 italic_μ start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT italic_μ start_POSTSUBSCRIPT italic_y end_POSTSUBSCRIPT + italic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) ( 2 italic_σ start_POSTSUBSCRIPT italic_x italic_y end_POSTSUBSCRIPT + italic_C start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) end_ARG start_ARG ( italic_μ start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT + italic_μ start_POSTSUBSCRIPT italic_y end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT + italic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) ( italic_σ start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT + italic_σ start_POSTSUBSCRIPT italic_y end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT + italic_C start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) end_ARG</annotation></semantics></math></td> <td class="ltx_eqn_cell ltx_eqn_center_padright"></td> <td class="ltx_eqn_cell ltx_eqn_eqno ltx_align_middle ltx_align_right" rowspan="1"><span class="ltx_tag ltx_tag_equation ltx_align_right">(7)</span></td> </tr></tbody> </table> <p class="ltx_p" id="S3.I2.i5.p1.7">where <math alttext="\mu_{x}" class="ltx_Math" display="inline" id="S3.I2.i5.p1.1.m1.1"><semantics id="S3.I2.i5.p1.1.m1.1a"><msub id="S3.I2.i5.p1.1.m1.1.1" xref="S3.I2.i5.p1.1.m1.1.1.cmml"><mi id="S3.I2.i5.p1.1.m1.1.1.2" xref="S3.I2.i5.p1.1.m1.1.1.2.cmml">μ</mi><mi id="S3.I2.i5.p1.1.m1.1.1.3" xref="S3.I2.i5.p1.1.m1.1.1.3.cmml">x</mi></msub><annotation-xml encoding="MathML-Content" id="S3.I2.i5.p1.1.m1.1b"><apply id="S3.I2.i5.p1.1.m1.1.1.cmml" xref="S3.I2.i5.p1.1.m1.1.1"><csymbol cd="ambiguous" id="S3.I2.i5.p1.1.m1.1.1.1.cmml" xref="S3.I2.i5.p1.1.m1.1.1">subscript</csymbol><ci id="S3.I2.i5.p1.1.m1.1.1.2.cmml" xref="S3.I2.i5.p1.1.m1.1.1.2">𝜇</ci><ci id="S3.I2.i5.p1.1.m1.1.1.3.cmml" xref="S3.I2.i5.p1.1.m1.1.1.3">𝑥</ci></apply></annotation-xml><annotation encoding="application/x-tex" id="S3.I2.i5.p1.1.m1.1c">\mu_{x}</annotation><annotation encoding="application/x-llamapun" id="S3.I2.i5.p1.1.m1.1d">italic_μ start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT</annotation></semantics></math> and <math alttext="\mu_{y}" class="ltx_Math" display="inline" id="S3.I2.i5.p1.2.m2.1"><semantics id="S3.I2.i5.p1.2.m2.1a"><msub id="S3.I2.i5.p1.2.m2.1.1" xref="S3.I2.i5.p1.2.m2.1.1.cmml"><mi id="S3.I2.i5.p1.2.m2.1.1.2" xref="S3.I2.i5.p1.2.m2.1.1.2.cmml">μ</mi><mi id="S3.I2.i5.p1.2.m2.1.1.3" xref="S3.I2.i5.p1.2.m2.1.1.3.cmml">y</mi></msub><annotation-xml encoding="MathML-Content" id="S3.I2.i5.p1.2.m2.1b"><apply id="S3.I2.i5.p1.2.m2.1.1.cmml" xref="S3.I2.i5.p1.2.m2.1.1"><csymbol cd="ambiguous" id="S3.I2.i5.p1.2.m2.1.1.1.cmml" xref="S3.I2.i5.p1.2.m2.1.1">subscript</csymbol><ci id="S3.I2.i5.p1.2.m2.1.1.2.cmml" xref="S3.I2.i5.p1.2.m2.1.1.2">𝜇</ci><ci id="S3.I2.i5.p1.2.m2.1.1.3.cmml" xref="S3.I2.i5.p1.2.m2.1.1.3">𝑦</ci></apply></annotation-xml><annotation encoding="application/x-tex" id="S3.I2.i5.p1.2.m2.1c">\mu_{y}</annotation><annotation encoding="application/x-llamapun" id="S3.I2.i5.p1.2.m2.1d">italic_μ start_POSTSUBSCRIPT italic_y end_POSTSUBSCRIPT</annotation></semantics></math> are the means of the predicted and ground truth depth maps, <math alttext="\sigma_{x}^{2}" class="ltx_Math" display="inline" id="S3.I2.i5.p1.3.m3.1"><semantics id="S3.I2.i5.p1.3.m3.1a"><msubsup id="S3.I2.i5.p1.3.m3.1.1" xref="S3.I2.i5.p1.3.m3.1.1.cmml"><mi id="S3.I2.i5.p1.3.m3.1.1.2.2" xref="S3.I2.i5.p1.3.m3.1.1.2.2.cmml">σ</mi><mi id="S3.I2.i5.p1.3.m3.1.1.2.3" xref="S3.I2.i5.p1.3.m3.1.1.2.3.cmml">x</mi><mn id="S3.I2.i5.p1.3.m3.1.1.3" xref="S3.I2.i5.p1.3.m3.1.1.3.cmml">2</mn></msubsup><annotation-xml encoding="MathML-Content" id="S3.I2.i5.p1.3.m3.1b"><apply id="S3.I2.i5.p1.3.m3.1.1.cmml" xref="S3.I2.i5.p1.3.m3.1.1"><csymbol cd="ambiguous" id="S3.I2.i5.p1.3.m3.1.1.1.cmml" xref="S3.I2.i5.p1.3.m3.1.1">superscript</csymbol><apply id="S3.I2.i5.p1.3.m3.1.1.2.cmml" xref="S3.I2.i5.p1.3.m3.1.1"><csymbol cd="ambiguous" id="S3.I2.i5.p1.3.m3.1.1.2.1.cmml" xref="S3.I2.i5.p1.3.m3.1.1">subscript</csymbol><ci id="S3.I2.i5.p1.3.m3.1.1.2.2.cmml" xref="S3.I2.i5.p1.3.m3.1.1.2.2">𝜎</ci><ci id="S3.I2.i5.p1.3.m3.1.1.2.3.cmml" xref="S3.I2.i5.p1.3.m3.1.1.2.3">𝑥</ci></apply><cn id="S3.I2.i5.p1.3.m3.1.1.3.cmml" type="integer" xref="S3.I2.i5.p1.3.m3.1.1.3">2</cn></apply></annotation-xml><annotation encoding="application/x-tex" id="S3.I2.i5.p1.3.m3.1c">\sigma_{x}^{2}</annotation><annotation encoding="application/x-llamapun" id="S3.I2.i5.p1.3.m3.1d">italic_σ start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT</annotation></semantics></math> and <math alttext="\sigma_{y}^{2}" class="ltx_Math" display="inline" id="S3.I2.i5.p1.4.m4.1"><semantics id="S3.I2.i5.p1.4.m4.1a"><msubsup id="S3.I2.i5.p1.4.m4.1.1" xref="S3.I2.i5.p1.4.m4.1.1.cmml"><mi id="S3.I2.i5.p1.4.m4.1.1.2.2" xref="S3.I2.i5.p1.4.m4.1.1.2.2.cmml">σ</mi><mi id="S3.I2.i5.p1.4.m4.1.1.2.3" xref="S3.I2.i5.p1.4.m4.1.1.2.3.cmml">y</mi><mn id="S3.I2.i5.p1.4.m4.1.1.3" xref="S3.I2.i5.p1.4.m4.1.1.3.cmml">2</mn></msubsup><annotation-xml encoding="MathML-Content" id="S3.I2.i5.p1.4.m4.1b"><apply id="S3.I2.i5.p1.4.m4.1.1.cmml" xref="S3.I2.i5.p1.4.m4.1.1"><csymbol cd="ambiguous" id="S3.I2.i5.p1.4.m4.1.1.1.cmml" xref="S3.I2.i5.p1.4.m4.1.1">superscript</csymbol><apply id="S3.I2.i5.p1.4.m4.1.1.2.cmml" xref="S3.I2.i5.p1.4.m4.1.1"><csymbol cd="ambiguous" id="S3.I2.i5.p1.4.m4.1.1.2.1.cmml" xref="S3.I2.i5.p1.4.m4.1.1">subscript</csymbol><ci id="S3.I2.i5.p1.4.m4.1.1.2.2.cmml" xref="S3.I2.i5.p1.4.m4.1.1.2.2">𝜎</ci><ci id="S3.I2.i5.p1.4.m4.1.1.2.3.cmml" xref="S3.I2.i5.p1.4.m4.1.1.2.3">𝑦</ci></apply><cn id="S3.I2.i5.p1.4.m4.1.1.3.cmml" type="integer" xref="S3.I2.i5.p1.4.m4.1.1.3">2</cn></apply></annotation-xml><annotation encoding="application/x-tex" id="S3.I2.i5.p1.4.m4.1c">\sigma_{y}^{2}</annotation><annotation encoding="application/x-llamapun" id="S3.I2.i5.p1.4.m4.1d">italic_σ start_POSTSUBSCRIPT italic_y end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT</annotation></semantics></math> are the variances, and <math alttext="\sigma_{x}y" class="ltx_Math" display="inline" id="S3.I2.i5.p1.5.m5.1"><semantics id="S3.I2.i5.p1.5.m5.1a"><mrow id="S3.I2.i5.p1.5.m5.1.1" xref="S3.I2.i5.p1.5.m5.1.1.cmml"><msub id="S3.I2.i5.p1.5.m5.1.1.2" xref="S3.I2.i5.p1.5.m5.1.1.2.cmml"><mi id="S3.I2.i5.p1.5.m5.1.1.2.2" xref="S3.I2.i5.p1.5.m5.1.1.2.2.cmml">σ</mi><mi id="S3.I2.i5.p1.5.m5.1.1.2.3" xref="S3.I2.i5.p1.5.m5.1.1.2.3.cmml">x</mi></msub><mo id="S3.I2.i5.p1.5.m5.1.1.1" xref="S3.I2.i5.p1.5.m5.1.1.1.cmml">⁢</mo><mi id="S3.I2.i5.p1.5.m5.1.1.3" xref="S3.I2.i5.p1.5.m5.1.1.3.cmml">y</mi></mrow><annotation-xml encoding="MathML-Content" id="S3.I2.i5.p1.5.m5.1b"><apply id="S3.I2.i5.p1.5.m5.1.1.cmml" xref="S3.I2.i5.p1.5.m5.1.1"><times id="S3.I2.i5.p1.5.m5.1.1.1.cmml" xref="S3.I2.i5.p1.5.m5.1.1.1"></times><apply id="S3.I2.i5.p1.5.m5.1.1.2.cmml" xref="S3.I2.i5.p1.5.m5.1.1.2"><csymbol cd="ambiguous" id="S3.I2.i5.p1.5.m5.1.1.2.1.cmml" xref="S3.I2.i5.p1.5.m5.1.1.2">subscript</csymbol><ci id="S3.I2.i5.p1.5.m5.1.1.2.2.cmml" xref="S3.I2.i5.p1.5.m5.1.1.2.2">𝜎</ci><ci id="S3.I2.i5.p1.5.m5.1.1.2.3.cmml" xref="S3.I2.i5.p1.5.m5.1.1.2.3">𝑥</ci></apply><ci id="S3.I2.i5.p1.5.m5.1.1.3.cmml" xref="S3.I2.i5.p1.5.m5.1.1.3">𝑦</ci></apply></annotation-xml><annotation encoding="application/x-tex" id="S3.I2.i5.p1.5.m5.1c">\sigma_{x}y</annotation><annotation encoding="application/x-llamapun" id="S3.I2.i5.p1.5.m5.1d">italic_σ start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT italic_y</annotation></semantics></math> is the covariance. <math alttext="C_{1}" class="ltx_Math" display="inline" id="S3.I2.i5.p1.6.m6.1"><semantics id="S3.I2.i5.p1.6.m6.1a"><msub id="S3.I2.i5.p1.6.m6.1.1" xref="S3.I2.i5.p1.6.m6.1.1.cmml"><mi id="S3.I2.i5.p1.6.m6.1.1.2" xref="S3.I2.i5.p1.6.m6.1.1.2.cmml">C</mi><mn id="S3.I2.i5.p1.6.m6.1.1.3" xref="S3.I2.i5.p1.6.m6.1.1.3.cmml">1</mn></msub><annotation-xml encoding="MathML-Content" id="S3.I2.i5.p1.6.m6.1b"><apply id="S3.I2.i5.p1.6.m6.1.1.cmml" xref="S3.I2.i5.p1.6.m6.1.1"><csymbol cd="ambiguous" id="S3.I2.i5.p1.6.m6.1.1.1.cmml" xref="S3.I2.i5.p1.6.m6.1.1">subscript</csymbol><ci id="S3.I2.i5.p1.6.m6.1.1.2.cmml" xref="S3.I2.i5.p1.6.m6.1.1.2">𝐶</ci><cn id="S3.I2.i5.p1.6.m6.1.1.3.cmml" type="integer" xref="S3.I2.i5.p1.6.m6.1.1.3">1</cn></apply></annotation-xml><annotation encoding="application/x-tex" id="S3.I2.i5.p1.6.m6.1c">C_{1}</annotation><annotation encoding="application/x-llamapun" id="S3.I2.i5.p1.6.m6.1d">italic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT</annotation></semantics></math> and <math alttext="C_{2}" class="ltx_Math" display="inline" id="S3.I2.i5.p1.7.m7.1"><semantics id="S3.I2.i5.p1.7.m7.1a"><msub id="S3.I2.i5.p1.7.m7.1.1" xref="S3.I2.i5.p1.7.m7.1.1.cmml"><mi id="S3.I2.i5.p1.7.m7.1.1.2" xref="S3.I2.i5.p1.7.m7.1.1.2.cmml">C</mi><mn id="S3.I2.i5.p1.7.m7.1.1.3" xref="S3.I2.i5.p1.7.m7.1.1.3.cmml">2</mn></msub><annotation-xml encoding="MathML-Content" id="S3.I2.i5.p1.7.m7.1b"><apply id="S3.I2.i5.p1.7.m7.1.1.cmml" xref="S3.I2.i5.p1.7.m7.1.1"><csymbol cd="ambiguous" id="S3.I2.i5.p1.7.m7.1.1.1.cmml" xref="S3.I2.i5.p1.7.m7.1.1">subscript</csymbol><ci id="S3.I2.i5.p1.7.m7.1.1.2.cmml" xref="S3.I2.i5.p1.7.m7.1.1.2">𝐶</ci><cn id="S3.I2.i5.p1.7.m7.1.1.3.cmml" type="integer" xref="S3.I2.i5.p1.7.m7.1.1.3">2</cn></apply></annotation-xml><annotation encoding="application/x-tex" id="S3.I2.i5.p1.7.m7.1c">C_{2}</annotation><annotation encoding="application/x-llamapun" id="S3.I2.i5.p1.7.m7.1d">italic_C start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT</annotation></semantics></math> are constants. The code used for SSIM is imported from skimage.metrics <cite class="ltx_cite ltx_citemacro_cite">[<a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#bib.bib28" title="">28</a>]</cite>. The data range is set to be:</p> <table class="ltx_equation ltx_eqn_table" id="S3.E8"> <tbody><tr class="ltx_equation ltx_eqn_row ltx_align_baseline"> <td class="ltx_eqn_cell ltx_eqn_center_padleft"></td> <td class="ltx_eqn_cell ltx_align_center"><math alttext="\text{data range}=max(max(d^{pred},max(d^{gt}))" class="ltx_math_unparsed" display="block" id="S3.E8.m1.1"><semantics id="S3.E8.m1.1a"><mrow id="S3.E8.m1.1b"><mtext id="S3.E8.m1.1.1">data range</mtext><mo id="S3.E8.m1.1.2">=</mo><mi id="S3.E8.m1.1.3">m</mi><mi id="S3.E8.m1.1.4">a</mi><mi id="S3.E8.m1.1.5">x</mi><mrow id="S3.E8.m1.1.6"><mo id="S3.E8.m1.1.6.1" stretchy="false">(</mo><mi id="S3.E8.m1.1.6.2">m</mi><mi id="S3.E8.m1.1.6.3">a</mi><mi id="S3.E8.m1.1.6.4">x</mi><mrow id="S3.E8.m1.1.6.5"><mo id="S3.E8.m1.1.6.5.1" stretchy="false">(</mo><msup id="S3.E8.m1.1.6.5.2"><mi id="S3.E8.m1.1.6.5.2.2">d</mi><mrow id="S3.E8.m1.1.6.5.2.3"><mi id="S3.E8.m1.1.6.5.2.3.2">p</mi><mo id="S3.E8.m1.1.6.5.2.3.1">⁢</mo><mi id="S3.E8.m1.1.6.5.2.3.3">r</mi><mo id="S3.E8.m1.1.6.5.2.3.1a">⁢</mo><mi id="S3.E8.m1.1.6.5.2.3.4">e</mi><mo id="S3.E8.m1.1.6.5.2.3.1b">⁢</mo><mi id="S3.E8.m1.1.6.5.2.3.5">d</mi></mrow></msup><mo id="S3.E8.m1.1.6.5.3">,</mo><mi id="S3.E8.m1.1.6.5.4">m</mi><mi id="S3.E8.m1.1.6.5.5">a</mi><mi id="S3.E8.m1.1.6.5.6">x</mi><mrow id="S3.E8.m1.1.6.5.7"><mo id="S3.E8.m1.1.6.5.7.1" stretchy="false">(</mo><msup id="S3.E8.m1.1.6.5.7.2"><mi id="S3.E8.m1.1.6.5.7.2.2">d</mi><mrow id="S3.E8.m1.1.6.5.7.2.3"><mi id="S3.E8.m1.1.6.5.7.2.3.2">g</mi><mo id="S3.E8.m1.1.6.5.7.2.3.1">⁢</mo><mi id="S3.E8.m1.1.6.5.7.2.3.3">t</mi></mrow></msup><mo id="S3.E8.m1.1.6.5.7.3" stretchy="false">)</mo></mrow><mo id="S3.E8.m1.1.6.5.8" stretchy="false">)</mo></mrow></mrow></mrow><annotation encoding="application/x-tex" id="S3.E8.m1.1c">\text{data range}=max(max(d^{pred},max(d^{gt}))</annotation><annotation encoding="application/x-llamapun" id="S3.E8.m1.1d">data range = italic_m italic_a italic_x ( italic_m italic_a italic_x ( italic_d start_POSTSUPERSCRIPT italic_p italic_r italic_e italic_d end_POSTSUPERSCRIPT , italic_m italic_a italic_x ( italic_d start_POSTSUPERSCRIPT italic_g italic_t end_POSTSUPERSCRIPT ) )</annotation></semantics></math></td> <td class="ltx_eqn_cell ltx_eqn_center_padright"></td> <td class="ltx_eqn_cell ltx_eqn_eqno ltx_align_middle ltx_align_right" rowspan="1"><span class="ltx_tag ltx_tag_equation ltx_align_right">(8)</span></td> </tr></tbody> </table> </div> </li> <li class="ltx_item" id="S3.I2.i6" style="list-style-type:none;"> <span class="ltx_tag ltx_tag_item">•</span> <div class="ltx_para" id="S3.I2.i6.p1"> <p class="ltx_p" id="S3.I2.i6.p1.1">Log RMSE:</p> <table class="ltx_equation ltx_eqn_table" id="S3.E9"> <tbody><tr class="ltx_equation ltx_eqn_row ltx_align_baseline"> <td class="ltx_eqn_cell ltx_eqn_center_padleft"></td> <td class="ltx_eqn_cell ltx_align_center"><math alttext="\text{Log RMSE}=\sqrt{\frac{1}{N}\sum_{i=1}^{N}\left(\log(d_{i}^{\text{pred}})% -\log(d_{i}^{\text{gt}})\right)^{2}}" class="ltx_Math" display="block" id="S3.E9.m1.3"><semantics id="S3.E9.m1.3a"><mrow id="S3.E9.m1.3.4" xref="S3.E9.m1.3.4.cmml"><mtext id="S3.E9.m1.3.4.2" xref="S3.E9.m1.3.4.2a.cmml">Log RMSE</mtext><mo id="S3.E9.m1.3.4.1" xref="S3.E9.m1.3.4.1.cmml">=</mo><msqrt id="S3.E9.m1.3.3" xref="S3.E9.m1.3.3.cmml"><mrow id="S3.E9.m1.3.3.3" xref="S3.E9.m1.3.3.3.cmml"><mfrac id="S3.E9.m1.3.3.3.5" xref="S3.E9.m1.3.3.3.5.cmml"><mn id="S3.E9.m1.3.3.3.5.2" xref="S3.E9.m1.3.3.3.5.2.cmml">1</mn><mi id="S3.E9.m1.3.3.3.5.3" xref="S3.E9.m1.3.3.3.5.3.cmml">N</mi></mfrac><mo id="S3.E9.m1.3.3.3.4" xref="S3.E9.m1.3.3.3.4.cmml">⁢</mo><mrow id="S3.E9.m1.3.3.3.3" xref="S3.E9.m1.3.3.3.3.cmml"><munderover id="S3.E9.m1.3.3.3.3.2" xref="S3.E9.m1.3.3.3.3.2.cmml"><mo id="S3.E9.m1.3.3.3.3.2.2.2" movablelimits="false" rspace="0em" xref="S3.E9.m1.3.3.3.3.2.2.2.cmml">∑</mo><mrow id="S3.E9.m1.3.3.3.3.2.2.3" xref="S3.E9.m1.3.3.3.3.2.2.3.cmml"><mi id="S3.E9.m1.3.3.3.3.2.2.3.2" xref="S3.E9.m1.3.3.3.3.2.2.3.2.cmml">i</mi><mo id="S3.E9.m1.3.3.3.3.2.2.3.1" xref="S3.E9.m1.3.3.3.3.2.2.3.1.cmml">=</mo><mn id="S3.E9.m1.3.3.3.3.2.2.3.3" xref="S3.E9.m1.3.3.3.3.2.2.3.3.cmml">1</mn></mrow><mi id="S3.E9.m1.3.3.3.3.2.3" xref="S3.E9.m1.3.3.3.3.2.3.cmml">N</mi></munderover><msup id="S3.E9.m1.3.3.3.3.1" xref="S3.E9.m1.3.3.3.3.1.cmml"><mrow id="S3.E9.m1.3.3.3.3.1.1.1" xref="S3.E9.m1.3.3.3.3.1.1.1.1.cmml"><mo id="S3.E9.m1.3.3.3.3.1.1.1.2" xref="S3.E9.m1.3.3.3.3.1.1.1.1.cmml">(</mo><mrow id="S3.E9.m1.3.3.3.3.1.1.1.1" xref="S3.E9.m1.3.3.3.3.1.1.1.1.cmml"><mrow id="S3.E9.m1.3.3.3.3.1.1.1.1.1.1" xref="S3.E9.m1.3.3.3.3.1.1.1.1.1.2.cmml"><mi id="S3.E9.m1.1.1.1.1" xref="S3.E9.m1.1.1.1.1.cmml">log</mi><mo id="S3.E9.m1.3.3.3.3.1.1.1.1.1.1a" xref="S3.E9.m1.3.3.3.3.1.1.1.1.1.2.cmml">⁡</mo><mrow id="S3.E9.m1.3.3.3.3.1.1.1.1.1.1.1" xref="S3.E9.m1.3.3.3.3.1.1.1.1.1.2.cmml"><mo id="S3.E9.m1.3.3.3.3.1.1.1.1.1.1.1.2" stretchy="false" xref="S3.E9.m1.3.3.3.3.1.1.1.1.1.2.cmml">(</mo><msubsup id="S3.E9.m1.3.3.3.3.1.1.1.1.1.1.1.1" xref="S3.E9.m1.3.3.3.3.1.1.1.1.1.1.1.1.cmml"><mi id="S3.E9.m1.3.3.3.3.1.1.1.1.1.1.1.1.2.2" xref="S3.E9.m1.3.3.3.3.1.1.1.1.1.1.1.1.2.2.cmml">d</mi><mi id="S3.E9.m1.3.3.3.3.1.1.1.1.1.1.1.1.2.3" xref="S3.E9.m1.3.3.3.3.1.1.1.1.1.1.1.1.2.3.cmml">i</mi><mtext id="S3.E9.m1.3.3.3.3.1.1.1.1.1.1.1.1.3" xref="S3.E9.m1.3.3.3.3.1.1.1.1.1.1.1.1.3a.cmml">pred</mtext></msubsup><mo id="S3.E9.m1.3.3.3.3.1.1.1.1.1.1.1.3" stretchy="false" xref="S3.E9.m1.3.3.3.3.1.1.1.1.1.2.cmml">)</mo></mrow></mrow><mo id="S3.E9.m1.3.3.3.3.1.1.1.1.3" xref="S3.E9.m1.3.3.3.3.1.1.1.1.3.cmml">−</mo><mrow id="S3.E9.m1.3.3.3.3.1.1.1.1.2.1" xref="S3.E9.m1.3.3.3.3.1.1.1.1.2.2.cmml"><mi id="S3.E9.m1.2.2.2.2" xref="S3.E9.m1.2.2.2.2.cmml">log</mi><mo id="S3.E9.m1.3.3.3.3.1.1.1.1.2.1a" xref="S3.E9.m1.3.3.3.3.1.1.1.1.2.2.cmml">⁡</mo><mrow id="S3.E9.m1.3.3.3.3.1.1.1.1.2.1.1" xref="S3.E9.m1.3.3.3.3.1.1.1.1.2.2.cmml"><mo id="S3.E9.m1.3.3.3.3.1.1.1.1.2.1.1.2" stretchy="false" xref="S3.E9.m1.3.3.3.3.1.1.1.1.2.2.cmml">(</mo><msubsup id="S3.E9.m1.3.3.3.3.1.1.1.1.2.1.1.1" xref="S3.E9.m1.3.3.3.3.1.1.1.1.2.1.1.1.cmml"><mi id="S3.E9.m1.3.3.3.3.1.1.1.1.2.1.1.1.2.2" xref="S3.E9.m1.3.3.3.3.1.1.1.1.2.1.1.1.2.2.cmml">d</mi><mi id="S3.E9.m1.3.3.3.3.1.1.1.1.2.1.1.1.2.3" xref="S3.E9.m1.3.3.3.3.1.1.1.1.2.1.1.1.2.3.cmml">i</mi><mtext id="S3.E9.m1.3.3.3.3.1.1.1.1.2.1.1.1.3" xref="S3.E9.m1.3.3.3.3.1.1.1.1.2.1.1.1.3a.cmml">gt</mtext></msubsup><mo id="S3.E9.m1.3.3.3.3.1.1.1.1.2.1.1.3" stretchy="false" xref="S3.E9.m1.3.3.3.3.1.1.1.1.2.2.cmml">)</mo></mrow></mrow></mrow><mo id="S3.E9.m1.3.3.3.3.1.1.1.3" xref="S3.E9.m1.3.3.3.3.1.1.1.1.cmml">)</mo></mrow><mn id="S3.E9.m1.3.3.3.3.1.3" xref="S3.E9.m1.3.3.3.3.1.3.cmml">2</mn></msup></mrow></mrow></msqrt></mrow><annotation-xml encoding="MathML-Content" id="S3.E9.m1.3b"><apply id="S3.E9.m1.3.4.cmml" xref="S3.E9.m1.3.4"><eq id="S3.E9.m1.3.4.1.cmml" xref="S3.E9.m1.3.4.1"></eq><ci id="S3.E9.m1.3.4.2a.cmml" xref="S3.E9.m1.3.4.2"><mtext id="S3.E9.m1.3.4.2.cmml" xref="S3.E9.m1.3.4.2">Log RMSE</mtext></ci><apply id="S3.E9.m1.3.3.cmml" xref="S3.E9.m1.3.3"><root id="S3.E9.m1.3.3a.cmml" xref="S3.E9.m1.3.3"></root><apply id="S3.E9.m1.3.3.3.cmml" xref="S3.E9.m1.3.3.3"><times id="S3.E9.m1.3.3.3.4.cmml" xref="S3.E9.m1.3.3.3.4"></times><apply id="S3.E9.m1.3.3.3.5.cmml" xref="S3.E9.m1.3.3.3.5"><divide id="S3.E9.m1.3.3.3.5.1.cmml" xref="S3.E9.m1.3.3.3.5"></divide><cn id="S3.E9.m1.3.3.3.5.2.cmml" type="integer" xref="S3.E9.m1.3.3.3.5.2">1</cn><ci id="S3.E9.m1.3.3.3.5.3.cmml" xref="S3.E9.m1.3.3.3.5.3">𝑁</ci></apply><apply id="S3.E9.m1.3.3.3.3.cmml" xref="S3.E9.m1.3.3.3.3"><apply id="S3.E9.m1.3.3.3.3.2.cmml" xref="S3.E9.m1.3.3.3.3.2"><csymbol cd="ambiguous" id="S3.E9.m1.3.3.3.3.2.1.cmml" xref="S3.E9.m1.3.3.3.3.2">superscript</csymbol><apply id="S3.E9.m1.3.3.3.3.2.2.cmml" xref="S3.E9.m1.3.3.3.3.2"><csymbol cd="ambiguous" id="S3.E9.m1.3.3.3.3.2.2.1.cmml" xref="S3.E9.m1.3.3.3.3.2">subscript</csymbol><sum id="S3.E9.m1.3.3.3.3.2.2.2.cmml" xref="S3.E9.m1.3.3.3.3.2.2.2"></sum><apply id="S3.E9.m1.3.3.3.3.2.2.3.cmml" xref="S3.E9.m1.3.3.3.3.2.2.3"><eq id="S3.E9.m1.3.3.3.3.2.2.3.1.cmml" xref="S3.E9.m1.3.3.3.3.2.2.3.1"></eq><ci id="S3.E9.m1.3.3.3.3.2.2.3.2.cmml" xref="S3.E9.m1.3.3.3.3.2.2.3.2">𝑖</ci><cn id="S3.E9.m1.3.3.3.3.2.2.3.3.cmml" type="integer" xref="S3.E9.m1.3.3.3.3.2.2.3.3">1</cn></apply></apply><ci id="S3.E9.m1.3.3.3.3.2.3.cmml" xref="S3.E9.m1.3.3.3.3.2.3">𝑁</ci></apply><apply id="S3.E9.m1.3.3.3.3.1.cmml" xref="S3.E9.m1.3.3.3.3.1"><csymbol cd="ambiguous" id="S3.E9.m1.3.3.3.3.1.2.cmml" xref="S3.E9.m1.3.3.3.3.1">superscript</csymbol><apply id="S3.E9.m1.3.3.3.3.1.1.1.1.cmml" xref="S3.E9.m1.3.3.3.3.1.1.1"><minus id="S3.E9.m1.3.3.3.3.1.1.1.1.3.cmml" xref="S3.E9.m1.3.3.3.3.1.1.1.1.3"></minus><apply id="S3.E9.m1.3.3.3.3.1.1.1.1.1.2.cmml" xref="S3.E9.m1.3.3.3.3.1.1.1.1.1.1"><log id="S3.E9.m1.1.1.1.1.cmml" xref="S3.E9.m1.1.1.1.1"></log><apply id="S3.E9.m1.3.3.3.3.1.1.1.1.1.1.1.1.cmml" xref="S3.E9.m1.3.3.3.3.1.1.1.1.1.1.1.1"><csymbol cd="ambiguous" id="S3.E9.m1.3.3.3.3.1.1.1.1.1.1.1.1.1.cmml" xref="S3.E9.m1.3.3.3.3.1.1.1.1.1.1.1.1">superscript</csymbol><apply id="S3.E9.m1.3.3.3.3.1.1.1.1.1.1.1.1.2.cmml" xref="S3.E9.m1.3.3.3.3.1.1.1.1.1.1.1.1"><csymbol cd="ambiguous" id="S3.E9.m1.3.3.3.3.1.1.1.1.1.1.1.1.2.1.cmml" xref="S3.E9.m1.3.3.3.3.1.1.1.1.1.1.1.1">subscript</csymbol><ci id="S3.E9.m1.3.3.3.3.1.1.1.1.1.1.1.1.2.2.cmml" xref="S3.E9.m1.3.3.3.3.1.1.1.1.1.1.1.1.2.2">𝑑</ci><ci id="S3.E9.m1.3.3.3.3.1.1.1.1.1.1.1.1.2.3.cmml" xref="S3.E9.m1.3.3.3.3.1.1.1.1.1.1.1.1.2.3">𝑖</ci></apply><ci id="S3.E9.m1.3.3.3.3.1.1.1.1.1.1.1.1.3a.cmml" xref="S3.E9.m1.3.3.3.3.1.1.1.1.1.1.1.1.3"><mtext id="S3.E9.m1.3.3.3.3.1.1.1.1.1.1.1.1.3.cmml" mathsize="70%" xref="S3.E9.m1.3.3.3.3.1.1.1.1.1.1.1.1.3">pred</mtext></ci></apply></apply><apply id="S3.E9.m1.3.3.3.3.1.1.1.1.2.2.cmml" xref="S3.E9.m1.3.3.3.3.1.1.1.1.2.1"><log id="S3.E9.m1.2.2.2.2.cmml" xref="S3.E9.m1.2.2.2.2"></log><apply id="S3.E9.m1.3.3.3.3.1.1.1.1.2.1.1.1.cmml" xref="S3.E9.m1.3.3.3.3.1.1.1.1.2.1.1.1"><csymbol cd="ambiguous" id="S3.E9.m1.3.3.3.3.1.1.1.1.2.1.1.1.1.cmml" xref="S3.E9.m1.3.3.3.3.1.1.1.1.2.1.1.1">superscript</csymbol><apply id="S3.E9.m1.3.3.3.3.1.1.1.1.2.1.1.1.2.cmml" xref="S3.E9.m1.3.3.3.3.1.1.1.1.2.1.1.1"><csymbol cd="ambiguous" id="S3.E9.m1.3.3.3.3.1.1.1.1.2.1.1.1.2.1.cmml" xref="S3.E9.m1.3.3.3.3.1.1.1.1.2.1.1.1">subscript</csymbol><ci id="S3.E9.m1.3.3.3.3.1.1.1.1.2.1.1.1.2.2.cmml" xref="S3.E9.m1.3.3.3.3.1.1.1.1.2.1.1.1.2.2">𝑑</ci><ci id="S3.E9.m1.3.3.3.3.1.1.1.1.2.1.1.1.2.3.cmml" xref="S3.E9.m1.3.3.3.3.1.1.1.1.2.1.1.1.2.3">𝑖</ci></apply><ci id="S3.E9.m1.3.3.3.3.1.1.1.1.2.1.1.1.3a.cmml" xref="S3.E9.m1.3.3.3.3.1.1.1.1.2.1.1.1.3"><mtext id="S3.E9.m1.3.3.3.3.1.1.1.1.2.1.1.1.3.cmml" mathsize="70%" xref="S3.E9.m1.3.3.3.3.1.1.1.1.2.1.1.1.3">gt</mtext></ci></apply></apply></apply><cn id="S3.E9.m1.3.3.3.3.1.3.cmml" type="integer" xref="S3.E9.m1.3.3.3.3.1.3">2</cn></apply></apply></apply></apply></apply></annotation-xml><annotation encoding="application/x-tex" id="S3.E9.m1.3c">\text{Log RMSE}=\sqrt{\frac{1}{N}\sum_{i=1}^{N}\left(\log(d_{i}^{\text{pred}})% -\log(d_{i}^{\text{gt}})\right)^{2}}</annotation><annotation encoding="application/x-llamapun" id="S3.E9.m1.3d">Log RMSE = square-root start_ARG divide start_ARG 1 end_ARG start_ARG italic_N end_ARG ∑ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_N end_POSTSUPERSCRIPT ( roman_log ( italic_d start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT pred end_POSTSUPERSCRIPT ) - roman_log ( italic_d start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT gt end_POSTSUPERSCRIPT ) ) start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_ARG</annotation></semantics></math></td> <td class="ltx_eqn_cell ltx_eqn_center_padright"></td> <td class="ltx_eqn_cell ltx_eqn_eqno ltx_align_middle ltx_align_right" rowspan="1"><span class="ltx_tag ltx_tag_equation ltx_align_right">(9)</span></td> </tr></tbody> </table> </div> </li> </ul> </div> </section> <section class="ltx_paragraph" id="S3.SS0.SSS0.Px4"> <h4 class="ltx_title ltx_title_paragraph">Finding the best ICP Threshold</h4> <div class="ltx_para" id="S3.SS0.SSS0.Px4.p1"> <p class="ltx_p" id="S3.SS0.SSS0.Px4.p1.1">When performing ICP, a threshold <math alttext="T" class="ltx_Math" display="inline" id="S3.SS0.SSS0.Px4.p1.1.m1.1"><semantics id="S3.SS0.SSS0.Px4.p1.1.m1.1a"><mi id="S3.SS0.SSS0.Px4.p1.1.m1.1.1" xref="S3.SS0.SSS0.Px4.p1.1.m1.1.1.cmml">T</mi><annotation-xml encoding="MathML-Content" id="S3.SS0.SSS0.Px4.p1.1.m1.1b"><ci id="S3.SS0.SSS0.Px4.p1.1.m1.1.1.cmml" xref="S3.SS0.SSS0.Px4.p1.1.m1.1.1">𝑇</ci></annotation-xml><annotation encoding="application/x-tex" id="S3.SS0.SSS0.Px4.p1.1.m1.1c">T</annotation><annotation encoding="application/x-llamapun" id="S3.SS0.SSS0.Px4.p1.1.m1.1d">italic_T</annotation></semantics></math> is set to help identify the actual corresponding points against outliers, e.g., the points that are new features that don’t appear in the overlapping pov. If the threshold is too high, all the points will be used for alignment, leading to an alignment that is heavily affected by the outliers; on the other hand, if the threshold is not high enough, the alignment will not be thorough and is likely to converge at a local minimum. This experiment focuses on trying different schemes of T threshold choosing. Maximum iteration is set to be 40. The scheme of constant value, 90th percentile, factored mean of error, factored median of error, linear interpolation, 80% maximum distance, and mean plus two standard deviations were compared.</p> </div> </section> <section class="ltx_paragraph" id="S3.SS0.SSS0.Px5"> <h4 class="ltx_title ltx_title_paragraph">Qualitative test for 3D reconstruction</h4> <div class="ltx_para" id="S3.SS0.SSS0.Px5.p1"> <p class="ltx_p" id="S3.SS0.SSS0.Px5.p1.1">For both datasets: test22 and recitifed01, depth-anything:v2 was chosen to generate the depth estimation for 3D reconstruction. All frames were taken – no frame selection were used – and the output point cloud is kept at frame 1 and frame 30, to compare with the point cloud reconstructed using the same method but having ground truth depth images as input.</p> </div> </section> <section class="ltx_paragraph" id="S3.SS0.SSS0.Px6"> <h4 class="ltx_title ltx_title_paragraph">About the testing of the frame selection module</h4> <div class="ltx_para" id="S3.SS0.SSS0.Px6.p1"> <p class="ltx_p" id="S3.SS0.SSS0.Px6.p1.1">The frame selection module was not tested as part of the current pipeline evaluation. The datasets we are currently using are well-curated, with off-site frames already cropped out and no presence of liquid interference or low-quality frames. This level of preprocessing negates the immediate necessity of frame selection. However, this module will be rigorously tested in the future when our custom dataset, which includes more varied and challenging conditions, is put into use. A quantitative study of the precision of reconstruction will be performed in the future after the reconstruction methods are optimized, and the performance will be compared between different frame selection schemes.</p> </div> </section> <section class="ltx_paragraph" id="S3.SS0.SSS0.Px7"> <h4 class="ltx_title ltx_title_paragraph">Adjustments Made</h4> <div class="ltx_para" id="S3.SS0.SSS0.Px7.p1"> <p class="ltx_p" id="S3.SS0.SSS0.Px7.p1.1">Scaling factors were applied to align the predicted depth maps with the ground truth, for Depth-Anything V2, post-processing involved inverting the depth maps and adjusting the color schemes to ensure correct visualization and comparison.</p> </div> </section> </section> <section class="ltx_section" id="S4"> <h2 class="ltx_title ltx_title_section"> <span class="ltx_tag ltx_tag_section">4 </span>Results</h2> <section class="ltx_subsection" id="S4.SS1"> <h3 class="ltx_title ltx_title_subsection"> <span class="ltx_tag ltx_tag_subsection">4.1 </span>Depth Estimation Performance evaluation</h3> <section class="ltx_paragraph" id="S4.SS1.SSS0.Px1"> <h4 class="ltx_title ltx_title_paragraph">Quantitative Results</h4> <div class="ltx_para" id="S4.SS1.SSS0.Px1.p1"> <p class="ltx_p" id="S4.SS1.SSS0.Px1.p1.1">Experiments showed that Depth-Anything V2(DA:v2) provided better depth estimation results compared to EndoDAC(DAC) and Depth-Anything V1(DA:v1). Metrics such as RMSE and MAE were consistently lower for Depth-Anything V2 across different datasets (Tables <a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S4.T1" title="Table 1 ‣ Quantitative Results ‣ 4.1 Depth Estimation Performance evaluation ‣ 4 Results ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_tag">1</span></a>, <a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S4.T2" title="Table 2 ‣ Quantitative Results ‣ 4.1 Depth Estimation Performance evaluation ‣ 4 Results ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_tag">2</span></a>).</p> </div> <figure class="ltx_table" id="S4.T1"> <figcaption class="ltx_caption ltx_centering"><span class="ltx_tag ltx_tag_table">Table 1: </span>Performance Metrics for the three methods on Test22</figcaption> <table class="ltx_tabular ltx_centering ltx_guessed_headers ltx_align_middle" id="S4.T1.1"> <thead class="ltx_thead"> <tr class="ltx_tr" id="S4.T1.1.2.1"> <th class="ltx_td ltx_align_left ltx_th ltx_th_column ltx_th_row ltx_border_tt" id="S4.T1.1.2.1.1"><span class="ltx_text ltx_font_bold" id="S4.T1.1.2.1.1.1">Metric</span></th> <th class="ltx_td ltx_align_center ltx_th ltx_th_column ltx_border_tt" id="S4.T1.1.2.1.2"><span class="ltx_text ltx_font_bold" id="S4.T1.1.2.1.2.1">DAC</span></th> <th class="ltx_td ltx_align_center ltx_th ltx_th_column ltx_border_tt" id="S4.T1.1.2.1.3"><span class="ltx_text ltx_font_bold" id="S4.T1.1.2.1.3.1">DA:v1</span></th> <th class="ltx_td ltx_nopad_r ltx_align_center ltx_th ltx_th_column ltx_border_tt" id="S4.T1.1.2.1.4"><span class="ltx_text ltx_font_bold" id="S4.T1.1.2.1.4.1">DA:v2</span></th> </tr> </thead> <tbody class="ltx_tbody"> <tr class="ltx_tr" id="S4.T1.1.3.1"> <th class="ltx_td ltx_align_left ltx_th ltx_th_row ltx_border_t" id="S4.T1.1.3.1.1">Mean RMSE</th> <td class="ltx_td ltx_align_center ltx_border_t" id="S4.T1.1.3.1.2">57.1918</td> <td class="ltx_td ltx_align_center ltx_border_t" id="S4.T1.1.3.1.3">24.4134</td> <td class="ltx_td ltx_nopad_r ltx_align_center ltx_border_t" id="S4.T1.1.3.1.4">19.7962</td> </tr> <tr class="ltx_tr" id="S4.T1.1.4.2"> <th class="ltx_td ltx_align_left ltx_th ltx_th_row" id="S4.T1.1.4.2.1">Mean MAE</th> <td class="ltx_td ltx_align_center" id="S4.T1.1.4.2.2">42.8775</td> <td class="ltx_td ltx_align_center" id="S4.T1.1.4.2.3">19.1280</td> <td class="ltx_td ltx_nopad_r ltx_align_center" id="S4.T1.1.4.2.4">15.0984</td> </tr> <tr class="ltx_tr" id="S4.T1.1.5.3"> <th class="ltx_td ltx_align_left ltx_th ltx_th_row" id="S4.T1.1.5.3.1">Mean Sq Rel</th> <td class="ltx_td ltx_align_center" id="S4.T1.1.5.3.2">63.1228</td> <td class="ltx_td ltx_align_center" id="S4.T1.1.5.3.3">10.7617</td> <td class="ltx_td ltx_nopad_r ltx_align_center" id="S4.T1.1.5.3.4">8.0148</td> </tr> <tr class="ltx_tr" id="S4.T1.1.1"> <th class="ltx_td ltx_align_left ltx_th ltx_th_row" id="S4.T1.1.1.1">Mean <math alttext="\delta" class="ltx_Math" display="inline" id="S4.T1.1.1.1.m1.1"><semantics id="S4.T1.1.1.1.m1.1a"><mi id="S4.T1.1.1.1.m1.1.1" xref="S4.T1.1.1.1.m1.1.1.cmml">δ</mi><annotation-xml encoding="MathML-Content" id="S4.T1.1.1.1.m1.1b"><ci id="S4.T1.1.1.1.m1.1.1.cmml" xref="S4.T1.1.1.1.m1.1.1">𝛿</ci></annotation-xml><annotation encoding="application/x-tex" id="S4.T1.1.1.1.m1.1c">\delta</annotation><annotation encoding="application/x-llamapun" id="S4.T1.1.1.1.m1.1d">italic_δ</annotation></semantics></math> Accuracy</th> <td class="ltx_td ltx_align_center" id="S4.T1.1.1.2">0.3254</td> <td class="ltx_td ltx_align_center" id="S4.T1.1.1.3">0.5640</td> <td class="ltx_td ltx_nopad_r ltx_align_center" id="S4.T1.1.1.4">0.6619</td> </tr> <tr class="ltx_tr" id="S4.T1.1.6.4"> <th class="ltx_td ltx_align_left ltx_th ltx_th_row" id="S4.T1.1.6.4.1">Mean SSIM</th> <td class="ltx_td ltx_align_center" id="S4.T1.1.6.4.2">0.7211</td> <td class="ltx_td ltx_align_center" id="S4.T1.1.6.4.3">0.8531</td> <td class="ltx_td ltx_nopad_r ltx_align_center" id="S4.T1.1.6.4.4">0.8771</td> </tr> <tr class="ltx_tr" id="S4.T1.1.7.5"> <th class="ltx_td ltx_align_left ltx_th ltx_th_row ltx_border_bb" id="S4.T1.1.7.5.1">Mean Log RMSE</th> <td class="ltx_td ltx_align_center ltx_border_bb" id="S4.T1.1.7.5.2">0.7350</td> <td class="ltx_td ltx_align_center ltx_border_bb" id="S4.T1.1.7.5.3">0.5599</td> <td class="ltx_td ltx_nopad_r ltx_align_center ltx_border_bb" id="S4.T1.1.7.5.4">0.4734</td> </tr> </tbody> </table> </figure> <figure class="ltx_table" id="S4.T2"> <figcaption class="ltx_caption ltx_centering"><span class="ltx_tag ltx_tag_table">Table 2: </span>Performance Metrics for the three methods on Rectified01</figcaption> <table class="ltx_tabular ltx_centering ltx_guessed_headers ltx_align_middle" id="S4.T2.1"> <thead class="ltx_thead"> <tr class="ltx_tr" id="S4.T2.1.2.1"> <th class="ltx_td ltx_align_left ltx_th ltx_th_column ltx_th_row ltx_border_tt" id="S4.T2.1.2.1.1"><span class="ltx_text ltx_font_bold" id="S4.T2.1.2.1.1.1">Metric</span></th> <th class="ltx_td ltx_align_center ltx_th ltx_th_column ltx_border_tt" id="S4.T2.1.2.1.2"><span class="ltx_text ltx_font_bold" id="S4.T2.1.2.1.2.1">DAC</span></th> <th class="ltx_td ltx_align_center ltx_th ltx_th_column ltx_border_tt" id="S4.T2.1.2.1.3"><span class="ltx_text ltx_font_bold" id="S4.T2.1.2.1.3.1">DA:v1</span></th> <th class="ltx_td ltx_nopad_r ltx_align_center ltx_th ltx_th_column ltx_border_tt" id="S4.T2.1.2.1.4"><span class="ltx_text ltx_font_bold" id="S4.T2.1.2.1.4.1">DA:v2</span></th> </tr> </thead> <tbody class="ltx_tbody"> <tr class="ltx_tr" id="S4.T2.1.3.1"> <th class="ltx_td ltx_align_left ltx_th ltx_th_row ltx_border_t" id="S4.T2.1.3.1.1">Mean RMSE</th> <td class="ltx_td ltx_align_center ltx_border_t" id="S4.T2.1.3.1.2">51.8964</td> <td class="ltx_td ltx_align_center ltx_border_t" id="S4.T2.1.3.1.3">26.5211</td> <td class="ltx_td ltx_nopad_r ltx_align_center ltx_border_t" id="S4.T2.1.3.1.4">22.1255</td> </tr> <tr class="ltx_tr" id="S4.T2.1.4.2"> <th class="ltx_td ltx_align_left ltx_th ltx_th_row" id="S4.T2.1.4.2.1">Mean MAE</th> <td class="ltx_td ltx_align_center" id="S4.T2.1.4.2.2">35.5692</td> <td class="ltx_td ltx_align_center" id="S4.T2.1.4.2.3">15.3696</td> <td class="ltx_td ltx_nopad_r ltx_align_center" id="S4.T2.1.4.2.4">11.6590</td> </tr> <tr class="ltx_tr" id="S4.T2.1.5.3"> <th class="ltx_td ltx_align_left ltx_th ltx_th_row" id="S4.T2.1.5.3.1">Mean Sq Rel</th> <td class="ltx_td ltx_align_center" id="S4.T2.1.5.3.2">33.0954</td> <td class="ltx_td ltx_align_center" id="S4.T2.1.5.3.3">6.4422</td> <td class="ltx_td ltx_nopad_r ltx_align_center" id="S4.T2.1.5.3.4">3.8836</td> </tr> <tr class="ltx_tr" id="S4.T2.1.1"> <th class="ltx_td ltx_align_left ltx_th ltx_th_row" id="S4.T2.1.1.1">Mean <math alttext="\delta" class="ltx_Math" display="inline" id="S4.T2.1.1.1.m1.1"><semantics id="S4.T2.1.1.1.m1.1a"><mi id="S4.T2.1.1.1.m1.1.1" xref="S4.T2.1.1.1.m1.1.1.cmml">δ</mi><annotation-xml encoding="MathML-Content" id="S4.T2.1.1.1.m1.1b"><ci id="S4.T2.1.1.1.m1.1.1.cmml" xref="S4.T2.1.1.1.m1.1.1">𝛿</ci></annotation-xml><annotation encoding="application/x-tex" id="S4.T2.1.1.1.m1.1c">\delta</annotation><annotation encoding="application/x-llamapun" id="S4.T2.1.1.1.m1.1d">italic_δ</annotation></semantics></math> Accuracy</th> <td class="ltx_td ltx_align_center" id="S4.T2.1.1.2">0.3821</td> <td class="ltx_td ltx_align_center" id="S4.T2.1.1.3">0.6839</td> <td class="ltx_td ltx_nopad_r ltx_align_center" id="S4.T2.1.1.4">0.7815</td> </tr> <tr class="ltx_tr" id="S4.T2.1.6.4"> <th class="ltx_td ltx_align_left ltx_th ltx_th_row" id="S4.T2.1.6.4.1">Mean SSIM</th> <td class="ltx_td ltx_align_center" id="S4.T2.1.6.4.2">0.5848</td> <td class="ltx_td ltx_align_center" id="S4.T2.1.6.4.3">0.6489</td> <td class="ltx_td ltx_nopad_r ltx_align_center" id="S4.T2.1.6.4.4">0.6611</td> </tr> <tr class="ltx_tr" id="S4.T2.1.7.5"> <th class="ltx_td ltx_align_left ltx_th ltx_th_row ltx_border_bb" id="S4.T2.1.7.5.1">Mean Log RMSE</th> <td class="ltx_td ltx_align_center ltx_border_bb" id="S4.T2.1.7.5.2">0.6520</td> <td class="ltx_td ltx_align_center ltx_border_bb" id="S4.T2.1.7.5.3">0.3826</td> <td class="ltx_td ltx_nopad_r ltx_align_center ltx_border_bb" id="S4.T2.1.7.5.4">0.2978</td> </tr> </tbody> </table> </figure> </section> <section class="ltx_paragraph" id="S4.SS1.SSS0.Px2"> <h4 class="ltx_title ltx_title_paragraph">Anomalies and Observations</h4> <div class="ltx_para" id="S4.SS1.SSS0.Px2.p1"> <p class="ltx_p" id="S4.SS1.SSS0.Px2.p1.1">In some cases, error spikes were observed at certain frames, likely due to erroneous depth maps(shown below in Figure. <a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S4.F4" title="Figure 4 ‣ Anomalies and Observations ‣ 4.1 Depth Estimation Performance evaluation ‣ 4 Results ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_tag">4</span></a>) or inconsistencies in the dataset. These anomalies highlighted the need for improved data handling and possibly more robust depth estimation methods.</p> </div> <figure class="ltx_figure" id="S4.F4"><img alt="Refer to caption" class="ltx_graphics ltx_centering ltx_img_square" height="411" id="S4.F4.g1" src="extracted/6104631/figures/error-compare.png" width="419"/> <figcaption class="ltx_caption ltx_centering"><span class="ltx_tag ltx_tag_figure">Figure 4: </span>Visualization comparing Depth-Anything V2 and EndoDAC results on a sample frame, turns out to be having an erroneous ground truth.[The 25th frame of rectified from Hamlyn.]</figcaption> </figure> </section> </section> <section class="ltx_subsection" id="S4.SS2"> <h3 class="ltx_title ltx_title_subsection"> <span class="ltx_tag ltx_tag_subsection">4.2 </span>Searching of the best thresholding scheme</h3> <div class="ltx_para" id="S4.SS2.p1"> <p class="ltx_p" id="S4.SS2.p1.1">The seven thresholding schemes are tested on a pair of frames from test22 dataset, using the ground truth depth images, neighbor-ICP method. Different</p> </div> <section class="ltx_paragraph" id="S4.SS2.SSS0.Px1"> <h4 class="ltx_title ltx_title_paragraph">Constant Value</h4> <div class="ltx_para" id="S4.SS2.SSS0.Px1.p1"> <p class="ltx_p" id="S4.SS2.SSS0.Px1.p1.1">Using a constant value as the threshold.</p> <table class="ltx_equation ltx_eqn_table" id="S4.Ex12"> <tbody><tr class="ltx_equation ltx_eqn_row ltx_align_baseline"> <td class="ltx_eqn_cell ltx_eqn_center_padleft"></td> <td class="ltx_eqn_cell ltx_align_center"><math alttext="T=10" class="ltx_Math" display="block" id="S4.Ex12.m1.1"><semantics id="S4.Ex12.m1.1a"><mrow id="S4.Ex12.m1.1.1" xref="S4.Ex12.m1.1.1.cmml"><mi id="S4.Ex12.m1.1.1.2" xref="S4.Ex12.m1.1.1.2.cmml">T</mi><mo id="S4.Ex12.m1.1.1.1" xref="S4.Ex12.m1.1.1.1.cmml">=</mo><mn id="S4.Ex12.m1.1.1.3" xref="S4.Ex12.m1.1.1.3.cmml">10</mn></mrow><annotation-xml encoding="MathML-Content" id="S4.Ex12.m1.1b"><apply id="S4.Ex12.m1.1.1.cmml" xref="S4.Ex12.m1.1.1"><eq id="S4.Ex12.m1.1.1.1.cmml" xref="S4.Ex12.m1.1.1.1"></eq><ci id="S4.Ex12.m1.1.1.2.cmml" xref="S4.Ex12.m1.1.1.2">𝑇</ci><cn id="S4.Ex12.m1.1.1.3.cmml" type="integer" xref="S4.Ex12.m1.1.1.3">10</cn></apply></annotation-xml><annotation encoding="application/x-tex" id="S4.Ex12.m1.1c">T=10</annotation><annotation encoding="application/x-llamapun" id="S4.Ex12.m1.1d">italic_T = 10</annotation></semantics></math></td> <td class="ltx_eqn_cell ltx_eqn_center_padright"></td> </tr></tbody> </table> </div> <figure class="ltx_figure" id="S4.F5"><img alt="Refer to caption" class="ltx_graphics ltx_centering ltx_img_square" height="299" id="S4.F5.g1" src="extracted/6104631/11-20/mean_error_over_iterations-10.png" width="359"/> <figcaption class="ltx_caption ltx_centering"><span class="ltx_tag ltx_tag_figure">Figure 5: </span>Four plots for constant value method</figcaption> </figure> </section> <section class="ltx_paragraph" id="S4.SS2.SSS0.Px2"> <h4 class="ltx_title ltx_title_paragraph">90 percentile</h4> <div class="ltx_para" id="S4.SS2.SSS0.Px2.p1"> <p class="ltx_p" id="S4.SS2.SSS0.Px2.p1.1">Using the value of 90 percentile of point distance.</p> <table class="ltx_equation ltx_eqn_table" id="S4.Ex13"> <tbody><tr class="ltx_equation ltx_eqn_row ltx_align_baseline"> <td class="ltx_eqn_cell ltx_eqn_center_padleft"></td> <td class="ltx_eqn_cell ltx_align_center"><math alttext="T=P_{90}(d)" class="ltx_Math" display="block" id="S4.Ex13.m1.1"><semantics id="S4.Ex13.m1.1a"><mrow id="S4.Ex13.m1.1.2" xref="S4.Ex13.m1.1.2.cmml"><mi id="S4.Ex13.m1.1.2.2" xref="S4.Ex13.m1.1.2.2.cmml">T</mi><mo id="S4.Ex13.m1.1.2.1" xref="S4.Ex13.m1.1.2.1.cmml">=</mo><mrow id="S4.Ex13.m1.1.2.3" xref="S4.Ex13.m1.1.2.3.cmml"><msub id="S4.Ex13.m1.1.2.3.2" xref="S4.Ex13.m1.1.2.3.2.cmml"><mi id="S4.Ex13.m1.1.2.3.2.2" xref="S4.Ex13.m1.1.2.3.2.2.cmml">P</mi><mn id="S4.Ex13.m1.1.2.3.2.3" xref="S4.Ex13.m1.1.2.3.2.3.cmml">90</mn></msub><mo id="S4.Ex13.m1.1.2.3.1" xref="S4.Ex13.m1.1.2.3.1.cmml">⁢</mo><mrow id="S4.Ex13.m1.1.2.3.3.2" xref="S4.Ex13.m1.1.2.3.cmml"><mo id="S4.Ex13.m1.1.2.3.3.2.1" stretchy="false" xref="S4.Ex13.m1.1.2.3.cmml">(</mo><mi id="S4.Ex13.m1.1.1" xref="S4.Ex13.m1.1.1.cmml">d</mi><mo id="S4.Ex13.m1.1.2.3.3.2.2" stretchy="false" xref="S4.Ex13.m1.1.2.3.cmml">)</mo></mrow></mrow></mrow><annotation-xml encoding="MathML-Content" id="S4.Ex13.m1.1b"><apply id="S4.Ex13.m1.1.2.cmml" xref="S4.Ex13.m1.1.2"><eq id="S4.Ex13.m1.1.2.1.cmml" xref="S4.Ex13.m1.1.2.1"></eq><ci id="S4.Ex13.m1.1.2.2.cmml" xref="S4.Ex13.m1.1.2.2">𝑇</ci><apply id="S4.Ex13.m1.1.2.3.cmml" xref="S4.Ex13.m1.1.2.3"><times id="S4.Ex13.m1.1.2.3.1.cmml" xref="S4.Ex13.m1.1.2.3.1"></times><apply id="S4.Ex13.m1.1.2.3.2.cmml" xref="S4.Ex13.m1.1.2.3.2"><csymbol cd="ambiguous" id="S4.Ex13.m1.1.2.3.2.1.cmml" xref="S4.Ex13.m1.1.2.3.2">subscript</csymbol><ci id="S4.Ex13.m1.1.2.3.2.2.cmml" xref="S4.Ex13.m1.1.2.3.2.2">𝑃</ci><cn id="S4.Ex13.m1.1.2.3.2.3.cmml" type="integer" xref="S4.Ex13.m1.1.2.3.2.3">90</cn></apply><ci id="S4.Ex13.m1.1.1.cmml" xref="S4.Ex13.m1.1.1">𝑑</ci></apply></apply></annotation-xml><annotation encoding="application/x-tex" id="S4.Ex13.m1.1c">T=P_{90}(d)</annotation><annotation encoding="application/x-llamapun" id="S4.Ex13.m1.1d">italic_T = italic_P start_POSTSUBSCRIPT 90 end_POSTSUBSCRIPT ( italic_d )</annotation></semantics></math></td> <td class="ltx_eqn_cell ltx_eqn_center_padright"></td> </tr></tbody> </table> </div> <div class="ltx_para" id="S4.SS2.SSS0.Px2.p2"> <p class="ltx_p" id="S4.SS2.SSS0.Px2.p2.1"><span class="ltx_text" id="S4.SS2.SSS0.Px2.p2.1.2">where </span> <span class="ltx_text" id="S4.SS2.SSS0.Px2.p2.1.1"><math alttext="P_{90}" class="ltx_Math" display="inline" id="S4.SS2.SSS0.Px2.p2.1.1.m1.1"><semantics id="S4.SS2.SSS0.Px2.p2.1.1.m1.1a"><msub id="S4.SS2.SSS0.Px2.p2.1.1.m1.1.1" xref="S4.SS2.SSS0.Px2.p2.1.1.m1.1.1.cmml"><mi id="S4.SS2.SSS0.Px2.p2.1.1.m1.1.1.2" xref="S4.SS2.SSS0.Px2.p2.1.1.m1.1.1.2.cmml">P</mi><mn id="S4.SS2.SSS0.Px2.p2.1.1.m1.1.1.3" xref="S4.SS2.SSS0.Px2.p2.1.1.m1.1.1.3.cmml">90</mn></msub><annotation-xml encoding="MathML-Content" id="S4.SS2.SSS0.Px2.p2.1.1.m1.1b"><apply id="S4.SS2.SSS0.Px2.p2.1.1.m1.1.1.cmml" xref="S4.SS2.SSS0.Px2.p2.1.1.m1.1.1"><csymbol cd="ambiguous" id="S4.SS2.SSS0.Px2.p2.1.1.m1.1.1.1.cmml" xref="S4.SS2.SSS0.Px2.p2.1.1.m1.1.1">subscript</csymbol><ci id="S4.SS2.SSS0.Px2.p2.1.1.m1.1.1.2.cmml" xref="S4.SS2.SSS0.Px2.p2.1.1.m1.1.1.2">𝑃</ci><cn id="S4.SS2.SSS0.Px2.p2.1.1.m1.1.1.3.cmml" type="integer" xref="S4.SS2.SSS0.Px2.p2.1.1.m1.1.1.3">90</cn></apply></annotation-xml><annotation encoding="application/x-tex" id="S4.SS2.SSS0.Px2.p2.1.1.m1.1c">P_{90}</annotation><annotation encoding="application/x-llamapun" id="S4.SS2.SSS0.Px2.p2.1.1.m1.1d">italic_P start_POSTSUBSCRIPT 90 end_POSTSUBSCRIPT</annotation></semantics></math></span>(d) <span class="ltx_text" id="S4.SS2.SSS0.Px2.p2.1.3"> is the 90th percentile of the distances.</span></p> </div> <figure class="ltx_figure" id="S4.F6"><img alt="Refer to caption" class="ltx_graphics ltx_centering ltx_img_square" height="299" id="S4.F6.g1" src="extracted/6104631/11-20/mean_error_over_iterations-90p.png" width="359"/> <figcaption class="ltx_caption ltx_centering"><span class="ltx_tag ltx_tag_figure">Figure 6: </span>Four plots for 90 percentile method</figcaption> </figure> </section> <section class="ltx_paragraph" id="S4.SS2.SSS0.Px3"> <h4 class="ltx_title ltx_title_paragraph">Mean of error with a factor</h4> <div class="ltx_para" id="S4.SS2.SSS0.Px3.p1"> <p class="ltx_p" id="S4.SS2.SSS0.Px3.p1.1">Using the value of a factor multiplied by the mean of distances.</p> <table class="ltx_equation ltx_eqn_table" id="S4.Ex14"> <tbody><tr class="ltx_equation ltx_eqn_row ltx_align_baseline"> <td class="ltx_eqn_cell ltx_eqn_center_padleft"></td> <td class="ltx_eqn_cell ltx_align_center"><math alttext="T=1.5\times\bar{d}" class="ltx_Math" display="block" id="S4.Ex14.m1.1"><semantics id="S4.Ex14.m1.1a"><mrow id="S4.Ex14.m1.1.1" xref="S4.Ex14.m1.1.1.cmml"><mi id="S4.Ex14.m1.1.1.2" xref="S4.Ex14.m1.1.1.2.cmml">T</mi><mo id="S4.Ex14.m1.1.1.1" xref="S4.Ex14.m1.1.1.1.cmml">=</mo><mrow id="S4.Ex14.m1.1.1.3" xref="S4.Ex14.m1.1.1.3.cmml"><mn id="S4.Ex14.m1.1.1.3.2" xref="S4.Ex14.m1.1.1.3.2.cmml">1.5</mn><mo id="S4.Ex14.m1.1.1.3.1" lspace="0.222em" rspace="0.222em" xref="S4.Ex14.m1.1.1.3.1.cmml">×</mo><mover accent="true" id="S4.Ex14.m1.1.1.3.3" xref="S4.Ex14.m1.1.1.3.3.cmml"><mi id="S4.Ex14.m1.1.1.3.3.2" xref="S4.Ex14.m1.1.1.3.3.2.cmml">d</mi><mo id="S4.Ex14.m1.1.1.3.3.1" xref="S4.Ex14.m1.1.1.3.3.1.cmml">¯</mo></mover></mrow></mrow><annotation-xml encoding="MathML-Content" id="S4.Ex14.m1.1b"><apply id="S4.Ex14.m1.1.1.cmml" xref="S4.Ex14.m1.1.1"><eq id="S4.Ex14.m1.1.1.1.cmml" xref="S4.Ex14.m1.1.1.1"></eq><ci id="S4.Ex14.m1.1.1.2.cmml" xref="S4.Ex14.m1.1.1.2">𝑇</ci><apply id="S4.Ex14.m1.1.1.3.cmml" xref="S4.Ex14.m1.1.1.3"><times id="S4.Ex14.m1.1.1.3.1.cmml" xref="S4.Ex14.m1.1.1.3.1"></times><cn id="S4.Ex14.m1.1.1.3.2.cmml" type="float" xref="S4.Ex14.m1.1.1.3.2">1.5</cn><apply id="S4.Ex14.m1.1.1.3.3.cmml" xref="S4.Ex14.m1.1.1.3.3"><ci id="S4.Ex14.m1.1.1.3.3.1.cmml" xref="S4.Ex14.m1.1.1.3.3.1">¯</ci><ci id="S4.Ex14.m1.1.1.3.3.2.cmml" xref="S4.Ex14.m1.1.1.3.3.2">𝑑</ci></apply></apply></apply></annotation-xml><annotation encoding="application/x-tex" id="S4.Ex14.m1.1c">T=1.5\times\bar{d}</annotation><annotation encoding="application/x-llamapun" id="S4.Ex14.m1.1d">italic_T = 1.5 × over¯ start_ARG italic_d end_ARG</annotation></semantics></math></td> <td class="ltx_eqn_cell ltx_eqn_center_padright"></td> </tr></tbody> </table> </div> <figure class="ltx_figure" id="S4.F7"><img alt="Refer to caption" class="ltx_graphics ltx_centering ltx_img_square" height="299" id="S4.F7.g1" src="extracted/6104631/11-20/mean_error_over_iterations-90p.png" width="359"/> <figcaption class="ltx_caption ltx_centering"><span class="ltx_tag ltx_tag_figure">Figure 7: </span>Four plots for mean method</figcaption> </figure> </section> <section class="ltx_paragraph" id="S4.SS2.SSS0.Px4"> <h4 class="ltx_title ltx_title_paragraph">1.5 Times Median</h4> <div class="ltx_para" id="S4.SS2.SSS0.Px4.p1"> <p class="ltx_p" id="S4.SS2.SSS0.Px4.p1.1">Using the value of a factor multiplied by the median of distances.</p> <table class="ltx_equation ltx_eqn_table" id="S4.Ex15"> <tbody><tr class="ltx_equation ltx_eqn_row ltx_align_baseline"> <td class="ltx_eqn_cell ltx_eqn_center_padleft"></td> <td class="ltx_eqn_cell ltx_align_center"><math alttext="T=1.5\times\text{median}(d)" class="ltx_Math" display="block" id="S4.Ex15.m1.1"><semantics id="S4.Ex15.m1.1a"><mrow id="S4.Ex15.m1.1.2" xref="S4.Ex15.m1.1.2.cmml"><mi id="S4.Ex15.m1.1.2.2" xref="S4.Ex15.m1.1.2.2.cmml">T</mi><mo id="S4.Ex15.m1.1.2.1" xref="S4.Ex15.m1.1.2.1.cmml">=</mo><mrow id="S4.Ex15.m1.1.2.3" xref="S4.Ex15.m1.1.2.3.cmml"><mrow id="S4.Ex15.m1.1.2.3.2" xref="S4.Ex15.m1.1.2.3.2.cmml"><mn id="S4.Ex15.m1.1.2.3.2.2" xref="S4.Ex15.m1.1.2.3.2.2.cmml">1.5</mn><mo id="S4.Ex15.m1.1.2.3.2.1" lspace="0.222em" rspace="0.222em" xref="S4.Ex15.m1.1.2.3.2.1.cmml">×</mo><mtext id="S4.Ex15.m1.1.2.3.2.3" xref="S4.Ex15.m1.1.2.3.2.3a.cmml">median</mtext></mrow><mo id="S4.Ex15.m1.1.2.3.1" xref="S4.Ex15.m1.1.2.3.1.cmml">⁢</mo><mrow id="S4.Ex15.m1.1.2.3.3.2" xref="S4.Ex15.m1.1.2.3.cmml"><mo id="S4.Ex15.m1.1.2.3.3.2.1" stretchy="false" xref="S4.Ex15.m1.1.2.3.cmml">(</mo><mi id="S4.Ex15.m1.1.1" xref="S4.Ex15.m1.1.1.cmml">d</mi><mo id="S4.Ex15.m1.1.2.3.3.2.2" stretchy="false" xref="S4.Ex15.m1.1.2.3.cmml">)</mo></mrow></mrow></mrow><annotation-xml encoding="MathML-Content" id="S4.Ex15.m1.1b"><apply id="S4.Ex15.m1.1.2.cmml" xref="S4.Ex15.m1.1.2"><eq id="S4.Ex15.m1.1.2.1.cmml" xref="S4.Ex15.m1.1.2.1"></eq><ci id="S4.Ex15.m1.1.2.2.cmml" xref="S4.Ex15.m1.1.2.2">𝑇</ci><apply id="S4.Ex15.m1.1.2.3.cmml" xref="S4.Ex15.m1.1.2.3"><times id="S4.Ex15.m1.1.2.3.1.cmml" xref="S4.Ex15.m1.1.2.3.1"></times><apply id="S4.Ex15.m1.1.2.3.2.cmml" xref="S4.Ex15.m1.1.2.3.2"><times id="S4.Ex15.m1.1.2.3.2.1.cmml" xref="S4.Ex15.m1.1.2.3.2.1"></times><cn id="S4.Ex15.m1.1.2.3.2.2.cmml" type="float" xref="S4.Ex15.m1.1.2.3.2.2">1.5</cn><ci id="S4.Ex15.m1.1.2.3.2.3a.cmml" xref="S4.Ex15.m1.1.2.3.2.3"><mtext id="S4.Ex15.m1.1.2.3.2.3.cmml" xref="S4.Ex15.m1.1.2.3.2.3">median</mtext></ci></apply><ci id="S4.Ex15.m1.1.1.cmml" xref="S4.Ex15.m1.1.1">𝑑</ci></apply></apply></annotation-xml><annotation encoding="application/x-tex" id="S4.Ex15.m1.1c">T=1.5\times\text{median}(d)</annotation><annotation encoding="application/x-llamapun" id="S4.Ex15.m1.1d">italic_T = 1.5 × median ( italic_d )</annotation></semantics></math></td> <td class="ltx_eqn_cell ltx_eqn_center_padright"></td> </tr></tbody> </table> </div> <figure class="ltx_figure" id="S4.F8"><img alt="Refer to caption" class="ltx_graphics ltx_centering ltx_img_square" height="299" id="S4.F8.g1" src="extracted/6104631/11-20/mean_error_over_iterations-15median.png" width="359"/> <figcaption class="ltx_caption ltx_centering"><span class="ltx_tag ltx_tag_figure">Figure 8: </span>Four plots for 1.5 times median method</figcaption> </figure> </section> <section class="ltx_paragraph" id="S4.SS2.SSS0.Px5"> <h4 class="ltx_title ltx_title_paragraph">Linear Interpolation</h4> <div class="ltx_para" id="S4.SS2.SSS0.Px5.p1"> <p class="ltx_p" id="S4.SS2.SSS0.Px5.p1.2">Using linear interpolation between minimum and maximum distances as the threshold. <math alttext="T_{initial}=10" class="ltx_Math" display="inline" id="S4.SS2.SSS0.Px5.p1.1.m1.1"><semantics id="S4.SS2.SSS0.Px5.p1.1.m1.1a"><mrow id="S4.SS2.SSS0.Px5.p1.1.m1.1.1" xref="S4.SS2.SSS0.Px5.p1.1.m1.1.1.cmml"><msub id="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2" xref="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.cmml"><mi id="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.2" xref="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.2.cmml">T</mi><mrow id="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3" xref="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.cmml"><mi id="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.2" xref="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.2.cmml">i</mi><mo id="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.1" xref="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.1.cmml">⁢</mo><mi id="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.3" xref="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.3.cmml">n</mi><mo id="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.1a" xref="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.1.cmml">⁢</mo><mi id="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.4" xref="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.4.cmml">i</mi><mo id="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.1b" xref="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.1.cmml">⁢</mo><mi id="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.5" xref="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.5.cmml">t</mi><mo id="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.1c" xref="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.1.cmml">⁢</mo><mi id="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.6" xref="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.6.cmml">i</mi><mo id="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.1d" xref="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.1.cmml">⁢</mo><mi id="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.7" xref="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.7.cmml">a</mi><mo id="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.1e" xref="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.1.cmml">⁢</mo><mi id="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.8" xref="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.8.cmml">l</mi></mrow></msub><mo id="S4.SS2.SSS0.Px5.p1.1.m1.1.1.1" xref="S4.SS2.SSS0.Px5.p1.1.m1.1.1.1.cmml">=</mo><mn id="S4.SS2.SSS0.Px5.p1.1.m1.1.1.3" xref="S4.SS2.SSS0.Px5.p1.1.m1.1.1.3.cmml">10</mn></mrow><annotation-xml encoding="MathML-Content" id="S4.SS2.SSS0.Px5.p1.1.m1.1b"><apply id="S4.SS2.SSS0.Px5.p1.1.m1.1.1.cmml" xref="S4.SS2.SSS0.Px5.p1.1.m1.1.1"><eq id="S4.SS2.SSS0.Px5.p1.1.m1.1.1.1.cmml" xref="S4.SS2.SSS0.Px5.p1.1.m1.1.1.1"></eq><apply id="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.cmml" xref="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2"><csymbol cd="ambiguous" id="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.1.cmml" xref="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2">subscript</csymbol><ci id="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.2.cmml" xref="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.2">𝑇</ci><apply id="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.cmml" xref="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3"><times id="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.1.cmml" xref="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.1"></times><ci id="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.2.cmml" xref="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.2">𝑖</ci><ci id="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.3.cmml" xref="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.3">𝑛</ci><ci id="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.4.cmml" xref="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.4">𝑖</ci><ci id="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.5.cmml" xref="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.5">𝑡</ci><ci id="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.6.cmml" xref="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.6">𝑖</ci><ci id="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.7.cmml" xref="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.7">𝑎</ci><ci id="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.8.cmml" xref="S4.SS2.SSS0.Px5.p1.1.m1.1.1.2.3.8">𝑙</ci></apply></apply><cn id="S4.SS2.SSS0.Px5.p1.1.m1.1.1.3.cmml" type="integer" xref="S4.SS2.SSS0.Px5.p1.1.m1.1.1.3">10</cn></apply></annotation-xml><annotation encoding="application/x-tex" id="S4.SS2.SSS0.Px5.p1.1.m1.1c">T_{initial}=10</annotation><annotation encoding="application/x-llamapun" id="S4.SS2.SSS0.Px5.p1.1.m1.1d">italic_T start_POSTSUBSCRIPT italic_i italic_n italic_i italic_t italic_i italic_a italic_l end_POSTSUBSCRIPT = 10</annotation></semantics></math><math alttext="T_{final}=0.1" class="ltx_Math" display="inline" id="S4.SS2.SSS0.Px5.p1.2.m2.1"><semantics id="S4.SS2.SSS0.Px5.p1.2.m2.1a"><mrow id="S4.SS2.SSS0.Px5.p1.2.m2.1.1" xref="S4.SS2.SSS0.Px5.p1.2.m2.1.1.cmml"><msub id="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2" xref="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2.cmml"><mi id="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2.2" xref="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2.2.cmml">T</mi><mrow id="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2.3" xref="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2.3.cmml"><mi id="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2.3.2" xref="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2.3.2.cmml">f</mi><mo id="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2.3.1" xref="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2.3.1.cmml">⁢</mo><mi id="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2.3.3" xref="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2.3.3.cmml">i</mi><mo id="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2.3.1a" xref="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2.3.1.cmml">⁢</mo><mi id="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2.3.4" xref="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2.3.4.cmml">n</mi><mo id="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2.3.1b" xref="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2.3.1.cmml">⁢</mo><mi id="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2.3.5" xref="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2.3.5.cmml">a</mi><mo id="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2.3.1c" xref="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2.3.1.cmml">⁢</mo><mi id="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2.3.6" xref="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2.3.6.cmml">l</mi></mrow></msub><mo id="S4.SS2.SSS0.Px5.p1.2.m2.1.1.1" xref="S4.SS2.SSS0.Px5.p1.2.m2.1.1.1.cmml">=</mo><mn id="S4.SS2.SSS0.Px5.p1.2.m2.1.1.3" xref="S4.SS2.SSS0.Px5.p1.2.m2.1.1.3.cmml">0.1</mn></mrow><annotation-xml encoding="MathML-Content" id="S4.SS2.SSS0.Px5.p1.2.m2.1b"><apply id="S4.SS2.SSS0.Px5.p1.2.m2.1.1.cmml" xref="S4.SS2.SSS0.Px5.p1.2.m2.1.1"><eq id="S4.SS2.SSS0.Px5.p1.2.m2.1.1.1.cmml" xref="S4.SS2.SSS0.Px5.p1.2.m2.1.1.1"></eq><apply id="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2.cmml" xref="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2"><csymbol cd="ambiguous" id="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2.1.cmml" xref="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2">subscript</csymbol><ci id="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2.2.cmml" xref="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2.2">𝑇</ci><apply id="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2.3.cmml" xref="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2.3"><times id="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2.3.1.cmml" xref="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2.3.1"></times><ci id="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2.3.2.cmml" xref="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2.3.2">𝑓</ci><ci id="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2.3.3.cmml" xref="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2.3.3">𝑖</ci><ci id="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2.3.4.cmml" xref="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2.3.4">𝑛</ci><ci id="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2.3.5.cmml" xref="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2.3.5">𝑎</ci><ci id="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2.3.6.cmml" xref="S4.SS2.SSS0.Px5.p1.2.m2.1.1.2.3.6">𝑙</ci></apply></apply><cn id="S4.SS2.SSS0.Px5.p1.2.m2.1.1.3.cmml" type="float" xref="S4.SS2.SSS0.Px5.p1.2.m2.1.1.3">0.1</cn></apply></annotation-xml><annotation encoding="application/x-tex" id="S4.SS2.SSS0.Px5.p1.2.m2.1c">T_{final}=0.1</annotation><annotation encoding="application/x-llamapun" id="S4.SS2.SSS0.Px5.p1.2.m2.1d">italic_T start_POSTSUBSCRIPT italic_f italic_i italic_n italic_a italic_l end_POSTSUBSCRIPT = 0.1</annotation></semantics></math></p> <table class="ltx_equation ltx_eqn_table" id="S4.Ex16"> <tbody><tr class="ltx_equation ltx_eqn_row ltx_align_baseline"> <td class="ltx_eqn_cell ltx_eqn_center_padleft"></td> <td class="ltx_eqn_cell ltx_align_center"><math alttext="T=a\cdot T_{final}+(1-a)\cdot T_{initial}" class="ltx_Math" display="block" id="S4.Ex16.m1.1"><semantics id="S4.Ex16.m1.1a"><mrow id="S4.Ex16.m1.1.1" xref="S4.Ex16.m1.1.1.cmml"><mi id="S4.Ex16.m1.1.1.3" xref="S4.Ex16.m1.1.1.3.cmml">T</mi><mo id="S4.Ex16.m1.1.1.2" xref="S4.Ex16.m1.1.1.2.cmml">=</mo><mrow id="S4.Ex16.m1.1.1.1" xref="S4.Ex16.m1.1.1.1.cmml"><mrow id="S4.Ex16.m1.1.1.1.3" xref="S4.Ex16.m1.1.1.1.3.cmml"><mi id="S4.Ex16.m1.1.1.1.3.2" xref="S4.Ex16.m1.1.1.1.3.2.cmml">a</mi><mo id="S4.Ex16.m1.1.1.1.3.1" lspace="0.222em" rspace="0.222em" xref="S4.Ex16.m1.1.1.1.3.1.cmml">⋅</mo><msub id="S4.Ex16.m1.1.1.1.3.3" xref="S4.Ex16.m1.1.1.1.3.3.cmml"><mi id="S4.Ex16.m1.1.1.1.3.3.2" xref="S4.Ex16.m1.1.1.1.3.3.2.cmml">T</mi><mrow id="S4.Ex16.m1.1.1.1.3.3.3" xref="S4.Ex16.m1.1.1.1.3.3.3.cmml"><mi id="S4.Ex16.m1.1.1.1.3.3.3.2" xref="S4.Ex16.m1.1.1.1.3.3.3.2.cmml">f</mi><mo id="S4.Ex16.m1.1.1.1.3.3.3.1" xref="S4.Ex16.m1.1.1.1.3.3.3.1.cmml">⁢</mo><mi id="S4.Ex16.m1.1.1.1.3.3.3.3" xref="S4.Ex16.m1.1.1.1.3.3.3.3.cmml">i</mi><mo id="S4.Ex16.m1.1.1.1.3.3.3.1a" xref="S4.Ex16.m1.1.1.1.3.3.3.1.cmml">⁢</mo><mi id="S4.Ex16.m1.1.1.1.3.3.3.4" xref="S4.Ex16.m1.1.1.1.3.3.3.4.cmml">n</mi><mo id="S4.Ex16.m1.1.1.1.3.3.3.1b" xref="S4.Ex16.m1.1.1.1.3.3.3.1.cmml">⁢</mo><mi id="S4.Ex16.m1.1.1.1.3.3.3.5" xref="S4.Ex16.m1.1.1.1.3.3.3.5.cmml">a</mi><mo id="S4.Ex16.m1.1.1.1.3.3.3.1c" xref="S4.Ex16.m1.1.1.1.3.3.3.1.cmml">⁢</mo><mi id="S4.Ex16.m1.1.1.1.3.3.3.6" xref="S4.Ex16.m1.1.1.1.3.3.3.6.cmml">l</mi></mrow></msub></mrow><mo id="S4.Ex16.m1.1.1.1.2" xref="S4.Ex16.m1.1.1.1.2.cmml">+</mo><mrow id="S4.Ex16.m1.1.1.1.1" xref="S4.Ex16.m1.1.1.1.1.cmml"><mrow id="S4.Ex16.m1.1.1.1.1.1.1" xref="S4.Ex16.m1.1.1.1.1.1.1.1.cmml"><mo id="S4.Ex16.m1.1.1.1.1.1.1.2" stretchy="false" xref="S4.Ex16.m1.1.1.1.1.1.1.1.cmml">(</mo><mrow id="S4.Ex16.m1.1.1.1.1.1.1.1" xref="S4.Ex16.m1.1.1.1.1.1.1.1.cmml"><mn id="S4.Ex16.m1.1.1.1.1.1.1.1.2" xref="S4.Ex16.m1.1.1.1.1.1.1.1.2.cmml">1</mn><mo id="S4.Ex16.m1.1.1.1.1.1.1.1.1" xref="S4.Ex16.m1.1.1.1.1.1.1.1.1.cmml">−</mo><mi id="S4.Ex16.m1.1.1.1.1.1.1.1.3" xref="S4.Ex16.m1.1.1.1.1.1.1.1.3.cmml">a</mi></mrow><mo id="S4.Ex16.m1.1.1.1.1.1.1.3" rspace="0.055em" stretchy="false" xref="S4.Ex16.m1.1.1.1.1.1.1.1.cmml">)</mo></mrow><mo id="S4.Ex16.m1.1.1.1.1.2" rspace="0.222em" xref="S4.Ex16.m1.1.1.1.1.2.cmml">⋅</mo><msub id="S4.Ex16.m1.1.1.1.1.3" xref="S4.Ex16.m1.1.1.1.1.3.cmml"><mi id="S4.Ex16.m1.1.1.1.1.3.2" xref="S4.Ex16.m1.1.1.1.1.3.2.cmml">T</mi><mrow id="S4.Ex16.m1.1.1.1.1.3.3" xref="S4.Ex16.m1.1.1.1.1.3.3.cmml"><mi id="S4.Ex16.m1.1.1.1.1.3.3.2" xref="S4.Ex16.m1.1.1.1.1.3.3.2.cmml">i</mi><mo id="S4.Ex16.m1.1.1.1.1.3.3.1" xref="S4.Ex16.m1.1.1.1.1.3.3.1.cmml">⁢</mo><mi id="S4.Ex16.m1.1.1.1.1.3.3.3" xref="S4.Ex16.m1.1.1.1.1.3.3.3.cmml">n</mi><mo id="S4.Ex16.m1.1.1.1.1.3.3.1a" xref="S4.Ex16.m1.1.1.1.1.3.3.1.cmml">⁢</mo><mi id="S4.Ex16.m1.1.1.1.1.3.3.4" xref="S4.Ex16.m1.1.1.1.1.3.3.4.cmml">i</mi><mo id="S4.Ex16.m1.1.1.1.1.3.3.1b" xref="S4.Ex16.m1.1.1.1.1.3.3.1.cmml">⁢</mo><mi id="S4.Ex16.m1.1.1.1.1.3.3.5" xref="S4.Ex16.m1.1.1.1.1.3.3.5.cmml">t</mi><mo id="S4.Ex16.m1.1.1.1.1.3.3.1c" xref="S4.Ex16.m1.1.1.1.1.3.3.1.cmml">⁢</mo><mi id="S4.Ex16.m1.1.1.1.1.3.3.6" xref="S4.Ex16.m1.1.1.1.1.3.3.6.cmml">i</mi><mo id="S4.Ex16.m1.1.1.1.1.3.3.1d" xref="S4.Ex16.m1.1.1.1.1.3.3.1.cmml">⁢</mo><mi id="S4.Ex16.m1.1.1.1.1.3.3.7" xref="S4.Ex16.m1.1.1.1.1.3.3.7.cmml">a</mi><mo id="S4.Ex16.m1.1.1.1.1.3.3.1e" xref="S4.Ex16.m1.1.1.1.1.3.3.1.cmml">⁢</mo><mi id="S4.Ex16.m1.1.1.1.1.3.3.8" xref="S4.Ex16.m1.1.1.1.1.3.3.8.cmml">l</mi></mrow></msub></mrow></mrow></mrow><annotation-xml encoding="MathML-Content" id="S4.Ex16.m1.1b"><apply id="S4.Ex16.m1.1.1.cmml" xref="S4.Ex16.m1.1.1"><eq id="S4.Ex16.m1.1.1.2.cmml" xref="S4.Ex16.m1.1.1.2"></eq><ci id="S4.Ex16.m1.1.1.3.cmml" xref="S4.Ex16.m1.1.1.3">𝑇</ci><apply id="S4.Ex16.m1.1.1.1.cmml" xref="S4.Ex16.m1.1.1.1"><plus id="S4.Ex16.m1.1.1.1.2.cmml" xref="S4.Ex16.m1.1.1.1.2"></plus><apply id="S4.Ex16.m1.1.1.1.3.cmml" xref="S4.Ex16.m1.1.1.1.3"><ci id="S4.Ex16.m1.1.1.1.3.1.cmml" xref="S4.Ex16.m1.1.1.1.3.1">⋅</ci><ci id="S4.Ex16.m1.1.1.1.3.2.cmml" xref="S4.Ex16.m1.1.1.1.3.2">𝑎</ci><apply id="S4.Ex16.m1.1.1.1.3.3.cmml" xref="S4.Ex16.m1.1.1.1.3.3"><csymbol cd="ambiguous" id="S4.Ex16.m1.1.1.1.3.3.1.cmml" xref="S4.Ex16.m1.1.1.1.3.3">subscript</csymbol><ci id="S4.Ex16.m1.1.1.1.3.3.2.cmml" xref="S4.Ex16.m1.1.1.1.3.3.2">𝑇</ci><apply id="S4.Ex16.m1.1.1.1.3.3.3.cmml" xref="S4.Ex16.m1.1.1.1.3.3.3"><times id="S4.Ex16.m1.1.1.1.3.3.3.1.cmml" xref="S4.Ex16.m1.1.1.1.3.3.3.1"></times><ci id="S4.Ex16.m1.1.1.1.3.3.3.2.cmml" xref="S4.Ex16.m1.1.1.1.3.3.3.2">𝑓</ci><ci id="S4.Ex16.m1.1.1.1.3.3.3.3.cmml" xref="S4.Ex16.m1.1.1.1.3.3.3.3">𝑖</ci><ci id="S4.Ex16.m1.1.1.1.3.3.3.4.cmml" xref="S4.Ex16.m1.1.1.1.3.3.3.4">𝑛</ci><ci id="S4.Ex16.m1.1.1.1.3.3.3.5.cmml" xref="S4.Ex16.m1.1.1.1.3.3.3.5">𝑎</ci><ci id="S4.Ex16.m1.1.1.1.3.3.3.6.cmml" xref="S4.Ex16.m1.1.1.1.3.3.3.6">𝑙</ci></apply></apply></apply><apply id="S4.Ex16.m1.1.1.1.1.cmml" xref="S4.Ex16.m1.1.1.1.1"><ci id="S4.Ex16.m1.1.1.1.1.2.cmml" xref="S4.Ex16.m1.1.1.1.1.2">⋅</ci><apply id="S4.Ex16.m1.1.1.1.1.1.1.1.cmml" xref="S4.Ex16.m1.1.1.1.1.1.1"><minus id="S4.Ex16.m1.1.1.1.1.1.1.1.1.cmml" xref="S4.Ex16.m1.1.1.1.1.1.1.1.1"></minus><cn id="S4.Ex16.m1.1.1.1.1.1.1.1.2.cmml" type="integer" xref="S4.Ex16.m1.1.1.1.1.1.1.1.2">1</cn><ci id="S4.Ex16.m1.1.1.1.1.1.1.1.3.cmml" xref="S4.Ex16.m1.1.1.1.1.1.1.1.3">𝑎</ci></apply><apply id="S4.Ex16.m1.1.1.1.1.3.cmml" xref="S4.Ex16.m1.1.1.1.1.3"><csymbol cd="ambiguous" id="S4.Ex16.m1.1.1.1.1.3.1.cmml" xref="S4.Ex16.m1.1.1.1.1.3">subscript</csymbol><ci id="S4.Ex16.m1.1.1.1.1.3.2.cmml" xref="S4.Ex16.m1.1.1.1.1.3.2">𝑇</ci><apply id="S4.Ex16.m1.1.1.1.1.3.3.cmml" xref="S4.Ex16.m1.1.1.1.1.3.3"><times id="S4.Ex16.m1.1.1.1.1.3.3.1.cmml" xref="S4.Ex16.m1.1.1.1.1.3.3.1"></times><ci id="S4.Ex16.m1.1.1.1.1.3.3.2.cmml" xref="S4.Ex16.m1.1.1.1.1.3.3.2">𝑖</ci><ci id="S4.Ex16.m1.1.1.1.1.3.3.3.cmml" xref="S4.Ex16.m1.1.1.1.1.3.3.3">𝑛</ci><ci id="S4.Ex16.m1.1.1.1.1.3.3.4.cmml" xref="S4.Ex16.m1.1.1.1.1.3.3.4">𝑖</ci><ci id="S4.Ex16.m1.1.1.1.1.3.3.5.cmml" xref="S4.Ex16.m1.1.1.1.1.3.3.5">𝑡</ci><ci id="S4.Ex16.m1.1.1.1.1.3.3.6.cmml" xref="S4.Ex16.m1.1.1.1.1.3.3.6">𝑖</ci><ci id="S4.Ex16.m1.1.1.1.1.3.3.7.cmml" xref="S4.Ex16.m1.1.1.1.1.3.3.7">𝑎</ci><ci id="S4.Ex16.m1.1.1.1.1.3.3.8.cmml" xref="S4.Ex16.m1.1.1.1.1.3.3.8">𝑙</ci></apply></apply></apply></apply></apply></annotation-xml><annotation encoding="application/x-tex" id="S4.Ex16.m1.1c">T=a\cdot T_{final}+(1-a)\cdot T_{initial}</annotation><annotation encoding="application/x-llamapun" id="S4.Ex16.m1.1d">italic_T = italic_a ⋅ italic_T start_POSTSUBSCRIPT italic_f italic_i italic_n italic_a italic_l end_POSTSUBSCRIPT + ( 1 - italic_a ) ⋅ italic_T start_POSTSUBSCRIPT italic_i italic_n italic_i italic_t italic_i italic_a italic_l end_POSTSUBSCRIPT</annotation></semantics></math></td> <td class="ltx_eqn_cell ltx_eqn_center_padright"></td> </tr></tbody> </table> <table class="ltx_equation ltx_eqn_table" id="S4.Ex17"> <tbody><tr class="ltx_equation ltx_eqn_row ltx_align_baseline"> <td class="ltx_eqn_cell ltx_eqn_center_padleft"></td> <td class="ltx_eqn_cell ltx_align_center"><math alttext="a=\frac{i}{max\_iteration-1}" class="ltx_Math" display="block" id="S4.Ex17.m1.1"><semantics id="S4.Ex17.m1.1a"><mrow id="S4.Ex17.m1.1.1" xref="S4.Ex17.m1.1.1.cmml"><mi id="S4.Ex17.m1.1.1.2" xref="S4.Ex17.m1.1.1.2.cmml">a</mi><mo id="S4.Ex17.m1.1.1.1" xref="S4.Ex17.m1.1.1.1.cmml">=</mo><mfrac id="S4.Ex17.m1.1.1.3" xref="S4.Ex17.m1.1.1.3.cmml"><mi id="S4.Ex17.m1.1.1.3.2" xref="S4.Ex17.m1.1.1.3.2.cmml">i</mi><mrow id="S4.Ex17.m1.1.1.3.3" xref="S4.Ex17.m1.1.1.3.3.cmml"><mrow id="S4.Ex17.m1.1.1.3.3.2" xref="S4.Ex17.m1.1.1.3.3.2.cmml"><mi id="S4.Ex17.m1.1.1.3.3.2.2" xref="S4.Ex17.m1.1.1.3.3.2.2.cmml">m</mi><mo id="S4.Ex17.m1.1.1.3.3.2.1" xref="S4.Ex17.m1.1.1.3.3.2.1.cmml">⁢</mo><mi id="S4.Ex17.m1.1.1.3.3.2.3" xref="S4.Ex17.m1.1.1.3.3.2.3.cmml">a</mi><mo id="S4.Ex17.m1.1.1.3.3.2.1a" xref="S4.Ex17.m1.1.1.3.3.2.1.cmml">⁢</mo><mi id="S4.Ex17.m1.1.1.3.3.2.4" xref="S4.Ex17.m1.1.1.3.3.2.4.cmml">x</mi><mo id="S4.Ex17.m1.1.1.3.3.2.1b" xref="S4.Ex17.m1.1.1.3.3.2.1.cmml">⁢</mo><mi id="S4.Ex17.m1.1.1.3.3.2.5" mathvariant="normal" xref="S4.Ex17.m1.1.1.3.3.2.5.cmml">_</mi><mo id="S4.Ex17.m1.1.1.3.3.2.1c" xref="S4.Ex17.m1.1.1.3.3.2.1.cmml">⁢</mo><mi id="S4.Ex17.m1.1.1.3.3.2.6" xref="S4.Ex17.m1.1.1.3.3.2.6.cmml">i</mi><mo id="S4.Ex17.m1.1.1.3.3.2.1d" xref="S4.Ex17.m1.1.1.3.3.2.1.cmml">⁢</mo><mi id="S4.Ex17.m1.1.1.3.3.2.7" xref="S4.Ex17.m1.1.1.3.3.2.7.cmml">t</mi><mo id="S4.Ex17.m1.1.1.3.3.2.1e" xref="S4.Ex17.m1.1.1.3.3.2.1.cmml">⁢</mo><mi id="S4.Ex17.m1.1.1.3.3.2.8" xref="S4.Ex17.m1.1.1.3.3.2.8.cmml">e</mi><mo id="S4.Ex17.m1.1.1.3.3.2.1f" xref="S4.Ex17.m1.1.1.3.3.2.1.cmml">⁢</mo><mi id="S4.Ex17.m1.1.1.3.3.2.9" xref="S4.Ex17.m1.1.1.3.3.2.9.cmml">r</mi><mo id="S4.Ex17.m1.1.1.3.3.2.1g" xref="S4.Ex17.m1.1.1.3.3.2.1.cmml">⁢</mo><mi id="S4.Ex17.m1.1.1.3.3.2.10" xref="S4.Ex17.m1.1.1.3.3.2.10.cmml">a</mi><mo id="S4.Ex17.m1.1.1.3.3.2.1h" xref="S4.Ex17.m1.1.1.3.3.2.1.cmml">⁢</mo><mi id="S4.Ex17.m1.1.1.3.3.2.11" xref="S4.Ex17.m1.1.1.3.3.2.11.cmml">t</mi><mo id="S4.Ex17.m1.1.1.3.3.2.1i" xref="S4.Ex17.m1.1.1.3.3.2.1.cmml">⁢</mo><mi id="S4.Ex17.m1.1.1.3.3.2.12" xref="S4.Ex17.m1.1.1.3.3.2.12.cmml">i</mi><mo id="S4.Ex17.m1.1.1.3.3.2.1j" xref="S4.Ex17.m1.1.1.3.3.2.1.cmml">⁢</mo><mi id="S4.Ex17.m1.1.1.3.3.2.13" xref="S4.Ex17.m1.1.1.3.3.2.13.cmml">o</mi><mo id="S4.Ex17.m1.1.1.3.3.2.1k" xref="S4.Ex17.m1.1.1.3.3.2.1.cmml">⁢</mo><mi id="S4.Ex17.m1.1.1.3.3.2.14" xref="S4.Ex17.m1.1.1.3.3.2.14.cmml">n</mi></mrow><mo id="S4.Ex17.m1.1.1.3.3.1" xref="S4.Ex17.m1.1.1.3.3.1.cmml">−</mo><mn id="S4.Ex17.m1.1.1.3.3.3" xref="S4.Ex17.m1.1.1.3.3.3.cmml">1</mn></mrow></mfrac></mrow><annotation-xml encoding="MathML-Content" id="S4.Ex17.m1.1b"><apply id="S4.Ex17.m1.1.1.cmml" xref="S4.Ex17.m1.1.1"><eq id="S4.Ex17.m1.1.1.1.cmml" xref="S4.Ex17.m1.1.1.1"></eq><ci id="S4.Ex17.m1.1.1.2.cmml" xref="S4.Ex17.m1.1.1.2">𝑎</ci><apply id="S4.Ex17.m1.1.1.3.cmml" xref="S4.Ex17.m1.1.1.3"><divide id="S4.Ex17.m1.1.1.3.1.cmml" xref="S4.Ex17.m1.1.1.3"></divide><ci id="S4.Ex17.m1.1.1.3.2.cmml" xref="S4.Ex17.m1.1.1.3.2">𝑖</ci><apply id="S4.Ex17.m1.1.1.3.3.cmml" xref="S4.Ex17.m1.1.1.3.3"><minus id="S4.Ex17.m1.1.1.3.3.1.cmml" xref="S4.Ex17.m1.1.1.3.3.1"></minus><apply id="S4.Ex17.m1.1.1.3.3.2.cmml" xref="S4.Ex17.m1.1.1.3.3.2"><times id="S4.Ex17.m1.1.1.3.3.2.1.cmml" xref="S4.Ex17.m1.1.1.3.3.2.1"></times><ci id="S4.Ex17.m1.1.1.3.3.2.2.cmml" xref="S4.Ex17.m1.1.1.3.3.2.2">𝑚</ci><ci id="S4.Ex17.m1.1.1.3.3.2.3.cmml" xref="S4.Ex17.m1.1.1.3.3.2.3">𝑎</ci><ci id="S4.Ex17.m1.1.1.3.3.2.4.cmml" xref="S4.Ex17.m1.1.1.3.3.2.4">𝑥</ci><ci id="S4.Ex17.m1.1.1.3.3.2.5.cmml" xref="S4.Ex17.m1.1.1.3.3.2.5">_</ci><ci id="S4.Ex17.m1.1.1.3.3.2.6.cmml" xref="S4.Ex17.m1.1.1.3.3.2.6">𝑖</ci><ci id="S4.Ex17.m1.1.1.3.3.2.7.cmml" xref="S4.Ex17.m1.1.1.3.3.2.7">𝑡</ci><ci id="S4.Ex17.m1.1.1.3.3.2.8.cmml" xref="S4.Ex17.m1.1.1.3.3.2.8">𝑒</ci><ci id="S4.Ex17.m1.1.1.3.3.2.9.cmml" xref="S4.Ex17.m1.1.1.3.3.2.9">𝑟</ci><ci id="S4.Ex17.m1.1.1.3.3.2.10.cmml" xref="S4.Ex17.m1.1.1.3.3.2.10">𝑎</ci><ci id="S4.Ex17.m1.1.1.3.3.2.11.cmml" xref="S4.Ex17.m1.1.1.3.3.2.11">𝑡</ci><ci id="S4.Ex17.m1.1.1.3.3.2.12.cmml" xref="S4.Ex17.m1.1.1.3.3.2.12">𝑖</ci><ci id="S4.Ex17.m1.1.1.3.3.2.13.cmml" xref="S4.Ex17.m1.1.1.3.3.2.13">𝑜</ci><ci id="S4.Ex17.m1.1.1.3.3.2.14.cmml" xref="S4.Ex17.m1.1.1.3.3.2.14">𝑛</ci></apply><cn id="S4.Ex17.m1.1.1.3.3.3.cmml" type="integer" xref="S4.Ex17.m1.1.1.3.3.3">1</cn></apply></apply></apply></annotation-xml><annotation encoding="application/x-tex" id="S4.Ex17.m1.1c">a=\frac{i}{max\_iteration-1}</annotation><annotation encoding="application/x-llamapun" id="S4.Ex17.m1.1d">italic_a = divide start_ARG italic_i end_ARG start_ARG italic_m italic_a italic_x _ italic_i italic_t italic_e italic_r italic_a italic_t italic_i italic_o italic_n - 1 end_ARG</annotation></semantics></math></td> <td class="ltx_eqn_cell ltx_eqn_center_padright"></td> </tr></tbody> </table> </div> <figure class="ltx_figure" id="S4.F9"><img alt="Refer to caption" class="ltx_graphics ltx_centering ltx_img_square" height="299" id="S4.F9.g1" src="extracted/6104631/11-20/mean_error_over_iterations_linearInterpolation.png" width="359"/> <figcaption class="ltx_caption ltx_centering"><span class="ltx_tag ltx_tag_figure">Figure 9: </span>Four plots for linear interpolation method</figcaption> </figure> </section> <section class="ltx_paragraph" id="S4.SS2.SSS0.Px6"> <h4 class="ltx_title ltx_title_paragraph">80% of Maximum Distance</h4> <div class="ltx_para" id="S4.SS2.SSS0.Px6.p1"> <p class="ltx_p" id="S4.SS2.SSS0.Px6.p1.1">Using a percentage of the maximum distance as the threshold.</p> <table class="ltx_equation ltx_eqn_table" id="S4.Ex18"> <tbody><tr class="ltx_equation ltx_eqn_row ltx_align_baseline"> <td class="ltx_eqn_cell ltx_eqn_center_padleft"></td> <td class="ltx_eqn_cell ltx_align_center"><math alttext="T=0.8\times d_{\text{max}}" class="ltx_Math" display="block" id="S4.Ex18.m1.1"><semantics id="S4.Ex18.m1.1a"><mrow id="S4.Ex18.m1.1.1" xref="S4.Ex18.m1.1.1.cmml"><mi id="S4.Ex18.m1.1.1.2" xref="S4.Ex18.m1.1.1.2.cmml">T</mi><mo id="S4.Ex18.m1.1.1.1" xref="S4.Ex18.m1.1.1.1.cmml">=</mo><mrow id="S4.Ex18.m1.1.1.3" xref="S4.Ex18.m1.1.1.3.cmml"><mn id="S4.Ex18.m1.1.1.3.2" xref="S4.Ex18.m1.1.1.3.2.cmml">0.8</mn><mo id="S4.Ex18.m1.1.1.3.1" lspace="0.222em" rspace="0.222em" xref="S4.Ex18.m1.1.1.3.1.cmml">×</mo><msub id="S4.Ex18.m1.1.1.3.3" xref="S4.Ex18.m1.1.1.3.3.cmml"><mi id="S4.Ex18.m1.1.1.3.3.2" xref="S4.Ex18.m1.1.1.3.3.2.cmml">d</mi><mtext id="S4.Ex18.m1.1.1.3.3.3" xref="S4.Ex18.m1.1.1.3.3.3a.cmml">max</mtext></msub></mrow></mrow><annotation-xml encoding="MathML-Content" id="S4.Ex18.m1.1b"><apply id="S4.Ex18.m1.1.1.cmml" xref="S4.Ex18.m1.1.1"><eq id="S4.Ex18.m1.1.1.1.cmml" xref="S4.Ex18.m1.1.1.1"></eq><ci id="S4.Ex18.m1.1.1.2.cmml" xref="S4.Ex18.m1.1.1.2">𝑇</ci><apply id="S4.Ex18.m1.1.1.3.cmml" xref="S4.Ex18.m1.1.1.3"><times id="S4.Ex18.m1.1.1.3.1.cmml" xref="S4.Ex18.m1.1.1.3.1"></times><cn id="S4.Ex18.m1.1.1.3.2.cmml" type="float" xref="S4.Ex18.m1.1.1.3.2">0.8</cn><apply id="S4.Ex18.m1.1.1.3.3.cmml" xref="S4.Ex18.m1.1.1.3.3"><csymbol cd="ambiguous" id="S4.Ex18.m1.1.1.3.3.1.cmml" xref="S4.Ex18.m1.1.1.3.3">subscript</csymbol><ci id="S4.Ex18.m1.1.1.3.3.2.cmml" xref="S4.Ex18.m1.1.1.3.3.2">𝑑</ci><ci id="S4.Ex18.m1.1.1.3.3.3a.cmml" xref="S4.Ex18.m1.1.1.3.3.3"><mtext id="S4.Ex18.m1.1.1.3.3.3.cmml" mathsize="70%" xref="S4.Ex18.m1.1.1.3.3.3">max</mtext></ci></apply></apply></apply></annotation-xml><annotation encoding="application/x-tex" id="S4.Ex18.m1.1c">T=0.8\times d_{\text{max}}</annotation><annotation encoding="application/x-llamapun" id="S4.Ex18.m1.1d">italic_T = 0.8 × italic_d start_POSTSUBSCRIPT max end_POSTSUBSCRIPT</annotation></semantics></math></td> <td class="ltx_eqn_cell ltx_eqn_center_padright"></td> </tr></tbody> </table> </div> <figure class="ltx_figure" id="S4.F10"><img alt="Refer to caption" class="ltx_graphics ltx_centering ltx_img_square" height="299" id="S4.F10.g1" src="extracted/6104631/11-20/mean_error_over_iterations_80max.png" width="359"/> <figcaption class="ltx_caption ltx_centering"><span class="ltx_tag ltx_tag_figure">Figure 10: </span>Four plots for 80% of maximum distance method</figcaption> </figure> </section> <section class="ltx_paragraph" id="S4.SS2.SSS0.Px7"> <h4 class="ltx_title ltx_title_paragraph">Mean Plus Two Standard Deviations</h4> <div class="ltx_para" id="S4.SS2.SSS0.Px7.p1"> <p class="ltx_p" id="S4.SS2.SSS0.Px7.p1.2">Using the mean of distances plus two times the standard deviation.</p> <table class="ltx_equation ltx_eqn_table" id="S4.Ex19"> <tbody><tr class="ltx_equation ltx_eqn_row ltx_align_baseline"> <td class="ltx_eqn_cell ltx_eqn_center_padleft"></td> <td class="ltx_eqn_cell ltx_align_center"><math alttext="T=\bar{d}+2\cdot\sigma_{d}" class="ltx_Math" display="block" id="S4.Ex19.m1.1"><semantics id="S4.Ex19.m1.1a"><mrow id="S4.Ex19.m1.1.1" xref="S4.Ex19.m1.1.1.cmml"><mi id="S4.Ex19.m1.1.1.2" xref="S4.Ex19.m1.1.1.2.cmml">T</mi><mo id="S4.Ex19.m1.1.1.1" xref="S4.Ex19.m1.1.1.1.cmml">=</mo><mrow id="S4.Ex19.m1.1.1.3" xref="S4.Ex19.m1.1.1.3.cmml"><mover accent="true" id="S4.Ex19.m1.1.1.3.2" xref="S4.Ex19.m1.1.1.3.2.cmml"><mi id="S4.Ex19.m1.1.1.3.2.2" xref="S4.Ex19.m1.1.1.3.2.2.cmml">d</mi><mo id="S4.Ex19.m1.1.1.3.2.1" xref="S4.Ex19.m1.1.1.3.2.1.cmml">¯</mo></mover><mo id="S4.Ex19.m1.1.1.3.1" xref="S4.Ex19.m1.1.1.3.1.cmml">+</mo><mrow id="S4.Ex19.m1.1.1.3.3" xref="S4.Ex19.m1.1.1.3.3.cmml"><mn id="S4.Ex19.m1.1.1.3.3.2" xref="S4.Ex19.m1.1.1.3.3.2.cmml">2</mn><mo id="S4.Ex19.m1.1.1.3.3.1" lspace="0.222em" rspace="0.222em" xref="S4.Ex19.m1.1.1.3.3.1.cmml">⋅</mo><msub id="S4.Ex19.m1.1.1.3.3.3" xref="S4.Ex19.m1.1.1.3.3.3.cmml"><mi id="S4.Ex19.m1.1.1.3.3.3.2" xref="S4.Ex19.m1.1.1.3.3.3.2.cmml">σ</mi><mi id="S4.Ex19.m1.1.1.3.3.3.3" xref="S4.Ex19.m1.1.1.3.3.3.3.cmml">d</mi></msub></mrow></mrow></mrow><annotation-xml encoding="MathML-Content" id="S4.Ex19.m1.1b"><apply id="S4.Ex19.m1.1.1.cmml" xref="S4.Ex19.m1.1.1"><eq id="S4.Ex19.m1.1.1.1.cmml" xref="S4.Ex19.m1.1.1.1"></eq><ci id="S4.Ex19.m1.1.1.2.cmml" xref="S4.Ex19.m1.1.1.2">𝑇</ci><apply id="S4.Ex19.m1.1.1.3.cmml" xref="S4.Ex19.m1.1.1.3"><plus id="S4.Ex19.m1.1.1.3.1.cmml" xref="S4.Ex19.m1.1.1.3.1"></plus><apply id="S4.Ex19.m1.1.1.3.2.cmml" xref="S4.Ex19.m1.1.1.3.2"><ci id="S4.Ex19.m1.1.1.3.2.1.cmml" xref="S4.Ex19.m1.1.1.3.2.1">¯</ci><ci id="S4.Ex19.m1.1.1.3.2.2.cmml" xref="S4.Ex19.m1.1.1.3.2.2">𝑑</ci></apply><apply id="S4.Ex19.m1.1.1.3.3.cmml" xref="S4.Ex19.m1.1.1.3.3"><ci id="S4.Ex19.m1.1.1.3.3.1.cmml" xref="S4.Ex19.m1.1.1.3.3.1">⋅</ci><cn id="S4.Ex19.m1.1.1.3.3.2.cmml" type="integer" xref="S4.Ex19.m1.1.1.3.3.2">2</cn><apply id="S4.Ex19.m1.1.1.3.3.3.cmml" xref="S4.Ex19.m1.1.1.3.3.3"><csymbol cd="ambiguous" id="S4.Ex19.m1.1.1.3.3.3.1.cmml" xref="S4.Ex19.m1.1.1.3.3.3">subscript</csymbol><ci id="S4.Ex19.m1.1.1.3.3.3.2.cmml" xref="S4.Ex19.m1.1.1.3.3.3.2">𝜎</ci><ci id="S4.Ex19.m1.1.1.3.3.3.3.cmml" xref="S4.Ex19.m1.1.1.3.3.3.3">𝑑</ci></apply></apply></apply></apply></annotation-xml><annotation encoding="application/x-tex" id="S4.Ex19.m1.1c">T=\bar{d}+2\cdot\sigma_{d}</annotation><annotation encoding="application/x-llamapun" id="S4.Ex19.m1.1d">italic_T = over¯ start_ARG italic_d end_ARG + 2 ⋅ italic_σ start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT</annotation></semantics></math></td> <td class="ltx_eqn_cell ltx_eqn_center_padright"></td> </tr></tbody> </table> <p class="ltx_p" id="S4.SS2.SSS0.Px7.p1.1"><span class="ltx_text" id="S4.SS2.SSS0.Px7.p1.1.1">where </span> <math alttext="\sigma_{d}" class="ltx_Math" display="inline" id="S4.SS2.SSS0.Px7.p1.1.m1.1"><semantics id="S4.SS2.SSS0.Px7.p1.1.m1.1a"><msub id="S4.SS2.SSS0.Px7.p1.1.m1.1.1" xref="S4.SS2.SSS0.Px7.p1.1.m1.1.1.cmml"><mi id="S4.SS2.SSS0.Px7.p1.1.m1.1.1.2" xref="S4.SS2.SSS0.Px7.p1.1.m1.1.1.2.cmml">σ</mi><mi id="S4.SS2.SSS0.Px7.p1.1.m1.1.1.3" xref="S4.SS2.SSS0.Px7.p1.1.m1.1.1.3.cmml">d</mi></msub><annotation-xml encoding="MathML-Content" id="S4.SS2.SSS0.Px7.p1.1.m1.1b"><apply id="S4.SS2.SSS0.Px7.p1.1.m1.1.1.cmml" xref="S4.SS2.SSS0.Px7.p1.1.m1.1.1"><csymbol cd="ambiguous" id="S4.SS2.SSS0.Px7.p1.1.m1.1.1.1.cmml" xref="S4.SS2.SSS0.Px7.p1.1.m1.1.1">subscript</csymbol><ci id="S4.SS2.SSS0.Px7.p1.1.m1.1.1.2.cmml" xref="S4.SS2.SSS0.Px7.p1.1.m1.1.1.2">𝜎</ci><ci id="S4.SS2.SSS0.Px7.p1.1.m1.1.1.3.cmml" xref="S4.SS2.SSS0.Px7.p1.1.m1.1.1.3">𝑑</ci></apply></annotation-xml><annotation encoding="application/x-tex" id="S4.SS2.SSS0.Px7.p1.1.m1.1c">\sigma_{d}</annotation><annotation encoding="application/x-llamapun" id="S4.SS2.SSS0.Px7.p1.1.m1.1d">italic_σ start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT</annotation></semantics></math> <span class="ltx_text" id="S4.SS2.SSS0.Px7.p1.1.2"> is the standard deviation of the distances.</span></p> </div> <figure class="ltx_figure" id="S4.F11"><img alt="Refer to caption" class="ltx_graphics ltx_centering ltx_img_square" height="299" id="S4.F11.g1" src="extracted/6104631/11-20/mean_error_over_iterations_2std.png" width="359"/> <figcaption class="ltx_caption ltx_centering"><span class="ltx_tag ltx_tag_figure">Figure 11: </span>Four plots for mean plus two standard deviations method</figcaption> </figure> </section> </section> <section class="ltx_subsection" id="S4.SS3"> <h3 class="ltx_title ltx_title_subsection"> <span class="ltx_tag ltx_tag_subsection">4.3 </span>3D Reconstruction Outcomes</h3> <section class="ltx_paragraph" id="S4.SS3.SSS0.Px1"> <h4 class="ltx_title ltx_title_paragraph">Qualitative Results</h4> <div class="ltx_para" id="S4.SS3.SSS0.Px1.p1"> <p class="ltx_p" id="S4.SS3.SSS0.Px1.p1.1">The outcomes of the 3D reconstruction are recorded and assessed qualitatively. Currently, the scene can be aligned with all points kept, using neighbor-ICP. The best alignment can be found using the mean plus two standard deviation method. A quantitative comparison is not feasible at this point because the discrepancy between the reconstructed scene and the actual scene is too large, and a single scaling is not able to align them. The discrepancy was caused by the nature of the monocular depth estimation since they were relative depth estimation.</p> </div> <div class="ltx_para" id="S4.SS3.SSS0.Px1.p2"> <p class="ltx_p" id="S4.SS3.SSS0.Px1.p2.1">However, as shown in Figure. <a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S4.F12" title="Figure 12 ‣ Qualitative Results ‣ 4.3 3D Reconstruction Outcomes ‣ 4 Results ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_tag">12</span></a>, the ground truth images are aligned okay, but the depth-estimation images are far worse, see Figure. <a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S4.F13" title="Figure 13 ‣ Qualitative Results ‣ 4.3 3D Reconstruction Outcomes ‣ 4 Results ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_tag">13</span></a></p> </div> <figure class="ltx_figure" id="S4.F12"> <div class="ltx_flex_figure"> <div class="ltx_flex_cell ltx_flex_size_2"><img alt="Refer to caption" class="ltx_graphics ltx_centering ltx_figure_panel ltx_img_landscape" height="166" id="S4.F12.g1" src="extracted/6104631/figures/singleshow.png" width="240"/></div> <div class="ltx_flex_cell ltx_flex_size_2"><img alt="Refer to caption" class="ltx_graphics ltx_centering ltx_figure_panel ltx_img_landscape" height="150" id="S4.F12.g2" src="extracted/6104631/figures/cropped-showing-alignment.png" width="240"/></div> </div> <figcaption class="ltx_caption ltx_centering"><span class="ltx_tag ltx_tag_figure">Figure 12: </span>Reconstruction using ground truth depths at frame 1(left) and frame 91(right)</figcaption> </figure> <figure class="ltx_figure" id="S4.F13"> <div class="ltx_flex_figure"> <div class="ltx_flex_cell ltx_flex_size_2"><img alt="Refer to caption" class="ltx_graphics ltx_centering ltx_figure_panel ltx_img_landscape" height="96" id="S4.F13.g1" src="extracted/6104631/figures/Screenshot_2024-12-20_16-48-29.png" width="240"/></div> <div class="ltx_flex_cell ltx_flex_size_2"><img alt="Refer to caption" class="ltx_graphics ltx_centering ltx_figure_panel ltx_img_landscape" height="124" id="S4.F13.g2" src="extracted/6104631/figures/Screenshot_2024-12-20_16-50-44.png" width="240"/></div> </div> <figcaption class="ltx_caption ltx_centering"><span class="ltx_tag ltx_tag_figure">Figure 13: </span>Reconstruction using depth estimation from depth-anything:v2 at frame 1(left) and frame 31(right)</figcaption> </figure> </section> <section class="ltx_paragraph" id="S4.SS3.SSS0.Px2"> <h4 class="ltx_title ltx_title_paragraph">Challenges Faced</h4> <div class="ltx_para" id="S4.SS3.SSS0.Px2.p1"> <p class="ltx_p" id="S4.SS3.SSS0.Px2.p1.1">One of the primary challenges stems from the lack of accurate pose estimation, making it difficult to discern which points in sequential frames lie within the shared field of view. Without knowing the camera pose, we cannot reliably identify overlapping regions between successive point clouds, forcing us to rely on heuristic filters. For example, we currently apply a statistical threshold based on the mean and standard deviation of point-to-point distances to differentiate inliers from outliers. This approach helps reduce misalignments, but it often introduces noticeable artifacts, as it cannot distinguish new geometry from previously observed structures.</p> </div> <div class="ltx_para" id="S4.SS3.SSS0.Px2.p2"> <p class="ltx_p" id="S4.SS3.SSS0.Px2.p2.1">Additionally, the depth estimation models provide only relative depth values rather than absolute measurements. Ground truth data often have a known depth range (e.g., 100–150 units), but our monocular models produce predictions normalized to a fixed intensity scale (e.g., 0–255). Without a reliable mechanism to align these relative values to a meaningful depth scale, subsequent integration and comparison with ground truth data or between frames remains problematic. This discrepancy underscores the need for improved calibration, fine-tuning of the estimation model, or incorporating additional information (such as stereo or multi-view cues) to achieve more accurate and consistent depth scales.</p> </div> </section> </section> <section class="ltx_subsection" id="S4.SS4"> <h3 class="ltx_title ltx_title_subsection"> <span class="ltx_tag ltx_tag_subsection">4.4 </span>Visualization and Analysis</h3> <section class="ltx_paragraph" id="S4.SS4.SSS0.Px1"> <h4 class="ltx_title ltx_title_paragraph">ICP Alignment Visualization</h4> <div class="ltx_para" id="S4.SS4.SSS0.Px1.p1"> <p class="ltx_p" id="S4.SS4.SSS0.Px1.p1.1">The development of visualization methods allowed for a better understanding of the ICP alignment process. Heatmaps and error plots provided insights into how different thresholding methods affected convergence and accuracy.</p> </div> </section> <section class="ltx_paragraph" id="S4.SS4.SSS0.Px2"> <h4 class="ltx_title ltx_title_paragraph">Thresholding Strategies</h4> <div class="ltx_para" id="S4.SS4.SSS0.Px2.p1"> <p class="ltx_p" id="S4.SS4.SSS0.Px2.p1.1">Dynamic thresholding methods, such as using percentiles or statistical measures, were compared. The experiments suggested that adaptive thresholding could enhance alignment by appropriately balancing the inclusion of corresponding points and the exclusion of outliers.</p> </div> </section> </section> </section> <section class="ltx_section" id="S5"> <h2 class="ltx_title ltx_title_section"> <span class="ltx_tag ltx_tag_section">5 </span>Discussion</h2> <div class="ltx_para" id="S5.p1"> <p class="ltx_p" id="S5.p1.1">In this section, we reflect on the observations and experimental insights gained during the pipeline development. Our discussion covers:</p> <ul class="ltx_itemize" id="S5.I1"> <li class="ltx_item" id="S5.I1.i1" style="list-style-type:none;"> <span class="ltx_tag ltx_tag_item">•</span> <div class="ltx_para" id="S5.I1.i1.p1"> <p class="ltx_p" id="S5.I1.i1.p1.1">the relative-vs-absolute depth challenge</p> </div> </li> <li class="ltx_item" id="S5.I1.i2" style="list-style-type:none;"> <span class="ltx_tag ltx_tag_item">•</span> <div class="ltx_para" id="S5.I1.i2.p1"> <p class="ltx_p" id="S5.I1.i2.p1.1">the difficulties encountered when merging point clouds via ICP</p> </div> </li> <li class="ltx_item" id="S5.I1.i3" style="list-style-type:none;"> <span class="ltx_tag ltx_tag_item">•</span> <div class="ltx_para" id="S5.I1.i3.p1"> <p class="ltx_p" id="S5.I1.i3.p1.1">the complexities introduced by inconsistent ground-truth data in endoscopic images.</p> </div> </li> </ul> </div> <section class="ltx_paragraph" id="S5.SS0.SSS0.Px1"> <h4 class="ltx_title ltx_title_paragraph">Relative Depth</h4> <div class="ltx_para" id="S5.SS0.SSS0.Px1.p1"> <p class="ltx_p" id="S5.SS0.SSS0.Px1.p1.1">One of the fundamental challenges in our experiments is that many monocular depth-estimation models (e.g., Depth-Anything:V2 and EndoDAC) produce only relative depth rather than absolute, physically grounded values. Although these relative maps are suitable for certain tasks (like single-frame depth ordering), they introduce ambiguity when performing multi-frame 3D reconstruction. Comparing point clouds against ground-truth surfaces requires a consistent metric scale. Since our predicted depths are typically normalized to a range like [0,255], we must attempt a retrospective “best fit” scaling to align them with the ground truth, which leads to additional complexities and potential errors.</p> </div> <div class="ltx_para" id="S5.SS0.SSS0.Px1.p2"> <p class="ltx_p" id="S5.SS0.SSS0.Px1.p2.1">Potential solutions include fine-tuning the model with the absolute depth annotations. Also, other zero-shot depth estimation techniques can be implemented, such as the work by Saxena et. al <cite class="ltx_cite ltx_citemacro_cite">[<a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#bib.bib29" title="">29</a>]</cite></p> </div> </section> <section class="ltx_paragraph" id="S5.SS0.SSS0.Px2"> <h4 class="ltx_title ltx_title_paragraph">Reconstruction</h4> <div class="ltx_para" id="S5.SS0.SSS0.Px2.p1"> <p class="ltx_p" id="S5.SS0.SSS0.Px2.p1.1">Our experiments showed that thresholding strategies for ICP significantly affect the outcome. A too-lenient threshold incorporates outliers into the alignment, while a too-strict threshold may exclude legitimate correspondences, causing the optimization to converge poorly. Different schemes were tested, and the error over time was plotted. However, each method has trade-offs between speed, stability, and final alignment accuracy.</p> </div> <div class="ltx_para" id="S5.SS0.SSS0.Px2.p2"> <p class="ltx_p" id="S5.SS0.SSS0.Px2.p2.1">We found that aligning each new frame to its immediate predecessor (neighbor ICP) sometimes reduces drift compared to aligning directly to a large accumulated global map. However, neighbor-only alignment can compound local errors over a long sequence. Conversely, global alignment can become unstable when the global map is large and contains accumulating errors or artifacts. A hybrid approach, where we periodically “re-anchor” local merges to the global map, may strike a better balance between drift and stability.</p> </div> </section> <section class="ltx_paragraph" id="S5.SS0.SSS0.Px3"> <h4 class="ltx_title ltx_title_paragraph">Ground Truth Discrepancies</h4> <div class="ltx_para" id="S5.SS0.SSS0.Px3.p1"> <p class="ltx_p" id="S5.SS0.SSS0.Px3.p1.1">In our experiments with the Hamlyn dataset, some “ground-truth” frames contained erroneous or incomplete depth annotations. We observed sudden spikes in error metrics such as RMSE or MAE coinciding with suspicious depth maps (Figure. <a class="ltx_ref" href="https://arxiv.org/html/2501.01465v1#S4.F4" title="Figure 4 ‣ Anomalies and Observations ‣ 4.1 Depth Estimation Performance evaluation ‣ 4 Results ‣ Tech Report: Divide and Conquer 3D Real-Time Reconstruction for Improved IGS"><span class="ltx_text ltx_ref_tag">4</span></a>). This highlights a broader issue: real-world medical datasets can have variable labeling quality, especially if the depth was reconstructed from partial or imperfect data. Thus, before fine-tuning or validating pipeline components, it is essential to identify and exclude frames with invalid ground truth.</p> </div> </section> </section> <section class="ltx_section" id="S6"> <h2 class="ltx_title ltx_title_section"> <span class="ltx_tag ltx_tag_section">6 </span>Conclusion</h2> <div class="ltx_para" id="S6.p1"> <p class="ltx_p" id="S6.p1.1">A modular pipeline for frame selection, depth estimation, and 3D reconstruction in endoscopic surgeries has been presented. The system can integrate new algorithms efficiently, as demonstrated by evaluations of Depth-Anything V2, EndoDAC, and multiple ICP thresholding methods. Tests on the Hamlyn dataset show promising results but also highlight core challenges: monocular depth estimations produce only relative scales, while inconsistent ground-truth data complicates alignment. Incorporating pose estimation, refining ICP thresholds, and enhancing data preprocessing is likely to yield more robust reconstructions. The current framework provides a foundation for ongoing research toward real-time, accurate 3D models in clinical endoscopy.</p> </div> <div class="ltx_pagination ltx_role_newpage"></div> </section> <section class="ltx_bibliography" id="bib"> <h2 class="ltx_title ltx_title_bibliography">References</h2> <ul class="ltx_biblist"> <li class="ltx_bibitem" id="bib.bib1"> <span class="ltx_tag ltx_role_refnum ltx_tag_bibitem">[1]</span> <span class="ltx_bibblock"> R. A. Bly, R. Ramakrishna, M. Ferreira, and K. S. Moe, “Lateral transorbital neuroendoscopic approach to the lateral cavernous sinus,” <span class="ltx_text ltx_font_italic" id="bib.bib1.1.1">Journal of neurological surgery. Part B, Skull base</span>, vol. 75, no. 1, p. 11, 2014. </span> </li> <li class="ltx_bibitem" id="bib.bib2"> <span class="ltx_tag ltx_role_refnum ltx_tag_bibitem">[2]</span> <span class="ltx_bibblock"> C. H. Snyderman, H. Pant, R. L. Carrau, D. Prevedello, P. Gardner, and A. B. Kassam, “What are the limits of endoscopic sinus surgery?: the expanded endonasal approach to the skull base,” <span class="ltx_text ltx_font_italic" id="bib.bib2.1.1">The Keio journal of medicine</span>, vol. 58, no. 3, pp. 152–160, 2009. </span> </li> <li class="ltx_bibitem" id="bib.bib3"> <span class="ltx_tag ltx_role_refnum ltx_tag_bibitem">[3]</span> <span class="ltx_bibblock"> W. E. L. Grimson, R. Kikinis, F. A. Jolesz, and P. M. Black, “Image-guided surgery,” <span class="ltx_text ltx_font_italic" id="bib.bib3.1.1">Scientific American</span>, vol. 280, no. 6, pp. 62–69, 1999. </span> </li> <li class="ltx_bibitem" id="bib.bib4"> <span class="ltx_tag ltx_role_refnum ltx_tag_bibitem">[4]</span> <span class="ltx_bibblock"> I. Ganly, S. G. Patel, B. Singh, D. H. Kraus, P. G. Bridger, G. Cantu, and A. Cheesman, “Complications of craniofacial resection for malignant tumors of the skull base: report of an International Collaborative Study,” <span class="ltx_text ltx_font_italic" id="bib.bib4.1.1">Head &amp; neck</span>, vol. 27, no. 6, pp. 445–451, 2005. </span> </li> <li class="ltx_bibitem" id="bib.bib5"> <span class="ltx_tag ltx_role_refnum ltx_tag_bibitem">[5]</span> <span class="ltx_bibblock"> A. B. Kassam, D. M. Prevedello, R. L. Carrau, C. H. Snyderman, A. Thomas, P. Gardner, and A. Zanation, “Endoscopic endonasal skull base surgery: analysis of complications in the authors’ initial 800 patients: a review,” <span class="ltx_text ltx_font_italic" id="bib.bib5.1.1">Journal of neurosurgery</span>, vol. 114, no. 6, pp. 1544–1568, 2011. </span> </li> <li class="ltx_bibitem" id="bib.bib6"> <span class="ltx_tag ltx_role_refnum ltx_tag_bibitem">[6]</span> <span class="ltx_bibblock"> Z. M. Soler, E. Wittenberg, R. J. Schlosser, J. C. Mace, and T. L. Smith, “Health state utility values in patients undergoing endoscopic sinus surgery,” <span class="ltx_text ltx_font_italic" id="bib.bib6.1.1">The Laryngoscope</span>, vol. 121, no. 12, pp. 2672–2678, 2011. </span> </li> <li class="ltx_bibitem" id="bib.bib7"> <span class="ltx_tag ltx_role_refnum ltx_tag_bibitem">[7]</span> <span class="ltx_bibblock"> Y. Li, R. Bly, M. Whipple, I. Humphreys, B. Hannaford, and K. Moe, “Use endoscope and instrument and pathway relative motion as metric for automated objective surgical skill assessment in skull base and sinus surgery,” vol. 79, p. A194, Georg Thieme Verlag KG, 2018. </span> </li> <li class="ltx_bibitem" id="bib.bib8"> <span class="ltx_tag ltx_role_refnum ltx_tag_bibitem">[8]</span> <span class="ltx_bibblock"> Y. Li, N. Konuthula, I. M. Humphreys, K. Moe, B. Hannaford, and R. Bly, “Real-time virtual intraoperative ct in endoscopic sinus surgery,” <span class="ltx_text ltx_font_italic" id="bib.bib8.1.1">International Journal of Computer Assisted Radiology and Surgery</span>, pp. 1–12, 2022. </span> </li> <li class="ltx_bibitem" id="bib.bib9"> <span class="ltx_tag ltx_role_refnum ltx_tag_bibitem">[9]</span> <span class="ltx_bibblock"> Y. Li, R. Bly, S. Akkina, F. Qin, R. C. Saxena, I. Humphreys, M. Whipple, K. Moe, and B. Hannaford, “Learning surgical motion pattern from small data in endoscopic sinus and skull base surgeries,” in <span class="ltx_text ltx_font_italic" id="bib.bib9.1.1">2021 IEEE International Conference on Robotics and Automation (ICRA)</span>, pp. 7751–7757, IEEE, 2021. </span> </li> <li class="ltx_bibitem" id="bib.bib10"> <span class="ltx_tag ltx_role_refnum ltx_tag_bibitem">[10]</span> <span class="ltx_bibblock"> R. A. Harbison, A. Berens, Y. Li, A. Law, M. Whipple, B. Hannaford, and K. Moe, “Objective signatures of endoscopic surgical performance,” in <span class="ltx_text ltx_font_italic" id="bib.bib10.1.1">Journal of Neurological Surgery Part B: Skull Base</span>, vol. 77, p. A120, 2016. </span> </li> <li class="ltx_bibitem" id="bib.bib11"> <span class="ltx_tag ltx_role_refnum ltx_tag_bibitem">[11]</span> <span class="ltx_bibblock"> D. Burschka, M. Li, M. Ishii, R. H. Taylor, and G. D. Hager, “Scale-invariant registration of monocular endoscopic images to CT-scans for sinus surgery,” <span class="ltx_text ltx_font_italic" id="bib.bib11.1.1">Medical Image Analysis</span>, vol. 9, no. 5, pp. 413–426, 2005. </span> </li> <li class="ltx_bibitem" id="bib.bib12"> <span class="ltx_tag ltx_role_refnum ltx_tag_bibitem">[12]</span> <span class="ltx_bibblock"> D. W. Kennedy, S. J. Zinreich, A. E. Rosenbaum, and M. E. Johns, “Functional endoscopic sinus surgery: theory and diagnostic evaluation,” <span class="ltx_text ltx_font_italic" id="bib.bib12.1.1">Archives of Otolaryngology</span>, vol. 111, no. 9, pp. 576–582, 1985. </span> </li> <li class="ltx_bibitem" id="bib.bib13"> <span class="ltx_tag ltx_role_refnum ltx_tag_bibitem">[13]</span> <span class="ltx_bibblock"> R. C. Bolles, H. H. Baker, and D. H. Marimont, “Epipolar-plane image analysis: An approach to determining structure from motion,” <span class="ltx_text ltx_font_italic" id="bib.bib13.1.1">International journal of computer vision</span>, vol. 1, no. 1, pp. 7–55, 1987. </span> </li> <li class="ltx_bibitem" id="bib.bib14"> <span class="ltx_tag ltx_role_refnum ltx_tag_bibitem">[14]</span> <span class="ltx_bibblock"> E. Prados and O. Faugeras, “Shape from shading,” <span class="ltx_text ltx_font_italic" id="bib.bib14.1.1">Handbook of mathematical models in computer vision</span>, pp. 375–388, 2006. </span> </li> <li class="ltx_bibitem" id="bib.bib15"> <span class="ltx_tag ltx_role_refnum ltx_tag_bibitem">[15]</span> <span class="ltx_bibblock"> A. J. Davison, I. D. Reid, N. D. Molton, and O. Stasse, “Monoslam: Real-time single camera slam,” <span class="ltx_text ltx_font_italic" id="bib.bib15.1.1">IEEE transactions on pattern analysis and machine intelligence</span>, vol. 29, no. 6, pp. 1052–1067, 2007. </span> </li> <li class="ltx_bibitem" id="bib.bib16"> <span class="ltx_tag ltx_role_refnum ltx_tag_bibitem">[16]</span> <span class="ltx_bibblock"> Y. Lee, “Three-dimensional dense reconstruction: A review of algorithms and datasets,” <span class="ltx_text ltx_font_italic" id="bib.bib16.1.1">Sensors</span>, vol. 24, no. 18, p. 5861, 2024. </span> </li> <li class="ltx_bibitem" id="bib.bib17"> <span class="ltx_tag ltx_role_refnum ltx_tag_bibitem">[17]</span> <span class="ltx_bibblock"> D. Recasens, J. Lamarca, J. M. Fácil, J. Montiel, and J. Civera, “Endo-depth-and-motion: Reconstruction and tracking in endoscopic videos using depth networks and photometric constraints,” <span class="ltx_text ltx_font_italic" id="bib.bib17.1.1">IEEE Robotics and Automation Letters</span>, vol. 6, no. 4, pp. 7225–7232, 2021. </span> </li> <li class="ltx_bibitem" id="bib.bib18"> <span class="ltx_tag ltx_role_refnum ltx_tag_bibitem">[18]</span> <span class="ltx_bibblock"> S. Su, Q. Yan, Y. Zhu, C. Zhang, X. Ge, J. Sun, and Y. Zhang, “Blindly assess image quality in the wild guided by a self-adaptive hyper network,” in <span class="ltx_text ltx_font_italic" id="bib.bib18.1.1">IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)</span>, 6 2020. </span> </li> <li class="ltx_bibitem" id="bib.bib19"> <span class="ltx_tag ltx_role_refnum ltx_tag_bibitem">[19]</span> <span class="ltx_bibblock"> L. Yang, B. Kang, Z. Huang, Z. Zhao, X. Xu, J. Feng, and H. Zhao, “Depth Anything V2,” 2024. </span> </li> <li class="ltx_bibitem" id="bib.bib20"> <span class="ltx_tag ltx_role_refnum ltx_tag_bibitem">[20]</span> <span class="ltx_bibblock"> L. Yang, B. Kang, Z. Huang, X. Xu, J. Feng, and H. Zhao, “Depth Anything: Unleashing the Power of Large-Scale Unlabeled Data,” Apr. 2024. </span> <span class="ltx_bibblock">arXiv:2401.10891 [cs]. </span> </li> <li class="ltx_bibitem" id="bib.bib21"> <span class="ltx_tag ltx_role_refnum ltx_tag_bibitem">[21]</span> <span class="ltx_bibblock"> B. Cui, M. Islam, L. Bai, A. Wang, and H. Ren, “EndoDAC: Efficient Adapting Foundation Model for Self-Supervised Depth Estimation from Any Endoscopic Camera,” 2024. </span> </li> <li class="ltx_bibitem" id="bib.bib22"> <span class="ltx_tag ltx_role_refnum ltx_tag_bibitem">[22]</span> <span class="ltx_bibblock"> K. S. Arun, T. S. Huang, and S. D. Blostein, “Least-Squares Fitting of Two 3-D Point Sets,” <span class="ltx_text ltx_font_italic" id="bib.bib22.1.1">IEEE Transactions on Pattern Analysis and Machine Intelligence</span>, vol. PAMI-9, pp. 698–700, Sept. 1987. </span> </li> <li class="ltx_bibitem" id="bib.bib23"> <span class="ltx_tag ltx_role_refnum ltx_tag_bibitem">[23]</span> <span class="ltx_bibblock"> P. Besl and N. D. McKay, “A method for registration of 3-d shapes,” <span class="ltx_text ltx_font_italic" id="bib.bib23.1.1">IEEE Transactions on Pattern Analysis and Machine Intelligence</span>, vol. 14, no. 2, pp. 239–256, 1992. </span> </li> <li class="ltx_bibitem" id="bib.bib24"> <span class="ltx_tag ltx_role_refnum ltx_tag_bibitem">[24]</span> <span class="ltx_bibblock"> Q.-Y. Zhou, J. Park, and V. Koltun, “Open3D: A Modern Library for 3D Data Processing,” Jan. 2018. </span> <span class="ltx_bibblock">arXiv:1801.09847. </span> </li> <li class="ltx_bibitem" id="bib.bib25"> <span class="ltx_tag ltx_role_refnum ltx_tag_bibitem">[25]</span> <span class="ltx_bibblock"> P. Virtanen, R. Gommers, T. E. Oliphant, M. Haberland, T. Reddy, D. Cournapeau, E. Burovski, P. Peterson, W. Weckesser, J. Bright, S. J. v. d. Walt, M. Brett, J. Wilson, K. J. Millman, N. Mayorov, A. R. J. Nelson, E. Jones, R. Kern, E. Larson, C. J. Carey, . Polat, Y. Feng, E. W. Moore, J. VanderPlas, D. Laxalde, J. Perktold, R. Cimrman, I. Henriksen, E. A. Quintero, C. R. Harris, A. M. Archibald, A. H. Ribeiro, F. Pedregosa, P. v. Mulbregt, and S. . . Contributors, “SciPy 1.0–Fundamental Algorithms for Scientific Computing in Python,” July 2019. </span> <span class="ltx_bibblock">arXiv:1907.10121. </span> </li> <li class="ltx_bibitem" id="bib.bib26"> <span class="ltx_tag ltx_role_refnum ltx_tag_bibitem">[26]</span> <span class="ltx_bibblock"> Z. Wang, A. Bovik, H. Sheikh, and E. Simoncelli, “Image quality assessment: from error visibility to structural similarity,” <span class="ltx_text ltx_font_italic" id="bib.bib26.1.1">IEEE Transactions on Image Processing</span>, vol. 13, no. 4, pp. 600–612, 2004. </span> </li> <li class="ltx_bibitem" id="bib.bib27"> <span class="ltx_tag ltx_role_refnum ltx_tag_bibitem">[27]</span> <span class="ltx_bibblock"> D. Eigen, C. Puhrsch, and R. Fergus, “Depth Map Prediction from a Single Image using a Multi-Scale Deep Network,” </span> </li> <li class="ltx_bibitem" id="bib.bib28"> <span class="ltx_tag ltx_role_refnum ltx_tag_bibitem">[28]</span> <span class="ltx_bibblock"> S. van der Walt, J. L. Schönberger, J. Nunez-Iglesias, F. Boulogne, J. D. Warner, N. Yager, E. Gouillart, T. Yu, and t. s.-i. contributors, “scikit-image: image processing in Python,” <span class="ltx_text ltx_font_italic" id="bib.bib28.1.1">PeerJ</span>, vol. 2, p. e453, June 2014. </span> </li> <li class="ltx_bibitem" id="bib.bib29"> <span class="ltx_tag ltx_role_refnum ltx_tag_bibitem">[29]</span> <span class="ltx_bibblock"> S. Saxena, J. Hur, C. Herrmann, D. Sun, and D. J. Fleet, “Zero-shot metric depth with a field-of-view conditioned diffusion model,” 2023. </span> </li> </ul> </section> </article> </div> <footer class="ltx_page_footer"> <div class="ltx_page_logo">Generated on Tue Dec 31 18:39:25 2024 by <a class="ltx_LaTeXML_logo" href="http://dlmf.nist.gov/LaTeXML/"><span style="letter-spacing:-0.2em; margin-right:0.1em;">L<span class="ltx_font_smallcaps" style="position:relative; bottom:2.2pt;">a</span>T<span class="ltx_font_smallcaps" style="font-size:120%;position:relative; bottom:-0.2ex;">e</span></span><span style="font-size:90%; position:relative; bottom:-0.2ex;">XML</span><img alt="Mascot Sammy" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAAOCAYAAAD5YeaVAAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9wKExQZLWTEaOUAAAAddEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIFRoZSBHSU1Q72QlbgAAAdpJREFUKM9tkL+L2nAARz9fPZNCKFapUn8kyI0e4iRHSR1Kb8ng0lJw6FYHFwv2LwhOpcWxTjeUunYqOmqd6hEoRDhtDWdA8ApRYsSUCDHNt5ul13vz4w0vWCgUnnEc975arX6ORqN3VqtVZbfbTQC4uEHANM3jSqXymFI6yWazP2KxWAXAL9zCUa1Wy2tXVxheKA9YNoR8Pt+aTqe4FVVVvz05O6MBhqUIBGk8Hn8HAOVy+T+XLJfLS4ZhTiRJgqIoVBRFIoric47jPnmeB1mW/9rr9ZpSSn3Lsmir1fJZlqWlUonKsvwWwD8ymc/nXwVBeLjf7xEKhdBut9Hr9WgmkyGEkJwsy5eHG5vN5g0AKIoCAEgkEkin0wQAfN9/cXPdheu6P33fBwB4ngcAcByHJpPJl+fn54mD3Gg0NrquXxeLRQAAwzAYj8cwTZPwPH9/sVg8PXweDAauqqr2cDjEer1GJBLBZDJBs9mE4zjwfZ85lAGg2+06hmGgXq+j3+/DsixYlgVN03a9Xu8jgCNCyIegIAgx13Vfd7vdu+FweG8YRkjXdWy329+dTgeSJD3ieZ7RNO0VAXAPwDEAO5VKndi2fWrb9jWl9Esul6PZbDY9Go1OZ7PZ9z/lyuD3OozU2wAAAABJRU5ErkJggg=="/></a> </div></footer> </div> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10