Mise

Využití schopností chytrého telefonu (senzory, výkon) a moderních webových prohlížečů (platformová nezávislost, konektivita, AI) pro asistivní technologie.

Koncept a knihovny pro cenově dostupné zpracování obrazu, umožňující extrakci dat o obličejových a tělesných pozicích, které poskytují textové výstupy přes API pro široké využití v asistivních technologiích a dalších aplikacích.

Chci rychle vidět příklady

Problém

Spousta různých specifických úkolů.

Vývoj asistivních technologií je nákladný, protože každý jedinec s postižením má unikátní potřeby.

Například u pacientů se syndromem uzamčení (kdy nemohou přímo komunikovat) lze identifikovat personalizované pohybové možnosti, jako je používání úst, rukou nebo podobných metod. Aplikace také musí zohlednit specifické požadavky, včetně omezení rozsahu pohybu, nekontrolovaných pohybů (tiků) a dalších faktorů.

Také speciální hardwarové řešení pro zpracování obrazu nemusí být levné.

Řešení

Rozdělme mnoho specializovaných úkolů na jejich společnou složku a zbývající části. Pro hardware použijeme zařízení, která uživatelé již vlastní, nebo mohou získat cenově dostupně.

Konkrétně to znamená:
  • Použijeme sjednocený software pro zachycení dat o obličejových a tělesných pozicích, gestech, zvucích atd.
  • Tento software spustíme na chytrém telefonu a tím využijeme jeho procesor pro zpracování obrazu a zvuku, stejně jako jeho kameru a/nebo mikrofon. Můžeme také potenciálně využívat další senzory jako GPS, akcelerometr, gyroskop, světelné senzory atd.
  • Definujeme API (Application Programming Interface), které mohou ostatní vývojáři použít k vytváření svých aplikací. API poskytne proud textových dat.
  • Představíme několik ukázkových aplikací, abychom demonstrovali celý koncept využití dat z API.
Mobilní aplikace poskytuje textová data dalším aplikacím.

Bezpečnost a etika

Mezi aplikacemi nikdy nepřenášíme video a audio data. Stručně řečeno, to znamená, že jsou přenášena stejná data, ať jste oblečeni nebo ne.

Nikdy nepřenášíme video a audio data mezi aplikacemi.

Všechna data jsou přenášena pouze jako obecné textové informace. Například 2D souřadnice jednotlivých kloubů ruky nebo textový popis gesta (například "otevřená dlaň", nebo "pěst").

Účelem projektu je zveřejnit celé API (tj. podrobný popis datového formátu) - připravené pro uživatelské aplikace. Kdokoliv si může ověřit, jaké informace jsou přenášeny.

Stručně řečeno, to znamená, že jsou přenášena stejná data, ať jste oblečeni nebo ne.

Pokud aplikaci stále nevěříte, můžete ji otestovat v bezpečném prostředí a poté jí odepřít přístup ke kameře a mikrofonu.

Bude chytrý telefon stačit ?

Chytrý telefon je velmi výkonný počítač, který obsahuje všechny potřebné komponenty pro zpracování obrazu a zvuku. Má také senzory jako GPS, akcelerometr, gyroskop, světelné senzory atd.

Chytrý telefon je levný a univerzální. Většina lidí už má chytrý telefon a používá ho k mnoha účelům. Proto není nutné kupovat další speciální hardware.

Dá se předpokládat, že kamery i procesory (s podporou umělé inteligence) se budou stále vylepšovat.

Pokud by pro nějakou aplikaci přeci jen chytrý telefon nestačil, je možné s jeho pomocí aplikaci odladit a následně ji přenést na specializované zařízení. Stačí aby tento hardware (s libovolnou kamerou) podporoval moderní webové technologie a vše bude fungovat bez úprav i tam.

Stejně tak, jako chytrý telefon, poslouží i notebook, nebo desktopový počítač s kamerou.

Stav projektu

Projekt je v raných fázích vývoje. Plánujeme následující kroky

Podporované programovací jazyky

  • JavaScript - pro webové aplikace
  • C++ Arduino - pro vestavěná zařízení (s mikroprocesorem)
  • Python - pro širokou škálu (desktopových) aplikací

Komunikační API

Chceme navrhnout API, které definuje formát přenášených dat a příkazů pro komunikaci mezi "vysílačem" (chytrý telefon) a "přijímačem" (aplikace). Abstraktní formát popisu bude použit k vygenerování příslušných knihoven ve výše uvedených programovacích jazycích.

Komunikační kanály

Ve výše uvedených programovacích jazycích chceme také implementovat části knihoven pro podporu komunikace mezi "vysílačem" a "přijímačem" pro následující způsoby připojení:

  • WebRTC (PeerJs) pro webové aplikace. Všechny moderní prohlížeče tuto technologii podporují.
  • Bluetooth pro vestavěná zařízení. (Použijeme technologii Bluetooth Low Energy (BLE).)
  • Socket pro komunikaci se serverem (přes veřejné WiFi, nebo WiFi hotspot aplikace).

Příklady aplikací - dema

Pro demonstraci konceptu a knihoven jsme připravili několik ukázkových aplikací. Zobrazit


Kontakty

Pro více informací prosím kontaktujte astriot[at]marvan.cz
LinkedIn: Ivo Marvan