Ana içeriğe geç

Yazılım Değişiklik Günlüğü ve Geri Bildirim

Sorunları ve özellik isteklerini e-posta yoluyla veya Limelight Geri Bildirim Deposu üzerinden iletebilirsiniz

Limelight OS 2024.10 (9/4/24)

FTC için Limelight 3A Desteği

  • Limelight3A tam olarak desteklenmektedir
  • 3A hem FTC hem de FTC'de kullanılabilir

AprilTag Harita Güncellemeleri

  • Harita düzenleyici artık standart ve elmas FTC harita oluşturmayı destekliyor
  • LLOS web arayüzü, yüklenen haritaya göre otomatik olarak doğru saha türünü gösterecektir
  • Tüm araçlar ve arayüzlerdeki saha görselleştiricileri ittifak bölgelerini ve ftc karo ızgaralarını göstermektedir.
  • 3D görselleştirici performansı iyileştirildi.

ControlHub ve RoboRio'da USB Limelight Desteği

  • FTC takımları Control Hub'da tek bir USB özellikli Limelight kullanabilir
  • FRC takımları RoboRio'da 16'ya kadar USB özellikli Limelight kullanabilir. USB Limelight'lar, ethernet Limelight'lar gibi networktables'ı otomatik olarak doldurur.
    • Birden fazla USB Limelight kullanmak için, her LL'ye benzersiz bir USB indeksi ve benzersiz bir ana bilgisayar adı verin.

USB Bağlantı Yükseltmeleri

  • MacOS artık internet erişimi için USB Ethernet Limelight arayüzünü kullanmıyor
  • Windows artık internet erişimi için USB Ethernet Limelight arayüzünü kullanmaya çalışmıyor

REST API Güncellemeleri

  • update-robotorientation POST isteği düzeltildi.
  • MT2 artık NetworkTables olmadan tamamen erişilebilir.
  • update-robotorientation rotası bir kez kullanıldıktan sonra, NetworkTables yönlendirme güncellemeleri yeniden başlatılana kadar devre dışı bırakılır.

Limelight OS 2024.9.1 (7/7/24)

  • Harita Oluşturma Aracı artık WPILib .json apriltag düzenlerini kabul ediyor/dönüştürüyor
  • Python Snapscript'lerine AprilTag3 eklendi (from apriltag import apriltag)
  • Örnekler için github deposundaki örneklere bakın
  • Windows'ta USB bağlantı ağ geçidi sorunu düzeltildi.

mozaik ekran görüntüsü:

Limelight OS 2024.9 (7/5/24)

MegaTag Yükseltmeleri

  • Limelight OS, NetworkTables 4.0'a geçiş yaptı

  • MegaTag2 artık roboRIO'dan zaman damgalı IMU güncellemelerini almak için NT4'ün getAtomic() fonksiyonunu kullanıyor.

  • Zaman damgalı görüntü karelerimiz, interpolasyon yapılmadan önce en ilgili iki IMU örneğiyle eşleştiriliyor.

  • NT4 flush() LimelightLib'e eklendi. Eski Limelight OS sürümlerine Flush() eklemek, 2024.9 performansına oldukça yaklaşmanızı sağlayacak, ancak NT4 doğruluğun her zaman yüksek olmasını garanti eder.

  • MT2 görselleştirici robotu artık yeşil tamponlara sahip ve MT1'in görselleştirici robotu sarı tamponlar kullanıyor.

  • Metrikler artık daraltılabilir ve sanal robotlar gizlenebilir.

  • Aşağıdaki video, 2024.9'un MegaTag 2'sinin (yeşil robot) robot tarafında flush() ile Flush() olmayan 2024.5'in MegaTag2'sine (kırmızı robot) göre nasıl daha sağlam olduğunu gösteriyor

USB ID ve Yeni USB IP Adresleri

  • Herhangi bir sistemde birden fazla USB Limelight kullanmak için ayarlar sayfasında "USB ID" ayarlayın.
  • Sisteminizde görünen USB-Ethernet arayüzü, USB ID'ye göre belirlenen bir IP adresi kullanacak
  • Linux/Android/Mac Sistemleri artık varsayılan olarak 172.29.0.0/24 alt ağını kullanacak
  • Windows sistemleri artık varsayılan olarak 172.28.0.0/24 alt ağını kullanacak.
  • USBID ayarlanmışsa, alt ağ Linux/Android/Mac için 172.29.(USBID).0/24'e ve Windows için 172.28.(USBID).0/24'e değişir.
  • Artık örneğin, ana bilgisayar adlarını ve USB ID'lerini ayarlayarak tek bir USB Hub'a dört Limelight cihazı bağlayabilirsiniz

CPU Sinir Ağı Sınıflandırıcıları

  • Google Coral olmadan sinir ağı sınıflandırmasını etkinleştirmek için bir CPU .tflite sınıflandırıcısı yükleyin. LL3 varyantlarında 15-18 FPS bekleyebilirsiniz.
  • 2024.9, varsayılan bir CPU sınıflandırıcısı ile geliyor.
  • Bu özelliği etkinleştirmek için sınıflandırıcı çalışma zamanını "CPU" olarak ayarlayın

CPU Sinir Ağı Dedektörleri

  • Google Coral olmadan sinir ağı tespitini etkinleştirmek için bir CPU .tflite dedektörü yükleyin. LL3 varyantlarında 10 FPS bekleyebilirsiniz.
  • 2024.9, varsayılan bir CPU dedektörü ile geliyor.
  • Bu özelliği etkinleştirmek için dedektör çalışma zamanını "CPU" olarak ayarlayın

Limelight OS 2024.8 (7/3/24)

  • Json sonuç nesnesine python çıktısı (PythonOut), tx, ty, txnc, tync, ta eklendi
  • MT2 gecikme telafisi daha da iyileştirildi

Limelight OS 2024.7 (21.05.24)

  • Linux 6.6'ya yükseltme

Hata Düzeltmeleri

  • Görüntü işleme hattı dönüşümü düzeltildi
  • Kalibrasyon yüklemeleri, anlık görüntü yüklemeleri ve sinir ağı yüklemeleri düzeltildi

Limelight OS 2024.6 (5/8/24)

LimelightLib Python

  • pip install limelightlib-python
  • Python kütüphanemiz, herhangi bir platformda USB ve Ethernet Limelight'larla etkileşim kurmanıza olanak tanır.
  • Web arayüzü etkileşimi olmadan tam Limelight yapılandırmasına izin verir.
  • Pipeline'ları, sinir ağlarını, saha haritalarını vb. yükleyin
  • İsteğe bağlı "diske yazma" seçeneğiyle herhangi bir pipeline parametresinde gerçek zamanlı değişiklikler yapın
  • Özel python giriş verilerini gönderin, robot yönelimini ayarlayın vb.

MegaTag2 Yükseltmeleri

  • MegaTag2 Gyro gecikme telafisi iyileştirildi. Yakında daha fazla iyileştirme bekleyin!
  • Arayüze "Gyro gecikme ayarı" kaydırıcısı eklendi. MegaTag 2 gecikme telafisini manuel olarak ayarlamak için, robotunuzu döndürebilir ve dönerken lokalizasyon sonuçları mükemmel olana kadar kaydırıcıyı ayarlayabilirsiniz.

Standart Sapma Metrikleri

  • 3D Saha görselleştirici artık MegaTag1 ve Megatag2 için x, y ve yaw standart sapmalarını içeriyor.

Yeni "Odak" Pipeline Türü

  • "Odak" modundayken, bir akış kalitesi kaydırıcısına ve bir kırpma kutusu kaydırıcısına erişiminiz olacak
  • "Odak" puanını en üst düzeye çıkarmak için lensi döndürün.
  • Kameranız sabit bir konumdaysa, bu bir dakikadan az sürer. Sabit / monte edilmiş bir Limelight ile odaklanmanızı öneririz.

Yeni "Barkodlar" Pipeline Türü

  • 1280x800'de 50-60FPS Çoklu QR Kodu Algılama ve Çözümleme
  • 1280x800'de 50-60FPS Çoklu DataMatrix Algılama ve Çözümleme
  • 1280x800'de 30FPS Çoklu UPC, EAN, Code128 ve PDF417
  • Barkod veri dizeleri "rawbarcodes" nt dizisine gönderilir.
  • Barkodlar pipeline'ı, tx, ty, ta, tcornxy vb. gibi tüm 2D metrikleri doldurur.

Tamamen Yeni REST API

  • https://docs.limelightvision.io/docs/docs-limelight/apis/rest-http-api
  • REST / HTTP API'miz sıfırdan yeniden oluşturuldu.
  • REST API, web arayüzü etkileşimi olmadan tam Limelight yapılandırmasına izin verir.
  • Pipeline'ları, sinir ağlarını, saha haritalarını vb. yükleyin
  • İsteğe bağlı "diske yazma" seçeneğiyle herhangi bir pipeline parametresinde gerçek zamanlı değişiklikler yapın
  • Python giriş verilerini gönderin, robot yönelimini ayarlayın vb.

Arayüzden Kamera Yönlendirme Ayarının Kaldırılması (KIRILMA DEĞİŞİKLİĞİ)

  • Bu, "akış yönlendirme" seçeneği ile değiştirildi. Kalibrasyon ve hedefleme bu seçenekten asla etkilenmez.
  • Yeni seçenek yalnızca akışı etkiler. Baş Aşağı, 90 Derece Saat Yönünde, 90 Derece Saat Yönünün Tersine, Yatay Ayna ve Dikey Ayna
  • Takımlar artık döndürülmüş kameraları kullanırken tx ve ty'yi gerektiği gibi manuel olarak tersine çevirmeleri gerekecek.

GRIP Desteğinin Kaldırılması (KIRILMA DEĞİŞİKLİĞİ)

"Sürücü" sıfır işleme modunun kaldırılması (KIRILMA DEĞİŞİKLİĞİ)

  • Bu, "Vizör" pipeline türü ile değiştirildi

"Vizör" Pipeline türünün eklenmesi

  • Vizör pipeline'ı, minimum gecikme için tüm işlemeyi devre dışı bırakır
  • Bu, takımların yalnızca görüntüleme modları için kendi "Sürücü" pipeline'larını tasarlamalarına olanak tanır

