{"id":22,"date":"2025-02-08T03:03:42","date_gmt":"2025-02-08T03:03:42","guid":{"rendered":"https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/?page_id=22"},"modified":"2025-12-11T04:28:35","modified_gmt":"2025-12-11T04:28:35","slug":"system-performance","status":"publish","type":"page","link":"https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/system-performance\/","title":{"rendered":"System Performance"},"content":{"rendered":"\n<div class=\"wp-block-group alignfull has-accent-2-background-color has-background has-global-padding is-layout-constrained wp-container-core-group-is-layout-669513ed wp-block-group-is-layout-constrained\" style=\"margin-top:0;margin-bottom:0;padding-top:var(--wp--preset--spacing--50);padding-right:var(--wp--preset--spacing--50);padding-bottom:var(--wp--preset--spacing--50);padding-left:var(--wp--preset--spacing--50)\">\n<h2 class=\"wp-block-heading\">Spring System Performance<\/h2>\n\n\n\n<p>For the Spring Semester, our team set a target to complete the depth estimation, odometry, and mapping subsystems and all system-level requirements associated with those subsystems. The complete list of targeted requirements is shown in the table below.<\/p>\n\n\n\n<figure class=\"wp-block-table alignwide is-style-regular\" style=\"padding-top:var(--wp--preset--spacing--10);padding-bottom:var(--wp--preset--spacing--10)\"><table><thead><tr><th>Requirement<\/th><th>Status<\/th><th>Subsystem<\/th><\/tr><\/thead><tbody><tr><td><strong>PR.M.1<\/strong> Sense the environment farther than 1m away from itself.<br><strong>PR.M.2<\/strong> Sense the environment closer than 5m away from itself.<\/td><td>Passed<\/td><td>Depth Estimation<\/td><\/tr><tr><td><strong>PR.M.3<\/strong> Perform odometry with a Relative Path Error &lt;2m.<\/td><td>Passed<\/td><td>Odometry<\/td><\/tr><tr><td><strong>PR.D.3<\/strong> Updates the dense-depth map visualization at minimum 0.2Hz.<br><strong>PR.D.4<\/strong> Chamfer distance is less than 5m from ground truth point cloud.<\/td><td>Passed<\/td><td>Mapping<\/td><\/tr><tr><td><strong>PR.M.6<\/strong> Communicate with an operator with a maximum latency of 500ms.<br><strong>PR.M.7<\/strong> Communicate with an operator within 25m.<\/td><td>Passed<\/td><td>Networking<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>By the end of spring, the overall system is comprised of the Phoenix Pro drone and the Ground Control Station (GCS). Through a Local Area Network, the drone wirelessly transmits raw sensor feeds as well as the predicted depth, odometry, and global map to the GCS, where operators can view the visualized data in real time. All compute is executed onboard the drone.<\/p>\n\n\n\n<p>We demonstrated these capabilities at SVD through the following demonstrations:<\/p>\n\n\n\n<figure class=\"wp-block-table alignwide\" style=\"padding-top:var(--wp--preset--spacing--10);padding-bottom:var(--wp--preset--spacing--10)\"><table class=\"has-fixed-layout\"><thead><tr><th>Procedure<\/th><th>Success criteria<\/th><th>Result<\/th><\/tr><\/thead><tbody><tr><td>The operator flies the drone around a building that is emitting thick smoke. The drone relays the output of the sensors to the ground control station in real-time.<\/td><td><em>Flight verification:<\/em> Continuous flight for greater than 3 minutes<br><em>Networking verification: <\/em>Communication Latency &lt;5s (visual verification)<\/td><td>Flew outside continuously around smoke for 3 min 40 secs.<br>Latency on average for all communication was less than 500ms.<\/td><\/tr><tr><td>An indoor environment is filled with dense smoke, and the drone is navigated in the indoor environment. The drone localizes itself in the environment and recovers dense metric depth through dense smoke and darkness. The robot then transmits the sensor feeds and output of the algorithms to the ground control station.<\/td><td><em>Perception verification:<\/em> Sense the environment from 1m to 5m<br><em>Depth estimation verification:<\/em> Dense depth updates should happen at 0.2Hz<br><em>Depth estimation verification: <\/em>Chamfer distance less than 20cm.<br><em>Odometry verification: <\/em>Relative Path Error &lt; 2m<br>when compared to Visual SLAM ground truth.<br><em>Networking verification: <\/em>Communication Latency &lt;5s (visual verification)<\/td><td>Perceived through 0.5m to 20m.<br>Dense depth updates come in at 0.2Hz.<br>Chamfer distance less than 20cm.<br>Relative Path Error was 2cm for easier trajectories and 8cm for the SVD complex indoors trajectory.<br>Latency on average for all communication was less than 500ms.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<div class=\"wp-block-group alignwide is-nowrap is-layout-flex wp-container-core-group-is-layout-6c531013 wp-block-group-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"576\" src=\"https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-content\/uploads\/sites\/89\/2025\/05\/7-2-1024x576.png\" alt=\"\" class=\"wp-image-217\" srcset=\"https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-content\/uploads\/sites\/89\/2025\/05\/7-2-1024x576.png 1024w, https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-content\/uploads\/sites\/89\/2025\/05\/7-2-300x169.png 300w, https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-content\/uploads\/sites\/89\/2025\/05\/7-2-768x432.png 768w, https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-content\/uploads\/sites\/89\/2025\/05\/7-2-1536x864.png 1536w, https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-content\/uploads\/sites\/89\/2025\/05\/7-2.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"576\" src=\"https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-content\/uploads\/sites\/89\/2025\/05\/9-1-1024x576.png\" alt=\"\" class=\"wp-image-218\" srcset=\"https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-content\/uploads\/sites\/89\/2025\/05\/9-1-1024x576.png 1024w, https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-content\/uploads\/sites\/89\/2025\/05\/9-1-300x169.png 300w, https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-content\/uploads\/sites\/89\/2025\/05\/9-1-768x432.png 768w, https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-content\/uploads\/sites\/89\/2025\/05\/9-1-1536x864.png 1536w, https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-content\/uploads\/sites\/89\/2025\/05\/9-1.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-group alignfull has-global-padding is-layout-constrained wp-container-core-group-is-layout-f611be13 wp-block-group-is-layout-constrained\" style=\"padding-top:var(--wp--preset--spacing--50);padding-right:var(--wp--preset--spacing--50);padding-bottom:var(--wp--preset--spacing--50);padding-left:var(--wp--preset--spacing--50)\">\n<h2 class=\"wp-block-heading\">Fall System Performance<\/h2>\n\n\n\n<p>For the fall semester, our team set a target to show the system working in both of its use cases. This meant demonstrating the complete mapping, PoI detection, networking and UI, and autonomous flight subsystems and all system-level requirements associated with those subsystems. The complete list of targeted requirements is shown in the table below.<\/p>\n\n\n\n<p>Although we demo&#8217;ed mapping in the spring semester and passed the requirements, one thing we did not achieve was odometry at >10Hz. In order to achieve that, we moved from a learning based VO algorithm to classical VIO. This allowed us to integrate the odometry with the flight controller for autonomy. So in order to regression test, we had to ensure our odometry and mapping performance requirements were still met, which they were. <\/p>\n\n\n\n<figure class=\"wp-block-table alignwide is-style-regular\" style=\"padding-top:var(--wp--preset--spacing--10);padding-bottom:var(--wp--preset--spacing--10)\"><table><thead><tr><th>Requirement<\/th><th>Status<\/th><th>Subsystem<\/th><\/tr><\/thead><tbody><tr><td><strong>PR.M.4<\/strong> Detect humans in one pose<br><strong>PR.M.5<\/strong> 80% accuracy given 80% visibility<br><strong>PR.D.1<\/strong> Localize POI within 5m of ground truth or in the correct room 50% of the time, whichever is applicable<\/td><td>Passed<\/td><td>PoI Detection<\/td><\/tr><tr><td><strong>FR.M.4<\/strong> Teleoperation in atleast altitude hold mode and hover in position hold mode<br><strong>PR.D.2<\/strong> Travel at 10 cm\/s<br><strong>PR.D.5<\/strong> Any commanded behavior occurs within 2s on the drone<\/td><td>Passed<\/td><td>Autonomy &amp; Flight<\/td><\/tr><tr><td><strong>FR.M.6<\/strong> Communicate with an operator<br><strong>PR.M.6<\/strong> Latency &lt; 500ms <br><strong>PR.M.7<\/strong> Range \u2264 25m<\/td><td>Passed<\/td><td>Networking &amp; UI<\/td><\/tr><tr><td><strong>FR.D.3<\/strong> Compute onboard<br><strong>PR.D.7<\/strong> 75% or more algorithms must execute on the onboard Orin module<\/td><td>Passed<\/td><td>Real-time Performance<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>We tested these requirements through the following demonstrations:<\/p>\n\n\n\n<figure class=\"wp-block-table alignwide\" style=\"padding-top:var(--wp--preset--spacing--10);padding-bottom:var(--wp--preset--spacing--10)\"><table class=\"has-fixed-layout\"><thead><tr><th>Procedure<\/th><th>Success criteria<\/th><th>Result<\/th><\/tr><\/thead><tbody><tr><td>The drone autonomously hovers and lands in thick smoke. The operator can move the drone around without cognitive load. The drone relays the output of the sensors to the ground control station in real-time.<\/td><td><em>Flight verification:<\/em> Continuous flight for greater than 3 minutes<br><em>Networking verification: <\/em>Communication Latency &lt;5s (visual verification)<br><em>Autonomy verification:<\/em> Minimum or no intervention from operator during hold or land<\/td><td>&#8211; Flew outside continuously around smoke for 3 min 40 secs.<br>&#8211; Latency on average for all communication was less than 500ms.<br>&#8211; No operation intervention was needed<\/td><\/tr><tr><td>An indoor environment is filled with dense smoke, and the drone is navigated in the indoor environment. The drone localizes itself in the environment and recovers dense metric depth through dense smoke and darkness. The robot then transmits the sensor feeds and output of the algorithms to the ground control station.<\/td><td><em>Perception verification:<\/em> Sense the environment from 1m to 5m<br><em>Depth estimation verification:<\/em> Dense depth updates should happen at 0.2Hz<br><em>Depth estimation verification: <\/em>Chamfer distance less than 20cm.<br><em>Odometry verification: <\/em>Relative Path Error &lt; 2m<br>when compared to Visual SLAM ground truth.<br><em>Networking verification: <\/em>Communication Latency &lt;5s (visual verification)<br><em>PoI Detection verification: <\/em>Detect 80% humans in the scene when atleast 80% visible.<\/td><td>-Perceived through 0.5m to 20m.<br>&#8211; Dense depth updates come in at 0.2Hz.<br>&#8211; Chamfer distance less than 20cm.<br>&#8211; Relative Path Error was 2cm for complex multi-room FVD path<br>&#8211; Odometry ran at 45 Hz on average.<br>&#8211; Latency on average for all communication was less than 500ms.<br>&#8211; Detected 6 out of 6 humans in the environment even with partial visibility<\/td><\/tr><\/tbody><\/table><\/figure>\n<\/div>\n\n\n\n<p class=\"has-text-align-center has-large-font-size\"><strong><span style=\"text-decoration: underline;\">Final System Results<\/span><\/strong><\/p>\n\n\n\n<div class=\"wp-block-group alignwide is-nowrap is-layout-flex wp-container-core-group-is-layout-6c531013 wp-block-group-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"576\" src=\"http:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-content\/uploads\/sites\/89\/2025\/12\/odom_results-1024x576.png\" alt=\"\" class=\"wp-image-294\" srcset=\"https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-content\/uploads\/sites\/89\/2025\/12\/odom_results-1024x576.png 1024w, https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-content\/uploads\/sites\/89\/2025\/12\/odom_results-300x169.png 300w, https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-content\/uploads\/sites\/89\/2025\/12\/odom_results-768x432.png 768w, https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-content\/uploads\/sites\/89\/2025\/12\/odom_results-1536x864.png 1536w, https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-content\/uploads\/sites\/89\/2025\/12\/odom_results.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Predicted vs Ground truth odometry. Ground truth collected in no smoke with RGB camera. <\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"576\" src=\"http:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-content\/uploads\/sites\/89\/2025\/12\/odom_results_ffc-1024x576.png\" alt=\"\" class=\"wp-image-295\" srcset=\"https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-content\/uploads\/sites\/89\/2025\/12\/odom_results_ffc-1024x576.png 1024w, https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-content\/uploads\/sites\/89\/2025\/12\/odom_results_ffc-300x169.png 300w, https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-content\/uploads\/sites\/89\/2025\/12\/odom_results_ffc-768x432.png 768w, https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-content\/uploads\/sites\/89\/2025\/12\/odom_results_ffc-1536x864.png 1536w, https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-content\/uploads\/sites\/89\/2025\/12\/odom_results_ffc.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Predicted odometry during simultaneous FFC (camera shutters closed at the same time, i.e., walking blind)<\/figcaption><\/figure>\n<\/div>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1920\" height=\"1080\" src=\"https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-content\/uploads\/sites\/89\/2025\/12\/human_detection.png\" alt=\"\" class=\"wp-image-296\" srcset=\"https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-content\/uploads\/sites\/89\/2025\/12\/human_detection.png 1920w, https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-content\/uploads\/sites\/89\/2025\/12\/human_detection-300x169.png 300w, https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-content\/uploads\/sites\/89\/2025\/12\/human_detection-1024x576.png 1024w, https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-content\/uploads\/sites\/89\/2025\/12\/human_detection-768x432.png 768w, https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-content\/uploads\/sites\/89\/2025\/12\/human_detection-1536x864.png 1536w\" sizes=\"auto, (max-width: 1920px) 100vw, 1920px\" \/><figcaption class=\"wp-element-caption\">Detecting firefighters during a real residential fire. Data collected using Smores payload<\/figcaption><\/figure>\n\n\n\n<div class=\"wp-block-group alignwide has-global-padding is-layout-constrained wp-block-group-is-layout-constrained\">\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"758\" src=\"http:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-content\/uploads\/sites\/89\/2025\/12\/Annotated-UI-1024x758.png\" alt=\"\" class=\"wp-image-301\" srcset=\"https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-content\/uploads\/sites\/89\/2025\/12\/Annotated-UI-1024x758.png 1024w, https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-content\/uploads\/sites\/89\/2025\/12\/Annotated-UI-300x222.png 300w, https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-content\/uploads\/sites\/89\/2025\/12\/Annotated-UI-768x568.png 768w, https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-content\/uploads\/sites\/89\/2025\/12\/Annotated-UI-1536x1137.png 1536w, https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-content\/uploads\/sites\/89\/2025\/12\/Annotated-UI.png 1812w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Displayed UI with results from all subsystems shown in real-time to the base station through wireless transmission.<\/figcaption><\/figure>\n\n\n\n<p><strong>Thermal Depth Estimation:<\/strong><\/p>\n<\/div>\n\n\n\n<p align=\"center\"><iframe loading=\"lazy\" width=\"560\" height=\"315\" src=\"https:\/\/www.youtube.com\/embed\/kh6iXWoaE5E?si=AYTvIQE_ZFUPPabI\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe><\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Flight Autonomy:<\/strong><\/p>\n\n\n\n<p align=\"center\"><iframe loading=\"lazy\" width=\"560\" height=\"315\" src=\"https:\/\/www.youtube.com\/embed\/CZxMgJv7pfk?si=y7oOL1xonhxzk25I\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Spring System Performance For the Spring Semester, our team set a target to complete the depth estimation, odometry, and mapping subsystems and all system-level requirements associated with those subsystems. The complete list of targeted requirements is shown in the table below. Requirement Status Subsystem PR.M.1 Sense the environment farther than 1m away from itself.PR.M.2 Sense [&hellip;]<\/p>\n","protected":false},"author":419,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-22","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-json\/wp\/v2\/pages\/22","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-json\/wp\/v2\/users\/419"}],"replies":[{"embeddable":true,"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-json\/wp\/v2\/comments?post=22"}],"version-history":[{"count":8,"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-json\/wp\/v2\/pages\/22\/revisions"}],"predecessor-version":[{"id":306,"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-json\/wp\/v2\/pages\/22\/revisions\/306"}],"wp:attachment":[{"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2025teamg\/wp-json\/wp\/v2\/media?parent=22"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}