{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":[" "]},"docs":[{"location":"pages/release_note/","title":"Release notes","text":""},{"location":"pages/release_note/#000","title":"<code>0.0.0</code>","text":"<ul> <li>2025-09-05</li> <li><code>[\uae30\ub2a5 \ucd94\uac00]</code><ul> <li>GlassMonitoringEngine\uc744 \ud3ec\ud568\ud55c \ucd5c\uace0 \uae30\ub2a5 \ubc30\ud3ec</li> </ul> </li> </ul>"},{"location":"pages/saigetoolkit/","title":"Version","text":"<p>\uc0ac\uc6a9\ud558\uace0 \uc788\ub294 SaigeToolkit\uc758 \ubc84\uc804\uc740 \ub2e4\uc74c\uacfc \uac19\uc2b5\ub2c8\ub2e4.</p>"},{"location":"pages/saigetoolkit/#SaigeToolkit.version.__VERSION__","title":"<code>SaigeToolkit.version.__VERSION__ = Version(2, 6, 10)</code>  <code>module-attribute</code>","text":""},{"location":"pages/api/GlassMonitoringEngine/","title":"Inference","text":""},{"location":"pages/api/GlassMonitoringEngine/#monitoring.GlassMonitoringEngine","title":"<code>monitoring.GlassMonitoringEngine</code>","text":"<p>KCC\uae00\ub77c\uc2a4 \uce58\uc218\uce21\uc815\uc744 \uc704\ud55c GlassMonitoringEngine class \uc785\ub2c8\ub2e4.</p> Usage <p>demo/demo_monitor.py \ucc38\uace0</p>"},{"location":"pages/api/GlassMonitoringEngine/#monitoring.GlassMonitoringEngine.build","title":"<code>build(config)</code>  <code>classmethod</code>","text":"<p>API \uc778\uc2a4\ud134\uc2a4\ub97c \uc0dd\uc131\ud569\ub2c8\ub2e4.</p> <p>Parameters:</p> Name Type Description Default <code>config</code> <code>dict</code> <p>\ubaa8\ub2c8\ud130\ub9c1\ub9c1 \uc5d4\uc9c4 \ube4c\ub4dc\ub97c \uc704\ud55c \uc124\uc815 \ub515\uc154\ub108\ub9ac\uc785\ub2c8\ub2e4. <pre><code>{\n    \"segmentation\": {\n        \"checkpoint_path\": str, # \uc138\uadf8\uba58\ud14c\uc774\uc158 \ubaa8\ub378 \uccb4\ud06c\ud3ec\uc778\ud2b8 \uacbd\ub85c\n        \"password\": str, # \uc138\uadf8\uba58\ud14c\uc774\uc158 \ubaa8\ub378 \uccb4\ud06c\ud3ec\uc778\ud2b8 \ud328\uc2a4\uc6cc\ub4dc\n        \"device\": str, # \uc138\uadf8\uba58\ud14c\uc774\uc158 \ubaa8\ub378 \uccb4\ud06c\ud3ec\uc778\ud2b8 \ub514\ubc14\uc774\uc2a4\n        \"inference_options\": dict | None, # \uc138\uadf8\uba58\ud14c\uc774\uc158 \ubaa8\ub378 \uc778\ud37c\ub7f0\uc2a4 \uc635\uc158. \uae30\ubcf8\uac12\uc740 None.\n    }\n}\n</code></pre></p> required <p>Returns:     GlassMonitoringInferenceHandler: \ube4c\ub4dc\uac00 \uc644\ub8cc\ub41c GlassMonitoringInferenceHandler \uc778\uc2a4\ud134\uc2a4.</p>"},{"location":"pages/api/GlassMonitoringEngine/#monitoring.GlassMonitoringEngine.process_frame","title":"<code>process_frame(frame)</code>","text":"<p>\ub2e8\uc77c \ud504\ub808\uc784\uc744 \uc785\ub825\uc73c\ub85c \ubc1b\uc544 \ubaa8\ub2c8\ud130\ub9c1 \uacb0\uacfc\ub97c \ubc18\ud658\ud569\ub2c8\ub2e4.</p> <p>Parameters:</p> Name Type Description Default <code>frame</code> <code>ndarray</code> <p>\uc785\ub825 \uc774\ubbf8\uc9c0 (RGB, shape: (H, W, 3)).</p> required <p>Returns:</p> Name Type Description <code>dict</code> <code>dict</code> <p>\ubaa8\ub2c8\ud130\ub9c1 \uacb0\uacfc\uac00 \ub2f4\uae34 \ub515\uc154\ub108\ub9ac\uc785\ub2c8\ub2e4. \uc608\uc2dc\ub294 \uc544\ub798\uc640 \uac19\uc2b5\ub2c8\ub2e4. <pre><code>{\n    \"distance\": float,                      # Ribbon Edge(ribbon_point)-Knurl Edge(knurl_point) \uac04 \uc9c1\uc120 \uac70\ub9ac(mm). \uc2e4\ud328 \uc2dc 0.0\n    \"ribbon_point\": dict | None,            # Ribbon Edge \uae30\uc900\uc810 \uc88c\ud45c {\"x\": int, \"y\": int}. \uc2e4\ud328 \uc2dc None\n    \"knurl_point\": dict | None,             # Knurl Edge \uae30\uc900\uc810 \uc88c\ud45c {\"x\": int, \"y\": int}. \uc2e4\ud328 \uc2dc None\n    \"adaptive_valid_region\": dict | None,   # \uc801\uc751\ud615 \uc720\ud6a8\uc601\uc5ed {\"mask\": np.ndarray, \"contour\": np.ndarray | None}. \uc2e4\ud328 \uc2dc None\n    \"score\": float,                         # \uc801\uc751\ud615 \uc720\ud6a8\uc601\uc5ed \uc801\ud569\ub3c4 \uc810\uc218 [0,1], \uc5c6\uc73c\uba74 -1.0\n    \"skeleton\": np.ndarray | None,          # Skeleton \uc88c\ud45c (N,2). \uc2e4\ud328 \uc2dc None\n    \"time\": dict,                           # \uac01 \ub2e8\uacc4\ubcc4 \uc218\ud589 \uc2dc\uac04.\n                                            # \"segmentation\": \uc138\uadf8\uba58\ud14c\uc774\uc158 \ubaa8\ub378 \uc218\ud589 \uc2dc\uac04 (ms)\n                                            # \"distance_measurement\": \uac70\ub9ac \uce21\uc815 \uc2dc\uac04 (ms)\n                                            # \"adaptive_region_monitor\": \uc801\uc751\ud615 \uc720\ud6a8\uc601\uc5ed \ubaa8\ub2c8\ud130\ub9c1 \uc2dc\uac04 (ms)\n    \"error_code\": int,                      # \uc608\uc678 \ubc1c\uc0dd \uc2dc \uc5d0\ub7ec \ucf54\ub4dc. \uc815\uc0c1 \uc2dc 0\n    \"error_message\": str,                   # \uc608\uc678 \ubc1c\uc0dd \uc2dc \uc5d0\ub7ec \uba54\uc2dc\uc9c0\n}\n\n# default output. \uc815\uc0c1 \ucc98\ub9ac\ub418\uc9c0 \uc54a\uc740 \uacbd\uc6b0 \uc544\ub798\uc758 \uae30\ubcf8\uac12\uc744 \ubc18\ud658\ud569\ub2c8\ub2e4.\n{\n    \"distance\": 0.0,\n    \"ribbon_point\": None,\n    \"knurl_point\": None,\n    \"adaptive_valid_region\": None,\n    \"score\": -1.0,\n    \"skeleton\": None,\n    \"time\": {},\n    \"error_code\": 0,\n    \"error_message\": \"\",\n}\n</code></pre></p> Note <p>[\uc5d0\ub7ec \ud578\ub4e4\ub9c1] \ubaa8\ub2c8\ud130\ub9c1 \uc911\uc5d0 \uc5d0\ub7ec\ub85c \uc778\ud558\uc5ec \ud30c\uc774\uc36c \ubaa8\ub4c8\uc774 \uc885\ub8cc\ub418\ub294 \uac83\uc744 \ubc29\uc9c0\ud558\uae30 \uc704\ud558\uc5ec process_frame \uba54\uc18c\ub4dc\ub294 error_code\ub97c \ud56d\uc0c1 0\uc73c\ub85c \ubc18\ud658\ud569\ub2c8\ub2e4. \uc5d0\ub7ec\uac00 \ubc1c\uc0dd\ud558\ub294 \uacbd\uc6b0, \uae30\ubcf8\uac12(\uac70\ub9ac=0.0, \uc810\uc218=-1.0 \ub4f1)\uc73c\ub85c \ucc44\uc6cc\uc9c4 \ub515\uc154\ub108\ub9ac\ub97c \ubc18\ud658\ud558\uba70 \ub515\uc154\ub108\ub9ac \ub0b4\uc5d0 \"error_code\" \ud0a4\uc5d0 \ud574\ub2f9 \uc5d0\ub7ec \ucf54\ub4dc\ub97c \uc124\uc815\ud569\ub2c8\ub2e4. \ub610\ud55c, \"error_message\" \ud0a4\uc5d0 \ud574\ub2f9 \uc5d0\ub7ec \uba54\uc2dc\uc9c0\ub97c \uc124\uc815\ud569\ub2c8\ub2e4. Unknown Error \uc2dc \uc5d0\ub7ec \uba54\uc2dc\uc9c0\ub294 \uc2a4\ud0dd \ud2b8\ub808\uc774\uc2a4\ub97c \ubc18\ud658\ud569\ub2c8\ub2e4.</p> <p>[\uc608\uce21 \uc2e4\ud328\uc758 \uacbd\uc6b0] distance \uce21\uc815\uc5d0 \uc2e4\ud328\ud55c \uacbd\uc6b0, log.warning\uc5d0 \uad00\ub828 \uba54\uc2dc\uc9c0\uac00 \ucd9c\ub825\ub418\uba70 distance, ribbon_point, knurl_point\uc740 \uc774\uc804 \ud504\ub808\uc784\uc758 \uc131\uacf5 \uacb0\uacfc\ub97c \uadf8\ub300\ub85c \ubc18\ud658\ud558\uba70, score\uc640 skeleton\uc740 \uae30\ubcf8 \uac12\uc744, adaptive_valid_region\uc740 \uacfc\uac70 \ud504\ub808\uc784\uc758 \uacb0\uacfc\ub97c \ud1a0\ub300\ub85c \ucd94\ub860\ub41c \uac12\uc744 \ubc18\ud658\ud569\ub2c8\ub2e4.</p>"}]}