Pipeline Dosyaları artık JSON formatını kullanıyor (KIRILMA DEĞİŞİKLİĞİ)

  • Pipeline'lar hala .vpr dosya uzantısını kullanıyor
  • (2024.6'da bazı durumlarda bozuk) Arayüz, "yükle" düğmesini kullandığınızda pipeline'ları otomatik olarak JSON'a dönüştürecek.
  • (Tam işlevsel) Ayrıca pipeline'larınızı yükseltmek için https://tools.limelightvision.io/pipeline-upgrade adresini kullanabilirsiniz

Kalibrasyon UX İyileştirmesi

  • Kalibrasyon ayarları artık önbelleğe alınıyor. Artık kalibrasyon yapmak istediğiniz her seferinde kalibrasyon ayarlarınızı girmeniz gerekmiyor.
  • Varsayılan kalibrasyon sözlüğü, Calib.io'dan önerilen 800x600mm kaba tahta ile çalışacak şekilde güncellendi.

Kalibrasyon Mozaiği

  • Daha önce, kalibrasyon görüntülerinin kalitesini belirlemek zordu
  • Kalibrasyon sekmesinde artık bir "Kalibrasyon Mozaiğini İndir" düğmesi var. Mozaik, her bir görüntünün kalibrasyonunuza tam olarak ne katkıda bulunduğunu gösterecektir.

mozaik ekran görüntüsü:

"Ağırlık Merkezi" hedefleme bölgesi

  • Renk pipeline'larıyla nesne takibini iyileştirmek için "Çıktı" sekmesine ağırlık merkezi hedefleme modu eklendi

Dinamik 3D Ofset (NT: fiducial_offset_set)

  • Artık pipeline'ları değiştirmeden 3D Ofseti ayarlamak mümkün. Bu, "hedef noktanızın" mesafeye veya diğer özelliklere bağlı olarak değişmesi gereken durumlar için kullanışlıdır.

Modbus Desteği Eklendi

  • Limelight OS artık denetim, lojistik ve endüstriyel uygulamalar için her zaman açık bir modbus sunucusuna sahip
  • Modbus kayıt özelliklerini burada görebilirsiniz: https://docs.limelightvision.io/docs/docs-limelight/apis/modbus
  • Varsayılan modbus sunucu portu arayüzün ayarlar sekmesinden değiştirilebilir
  • Modbus ve snapscript python pipeline'ları sayesinde, artık çift yönlü iletişime sahip tamamen özel görüntü uygulamaları destekleniyor.

Özel NT sunucusu

  • Ayarlar sekmesi artık özel bir NT sunucusu için bir giriş içeriyor.
  • Bu, bir PC'de çalışan bir cam NT sunucusu ve USB üzerinden iletişim kuran Limelight 3G'yi içeren yeni bir iş akışını mümkün kılıyor.

Rawfiducial değişiklikleri

  • Ham fiducial'ların "alan" değeri artık ~0-1 aralığında kalibre edilmiş, normalize edilmiş bir değerdir

Tüm NetworkTables ve JSON Değişiklikleri

  • NT getpipetype eklendi - Mevcut pipeline türü dizesini alın (örn. pipe_color, pipe_fiducial)

  • NT tcclass eklendi - Sınıflandırıcı pipeline'ı algılanan sınıf adı

  • NT tdclass eklendi - Dedektör pipeline'ı algılanan sınıf adı

  • Garantili atomik 2d hedefleme için NT t2d eklendi - [geçerli,hedefsayısı, hedefgecikmesi, yakalamagecikmesi, tx, ty, txnc, tync, ta, hedefid, sınıflandırıcıID, dedektörID, tlong, tshort, thor, tvert, ts(eğim)]

  • NT tlong, tshort, thor, tvert ve ts kaldırıldı

  • NT 'crosshairs' dizisi eklendi [cx0,cy0,cx1,cy1]

  • NT cx0, cy0, cx1 ve cy1 kaldırıldı

  • NT rawbarcodes eklendi - Barkod verilerinin NT Dize Dizisi. 32'ye kadar giriş.

  • Tüm "raw" diziler 32'ye kadar hedef için izin veriyor (8'den yükseltildi)

  • fiducial_offset_set dinamik 3d Ofset ayarlayıcı eklendi

  • JSON üst düzey sonucuna "pType" eklendi

  • JSON üst düzey sonucuna "stdev_mt1" ve "stdev_mt2" eklendi (x,y,z,roll,pitch,yaw) (metre, derece)

Diğer Dosya Formatları ve JSON Dökümlerinde Değişiklikler

  • Kalibrasyon dosya formatı basitleştirildi. Eski kalibrasyonlar yükleme sırasında otomatik olarak yeni formata dönüştürülüyor
  • Sonuçlar ve Durum JSON dökümlerinden bir iç içe geçme katmanı kaldırıldı

Hata Düzeltmeleri

  • Daha önce, bir Sinir pipeline'ı aktifken bir Google Coral çıkarılırsa, pipeline kalıcı olarak "renk/retro" moduna geri dönüyordu
    • Artık, görüntüye "CORAL'I KONTROL ET" veya "MODELİ KONTROL ET" yazdırılacak. Pipeline türü asla değişmeyecek
  • Daha önce, fiducial ID filtresinden başarıyla geçen etiketler bazen yeşil çizgi yerine kırmızı çizgiyle çiziliyordu. Bu görselleştirme sorunu düzeltildi.
  • Apriltag pipeline'ları tcornxy NT dizisini dolduruyor
  • Apriltag pipeline'ları artık min-max alan kaydırıcısına tam olarak uyuyor. Daha önce, AprilTag pipeline'ları 2D sonuçları Etiket Alanına göre filtreliyordu, ancak 3D / Lokalizasyon Sonuçlarını filtrelemiyordu.

Limelight OS 2024.5.0 (4/9/24)

  • Linux 6.1'e yükseltme

Kamera Yığını Güncellemesi

  • Limelight3G'de kamera çevre birimi kilitlenmesini düzeltmek için tüm kamera yığını güncellendi.
    • Belirtiler şunları içerir
  • Bu güncellemeyi uyguladıktan sonra pozlama ve kazanç ayarlarını yeniden ayarladığınızdan emin olun.

Dinamik Ölçek Küçültme

  • Takımlar artık mevcut pipeline'ın ölçek küçültme ayarını geçersiz kılmak için "fiducial_downscale_set" ayarını kullanabilir
  • 0:UI kontrolü, 1:1x, 2:1.5x, 3:2x, 4:3x, 5:4x
  • Yeni Helpers yöntemini 0.0 (UI Kontrolü), 1.0, 1.5, 2.0, 3.0, 4.0 değerleriyle kullanın
  • Bu, ek yük getirmeyen bir işlemdir.
  • Dinamik ölçek küçültme ve dinamik kırpma kombinasyonu ile takımlar, birden fazla pipeline yönetmeden FPS'yi maksimize edebilir

MegaTag2 İyileştirmeleri

  • MT2 artık Limelight yöneliminden bağımsız olarak, 90 derece ve -90 derece dönüşlü "dikey" modlar dahil olmak üzere çalışır

"rawdetections" nt dizisi

  • [sınıfID, txnc, tync, ta, köşe0x, köşe0y, köşe1x, köşe2y, köşe3x, köşe3y, köşe4x, köşe4y]
  • köşeler, kalibrasyon uygulanmamış piksel alanındadır

Aşındırma/Genişletme Güncellemesi

  • Renk pipeline'ları artık 10 adıma kadar genişletme ve 10 adıma kadar aşındırma destekliyor
  • Renk pipeline'ları artık genişletme ve aşındırma adımlarının sırasını tersine çevirmek için bir "ters morfo" seçeneğine sahip

LimelightLib 1.6 (9/4/24)

  • void SetFiducialDownscalingOverride(float downscale) eklendi

Pipeline kontrolü için 0'a ayarlayın veya pipeline'ınızın küçültme ayarını geçersiz kılmak için aşağıdakilerden birini kullanın: 1, 1.5, 2, 3, 4

  • RawFiducial[] GetRawFiducials() eklendi
  • RawDetection[] GetRawDetections() eklendi

Limelight OS 2024.4.0 (4/3/24)

Bu güncelleme için fikir sunan tüm ekiplere teşekkür ederiz.

Megatag 2

Megatag 2, belirsizlik içermeyen bir konumlandırıcıdır. Megatag1'e göre daha yüksek doğruluk ve hassasiyete sahiptir ve aşağıdaki gereksinimlerle oluşturulmuştur:

  • Poz belirsizliği sorununu ortadan kaldırmak ve görüntü/köşe gürültüsüne karşı dayanıklılığı artırmak.
  • Perspektif ne olursa olsun, bir veya daha fazla etiket verildiğinde mükemmel poz tahminleri sağlamak.
  • Fiziksel AprilTag yerleşim hatalarına karşı dayanıklılığı artırmak.
  • İyi poz tahmini sonuçları için gerekli robot tarafı filtreleme miktarını azaltmak.

Bu oldukça belirsiz tek etiketli durumda MegaTag2 (kırmızı robot) ile Megatag (mavi robot) arasındaki farka dikkat edin:

Megatag2, robotunuzun yönünü yeni bir metod çağrısıyla ayarlamanızı gerektirir. İşte tam bir örnek:

      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) // eğer açısal hızımız saniyede 720 dereceden fazlaysa, görüş güncellemelerini yoksay
{
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);
}

Megatag2, tek bir etiket verildiğinde herhangi bir mesafede mükemmel, belirsizlik içermeyen sonuçlar sağlar. Bu, yalnızca ilgili ve istediğiniz yerleşim toleransı dahilindeki etiketlere odaklanmanın tamamen uygun olduğu anlamına gelir. Bir etiket doğru konumda değilse veya ilgisizse, yeni dinamik filtre özelliğiyle onu filtreleyebilirsiniz.

Dinamik Apriltag Filtreleme

  • MegaTag2 mümkün olduğunca çok AprilTag toplamak için çaresiz olmadığından, iyi yerleştirilmiş ve ilgili etiketleri güvenle filtreleyebilirsiniz:
int[] validIDs = {3,4};
LimelightHelpers.SetFiducialIDFiltersOverride("limelight", validIDs);

MegaTag2'ye Geçiş

Megatag2'nin düzgün çalışması için robotunuzun yönünü bilmesi gerekir. 0 derece, 360 derece, 720 derece vb. bir yön, robotunuzun kırmızı ittifak duvarına baktığı anlamına gelir. Bu, PathPlanner, Chorero, Botpose ve Botpose_wpiblue'da kullanılan aynı kuraldır.

Kodunuza SetRobotOrientation() ekledikten sonra, yerleşik 3D görselleştiriciyi kontrol edin. Yakın mesafede, Megatag2 ve Megatag1 yakından veya tam olarak eşleşmelidir. Uzun mesafede, Megatag 2 (kırmızı robot) Megatag1'den (mavi robot) daha doğru ve daha stabil olmalıdır.

Yerleşik görselleştirici iyi sonuçlar gösterdiğinde, Megatag2'yi otonom dönemde robotunuzu yönlendirmek için güvenle kullanabilirsiniz.

Eklemenizi önerdiğimiz tek filtre "maksimum açısal hız" filtresidir. Yüksek açısal hızlarda poz tahminlerinizin biraz daha az güvenilir hale geldiğini görebilirsiniz.

Örnekler deposunda bu filtreye sahip bir Megatag2 örneği bulunmaktadır.

    if(Math.abs(m_gyro.getRate()) > 720) // eğer açısal hızımız saniyede 720 dereceden fazlaysa, görüş güncellemelerini yoksay
{
doRejectUpdate = true;
}
if(mt2.tagCount == 0)
{
doRejectUpdate = true;
}

LimelightLib 1.5 (4/3/24)

Ekle

getBotPoseEstimate_wpiRed_MegaTag2()
getBotPoseEstimate_wpiBlue_MegaTag2()
SetRobotOrientation()

Limelight OS 2024.3.4 (20.03.24)

Bu güncelleme için fikir sunan tüm ekiplere teşekkür ederiz.

