Na jedná vlně
Název projektu / produktu: x-face-67
Link na projekt: https://github.com/steinbachv/x-face-67
Vedoucí týmu: Zdeněk Kubín
Výzva: 7. X-Face
Problém: Řešíme automatické rozpoznávání definovaných mimických grimas z přiložených videí a real-time web kamery. Cílem je objektivně detekovat a vyhodnocovat asymetrii definovaných mimických pohybů a synkinetických pohybů a umožnit lékařům objektivní dlouhodobé sledování vývoje stavu pacienta. Návrh představuje koncept webové a mobilní aplikace, která podporuje standardizované a reprodukovatelné hodnocení.
Řešení: Vyvinuli jsme desktopovou aplikaci, která ze streamu z webové kamery detekuje v reálném čase 478 orientačních bodů obličeje a z nich počítá 16 příznaků popisujících mimiku. Následně je výraz klasifikován algoritmem SVM natrénovaným na sedm tříd. Řešení pacientům umožní správné domácí snímání a lékařům poskytne relevantní podklady včetně metrik symetrie a odhadu výskytu synkinézy.
Dopady: Řešení přináší úsporu ambulantního času. Pacienti s obrnou lícního nervu obvykle absolvují 2–4 kontroly; pokud 30 % (cca 750 osob) využije on-line hodnocení, může úspora dosáhnout až 375 000 Kč ročně. Současně se zvýší kvalita péče díky objektivnímu sledování vývoje onemocnění a včasné intervenci. Řešení má potenciál i v rehabilitaci, detekci mrtvice či hodnocení úrazů a neurologických problémů obličeje.
Proveditelnost: Řešení bylo vyvinuto s ohledem na potenciální nasaditelnost na současných smartphonech. Pro uvedení do praxe je nutné převést návrh GUI na cílovou platformu (např. Android / iOS), zabezpečit produkt, zajistit přístupnost produktu (např. pro slabozraké) a napojit produkt na nemocniční IS. Funkční prototyp je možné vyvinout v řádu jednotek měsíců. Před nasazením je nutné rozšířit trénovací dataset o min. vyšší desítky pacientů s obrnou lícního nervu, aby bylo možné validovat objektivnost metrik.
V čem je řešení nové: Na počátku nebyly známy metriky, které definují standardizované mimické pohyby používané pro diagnostiku synkinézy. V průběhu řešení byly nalezeny a otestovány potřebné metriky založené na prostorových rysech obličeje. Na základě těchto metrik je možné natrénovat klasifikátory, které analyzují stav obličeje. Celé řešení je robustní a přitom nenáročné na výpočetní čas, nasaditelné na mobilní telefony i do webového prostředí.
Co jste udělali během hackathonu - textové vysvětlení + kód (např. odkaz na GitHub): Implementovali jsme aplikaci (https://github.com/steinbachv/x-face-67), které uživatele navádí k provedení definovaných mimických pohybů, ověřuje jejich správné provedení a měří asymetrii mimiky a sklon k synkinetickým pohybům. Dále jsme navrhli GUI, které lze použít pro nasazení řešení na smartphonu, a dashboard pro ošetřujícího doktora. GUI interaguje s uživatelem v reálném čase. Klasifikátor mimických pohybů jsme vyvinuli jako původní řešení na datech 23 figurantů získaných během hackathonu.
Co jste měli hotové před hackathonem?: Pro detekci orientačních bodů obličeje jsme využili model MediaPipe Face Landmarker od Google AI. Model je dostupný např. na https://github.com/google-ai-edge/mediapipe. Zbytek řešení vzniklo v rámci hackathonu a je originální. Pro vývoj byly využity standardní knihovny pythonu. Dále byl využit software Matlab pro datovou analytiku a feature engineering.
Co bude následovat a čeho chcete dosáhnout? Máte zájem projekt dále rozvíjet?: Další rozvoj vyžaduje rozšíření projektu o data pacientů, ideálně formou klinické studie nebo využitím existujících datových sad zdravotnických zařízení. S ohledem na relativně nízkou incidenci obrny lícního nervu a omezený ekonomický přínos považujeme za nejvhodnější pokračovat formou výzkumného projektu. Máme zájem o další spolupráci formou komerčního i VaV projektu.