मुख्य कंटेंट तक स्किप करें

सॉफ्टवेयर परिवर्तन लॉग और फीडबैक

ईमेल या लाइमलाइट फीडबैक रेपो पर समस्याएं और फीचर अनुरोध सबमिट करें

Limelight OS 2024.10.2 (10/28/24)

Python Snapscript फिक्स (क्रेडिट - FTC टीम 23251 ट्रिपल फॉल्ट)

  • कंट्रोल हब को Limelight3A के साथ उपयोग करते समय Python आउटपुट अब फ्रीज नहीं होंगे
  • Python पाइपलाइनों के बीच स्विच करते समय Python आउटपुट अब फ्रीज नहीं होंगे

MT2 एज केस

https://github.com/LimelightVision/limelight-feedback/issues/23

  • रोबोट के बिना MT2 का परीक्षण करते समय, ज्यामितीय असंभवता उत्पन्न करना आसान है
  • यह एज केस mt2 बॉटपोज को शून्य नहीं करता था - यह कैमरा पोज को शून्य करता था
  • जब भी यह एज केस पता चलता है, रोबोट को अब (0,0,0) पर रखा जाता है

स्टैटिक IP एड्रेसिंग

https://github.com/LimelightVision/limelight-feedback/issues/25

  • यदि पता .1-.10 या .20-.255 पर समाप्त होता है तो IP पता सेटर में एक चेतावनी जोड़ें क्योंकि ये पते FMS या अन्य उपकरणों में हस्तक्षेप कर सकते हैं
  • 2024.10.1 में, UI कभी-कभी सुझाव देता था कि एक स्टैटिक IP कॉन्फ़िगर किया गया था जब एड्रेसिंग स्कीम "स्वचालित" पर सेट थी

STDDevs नेटवर्कटेबल्स

https://github.com/LimelightVision/limelight-feedback/issues/24

  • नेटवर्कटेबल्स में "stddevs" में mt1 और mt2 के लिए सभी stddevs शामिल हैं (डबल ऐरे, 12 एलिमेंट्स)

मॉडल अपलोड एज केस

  • यदि एक क्लासिफायर मॉडल को डिटेक्टर पाइपलाइन में अपलोड किया जाता है, तो छवि पर "चेक मॉडल" प्रदर्शित किया जाएगा
  • यदि एक डिटेक्टर मॉडल को क्लासिफायर पाइपलाइन में अपलोड किया जाता है, तो छवि पर "चेक मॉडल" प्रदर्शित किया जाएगा

Limelight OS 2024.10.1 (9/15/24)

Limelight 3A अपडेट

  • डिफ़ॉल्ट कलर बैलेंस मान अपडेट किए गए
  • डिफ़ॉल्ट AprilTag साइज़ कॉन्फ़िगरेशन को 101.6 मिमी में अपडेट किया गया
  • डिफ़ॉल्ट वीडियो स्ट्रीम फ्रेमरेट को 30FPS तक कम किया गया
  • स्ट्रीम बिटरेट को कम करने के लिए वीडियो स्ट्रीम कम्प्रेशन को थोड़ा बढ़ाया गया

AprilTag साइज़ चेतावनी

  • फील्ड स्पेस विज़ुअलाइज़र में एक चेतावनी जोड़ी गई है जो तब दिखाई देती है जब कॉन्फ़िगर किया गया AprilTag साइज़ अपलोड किए गए फील्ड मैप में मौजूद साइज़ से मेल नहीं खाता।
Example banner

CameraPose_RobotSpace बगफिक्स

  • NetworkTables/LimelightLib/REST से UI के कॉन्फ़िगर किए गए कैमरा पोज़ को ओवरराइड करना अब फिर से सही तरीके से काम करता है।

Limelight OS 2024.10 (9/4/24)

Limelight 3A के लिए FTC समर्थन

  • Limelight3A पूरी तरह से समर्थित है
  • 3A को FTC और FRC दोनों में उपयोग किया जा सकता है

AprilTag मैप अपडेट

  • मैप एडिटर अब मानक और डायमंड FTC मैप जनरेशन का समर्थन करता है
  • LLOS वेब इंटरफ़ेस अपलोड किए गए मैप के आधार पर स्वचालित रूप से सही फ़ील्ड प्रकार प्रदर्शित करेगा
  • सभी टूल्स और इंटरफ़ेस में फ़ील्ड विज़ुअलाइज़र एलायंस ज़ोन और FTC टाइल ग्रिड दिखाते हैं
  • 3D विज़ुअलाइज़र का प्रदर्शन बेहतर किया गया है