Daha Yüksek Hassasiyetli Tek Etiket Çözücü

MegaTag'in tek etiket 3D çözücüsü geliştirildi. Artık uzun mesafelerde eskisinden çok daha kararlı.

JSON Varsayılan Olarak Devre Dışı (Yıkıcı Değişiklik)

  • JSON, bant genişliği kullanımını azaltmak ve Shuffleboard gibi otomatik abone olan gösterge panellerini kullanan ekipler için genel olarak varsayılan olarak devre dışı bırakıldı.
  • Bu aynı zamanda RoboRIO NT yükünü ve CPU kullanımını da azaltmalıdır.
  • JSON'u çıktı sekmesinde pipeline başına yeniden etkinleştirin.
  • Bu güncelleme, daha fazla ekibin poz tahmini için JSON'dan uzaklaşmasına olanak tanıyacak değişiklikler içermektedir.

Bozulması Giderilmiş Alan (Yıkıcı Değişiklik)

Herhangi bir hedefin alanını hesaplamadan önce köşelerin bozulması giderilir.

botpose, botpose_wpiblue ve botpose_wpired'e Fiducial Başına Metrikler Eklendi

[tx, ty, tz, roll, pitch, yaw, tagCount, tagSpan (metre), averageDistance (metre), averageArea (görüntünün yüzdesi), (etiketler) ]

Megatag lokalizasyonu tarafından kullanılan her etiket için, yukarıdaki diziler artık şunları içerir: (tagID, txnc, tync, ta, distanceToCamera, distanceToRobot, ambiguity)

Ambiguity, etiketin mevcut perspektifinin belirsizliğini gösteren 0-1 arasında yeni bir metriktir. .9'dan büyük etiket belirsizliklerine sahip tek etiketli güncellemeler muhtemelen reddedilmelidir.

"rawtargets" ve "rawfiducials" nt dizileri (Yıkıcı Değişiklik)

  • rawtargets - hedef başına (txnc,tync,ta)
  • rawfiducials - hedef başına (tagID, txnc, tync, ta, distanceToCamera, distanceToRobot, ambiguity)
  • Önceki rawtargets NT girişleri (tx0,ty0, vb.) kaldırıldı.

Hata Düzeltmeleri

  • Öncelikli ID bulunmadığında tüm tek etiketli 3D bilgilerini sıfırla. Daha önce, öncelikli etiket bulunmadığında yalnızca Tx, Ta, Ty ve Tv sıfırlanıyordu
  • Görünür tek etiket, kullanıcı arayüzünün "ID Filtreleri" özellikleri tarafından filtrelenmişse botpose'u sıfırla. Daha önce, görünür tek etiket filtrelenmiş bir etiketse, botpose'lar (0,0,0) yerine sahanın merkezine sıfırlanıyordu;
  • 2024.2, bazı nadir durumlarda belirli networktables girişlerine NAN'lar gönderiyordu. Bu artık olmayacak.

LimelightLib 1.4 (21.03.24)

  • 2024.3.4 Ham Fiducial desteği eklendi. PoseEstimates artık id, txnc, tync, ta, kamerayaUzaklık, robotaUzaklık ve belirsizlik içeren bir rawFiducials dizisi içeriyor

Limelight Donanım Yöneticisi 1.4 (18/03/24)

Hata Düzeltmesi

Keşfedilen USB Limelightlar, iki kısmi giriş yerine tek bir giriş olarak doğru şekilde görüntüleniyor.


Limelight OS 2024.2.2 (17.03.24)

Hata Düzeltmesi

TX ve TY, NT girişlerinde artı işaretine uygun şekilde davranır.


Limelight OS 2024.2 (8.3.24)

Sıfır-Nişangâh hedefleme ile Json (tx_nocross, ty_nocross) ve NT (txnc, tync)

Özel içsel kalibrasyon ile tx/ty hedefleme kullanıyorsanız, Limelight nişangâhı kameranın ana pikseli ile hizalı olmadığı için muhtemelen hala kameradan kameraya değişiklik görüyorsunuz. Daha yüksek tx/ty doğruluğu gerektiren takımlar ya nişangâhı ana piksel ile eşleşecek şekilde yapılandırabilir ya da bu yeni metrikleri kullanabilir.

tx/ty'de potansiyel olarak yıkıcı değişiklik

Bu sezonun başlarında, özellikle json'daki tx, ty ve tx + ty için özel kalibrasyonu bozan bir hata ortaya çıktı. Limelight OS birçok durumda varsayılan kalibrasyonlara geri dönüyordu.

Kalibrasyon İyileştirmeleri

Kalibrasyon artık, kaç görüntü yakalanmış olursa olsun neredeyse anında gerçekleşiyor. Ayrıca, belirli koşullar altında yaklaşık 30'dan fazla görüntü olmasından kaynaklanan bir çökmeyi de düzelttik.

Kağıt hedeflerle 15-20 görüntüde yaklaşık 1 piksellik ve yüksek kaliteli calib.io hedeflerimizle 0.3 piksellik bir yeniden projeksiyon hatası elde ediyoruz.

Fiducial Filtreler Kullanıcı Arayüzü Düzeltmesi

Fiducial filtre metin kutusu artık herhangi bir sayıda filtreyi kabul ediyor.

Çeşitli

AprilTag Üreteci, 165.1 mm etiketlerle ölçeklendirmeyi önlemek için varsayılan olarak "kenarlıksız" ayarına geçti.

Limelight OS 2024.1.1 (24.02.24)

  • priorityID düzeltildi

Limelight OS 2024.1 (24.02.24)

Donanım Metrikleri (networktables'da hw anahtarı, /status GET isteği)

Kalibrasyon İyileştirmesi

  • Bir kalibrasyon görüntüsü tam olarak bir geçerli tespit içerdiğinde oluşabilecek çökmeyi düzeltir. Web arayüzü geri bildirimini iyileştirir.

Robot Lokalizasyon İyileştirmesi (etiket sayısı ve daha fazlası)

  • Tüm networktables botpose dizileri (botpose, botpose_wpiblue ve botpose_wpired) artık Etiket Sayısı, Etiket Aralığı (metre), Ortalama Mesafe (metre) ve Ortalama Alan (görüntünün yüzdesi) içeriyor.

  • Bu metrikler, yüklenen saha haritasına dahil edilen etiketlerle hesaplanır. Özel ve/veya mobil AprilTag'ler bu metrikleri etkilemeyecektir.

  • Cihaz kalibrasyonu ve bu botpose dizisi yükseltmesi ile, bu yıl kullanım durumlarının büyük çoğunluğu için JSON'un gerekli olmadığına inanıyoruz.

  • JSON dökümü artık kolaylık için botpose_avgarea, botpose_avgdist, botpose_span ve botpose_tagcount içeriyor.

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

Yeni Özellik: Öncelikli ID (NT Anahtarı priorityid)

  • Robotunuz hem odometri tabanlı özellikleri hem de tx/ty tabanlı özellikleri kullanıyorsa, muhtemelen şu kullanıcı deneyimi sorunuyla karşılaşmışsınızdır:

  • Bu güncellemeden önce, tx/ty hedefleme için tercih edilen etiket ID'sini kolayca değiştirmenin bir yolu yoktu.

  • Arayüzde bir ID filtresi olmasına rağmen, bu filtre

    • dinamik değil
    • etiketleri megaTag lokalizasyonundan kaldırıyor.
  • Bu, takımların birkaç pipeline oluşturmasına neden oluyordu: 3D lokalizasyon için bir tane ve tx/ty etiketi başına bir tane (mavi taraf atış için etiket 7 ile bir pipeline, mavi taraf amping için etiket 6 ile bir pipeline, vb.).

  • Yeni öncelikli ID özelliği (NT Anahtarı priorityid), Limelight'ınıza "Tüm etiket tespiti, filtreleme ve sıralama tamamlandıktan sonra, öncelikli ID'ye uyan etikete odaklan" demenize olanak tanır.

  • Bu, lokalizasyonu hiçbir şekilde etkilemez ve JSON sonuçlarındaki etiketlerin sırasını sadece biraz değiştirir.

  • Öncelikli ID'niz -1 değilse, seçilen etiket görünür olmadığı sürece tx/ty/ta 0 döndürecektir.

Çeşitli

  • 3D apriltag pipeline'ında çift hedef modunu kullanırken ekran boyunca "x" sorununu düzeltir
  • REST API, sinir ağı etiket yüklemeleriyle genişletildi (/uploadlabels)
  • /status json'una cihaz takma adını ekler

LimelightLib 1.3

  • LimelightLib (Java ve CPP), lokalizasyonu her zamankinden daha kolay hale getirmek için güncellendi.
  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);
}

Takımlar için Yeni Kaynaklar

Limelight Geri Bildirim ve Sorun Takipçisi: https://github.com/LimelightVision/limelight-feedback/issues

Örnekler Deposu: https://github.com/LimelightVision/limelight-examples

Swerve ile Hedefleme ve Mesafe Ölçme Örneği: https://docs.limelightvision.io/docs/docs-limelight/tutorials/tutorial-swerve-aiming-and-ranging

MegaTag Lokalizasyon Örneği: https://docs.limelightvision.io/docs/docs-limelight/tutorials/tutorial-swerve-pose-estimation

Son katkıda bulunanlara teşekkürler: jasondaming, Gold876, JosephTLockwood, Andrew Gasser ve virtuald


Limelight 2024 Güncellemeleri (6/2/24)

Limelight Dokümantasyon Güncellemesi

  • Kurulum sürecini kolaylaştırmak için dokümantasyon yeniden yazıldı

Limelight AprilTag Üretici

  • https://tools.limelightvision.io/ artık ilk çevrimiçi AprilTag üreticisini sunuyor.
  • Yazdırılabilir bir PDF oluşturmak için kağıt boyutunuzu, işaretçi boyutunuzu ve etiket kimliklerinizi seçin.
  • Safari şu anda etiketleri düzgün görüntülemeyebilir.

Limelight Harita Oluşturucu

  • https://tools.limelightvision.io/map-builder
  • Artık sezgisel bir kullanıcı arayüzü ile özel AprilTag haritaları oluşturabilirsiniz.
  • Varsayılan aile ve etiket boyutu, 2024 sahasına uyacak şekilde güncellenmiştir.

Yeni Donanım Yöneticisi

  • Finder Tool artık Limelight Donanım Yöneticisi olarak adlandırılıyor
  • Sıfırdan yeniden yazıldı. Artık Limelight'ları güvenilir bir şekilde algılıyor, daha faydalı tanılama bilgileri sağlıyor ve düzgün çalışması için yeniden başlatma gerektirmiyor.
  • İndirme sayfasından hemen edinin notebook ekran görüntüsü:

Kendi Sinir Ağlarınızı Eğitin

notebook ekran görüntüsü:

2024 AprilTag Haritası ve Not Dedektörü

  • Harita ve dedektör modeli indirme sayfasına ve en son Limelight OS görüntüsüne eklenmiştir.

Limelight OS 2024.0 (6/2/24)

