japan op• Data kinds: table → table
• Call: import fullseye as fs; fs.ledger.osm_road_loops(roadmask: 'dict', *, tolerance_px: 'float' = 0.75) -> 'Dict[str, object]' (implementation को सीधे call करना हो तो import drivejapan; drivejapan.osm_road_loops(roadmask: 'dict', *, tolerance_px: 'float' = 0.75) -> 'Dict[str, object]', registry से लेना हो तो opsdrive.get("osm_road_loops"))
सड़कों के union की boundary loops। उन्हें बाहरी (सड़क के किनारे) और छेदों (city blocks) में बाँटता है, और Douglas–Peucker से सरल करता है।
अनुरेखण पिक्सेल की भुजाओं के साथ चलता है (contours_xld._trace_mask_boundaries), इसलिए विरलन से पहले लूपों के क्षेत्रफल का योग = पिक्सेल संख्या × step² (बाहरी − छिद्र) ठीक-ठीक लागू होता है (area_check)। छिद्र है या बाहरी, यह इस पर तय होता है कि लूप की सबसे बाईं ऊर्ध्वाधर भुजा के ठीक दाईं ओर का पिक्सेल सड़क है या नहीं। लौटाया गया मान {"outer": [(K,2) xy], "holes": [(K,2) xy], "outer_raw", "holes_raw", "area_check": {"loops_m2", "pixels_m2", "abs_err"}}।
खाली इनपुट (roadmask खाली dict) पर ValueError उठता है।
• Sample data catalog (DL URL / license) — 2-D के लिए skimage.data (BSD/public) + synthetic, 3-D के लिए real data sources (Stanford/PDS आदि) के DL URL।
• Operators का स्रोत और संदर्भ — इस op family के मूल research/methods के स्रोत।
• Algorithm का मानक स्रोत (लेखक, वर्ष) और उपयोग ऊपर की family usage guide में दिए गए हैं।
• poc_driving_japan_town — py -3.11 examples/poc_driving_japan_town.py
table को input के रूप में लेते हैं)course_layout · course_occupancy · course_contains · world_build · world_camera · world_move · lidar_scan · rss_longitudinal_same
japan)osm_synthetic · osm_parse · osm_road_graph · osm_road_mask · osm_route · japan_world · japan_stats · latlon_to_local
*Provenance: drivejapan.py — DRIVE operator registry. यह per-op note tools/opdocs.py md से अपने-आप generate होता है (हाथ से edit न करें)।*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.