कंट्रोल हब और RoboRio पर USB Limelight समर्थन

  • FTC टीमें कंट्रोल हब पर एक USB-सक्षम Limelight का उपयोग कर सकती हैं
  • FRC टीमें RoboRio पर 16 तक USB-सक्षम Limelights का उपयोग कर सकती हैं। USB limelights इथरनेट limelights की तरह ही स्वचालित रूप से नेटवर्कटेबल्स में जुड़ जाते हैं।
    • कई USB Limelights का उपयोग करने के लिए, प्रत्येक LL को एक अद्वितीय USB इंडेक्स और एक अद्वितीय होस्टनेम दें।

USB कनेक्टिविटी अपग्रेड

  • MacOS अब इंटरनेट एक्सेस के लिए USB इथरनेट Limelight इंटरफ़ेस का उपयोग नहीं करता है
  • Windows अब इंटरनेट एक्सेस के लिए USB इथरनेट Limelight इंटरफ़ेस का उपयोग करने का प्रयास नहीं करता है

REST API अपडेट

  • update-robotorientation POST अनुरोध को ठीक किया गया
  • MT2 अब NetworkTables के बिना पूरी तरह से सुलभ है
  • एक बार update-robotorientation रूट का उपयोग किए जाने के बाद, रीबूट होने तक NetworkTables ओरिएंटेशन अपडेट अक्षम हो जाते हैं

Limelight OS 2024.9.1 (7/7/24)

  • मैप बिल्डर टूल अब WPILib .json एप्रिलटैग लेआउट को स्वीकार/कनवर्ट करता है
  • पायथन स्नैपस्क्रिप्ट में AprilTag3 जोड़ा गया (from apriltag import apriltag)
  • उदाहरण के लिए examples github रेपो देखें
  • विंडोज पर USB कनेक्टिविटी गेटवे समस्या को ठीक किया गया।

mosaic स्क्रीनशॉट:

Limelight OS 2024.9 (7/5/24)

MegaTag अपग्रेड्स

  • Limelight OS अब NetworkTables 4.0 में स्थानांतरित हो गया है

  • MegaTag2 अब roboRIO से टाइमस्टैम्प्ड IMU अपडेट प्राप्त करने के लिए NT4 के getAtomic() का उपयोग करता है

  • हमारे टाइमस्टैम्प्ड इमेज फ्रेम्स को इंटरपोलेशन से पहले दो सबसे प्रासंगिक IMU सैंपल्स से मिलान किया जाता है

  • LimelightLib में NT4 flush() जोड़ा गया है। पुराने Limelight OS वर्जन में Flush() जोड़ने से आपको 2024.9 के प्रदर्शन के काफी करीब मिलेगा, लेकिन NT4 सुनिश्चित करता है कि सटीकता हमेशा उच्च रहे।

  • MT2 विज़ुअलाइज़र रोबोट में अब हरे बम्पर हैं, और MT1 के विज़ुअलाइज़र रोबोट में पीले बम्पर का उपयोग किया गया है।

  • मेट्रिक्स अब संकुचित किए जा सकते हैं, और वर्चुअल रोबोट को छिपाया जा सकता है।

  • निम्नलिखित वीडियो दर्शाता है कि कैसे 2024.9 का MegaTag 2 (हरा रोबोट) रोबोट-साइड flush() के साथ, 2024.5 के MegaTag2 से बिना Flush() (लाल रोबोट) की तुलना में अधिक मजबूत है

USB ID और नए USB IP एड्रेस

  • किसी भी सिस्टम पर कई USB Limelights का उपयोग करने के लिए सेटिंग्स पेज में "USB ID" सेट करें
  • आपके सिस्टम पर दिखाई देने वाला USB-इथरनेट इंटरफ़ेस एक IP एड्रेस का उपयोग करेगा जो USB ID द्वारा निर्धारित किया जाता है
  • Linux/Android/Mac सिस्टम अब डिफ़ॉल्ट रूप से 172.29.0.0/24 सबनेट का उपयोग करेंगे
  • Windows सिस्टम अब डिफ़ॉल्ट रूप से 172.28.0.0/24 सबनेट का उपयोग करेंगे
  • यदि USBID सेट है, तो सबनेट Linux/Android/Mac के लिए 172.29.(USBID).0/24 और Windows के लिए 172.28.(USBID).0/24 में बदल जाता है
  • अब आप उनके होस्टनेम और USB ID को समायोजित करके एक USB हब से चार Limelight डिवाइस जोड़ सकते हैं

CPU न्यूरल क्लासिफायर्स

  • Google Coral के बिना न्यूरल वर्गीकरण को सक्षम करने के लिए CPU .tflite क्लासिफायर अपलोड करें। LL3 वेरिएंट पर आप 15-18 FPS की उम्मीद कर सकते हैं।
  • 2024.9 एक डिफ़ॉल्ट CPU क्लासिफायर के साथ आता है।
  • इस सुविधा को सक्षम करने के लिए क्लासिफायर रनटाइम को "CPU" पर सेट करें