ChArUco Kalibrasyon Düzeltmeleri

  • ChArUco detektörümüzün alt piksel doğruluğu artırıldı. Pano hedefleri ve 20 görüntü ile 1-2 piksellik bir yeniden projeksiyon hatası artık elde edilebilir.
  • Aynı kamera ve aynı hedef kullanılarak, 2023.6 sürümü 20 piksellik bir RPE elde ederken, 2024.0 sürümü 1.14 piksellik bir RPE elde etti.
  • Giriş alanları artık harf ve özel karakterleri kabul etmiyor. Bu, potansiyel bir çökme olasılığını ortadan kaldırıyor.

Kutudan Çıkar Çıkmaz Megatag Doğruluk İyileştirmesi

  • Bu güncellemeden önce, Limelight'ın dahili Megatag harita oluşturucusu, .fmap dosyası tarafından sağlanan etiket boyutları yerine kullanıcı arayüzündeki etiket boyutu kaydırıcısını referans alıyordu.
  • Megatag artık fmap dosyalarında yapılandırılan etiket boyutlarına uyuyor ve boyut kaydırıcısını göz ardı ediyor.
  • Boyut kaydırıcınız 165.1 mm'ye ayarlanmamışsa, lokalizasyon doğruluğunda anında bir iyileşme fark edeceksiniz.

Performans Yükseltmeleri ve Hata Düzeltmeleri

  • Daha yüksek FPS AprilTag işlem hatları
  • Saha Uzayı Görselleştiricinin performansı önemli ölçüde iyileştirildi.

Hata Düzeltmeleri

  • 3D görselleştiricilerdeki Apriltag'ler bazen yanlış veya bozuk etiket görüntüleriyle çiziliyordu. Etiketler artık her zaman doğru şekilde görüntüleniyor.
  • "v" / tv / "valid" artık yalnızca geçerli tespitler varsa "1" döndürecek. Önceden, tv her zaman "1" idi.

2023.6 (18.04.23)

Kolay ChArUco Kalibrasyonu & Kalibrasyon Görselleştiricileri

  • ChArUco kalibrasyonu, dama tahtası kalibrasyonundan daha iyi kabul edilir çünkü oklüzyonları ve kötü köşe tespitlerini ele alır ve tüm tahtanın görünür olmasını gerektirmez. Bu, görüntülerinizin kenarlarına ve köşelerine yakın kalibrasyon tahtası köşelerini yakalamayı çok daha kolay hale getirir. Bu, bozulma 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 yaptığınızdan emin olur. Bu süreci mümkün olduğunca sağlam hale getirmek için çok fazla çaba sarf edilmiştir.
  • 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 bunları yeniden yükleyerek iç parametreler matrisinin ve bozulma katsayılarının hedefleme sonuçlarını, görüş alanını vb. nasıl etkilediğini öğrenebilirsiniz.
  • Bu videoya bir göz atın:

2023.5.1 & 2023.5.2 (22.03.23)

  • 2023.5.0'da ortaya çıkan bir regresyon düzeltildi - 2023.5 sürümü düzlemsel olmayan tüm düzenler için megatag'i düzeltirken, tek etiketli poz tahminlerinin performansını düşürmüştü. Bu sorun giderildi. Tek etiketli poz tahminleri, 2023.4'te kullanılan çözücünün aynısını kullanıyor.

  • 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 3B görselleştiricilerde doğru şekilde gösteriliyor. Görselleştiricide ve dahili olarak saat yönünün tersine pozitif.

  • Saha alanı görselleştiricisinde hangi hedeflerin şu anda izlendiği belirtiliyor.


2023.5.0 (21.03.23)

Önemli Değişiklikler

  • Önceki sürümlerde ters çevrilmiş olan Limelight Robot-Uzayı "Yaw" regresyonu düzeltildi. Web arayüzündeki Limelight yaw artık dahili olarak Saat Yönünün Tersine Pozitif.

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ı veya altını seçmek için 5 yeni bölge seçeneği eklendi.

"hwreport" REST API

  • :5807/hwreport, kamera içsel parametreleri ve bozulma bilgilerini detaylandıran bir JSON yanıtı döndürecek.

MegaTag Düzeltmesi

  • Bazı eş düzlemli olmayan apriltag düzenleri MegaTag'de bozuktu. Bu sorun düzeltildi ve artık tüm saha etiketleriyle poz tahmini stabildir. Bu, öncekinden daha uzak mesafelerde bile stabil poz tahmini yapılmasını sağlar.

Daha Yüksek tx ve ty Doğruluğu

  • TX ve TY her zamankinden daha doğru. Hedefler tamamen bozulma düzeltmesi yapılmış ve görüş alanı tamamen kamera içsel parametreleri tarafından belirleniyor.

2023.4.0 (18.02.23)

Nöral Dedektör Sınıf Filtresi

İstenmeyen tespitleri kolayca filtrelemek için takip etmek istediğiniz sınıfları belirleyin.

Nöral Dedektör genişletilmiş destek

Herhangi bir giriş çözünürlüğünü destekler, diğer nesne algılama mimarilerini desteklemek için ek çıktı şekillerini destekler. EfficientDet0 tabanlı modeller artık desteklenmektedir.


2023.3.1 (14/02/23)

AprilTag Doğruluk İyileştirmeleri

Tüm modeller için geliştirilmiş içsel matris ve daha da önemlisi, geliştirilmiş bozulma katsayıları. Tek AprilTag Lokalizasyonunda fark edilir iyileştirmeler.

Dedektör Yükleme

Dedektör yükleme sorunu düzeltildi.


2023.3 (13/02/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 sırasının pozlamasının sonu ile işleme hattının başlangıcı arasındaki süreyi temsil eder.

AprilTags için Yeni Kalite Eşiği

Sahte AprilTags artık yeni Kalite Eşiği kaydırıcısı ile daha kolay filtrelenebilmektedir. 2023.3'te ayarlanan varsayılan değer, çoğu sahte tespiti ortadan kaldırmalıdır.

Robot Uzayında Kamera Pozisyonu Geçersiz Kılma (NT Anahtarları: "camerapose_robotspace_set", "camerapose_robotspace")

Limelight'ınızın robot uzayındaki konumu artık anında ayarlanabilir. Eğer anahtar sıfırlardan oluşan bir diziye ayarlanırsa, web arayüzünde ayarlanan poz kullanılır.

İşte bir asansördeki Limelight örneği: Asansördeki Limelight

Arttırılmış Maksimum Pozlama

Maksimum pozlama süresi artık 33ms'dir (12.5 ms'den yükseltildi). Yüksek fps yakalama modları hala (1/fps) saniye ile sınırlıdır. Örneğin, 90hz boru hatları 11ms pozlama süresinin ötesinde daha parlak görüntülere sahip olmayacaktır.

Botpose güncellemeleri

Ağ tablolarındaki üç botpose dizisinin her biri, toplam gecikmeyi (yakalama gecikmesi + hedefleme gecikmesi) temsil eden yedinci bir girişe sahiptir.

Hata düzeltmeleri

  • LL3 MJPEG akışlarını shuffleboard'da düzeltme
  • camMode'u düzeltme - sürücü modu artık parlak, kullanılabilir görüntüler üretiyor
  • Pozlama etiketi düzeltildi - her "tik" 0.1 ms değil 0.01ms'yi temsil ediyor
  • Sinir ağı dedektör yüklemesini düzeltme

2023.2 (28/01/23)

3D'yi her zamankinden daha kolay hale getiriyoruz.

WPILib uyumlu Botpose'lar

Botpose artık kutudan çıktığı gibi kullanımı çok daha kolay.

Bunlar WPILib Koordinat sistemleriyle eşleşiyor. megatag botpose örneği:

Tüm botpose'lar doğrudan web arayüzündeki saha-uzayı görselleştiricisinde yazdırılıyor, böylece her şeyin düzgün çalıştığını bir bakışta onaylamak çok kolay.

3D Verilere Daha Kolay Erişim (Yıkıcı Değişiklikler)

HedefUzayında RobotPozisyonu, AprilTag'lerle ilgili olarak Limelight'tan çıkan muhtemelen en kullanışlı veridir. Sadece bunu kullanarak, bir tahrik sistemini 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

Öğretilebilir makine modellerini Limelight Sınıflandırıcı Pipeline'ına yükleyin. Tensorflow Lite EdgeTPU uyumlu modeller olduğundan emin olun. .tflite ve .txt etiket dosyalarını ayrı ayrı yükleyin.


2023.1 (19.01.23)

MegaTag ve Performans Artışları

Bir Hatanın Düzeltilmesi

