esmini क्या है?
esmini एक open-source OpenSCENARIO player है जिसे Swedish ADAS community ने बनाया है। यह जानबूझकर एक minimal player है, और OpenSCENARIO 1.x के लिए lightweight reference के तौर पर व्यापक रूप से इस्तेमाल होता है — इतना छोटा कि पढ़ा जा सके, इतना तेज़ कि embed किया जा सके, और इतना predictable कि sanity check के रूप में भरोसा किया जा सके।
esmini क्या करता है
Section titled “esmini क्या करता है”esmini एक OpenSCENARIO 1.x .xosc फ़ाइल parse करता है, उसमें referenced OpenDRIVE .xodr road network लोड करता है, और फिर storyboard execute करता है — entities को trajectory या controller के हिसाब से drive कराता है और resulting state stream करता है।
यह CARLA या LGSVL जैसा फ़ुल physics-based simulator नहीं है, और यही इसकी असली ताक़त है: esmini वह open-source baseline है जिससे “क्या यह सिनारियो सही तरीक़े से parse और play होता है?” जाँचा जाता है, और ज़्यादातर OpenSCENARIO tooling इसी को टारगेट करके बनती है।
Tooling के लिए esmini क्यों मायने रखता है
Section titled “Tooling के लिए esmini क्यों मायने रखता है”esmini सबसे आम open-source OpenSCENARIO 1.x consumer है, इसलिए “क्या यह esmini में चलता है?” किसी भी OpenSCENARIO export pipeline के लिए standard sanity check बन चुका है। ASAM फ़ाइलें बनाने वाले ज़्यादातर टूल OpenSCENARIO सपोर्ट का दावा करने से पहले esmini के मुक़ाबले validate करते हैं — इनमें RoadRunner भी शामिल है, जो सिनारियो को “CARLA, esmini, और IPG CarMaker जैसे किसी भी OpenSCENARIO-compliant simulator या player के साथ compatible” बताकर एक्सपोर्ट करता है।
esmini को आमतौर पर क्या चाहिए
Section titled “esmini को आमतौर पर क्या चाहिए”esmini को कम से कम इतना चाहिए:
- एक
.xosc(OpenSCENARIO सिनारियो)। - एक
.xodr(OpenDRIVE road network) जो.xoscसे referenced हो। - ज़रूरत पड़े तो 3D viewer rendering के लिए एक
.osgbफ़ाइल, या vehicle assets के लिए एकModels/डायरेक्टरी।
इन सबको एक self-contained zip में पैक करना — जिसे अनौपचारिक रूप से “esmini bundle” कहा जाता है — सिनारियो को अलग-अलग मशीन और CI में portable बना देता है।
drawtonomy कहाँ फ़िट होता है
Section titled “drawtonomy कहाँ फ़िट होता है”drawtonomy esmini को खुद चलाता है — WebAssembly में compile करके — सीधे ब्राउज़र में। आप एक स्टोरीबोर्ड लिखें (या किसी मौजूदा .xosc को खोलें), Play दबाएँ, और scenario editor उसे पेज के अंदर ही execute कर देता है: transport controls, seek, एक follow कैमरा, ghost trail, और आपके END और FAIL conditions से एक PASS / FAIL वर्डिक्ट — न कोई install चाहिए, न अलग player। सिमुलेशन core खुद esmini है; drawtonomy बस उसके चारों ओर कैनवस-नेटिव शेल जोड़ता है।
अगर आप सिनारियो को किसी नेटिव esmini install में चलाना चाहें (3D OpenSceneGraph viewer के लिए, CI sweep के लिए, या किसी Python/C++ पाइपलाइन के लिए), तो drawtonomy .xosc, .xodr, और एक run.sh invocation वाला zip भी export कर देता है:
unzip <name>.zipesmini --osc <name>/<name>.xosc --window 60 60 1024 768जानने लायक बातें:
- ब्राउज़र वाला in-browser player OpenSCENARIO 1.x पढ़ता है, और ASAM export OpenSCENARIO 1.0–1.2 / OpenDRIVE 1.8 लिखता है — दोनों ही स्पेक के एक subset को कवर करते हैं: actions, conditional triggers, phases, और events सभी चलते हैं, और OpenDRIVE junction primitives तथा
<signal>entries भी अब emit होती हैं। किसी इम्पोर्ट किए गए.xodrसे बिना एडिट हुए आगे बढ़ाए गए junction हाई-फ़िडेलिटी होते हैं; हाथ से खींचे गए लेन नेटवर्क से synthesize किए गए junction अभी उतने भरोसेमंद नहीं हैं। Parameter sweep और custom या ML-driven controller आज भी emit नहीं होते। - Vehicle assets डिफ़ॉल्ट रूप से esmini के बिल्ट-इन मॉडल इस्तेमाल करते हैं, इसलिए अलग से कोई
.osgbचाहिए नहीं होता। - बड़े पैमाने या parameterised सिनारियो sweep के लिए, फ़्लीट को किसी DSL या Python लाइब्रेरी से जेनरेट करें — यह विज़ुअल एडिटर के दायरे से बाहर ही रहता है।
संबंधित पठन
Section titled “संबंधित पठन”- Scenario editor — ब्राउज़र में esmini-WASM पर स्टोरीबोर्ड लिखें और चलाएँ।
- मौजूदा .xosc खोलें और चलाएँ — एक
.xoscड्रॉप करें और Play दबाएँ। - OpenSCENARIO क्या है?
- OpenDRIVE क्या है?
- ASAM OpenDRIVE / OpenSCENARIO में एक्सपोर्ट करें