Začnime na úvod vaším profesionálnym životom. Kedy ste sa rozhodli, že veda a technika je niečo, čomu by ste sa chceli vo svojom živote venovať?
Bolo to približne v čase, keď som mal sedemnásť rokov. V mojej rodnej krajine, v Luxembursku sa vtedy konal taký informačný kemp pre študentov stredných škôl. Okrem iných sa tam so svojím stánkom zúčastnila aj švajčiarska univerzita Ecole Polytechnique Fédérale de Lausanne (EPFL). Predstavovali tam mobilné roboty, ktoré neustále jazdili a bol som nimi vskutku očarený. To bol jeden z dôvodov, prečo som si neskôr podal prihlášku na túto školu.
Zostaňme teda ešte pri vašom študentskom živote na univerzite v Lausanne. Mali ste okrem teoreticky zameraných predmetov nejakú príležitosť zapojiť sa do prakticky orientovaných projektov, ktoré sa realizovali v spolupráci s komerčným sektorom?
Keď sme mali na univerzite prázdniny, spolu s mojimi spolužiakmi sme pracovali na reálnych projektoch pre komerčné spoločnosti. Od tretieho ročníka sme mali dokonca semestrálne projekty, ktoré boli orientované na reálne úlohy zadávané z praxe. Práve tieto projekty ma utvrdili v mojom ďalšom smerovaní na oblasti, ako je mechanika, optoelektronika a informatika. Neboli to žiadne odporúčania iných ľudí alebo nejaké direktívy, ale práve tieto reálne projekty.
V súčasnosti sa venujete technickým výpočtom s užším zameraním na analýzu dát, vývoj algoritmov, spracovanie obrazu, počítačové videnie, paralelné a distribuované výpočty. Skúste vysvetliť základný rozdiel medzi spracovaním obrazu a tzv. systémami strojového spracovania obrazu (vision systems).
So spracovaním obrazu sa stretávame už veľa rokov. Slúži nám na získanie nejakej informácie z obrázku pomocou jeho segmentácie založenej na bodoch (pixeloch), z ktorých sa každý obrázok v elektronickej forme skladá. Samozrejme, sú tam ďalšie atribúty ako jas, farebnosť a pod. Spracovanie obrazu nám napr. pomáha odstrániť rôzne defekty, ako je rozostrenie. Čiže pri spracovaní obrazu sa používajú postupy, ktoré pracujú s bodmi (pixelmi) obrázka; dôležité je, že sa pracuje so statickými obrázkami. Naopak systémy strojového spracovania obrazu pracujú s dynamickými, pohyblivými obrázkami – videom, ktoré sa mení v čase.
Tiež vedia rozpoznať vysoký level vlastností, ktoré pomáhajú počítaču pochopiť, čo je vo veci. Tu sa už pri získavaní informácií nedá pracovať len s bodmi každého nasnímaného obrázka, ale treba vyťažiť informácie z viacerých úrovní. Je to podobne, ako pracuje ľudský mozog, keď pri pohľade na obrázok dokáže povedať, že sú tam nejaké objekty, hrany a rôzne iné vlastnosti daného obrázka. Táto vyššia úroveň opisu informácií umožňuje úplne iné a úplne nové možnosti, ktoré strojové, resp. počítačové spracovanie obrazu prináša. Typickým aplikačným príkladom využitia strojového spracovania obrazu je určovanie polohy v čase, typu obrázka z dôvodu klasifikácie toho, čo je na obrázku, rozpoznávanie vecí na obrázku, ako je tvár a pod., čo je bežné a žiadané v rôznych bezpečnostných aplikáciách. Vďaka strojovému videniu teda dokážeme riešiť množstvo nových typov aplikácií.
Ak by ste mali porovnať situáciu v uvedených oblastiach spred 10 – 15 rokov s tým, čo máme k dispozícii v súčasnosti, kde sme sa za ten čas posunuli?
V súčasnosti už máme bežne dostupné aplikácie pre inteligentné telefóny určené na rozpoznávanie tváre a pod. Nejde teda len o špeciality dostupné pre odborníkov, ale môžu sa s tým stretnúť už aj študenti rôznych vekových kategórií. Pred desiatimi rokmi boli tieto aplikácie dostupné len pre obmedzený počet špecialistov pracujúcich v oblasti systémov strojového videnia. Dnes sú tieto algoritmy dostupné v rámci rôznych komunít a prostredníctvom softvérov, ako je napr. MATLAB ich dokážete ľahko zapracovať do svojich projektov a získate tak výkonné nástroje na výskum a vzdelávanie v oblasti spracovania obrazu.
Pre oblasť spracovania obrazu je jednou z dôležitých častí vývoj algoritmov, pretože každá snímaná situácia je jedinečná a dobré riešenie vyžaduje viacnásobné iterácie, aby sa dospelo k požadovanému výsledku. Existuje nejaké všeobecne platné pravidlo, podľa ktorého by bolo možné pri návrhu algoritmov postupovať?
Za posledných desať rokov nesmeruje vývoj algoritmov v oblasti spracovania obrazu k nejakému univerzálnemu riešeniu schopnému spracovať len určitý typ vstupných údajov. Treba vždy zistiť špecifiká tej ktorej aplikácie alebo skupiny aplikácií a potom sa aj algoritmus dá vyvinúť tak, aby výsledku spracovania obrazu prinášali uspokojujúce výsledky. Algoritmus treba vytvoriť tak, aby ho bolo možné použiť pri rôznych typoch údajov, s ktorými má následne pracovať. Moderné algoritmy zriedka pracujú len s informáciami získanými z bodového rastra obrázka, ale používajú informácie získané z rôznych úrovní jeho spracovania, čím sa zvyšuje citlivosť takto navrhnutého algoritmu. Napríklad MATLAB poskytuje prostredie na vývoj algoritmov na spracovanie obrazu s nástrojmi na interaktívny prieskum obrazových dát, aplikácií na segmentáciu obrazu a prahovanie farieb a aj algoritmov na registráciu obrazu, zhlukovanie a segmentáciu.
Spracovanie obrazu a systémy strojového videnia sa čoraz viac využívajú aj v rôznych oblastiach priemyslu. Aké sú podľa Vás hlavné prínosy týchto systémov pre koncových používateľov?
Medzi tie známe a už v súčasnosti využívané určite patrí automatická kontrola kvality, kde možno vďaka týmto systémom odstrániť veľké množstvo manuálne vykonávaných iterácií. Systémy strojového videnia totiž dokážu komplexne a v jednom kroku skontrolovať množstvo parametrov, ktoré by napr. pri použití jedného špecializovaného snímača nebolo možné skontrolovať. V súčasnosti už teda máme k dispozícii nástroje na riešenie veľmi zložitých úloh, ktoré ešte nedávno bolo možné vykonávať len ľudským okom. Niektoré typy výrobných liniek alebo ich časti možno týmto spôsobom prevádzkovať bez účasti človeka. V budúcnosti bude funkcionalita a možnosti systémov strojového spracovania obrazu ďalej narastať, a to do rozmerov, ktoré si dnes ešte nevieme asi ani predstaviť, ako sú rôzne priemyselné oblasti týkajúce sa zdravotníckych zariadení, elektroniky, automobilového priemyslu a bezpečnosti.
Aká bude teda budúcnosť týchto systémov?
V súčasnosti exponenciálnym spôsobom narastá počet kamier na spracovanie obrazu, ktoré sú komerčne dostupné na trhu. Podobne je to aj s obrazovými snímačmi. Vývoj algoritmov takisto smeruje k tomu, aby boli použiteľné nielen na špecializovaných zariadeniach na spracovanie obrazu, ale aby ich bolo možné použiť aj na inteligentných telefónoch, tabletoch a pod., kde je zabudovaná nejaká kamera. Už teraz vidíme niekoľko prepracovaných algoritmov, ktoré sa takýmto spôsobom využívajú a čoskoro budú možnosti systémov spracovania obrazu dostupné pre každého.
Aké funkcie a možnosti týkajúce sa spracovania obrazu a strojového videnia ponúka MATLAB a Simulink, ktoré sú produktmi spoločnosti MathWorks®?
Ako som už spomínal, v prostredí MATLAB má používateľ k dispozícii niekoľko nástrojov, ako je Image ProcessingToolbox, napr. na zvýšenie kvality obrázkov či nastavenie vyššieho kontrastu. Vo fáze predspracovania obrázka sú k dispozícii rôzne možnosti filtrovania a používateľ má možnosť segmentovať nasnímaný obrázok na základe intenzity či farby obrazových bodov. Medzi najnovšie funkcie patria 3D nástroje na rekonštrukciu obrazu využiteľné napr. v oblasti zdravotníctva – MRI či počítačová tomografia. V oblasti strojového videnia máme možnosti spracovania videa – v tomto prípade hovoríme o sledovaní (tracking).
Zaznamenávame pohyblivý obraz a jeho atribúty, napr. rýchlosť pohybujúceho sa auta, rozlišovanie poznávacej značky auta, rozpoznávanie ľudí v dave, počítanie ľudí. Aj v oblasti počítačového videnia máme k dispozícii 3D snímanie (stereo vision) pomocou Computer Vision Toolbox, ktoré už nie je postavené na hľadaní informácií v bodoch (pixloch) obrazu, ale na hľadaní podobných bodov na rôznych obrázkoch pomocou špecifických vlastností. Uvedené postupy sa používajú napr. na kalibráciu kamier. Ak postavíte pred kameru nejaký referenčný vzor, dokážete na základe správneho nasnímania určitých bodov vykonať kalibráciu kamery. Samozrejme, tých vlastností z hľadiska spracovania obrazu či počítačového videnia je omnoho viac a záujemcovia tieto informácie nájdu na stránkach našej spoločnosti alebo u našich partnerov v jednotlivých krajinách.
Nástroje ako MATLAB a Simulink sú v súčasnosti na Slovensku populárne najmä na univerzitách či vedeckých pracoviskách, ale komerčná sféra ich celkom ešte neobjavila. Prečo je tá situácia taká odlišná?
To závisí od toho, kedy sa s používaním týchto nástrojov začalo na univerzitách. Ak to bolo pred desiatimi či viac rokmi, tak tí študenti, ktorí s tým začali pracovať na univerzite, sú teraz už v praxi a pracujú v rôznych firmách. Ak boli s MATLAB-om spokojní, tak tento softvér budú vyžadovať aj u svojho súčasného zamestnávateľa. Podobne to bolo aj v roku 1984, keď na MIT v USA začali MATLAB používať študenti, ktorí neskôr prešli do firiem a vedeli presne povedať, prečo im MATLAB vyhovuje a ako by mohol aj ich zamestnávateľovi pomôcť z hľadiska počítačových výpočtov. Dôležité je, aby dokázali o zvýšení efektivity procesov vývoja presvedčiť aj manažérov a vedúcich pracovníkov.
Vedenie firmy sa nemusí báť zle investovaných prostriedkov, pretože si kupuje pokročilé softvérové riešenie, ktoré má často rýchlu návratnosť investície. MATLAB, Simulink a ďalšie produkty od spoločnosti MathWorks dokážu zrýchliť proces vývoja a simulácie procesov a produktov, čím firme ušetria veľké množstvo času a peňazí. V Českej republike a na Slovensku máme šikovného distribútora HUMUSOFT®, s. r. o., a verím, že pokiaľ bude správnym spôsobom komunikovať firmám a vedúcim pracovníkom výhody softvérových produktov, ako sú MATLAB či Simulink, o pár rokov budeme vidieť oveľa viac komerčných firiem na vašom trhu, ktoré ich budú reálne využívať.