Skip to content

Instantly share code, notes, and snippets.

@nzjrs
Created March 29, 2012 05:00
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save nzjrs/2233486 to your computer and use it in GitHub Desktop.
Save nzjrs/2233486 to your computer and use it in GitHub Desktop.
University of Canterbury Thesis Template
[submodule "documents/latex-makefile"]
path = documents/latex-makefile
url = git://gist.github.com/503886.git
THESIS TEMPLATE
% gedit:master-filename = thesis.tex
% IMU STUFF
% http://www.starlino.com/imu_guide.html
% http://www.sparkfun.com/tutorials/167
\chapter{Equipment}\label{app:equipment}
All experimental work was undertaken.
% gedit:master-filename = thesis.tex
%Image related
\renewcommand{\u}{u} %image point coords
\renewcommand{\v}{v}
\newcommand{\velu}{v_u} %image point coords
\newcommand{\velv}{v_v}
%Depth related
%Edge detection related
\renewcommand{\H}{h}
\newcommand{\xmin}{x_{\min}}
\newcommand{\vmax}{v_{\max}}
\newcommand{\vres}{\delta}
\newcommand{\vdelta}{\Delta v}
\newcommand{\xdelta}{\Delta x}
\newcommand{\V}{V}
\newcommand{\Nv}{N_v}
\newcommand{\scale}{k}
\newcommand{\pdf}{f}
\newcommand{\cdf}{F}
\newcommand{\encc}[1]{\left\{#1\right\}}
\newcommand{\edge}{\varepsilon}
\newcommand{\edgedet}{\varepsilon_D}
\newcommand{\strategymin}{\emph{minimum information strategy}\xspace}
\newcommand{\strategypeak}{\emph{maximum peak avoidance strategy}\xspace}
\newcommand{\strategypeaknear}{\emph{maximum near-peak avoidance strategy}\xspace}
\newcommand{\edgemax}{m_p}
../custom-commands-varnames.tex
\usepackage{xspace} %for \xspace
\usepackage{amsfonts} %for tickyes
\usepackage{pifont} %for tickno
\newcommand{\jtickyes}{\checkmark}
\newcommand{\jtickno}{\hspace{1pt}\ding{55}}
\newcommand{\jvec}[1]{\mathbf{#1}} % vector
\newcommand{\jmat}[1]{\mathbf{#1}} % matrix
\newcommand{\jimg}[1]{\mathbf{#1}} % image
\newcommand{\jpitch}{\ensuremath{\theta}} % pitch
\newcommand{\jroll}{\ensuremath{\phi}} % roll
\newcommand{\jyaw}{\ensuremath{\psi}} % yaw
\newcommand{\jdeg}{\ensuremath{^\circ}\xspace} % angular degree symbol
\newcommand{\jrefeqn}[1]{(\ref{#1})} % reference a equation
\newcommand{\jrefEqn}[1]{(\ref{#1})}
\newcommand{\jreffig}[1]{Figure \ref{#1}} % reference a figure
\newcommand{\jrefFig}[1]{Figure \ref{#1}}
\newcommand{\jrefalg}[1]{Algorithm \ref{#1}} % reference a algorithm
\newcommand{\jrefAlg}[1]{Algorithm \ref{#1}}
\newcommand{\jrefsec}[1]{Section \ref{#1}} % reference a section
\newcommand{\jrefSec}[1]{Section \ref{#1}}
\newcommand{\jrefchap}[1]{Chapter \ref{#1}} % reference a chapter
\newcommand{\jrefChap}[1]{Chapter \ref{#1}}
\newcommand{\jreftab}[1]{table \ref{#1}} % reference a table
\newcommand{\jrefTab}[1]{Table \ref{#1}}
\newcommand{\jrefapp}[1]{appendix \ref{#1}} % reference a appendix
\newcommand{\jrefApp}[1]{Appendix \ref{#1}}
\newcommand{\jreflst}[1]{listing \ref{#1}} % reference a source code listing
\newcommand{\jrefLst}[1]{Listing \ref{#1}}
\newcommand{\jcite}[1]{~\cite{#1}}
\newcommand{\jciteetal}[2]{#2~et~al.~\cite{#1}} % jciteetal{Foo98}{Foo}
\newcommand{\jquote}[1]{`#1'\xspace}
\newcommand{\jqquote}[1]{``#1''\xspace}
\newcommand{\jgives}{\ensuremath{\longrightarrow}\xspace}
\newcommand{\jlink}[2]{\href{#2}{#1}\footnote{\url{#2}}} %\jlink{name}{url}
\newcommand{\jdescitem}[1]{\item[#1] \hfill \\} % for description items, on new line
\newcommand{\T}{\mathsf{T}} % transpose
\newcommand{\ud}{\mathrm{d}} % upright d (derivative)
\newcommand{\etal}{~et~al.\xspace} % et al with correct spaces
\newcommand{\focal}{\ensuremath{f}} % curly f focal length symbol
\newcommand{\dt}{\ensuremath{\ud t}} % dt with non-italic d
\newcommand{\expp}[1]{\exp\left(#1 \right) } % exp operator
\newcommand{\convolution}{\odot} % convolution operator
\newcommand{\je}[1]{\ensuremath{\times 10^{#1}}}% raised to the power operator
\newcommand{\jj}{\mathrm{j}} % imaginary operator
\newcommand{\magn}[1]{\left|#1\right|} % |argument|
\newcommand{\F}{\mathcal{F}} % Fourier transform
\newcommand{\jemail}{\url{john.stowers@ieee.org}}
\newcommand{\jemailplain}{john.stowers@ieee.org}
\newcommand{\drosophila}{\emph{Drosophila}\xspace} % italicise bio names
\newcommand{\honeybee}{\emph{Apis}\xspace}
\newcommand{\wasp}{\textit{wasp}\xspace}
\newcommand{\Wasp}{\textit{Wasp}\xspace}
\newcommand{\Kinect}{{Kinect\textsuperscript{\textregistered}}\xspace}
\newcommand{\inch}{{\tt "\/\,}} % inch symbol
\newcommand{\Zurich}{Z\"{u}rich\xspace}
\newcommand{\ETH}{{Eidgen\"{o}ssische Technische Hochschule Z\"{u}rich}\xspace}
\newcommand{\ENAC}{{\'{E}cole Nationale de l'Aviation Civile}\xspace}
% math operators
\DeclareMathOperator{\jdist}{dist}
\DeclareMathOperator{\tr}{tr}
\DeclareMathOperator{\median}{median}
\DeclareMathOperator*{\argmax}{arg\,max}
\DeclareMathOperator*{\argmin}{arg\,min}
% debugging helpers
\newcommand{\fx}[1]{\textbf{FIXME: #1}}
../custom-commands.tex
% gedit:master-filename = thesis.tex
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Acronyms
\newacronym{3D}{3D}{three-dimensional}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Glossary
\newglossaryentry{diurnal}
{
name={diurnal},
description={Of or belonging to or active during the day; as opposed to nocturnal}
}
%\glsaddall
%%
%% This is file `electhesis.cls', generated on <1994/12/2>
%% with the docstrip utility (2.2h).
%%
%% The original source file was `electhesis.dtx'.
%% Included options: `class'.
%%
%%
%% IMPORTANT NOTICE:
%% You are not allowed to distribute this file.
%% For distribution of the original source see
%% the copyright notice in the file electhesis.dtx.
%%
%% \CharacterTable
%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
%% Digits \0\1\2\3\4\5\6\7\8\9
%% Exclamation \! Double quote \" Hash (number) \#
%% Dollar \$ Percent \% Ampersand \&
%% Acute accent \' Left paren \( Right paren \)
%% Asterisk \* Plus \+ Comma \,
%% Minus \- Point \. Solidus \/
%% Colon \: Semicolon \; Less than \<
%% Equals \= Greater than \> Question mark \?
%% Commercial at \@ Left bracket \[ Backslash \\
%% Right bracket \] Circumflex \^ Underscore \_
%% Grave accent \` Left brace \{ Vertical bar \|
%% Right brace \} Tilde \~}
\def\fileversion{v0.9h}
\def\filedate{1994/12/02}
\def\docdate{1994/12/02}
\NeedsTeXFormat{LaTeX2e}[1994/06/01]
\ProvidesClass{electhesis}[\filedate\space Elec. Eng. thesis class]
\typeout{Elec. Eng. Thesis Class `electhesis' <\filedate>. BETA VERSION.}
\typeout{}
\typeout{Please note that this is a BETA version of electhesis.}
\typeout{If you encounter any problems or bugs in using it please email a message}
\typeout{to latex@elec.canterbury.ac.nz.}
\typeout{}
\def\@basedonclass{book}
\newif\if@elecdraft
\@elecdraftfalse
\newif\if@elecrac
\@elecracfalse
\DeclareOption{draft}{%
\@elecdrafttrue
\PassOptionsToClass{draft}{\@basedonclass}
\typeout{Making DRAFT Copy}
}
\DeclareOption{final}{%
\@elecdraftfalse
\PassOptionsToClass{final}{\@basedonclass}
}
\DeclareOption{dottoc}{%
\AtEndOfClass{\renewcommand\@dotsep{4.5}}}
\DeclareOption{noupcase}{%
\AtEndOfClass{%
\renewcommand\ChapterNumberCase{}
\renewcommand\ChapterTitleCase{}
\renewcommand\SectionCase{}
}}
\DeclareOption{eleccite}{%
\AtEndOfClass{\RequirePackage{eleccite}}}
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{\@basedonclass}}
\ProcessOptions
\PassOptionsToClass{a4paper,11pt}{\@basedonclass}
\LoadClass{\@basedonclass}
\RequirePackage{setspace}
\def\chk@dimen#1#2#3#4{%
\@tempdima= #1
\advance\@tempdima by#3
\advance\@tempdima -\paperwidth
\@tempdimb= #2
\advance\@tempdimb by#4
\advance\@tempdimb \headheight
\advance\@tempdimb \headsep
\advance\@tempdimb \footskip
\advance\@tempdimb -\paperheight
\ifnum\@tempdima>\z@\ClassWarning{electhesis}{Horizontal dimensions
exceed paper width by \the\@tempdima}\fi\relax
\ifnum\@tempdimb>\z@\ClassWarning{electhesis}{Vertical dimensions
exceed paper height by \the\@tempdimb}\fi\relax
}
\newcommand\SetMargins[7]{%
\oddsidemargin -1in\evensidemargin -1in\topmargin -1in
\textwidth \paperwidth
\advance\textwidth -#1
\advance\textwidth -#3
\textheight \paperheight
\advance\textheight -#2
\advance\textheight -#5
\advance\textheight -#6
\advance\textheight -#7
\advance\textheight -#4
\advance\oddsidemargin #1
\advance\evensidemargin \paperwidth
\advance\evensidemargin -#1
\advance\evensidemargin -\textwidth
\advance\topmargin #2
\headheight #5
\headsep #6
\footskip #7
\@settopoint\textwidth
\chk@dimen{#1}{#2}{\textwidth}{\textheight}}
\SetMargins{4.0cm}{2.5cm}{2.5cm}{1cm}{11pt}{10mm}{1.5cm}
\newcommand\PageFont{\small}
\newcommand\HeadFont{\footnotesize}
\newcommand\HeadCase{\uppercase}
\newcommand\FootFont{\footnotesize}
\newcommand\FootCase{}
\def\ps@headings{%
\if@elecdraft
\def\@oddfoot{\reset@font\FootFont\hfil{\draftname} \today}%
\def\@evenfoot{\reset@font\FootFont{\draftname} \today\hfil}%
\else
\let\@oddfoot\@empty
\let\@evenfoot\@empty
\fi
\def\@evenhead{\reset@font\PageFont\thepage \hfil \HeadFont\leftmark}%
\def\@oddhead{\reset@font\HeadFont\rightmark \hfil \PageFont\thepage}%
\let\@mkboth\markboth
\def\chaptermark##1{%
\markboth {\HeadCase{\ifnum \c@secnumdepth >\m@ne
\if@mainmatter
\@chapapp\ \thechapter \hskip 1em \fi
\fi
##1}}{%
\HeadCase{\if@mainmatter \else ##1 \fi}}}%
\def\sectionmark##1{%
\markright {\HeadCase{\ifnum \c@secnumdepth >\z@
\thesection \hskip 1em\fi
##1}}}}
\def\ps@plain{%
\if@elecdraft
\def\@oddfoot{\reset@font\FootFont\hfil{\draftname} \today}%
\def\@evenfoot{\reset@font\FootFont{\draftname} \today\hfil}%
\else
\let\@oddfoot\@empty
\let\@evenfoot\@empty
\fi
\def\@evenhead{\reset@font\PageFont \thepage\hfil}%
\def\@oddhead{\reset@font\PageFont \hfil\thepage}%
\let\@mkboth\@gobbletwo
}
\def\ps@empty{%
\if@elecdraft
\def\@oddfoot{\reset@font\FootFont\hfil{\draftname} \today}%
\def\@evenfoot{\reset@font\FootFont{\draftname} \today\hfil}%
\else
\let\@oddfoot\@empty
\let\@evenfoot\@empty
\fi
\let\@evenhead\@empty
\let\@oddhead\@empty
\let\@mkboth\@gobbletwo
}
\def\cleardoublepage{%
\clearpage
\if@twoside
\ifodd \c@page
\else
\hbox{}\thispagestyle{empty}\newpage
\if@twocolumn\hbox{}\newpage
\fi\fi\fi}
\clubpenalty 300
\widowpenalty 300
\displaywidowpenalty 100
\brokenpenalty 150
\parskip 0.5ex plus 2pt
\parindent 20pt
\if@elecdraft
%% \AtBeginDocument patched in by Volker, 9 Jan 95
\AtBeginDocument\doublespacing
\else
%% \AtBeginDocument patched in by Volker, 9 Jan 95
\AtBeginDocument\onehalfspacing
\fi
\newcommand\department[1]{\gdef\@department{#1}}
\newcommand\school[1]{\gdef\@school{#1}}
\newcommand\address[1]{\gdef\@address{#1}}
\newcommand\phdthesis{%
\gdef\@degree{Doctor of Philosophy}%
\gdef\@thesismessage{A thesis presented for the degree of}}
\newcommand\methesis{%
\gdef\@degree{Master of Engineering}%
\gdef\@thesismessage{A thesis submitted in partial fulfilment\\
of the requirements for the degree of}}
\newcommand\mereport{%
\gdef\@degree{Master of Engineering}%
\gdef\@thesismessage{A report submitted in partial fulfilment \\
of the requirements for the degree of}}
\newcommand\mastersthesis{%
\ClassError{electhesis}
{\string\mastersthesis\space command is obsolete. Use \string\methesis}
{Use the \string\methesis\space command.}
\methesis}
\newcommand\mastersreport{%
\ClassError{electhesis}
{\string\mastersreport\space command is obsolete. Use \string\mereport}
{Use the \string\mereport\space command.}
\mereport}
\newcommand\degree[1]{\gdef\@degree{#1}}
\newcommand\thesismessage[1]{\gdef\@thesismessage{#1}}
\department{Electrical and Computer Engineering}
\school{University of Canterbury}
\address{Christchurch, New Zealand}
\date{February 2007}
\methesis
\renewcommand\maketitle{\begin{titlepage}%
\parskip 0pt plus 1pt
\parindent 0pt
\renewcommand\baselinestretch{1.2}
\let\footnotesize\small
\let\footnoterule\relax
\null\vskip 30mm
\begin{center}
{\huge \bfseries \noindent
\parbox{0.9\textwidth}{
\begin{center}
\@title
\end{center}}}
\vskip 13mm
{\Large \noindent \@author}
\vfill
{\large \noindent
\@thesismessage \\
\@degree \\
in \\
\@department \\
at the \\
\@school, \\
\@address. \\[3mm]
\@date}
\end{center}
\vskip 20mm
\end{titlepage}%
\setcounter{footnote}{0}%
\let\thanks\relax\let\maketitle\relax
\gdef\@thanks{}\gdef\@author{}\gdef\@title{}%
\gdef\@department{}\gdef\@school{}\gdef\@address{}%
\gdef\@degree{}\gdef\@thesismessage{}}
\def\ChapterNumberFont{\normalfont\LARGE\bfseries}
\def\ChapterTitleFont{\normalfont\Large\bfseries}
\def\SectionFont{\normalfont\large\bfseries}
\def\SubsectionFont{\normalfont\large\bfseries}
\def\SubsubsectionFont{\normalfont\bfseries}
\newcommand\ChapterNumberCase{\uppercase}
\newcommand\ChapterTitleCase{\uppercase}
\newcommand\SectionCase{\uppercase}
\renewcommand\chapter{\if@openright\cleardoublepage\else\clearpage\fi
\thispagestyle{empty}%
\global\@topnum\z@
\@afterindentfalse
\secdef\@chapter\@schapter}
\def\@chapter[#1]#2{%
\ifnum \c@secnumdepth >\m@ne
\if@mainmatter
\refstepcounter{chapter}
\typeout{\@chapapp\space\thechapter.}
\addcontentsline{toc}{chapter}{%
\protect\numberline{\ChapterNumberCase{\@chapapp\ \thechapter}}%
\ChapterNumberCase{#1}}%
\else
\addcontentsline{toc}{chapter}{\ChapterNumberCase{#1}}\fi
\else
\addcontentsline{toc}{chapter}{\ChapterNumberCase{#1}}\fi
\chaptermark{#1}%
\addtocontents{lof}{\protect\addvspace{10pt}}%
\addtocontents{lot}{\protect\addvspace{10pt}}%
\if@twocolumn
\@topnewpage[\@makechapterhead{#2}]%
\else
\@makechapterhead{#2}%
\@afterheading
\fi}
\def\@makechapterhead#1{%
\vspace*{50pt}%
{ \parindent 0pt
\parskip 0pt plus 1pt
\renewcommand\baselinestretch{1.0}
\raggedright \reset@font
\ifnum \c@secnumdepth >\m@ne
\if@mainmatter
\ChapterNumberFont
\expandafter\ChapterNumberCase\expandafter{\@chapapp\ \thechapter}%
%\par
\vskip 0pt \fi \fi
\rule{\hsize}{1pt}\par
\vskip 1.5mm
\ChapterTitleFont \expandafter\ChapterTitleCase\expandafter{#1}\par
\nobreak
\vskip 40pt
}}
\def\@makeschapterhead#1{%
\vspace*{50pt}%
{ \parindent 0pt
\parskip 0pt plus 1pt
\renewcommand\baselinestretch{1.0}
\raggedright \reset@font
\rule{\hsize}{1pt}\par
\vskip 1.5mm
\ChapterTitleFont \expandafter\ChapterTitleCase\expandafter{#1}\par
\nobreak
\vskip 40pt
}}
\def\section{\@tempswafalse\@ifstar{\@tempswatrue\@dblarg
{\pgsect}}{\@dblarg{\pgsect}}}
\def\pgsect[#1]#2{\if@tempswa \pgsection*{\raggedright\SectionCase{#2}}\else
\pgsection[#1]{\raggedright\SectionCase{#2}}\fi}
\def\pgsection{\@startsection {section}{1}{\z@}{-3.5ex plus -1ex minus
-.2ex}{2.3ex plus .2ex}{\SectionFont}}
\renewcommand\subsection{\@startsection{subsection}{2}{\z@}%
{-3.25ex\@plus -1ex \@minus -.2ex}%
{1.5ex \@plus .2ex}%
{\SubsectionFont}}
\renewcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}%
{-3.25ex\@plus -1ex \@minus -.2ex}%
{1.5ex \@plus .2ex}%
{\SubsubsectionFont}}
\setcounter{secnumdepth}{3}
\newenvironment{abstract}{%
\chapter*{\abstractname}}{}
\newenvironment{acknowledgement}{%
\chapter{\acknowledgementname}}{}
\newenvironment{preface}{%
\chapter{\prefacename}}{}
\newenvironment{theglossary}[1]{%
\list{}{%
\settowidth\labelwidth{#1}%
\def\makelabel##1{##1\hfil}%
\let\glossitem=\item}
}{%
\endlist}
\newcommand{\glossref}[1]{(p.~\pageref{#1})}
\newcommand{\glossrefs}[2]{(pp.~\pageref{#1},~\pageref{#2})}
\renewenvironment{titlepage}
{ \cleardoublepage
\if@twocolumn
\@restonecoltrue\onecolumn
\else
\@restonecolfalse\newpage
\fi
\thispagestyle{empty}%
\setcounter{page}{1}%
}%
{ \if@restonecol\twocolumn \else \newpage \fi
}
\long\def\@makecaption#1#2{
\vskip\abovecaptionskip
\sbox\@tempboxa{\footnotesize {\bfseries #1}\hskip 1em #2}
\ifdim \wd\@tempboxa >\hsize
\footnotesize {\bfseries #1}\hskip 1em #2\par
\else
\hbox to\hsize{\hfil\box\@tempboxa\hfil}%
\fi
\vskip\belowcaptionskip}
\let\oldtableofcontents\tableofcontents
\renewcommand\tableofcontents{%
\begingroup
\renewcommand\baselinestretch{1.1}
\reset@font
\parskip 0pt plus 1pt
\parindent 0pt\relax
\oldtableofcontents
\endgroup
}
\renewcommand\@dotsep{10000}
\renewcommand\l@chapter[2]{%
\ifnum \c@tocdepth >\m@ne
\addpenalty{-\@highpenalty}%
\vskip 1.0em \@plus\p@
\setlength\@tempdima{7.8em}%
\begingroup
\parindent \z@ \rightskip \@pnumwidth plus 1fil
\parfillskip -\@pnumwidth
\leavevmode \bfseries
\advance\leftskip\@tempdima
\hskip -\leftskip
#1\nobreak\hfill \nobreak\hbox to\@pnumwidth{\hss #2}\par
\penalty\@highpenalty
\endgroup
\fi}
\renewcommand\l@section {\@dottedtocline{1}{7.8em}{2.3em}}
\renewcommand\l@subsection {\@dottedtocline{2}{10.1em}{3.2em}}
\renewcommand\l@subsubsection{\@dottedtocline{3}{13.3em}{4.1em}}
\setcounter{tocdepth}{3}
\def\prefacebib#1{%
\begingroup
\def\@lbibitem[##1]##2{%
\item\ignorespaces}
\def\@bibitem[##1]##2{%
\item\ignorespaces}
\def\thebibliography##1{\relax
\list{}{\labelwidth 0em\itemindent-\leftmargin}\relax
\def\newblock{\hskip .11em plus .33em minus -.07em}%
\sloppy\clubpenalty=4000\widowpenalty=4000%
\sfcode`\.=1000}%
\def\endthebibliography{%
\def\@noitemerr{\@latex@warning{Empty `prefacebib'}}%
\endlist}
\input{#1.bbl}
\endgroup }
\renewcommand\today{\number\day \space
\ifcase \month \or January\or February\or March\or April\or
May\or June\or July\or August\or September\or October\or
November\or December\fi
\space \number\year}
\newcommand\abstractname{Abstract}
\newcommand\acknowledgementname{Acknowledgements}
\newcommand\prefacename{Preface}
\newcommand\draftname{\textbf{Draft}}
\renewcommand{\bibname}{References}
\pagestyle{headings}
\showboxdepth=-1
\endinput
%%
%% End of file `electhesis.cls'.
%-----------------------------------------------------------
% Instructions
% * original figures should be placed in ./figures/foo.bar
% and included using includegraphics[]{figures/foo}
%-----------------------------------------------------------
\usepackage{ifpdf}
\ifpdf
\usepackage[pdftex]{graphicx}
\DeclareGraphicsExtensions{.pdf,.png,.jpg}
\graphicspath{{./generated/}}
\else
\usepackage[dvips]{graphicx}
\usepackage{epsf}
\usepackage{epsfig}
\DeclareGraphicsExtensions{.pdf,.png,.jpg}
\DeclareGraphicsExtensions{.eps,.ps}
\graphicspath{{./generated/}}
\fi
../generated-graphics-build-magic.tex
% gedit:master-filename = thesis.tex
%% Structure
% Introduction
% Vision and Control
% Direct Control
% Control using Depth
% Control using Edges and Lines
% Conclusion
% Appendix
%% Labelling style
% sec:hardware-wasp-sbc
% sec:simulation-vrml
% fig:quadrotor-wasp-sbc-kinect
%% Style
% present tense
% I not we, not passive voice
% hyphens = - (word, foo-bar), -- (pages 2--3), --- (punctuation --- is hard)
% text is 100 characters wide
%% Citation styles
% http://www.jevon.org/wiki/Latex
% http://en.wikibooks.org/wiki/LaTeX/More_Bibliographies#.5Ccitet_and_.5Ccitet.2A
% http://merkel.zoneo.net/Latex/natbib.php
% \cite[p.~85]{Foo45}
% \cite[ch.~8]{Bar}
%% Figures
% start to float figures with [htpb]
%% Hyphenation
% log-polar
% quadrotor
% coordinate
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\chapter{Introduction}\label{chap:introduction}
Consider a honeybee, fly, or small insect in flight. Even in cluttered environments and at
full speed, the insect's flight behaviour is impressive. The distance between insect eyes is
small and so they cannot rely on stereoscopic vision to assess the distances to
surrounding objects. Therefore, they have developed specific visual
processes to navigate their environment. These processes are
responsible for controlling orientation and movement and extracting information about the
\gls{3D} structure of the environment. These tasks all happen in real-time and exist in
essentially all \gls{diurnal} organisms.
Now consider a similar task performed artificially; the task of controlling a flying robot
by visual means; computer vision. In order to do this one must know, just as biological
organisms, much about oneself and about the surrounding environment\footnote{
\jquote{If you wish to make an apple pie from scratch, you must first invent the
universe.} --- Dr.\ Carl Sagan, Cosmos, 1980
}. One begins with a flying robot and an attached camera (or cameras), but much work
remains to be done before a computer vision system for robot control can be
implemented.
The field of biomimetics is the implementation and testing, in a variety of platforms and
environments, of the principles of information processing identified in biological
systems\jcite{dijkstra76}. In the context of flying robotics, this aspiration
has had some success. For a good review, \citet{dijkstra68} describe a number of
biomimetic controllers using visual information.
\begin{figure}[htb]
\centering
\includegraphics[width=\fullfigwidth]{figures/FIXME}
\caption[An example fruit fly flight path.]{
An example path of a fruit fly path towards its goal.}
\label{fig:bio-multi-process-intro}
\end{figure}
\Cref{chap:control-using-edges} describes biologically inspired methods that
control quadrotor altitude and heading using edges and lines in the environment, and
not optical flow as conventionally done. \Cref{sec:edge-stat-model} introduces a
statistical model describing the distribution of edges in a scene.
\Cref{sec:foo} concludes with a summary of the applicability of these
results and a discussion of areas of biologically inspired control that need further
study.
\section{Foo}\label{sec:foo}
Cool \Cref{app:equipment}
%
\begin{jblockquote}%
Although the role of the haltere in stabilising gaze may be
important, a more essential and immediate role of the haltere
is to provide rapid feedback to wing-steering muscles to
stabilize aerodynamic force moments.
\end{jblockquote}
\chapter{Bar}\label{chap:control-using-edges}
Drosophila and found that sensory inputs from.
../latex-makefile/Makefile
@book{dijkstra76,
title={{A Discipline of Programming}},
author={Edsger W. Dijkstra},
year=1976 }
@article{dijkstra68,
title={{Go to statement considered harmful}},
author={Edsger W. Dijkstra},
year=1968 }
% gedit:extra-issue-commands = fx
% gedit:graphics-paths = .,generated
\documentclass{electhesis}
%-----------------------------------------------------------
\usepackage[english]{babel}
\hyphenation{insect} % stop some words from being hyphenated / line breaks
\hyphenation{insects}
\usepackage{algorithm}
\usepackage{algorithmic}
\usepackage{listings}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{amstext}
\usepackage{amsmath}
\usepackage{array}
\usepackage{caption}
\captionsetup{
margin=10pt,
font=small,
labelfont=bf
}
\usepackage{mdwlist} % for itemize* (a compact item list)
\usepackage{natbib} % for citet, etc
\usepackage{bibentry} % for inline references to papers
\nobibliography* % use the same bibliography file as the main doc.
\usepackage[caption=false]{subfig}
\usepackage{siunitx} % for \SI, \num, \ang
\usepackage{url}
\usepackage{fixme} % for \fxnote, etc
\fxsetup{
status=draft,
layout=pdfnote
}
\pdfcommentsetup{
opacity=0.3,
color={0.1 0.1 0.1},
}
% Use booktabs for \toprule, \midrule, \bottomrule
% www.ece.cmu.edu/~pueschel/teaching/guides/guide-tables.pdf
% - "Small Guide to Making Nice Tables"
% More space between table rows (1.2x line height)
\usepackage{booktabs}
\renewcommand{\arraystretch}{1.2}
\usepackage{hyperref}
\hypersetup{
pdfstartview={FitH}, % fits the width of the page to the window
pdftitle={Biologically Inspired Visual Control of Flying Robots}, % title
pdfauthor={John Ross Stowers}, % author
pdfsubject={PhD Thesis}, % subject of the document
pdfkeywords={quadrotor} {biomimetic} {control}, % list of keywords
colorlinks=true, % false: boxed links; true: colored links
linkcolor=black, % color of internal links
citecolor=black, % color of links to bibliography
filecolor=black, % color of file links
urlcolor=black % color of external links
}
%-----------------------------------------------------------
% Files which use other pacakges including
% - ifpdf, graphicx, xspace, amsfonts, pifont
\include{generated-graphics-build-magic} % rules for building graphics using Makefile
\include{custom-commands}
\include{custom-commands-varnames}
%-----------------------------------------------------------
% acronym and glossary customization
% - it must be loaded after hyperref
% http://tinyurl.com/7mqlvxt
\usepackage[toc,acronym,smaller]{glossaries}
\renewcommand*{\firstacronymfont}[1]{#1} % acronym defs NOT in italic
\renewcommand*{\acronymfont}[1]{#1} % must pass smaller to class opts
\renewcommand*{\glsgroupskip}{} % dont group/space glossaries by first letter
\defglsdisplayfirst[main]{\emph{#1}} % normal glossary definitions and
\defglsdisplay[main]{\emph{#1}} % use are in italic. I cant use the
% \glstextformat command because that
% that applies to both (i.e. main
% and \acronymtype glossaries, which
% makes acronyms italic too.
\renewcommand*{\glsclearpage}{\clearpage} % prevent blank page before each glossary
%-----------------------------------------------------------
% Use cleverref to automatically refer to sections, etc
% - it must be loaded after hyperref
% http://www.howtotex.com/packages/automatic-clever-references-with-cleveref/
% http://tex.stackexchange.com/questions/17874/cleveref-and-titlesec-section-issues
\usepackage{cleveref}
\crefformat{equation}{(#2#1#3)}
\Crefformat{equation}{Equation (#2#1#3)}
\crefname{figure}{Figure}{Figures}
\crefname{table}{Table}{Tables}
\crefname{lstlisting}{listing}{listing}
\crefname{algorithm}{algorithm}{algorithms}
\crefname{section}{Section}{Sections}
\crefname{chapter}{Chapter}{Chapters}
\crefname{appendix}{Appendix}{Appendices}
%-----------------------------------------------------------
% Add and modify commands that ususally live in custom-commands.tex to better use
% the packages in this thesis; acronym, glossary, natbib, cref, etc
\newcommand{\glsfull}[1]{\glsreset{#1}\gls{#1}} % print expanded acronym (glossary) item
\newcommand{\Glsfull}[1]{\glsreset{#1}\Gls{#1}}
\newcommand{\glsplfull}[1]{\glsreset{#1}\glspl{#1}}
\newcommand{\Glsplfull}[1]{\glsreset{#1}\Glspl{#1}}
\renewcommand{\jcite}{~\citep} % use natbib citations
\renewcommand{\fx}[1]{\fxnote{#1}}
\renewcommand{\jmat}[1]{\mathrm{#1}}
% link to the correct glossary item
% using the short name
\renewcommand{\drosophila}{\protect\glslink{fruit-fly}{\emph{Drosophila}}\xspace}
\renewcommand{\honeybee}{\protect\glslink{honeybee}{\emph{Apis}}\xspace}
\newcommand{\housefly}{\protect\glslink{house-fly}{\emph{Musca}}\xspace}
\renewcommand{\Wasp}{`Wasp'\xspace} % italics are reserved for glossary items
\renewcommand{\wasp}{`wasp'\xspace}
\renewcommand{\strategymin}{`minimum information strategy'\xspace}
\renewcommand{\strategypeak}{`maximum peak avoidance strategy'\xspace}
\renewcommand{\strategypeaknear}{`maximum near-peak avoidance strategy'\xspace}
\newcommand{\strategyeth}{`depth and optical flow balance strategy'\xspace}
% deprecate some commands
\renewcommand{\jciteetal}[2]{\GenericError{}{`jciteetal' is depreciated}}
\newcommand{\jaddchaptertotoc}[1]{ % macro to add a chapter to TOC with label
\cleardoublepage
\phantomsection
\addcontentsline{toc}{chapter}{#1}
}
%-----------------------------------------------------------
% New environments
% a more distinct quote environment without needing a new font, adapted from
% http://tex.stackexchange.com/questions/6985/place-quotation-dictum-in-a-box/7009#7009
\newcommand{\hugequoteopen}{\fontsize{42}{48}\selectfont\raisebox{-0.7ex}{\textbf{``}}}
\newcommand{\hugequoteclose}{\fontsize{42}{48}\selectfont\raisebox{-0.7ex}{\textbf{''}}}
\newenvironment{jblockquote}
{\begin{quote}{{\hugequoteopen}}\small\;}
{\end{quote}}
%-----------------------------------------------------------
% Standard sizes for consistent figure layout
\newlength{\subfigheight}
\newlength{\subfigwidth}
\newlength{\fullfigwidth}
\setlength{\fullfigwidth}{1.0\columnwidth}
\newlength{\stdfigwidth}
\setlength{\stdfigwidth}{0.80\columnwidth}
\newlength{\halfstdfigwidth}
\setlength{\halfstdfigwidth}{0.40\columnwidth}
%-----------------------------------------------------------
\makeglossaries
\phdthesis
%-----------------------------------------------------------
\begin{document}
\title{Biologically Inspired Visual Control of Flying Robots}
\author{John Ross Stowers\\\small\textsc{B.E. Hons. I}}
\date{2012}
%-----------------------------------------------------------
\frontmatter
\maketitle
%-----------------------------------------------------------
\include{definitions}
%-----------------------------------------------------------
%\include{abstract}
%-----------------------------------------------------------
\setcounter{tocdepth}{3}
\cleardoublepage
\tableofcontents
%-----------------------------------------------------------
% how to get list of figures in the toc, etc
% http://sumanta679.wordpress.com/2009/05/15/latex-list-of-table-list-of-figures-and-bibliography-in-toc/
% http://www.markschenk.com/tensegrity/latexexplanation.html
% List of Figures.
\jaddchaptertotoc{Figures}
\listoffigures
% List of Tables
\jaddchaptertotoc{Tables}
\listoftables
%-----------------------------------------------------------
%\include{preface}
%\include{acknowledgements}
%-----------------------------------------------------------
\thispagestyle{empty}\cleardoublepage
\printglossary[type=main,title={Glossary},toctitle={Glossary}]
\thispagestyle{empty}\cleardoublepage
\printglossary[type=\acronymtype,title={List of Abbreviations},toctitle={List of Abbreviations},nonumberlist]
%-----------------------------------------------------------
%\include{conventions}
%-----------------------------------------------------------
\mainmatter
\include{main}
%-----------------------------------------------------------
\appendix
\include{appendix}
%-----------------------------------------------------------
% References
\backmatter
\addcontentsline{toc}{chapter}{Bibliography}
\bibliographystyle{abbrvnat}
\bibliography{references}
%-----------------------------------------------------------
% List of Fixmes
\jaddchaptertotoc{Fixmes}
\listoffixmes
\end{document}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment