Created
March 29, 2012 05:00
-
-
Save nzjrs/2233486 to your computer and use it in GitHub Desktop.
University of Canterbury Thesis Template
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
[submodule "documents/latex-makefile"] | |
path = documents/latex-makefile | |
url = git://gist.github.com/503886.git |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
THESIS TEMPLATE |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
% 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. | |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
% 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} | |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
../custom-commands-varnames.tex |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
\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}} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
../custom-commands.tex |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
% 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 file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
%% | |
%% 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'. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
%----------------------------------------------------------- | |
% 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 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
../generated-graphics-build-magic.tex |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
% 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. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
../latex-makefile/Makefile |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@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 } |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
% 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