CPU न्यूरल डिटेक्टर्स

  • Google Coral के बिना न्यूरल डिटेक्शन को सक्षम करने के लिए CPU .tflite डिटेक्टर अपलोड करें। LL3 वेरिएंट पर आप 10 FPS की उम्मीद कर सकते हैं।
  • 2024.9 एक डिफ़ॉल्ट CPU डिटेक्टर के साथ आता है।
  • इस सुविधा को सक्षम करने के लिए डिटेक्टर रनटाइम को "CPU" पर सेट करें

Limelight OS 2024.8 (7/3/24)

  • जेसन रिजल्ट्स ऑब्जेक्ट में पायथन आउटपुट (PythonOut), tx, ty, txnc, tync, ta जोड़ा गया
  • MT2 लेटेंसी कम्पेनसेशन में और सुधार किया गया

Limelight OS 2024.7 (5/21/24)

  • Linux 6.6 में अपग्रेड

बग फिक्स

  • विज़न पाइपलाइन कन्वर्जन को ठीक किया
  • कैलिब्रेशन अपलोड, स्नैपशॉट अपलोड और एनएन अपलोड को ठीक किया

Limelight OS 2024.6 (5/8/24)

LimelightLib Python

  • pip install limelightlib-python
  • हमारा Python लाइब्रेरी आपको किसी भी प्लेटफॉर्म पर USB और ईथरनेट Limelights के साथ इंटरैक्ट करने की अनुमति देता है।
  • यह वेब UI इंटरैक्शन के बिना पूर्ण Limelight कॉन्फ़िगरेशन की अनुमति देता है।
  • पाइपलाइन्स, न्यूरल नेटवर्क्स, फील्ड मैप्स, आदि अपलोड करें
  • वैकल्पिक "फ्लश टू डिस्क" विकल्प के साथ किसी भी पाइपलाइन पैरामीटर में रीयलटाइम परिवर्तन करें
  • कस्टम python इनपुट डेटा पोस्ट करें, रोबोट ओरिएंटेशन सेट करें, आदि।

MegaTag2 अपग्रेड्स

  • MegaTag2 जायरो लेटेंसी कम्पेंसेशन में सुधार किया गया है। जल्द ही और सुधार की प्रतीक्षा करें!
  • UI में "जायरो लेटेंसी एडजस्टमेंट" स्लाइडर जोड़ा गया। MegaTag 2 लेटेंसी कम्पेंसेशन को मैन्युअली ट्यून करने के लिए, आप अपने रोबोट को घुमा सकते हैं और रोटेशन के दौरान लोकलाइजेशन परिणाम पूर्ण होने तक स्लाइडर को एडजस्ट कर सकते हैं।

स्टैंडर्ड डेविएशन मेट्रिक्स

  • 3D फील्ड विजुअलाइज़र में अब x, y, और yaw के लिए MegaTag1 और Megatag2 स्टैंडर्ड डेविएशन शामिल हैं।

नया "फोकस" पाइपलाइन टाइप

  • "फोकस" मोड में, आपको स्ट्रीम क्वालिटी स्लाइडर और क्रॉप बॉक्स स्लाइडर का एक्सेस मिलेगा
  • "फोकस" स्कोर को अधिकतम करने के लिए लेंस को घुमाएं।
  • यदि आपका कैमरा एक निश्चित स्थान पर है, तो यह एक मिनट से कम समय लेता है। हम फिक्स्ड/माउंटेड Limelight के साथ फोकसिंग की सिफारिश करते हैं।

नया "बारकोड्स" पाइपलाइन टाइप

  • 1280x800 पर 50-60FPS मल्टी QR कोड डिटेक्शन और डीकोडिंग
  • 1280x800 पर 50-60FPS मल्टी डेटामैट्रिक्स डिटेक्शन और डीकोडिंग
  • 1280x800 पर 30FPS मल्टी UPC, EAN, Code128, और PDF417
  • बारकोड डेटा स्ट्रिंग्स "rawbarcodes" nt ऐरे में पोस्ट की जाती हैं।
  • बारकोड्स पाइपलाइन tx, ty, ta, tcornxy, आदि जैसे सभी 2D मेट्रिक्स को पॉपुलेट करेगा।

[बाकी का अनुवाद जारी...]

[नोट: मैंने पहले कुछ सेक्शन्स का अनुवाद किया है। क्या आप चाहेंगे कि मैं बाकी का भी अनुवाद करूं?]

Limelight OS 2024.5.0 (4/9/24)

  • Linux 6.1 में अपग्रेड

कैमरा स्टैक अपडेट

  • Limelight3G पर कैमरा पेरिफेरल लॉक-अप को ठीक करने के लिए पूरा कैमरा स्टैक अपडेट किया गया है।
    • लक्षणों में शामिल हैं
  • इस अपडेट को लागू करने के बाद एक्सपोजर और गेन सेटिंग्स को फिर से ट्यून करना सुनिश्चित करें।