Kullanıcı arayüzündeki varsayılan işaretçi boyutu parametresi 152.4mm olarak düzeltildi (203.2mm'den düşürüldü). Bu, çoğu doğruluk sorununun kaynağıydı.

Artırılmış İzleme Kararlılığı

AprilTag algılama ve çözümlemeyi ayarlamanın birkaç yolu vardır. Özellikle düşük ışık / düşük pozlama ortamlarında genel kararlılığı artırdık.

Ultra Hızlı Gri Tonlama

Gri tonlama öncekine göre 3-6 kat daha hızlı. Takımlar AprilTag'leri izlerken her zaman gri bir video akışı görecekler.

Performans İçin Kırpma

AprilTag işlem hatlarına artık kırpma kaydırıcıları eklendi. Görüntünüzü kırpmak, herhangi bir çözünürlükte kare hızlarının iyileşmesini sağlayacaktır.

Daha Kolay Filtreleme

AprilTag işlem hatlarında artık JSON çıktısını, botpose etkin etiketleri ve tx/ty etkin etiketleri filtreleyen tek bir "ID filtresi" alanı bulunmaktadır. İkili filtre kurulumu hatalı ve kafa karıştırıcıydı.

Önemli Değişiklik

"camtran" NT Anahtarı artık "campose" olarak değiştirildi

JSON güncellemesi

"botpose" artık json sonuçları dökümünün bir parçası

Saha Uzayı Görselleştirici Güncellemesi

Saha-uzayı görselleştirici artık 2023 FRC sahasını gösteriyor. Artık botpose doğruluğunu bir bakışta değerlendirmek daha kolay olmalı.

Limelight MegaTag (yeni botpose)

En büyük önceliğim, daha yüksek doğruluk, azaltılmış gürültü ve belirsizliğe karşı dayanıklılık için botpose'u yeniden yazmaktı. Limelight'ın yeni botpose uygulaması MegaTag olarak adlandırılıyor. Birden fazla bireysel saha-uzayı pozunun aptal bir ortalamasını hesaplamak yerine, MegaTag esasen tüm etiketleri birkaç anahtar noktası olan dev bir 3D etikette birleştiriyor. 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 etiket belirsizliğini gösteren tam ekran:

İşte avantajları:

Botpose artık görüş alanında birden fazla etiket varsa belirsizliklere (etiket çevirmesi) karşı dayanıklıdır (yakın ve eş düzlemli olmadıkları sürece. İdeal olarak anahtar noktalar eş düzlemli olmamalıdır). Görüş alanında birden fazla etiket varsa, botpose artık etiket köşelerindeki gürültüye karşı daha dayanıklıdır. Etiketler birbirinden ne kadar uzaksa o kadar iyi. Bu, düzlemsel etiketlerle sınırlı değildir. Tam 3D'de ve herhangi bir yönelimde herhangi bir sayıda etikete ölçeklenir. Zemin etiketleri ve tavan etiketleri mükemmel çalışır.

İşte basit bir düzlemsel durumla bunun nasıl çalıştığının bir yönünü gösteren bir diyagram. Sonuçlar aslında gösterilenden daha iyidir, çünkü gösterilen MegaTag'de bir nokta yerine üç noktaya önemli bir hata uygulanmıştır. 3D birleşik MegaTag boyut ve anahtar nokta sayısı arttıkça, kararlılığı artar.

Sinir Ağı yüklemesi 2023.2'ye ertelendi!

2023.0.0 ve 2023.0.1 (11/01/23)

AprilTags, 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 hattı ve Kazanç kontrolü
    • Yeni yakalama hattımız, 2022'dekinden 100 kat daha kısa pozlama sürelerine olanak tanıyor. Yeni hat ayrıca Kazanç Kontrolünü de etkinleştiriyor. Bu, AprilTags takibi için son derece önemlidir ve retroreflektif hedeflemeyi her zamankinden daha güvenilir hale getirecektir. Limelight OS 2023'ten önce, Limelight'ın sensör kazancı belirleyici değildi (yine de çalışması için bazı hileler uyguladık).
    • Yeni "Sensör Kazancı" kaydırıcısı ile ekipler, pozlama kaydırıcısına dokunmadan görüntüleri her zamankinden daha karanlık veya daha parlak hale getirebilir. Kazancın artırılması görüntüdeki gürültüyü artıracaktır.
    • Daha düşük kazancı yeni daha düşük pozlama süreleriyle birleştirerek, tam parlaklıkta LED'ler ve retroreflektif hedeflerle neredeyse tamamen siyah görüntüler üretmek artık 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, ekipler AprilTags'i izlerken yüksek pozlama sürelerinden kaynaklanan hareket bulanıklığı etkilerini en aza indirebilecekler.
    • Bu yeni hattı tüm özellikleri koruyarak 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ış Ekran Görüntüsü Arayüzü
    • Ekran görüntüsü özelliği, görüntü yüklemeleri, görüntü indirmeleri ve görüntü silme işlemlerine izin verecek şekilde tamamen yeniden yazıldı. Ayrıca dokümantasyonda detaylandırılan ekran görüntüsü yakalamak için yeni API'ler de var.
  • 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 sorun giderildi ve Retroreflektif/Renk SolvePNP görselleştirmeleri için yepyeni tam 3D bir tuval oluşturuldu.
  • Web Arayüzü Hata Düzeltmesi
    • 2022'de çok nadir görülen bir sorun, flaşlamadan sonraki ilk önyüklemede web arayüzünün kalıcı olarak bozulmasına neden oluyordu ve bu da kullanıcıyı yeniden flaşlamaya zorluyordu. 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 tümü, FRC ve diğer tüm uygulamalar için insan tarafından okunabilir, basit bir şekilde ayrıştırılabilen 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üş ve Google Coral Desteği

  • Google Coral artık tüm Limelight modelleri tarafından destekleniyor. Google Coral, 8 bitlik sinir ağları üzerinde çıkarım için özel olarak tasarlanmış 4TOPs (Saniyede Trilyon İşlem) USB donanım hızlandırıcısıdır.
  • Birkaç yıl önce retroreflektif izleme gibi, FRC robotlarında öğrenme tabanlı görüşün giriş engeli ortalama bir ekibin bile deneme yapması için çok yüksekti. Limelight ile öğrenme tabanlı görüşü retroreflektif hedefler kadar kolay hale getirmek için gereken tüm altyapıyı geliştirdik.
  • Hazır bir bulut GPU kümemiz, eğitim komut dosyalarımız, bir veri seti toplama aracımız ve bir 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 kimlikleri" ve sınırlayıcı kutular sağlayacaktır (tıpkı retroreflektif hedeflerimiz gibi). Bu, gerçek zamanlı oyun parçası takibi için mükemmeldir.
      • Lütfen şu adresten görüntü göndererek FRC'nin ilk nesne algılama modeline 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.
  • Limelight OS 2023.0 özel modelleri yükleme yeteneği sağlamıyor. Bu, kısa süre sonra 2023.1'de etkinleştirilecek

Sıfır Kodlu AprilTag Desteği

  • AprilTags, Limelight ile retroreflektif hedefler kadar kolaydır. Kimlik şeklinde doğal bir sert filtreye sahip oldukları için, roboRIO'nuzun herhangi bir görüşle ilgili filtreleme yapması için daha az neden var.
  • Başlamak için tx, ty ve ta'yı normal şekilde kullanın. Sıfır kod değişikliği gereklidir. Herhangi bir hedef özelliğine göre sıralayın, hedef gruplarını kullanın vb.
  • AprilTags 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.
  • Bu özellik için destek kanallarımızda aldığımız geri bildirimler son derece olumlu oldu. AprilTags'i 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 Belgesine göz atın.
  • Limelight ile AprilTags'i kullanmanın dört yolu vardır:
  • 2D'de AprilTags
    • tx, ty ve ta'yı kullanın. Belirli bir etiket kimliğini aramak için hatlarınızı yapılandırın.
    • <gif>
  • İlgi Noktası 3D AprilTags
    • tx ve ty, ta ve tid networktables anahtarlarını kullanın. İlgi noktası ofseti, çoğu ekibin doğrudan AprilTags'e bağlı olmayan hedefleri izlemek için ihtiyaç duyacağı tek şeydir.
    • <gif>
  • Tam 3D
    • LL'nizi, robotunuzu veya etiketleri tam 3D olarak izleyin. İlgili verileri roboRio'nuza çekmek için campose veya json kullanın.
    • <gif>
  • Saha Uzayı Robot Lokalizasyonu
    • Limelight'ınıza nasıl monte edildiğini söyleyin, bir saha haritası yükleyin ve LL'niz WPILib Pose Estimator ile kullanılmak üzere 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.04.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 kez artar ve 2000000000'da sıfıra sıfırlanır.

2022.2.3 (16.03.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 Filtrelemesi
    • "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, tamamen 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 dizisi tam olarak 4 değere sahip olmalı ve bu değerlerden en az biri sıfır olmamalıdır.

2022.2.2 (23.02.22)

  1. Hafta ve FMS güvenilirlik testlerine dayalı olarak tüm takımlar için zorunlu yükseltme.

Hata Düzeltmeleri

  • Açık web arayüzleri, FMS, FMS benzeri kurulumlar, birden fazla görüntüleyici cihaz vb. ile ilgili donma / bağlantı kaybı / hedefleme kaybı sorunu düzeltildi.

Özellikler ve Değişiklikler

  • Kırpma Filtresi

    • Belirtilen kırpma dikdörtgeninin dışındaki tüm pikselleri yok say
    • Eğer volanınızın sahada herhangi bir tatlı noktası varsa, belirli boru hatlarında piksellerin büyük çoğunluğunu yok saymak için kırpma filtresini kullanabilirsiniz. Bu özellik, takımların hedef olmayan nesneleri izleme olasılığını azaltmalarına yardımcı olmalıdır.
    • Kargo takip ediyorsanız, görüntünün yalnızca belirli bir bölümünde kargo aramak için bu özelliği kullanın. Takımınızın tamponlarını, uzaktaki hedefleri vb. yok saymayı düşünün.
  • Köşeler özelliği artık akıllı hedef gruplandırma ile uyumlu

    • Bu, RIO üzerinde daha gelişmiş özel görüş yapmak isteyen takımlar için
    • "tcornxy" köşe sınırı 64 köşeye yükseltildi
    • Kontur basitleştirme ve dışbükey zorlama özellikleri artık akıllı hedef gruplandırma ve köşe gönderme ile düzgün çalışıyor
  • IQR Filtresi maksimum değeri 3.0'a yükseltildi

  • Web arayüzü canlı hedef güncelleme hızı, web arayüzü açıkken bant genişliği ve CPU yükünü azaltmak için 30fps'den 15fps'ye düşürüldü


2022.1 (25.01.22)

Hata Düzeltmeleri

  • Tedarikçilerimizden birinden, özellikle Limelight 2'de kullanılan CPU'ların yaklaşık 1/75'ini etkileyen bir sorun (ve çözüm!) hakkında bilgi edindik (belirli bir parti ile ilgili olabilir). Bu mantıklı ve 2022 görüntüsü ile 2020 görüntüsü arasındaki kalan birkaç önyükleme farkından biriydi.
  • GRIP girişleri ve SolvePNP Modelleri için yükleme düğmeleri düzeltildi

Özellikler

  • Ton Gökkuşağı

    • Yeni ton gökkuşağı, ton eşiğini yapılandırmayı kolaylaştırır.
  • Ton Tersine Çevirme

    • Yeni ton tersine çevirme özelliği, kırmızı nesneleri izlemek istiyorsanız kritik bir özelliktir, çünkü kırmızı hem ton aralığının başında hem de sonunda yer alır:
  • Yeni Python Kütüphaneleri

    • Python sanal ortamımıza scipy, scikit-image, pywavelets, pillow ve pyserial eklendi.

2022.0 ve 2022.0.3 (15/01/22)

Bu büyük bir güncelleme. İşte dört ana değişiklik:

Özellikler

  • Akıllı Hedef Gruplama

    • Tüm bireysel hedef filtrelerini geçen hedefleri otomatik olarak gruplar.
    • -grup boyutu kaydırıcı minimumu- ile -grup boyutu kaydırıcı maksimumu- arasındaki herhangi bir sayıda hedefi dinamik olarak gruplar.
  • Aykırı Değer Reddi

    • Bu hedef diğer hedeflerden daha zorlu olsa da, bize daha fazla filtreleme fırsatı sunar. Kavramsal olarak, bu hedef sadece bir "yeşil leke"den daha fazlasıdır. Hedefin birbirine yakın birden fazla hedeften oluştuğunu bildiğimiz için, tek başına duran aykırı hedefleri gerçekten reddedebiliriz.
    • Bu yılın hedefi için neredeyse tamamen iyi hedef filtrelemeye güvenmelisiniz ve yalnızca kamera akışınızda sahte aykırı değerler görürseniz veya beklerseniz aykırı değer reddini kullanmalısınız. Standart hedef filtrelemeniz zayıfsa, aykırı değer tespiti size karşı çalışmaya başlayabilir!
  • Limelight 2022 Görüntü Yükseltmeleri Yazılımımızdan yüzlerce hareketli parçayı kaldırdık. İşte sonuçlar:

    • Sıkıştırılmış Görüntü Boyutu: 2020'de 1.3 GB → 2022 için 76MB (17 kat azaltıldı!)
    • İndirme süresi: 2020'de 10'larca dakika → 2022 için saniyeler
    • Flash süresi: 2020'de 5+ dakika → 2022 için saniyeler
    • Önyükleme süresi: 2020'de 35+ saniye → 2022 için 14 saniye (LED'ler 10 saniyede açılıyor)
  • Tam Python Komut Dosyası Oluşturma

    • Limelight, çok sayıda öğrenciyi robotik alanında bilgisayarlı görünün bazı yetenekleriyle başarıyla tanıştırdı. Python komut dosyası oluşturma ile takımlar artık kendi görüntü işleme hatlarını yazarak bir adım daha ileri gidebilirler.
  • Bu güncelleme, Limelight 1 dahil tüm Limelight Donanımlarıyla uyumludur.

  • Bilinen sorunlar: Python ile donanım yakınlaştırma kullanmak beklenmeyen sonuçlar üretecektir.

  • 2022.0.3, 5802 GRIP akışını geri getirir ve bazı önyükleme süresi optimizasyonlarını geri alarak bazı LL2 ünitelerindeki önyükleme sorunlarını giderir. Önyükleme süresi 16 saniyeye çıkarılmıştır.

2020.4 (11.03.20)

2020.4, ani bir mjpeg akışı bağlantı kesintisi sırasında meydana gelebilecek aralıklı 2-4 saniyelik çökmeyi ortadan kaldıran bir başka kritik güncellemedir. Bu genellikle maçın tam sonunda oluyordu ve bazı durumlarda maçlar sırasında da gerçekleşebiliyordu.


2020.3 (25.02.20)

2020.3, aralıklı olarak ağ ile ilgili yazılım yeniden başlatmalarını ele alan ve USB kamera bağlantısı kesildiğinde meydana gelen bir çökmeyi düzelten kritik bir güncellemedir.


2020.2 (30/01/20)

2020.2, Limelight'ın donanımını daha da ileri taşıyarak herhangi bir noktaya kaydırma ve yakınlaştırma yeteneği ekliyor. Ayrıca yepyeni bir video modu ve önemli hata düzeltmeleri de getiriyor. Gelecek güncellemelerde görmek istediğiniz özellikleri bize bildirin!

Özellikler

  • 60 FPS'de 3x Donanım Yakınlaştırma

    • Son güncellememiz, tüm Limelight modellerine hiçbir ek maliyet olmadan 2x Donanım Yakınlaştırma özelliği ekledi. Donanım yakınlaştırmamızı 3x Donanım Yakınlaştırma ile daha da ileri taşımayı başardık. Artık tüm Limelight modelleri 60fps'de 3x Donanım Yakınlaştırma yapabilir. Bu, her takım için tam saha takibini daha da kolaylaştırıyor.
  • Donanım Kaydırma

    • 2020'de hem uzun hem de kısa mesafelerden atış yapabilen robotlar, hareketli, ayarlanabilir bir Limelight montajı kullanmadan Limelight'larında Donanım Yakınlaştırma kullanmakta zorlanabilirlerdi. Bu sorunu çözmek için Donanım Kaydırma özelliğini ekledik.

Hata Düzeltmeleri

  • Renk dengesi kaydırıcılarını bozan sürücü sorunları giderildi
  • Takımlardan gelen az sayıdaki ağ performansı raporunu ele almak için tüm ağ ile ilgili sürücüler 2019 sezonu varyantlarına geri döndürüldü

2020.1 (16/01/20)

2020.1, Limelight'ın şimdiye kadarki en harika özelliklerinden birini ekliyor: 2x Donanım Yakınlaştırma. Bu dijital yakınlaştırma değildir ve artık tüm Limelight sürümleri için etkinleştirilmiştir.

Özellikler

  • 2x Donanım Yakınlaştırma

    • Dijital yakınlaştırma değil
    • Uzun mesafede çok daha iyi takip ve tam saha mesafelerinde stabil takip elde etmek için 2x Donanım yakınlaştırmayı etkinleştirin.
    • Bu özellik kesinlikle hiçbir gecikme veya kare hızı maliyeti olmadan geliyor - takip, ek yük olmadan 90fps'de çalışmaya devam ediyor.
  • Manuel Nişangâh

    • Web arayüzündeki kaydırıcılarla tek ve çift nişangâh konumlarını manuel olarak ayarlayın
  • Yeni SolvePNP / 3D özellikleri (Hala deneysel)

    • Bir hedefin yalnızca en dış noktalarını kullanmak için "Force Convex" seçeneğini ekledik - bu, altıgen hedef için kullanılan ince bant nedeniyle 2020'de gereklidir.
    • "Bind target" seçeneği eklendi. Bu özellik, "tx" ve "ty"yi 3D hedefe bağlar. Bu, robotları 3D hedefleri kullanarak skor yapmaya yönlendirmek için gereklidir.
    • Son olarak, 3D uzayda istenen hedef konumunu Z ekseninde otomatik olarak kaydırmak için "Goal Z-Offset" seçeneğini ekleyin.
    • Infinite Recharge'da, "Goal Z-Offset" altıgen hedefin arkasındaki küçük, dairesel hedefin merkezini takip etmek için kullanılacaktır.
  • "tc" ile renk algılama

    • Nişangâhın konumundaki Kırmızı, Yeşil ve Mavi değerlerini elde etmek için Network Tables'daki yeni "tc" dizisini okuyun. Mükemmel renk algılama elde etmek için giriş sekmesindeki "Blue Balance" ve "Red Balance" ayarlarını yapın.

Hata Düzeltmeleri

  • 2020.0'da bozulan USB Kamera işlevselliği artık 2020.1'de düzeltildi
  • 2020.0'da bozulan SolvePnP işlevselliği artık 2020.1'de düzeltildi
  • SolvePnP, eksen görselleştirme merkezi olarak model merkezini düzgün şekilde kullanıyor

2019.7 (4/5/19)

2019.7 iki yeni özellik ekliyor.

Özellikler

  • 160x120 30fps akış
    • Geniş açılı USB kameraları kullanan takımlar için daha pürüzsüz, düşük bant genişliği akışı. 180 derecelik kamera akışımızın bant genişliği ~3.7mbps'den ~1.8 mbps'ye düştü.
    • Akış çözünürlüğünü ayarlar sekmesinden değiştirin.
    • Geniş açılı USB kamerası takılı bir Limelight'ta akış çözünürlüğünü değiştirme. Resim içinde Resim yok ve normal akış hızı.
  • Akıllı Benek Reddi
    • Bu yıl kameralarını hedefle aynı hizaya monte eden takımlar, istenmeyen LED yansımalarıyla uğraşmak zorunda kaldı.
    • Alan kaydırıcısı her zaman bu sorunu çözmüyor, çünkü takımlar büyük mesafelerde küçük görüş hedeflerini izlemek istiyor.
    • Bu yeni özellik, diğer tüm filtrelerden geçmiş olan göreceli olarak küçük konturları otomatik olarak reddedecek.
    • Bir robot bir görüş hedefinden uzaklaştıkça (boyutunu küçülterek), SSR otomatik olarak ayarlanarak sadece göreceli olarak küçük konturları reddetmeye devam edecek.

Değişiklikler

  • Araç İpuçları
    • Bazı Limelight kontrollerinde artık araç ipuçları mevcut

2019.6.1 Düzeltme (14.03.19)

2019.6.1, Grip yüklemelerini düzeltir.


2019.6 (12/03/19)

2019.6 tamamen güvenilirlik ile ilgilidir.

Hata Düzeltmeleri

  • USB Kameralar
    • Bazı USB kameraların önyüklemede başarısız olmasına neden olabilecek sorunu giderin.
  • FMS
    • Limelight'ı FMS yeniden başlatmalarına ve saha / dizüstü bilgisayar ağ değişikliklerine karşı daha (hatta tamamen) dirençli hale getirin.
    • Limelight artık ani bir istemci ağ değişikliğinden sonra takılmayacak.
  • Ham Kontur Sıralama (YIKICI DEĞİŞİKLİK)
    • Kesişim filtreleri artık ham kontur sıralamasını etkilemiyor.
  • Smartdashboard otomatik gönderimi
    • LL, SmartDashboard'a belirli bilgi parçalarını otomatik olarak gönderir (IP Adresi, Arayüz url'si vb.). Bu değerlerin adları artık ana bilgisayar adını içeriyor.

