268 lines
6.3 KiB
Plaintext
268 lines
6.3 KiB
Plaintext
|
#LyX 2.3 created this file. For more info see http://www.lyx.org/
|
|||
|
\lyxformat 544
|
|||
|
\begin_document
|
|||
|
\begin_header
|
|||
|
\save_transient_properties true
|
|||
|
\origin unavailable
|
|||
|
\textclass article
|
|||
|
\begin_preamble
|
|||
|
\usepackage{newpxtext,newpxmath}
|
|||
|
\end_preamble
|
|||
|
\use_default_options false
|
|||
|
\begin_modules
|
|||
|
theorems-ams
|
|||
|
theorems-sec
|
|||
|
eqs-within-sections
|
|||
|
figs-within-sections
|
|||
|
tabs-within-sections
|
|||
|
theorems-named
|
|||
|
\end_modules
|
|||
|
\maintain_unincluded_children false
|
|||
|
\language british
|
|||
|
\language_package default
|
|||
|
\inputencoding utf8
|
|||
|
\fontencoding global
|
|||
|
\font_roman "default" "default"
|
|||
|
\font_sans "default" "default"
|
|||
|
\font_typewriter "default" "default"
|
|||
|
\font_math "auto" "auto"
|
|||
|
\font_default_family default
|
|||
|
\use_non_tex_fonts false
|
|||
|
\font_sc false
|
|||
|
\font_osf false
|
|||
|
\font_sf_scale 100 100
|
|||
|
\font_tt_scale 100 100
|
|||
|
\use_microtype false
|
|||
|
\use_dash_ligatures true
|
|||
|
\graphics default
|
|||
|
\default_output_format default
|
|||
|
\output_sync 0
|
|||
|
\bibtex_command default
|
|||
|
\index_command default
|
|||
|
\paperfontsize default
|
|||
|
\spacing other 1.15
|
|||
|
\use_hyperref true
|
|||
|
\pdf_bookmarks true
|
|||
|
\pdf_bookmarksnumbered false
|
|||
|
\pdf_bookmarksopen false
|
|||
|
\pdf_bookmarksopenlevel 1
|
|||
|
\pdf_breaklinks false
|
|||
|
\pdf_pdfborder true
|
|||
|
\pdf_colorlinks false
|
|||
|
\pdf_backref false
|
|||
|
\pdf_pdfusetitle true
|
|||
|
\papersize a4paper
|
|||
|
\use_geometry false
|
|||
|
\use_package amsmath 2
|
|||
|
\use_package amssymb 2
|
|||
|
\use_package cancel 0
|
|||
|
\use_package esint 1
|
|||
|
\use_package mathdots 0
|
|||
|
\use_package mathtools 0
|
|||
|
\use_package mhchem 0
|
|||
|
\use_package stackrel 0
|
|||
|
\use_package stmaryrd 0
|
|||
|
\use_package undertilde 0
|
|||
|
\cite_engine basic
|
|||
|
\cite_engine_type default
|
|||
|
\biblio_style plain
|
|||
|
\use_bibtopic false
|
|||
|
\use_indices false
|
|||
|
\paperorientation portrait
|
|||
|
\suppress_date false
|
|||
|
\justification true
|
|||
|
\use_refstyle 0
|
|||
|
\use_minted 0
|
|||
|
\index Index
|
|||
|
\shortcut idx
|
|||
|
\color #008000
|
|||
|
\end_index
|
|||
|
\leftmargin 0cm
|
|||
|
\rightmargin 0cm
|
|||
|
\secnumdepth 3
|
|||
|
\tocdepth 2
|
|||
|
\paragraph_separation indent
|
|||
|
\paragraph_indentation default
|
|||
|
\is_math_indent 0
|
|||
|
\math_numbering_side default
|
|||
|
\quotes_style english
|
|||
|
\dynamic_quotes 0
|
|||
|
\papercolumns 1
|
|||
|
\papersides 1
|
|||
|
\paperpagestyle default
|
|||
|
\tracking_changes false
|
|||
|
\output_changes false
|
|||
|
\html_math_output 0
|
|||
|
\html_css_as_file 0
|
|||
|
\html_be_strict false
|
|||
|
\end_header
|
|||
|
|
|||
|
\begin_body
|
|||
|
|
|||
|
\begin_layout Title
|
|||
|
AAR: Project Proposal
|
|||
|
\end_layout
|
|||
|
|
|||
|
\begin_layout Author
|
|||
|
Casper V.
|
|||
|
Kristensen - 201509411
|
|||
|
\begin_inset Newline newline
|
|||
|
\end_inset
|
|||
|
|
|||
|
Alexander Munch-Hansen - 201505956
|
|||
|
\end_layout
|
|||
|
|
|||
|
\begin_layout Section
|
|||
|
Envisioned Use Case
|
|||
|
\end_layout
|
|||
|
|
|||
|
\begin_layout Standard
|
|||
|
We wish to create an augmented reality multiplayer chess experience.
|
|||
|
Each player will be playing separately at their own chess board using their
|
|||
|
own physical pieces, while the opponent's pieces – which are not present
|
|||
|
physically – will be rendered through a see-through head mounted display
|
|||
|
like the Hololense.
|
|||
|
We envision the final product to look similar to this
|
|||
|
\begin_inset Foot
|
|||
|
status open
|
|||
|
|
|||
|
\begin_layout Plain Layout
|
|||
|
\begin_inset Flex URL
|
|||
|
status open
|
|||
|
|
|||
|
\begin_layout Plain Layout
|
|||
|
|
|||
|
https://www.youtube.com/embed/Geyr95Nl8mc?start=4&end=23&autoplay=1
|
|||
|
\end_layout
|
|||
|
|
|||
|
\end_inset
|
|||
|
|
|||
|
|
|||
|
\end_layout
|
|||
|
|
|||
|
\end_inset
|
|||
|
|
|||
|
project by Günther et al.
|
|||
|
\begin_inset CommandInset citation
|
|||
|
LatexCommand cite
|
|||
|
key "Gunther:2018:CET:3170427.3188647"
|
|||
|
literal "false"
|
|||
|
|
|||
|
\end_inset
|
|||
|
|
|||
|
.
|
|||
|
\end_layout
|
|||
|
|
|||
|
\begin_layout Section
|
|||
|
Actual Plan
|
|||
|
\end_layout
|
|||
|
|
|||
|
\begin_layout Standard
|
|||
|
Instead of using a HoloLens, we can implement the system using a webcam
|
|||
|
and setup similar to that of the Augmented Reality course.
|
|||
|
We will utilise machine learning to recognise the board state from the
|
|||
|
camera image, which, most notably, involves identifying the different board
|
|||
|
pieces and their position on the board.
|
|||
|
\end_layout
|
|||
|
|
|||
|
\begin_layout Standard
|
|||
|
To begin with, getting the system working from the perspective of a single
|
|||
|
user does not require being able to separate black and white pieces, since
|
|||
|
each player will only play using their own physical ones.
|
|||
|
Once a method for detecting a single colour has been developed, however,
|
|||
|
expanding the dataset to include the other one should be trivial.
|
|||
|
\end_layout
|
|||
|
|
|||
|
\begin_layout Standard
|
|||
|
In addition to reducing the scope by colour, we will also start by implementing
|
|||
|
an algorithm for identifying only two or three different and easily distinguish
|
|||
|
able pieces like the pawn, knight, and king.
|
|||
|
Expanding the algorithm to the remaining pieces may prove difficult, since,
|
|||
|
for example, the original
|
|||
|
\begin_inset Foot
|
|||
|
status collapsed
|
|||
|
|
|||
|
\begin_layout Plain Layout
|
|||
|
https://en.wikipedia.org/wiki/Staunton_chess_set
|
|||
|
\end_layout
|
|||
|
|
|||
|
\end_inset
|
|||
|
|
|||
|
pawn and bishop may look similar, in which case we will have to look into
|
|||
|
creating our own.
|
|||
|
\end_layout
|
|||
|
|
|||
|
\begin_layout Standard
|
|||
|
Another issue is occluding the virtual pieces with the real ones, allowing
|
|||
|
for a seamless augmented reality experience.
|
|||
|
To utilise our knowledge from the previous course we would hope to use
|
|||
|
the Unity game engine for this task, however, as some OpenCV functionality
|
|||
|
is unavailable through the OpenCVForUnity module, we may have to use other
|
|||
|
frameworks for the object detection, and therefore also for rendering virtual
|
|||
|
objects, considering integration and operability.
|
|||
|
\end_layout
|
|||
|
|
|||
|
\begin_layout Standard
|
|||
|
Lastly, as shown in the video by Günther et al., showing where each piece
|
|||
|
is allowed to move upon picking it up or pointing to it could increase
|
|||
|
the usefulness of the system, as well as the scope of the project, if there
|
|||
|
is time to do so.
|
|||
|
\end_layout
|
|||
|
|
|||
|
\begin_layout Subsection
|
|||
|
Milestones
|
|||
|
\end_layout
|
|||
|
|
|||
|
\begin_layout Enumerate
|
|||
|
Persuade lecturer or TA into letting us use cool new HoloLens rather than
|
|||
|
boring old webcam.
|
|||
|
\end_layout
|
|||
|
|
|||
|
\begin_layout Enumerate
|
|||
|
Implement board detection and homography/warping.
|
|||
|
\end_layout
|
|||
|
|
|||
|
\begin_layout Enumerate
|
|||
|
Gather initial dataset for 2-3 pieces of a single colour based on previous
|
|||
|
step and simple script.
|
|||
|
\end_layout
|
|||
|
|
|||
|
\begin_layout Enumerate
|
|||
|
Implement and train machine learning algorithm for classification of pieces
|
|||
|
in reduced dataset.
|
|||
|
\end_layout
|
|||
|
|
|||
|
\begin_layout Enumerate
|
|||
|
Virtual object rendering and occlusion between real and augmented pieces.
|
|||
|
\end_layout
|
|||
|
|
|||
|
\begin_layout Enumerate
|
|||
|
Expand dataset to include both black and white pieces.
|
|||
|
\end_layout
|
|||
|
|
|||
|
\begin_layout Enumerate
|
|||
|
Integration with open source chess engine to show player optimal move.
|
|||
|
\end_layout
|
|||
|
|
|||
|
\begin_layout Standard
|
|||
|
\begin_inset Newpage newpage
|
|||
|
\end_inset
|
|||
|
|
|||
|
|
|||
|
\end_layout
|
|||
|
|
|||
|
\begin_layout Standard
|
|||
|
\begin_inset CommandInset bibtex
|
|||
|
LatexCommand bibtex
|
|||
|
btprint "btPrintAll"
|
|||
|
bibfiles "bib"
|
|||
|
options "plain"
|
|||
|
|
|||
|
\end_inset
|
|||
|
|
|||
|
|
|||
|
\end_layout
|
|||
|
|
|||
|
\end_body
|
|||
|
\end_document
|