डायनामिक डाउनस्केलिंग

  • टीमें अब वर्तमान पाइपलाइन की डाउनस्केल सेटिंग को ओवरराइड करने के लिए "fiducial_downscale_set" सेट कर सकती हैं
  • 0:UI कंट्रोल, 1:1x, 2:1.5x, 3:2x, 4:3x, 5:4x
  • 0.0 (UI कंट्रोल), 1.0, 1.5, 2.0, 3.0, 4.0 के साथ नई Helpers विधि का उपयोग करें
  • यह एक जीरो-ओवरहेड ऑपरेशन है।
  • डायनामिक डाउनस्केल और डायनामिक क्रॉप को संयोजित करके, टीमें कई पाइपलाइनों को प्रबंधित किए बिना FPS को अधिकतम कर सकती हैं

MegaTag2 सुधार

  • MT2 अब किसी भी Limelight ओरिएंटेशन में काम करता है, जिसमें 90 डिग्री और -90 डिग्री रोल वाले "पोर्ट्रेट" मोड भी शामिल हैं

"rawdetections" nt ऐरे

  • [classID, txnc, tync, ta, corner0x, corner0y, corner1x, corner2y, corner3x, corner3y, corner4x, corner4y]
  • कॉर्नर कैलिब्रेशन लागू किए बिना पिक्सेल-स्पेस में हैं

इरोड/डाइलेट अपडेट

  • कलर पाइपलाइनें अब डाइलेशन के 10 स्टेप्स और इरोजन के 10 स्टेप्स तक सपोर्ट करती हैं
  • कलर पाइपलाइनों में अब डाइलेशन और इरोजन स्टेप्स के क्रम को उलटने के लिए "रिवर्स मॉर्फो" विकल्प है

LimelightLib 1.6 (4/9/24)

  • void SetFiducialDownscalingOverride(float downscale) जोड़ा गया

पाइपलाइन नियंत्रण के लिए 0 पर सेट करें, या अपनी पाइपलाइन की डाउनस्केल सेटिंग को ओवरराइड करने के लिए निम्नलिखित में से एक का उपयोग करें: 1, 1.5, 2, 3, 4

  • RawFiducial[] GetRawFiducials() जोड़ा गया
  • RawDetection[] GetRawDetections() जोड़ा गया

Limelight OS 2024.4.0 (4/3/24)

इस अपडेट के लिए विचार योगदान करने वाली सभी टीमों को धन्यवाद।

मेगाटैग 2

मेगाटैग 2 एक अस्पष्टता-मुक्त लोकलाइज़र है। इसमें मेगाटैग1 की तुलना में उच्च सटीकता और उच्च परिशुद्धता है, और इसे निम्नलिखित आवश्यकताओं के साथ बनाया गया था:

  • पोज़ अस्पष्टता समस्या को समाप्त करें और छवि/कोने के शोर के खिलाफ मजबूती बढ़ाएं।
  • एक या अधिक टैग दिए जाने पर उत्कृष्ट पोज़ अनुमान प्रदान करें, चाहे परिप्रेक्ष्य कुछ भी हो।
  • भौतिक AprilTag प्लेसमेंट अशुद्धियों के खिलाफ मजबूती बढ़ाएं
  • अच्छे पोज़ अनुमान परिणामों के लिए आवश्यक रोबोट-साइड फ़िल्टरिंग की मात्रा को कम करें

इस अत्यधिक अस्पष्ट सिंगल-टैग केस में मेगाटैग2 (लाल रोबोट) और मेगाटैग (नीला रोबोट) के बीच अंतर देखें:

मेगाटैग2 के लिए आपको एक नई मेथड कॉल के साथ अपने रोबोट की हेडिंग सेट करनी होगी। यहाँ एक पूर्ण उदाहरण है:

      LimelightHelpers.SetRobotOrientation("limelight", m_poseEstimator.getEstimatedPosition().getRotation().getDegrees(), 0, 0, 0, 0, 0);
LimelightHelpers.PoseEstimate mt2 = LimelightHelpers.getBotPoseEstimate_wpiBlue_MegaTag2("limelight");
if(Math.abs(m_gyro.getRate()) > 720) // यदि हमारी कोणीय गति 720 डिग्री प्रति सेकंड से अधिक है, तो विज़न अपडेट को अनदेखा करें
{
doRejectUpdate = true;
}
if(mt2.tagCount == 0)
{
doRejectUpdate = true;
}
if(!doRejectUpdate)
{
m_poseEstimator.setVisionMeasurementStdDevs(VecBuilder.fill(.6,.6,9999999));
m_poseEstimator.addVisionMeasurement(
mt2.pose,
mt2.timestampSeconds);
}