Özellikler ve Değişiklikler

  • compute3d özelliğinin hassasiyetini ve kararlılığını önemli ölçüde artırın. Çeviri ve dönüş ölçümleri daha büyük mesafelerde kararlıdır.
  • Maksimum Siyah Seviye Ofseti 40'a yükseltildi (25'ten) daha da karanlık görüntüler için.
  • "Çift Artı İşareti" modu etkinken "Çıktı" sekmesinde yeni "En Yakın" sıralama seçenekleri.
    • Standart - "Çift Artı İşareti" moduyla mevcut "en yakın" sıralama uygulaması.
    • Standart V2 - "Çift Artı İşareti" moduyla deneysel, akıllı "en yakın" sıralama uygulaması.
    • Artı İşaretlerinin Ortalaması - "Çift Artı İşareti" moduyla "En Yakın" sıralama kökeni, iki artı işaretinin ortalamasıdır.
    • Artı İşareti A - "Çift Artı İşareti" moduyla "En Yakın" sıralama kökeni artı işareti A'dır.
    • Artı İşareti B - "Çift Artı İşareti" moduyla "En Yakın" sıralama kökeni artı işareti B'dir.
  • Yeni "LED Modu" pipeline seçenekleri: "Sol Yarı", "Sağ Yarı"
  • compute3D etkinken kayan noktalı ham köşe değerleri.
  • Sihirli değnekleri kullanırken görüntü dekorasyonlarını gizle
  • Web arayüzünde daha büyük akış

2019.5 (2/9/19)

2019.5 ile birlikte yepyeni compute3D kamera lokalizasyon özelliğini tanıtıyoruz. Sadece bir avuç takım bu özelliği görüntü sistemlerine eklemeye çalışmıştı ve şimdi tüm Limelight 1 ve Limelight 2 kullanıcıları için mevcut.

Bu, bu yılın oyunu için sihirli bir çözüm değil. Bu özellik kesinlikle gerekli olmadıkça, standart yüksek hızlı 90 fps takibi kullanmanın yaratıcı yollarını düşünmenizi şiddetle tavsiye ederiz.

Özellikler

  • Yüksek Hassasiyet Modu ve PnP
    • Aşağıdaki gif'te, bir Limelight 2 hedefin 37 inç arkasına ve 14.5 inç sağına yerleştirildi.
    • Limelight daha sonra elle döndürüldü. Mesafelerin çoğunlukla değişmeden kaldığına dikkat edin.
    • 2019.4 ile köşe göndermeyi tanıttık. Bu, gelişmiş takımların OpenCV'nin solvePNP() kullanarak kendi algoritmalarını yazmalarına olanak sağladı. 2019.5 ile birlikte, tüm bu işlem cihaz üzerinde gerçekleşiyor.
    • Hedefinizin bir modelini içeren düz metin csv dosyasını yükleyin. Web sitemizde 2019 hedeflerinin önceden oluşturulmuş modellerini barındırıyoruz. Tüm modeller merkezlenmiş bir orijine sahip olmalı ve inç ölçeklendirmesi ile saat yönünün tersine nokta sıralaması kullanmalıdır.
    • Yeni yüksek çözünürlüklü 960x720 modunu etkinleştirin ve ardından Limelight'ınızın hedefinize göre konumunu ve dönüşünü elde etmek için "Solve 3D"yi etkinleştirin.
    • Daha kolay model oluşturma ve eşik ayarı için köşe numaraları artık görüntü üzerinde gösteriliyor.
    • Kameranızın dönüşümünün tüm 6 boyutunu (x,y,z,pitch,yaw,roll) "camtran" networktable sayı dizisini okuyarak öğrenin.
  • Siyah Seviyesi
    • Yeni siyah seviyesi kaydırıcısı ile eşikleme artık daha da kolay. Görüntülerinizi daha da karartmak için siyah seviyesi ofsetini artırın.

