1 puan yazan GN⁺ 2023-11-13 | 1 yorum | WhatsApp'ta paylaş
  • D-POINT, kamera takibi ve atalet ölçümünü kullanarak 6DoF girdi, düşük gecikme, basınç algılama ve sub-milimetre hassasiyet sunan açık kaynak bir dijital stylus
  • Herhangi bir düz yüzeyde kullanılabiliyor ve tüketici sınıfı bir webcam ile çalışıyor
  • Gövde, iki adet 3D baskı parçadan oluşuyor ve içinde kuvvet sensörü, USB-C ile şarj edilen Li-ion pil, ayrıca mantık ve Bluetooth için Arduino tabanlı bir geliştirme kartı barındıran bir donanım bulunuyor
  • Stylus'un arka tarafına yerleştirilen 8 basılı ArUco marker OpenCV ile algılanıyor; rolling shutter düzeltmesi, PnP duruş kestirimi ve koordinat dönüşümü sonrasında kamera referanslı duruş ile çizim yüzeyi referanslı kalem ucunun konum ve yönü hesaplanıyor
  • Atalet füzyonu, ivmeölçer ve jiroskop verilerini VPE kestirimleri ve Extended Kalman Filter ile birleştiriyor; gerçek zamanlı kestirimler Rauch-Tung-Striebel algoritmasıyla düzeltiliyor
  • Kamera karelerindeki zaman gecikmesini ele almak için negatif zaman ölçüm güncelleme algoritması kullanılıyor; EKF uygulamasında NumPy ve Numba kullanılıyor
  • Atalet ölçümü, yalnızca kamera kullanan uygulamaya kıyasla gecikmeyi belirgin biçimde azaltıyor ve hızlı hareketlerde doğruluk ile raporlama oranını iyileştirmeyi hedefliyor
  • Elektrik mühendisliği lisans tezi projesinin bir parçası olarak geliştirildi; kod ve tasarım dosyaları açık olsa da “plug and play” bir DIY proje olarak tasarlanmış değil