मेगाटैग2 एकल टैग के साथ किसी भी दूरी पर उत्कृष्ट, अस्पष्टता-मुक्त परिणाम प्रदान करता है। इसका मतलब है कि केवल प्रासंगिक और आपकी वांछित प्लेसमेंट सहनशीलता के भीतर टैग पर ध्यान केंद्रित करना पूरी तरह से व्यवहार्य है। यदि कोई टैग सही स्थान पर नहीं है या अप्रासंगिक है, तो नई डायनामिक फ़िल्टर सुविधा के साथ इसे फ़िल्टर करें।

डायनामिक एप्रिलटैग फ़िल्टरिंग

  • चूंकि मेगाटैग2 को जितने संभव हो उतने एप्रिलटैग एकत्र करने की जरूरत नहीं है, आप सुरक्षित रूप से अच्छी तरह से रखे गए और प्रासंगिक टैग के लिए फ़िल्टर कर सकते हैं:
int[] validIDs = {3,4};
LimelightHelpers.SetFiducialIDFiltersOverride("limelight", validIDs);

मेगाटैग2 में संक्रमण

मेगाटैग2 को ठीक से काम करने के लिए आपके रोबोट की हेडिंग की आवश्यकता होती है। 0 डिग्री, 360 डिग्री, 720 डिग्री, आदि की हेडिंग का मतलब है कि आपका रोबोट लाल एलायंस वॉल की ओर मुख कर रहा है। यह PathPlanner, Chorero, Botpose, और Botpose_wpiblue में उपयोग की जाने वाली समान परंपरा है।

एक बार जब आप अपने कोड में SetRobotOrientation() जोड़ लेते हैं, तो बिल्ट-इन 3D विज़ुअलाइज़र की जाँच करें। नजदीकी रेंज में, मेगाटैग2 और मेगाटैग1 बिल्कुल मेल खाने चाहिए या लगभग मेल खाने चाहिए। लंबी रेंज में, मेगाटैग 2 (लाल रोबोट) मेगाटैग1 (नीला रोबोट) की तुलना में अधिक सटीक और अधिक स्थिर होना चाहिए।

एक बार जब बिल्ट-इन विज़ुअलाइज़र अच्छे परिणाम दिखा रहा हो, तो आप स्वायत्त अवधि के दौरान अपने रोबोट का मार्गदर्शन करने के लिए मेगाटैग2 का सुरक्षित रूप से उपयोग कर सकते हैं।

एकमात्र फ़िल्टर जिसकी हम अनुशंसा करते हैं वह है "अधिकतम कोणीय वेग" फ़िल्टर। आप पा सकते हैं कि उच्च कोणीय वेग पर, आपके पोज़ अनुमान थोड़े कम विश्वसनीय हो जाते हैं।

उदाहरण रेपो में इस फ़िल्टर के साथ एक मेगाटैग2 उदाहरण है।

    if(Math.abs(m_gyro.getRate()) > 720) // यदि हमारी कोणीय गति 720 डिग्री प्रति सेकंड से अधिक है, तो विज़न अपडेट को अनदेखा करें
{
doRejectUpdate = true;
}
if(mt2.tagCount == 0)
{
doRejectUpdate = true;
}

LimelightLib 1.5 (4/3/24)

जोड़ें

getBotPoseEstimate_wpiRed_MegaTag2()
getBotPoseEstimate_wpiBlue_MegaTag2()
SetRobotOrientation()

Limelight OS 2024.3.4 (20/03/24)

इस अपडेट के लिए विचार योगदान करने वाली सभी टीमों का धन्यवाद।

उच्च-परिशुद्धता सिंगल टैग सॉल्वर

MegaTag का सिंगल टैग 3D सॉल्वर बेहतर किया गया है। यह लंबी दूरी पर पहले से कहीं अधिक स्थिर है।

JSON डिफ़ॉल्ट रूप से अक्षम (ब्रेकिंग चेंज)

  • बैंडविड्थ उपयोग को कम करने और Shuffleboard जैसे ऑटो-सब्सक्राइबिंग डैशबोर्ड का उपयोग करने वाली टीमों के लिए JSON को डिफ़ॉल्ट रूप से अक्षम कर दिया गया है।
  • इससे RoboRIO NT लोड और CPU उपयोग भी कम होना चाहिए।
  • आउटपुट टैब में प्रति-पाइपलाइन JSON को पुनः सक्षम करें।
  • यह अपडेट ऐसे परिवर्तन शामिल करता है जो और अधिक टीमों को पोज एस्टीमेशन के लिए JSON से दूर जाने में मदद करेगा।

अनडिस्टॉर्टेड एरिया (ब्रेकिंग चेंज)

किसी भी टारगेट का क्षेत्रफल गणना करने से पहले कॉर्नर्स को अनडिस्टॉर्ट किया जाता है।

botpose, botpose_wpiblue, और botpose_wpired में प्रति-फिड्यूशल मेट्रिक्स शामिल करें