Önemli Değişiklikler

  • LL2 için bildirilen dikey FOV, listelenen 49.7 derece değeriyle eşleşecek şekilde düzeltildi. Bu, "ty" değerlerinizi değiştirecektir.

Hata Düzeltmeleri

  • Balıkgözü USB kameraları takıldığında oluşabilen yalnızca akış çökmesi düzeltildi.
  • Ağ ile ilgili sürücünün neden olduğu nadir görülen takılma düzeltildi.
  • Köşe yaklaşımı artık her zaman aktif.

2019.4 (26/01/19)

Bu sürümle birlikte tüm kritik hata raporlarının ele alındığına inanıyoruz.

Özellikler

  • Köşeler
    • Hedefin köşelerini iki dizi olarak (tcornx, tcorny) *ARTIK tcornxy olarak "Çıktı" sekmesinde "köşeleri gönder" seçeneğini etkinleştirerek gönderin. Bu, solvePNP() gibi yöntemlerle gelişmiş işlem hatlarıyla ilgilenen takımlara daha fazla olanak sağlayacaktır.
    • "Çıktı" sekmesindeki "köşe yaklaşımı" kaydırıcısı ile köşe yaklaşımını ayarlayın.

Hata Düzeltmeleri

  • İki hedefin tam olarak aynı alana, x koordinatına veya y koordinatına sahip olduğunda meydana gelen donma + nadir çökme sorununu düzeltin.
  • İkili ve üçlü hedef modlarında alan hesaplamasını düzeltin.
  • Daha iyi performans için kontur sıralamasını optimize edin.

2019.3 (19/01/19)

2019.3, çeşitli hataları düzeltir ve özellik isteklerini karşılar.

Özellikler

  • Akış Hızı (bant genişliği azaltma)
    • Ayarlar sayfasında akış hızını "düşük" olarak ayarlayarak daha düşük bant genişliğine sahip 15fps video akışı elde edebilirsiniz.
  • NetworkTables'da Ham Konturlar devre dışı bırakıldı (bant genişliği azaltma)
    • Ham konturlar artık varsayılan olarak devre dışı bırakıldı. Bu, Limelight'ın genel bant genişliğini daha da azaltacaktır.
    • Varsayılan olarak saniyede yaklaşık 180 daha az networktables girişi gönderilmektedir.
    • Ham konturları yeniden etkinleştirmek için "Çıktı" sekmesindeki yeni "Ham Konturlar" pipeline seçeneğine bakın.
  • Aktif Pipeline Indeksi
    • Kameranın gerçek aktif pipeline indeksini almak için "getpipe" networktable anahtarını okuyun. Bu, 90hz'de güncellenir.
    • Aktif pipeline indeksi artık FPS göstergesinin altında video akışına yazılmaktadır.
  • Sol ve Sağ Kesişim Filtreleri
    • Takımlar artık "sol" ve "sağ" çift kontur kesişim filtreleri arasında seçim yapabilir. "Üst" ve "alt" kesişim filtreleri 2019.2'de eklenmişti.

Hata Düzeltmeleri

  • 2019.2'de ortaya çıkan LabView Dashboard akış hatasını düzeltildi
  • Web sayfası artık internetten simge fontları talep etmiyor. Tüm fontlar yerel olarak depolanıyor. Bu, arayüz yükleme hızını artırmalıdır.
  • "Sürücü modu" pozlamasını azaltıldı.
  • "Mesafe Dönüşümü" GRIP uygulaması düzeltildi
  • Ana bilgisayar adının değiştirilmesinden kaynaklanan 20 saniyelik iletişim gecikmeleri düzeltildi.

2019.2 (1/7/19)

2019.2, 2019 sezonu için ekipleri daha iyi donatmak amacıyla yeni özellikler ekliyor.

  • Kesişim Filtresi
  • Yön Filtresi

Ek Değişiklikler ve Düzeltmeler

  • Etkinlik sorun gidermeyi kolaylaştırmak için IP Adresi otomatik olarak SmartDashboard/Shuffleboard'a gönderiliyor. Bunun bir sorun olduğuna dair neredeyse hiç rapor almadık, ancak bu başka bir önlem özelliği olarak hizmet ediyor.
  • Pipeline adı otomatik olarak SmartDashboard/Shuffleboard'a gönderiliyor
  • Yeni networktables anahtarları ile kaba sınırlayıcı kutunun genişliğine ve yüksekliğine piksel cinsinden erişin.
  • Yeni networktables anahtarları ile mükemmel sınırlayıcı kutunun en uzun ve en kısa kenarına piksel cinsinden erişin.
  • "Sıralama Modu" artık çift konturlara uygulanıyor
  • "Sıralama Modu" artık düzeltildi
  • 5802 akışı kamera üzerinde daha az yük oluşturuyor

2019.1 (18.12.18)

2019.1, beta sırasında bildirilen tüm önemli hataları düzeltir

  • Performans tekrar sabit 90fps'ye döndü. Beta sırasındaki performans sorunlarımızın temel nedeni bir sürücü sorunuydu
  • IP ve ana bilgisayar adı ayarları artık gerçekten uygulanıyor ve "kalıcı" oluyor
  • Sihirli Çubuklar, Limelight 2018 yazılımındakilere uyacak şekilde yeniden sıralandı
  • Artık web arayüzü üzerinden maskeler gibi Grip girişlerini destekliyoruz
  • NetworkTables donma sorunu düzeltildi

2019.0 (10.12.18)

2019 ile birlikte GRIP desteği, tamamen yeni bir arayüz ve daha temiz bir yükleme prosedürü sunuyoruz.

  • GRIP Desteği

    • Limelight için GRIP ile işlem hatları oluşturun ve kameranıza yüklemek için "LL Script" dosyalarını dışa aktarın.
    • Maskeler ve NetworkTables desteği gelecek bir güncellemede eklenecek
    • GRIP'te test etmek için http://limelighturl:5802 adresinde sade bir video akışı sunun
  • Tamamen yeni web arayüzü

    • Daha küçük kontroller
    • Daha fazla ipucu
    • Arayüzden LED'leri kapatma yeteneği eklendi
    • Daha kolay görüntü değiştirme için ekran açılır kutusunu akışın altına taşıma
    • Limelight ile daha hızlı iletişim. Yeni web teknolojisi, kodumuzun diğer kısımlarını basitleştirmemize olanak sağladı.
  • Yükleme

    • "Balena Etcher"a geçiş yaptık
    • Etcher iki kat daha hızlı ve tüm platformlarda çalışıyor
    • Geçiş ile yükleme açılır pencereleri düzeltildi.
  • Diğer

    • LED Modu, pipeline'a özgü LED Modlarına izin verecek şekilde değiştirildi
    • Otomatik IP atama modunda daha hızlı önyükleme süreleri
    • Optimizasyonlar ve küçük hata düzeltmeleri

2018.5 (28.03.18)

2018.5, kullanıcıların anlık görüntüler üzerinde pipeline'ları ayarlamasını engelleyen kritik bir sorunu düzeltir.


2018.4 (19/03/18)

2018.4, küp takibi için oldukça önemli olan yeni kontur sıralama seçenekleri ekliyor. Bu yıl takımlar görüş alanındaki en büyük küpü takip etmek istemeyebilirler. Birçok durumda, takımlar giriş mekanizmalarına en yakın küpü takip etmek isteyeceklerdir. Birçok kullanıcı kendi sıralamalarını uygulamak için ham konturlar özelliğini kullanmak zorunda kaldı, bu yüzden bunu mümkün olduğunca kolaylaştırmak istiyoruz.

Özellikler

  • Kontur Sıralama Modu
    • "En büyük", "en küçük", "en yüksek", "en alçak", "en soldaki", "en sağdaki" ve "en yakın" sıralama seçenekleri arasından seçim yapın.
    • Birçok takımın küp takibi için "en yakın" seçeneğini kullanacağını düşünüyoruz.

2018.3 (28/02/18)

2018.3, Limelight'ın NetworkTables ayarlarının yayılmasını engelleyen önemli bir NetworkTables yeniden bağlanma hatasını düzeltir. Altta yatan NT hatasını tespit edip düzelttikleri için Peter Johnson ve WPILib ekibine teşekkür ederiz. Bu, bildiğimiz kadarıyla Limelight'ı etkileyen son yüksek öncelikli hataydı.

ledMode, pipeline ve camMode gibi ayar değişiklikleri artık her zaman Limelight'a uygulanmalıdır. Hata ayıklama sırasında, robot kodunu yeniden başlattıktan sonra ve roborio'yu yeniden başlattıktan sonra Limelight ayarlarını değiştirmek için artık geçici çözümlere ihtiyacınız olmamalıdır.

Değişiklikler

  • LabView hata ayıklama sırasında ve roborio'nun sıfırlanması/yeniden başlatılmasından sonra ayar değişikliklerini (ledMode, pipeline ve camMode) bozan önemli NT senkronizasyon sorunu düzeltildi.
  • Göz damlası değneği:
    • Göz damlası değneği, Ton için aynı 10 birimlik pencereyi kullanır, ancak şimdi doygunluk ve değer için 30 birimlik bir pencere kullanır. Bu, eşiklemenin çoğu zaman çok adımlı bir süreç yerine tek tıklamayla yapılabilen bir işlem olduğu anlamına gelir.
  • Anlık görüntüler
    • Anlık görüntü değerini "1" olarak ayarlamak, yalnızca tek bir anlık görüntü alacak ve değeri 0'a sıfırlayacaktır. Anlık görüntü alma işlemi saniyede 2 anlık görüntü ile sınırlandırılmıştır.
    • Anlık görüntü limiti 100 görüntüye yükseltildi.
    • 100 görüntüyü desteklemek için anlık görüntü seçici alanı artık kaydırılabilir.

2018.2 (10/02/18)

2018.2, FRC panolarıyla ilgili bilinen tüm akış sorunlarını giderir. Ayrıca Limelight'ı etkinlikler sırasında ayarlamayı ve kullanmayı daha kolay hale getirir.

