Mercurial > cortex
view thesis/org/roadmap.org @ 401:7ee735a836da
incorporate thesis.
author | Robert McIntyre <rlm@mit.edu> |
---|---|
date | Sun, 16 Mar 2014 23:31:16 -0400 |
parents | |
children | a533a0038bd7 |
line wrap: on
line source
1 In order for this to be a reasonable thesis that I can be proud of,2 what are the /minimum/ number of things I need to get done?5 * worm OR hand registration6 - training from a few examples (2 to start out)7 - aligning the body with the scene8 - generating sensory data9 - matching previous labeled examples using dot-products or some10 other basic thing11 - showing that it works with different views13 * first draft14 - draft of thesis without bibliography or formatting15 - should have basic experiment and have full description of16 framework with code17 - review with Winston19 * final draft20 - implement stretch goals from Winston if possible21 - complete final formatting and submit26 * CORTEX27 DEADLINE: <2014-05-09 Fri>28 SHIT THAT'S IN 67 DAYS!!!30 ** TODO program simple feature matching code for the worm's segments31 DEADLINE: <2014-03-11 Tue>32 Subgoals:33 *** DONE Get cortex working again, run tests, no jmonkeyengine updates34 CLOSED: [2014-03-03 Mon 22:07] SCHEDULED: <2014-03-03 Mon>35 *** DONE get blender working again36 CLOSED: [2014-03-03 Mon 22:43] SCHEDULED: <2014-03-03 Mon>37 *** DONE make sparce touch worm segment in blender38 CLOSED: [2014-03-03 Mon 23:16] SCHEDULED: <2014-03-03 Mon>39 CLOCK: [2014-03-03 Mon 22:44]--[2014-03-03 Mon 23:16] => 0:3240 *** DONE make multi-segment touch worm with touch sensors and display41 CLOSED: [2014-03-03 Mon 23:54] SCHEDULED: <2014-03-03 Mon>42 CLOCK: [2014-03-03 Mon 23:17]--[2014-03-03 Mon 23:54] => 0:3745 *** DONE Make a worm wiggle and curl46 CLOSED: [2014-03-04 Tue 23:03] SCHEDULED: <2014-03-04 Tue>47 *** TODO work on alignment for the worm (can "cheat")48 SCHEDULED: <2014-03-05 Wed>50 ** First draft51 DEADLINE: <2014-03-14 Fri>52 Subgoals:53 *** Writeup new worm experiments.54 *** Triage implementation code and get it into chapter form.60 ** for today62 - guided worm :: control the worm with the keyboard. Useful for63 testing the body-centered recog scripts, and for64 preparing a cool demo video.66 - body-centered recognition :: detect actions using hard coded67 body-centered scripts.69 - cool demo video of the worm being moved and recognizing things ::70 will be a neat part of the thesis.72 - thesis export :: refactoring and organization of code so that it73 spits out a thesis in addition to the web page.75 - video alignment :: analyze the frames of a video in order to align76 the worm. Requires body-centered recognition. Can "cheat".78 - smoother actions :: use debugging controls to directly influence the79 demo actions, and to generate recoginition procedures.81 - degenerate video demonstration :: show the system recognizing a82 curled worm from dead on. Crowning achievement of thesis.84 ** Ordered from easiest to hardest86 Just report the positions of everything. I don't think that this87 necessairly shows anything usefull.89 Worm-segment vision -- you initialize a view of the worm, but instead90 of pixels you use labels via ray tracing. Has the advantage of still91 allowing for visual occlusion, but reliably identifies the objects,92 even without rainbow coloring. You can code this as an image.94 Same as above, except just with worm/non-worm labels.96 Color code each worm segment and then recognize them using blob97 detectors. Then you solve for the perspective and the action98 simultaneously.100 The entire worm can be colored the same, high contrast color against a101 nearly black background.103 "Rooted" vision. You give the exact coordinates of ONE piece of the104 worm, but the algorithm figures out the rest.106 More rooted vision -- start off the entire worm with one posistion.108 The right way to do alignment is to use motion over multiple frames to109 snap individual pieces of the model into place sharing and110 propragating the individual alignments over the whole model. We also111 want to limit the alignment search to just those actions we are112 prepared to identify. This might mean that I need some small "micro113 actions" such as the individual movements of the worm pieces.115 Get just the centers of each segment projected onto the imaging116 plane. (best so far).119 Repertoire of actions + video frames -->120 directed multi-frame-search alg127 !! Could also have a bounding box around the worm provided by128 filtering the worm/non-worm render, and use bbbgs. As a bonus, I get129 to include bbbgs in my thesis! Could finally do that recursive things130 where I make bounding boxes be those things that give results that131 give good bounding boxes. If I did this I could use a disruptive132 pattern on the worm.134 Re imagining using default textures is very simple for this system,135 but hard for others.138 Want to demonstrate, at minimum, alignment of some model of the worm139 to the video, and a lookup of the action by simulated perception.141 note: the purple/white points is a very beautiful texture, because142 when it moves slightly, the white dots look like they're143 twinkling. Would look even better if it was a darker purple. Also144 would look better more spread out.147 embed assumption of one frame of view, search by moving around in148 simulated world.150 Allowed to limit search by setting limits to a hemisphere around the151 imagined worm! This limits scale also.157 !! Limited search with worm/non-worm rendering.158 How much inverse kinematics do we have to do?159 What about cached (allowed state-space) paths, derived from labeled160 training. You have to lead from one to another.162 What about initial state? Could start the input videos at a specific163 state, then just match that explicitly.165 !! The training doesn't have to be labeled -- you can just move around166 for a while!!168 !! Limited search with motion based alignment.173 "play arounds" can establish a chain of linked sensoriums. Future174 matches must fall into one of the already experienced things, and once175 they do, it greatly limits the things that are possible in the future.178 frame differences help to detect muscle exertion.180 Can try to match on a few "representative" frames. Can also just have181 a few "bodies" in various states which we try to match.185 Paths through state-space have the exact same signature as186 simulation. BUT, these can be searched in parallel and don't interfere187 with each other.