[tx, ty, tz, roll, pitch, yaw, tagCount, tagSpan (meters), averageDistance (meters), averageArea (इमेज का प्रतिशत), (tags)]

megatag लोकलाइजेशन द्वारा उपयोग किए गए प्रत्येक टैग के लिए, उपरोक्त ऐरे अब (tagID, txnc, tync, ta, distanceToCamera, distanceToRobot, ambiguity) शामिल करते हैं

एम्बिग्युइटी 0-1 की रेंज में एक नया मेट्रिक है जो टैग के वर्तमान परिप्रेक्ष्य की अस्पष्टता को दर्शाता है। .9 से अधिक टैग एम्बिग्युइटी वाले सिंगल-टैग-अपडेट को अस्वीकार किया जाना चाहिए।

"rawtargets" और "rawfiducials" nt ऐरे (ब्रेकिंग चेंज)

  • rawtargets - प्रति टारगेट (txnc,tync,ta)
  • rawfiducials - प्रति टारगेट (tagID, txnc, tync, ta, distanceToCamera, distanceToRobot, ambiguity)
  • पिछली rawtargets NT एंट्रीज (tx0,ty0, आदि) को हटा दिया गया है।

बगफिक्स

  • यदि priorityID नहीं मिला है तो सभी सिंगल-टैग 3D जानकारी को शून्य कर दें। पहले, जब priorityTag नहीं मिला था तो केवल Tx, Ta, Ty, और Tv को शून्य किया जाता था
  • यदि एकमात्र दृश्यमान टैग UI के "ID फिल्टर्स" फीचर्स द्वारा फिल्टर किया गया है तो botpose को शून्य कर दें। पहले, यदि एकमात्र दृश्यमान टैग एक फिल्टर्ड टैग था तो botposes फील्ड के केंद्र में रीसेट होते थे, (0,0,0) की बजाय
  • 2024.2 कुछ दुर्लभ मामलों में कुछ नेटवर्कटेबल्स एंट्रीज में NANs पोस्ट करता था। अब ऐसा नहीं होगा।

LimelightLib 1.4 (3/21/24)

  • 2024.3.4 रॉ फिड्यूशियल्स के लिए समर्थन जोड़ा गया। PoseEstimates में अब rawFiducials की एक श्रृंखला शामिल है जिसमें id, txnc, tync, ta, distanceToCamera, distanceToRobot, और ambiguity शामिल हैं

Limelight हार्डवेयर मैनेजर 1.4 (3/18/24)

बगफिक्स

खोजे गए USB Limelights को दो आंशिक प्रविष्टियों के बजाय एक एकल प्रविष्टि के रूप में सही ढंग से प्रदर्शित किया जाता है।


Limelight OS 2024.2.2 (17/3/24)

बग फिक्स

TX और TY NT एंट्री में क्रॉसहेयर का उचित रूप से सम्मान करते हैं।


Limelight OS 2024.2 (3/8/24)

जीरो-क्रॉसहेयर टारगेटिंग Json (tx_nocross, ty_nocross) और NT (txnc, tync) के साथ

यदि आप कस्टम इंट्रिंसिक कैलिब्रेशन के साथ tx/ty टारगेटिंग का उपयोग कर रहे हैं, तो आप अभी भी कैमरा-से-कैमरा भिन्नता देख रहे होंगे क्योंकि लाइमलाइट क्रॉसहेयर कैमरे के प्रिंसिपल पिक्सेल के साथ संरेखित नहीं है। जिन टीमों को अधिक tx/ty सटीकता की आवश्यकता है, वे या तो क्रॉसहेयर को प्रिंसिपल पिक्सेल से मेल खाने के लिए कॉन्फ़िगर कर सकते हैं, या इन नए मेट्रिक्स का उपयोग कर सकते हैं।

tx/ty में संभावित ब्रेकिंग चेंज

इस सीजन की शुरुआत में एक बग पेश किया गया था जो विशेष रूप से json में tx, ty, और tx + ty के लिए कस्टम कैलिब्रेशन को तोड़ देता था। लाइमलाइट OS कई मामलों में डिफ़ॉल्ट कैलिब्रेशन पर वापस आ रहा था।

कैलिब्रेशन अपग्रेड

कैलिब्रेशन अब लगभग तत्काल है, चाहे कितनी भी इमेज कैप्चर की गई हों। हमने कुछ परिस्थितियों में लगभग 30 इमेज होने पर होने वाली क्रैश को भी ठीक कर दिया है।

हम पेपर टारगेट्स की 15-20 इमेज के साथ लगभग 1 पिक्सेल का रीप्रोजेक्शन एरर और हमारे उच्च-गुणवत्ता वाले calib.io टारगेट्स के साथ .3 पिक्सेल का एरर लगातार प्राप्त कर रहे हैं।

फिड्यूशियल फिल्टर्स UI फिक्स