1 yorum

 
GN⁺ 2023-11-13
Hacker News görüşleri
  • Çok harika. Benim sadece hayalini kurduğum şeyi gerçekten hayata geçirip çalışır hâle getirmiş
    Elite: Dangerous oynarken HOTAS ve pedal kullanıyordum; uzay gemisini daha iyi kontrol etmenin bir yolu yok mu diye sürekli düşünüyordum. Sonuçta uzay gemisinde pitch, yaw ve roll’un yanı sıra 6 yönde itkiyi de yönetmek gerekiyor
    Elimde tuttuğum uzay gemisi modelini hareket ettirince Elite içindeki geminin de aynı şekilde hareket edeceği bir cihaz istiyordum; bağlantıdaki proje tam da bunu yapabilecek gibi görünüyor. İtki de diğer elle benzer şekilde kontrol edilebilir gibi
    Bu tür alışılmadık ve yeni girdi yöntemleri gerçekten şaşırtıcı; böyle bir beceri ortaya çıkınca hayal gücü ciddi biçimde genişliyor

    • 16 yaşlarım civarından güzel bir anım var. Elde tutulup sallanarak kullanılan bir 3D fare alıp üstünde Marines yazan bir şapkaya bantlamıştım; sonra da herkesi dağıtmaya hazır şekilde doğrudan CS: Source’a girmiştim
      Gerçek becerim sanırım aynı seviyedeydi, ama tamamen ezilseydim daha komik olurdu
      Teori şuydu: kafa, elden çok daha hassas olduğu için ikisini birleştirince nişan alma daha iyi olacaktı. Sola bakarken ekranı göz ucuyla görmen gerekecek gibi geliyor ama pratikte iki fareli sistem epey mümkün oluyor. Modern bir şekilde tekrar denemek istemiştim ama kafasına tuhaf bir çubuk takmış aşırı acayip biri gibi görünüyorsun. Yine de o tarz hoşuma gidiyor
      Senin fikrin de gerçekten çok havalı; yapıp denesen iyi olur
    • Bu tür oyunlar için hâlâ bir SpaceOrb369’um var. USB ile kullanılabilmesi için dönüştürücü yapan biri de var
      https://en.m.wikipedia.org/wiki/SpaceOrb_360
      https://www.tindie.com/products/vputz/orbotron-9001-version-...
    • “Uzay gemisini daha iyi kontrol etmenin yolu” için iki joystick yeterli olmaz mı?
      https://old.reddit.com/r/EliteDangerous/comments/16xi20a/dua...
      https://youtu.be/T2-IHgNYaKA
    • Bilimkurgu dizisi The Expanse’te Rocinante, CAD ve 3D modellemede yaygın kullanılan 3DConnexion SpaceMouse ile kısmen kontrol ediliyor
    • Bu tür 6 serbestlik dereceli joystick’ler onlarca yıldır var: https://3dconnexion.com/nl/spacemouse/
  • Lisans bitirme tezi projesiymiş! Bununla en yüksek notu alamazsa dünyada adalet yok demektir

    • Neden böyle düşündüğünü merak ediyorum
      Ben lisans yaparken bilimsel çalışma vurgulanıyordu. Bu yüzden yenilik ya da uygulanabilirlik not açısından önemli değildi; içeriği bilimsel olarak yazıyla ne kadar iyi aktardığın önemliydi. Bu projenin metnini görmediğim için not açısından değerlendirmek zor
    • Fotoğraflardan başlayıp aşağı doğru indim; masayı görür görmez “ah, yurt odası” diye düşündüm
    • Üniversite notu != kalite :-) Yine de katılıyorum
  • Çok iyi. Web kamerası kullanıldığını görünce, bugünün yaygın tekil yaklaşık 78 derece görüş açılı web kameralarının bir gün stereo balıkgözü web kamerasına dönüşeceği bir gelecek olur mu diye merak ediyorum
    Böyle bir web kamerası, göz takibiyle desteklenen jestler gibi yeni kullanıcı deneyimlerini, bu stylus ya da yarış oyunları için direksiyon gibi çevre birimleriyle etkileşimi ve VR varlığını da içeren çok daha esnek 3D 180 derece web kameralı toplantıları mümkün kılabilir
    Bilgisayar ekranının önündeki tüm 3D alanı bir girdi yöntemi olarak kullanacağımız dönem geliyor gibi hissediyorum; orijinal yazıdaki web kamerası kullanımı da o yöne atılmış küçük bir adım gibi görünüyor

    • Birkaç yıl önce Intel ve ortakları dizüstü bilgisayarlara RealSense modülleri koyarken bunun yakında geleceğini sanmıştım; şimdi ise ilgili şirketler odağını kurumsal ve endüstriyel pazara kaydırmış gibi görünüyor
    • Bu konuda ne yazık ki kötümserim. Mac’in Touch Bar’ı, bağlam duyarlı, tepkisel ve tamamen entegre bir girdinin bile klavye+fare ile elde edilen akışı bozmasının zor olduğunu gösterdi
      Bugün bile yeni çıkmış bir fare denen şeyin kendisi konusunda tereddüt eden insanlar var
    • TrackIR, kafaya takılan yansıtıcılarla kafa takibi yapabiliyor. Ama kafaya hiçbir şey takmadan da Tobii eye tracker, kafa ve göz takibini tamamen pasif şekilde yapabiliyor
      Buna el/parmak jest kontrolü ile stylus veya fare gibi çevre birimlerini eklemek bariz bir sonraki adım gibi görünüyor; ama ne onlar ne de başkası bunu yapıyor gibi
    • Anker PowerConf 300 web kamerası kullanıyorum; Mac veya Windows’ta AnkerWork yazılımıyla 115 dereceye kadar çıkabiliyor
  • Güzel. Özellikle füzyon kısmı hoşuma gitti
    “Dizüstü klavyesi… el pozisyonu, 3D stylus, dokunma” konularını incelerken aklıma gelenler bunlardı. Düğme eklersen 3D fare olur, ama kamera kapsaması sorun çıkarabilir. Gövdenin büyük kısmı boş ve pil de daha ince yapılabilir. İnce, yemek çubuğu/diş fırçası benzeri bir stylus tutarken bile bir ölçüde yazı yazabildim. Marker’lar ve tuhaf derecede büyük bir uç varken de mümkündü
    Ping pong topu Noel süsünden kesip çıkardığım büyük uç, ThinkPad klavyesinin üzerinde epey pürüzsüz kaydı ve daha az minik bir kuvvet sensörü ile ek uç marker’ı için de yer sağladı. İnce çok telli silikon şerit kablo, ip gibi esnek olabiliyor; başlangıçta stylus’u Arduino’ya bağlı şekilde kullanmıştım
    İçbükey metal clicker gibi bir şeyi bir veya üç düğme olarak kullanırsak ataletsel sensörün bunu nasıl yorumlayacağını merak ediyorum

  • Rolling shutter düzeltmesi oldukça havalı; benim aklıma gelirdi sanmıyorum. Bunun en baştan sorun olacağını biliyorlar mıydı, yoksa sistemin geri kalanını yaptıktan sonra mı fark ettiler merak ediyorum.

    • Etkisi olacağını biliyordum. Benzer projelere dair literatürün çoğu bu yüzden global shutter kamera kullanıyor. Sadece ne kadar büyük olacağından emin değildim.
      Genellikle fark edilmeyecek kadar küçüktü, ama belirli durumlarda gerçekten ortaya çıkıyordu. Örneğin kalem ucunu aynı yerde tutup kalemi döndürürken olduğu gibi.
      Beni en çok şaşırtan şey, çözümüm gerçekliği oldukça kaba biçimde yaklaşık olarak modellemesine rağmen ne kadar iyi çalıştığıydı. Çok daha sofistike işleme teknikleri var, ama sonunda bunlara gerek kalmadı.
      Denemek istediğim şeylerden biri rolling shutter farkındalıklı PnP[1] idi. Teorik olarak rolling shutter bozulmasını kullanarak tek bir görüntüden pozu ve hızı aynı anda tahmin edebilirsiniz.
      [1] https://www-sop.inria.fr/members/Philippe.Martinet/publis/20...
  • 6 serbestlik derecesi ile ilgili her şeyi severim; donanım ve bilgisayarlı görüyle poz tahmini de iyi yapılmış, ama asıl çizilebilen ve döndürülebilen yazılım yüzeyi beni daha çok etkiledi.
    Aynı etkiyi veren parmak kaydırıcısı gibi herhangi bir fiziksel kullanıcı arayüzü kontrolünde de kullanılabilmesi ilginç. Problem çözme becerisini gösteren iyi bir proje ve hakkını vermişler gibi görünüyor.
    Bu arada, IR LED Bluetooth alıcısına dönüştürülmüş WiiMote kontrolcüsü[1] hariç, ilk kullandığım 6 serbestlik dereceli kontrolcü, zamanının ilerisindeki Logitech MX Air[2] idi.
    [1] https://web.cs.ucdavis.edu/~okreylos/ResDev/Wiimote/MainPage...
    [2] https://www.cnet.com/reviews/logitech-mx-air-review/

  • Çok güzel bir proje; dokümantasyon da faydalı ve Kalman filtresi kullanımının iyi bir gerçek dünya örneği.

  • Gerçekten harika ve hayalini kurduğum şeye tam uyuyor.
    Şirket tamamen uzaktan çalışmaya geçtikten sonra beyaz tahta oturumlarını sürekli özledim. Aklıma gelen en iyi çözüm, eski bir iPad’de ve masaüstü tarayıcıda paylaşımlı bir beyaz tahta web uygulaması açıp, masaüstünden ekran paylaşımı yaparak iPad üzerinde ucuz bir stylus ile çizmekti.
    Fena değil, ama iPad’im çok eski olduğu için yavaş. Değiştirmek de pahalı geliyor. Sıradan bir webcam ve nispeten düşük teknolojili bir stylus çok daha iyi olurdu; harici cihaz ihtiyacını da tamamen ortadan kaldırabilir.

  • Harika. Mekanik klavye almak gibi, belirli bir markaya bağımlı olmaması hoşuma gitti.

  • Çok havalı.
    Robotik veya VR için de faydalı olabilir. Tek kamerayla el takibi de mümkün olmaz mı?
    Soru: Jiroskop + ivmeölçer ile basıncı da takip etmek mümkün mü? En azından “dokunma” seviyesinde?
    Bir soru daha: Maliyeti ne kadar, özellikle basınç sensörünü merak ediyorum.

    • Dokunma algılama jiroskop/ivmeölçer ile gayet yapılabilir; ama doğru düzgün basınç hassasiyeti, yani çizgi çizerken basıncın değişmesini işlemek için basınç sensörü dışında yapılabilecek pek bir şey yok.
      Teoride yeterince hassas poz tahmini ve esnek bir kalem ucuyla mümkün, ama benim elde ettiğim doğruluk seviyesinde gerçekçi değildi.
      Basınç sensörünü yaklaşık 20 Avustralya dolarına aldım, ama ABD’de çok daha ucuza, yaklaşık 5 dolara bulunabiliyor (https://www.arrow.com/en/products/hsfpar003a/alps-electric). Ancak oldukça özel bir parça olduğu için satan yer çok değil. Özel PCB ek olarak 10 Avustralya doları, Arduino ise yaklaşık 20 dolardı. Tam parça listesi https://github.com/Jcparkyn/dpoint/blob/main/setup-guide.md adresinde.