\section{Závěr}
V této finální kapitole jsou diskutována témata týkající se testování aplikace jak na uživatelské tak implementační straně, dále uvedeny a diskutovány možná vylepšení stávajícího řešení a taktéž jsou zde zhodnoceny dosažené výsledky oproti zadání této diplomové práce.

\subsection{Výsledky testování aplikace}
Testování aplikace probíhalo jak paralelně při vývoji, tak u vybraných koncových uživatelů buď simulovaně, nebo v provozu. Na základě těchto testů došlo jak k opravám chyb, které se při používání vyskytly, jakožto k reimplementaci či vylepšení některých nástrojů používaných v této aplikaci. Obecně se jednalo o chyby plynoucí z nastavení parametrů, či chybějících ošetření nestandardních situací. 

Paralelně s testováním samotné aplikace probíhalo i testování aplikace z pohledu stability připojení s kamerou, testy unikátních situací, jako například odpojení kabelů, a podobně. Tyto testy byly prováděny ve spolupráci s kolegy z týmu implementace firmwaru a byly diskutovány jednotlivé problémy a jejich řešení spojené s vnitřní implementací kamer. Konzultace se týkaly i stanovení sady příkazů a jejich doplňování pro potřeby aplikace. Příkladem je uvedený časovač testu připojení a resetování připojení v interní implementaci kamery.

Jelikož je pro tento systém klíčová stabilita programu, byly taktéž současně prováděny na několika průběžných verzích i dlouhodobé interní testy s menším počtem reálných zařízení, které měly odhalit nestability programu při záznamu dat nebo při prostém datovém streamu, a to především z pohledu náročnosti na paměť RAM. Pro tyto testy bylo hlavním důvodem využití bufferu pro záznam streamu před nestandardní situací, a tedy ukládání této sady přímo do paměti.

Poslední testy dlouhodobého běhu byly provedeny rámcově po dobu 14 dní a neprokázaly paměťový únik aplikace. Taktéž byla aplikace sledována na paměťové úniky pomocí vývojového studia interním nástrojem Memory Profiler. Ten však má omezenou dobu běhu na 450 minut, přičemž během tohoto testu se v poslední verzi taktéž neprokázaly paměťové úniky. 

Testy aplikace s maximálním možným počtem kamer nebylo možné provést, a to z důvodu nedostatečného počtu daných zařízení. Maximální počet reálných kamer připojených stabilně v poslední verzi aplikace bylo 5 a dále byl běh aplikace stabilně simulován na osmi základních deskách kamery SAFETIS s nahraným firmwarem a implementovanou simulací obrazu.

\subsection{Diskuze možných vylepšení}
Navržený systém sestavený a implementovaný v rámci této práce je pilotní verzí. Přestože jsou nástroje a funkce v momentální verzi funkční a prošly sérií testů, včetně prvotního nasazení do provozu, je zde stále možnost vylepšení a implementace nových funkcí, jakožto i případných oprav. Z důvodu projeveného zájmu se předpokládá budoucí reimplementace některých nástrojů, jakož i jejich rozšíření. 

Konkrétně prvním navrhovaným vylepšením je volba jiné řídicí jednotky s PT motorem. Hlavním důvodem je nemožnost vyčtení aktuální pozice motoru, případně informace o pohybu. To znemožňuje časovou optimalizaci změny přednastavené polohy. Dalším vylepšením je doplnění viditelné kamery z pohledu HW, ať již do stávající kamery SAFETIS, případně volba jiné platformy. 