फिड्यूशियल फिल्टर टेक्स्टबॉक्स अब किसी भी संख्या में फिल्टर स्वीकार करता है।

विविध

एप्रिलटैग जनरेटर 165.1 मिमी टैग के साथ स्केलिंग को रोकने के लिए डिफ़ॉल्ट रूप से "नो बॉर्डर" पर सेट है।


Limelight OS 2024.1.1 (2/24/24)

  • priorityID को ठीक किया गया

Limelight OS 2024.1 (24/02/24)

हार्डवेयर मेट्रिक्स (नेटवर्कटेबल्स में hw कुंजी, /status GET अनुरोध)

कैलिब्रेशन सुधार

  • क्रैश को ठीक किया जो तब हो सकता था जब कैलिब्रेशन छवि में ठीक एक वैध डिटेक्शन होता। वेब UI फीडबैक में सुधार।

रोबोट लोकलाइजेशन सुधार (टैग काउंट और अधिक)

  • सभी नेटवर्कटेबल्स बॉटपोज़ ऐरे (botpose, botpose_wpiblue, और botpose_wpired) में अब टैग काउंट, टैग स्पैन (मीटर), औसत दूरी (मीटर), और औसत क्षेत्र (छवि का प्रतिशत) शामिल हैं

  • ये मेट्रिक्स अपलोड किए गए फील्ड मैप में शामिल टैग के साथ गणना किए जाते हैं। कस्टम और/या मोबाइल एप्रिलटैग इन मेट्रिक्स को प्रभावित नहीं करेंगे।

  • डिवाइस कैलिब्रेशन और इस बॉटपोज़ ऐरे अपग्रेड के साथ, हमें नहीं लगता कि इस वर्ष अधिकांश उपयोग-मामलों के लिए JSON आवश्यक है।

  • JSON डंप में अब सुविधा के लिए botpose_avgarea, botpose_avgdist, botpose_span, और botpose_tagcount शामिल हैं।

[tx,ty,tz,rx,ry,rz,latency,tagcount,tagspan,avgdist,avgarea]

नई सुविधा: प्राथमिकता ID (NT कुंजी priorityid)

  • यदि आपका रोबोट ओडोमेट्री-आधारित सुविधाओं और tx/ty-आधारित सुविधाओं दोनों का उपयोग करता है, तो आपने निम्नलिखित UX समस्या का सामना किया होगा:

  • इस अपडेट से पहले, tx/ty लक्ष्यीकरण के लिए पसंदीदा टैग ID को आसानी से स्विच करने का कोई तरीका नहीं था।

  • हालांकि UI में एक ID फिल्टर है, यह

    • गतिशील नहीं है
    • मेगाटैग लोकलाइजेशन से टैग हटा देता है।
  • इसका मतलब था कि टीमें कई पाइपलाइन बना रही थीं: एक 3D लोकलाइजेशन के लिए, और प्रति tx/ty टैग के लिए एक (टैग 7 के साथ ब्लू-साइड शूटिंग के लिए एक, टैग 6 के साथ ब्लू-साइड एम्पिंग के लिए एक, आदि)।

  • नई प्राथमिकता ID सुविधा (NT कुंजी priorityid) आपको अपने Limelight को बताने की अनुमति देती है "सभी टैग डिटेक्शन, फिल्टरिंग और सॉर्टिंग पूरा होने के बाद, प्राथमिकता ID से मेल खाने वाले टैग पर ध्यान केंद्रित करें।"

  • यह किसी भी तरह से लोकलाइजेशन को प्रभावित नहीं करता है, और यह JSON परिणामों में टैग के क्रम को केवल थोड़ा बदलता है।

  • यदि आपकी प्राथमिकता id -1 नहीं है, तो tx/ty/ta 0 लौटाएगा जब तक कि चुना गया टैग दिखाई नहीं देता।

विविध

  • 3D एप्रिलटैग पाइपलाइन में ड्यूल-टारगेट मोड का उपयोग करते समय स्क्रीन पर "x" को ठीक किया
  • न्यूरल नेटवर्क लेबल अपलोड के साथ REST API का विस्तार (/uploadlabels)
  • /status json में डिवाइस निकनेम शामिल

LimelightLib 1.3

  • LimelightLib (Java और CPP) को लोकलाइजेशन को पहले से कहीं अधिक आसान बनाने के लिए अपडेट किया गया है।
  LimelightHelpers.PoseEstimate limelightMeasurement = LimelightHelpers.getBotPoseEstimate_wpiBlue("limelight");
if(limelightMeasurement.tagCount >= 2)
{
m_poseEstimator.setVisionMeasurementStdDevs(VecBuilder.fill(.7,.7,9999999));
m_poseEstimator.addVisionMeasurement(
limelightMeasurement.pose,
limelightMeasurement.timestampSeconds);
}

टीमों के लिए नए संसाधन