Özellikler

  • Eşikleme asaları
    • HSV eşik parametrelerini birkaç tıklamayla ayarlayın
    • "Ayarla" asası HSV parametrelerini seçilen piksel etrafında merkezler
    • "Ekle" asası seçilen pikseli dahil etmek için HSV parametrelerini ayarlar
    • "Çıkar" asası seçilen pikseli göz ardı etmek için HSV parametrelerini ayarlar
  • Anlık görüntüler
    • Anlık görüntüler, kullanıcıların maçlar veya etkinlik kalibrasyonu sırasında Limelight'ın gördüklerini kaydetmesine ve sahadan uzaktayken boru hatlarını ayarlamasına olanak tanır.
    • Web arayüzüyle veya "snapshot" NetworkTables anahtarına "1" göndererek bir anlık görüntü kaydedin
    • Anlık görüntüleri görüntülemek için giriş sekmesindeki "Görüntü Kaynağı" açılır kutusunu değiştirin. Bu, boru hatlarınızı Limelight'ın kamera yayını yerine anlık görüntüler üzerinde test etmenizi sağlayacaktır
    • Limelight 32 adete kadar anlık görüntü saklayacaktır. Bu sınırı aşarsanız otomatik olarak eski anlık görüntüleri silecektir.
  • Yeni Akış seçenekleri
    • Limelight'ın akış modunu kontrol etmek için "stream" NetworkTables anahtarını tanıttık. Bazı panoları daha iyi barındırmak için PiP (Resim içinde Resim) modları için talepler aldık.
    • 0 - Standart - Limelight'a bir web kamerası takılıysa yan yana akışlar
    • 1 - PiP Ana - İkincil kamera akışı birincil kamera akışının sağ alt köşesine yerleştirilir.
    • 2 - PiP İkincil - Birincil kamera akışı ikincil kamera akışının sağ alt köşesine yerleştirilir.
  • Akış kare hızını 22fps'ye yükseltme
  • Aşındırma ve Genişletme
    • Hem aşındırma hem de genişletme için bir iterasyona kadar etkinleştirin.
    • Aşındırma, bir HSV eşiğinin sonucunu hafifçe aşındıracaktır. Bu, birçok nesne ayarlanmış bir HSV eşiğinden geçiyorsa kullanışlıdır.
    • Genişletme, bir HSV eşiğinin sonucunu hafifçe şişirecektir. Bunu eşikleme sonuçlarındaki delikleri yamamak için kullanın.
  • Yeniden Başlatma Düğmesi
    • Web arayüzünden Limelight'ın görüntü izlemesini yeniden başlatın. Bu sadece LabView kodunu hata ayıklarken aralıklı sorunlar yaşayan takımlar için kullanışlıdır.

Optimizasyonlar

  • Kararlı durum boru hattı yürütme süresini 3.5-4ms'ye düşürme.

Hata Düzeltmeleri

  • Shuffleboard akış sorunlarını düzeltme
  • LabView panosu akış sorunlarını düzeltme

2018.1 (8/1/18)

  • Kırmızı-Denge kaydırıcısı
  • Mavi-Denge kaydırıcısı
  • Daha iyi varsayılan renk dengesi ayarları
  • Artırılmış maksimum pozlama ayarı

2018.0 (1/3/18)

Bir sürü yeni vaka çalışması, daha detaylı dokümantasyon ve otonom bir STEAMWORKS atıcısı için tam bir örnek program üzerine, yazılım büyük bir güncelleme aldı.

Özellikler

  • Yeni Görüş Hattı arayüzü
    • Her biri özel nişangahlar, eşikleme seçenekleri, pozlama, filtreleme seçenekleri vb. içeren 10'a kadar benzersiz görüş hattı ekleyin.
    • Her görüş hattını adlandırın.
    • Herhangi bir hattı "varsayılan" hat olarak işaretleyin.
    • Yeni "pipeline" NetworkTables değeri ile maç sırasında hatlar arasında anında geçiş yapın. Bu, birden fazla görüş hedefi olan oyunlar için kullanışlıdır (örn. 2017'deki dişli mandalı ve kazan). Bu aynı zamanda robot başına, saha başına, ittifak başına vb. biraz farklı nişangah seçenekleri kullanması gereken takımlar için de kullanışlıdır.
    • Yedeklemek veya diğer takımlarla paylaşmak için görüş hatlarını Limelight'tan indirin.
    • İndirilen hatları kullanmak için herhangi bir "yuvaya" görüş hatları yükleyin.
  • Hedef "Gruplama" seçeneği
    • "Çift" gruplama moduyla iki şekilden oluşan hedefleri anında tercih edin". "Tek" ve "Üçlü" seçenekleri de mevcuttur
  • Yeni Nişangah Kalibrasyon arayüzü
    • "Tek" ve "Çift" nişangah modları.
    • "Tek" mod, Limelight'ın bu güncellemeden önce kullandığı moddur. Takımlar robotlarını manuel olarak hizalar ve hedefleme değerlerini nişangah etrafında sıfırlamak için "kalibre eder".
    • "Çift" mod, bir hedefin alanı / hedefe olan mesafesi değiştikçe otomatik olarak ayarlanan dinamik bir nişangaha ihtiyaç duyan robotlar için gelişmiş bir özelliktir. Bu özelliği bazı atış robotlarımızda kullandık, çünkü bazıları hafif bir eğriyle atış yapıyordu. Bu özellik ayrıca merkezlenmemiş ve/veya yanlış hizalanmış Limelight montajları olan robotlar için de faydalı olacaktır.
    • Ayrı X ve Y kalibrasyonu.
  • Network Tables'a Geçerli Hedef "tv" anahtarı ekleyin.
  • Network Tables'a Hedefleme Gecikmesi "tl" anahtarı ekleyin. "tl" görüş hattı yürütme süresini ölçer. Yakalama süresi için en az 11 ms ekleyin.
  • En boy oranı hesaplamasını açıklamaya yardımcı olmak için ek dikdörtgen çizin.
  • Kısıtlama özelliğini kaldırın ve Limelight'ı 90fps'ye kilitleyin.
  • Çoğu web arayüzü düğmesine odaklanmayı devre dışı bırakın. Nişangahlarını kalibre eden, ardından robotlarını etkinleştirmek için "enter" tuşuna basan takımlar tarafından bildirilen iş akışı sorununu düzeltir.
  • Üç "ham" kontur ve her iki nişangahı Network Tables'a gönderin.
    • tx0, tx1, ta0, ta1 vb. ile ham bir kontura erişin.
    • cx0, cy0, cx1, cy1 ile her iki ham nişangaha erişin.
    • Tüm x/y değerleri normalize edilmiş ekran alanındadır (-1.0 ila 1.0)
  • Web arayüzüne "sonek" seçeneği ekleyin. Kullanıcıların Limelight'larının ana bilgisayar adlarına ve NetworkTables'a sonek eklemelerine olanak tanır (örn. limelight-kazan). Bu özellik yalnızca takımlar tek bir robotta birden fazla Limelight kullanmayı düşünüyorsa kullanılmalıdır.
  • Web arayüzünde görüntü sürümünü göster

Optimizasyonlar

  • Ağ ile ilgili gecikmeyi ~10ms'den ~0.2 ms'ye düşürün (Thad House'a teşekkürler)
  • Akış kodlama ve jpg sıkıştırmayı üçüncü çekirdeğe taşıyarak, her altı karede bir görülen 10ms'lik takılmayı (iki kamerayla 25 - 30ms'lik takılma) ortadan kaldırın.
  • SIMD optimizasyonları ile kararlı durum hattı yürütme süresini 5ms'ye düşürün.

Hata düzeltmeleri

  • Değerin %100'e ulaşmasını engelleyen küçük alan değeri yanlışlığını düzeltin (maksimum ~%99).
  • Tüm hedefleme hesaplamalarındaki yarım piksel ofsetini düzeltin
  • Limelight'ın önyükleme sırasından sonra başlatılan NT sunucuları için kamera akış bilgilerinin doldurulmaması sorununu düzeltin. Kamera akış bilgilerini düzenli olarak yenileyin.
  • En boy oranının zaman zaman "ters dönmesine" neden olan hatayı düzeltin.
  • Sürücü modunda standart akış çıktısını (eşiklenmiş çıktı yerine) zorlayın.
  • Ağ bilgilerini sıfırladıktan sonra LED'lerin yanıp sönmesini engelleyen hatayı düzeltin

2017.7 (21/11/17)

  • Kontur sıralaması iyileştirildi. Küçük konturları büyük konturlara tercih ediyordu.
  • Yeni Koordinat sistemi: Merkez (0,0)'dır. Hedef y-ekseni boyunca "yukarı" hareket ettikçe ty artar ve x-ekseni boyunca "sağa" hareket ettikçe tx artar.
  • Daha doğru açı hesaplamaları (İğne deliği kamera modeli).
  • Web sayfasında hedefleme bilgilerini (tx, ty, ta ve ts) göster
  • Varsayılan hedefleme değerleri sıfırdır. Bu, görüş alanında hedef olmadığında sıfırların döndürüleceği anlamına gelir.
  • Yeni yan yana web sayfası düzeni. Küçük cihazlarda hala tek sütuna daralmaktadır.
  • Sürekli kaydırıcı güncellemeleri yapılandırma paneli performansını etkilemez.
  • Alan, NT'ye yüzde olarak gönderilir (0-100)
  • Görüntü boyutu 2.1GB'dan 700MB'a düşürüldü

2017.6 (13/11/17)

  • Yeni Görüntüleme aracı. Win7, Win8 ve Win10'da test edildi.
  • Kamera akışını cameraserver akışlarına gönder. Akıllı gösterge paneli kamera akışlarıyla çalışır, ancak shuffleboard'da bilinen hatalar var
  • Alan kaydırıcılarında dörtlü ölçekleme, en boy oranı kaydırıcılarında karesel ölçekleme. Bu, ayarlamayı çok daha kolay hale getirir
  • Kontrolleri "giriş", "eşik", "filtre" ve "çıkış" sekmelerine düzenle
  • Kaydırıcıları sürüklerken sürekli güncellemeler
  • NT'ye yüzde olarak gönderilen alan (0-100)
  • Görüntü boyutu 2.1GB'dan 700MB'a düşürüldü

2017.5 (11/9/17)

  • Görüntü boyutu 3.9GB'dan 2.1GB'a düşürüldü
  • Sürücü modu ve LED modu API'leri eklendi
  • Limelight tablosunda ledMode'u 0, 1 veya 2 olarak ayarlayın.
  • Limelight tablosunda camMode'u 0 veya 1 olarak ayarlayın.
  • Web arayüzü üzerinden eşik görüntüsü ve ham görüntü arasında geçiş yapma yeteneği eklendi (daha sonraki sürümde düzenlenecek)
  • Kamera akışı, CameraPublishing/limelight/streams altında ağ tablolarına gönderildi (bir hotfix gerekecek)
  • Hedefleme bilgilerine eğiklik eklendi (limelight tablosunda "ts")
  • Daha fazla protokol beklentisiyle temel "CommInterface" eklendi

2017.4 (30/10/17)

  • Önyükleme ve kapatma işlemlerinde çok sayıda hata önleme geliştirmesi

2017.3 (25.10.17)

  • Ton aralığı 0-255'ten 0-179'a değiştirildi
  • Maksimum günlük boyutu azaltıldı, günlükler temizlendi, apt önbelleği temizlendi

2017.2 (23.10.17)

  • Manuel ISO hassasiyeti
  • Minimum pozlama 2'ye yükseltildi

2017.1 (21.10.17)

  • Optimizasyonlar
  • "Dışbükeylik" "Dolgunluk" olarak değiştirildi
  • Pozlama aralığı 0-255 ms'den 0-128 ms'ye ayarlandı
  • İki kamera desteği
  • Tek nokta kalibrasyonu için tam destek