# HG changeset patch # User Robert McIntyre # Date 1395430597 14400 # Node ID c670d23003de985ae4c81feefcb3d8b9dbd9d2f2 # Parent 435b5e22d72aebb38350e794035823604ee0ffa0 rename. diff -r 435b5e22d72a -r c670d23003de thesis/Makefile --- a/thesis/Makefile Fri Mar 21 15:28:45 2014 -0400 +++ b/thesis/Makefile Fri Mar 21 15:36:37 2014 -0400 @@ -1,11 +1,12 @@ #INVOKE_LATEX = pdflatex -shell-escape thesis.tex; -INVOKE_LATEX = texi2dvi --shell-escape --pdf -V --batch thesis.tex; +THESIS_NAME = rlm-cortex-meng +INVOKE_LATEX = texi2dvi --shell-escape --pdf -V --batch $(THESIS_NAME).tex; all: - ./weave-thesis.sh + ./weave-thesis.sh $(THESIS_NAME) rsync -avz --delete /home/r/proj/cortex/thesis "r@aurellem.org:~" ssh r@aurellem.org cd "~/thesis; $(INVOKE_LATEX) $(INVOKE_LATEX)" - scp "r@aurellem.org:/home/r/thesis/thesis.pdf" . + scp "r@aurellem.org:/home/r/thesis/$(THESIS_NAME).pdf" . diff -r 435b5e22d72a -r c670d23003de thesis/rlm-cortex-meng.tex --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/thesis/rlm-cortex-meng.tex Fri Mar 21 15:36:37 2014 -0400 @@ -0,0 +1,102 @@ + +\section{Artificial Imagination} +\label{sec-1} + +Imagine watching a video of someone skateboarding. When you watch +the video, you can imagine yourself skateboarding, and your +knowledge of the human body and its dynamics guides your +interpretation of the scene. For example, even if the skateboarder +is partially occluded, you can infer the positions of his arms and +body from your own knowledge of how your body would be positioned if +you were skateboarding. If the skateboarder suffers an accident, you +wince in sympathy, imagining the pain your own body would experience +if it were in the same situation. This empathy with other people +guides our understanding of whatever they are doing because it is a +powerful constraint on what is probable and possible. In order to +make use of this powerful empathy constraint, I need a system that +can generate and make sense of sensory data from the many different +senses that humans possess. The two key proprieties of such a system +are \emph{embodiment} and \emph{imagination}. + +\subsection{What is imagination?} +\label{sec-1-1} + +One kind of imagination is \emph{sympathetic} imagination: you imagine +yourself in the position of something/someone you are +observing. This type of imagination comes into play when you follow +along visually when watching someone perform actions, or when you +sympathetically grimace when someone hurts themselves. This type of +imagination uses the constraints you have learned about your own +body to highly constrain the possibilities in whatever you are +seeing. It uses all your senses to including your senses of touch, +proprioception, etc. Humans are flexible when it comes to "putting +themselves in another's shoes," and can sympathetically understand +not only other humans, but entities ranging from animals to cartoon +characters to \href{http://www.youtube.com/watch?v=0jz4HcwTQmU}{single dots} on a screen! + + +\begin{figure}[htb] +\centering +\includegraphics[width=5cm]{./images/cat-drinking.jpg} +\caption{A cat drinking some water. Identifying this action is beyond the state of the art for computers.} +\end{figure} + + +This is a basic test for the vision system. It only tests the +vision-pipeline and does not deal with loading eyes from a blender +file. The code creates two videos of the same rotating cube from +different angles. + + +\begin{clojurecode} +(in-ns 'cortex.test.vision) + +(defn test-pipeline + "Testing vision: + Tests the vision system by creating two views of the same rotating + object from different angles and displaying both of those views in + JFrames. + + You should see a rotating cube, and two windows, + each displaying a different view of the cube." + ([] (test-pipeline false)) + ([record?] + (let [candy + (box 1 1 1 :physical? false :color ColorRGBA/Blue)] + (world + (doto (Node.) + (.attachChild candy)) + {} + (fn [world] + (let [cam (.clone (.getCamera world)) + width (.getWidth cam) + height (.getHeight cam)] + (add-camera! world cam + (comp + (view-image + (if record? + (File. "/home/r/proj/cortex/render/vision/1"))) + BufferedImage!)) + (add-camera! world + (doto (.clone cam) + (.setLocation (Vector3f. -10 0 0)) + (.lookAt Vector3f/ZERO Vector3f/UNIT_Y)) + (comp + (view-image + (if record? + (File. "/home/r/proj/cortex/render/vision/2"))) + BufferedImage!)) + (let [timer (IsoTimer. 60)] + (.setTimer world timer) + (display-dilated-time world timer)) + ;; This is here to restore the main view + ;; after the other views have completed processing + (add-camera! world (.getCamera world) no-op))) + (fn [world tpf] + (.rotate candy (* tpf 0.2) 0 0)))))) +\end{clojurecode} + + +\begin{itemize} +\item This is test1 \cite{Tappert77}. +\end{itemize} diff -r 435b5e22d72a -r c670d23003de thesis/thesis.tex --- a/thesis/thesis.tex Fri Mar 21 15:28:45 2014 -0400 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,78 +0,0 @@ -% -*- Mode:TeX -*- - -%% IMPORTANT: The official thesis specifications are available at: -%% http://libraries.mit.edu/archives/thesis-specs/ -%% -%% Please verify your thesis' formatting and copyright -%% assignment before submission. If you notice any -%% discrepancies between these templates and the -%% MIT Libraries' specs, please let us know -%% by e-mailing thesis@mit.edu - -%% The documentclass options along with the pagestyle can be used to generate -%% a technical report, a draft copy, or a regular thesis. You may need to -%% re-specify the pagestyle after you \include cover.tex. For more -%% information, see the first few lines of mitthesis.cls. - -%\documentclass[12pt,vi,twoside]{mitthesis} -%% -%% If you want your thesis copyright to you instead of MIT, use the -%% ``vi'' option, as above. -%% -%\documentclass[12pt,twoside,leftblank]{mitthesis} -%% -%% If you want blank pages before new chapters to be labelled ``This -%% Page Intentionally Left Blank'', use the ``leftblank'' option, as -%% above. - -\documentclass[12pt,twoside]{mitthesis} -\usepackage[utf8]{inputenc} -\usepackage[T1]{fontenc} -\usepackage{fixltx2e} -\usepackage{graphicx} -\usepackage{longtable} -\usepackage{float} -\usepackage{wrapfig} -\usepackage{rotating} -\usepackage[normalem]{ulem} -\usepackage{amsmath} -\usepackage{textcomp} -\usepackage{marvosym} -\usepackage{wasysym} -\usepackage{amssymb} -\usepackage{hyperref} - -%%%%% better source code display -\usepackage{minted} - -% \usemintedstyle{friendly} -% \usemintedstyle{perldoc} -%\definecolor{bg}{rgb}{0.95,0.95,0.95} -\definecolor{bg}{rgb}{0.95,0.95,0.95} -\usemintedstyle{default} - - -%\newminted{clojure}{fontsize=\scriptsize,bgcolor=bg} -\newminted{clojure}{fontsize=\scriptsize} - -%\usepackage{lgrind} -\pagestyle{plain} - -\begin{document} - -\include{cover} -% Some departments (e.g. 5) require an additional signature page. See -% signature.tex for more information and uncomment the following line if -% applicable. -% \include{signature} -\pagestyle{plain} -\include{contents} -\include{cortex} -%\include{chap2} -\appendix -\begin{singlespace} -\bibliography{cortex} -\bibliographystyle{plain} -\end{singlespace} -\end{document} - diff -r 435b5e22d72a -r c670d23003de thesis/weave-thesis.sh --- a/thesis/weave-thesis.sh Fri Mar 21 15:28:45 2014 -0400 +++ b/thesis/weave-thesis.sh Fri Mar 21 15:36:37 2014 -0400 @@ -7,9 +7,9 @@ --batch \ --eval " (progn - (find-file \"/home/r/proj/cortex/thesis/cortex.org\") + (find-file \"$1\") (org-latex-export-to-latex nil nil nil t nil))" \ \ 2>&1 -rm cortex.tex~ \ No newline at end of file +rm $1~ \ No newline at end of file