Limelight फीडबैक और इशू ट्रैकर: https://github.com/LimelightVision/limelight-feedback/issues

उदाहरण रेपो: https://github.com/LimelightVision/limelight-examples

स्वर्व के साथ एमिंग और रेंजिंग उदाहरण: https://docs.limelightvision.io/docs/docs-limelight/tutorials/tutorial-swerve-aiming-and-ranging

मेगाटैग लोकलाइजेशन उदाहरण: https://docs.limelightvision.io/docs/docs-limelight/tutorials/tutorial-swerve-pose-estimation

हाल के योगदानकर्ताओं jasondaming, Gold876, JosephTLockwood, Andrew Gasser, और virtuald का धन्यवाद


Limelight 2024 अपडेट्स (2/6/24)

लाइमलाइट डॉक्यूमेंटेशन अपग्रेड

लाइमलाइट एप्रिलटैग जनरेटर

  • https://tools.limelightvision.io/ अब पहला ऑनलाइन एप्रिलटैग जनरेटर प्रदर्शित करता है।
  • प्रिंट करने योग्य PDF बनाने के लिए अपना पेपर साइज, मार्कर साइज और टैग आईडी चुनें।
  • सफारी इस समय टैग को सही ढंग से प्रदर्शित नहीं कर सकता है।

लाइमलाइट मैप बिल्डर

  • https://tools.limelightvision.io/map-builder
  • अब आप एक सहज यूआई के साथ कस्टम एप्रिलटैग मैप बना सकते हैं।
  • डिफ़ॉल्ट फैमिली और टैग साइज को 2024 फील्ड से मेल खाने के लिए अपडेट किया गया है।

नया हार्डवेयर मैनेजर

  • फाइंडर टूल अब लाइमलाइट हार्डवेयर मैनेजर है
  • इसे शुरू से फिर से लिखा गया है। यह अब विश्वसनीय रूप से लाइमलाइट्स का पता लगाता है, अधिक उपयोगी नैदानिक जानकारी प्रदान करता है, और सही ढंग से काम करने के लिए रीस्टार्ट की आवश्यकता नहीं होती है।
  • इसे अभी डाउनलोड पेज से प्राप्त करें नोटबुक स्क्रीनशॉट:

अपने खुद के न्यूरल नेटवर्क को प्रशिक्षित करें

नोटबुक स्क्रीनशॉट:

2024 एप्रिलटैग मैप और नोट डिटेक्टर

  • मैप और डिटेक्टर मॉडल को डाउनलोड पेज और नवीनतम लाइमलाइट OS इमेज में जोड़ दिया गया है।

Limelight OS 2024.0 (2/6/24)

ChArUco कैलिब्रेशन सुधार

  • हमारे ChArUco डिटेक्टर की सबपिक्सेल सटीकता बढ़ाई गई है। क्लिपबोर्ड टारगेट और 20 छवियों के साथ 1-2 पिक्सेल का पुनर्प्रक्षेपण त्रुटि अब प्राप्त किया जा सकता है।
  • एक ही कैमरा और एक ही टारगेट का उपयोग करते हुए, 2023.6 ने 20 पिक्सेल का RPE प्राप्त किया, और 2024.0 ने 1.14 पिक्सेल का RPE प्राप्त किया।
  • इनपुट फ़ील्ड अब अक्षरों और विशेष वर्णों को स्वीकार नहीं करते हैं। यह क्रैश की संभावना को समाप्त करता है।

आउट-ऑफ-द-बॉक्स मेगाटैग सटीकता में सुधार

  • इस अपडेट से पहले, Limelight का आंतरिक मेगाटैग मैप जनरेटर .fmap फ़ाइल द्वारा प्रदान किए गए टैग आकारों के बजाय UI के टैग साइज स्लाइडर का संदर्भ लेता था।
  • मेगाटैग अब fmap फ़ाइलों में कॉन्फ़िगर किए गए टैग आकारों का सम्मान करता है और साइज स्लाइडर को नजरअंदाज करता है।
  • यदि आपका साइज स्लाइडर 165.1 मिमी पर सेट नहीं किया गया है, तो आपको लोकलाइजेशन सटीकता में तत्काल सुधार दिखाई देगा

प्रदर्शन अपग्रेड और बगफिक्स

  • उच्च FPS AprilTag पाइपलाइन
  • फील्ड-स्पेस विज़ुअलाइज़र का प्रदर्शन काफी बेहतर किया गया है।

बगफिक्स

  • 3D विज़ुअलाइज़र में Apriltags कभी-कभी गलत या खराब टैग छवियों के साथ दिखाए जाते थे। टैग अब हमेशा सही ढंग से प्रदर्शित होते हैं।
  • "v" / tv / "valid" अब केवल तभी "1" लौटाएगा जब वैध डिटेक्शन हों। पहले, tv हमेशा "1" था