Nespornou výhodou této aplikace je použití kamery vyráběné stejnou společností jako celý systém, aplikace tedy není závislá na externím SDK a je tedy možná případná optimalizace či vylepšení na straně firmwaru kamery. Nad rámec této práce byla provedena implementace SDK obsluhující kameru SAFETIS, a proto jedním z navrhovaných vylepšení je i integrace tohoto SDK do implementace stávajícího softwaru. Z pohledu ukládání radiometrického i neradiometrického avi záznamu, by z důvodu paměťové optimalizace, případně i možnosti prodloužení doby záznamu před událostí, mohla být implementována redukce frameratu výstupní sekvence. Hlavní důvod pro tento krok je fakt, že děje při případném zahoření nejsou rychlé a proto byla navrhována rychlost 2Hz. Z grafického pohledu je třeba v aplikaci provést revizi některých výpočtů. Ty se v průběhu implementace zesložitily a momentálně zatěžují grafické vlákno aplikace a znemožňují obnovu například některých progress barů. Z pohledu rozložení je ještě doporučeno umožnit ovládání PT motoru taktéž v panelu detailního zobrazení a~revidovat správu uživatelů.

\subsection{Zhodnocení dosažených výsledků}
V úvodní části této práce, zaměřené na návrh systému pro detekci požáru za pomocí termokamery SAFETIS, je zpracováno seznámení a teoretický pohled na principy měření teploty bezkontaktním způsobem za pomocí mikrobolometrických kamer a obecný pohled na principy termografie.

V další části této práce jsem se věnoval návrhu systému a jednotlivým komponentům, včetně jejich zapojení, implementaci jejich funkcí a jejich vzájemným propojením. Tyto komponenty jsou uvedeny v seznamu přístrojů jakožto i finální návrh zapojení celého systému. Na základě uživatelských manuálů a datasheetů bylo toto schéma realizováno a testováno na jeho funkčnost a odolnost, jak je shrnuto v předchozích kapitolách.

Pro implementaci aplikace v jazyce C\# byla provedena obecná analýza jazyka a jeho nástrojů, jakožto i seznámení s návrhovým vzorem MVVM. Na základě těchto poznatků byl udělán prvotní návrh aplikace a byla vytvořena kostra projektu. V první fázi implementace byla definována sada příkazů obsluhujících připojení a komunikaci s kamerou SAFETIS. Na základě této sady byl implementován přenos obrazu v reálném čase a testována výkonnost. Postupně byly implementovány požadované obslužné nástroje. Těmito nástroji jsou zobrazení měřících funkcí, konfigurace měření, nahrávání dat a další.

V další fázi implementace byl do systému zařazen PT motor s řídicí jednotkou. Nejprve byla provedena analýza připojení a komunikace za pomocí Pelco-D protokolu, přičemž bylo v další fázi rozhodnuto o použití převodníku a připojení komunikace pomocí ethernetového připojení. V další fázi byly implementovány obslužné funkce pro manuální ovládání motoru, a poté konfigurace presetů a přepínání mezi nimi včetně implementace cyklovače.

Z pohledu záznamu dat byl implementován záznam radiometrického videa, a to jak automatický, tak manuální, periodický a taktéž manuální záznam radiometrických snímků. Přičemž obojí využívá pro ukládání interní implementovanou knihovnu ThermoLib. Dalším implementovaným záznamem je ukládání neradiometrického záznamu ve formátu avi. Tento záznam je momentálně v aplikaci zakomentován z důvodu testování a pro jeho implementaci bylo využito knihovny AForge.

V poslední části této práce jsou shrnuty výsledky testování poslední verze aplikace, jakož i navrhovaná možná vylepšení. Oproti zadání aplikace není implementováno zobrazení viditelného streamu z kamery, a to z důvodu změny HW platformy kamery, která nepodporuje tento záznam. Aplikace je však na tuto možnost připravena. 

Uvedený systém a jeho výše uvedené funkce, zmíněné v zadání, a i další obsažené v~implementované aplikaci tvoří v současné verzi ucelený systém, který je vhodný v aplikacích pro detekci rizika požáru. Díky možnosti využití digitálních výstupů je možné uplatnit ho v~aplikacích automatického hašení a v momentální verzi je již testován v reálném provozu.