Skip to content
Snippets Groups Projects
Commit c1679029 authored by Vojtech Moravec's avatar Vojtech Moravec
Browse files

Basic preparation.

parent 44740401
No related branches found
No related tags found
No related merge requests found
......@@ -7,8 +7,6 @@
% Do I want to have separe page just for section name? sectionpage=none or sectionpage=progressbar
%It is nice but probably won't include it.
\usepackage[czech]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
......@@ -32,218 +30,194 @@ compat=1.5,
\newenvironment{cols}{\begin{columns}}{\end{columns}}
\newenvironment{col}[1]{\begin{column}{{#1\linewidth}}}{\end{column}}
\newenvironment{hcol}[1]{\begin{column}{{0.5\linewidth}}}{\end{column}}
\newenvironment{sectionframe}[1]{\section{#1}\begin{frame}{#1}}{\end{frame}}
\title{Detekce semaforů v obrazech}
\date{28. května 2018}
\author{Vojtěch Moravec}
\title{Metody komprese bioinformatických dat pro přenos na HPC infrastrukturu}
\date{24. června 2020}
\author{Bc. Vojtěch Moravec}
\institute{Vysoká škola báňská - Technická univerzita Ostrava}
\begin{document}
\maketitle
%------------------------------
\begin{frame}{Obsah}
\setbeamertemplate{section in toc}[sections numbered]
\tableofcontents[hideallsubsections]
\end{frame}
%------------------------------
\section{Cíl práce}
\begin{frame}{Cíl práce}
Cílem této práce bylo:
\begin{itemize}
\item Vytvořit systém pro detekci semaforů v obrazech
% \item Porovnat dvě architektury CNN \footnotemark[\value{footnote}]
\item Otestovat systém na datech z reálného světa
\end{itemize}
\end{frame}
%------------------------------
\section{Řešení daného problému}
\begin{frame}{Zvolené řešení}
\textbf{Neuronové sítě}
\begin{itemize}
\item Inspirovány přírodou, lidským mozkem
\item Schopnost učení se
\end{itemize}
\textbf{Konvoluční neuronové sítě}
\begin{itemize}
\item Druh neuronových sítí
\item Zpracovávají obrazy
\item Úkolem je klasifikace objektů v obraze
\end{itemize}
\end{frame}
%------------------------------
\begin{frame}{Zvolené typy konvolučních neuronových sítí}
Pro detekci lokace byly využity konvoluční neuronové sítě.
\begin{cols}
\begin{col}{0.6}
\textbf{LeNet typ}
\begin{itemize}
\item Jednoduchá lineární architektura
\item 24 vrstev
\end{itemize}
\textbf{ResNet typ}
\begin{itemize}
\item Hluboká neuronová síť
\item 97 vrstev
\item Obsahuje residuální bloky se 'skip' mechanismem
\end{itemize}
\end{col}
\begin{col}{0.4}
% \begin{figure}[h!]
% \centering
% \includegraphics[width=\linewidth]{../Figures/res_block_presentation.pdf}
% \end{figure}
\end{col}
\end{cols}
\end{frame}
%------------------------------
\begin{frame}{Problém následného zjištění stavu}
\begin{cols}
\begin{col}{0.7}
\textbf{Detekce stavu analýzou jasu pixelů}
\begin{itemize}
\item Nalezení třetiny semaforu s největším průměrným jasem
\item Procentuální pokrytí semaforu pixely, spadající do určitých hranic HSV barevného prostoru
\end{itemize}
\textbf{Detekce pomocí konvoluční sítě}
\begin{itemize}
\item Lokace kružnic na semaforu pomocí LeNet sítě
\item Určení pozice kružnice vzhledem k celému semaforu
\end{itemize}
\end{col}
\begin{col}{0.3}
% \begin{figure}[h!]
% \centering
% \begin{tikzpicture}
% \draw (0, 0) node[inner sep=0] {\includegraphics[width=\linewidth]{../Figures/BrightnessDet.png}};
% \draw (-1.1, -1.5) node {RGB};
% \draw (0, -1.5) node {GRAY};
% \draw (1.1, -1.5) node {HSV};
% \end{tikzpicture}
% \end{figure}
% \begin{figure}[h!]
% \centering
% \includegraphics[width=0.8\linewidth]{../Figures/LeNetDet.png}
% \end{figure}
\end{col}
\end{cols}
\end{frame}
%------------------------------
\section{Testování úspěšnosti}
\begin{frame}{Počet detekcí}
\begin{itemize}
\item Testovací dataset se skládá z 200 obrázků v nichž se nachází 628 semaforů (\textit{Ground Truth}).
\item Dolní index u detektoru značí faktor zvětšení dat.
\end{itemize}
\begin{figure}[h!]
\centering
\begin{tikzpicture}
\begin{axis}[
ybar,
xtick = data,
ylabel={Počer všech detekcí},
symbolic x coords={GT, $\text{LeNet}_{1}$, $\text{ResNet}_{1}$, $\text{LeNet}_{1.5}$, $\text{ResNet}_{1.5}$, $\text{LeNet}_{2}$, $\text{ResNet}_{2}$},
x tick label style = {rotate=45, anchor=east},
nodes near coords,
ymin = 0, ymax = 720
]
\addplot coordinates {
(GT, 628)
($\text{LeNet}_{1}$, 418)
($\text{ResNet}_{1}$, 524)
($\text{LeNet}_{1.5}$, 543)
($\text{ResNet}_{1.5}$, 598)
($\text{LeNet}_{2}$, 567)
($\text{ResNet}_{2}$, 611)
};
\end{axis}
\end{tikzpicture}
\end{figure}
\end{frame}
%------------------------------
\begin{frame}{Negativní detekce}
\begin{itemize}
\item Pro LeNet je nejlepší $2\times$ zvětšení dat
\item ResNet detekuje více objektů na úkor kvality detekce
\end{itemize}
\begin{table}
\begin{tabular}{l r r r}
\hline
Typ sítě & Počet detekcí & Negativní detekce [\%] & F1 skóre \\
\hline
\hline
$\text{LeNet}_{1}$ & 418 & 0,3 & 0,7973 \\
$\text{LeNet}_{1.5}$ & 543 & 1,3 & 0,9155 \\
\textbf{$\text{LeNet}_{2}$} & \textbf{567} & \textbf{1,1} & \textbf{0,9389} \\
\hline
$\text{ResNet}_{1}$ & 524 & 0,2 & 0,9080 \\
$\text{ResNet}_{1.5}$ & 598 & 3,1 & 0,9462 \\
$\text{ResNet}_{2}$ & 611 & 4,1 & 0,9460 \\
\hline
\end{tabular}
\end{table}
\end{frame}
%------------------------------
\begin{frame}{Porovnání metod pro detekci stavu}
\begin{itemize}
\item Obě metody pracují s podobnou přesností
\item Metodu CNN je ale jednodušší vylepšit
\end{itemize}
\begin{figure}[h!]
\centering
\begin{tabular}{l r r r r}
\hline
Metoda & Zvětšení dat & Počet chyb & Přesnost [\%] \\
\hline
\hline
Jas+HSV & $1\times$ & 67 & 89,3312\\
Jas+HSV & $1,5\times$ & 82 & 86,9426\\
Jas+HSV & $2\times$ & 103 & 83,5987\\
CNN & $1\times$ & 175 & 72,1337\\
CNN & $1,5\times$ & 91 & 85,5095\\
\textbf{CNN} & \textbf{$2\times$} & \textbf{64} & \textbf{89,8089}\\
\hline
\end{tabular}
\end{figure}
\end{frame}
%------------------------------
% \section{Ukázky detekce}
% \ex{66}
% \ex{111}
% \ex{183}
% \ex{195}
% \ex{e1}
%------------------------------
\section{Zhodnocení výsledků}
\begin{frame}{Zhodnocení výsledků}
\begin{itemize}
\item Vytvořili jsme systém (detektor) semaforů
\item Porovnali jsme různé metody řešení
\item Porovnali jsme závislost velikosti vstupních dat na výsledku
\item Nejlepší detektor -- LeNet síť s dvojnásobným zvětšením dat
\item Pro detekci stavu je nejlepší využít konvoluční neuronovou síť
\end{itemize}
V budoucí práci:
\begin{itemize}
\item Rozšířit dataset o data z večerních a nočních hodin
\item Vylepšit detekci stavu semaforu.
\end{itemize}
\end{frame}
%------------------------------
\section*{Děkuji za pozornost} %------------------------------
\begin{frame}{Dotazy}
\textbf{Jak velké byly trénovací datasety (počet obrázků a počet semaforů)?}\\
Trénovací dataset se skládal ze $417$ obrázku, ve kterých bylo vyznačeno $1 347$ semaforů.
\begin{document}
\maketitle
%--------------------------------------------------------------------
\begin{frame}{Obsah}
\setbeamertemplate{section in toc}[sections numbered]
\tableofcontents[hideallsubsections]
\end{frame}
%--------------------------------------------------------------------
\begin{sectionframe}{Cíl práce}
Cílem této práce bylo:
\begin{itemize}
\item Vytvořit systém pro detekci semaforů v obrazech
\item Otestovat systém na datech z reálného světa
\end{itemize}
\end{sectionframe}
%--------------------------------------------------------------------
\section{Řešení daného problému}
\begin{frame}{Zvolené řešení}
\textbf{Neuronové sítě}
\begin{itemize}
\item Inspirovány přírodou, lidským mozkem
\item Schopnost učení se
\end{itemize}
\textbf{Konvoluční neuronové sítě}
\begin{itemize}
\item Druh neuronových sítí
\item Zpracovávají obrazy
\item Úkolem je klasifikace objektů v obraze
\end{itemize}
\end{frame}
%--------------------------------------------------------------------
\begin{frame}{Zvolené typy konvolučních neuronových sítí}
Pro detekci lokace byly využity konvoluční neuronové sítě.
\begin{cols}
\begin{col}{0.6}
\textbf{LeNet typ}
\begin{itemize}
\item Jednoduchá lineární architektura
\item 24 vrstev
\end{itemize}
\textbf{Jaký vliv má velikost trénovací množiny na výslednou přesnost detektoru?}\\
Trénovací množina musí v první řadě obsahovat všechny druhy objektu, které chceme detekovat. Všechny druhy nejlépe zastoupeny rovnoměrně.
Nemůžeme očekávat, že konvoluční síť bude schopna rozeznat objekt, na který jsme jí nenatrénovali.
\textbf{ResNet typ}
\begin{itemize}
\item Hluboká neuronová síť
\item 97 vrstev
\item Obsahuje residuální bloky se 'skip' mechanismem
\end{itemize}
\end{col}
\begin{col}{0.4}
% \begin{figure}[h!]
% \centering
% \includegraphics[width=\linewidth]{../Figures/res_block_presentation.pdf}
% \end{figure}
\end{col}
\end{cols}
\end{frame}
%--------------------------------------------------------------------
\begin{frame}{Problém následného zjištění stavu}
\begin{cols}
\begin{col}{0.7}
\textbf{Detekce stavu analýzou jasu pixelů}
\begin{itemize}
\item Nalezení třetiny semaforu s největším průměrným jasem
\item Procentuální pokrytí semaforu pixely, spadající do určitých hranic HSV barevného prostoru
\end{itemize}
\textbf{Detekce pomocí konvoluční sítě}
\begin{itemize}
\item Lokace kružnic na semaforu pomocí LeNet sítě
\item Určení pozice kružnice vzhledem k celému semaforu
\end{itemize}
\end{col}
\begin{col}{0.3}
\end{col}
\end{cols}
\end{frame}
%--------------------------------------------------------------------
\section{Experimentry} %Provedené experimenty??
\begin{frame}{Počet detekcí}
\begin{itemize}
\item Testovací dataset se skládá z 200 obrázků v nichž se nachází 628 semaforů (\textit{Ground Truth}).
\item Dolní index u detektoru značí faktor zvětšení dat.
\end{itemize}
Semafory (pro automobily) nemají moc různorodý tvar, proto oněch $417$ obrázků stačilo na natrénování našich sítí.
\end{frame}
\begin{figure}[h!]
\centering
\begin{tikzpicture}
\begin{axis}[
ybar,
xtick = data,
ylabel={Počer všech detekcí},
symbolic x coords={GT, $\text{LeNet}_{1}$, $\text{ResNet}_{1}$, $\text{LeNet}_{1.5}$, $\text{ResNet}_{1.5}$, $\text{LeNet}_{2}$, $\text{ResNet}_{2}$},
x tick label style = {rotate=45, anchor=east},
nodes near coords,
ymin = 0, ymax = 720
]
\addplot coordinates {
(GT, 628)
($\text{LeNet}_{1}$, 418)
($\text{ResNet}_{1}$, 524)
($\text{LeNet}_{1.5}$, 543)
($\text{ResNet}_{1.5}$, 598)
($\text{LeNet}_{2}$, 567)
($\text{ResNet}_{2}$, 611)
};
\end{axis}
\end{tikzpicture}
\end{figure}
\end{frame}
%--------------------------------------------------------------------
\begin{frame}{Negativní detekce}
\begin{itemize}
\item Pro LeNet je nejlepší $2\times$ zvětšení dat
\item ResNet detekuje více objektů na úkor kvality detekce
\end{itemize}
\begin{table}
\begin{tabular}{l r r r}
\hline
Typ sítě & Počet detekcí & Negativní detekce [\%] & F1 skóre \\
\hline
\hline
$\text{LeNet}_{1}$ & 418 & 0,3 & 0,7973 \\
$\text{LeNet}_{1.5}$ & 543 & 1,3 & 0,9155 \\
\textbf{$\text{LeNet}_{2}$} & \textbf{567} & \textbf{1,1} & \textbf{0,9389} \\
\hline
$\text{ResNet}_{1}$ & 524 & 0,2 & 0,9080 \\
$\text{ResNet}_{1.5}$ & 598 & 3,1 & 0,9462 \\
$\text{ResNet}_{2}$ & 611 & 4,1 & 0,9460 \\
\hline
\end{tabular}
\end{table}
\end{frame}
%--------------------------------------------------------------------
\begin{frame}{Porovnání metod pro detekci stavu}
\begin{itemize}
\item Obě metody pracují s podobnou přesností
\item Metodu CNN je ale jednodušší vylepšit
\end{itemize}
\begin{figure}[h!]
\centering
\begin{tabular}{l r r r r}
\hline
Metoda & Zvětšení dat & Počet chyb & Přesnost [\%] \\
\hline
\hline
Jas+HSV & $1\times$ & 67 & 89,3312\\
Jas+HSV & $1,5\times$ & 82 & 86,9426\\
Jas+HSV & $2\times$ & 103 & 83,5987\\
CNN & $1\times$ & 175 & 72,1337\\
CNN & $1,5\times$ & 91 & 85,5095\\
\textbf{CNN} & \textbf{$2\times$} & \textbf{64} & \textbf{89,8089}\\
\hline
\end{tabular}
\end{figure}
\end{frame}
%--------------------------------------------------------------------
\begin{sectionframe}{Zhodnocení výsledků}
\begin{itemize}
\item Vytvořili jsme systém (detektor) semaforů
\item Porovnali jsme různé metody řešení
\item Porovnali jsme závislost velikosti vstupních dat na výsledku
\item Nejlepší detektor -- LeNet síť s dvojnásobným zvětšením dat
\item Pro detekci stavu je nejlepší využít konvoluční neuronovou síť
\end{itemize}
V budoucí práci:
\begin{itemize}
\item Rozšířit dataset o data z večerních a nočních hodin
\item Vylepšit detekci stavu semaforu.
\end{itemize}
\end{sectionframe}
%--------------------------------------------------------------------
\section*{Děkuji za pozornost}
\begin{frame}{Dotazy}
\textbf{V jakém stavu je začlenění vytvořeného SW do BigDataViewer?}\newline
TODO kamo
\textbf{Question from Krumnikl Ph.D.}\newline
TODO kamo
\end{frame}
\end{document}
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment