First complete draft

This commit is contained in:
2018-08-08 19:43:11 +02:00
parent 91cd48b619
commit 588fac75c8
16 changed files with 232 additions and 161 deletions

View File

@@ -1,18 +1,18 @@
\section{Color calibration}
\section{Color Calibration}
All our detection algorithms require color calibration, and when the lighting
conditions on the field change, colors might have to be newly calibrated. For
us this meant that a tool was necessary, that could simplify this process as
far as possible. For this reason, we implemented a small OpenCV-based program,
that we called \verb|Colorpicker|. This program can access various video
sources, as well as use still images for calibration. The main interface
contains the sliders for adjusting the HSV interval, as well as the video area,
conditions on the field change, colors might have to be recalibrated. For us
this meant that a tool was necessary, that could simplify this process as far
as possible. For this reason, we implemented a small OpenCV-based program, that
we called \verb|Colorpicker|. This program can access various video sources, as
well as use still images for calibration. The main interface contains the
sliders for adjusting the HSV interval, as well as the video area,
demonstrating the resulting binary mask. The colors can be calibrated for three
targets: ball, goal and field; and the quality of detection, depending on the
chosen target is demonstrated. When the program is closed, the calibration
values are automatically saved to the settings file \verb|nao_defaults.json|.
The interface of the Colorpicker is demonstrated in the figure \ref{p figure
colorpicker}.
chosen target is demonstrated in the tool's video area. When the program is
closed, the calibration values are automatically saved to the settings file
\verb|nao_defaults.json|. The interface of the Colorpicker is demonstrated in
the figure \ref{p figure colorpicker}.
\begin{figure}[ht]
\includegraphics[width=\textwidth]{\fig colorpicker}

View File

@@ -1,6 +1,6 @@
\chapter{Implementation details}
\chapter{Implementation Details}
\section{Code organization}
\section{Code Organization}
Our code is organized as a standard Python package. The following command can
be used to make the robot run the whole goal scoring sequence:
@@ -32,7 +32,7 @@ The main logic of our implementation can be found in the following files:
or video files.
\item \verb|movements.py| implements convenience movements-related function,
such as walking and kick.
such as walking and also the kick.
\item \verb|nao_defaults.json| stores all project-global settings, such as
the IP-address of the robot, or color calibration results.

View File

@@ -16,4 +16,6 @@ the playback speed of the videos needed to be adjusted afterwards using video
editing programs. Furthermore, due to computational resource limitations of the
Nao, the frames could have been captured only in low resolution. However, the
quality of the resulting videos was sufficient for successful debugging and
also for the presentation.
also for the presentation. Some of the illustrations for this report, such as
the figure \ref{p figure direct-approach} for example, were created with the
help of those videos.

View File

@@ -1,4 +1,4 @@
\section{Text to speech}
\section{Text to Speech}
During the implementation of our solution for the objective stated in \ref{sec
problem statement} we included suitable functions to get a feedback about
@@ -12,7 +12,7 @@ the program by running it in a separate thread. We also ensured, that the robot
does not repeat the same sentence over and over again, if he remains in the
same state.
\section{Goal confirmation}
\section{Goal Confirmation}
It makes sense to let the robot check, if he has actually scored a goal after
he performed a goal kick. We therefore implemented a simple goal confirmation