Yazılım Değişiklik Günlüğü 2021 - 2023
2023.6 (18/4/23)
Kolay ChArUco Kalibrasyonu & Kalibrasyon Görselleştiricileri
- ChArUco kalibrasyonu, oklüzyonları, kötü köşe tespitlerini ele aldığı ve tüm tahtanın görünür olmasını gerektirmediği için dama tahtası kalibrasyonundan daha iyi kabul edilir. Bu, görüntülerinizin kenarlarına ve köşelerine yakın kalibrasyon tahtası köşelerini yakalamayı çok daha kolay hale getirir. Bu, distorsiyon katsayısı tahmini için çok önemlidir.
- Limelight'ın kalibrasyon süreci her adımda geri bildirim sağlar ve iyi kalibrasyon sonuçları için gerekli olan her şeyi yapmanızı sağlar. Bu süreci mümkün olduğunca hatasız hale getirmek için çok fazla çaba harcanmıştır.
- En önemlisi, kalibrasyon sonuçlarınızı varsayılan kalibrasyonun hemen yanında görselleştirebilirsiniz. Bir bakışta, kalibrasyon sonucunuzun makul olup olmadığını anlayabilirsiniz.
- Kalibrasyon panosunu bir öğrenme aracı olarak da kullanabilirsiniz. İndirilen kalibrasyon sonuç dosyalarını değiştirebilir ve intrinsics matrisinin ve distorsiyon katsayılarının hedefleme sonuçlarını, FOV'u vb. nasıl etkilediğini öğrenmek için yeniden yükleyebilirsiniz.
- Bu videoya bir göz atın:
2023.5.1 & 2023.5.2 (22/3/23)
-
2023.5.0'da tanıtılan regresyon düzeltildi - 2023.5 tüm düzlemsel olmayan düzenler için megatag'ı düzeltirken, tek etiket poz tahminlerinin performansını düşürdü. Bu düzeltildi. Tek etiket poz tahminleri, 2023.4'te kullanılan aynı çözücüyü kullanır.
-
Daha hızlı anlık görüntü arayüzü. Anlık görüntü ızgarası artık düşük çözünürlüklü 128p küçük resimler yüklüyor.
-
Limelight Yaw artık 3D görselleştiricilerde düzgün şekilde sunuluyor. Görselleştiricide ve dahili olarak saat yönünün tersine pozitiftir
-
Alan uzayı görselleştiricisinde şu anda hangi hedeflerin izlendiğini göster
2023.5.0 (21/3/23)
Önemli Değişiklikler
- Regresyon düzeltildi - Limelight Robot-Uzayı "Yaw" önceki sürümlerde ters çevrilmişti. Web arayüzündeki Limelight yaw artık dahili olarak Saat Yönünün Tersine Pozitiftir.
Bölge Seçimi Güncellemesi
- Bölge seçimi artık sinir ağı dedektör pipeline'larında beklendiği gibi çalışıyor.
- Döndürülmemiş hedef dikdörtgeninin merkezini, üstünü, solunu, sağını, üstünü veya altını seçmek için 5 yeni bölge seçeneği eklendi.
"hwreport" REST API
- :5807/hwreport, kamera intrinsics ve distorsiyon bilgilerini detaylandıran bir JSON yanıtı döndürecek
MegaTag Düzeltmesi
- Belirli düzlemsel olmayan apriltag düzenleri MegaTag'de bozuktu. Bu düzeltildi ve poz tahmini artık tüm alan etiketleriyle kararlı. Bu, daha önce olduğundan daha büyük mesafelerde bile kararlı poz tahmini sağlar.
Daha yüksek tx ve ty doğruluğu
- TX ve TY her zamankinden daha doğru. Hedefler tamamen distorsiyonsuzlaştırılmış ve FOV tamamen kamera intrinsics tarafından belirleniyor.
2023.4.0 (18/2/23)
Sinir Ağı Dedektörü Sınıf Filtresi
İstenmeyen tespitlerin kolay filtrelenmesi için izlemek istediğiniz sınıfları belirtin.
Sinir Ağı Dedektörü genişletilmiş destek
Herhangi bir giriş çözünürlüğünü destekler, diğer nesne algılama mimarilerini desteklemek için ek çıkış şekillerini destekler. EfficientDet0 tabanlı modeller artık destekleniyor.
2023.3.1 (14/2/23)
AprilTag Doğruluk İyileştirmeleri
Tüm modeller için geliştirilmiş intrinsics matrisi ve en önemlisi geliştirilmiş distorsiyon katsayıları. Fark edilir tek AprilTag Lokalizasyon iyileştirmeleri.
Dedektör Yükleme
Dedektör yükleme düzeltildi.
2023.3 (13/2/23)
Yakalama Gecikmesi (NT Anahtarı: "cl", JSON Sonuçları: "cl")
Yeni yakalama gecikmesi girişi, Limelight'ın görüntü sensörünün orta satırının pozlamasının sonu ile işleme pipeline'ının başlangıcı arasındaki süreyi temsil eder.
AprilTag'ler için Yeni Kalite Eşiği
Sahte AprilTag'ler artık yeni Kalite Eşiği kaydırıcısı ile daha kolay filtreleniyor. 2023.3'te ayarlanan varsayılan değer çoğu sahte tespiti kaldırmalıdır.
Robot Uzayında Kamera Pozu Geçersiz Kılma (NT Anahtarları: "camerapose_robotspace_set", "camerapose_robotspace")
Limelight'ınızın robot uzayındaki konumu artık anında ayarlanabilir. Anahtar sıfırlar dizisine ayarlanırsa, web arayüzünde ayarlanan poz kullanılır.
İşte bir asansördeki Limelight örneği:
![]()
Artırılmış Maksimum Pozlama
Maksimum pozlama süresi artık 33ms (12.5 ms'den yukarı). Yüksek fps yakalama modları hala (1/fps) saniye ile sınırlıdır. Örneğin 90hz pipeline'ları, 11ms pozlama süresinin ötesinde daha parlak görüntülere sahip olmayacaktır.
Botpose güncellemeleri
NetworkTables'daki üç botpose dizisinin hepsinde toplam gecikmeyi (yakalama gecikmesi + hedefleme gecikmesi) temsil eden yedinci bir giriş var.
Hata Düzeltmeleri
- Shuffleboard'da LL3 MJPEG akışları düzeltildi
- camMode düzeltildi - sürücü modu artık parlak, kullanılabilir görüntüler üretiyor.
- Pozlama etiketi düzeltildi - her "tık" 0.1 ms değil 0.01ms'yi temsil eder
- Sinir ağı dedektör yüklemesi düzeltildi
2023.2 (28/1/23)
3D'yi her zamankinden daha kolay hale getiriyoruz.
WPILib uyumlu Botpose'lar
Botpose artık kutudan çıktığı gibi kullanımı daha da kolay.
Bunlar WPILib Koordinat sistemleriyle eşleşir. 
Tüm botpose'lar doğrudan web arayüzündeki alan uzayı görselleştiricisinde yazdırılır, bu da her şeyin düzgün çalıştığını bir bakışta doğrulamayı kolaylaştırır.
3D Verilere Daha Kolay Erişim (Önemli Değişiklikler)
HedefUzayında RobotPozu, AprilTag'ler açısından Limelight'tan gelen tartışmasız en kullanışlı veridir. Bunu tek başına kullanarak, bir aktarma organını sahadaki bir AprilTag ile mükemmel şekilde hizalayabilirsiniz.
- NetworkTables Anahtarı "campose" artık "camerapose_targetspace"
- NetworkTables Anahtarı "targetpose" artık "targetpose_cameraspace"
- Yeni NetworkTables Anahtarı - "targetpose_robotspace"
- Yeni NetworkTables Anahtarı - "botpose_targetspace"
Sinir Ağı Yükleme
Teachable machine modellerini Limelight Sınıflandırıcı Pipeline'ına yükleyin. Tensorflow Lite EdgeTPU uyumlu modeller olduklarından emin olun. .tflite ve .txt etiket dosyalarını ayrı ayrı yükleyin.
2023.1 (19/1/23)
MegaTag ve Performans Artışları
Bir Hatayı Düzeltme
Arayüzdeki varsayılan işaretçi boyutu parametresi 152.4mm olarak düzeltildi (203.2mm'den aşağı). Bu, çoğu doğruluk sorununun kökeniydi.
Artırılmış İzleme Kararlılığı
AprilTag algılama ve kod çözmeyi ayarlamanın birkaç yolu var. Özellikle düşük ışık / düşük pozlama ortamlarında genel olarak kararlılığı iyileştirdik.
Ultra Hızlı Gri Tonlama
Gri tonlama öncekinden 3x-6x daha hızlı. Takımlar AprilTag'leri izlerken her zaman gri bir video akışı görecek.
Performans için Kırpma
AprilTag pipeline'ları artık kırpma kaydırıcılarına sahip. Görüntünüzü kırpmak, herhangi bir çözünürlükte gelişmiş kare hızlarıyla sonuçlanacaktır.
Daha Kolay Filtreleme
AprilTag pipeline'larında artık JSON çıktısını, botpose etkin etiketleri ve tx/ty etkin etiketleri filtreleyen tek bir "ID filtresi" alanı var. Çift filtre kurulumu hatalı ve kafa karıştırıcıydı.
Önemli Değişiklik
NT Anahtarı "camtran" artık "campose"
JSON güncellemesi
"botpose" artık json sonuç dökümünün bir parçası
Alan Uzayı Görselleştirici Güncellemesi
Alan uzayı görselleştiricisi artık 2023 FRC sahasını gösteriyor. Botpose doğruluğunu bir bakışta değerlendirmek artık daha kolay olmalı.
Limelight MegaTag (yeni botpose)
1 numaralı önceliğim, daha yüksek doğruluk, azaltılmış gürültü ve belirsizlik dayanıklılığı için botpose'u yeniden yazmak oldu. Limelight'ın yeni botpose uygulaması MegaTag olarak adlandırılıyor. Birden fazla bireysel alan uzayı pozunun aptal bir ortalamasıyla botpose hesaplamak yerine, MegaTag esasen tüm etiketleri birkaç anahtar noktası olan dev bir 3D etikette birleştirir. Bunun muazzam faydaları var.
Aşağıdaki GIF, etiket çevirmesini tetiklemek için tasarlanmış bir durumu gösteriyor: Yeşil Silindir: Etiket başına bireysel bot pozu Mavi Silindir: 2023.0.1 BotPose Beyaz Silindir: Yeni MegaTag Botpose
Yeni botpose'un (beyaz silindir) eski botpose'a (mavi silindir) kıyasla ne kadar kararlı olduğuna dikkat edin. tx ve ty değerlerini de izleyebilirsiniz.
İşte tam ekran, etiket belirsizliğini gösteriyor:
İşte avantajları:
Botpose artık birden fazla etiket görünümdeyse belirsizliklere (etiket çevirmesi) karşı dayanıklı (yakın ve düzlemsel olmadıkça. İdeal olarak anahtar noktalar düzlemsel değildir). Botpose artık birden fazla etiket görünümdeyse etiket köşelerindeki gürültüye karşı daha dayanıklı. Etiketler birbirinden ne kadar uzaksa o kadar iyi. Bu düzlemsel etiketlerle sınırlı değil. Herhangi bir sayıda etikete tam 3D'de ve herhangi bir yönelimde ölçeklenir. Zemin etiketleri ve tavan etiketleri mükemmel çalışır.
İşte bunun basit bir düzlemsel durumla nasıl çalıştığının bir yönünü gösteren bir diyagram. Sonuçlar aslında gösterilenden daha iyi, çünkü gösterilen MegaTag'de bir nokta yerine üç noktaya önemli bir hata uygulanmış. 3D birleşik MegaTag boyut ve anahtar nokta sayısı olarak arttıkça, kararlılığı artar.
Sinir Ağı yüklemesi 2023.2'ye erteleniyor!
2023.0.0 ve 2023.0.1 (11/1/23)
AprilTag'ler, Robot lokalizasyonu, Derin Sinir Ağları, yeniden yazılmış ekran görüntüsü arayüzü ve daha fazlasını tanıtıyoruz.
Özellikler, Değişiklikler ve Hata Düzeltmeleri
- Yeni sensör yakalama pipeline'ı ve Kazanç kontrolü
- Yeni yakalama pipeline'ımız, 2022'dekinden 100 kat daha kısa pozlama sürelerine izin veriyor. Yeni pipeline ayrıca Kazanç Kontrolünü etkinleştiriyor. Bu, AprilTag izleme için son derece önemlidir ve retroreflektif hedeflemeyi her zamankinden daha güvenilir hale getirmeye hizmet edecektir. Limelight OS 2023'ten önce, Limelight'ın sensör kazancı deterministik değildi (yine de çalışmasını sağlamak için bazı hileler uyguladık).
- Yeni "Sensör Kazancı" kaydırıcısı ile takımlar, pozlama kaydırıcısına dokunmadan görüntüleri her zamankinden daha karanlık veya daha parlak yapabilir. Kazancı artırmak görüntüdeki gürültüyü artıracaktır.
- Daha düşük kazancı yeni daha düşük pozlama süreleriyle birleştirerek, artık tam parlaklıkta LED'ler ve retroreflektif hedeflerle neredeyse tamamen siyah görüntüler üretmek mümkün. Bu, retroreflektif hedefleri izlerken LED ve güneş ışığı yansımalarını azaltmaya yardımcı olacaktır.
- Sensör Kazancını artırarak ve pozlamayı azaltarak, takımlar AprilTag'leri izlerken yüksek pozlama sürelerinden kaynaklanan hareket bulanıklığının etkilerini en aza indirebilecekler.
- Tüm özellikleri korurken bu yeni pipeline'ı geliştirmeyi başardık - 90fps, donanım yakınlaştırma vb.
- Daha Fazla Çözünürlük Seçeneği
- LL1, LL2 ve LL2+ için iki yeni yakalama çözünürlüğü var: 640x480x90fps ve 1280x960x22fps
- Optimize Edilmi ş Web Arayüzü
- Web arayüzü artık robot ağlarında 3 kata kadar daha hızlı yüklenecek ve başlatılacak.
- Yeniden Yazılmış Anlık Görüntüler Arayüzü
- Anlık görüntüler özelliği, görüntü yüklemelerine, görüntü indirmelerine ve görüntü silmeye izin vermek için tamamen yeniden yazıldı. Anlık görüntü yakalamak için yeni API'ler de dokümantasyonda detaylandırılmıştır.
- SolvePnP İyileştirmeleri
- SolvePnP tabanlı kamera lokalizasyon özelliğimizde, her dört karede bir doğruluğunu ciddi şekilde sınırlayan kötü bir hata vardı. Bu ele alındı ve Retroreflektif/Renk SolvePNP görselleştirmeleri için yepyeni bir tam 3D tuval oluşturuldu.
- Web Arayüzü Hata Düzeltmesi
- 2022'de, flaşlamadan sonraki ilk önyüklemede web arayüzünün kalıcı olarak bozulmasına neden olan ve kullanıcıyı yeniden flaşlamaya zorlayan son derece nadir bir sorun vardı. Kök neden bulundu ve tamamen düzeltildi.
- Yeni API'ler
- Limelight artık REST ve Websocket API'leri içeriyor. REST, Websocket ve NetworkTables API'lerinin hepsi, FRC ve diğer tüm uygulamalar için insan tarafından okunabilir, ayrıştırması kolay bir formatta tüm hedefler için tüm verileri listeleyen yeni JSON dökümü özelliğini destekliyor.
Sıfır Kodlu Öğrenme Tabanlı Görü & Google Coral Desteği
- Google Coral artık tüm Limelight modelleri tarafından destekleniyor. Google Coral, 8-bit sinir ağlarında çıkarım için özel olarak tasarlanmış 4TOPs (Saniyede Trilyonlarca İşlem) USB donanım hızlandırıcısıdır.
- Tıpkı birkaç yıl önce retroreflektif izleme gibi, FRC robotlarında öğrenme tabanlı görü için giriş engeli, ortalama bir takımın deneme yapması için bile çok yüksek olmuştur. Öğrenme tabanlı görüyü Limelight ile retroreflektif hedefler kadar kolay hale getirmek için gereken tüm altyapıyı geliştirdik.
- Kullanıma hazır bir bulut GPU kümemiz, eğitim scriptlerimiz, veri seti toplama aracımız ve insan etiketleme ekibimiz var. Derin sinir ağlarını ilk kez FRC topluluğuna getirmekten heyecan duyuyoruz.
- Şu anda iki tür modeli destekliyoruz: Nesne Algılama modelleri ve Görüntü sınıflandırma modelleri.
- Nesne algılama modelleri, algılanan tüm nesneler için "sınıf ID'leri" ve sınırlayıcı kutular (tıpkı retroreflektif hedeflerimiz gibi) sağlayacaktır. Bu, gerçek zamanlı oyun parçası izleme için mükemmeldir.
- İlk FRC nesne algılama modeline görüntüler göndererek katkıda bulunun: https://datasets.limelightvision.io/frc2023
- Algılama ağlarını kullanmak için tx, ty, ta ve tclass networktables anahtarlarını veya JSON dökümünü kullanın
- Görüntü sınıflandırma modelleri bir görüntüyü alacak ve tek bir sınıf etiketi üretecektir.
- Daha fazla bilgi edinmek ve Limelight için kendi modellerinizi eğitmeye başlamak için Google'ın Teachable Machine'ine göz atın.
- https://www.youtube.com/watch?v=T2qQGqZxkD0
- Teachable machine modelleri doğrudan Limelight ile uyumludur.
- Görüntü sınıflandırıcıları, dahili robot durumunu, saha özelliklerinin durumunu ve çok daha fazlasını sınıflandırmak için kullanılabilir.
- Bu modelleri kullanmak için tclass networktables anahtarını kullanın.
- Nesne algılama modelleri, algılanan tüm nesneler için "sınıf ID'leri" ve sınırlayıcı kutular (tıpkı retroreflektif hedeflerimiz gibi) sağlayacaktır. Bu, gerçek zamanlı oyun parçası izleme için mükemmeldir.
- Limelight OS 2023.0, özel modelleri yükleme yeteneği sağlamıyor. Bu, 2023.1'de kısa süre içinde etkinleştirilecek
Sıfır Kodlu AprilTag Desteği
- AprilTag'ler Limelight ile retroreflektif hedefler kadar kolay. ID formunda doğal bir sert filtreye sahip oldukları için, roboRIO'nuzun görüyle ilgili herhangi bir filtreleme yapması için daha da az neden var.
- Başlamak için tx, ty ve ta'yı normal şekilde kullanın. Sıfır kod değişikliği gerekli. Herhangi bir hedef özelliğine göre sıralayın, hedef gruplarını kullanın vb.
- AprilTag'ler hem her zaman kare hem de her zaman benzersiz şekilde tanımlanabilir olduğundan, tam 3D poz hesaplamaları için mükemmel bir platform sağlarlar.
- Destek kanallarımızda bu özellik için aldığımız geri bildirim son derece olumlu oldu. AprilTag'leri 2D izlemeden sahada tam 3D robot lokalizasyonuna kadar mümkün olduğunca kolay hale getirdik
- Daha ayrıntılı bilgi için Saha Haritası Spesifikasyonu ve Koordinat Sistemi Dokümanına göz atın.
- Limelight ile AprilTag'leri kullanmanın dört yolu var:
- 2D'de AprilTag'ler
- tx, ty ve ta kullanın. Pipeline'larınızı belirli bir etiket ID'si aramak için yapılandırın.
<gif>
- İlgi Noktası 3D AprilTag'ler
- tx ve ty, ta ve tid networktables anahtarlarını kullanın. İlgi noktası ofseti, doğrudan AprilTag'leri bağlı olmayan hedefleri izlemek için çoğu takımın ihtiyaç duyacağı tek şeydir.
<gif>
- Tam 3D
- LL'nizi, robotunuzu veya etiketleri tam 3D'de izleyin. İlgili verileri roboRio'nuza çekmek için campose veya json kullanın.
<gif>
- Alan Uzayı Robot Lokalizasyonu
- Limelight'ınıza nasıl monte edildiğini söyleyin, bir saha haritası yükleyin ve LL'niz WPILib Poz Tahmincisi ile kullanmak için robotunuzun saha pozunu sağlayacaktır.
- Saha koordinat sistemimiz (0,0)'ı bir köşe yerine sahanın merkezine yerleştirir.
- Bu özellik için botpose networktables anahtarını kullanın.
<gif>
2022.3.0 (13/4/22)
Hata düzeltmeleri ve kalp atışı.
Hata Düzeltmeleri
- USB Kamera akışları ve birden fazla akış örneğiyle ilgili performans, akış kararlılığı ve akış gecikmesi sorunları düzeltildi.
Özellikler ve Değişiklikler
- "hb" Kalp Atışı NetworkTable anahtarı
- "hb" değeri her işleme karesinde bir artır ve 2000000000'da sıfıra döner.
2022.2.3 (16/3/22)
Hata düzeltmeleri ve robot kodu kırpma filtrelemesi.
Hata Düzeltmeleri
- "stream" networktables anahtarı ve Resim İçinde Resim Modları düzeltildi
- "snapshot" networktables anahtarı düzeltildi. Kullanıcılar ekran görüntüsü almak için "snapshot" anahtarını "1" olarak ayarlamadan önce "0" olarak ayarlamalıdır.
- Web arayüzünden gereksiz python ile ilgili uyarılar kaldırıldı
Özellikler ve Değişiklikler
- Manuel Kırpma Filtreleme
- "crop" networktables dizisini kullanarak, takımlar artık robot kodundan kırpma dikdörtgenlerini kontrol edebilir.
- "crop" anahtarının çalışması için, mevcut pipeline varsayılan, geniş açık kırpma dikdörtgenini kullanmalıdır (minX ve minY için -1, maxX ve maxY için +1).
- Ayrıca, "crop" networktable dizisinin tam olarak 4 değeri olmalı ve bu değerlerden en az biri sıfır olmayan olmalıdır.