diff org/vision.org @ 265:e57d8c52f12f

More tweaks to vision.
author Dylan Holmes <ocsenave@gmail.com>
date Mon, 13 Feb 2012 21:53:28 -0600
parents f8227f6d4ac6
children aa3641042958
line wrap: on
line diff
     1.1 --- a/org/vision.org	Mon Feb 13 07:29:29 2012 -0600
     1.2 +++ b/org/vision.org	Mon Feb 13 21:53:28 2012 -0600
     1.3 @@ -7,6 +7,12 @@
     1.4  #+INCLUDE: ../../aurellem/org/level-0.org
     1.5  #+babel: :mkdirp yes :noweb yes :exports both
     1.6  
     1.7 +# SUGGEST: Call functions by their name, without
     1.8 +# parentheses. e.g. =add-eye!=, not =(add-eye!)=. The reason for this
     1.9 +# is that it is potentially easy to confuse the /function/ =f= with its
    1.10 +# /value/ at a particular point =(f x)=. Mathematicians have this
    1.11 +# problem with their notation; we don't need it in ours.
    1.12 +
    1.13  #* Vision
    1.14  * JMonkeyEngine natively supports multiple views of the same world.
    1.15   
    1.16 @@ -37,7 +43,7 @@
    1.17  is a =FrameBuffer= which represents the rendered image in the GPU.
    1.18  
    1.19  #+caption: =ViewPorts= are cameras in the world. During each frame, the =Rendermanager= records a snapshot of what each view is currently seeing.
    1.20 -#+attr_html:width="400"
    1.21 +#+ATTR_HTML: width="400"
    1.22  [[../images/diagram_rendermanager.png]]
    1.23  
    1.24  Each =ViewPort= can have any number of attached =SceneProcessor=
    1.25 @@ -151,8 +157,8 @@
    1.26  They can be queried every cycle, but their information may not
    1.27  necessairly be different every cycle.
    1.28  
    1.29 -* Optical sensor arrays are described as images and stored as metadata.
    1.30 -
    1.31 +# * Optical sensor arrays are described as images and stored as metadata.
    1.32 +* Optical sensor arrays are described with images and referenced with metadata
    1.33  The vision pipeline described above handles the flow of rendered
    1.34  images. Now, we need simulated eyes to serve as the source of these
    1.35  images. 
    1.36 @@ -286,7 +292,7 @@
    1.37       (apply max (map second dimensions))]))
    1.38  #+end_src
    1.39  
    1.40 -* Putting it all together: Importing and parsing descriptions of eyes.
    1.41 +* Importing and parsing descriptions of eyes.
    1.42  First off, get the children of the "eyes" empty node to find all the
    1.43  eyes the creature has.
    1.44  #+name: eye-node
    1.45 @@ -413,7 +419,7 @@
    1.46  simulation or the simulated senses, but can be annoying.
    1.47  =(gen-fix-display)= restores the in-simulation display.
    1.48  
    1.49 -** Vision!
    1.50 +** The =vision!= function creates sensory probes.
    1.51  
    1.52  All the hard work has been done; all that remains is to apply
    1.53  =(vision-kernel)= to each eye in the creature and gather the results
    1.54 @@ -431,8 +437,8 @@
    1.55       (vision-kernel creature eye))))
    1.56  #+end_src
    1.57  
    1.58 -** Visualization of Vision
    1.59 -
    1.60 +** Displaying visual data for debugging.
    1.61 +# Visualization of Vision. Maybe less alliteration would be better.
    1.62  It's vital to have a visual representation for each sense. Here I use
    1.63  =(view-sense)= to construct a function that will create a display for
    1.64  visual data.
    1.65 @@ -690,6 +696,14 @@
    1.66  ffmpeg -r 25 -b 9001k -i out/%07d.png -vcodec libtheora worm-vision.ogg 
    1.67  #+end_src
    1.68     
    1.69 +* Onward!
    1.70 +  - As a neat bonus, this idea behind simulated vision also enables one
    1.71 +    to [[../../cortex/html/capture-video.html][capture live video feeds from jMonkeyEngine]].
    1.72 +  - Now that we have vision, it's time to tackle [[./hearing.org][hearing]].
    1.73 +
    1.74 +
    1.75 +#+appendix
    1.76 +
    1.77  * Headers
    1.78  
    1.79  #+name: vision-header
    1.80 @@ -732,10 +746,6 @@
    1.81    (:import (com.aurellem.capture Capture RatchetTimer)))
    1.82  #+end_src
    1.83  
    1.84 -* Onward!
    1.85 -  - As a neat bonus, this idea behind simulated vision also enables one
    1.86 -    to [[../../cortex/html/capture-video.html][capture live video feeds from jMonkeyEngine]].
    1.87 -  - Now that we have vision, it's time to tackle [[./hearing.org][hearing]].
    1.88  
    1.89  * Source Listing
    1.90    - [[../src/cortex/vision.clj][cortex.vision]]